Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 17 Mar 2014 05:13:55 +0400
From:      Alexander Tarasikov <alexander.tarasikov@gmail.com>
To:        Ganbold Tsagaankhuu <ganbold@gmail.com>
Cc:        freebsd-hackers@freebsd.org, "freebsd-arm@freebsd.org" <freebsd-arm@freebsd.org>, "Wojciech A. Koszek" <wkoszek@freebsd.org>
Subject:   Re: [GSoC 2014] Interested in ARM bringup tasks
Message-ID:  <CAMChaFxpQ_Rnv7EuYj7ytorBTLgXLv4RcXxyW28aj8bw-NYbpg@mail.gmail.com>
In-Reply-To: <CAGtf9xNrxgfgPmzpkYWSNcDsArm5oWxBZ-KQjMmGwJUJ-djFdQ@mail.gmail.com>
References:  <CAMChaFxz7t6-UAUL50CsC9vDE%2BubG=9aBYwEy2hSinLWtoDaDg@mail.gmail.com> <CAGtf9xNrxgfgPmzpkYWSNcDsArm5oWxBZ-KQjMmGwJUJ-djFdQ@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On Mon, Mar 17, 2014 at 4:39 AM, Ganbold Tsagaankhuu <ganbold@gmail.com> wrote:
> Alexander,
>
>
> On Mon, Mar 17, 2014 at 7:19 AM, Alexander Tarasikov
> <alexander.tarasikov@gmail.com> wrote:
>>
>> Hello, FreeBSD community!
>>
>> I am interested in participating in GSoC this year and I'd like to
>> pick up one of the tasks related to porting FreeBSD to new
>> architectures. I'm now doing my master's degree in software
>> engineering at the "Higher School of Economics" in Moscow.
>>
>> Since I love ARM and smartphones, I've chosen the project to port
>> FreeBSD to a smartphone. If that task is already occupied (which
>> doesn't seem so), I would be happy to pick up another task suggested
>> by the community.
>>
>> I want to port FreeBSD to the Sony Xperia Z phone. This phone has the
>> Qualcomm APQ8064 SoC which is used in a large number of smartphones,
>> including Google Nexus 4. Besides, Qualcomm SoCs are developed
>> incrementally so there's a high chance that the code for current
>> generation of chips will benefit future revisions as well.
>
>
> Interesting. I'm not quite sure how accessible is some pins like uart in
> Experia Z.
> I have it here, but I still didn't try to open it yet to see the pins etc.
> Probably you meant here some embedded boards like ifc6410.
> Plus ifc6410 has docs so that could be useful too.
>

Yes, that's the trouble with mobile phones - getting UART is hard. On
the other hand,
having pre-initialized framebuffer also helps in most cases. The problem with
ifc6410 board is that I don't have one and even if someone wants to send
me one, I may have huge trouble with customs.

I personally have the Xperia Z phone, and I don't really want to *buy*
another one
(because it looks like I have far more hardware than I have time to
play with it)
I may be able get my hands on an OMAP4-based Galaxy Nexus. Maybe someone
from Moscow could lend me some hardware. If I get stuck with Xperia, I may
exchange it for a Nexus 5 on a local craiglist since it's also qcom
but has UART.

>
>>
>>
>> It is known that debugging like JTAG and flash recovery is not
>> available on consumer devices because of DRM and general love for
>> obfuscation among the vendors. Therefore, to prevent bricking the
>> device,
>
>
> That is the hell, it seems Qualcomm uses lauterbach jtag adapter in that
> case.
> I and my friend and also some people have tried some adapters like
> flyswatter2 with ifc6410, still no luck.
>
>> I suggest using the chainloading approach, that is using the
>> bootloader that ships with the device and pretend to be a linux image.
>
>
> That can be done. Their bootloader like maybe LK in case of ifc6410 can boot
> freebsd kernel.
> Actually I did that for ifc6410.

I have not investigated how FreeBSD boots yet, but iirc LK only supports linux
(at least it did 3 years ago when I ported it to msm7200A). Since you
have a working
kernel for ifc6410, I could try using it first. If it at least boots,
we can ignore the
UART and go straight into writing mmc block drivers.

>
>>
>>
>> For the mid-term I want to port the u-boot bootloader and add the
>> support for accessing the microSD card from it. The u-boot will be
>> flashed to the device instead of the linux kernel.
>
>
>
> That could be cool.
>
>>
>>
>> Since the proprietary bootloader already initializes the display (we
>> can also port linux driver to u-boot), it should be possible, at least
>> during the initial stage, to use a simple driver in FreeBSD that would
>> write to the framebuffer allocated by the bootloader or only write the
>> framebuffer address to the display controller.
>
>
>
> That is nice. However first we need uart driver, then either usb ehci, mmc
> or sata driver needs to mount rootfs in order to boot freebsd to multiuser
> mode. I already have timer driver and minimal console driver so it makes
> booting little bit easier.

Well, since GSoC wiki clearly states the task to port to a phone, the
only acceptable
route is mmc (usb is complex and anyway it is unacceptable to have a phone
tethered to the laptop all the time). I think a phone is a good target from
the marketing point of view, though it is not much different from a
development board.

>
>>
>>
>> In the past I've successfully ported linux to an Intel XScale-based
>> Asus P525 smartphone, ported Android with all hardware working to boot
>> from NAND on the Sony Xperia X1 phone and have ported various boards
>> from OEM to vanilla kernel trees. Recently I've experimented with the
>> XNU kernel (the one which is used in the fruity operating system) and
>> ported it to the OMAP5 board. So I think I'll be able to pull it off.
>
>
> Cool. In case of android or linux there are many people working on various
> stuffs so in most case drivers are either written or somebody has got
> started working on particular driver already. For FreeBSD case it is
> different. You maybe know that very few people are working in case of ARM
> platform bringup, so we need more developers and I'm happy that you decided
> to work on this direction.

So I'm waiting for an opinion from the community. What is more desired - a phone
port or a new SoC/board support? I have OMAP5432 development board, but
as you may know there are no phones with that CPU and there will never
be. On the
other hand, this board is
1) Similiar to OMAP4
2) Has SATA and USB 3.0
So if this hardware is supported it can potentially be interesting to
evaluate the performance
of a server-like installation on ARM A15 SoC.

>
> Ganbold
>
>
>>
>>
>> Have a nice day!
>>
>> --
>> Regards, Alexander
>> _______________________________________________
>> freebsd-hackers@freebsd.org mailing list
>> http://lists.freebsd.org/mailman/listinfo/freebsd-hackers
>> To unsubscribe, send any mail to "freebsd-hackers-unsubscribe@freebsd.org"
>
>



-- 
Regards, Alexander



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAMChaFxpQ_Rnv7EuYj7ytorBTLgXLv4RcXxyW28aj8bw-NYbpg>