Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 17 Mar 2014 03:19:53 +0400
From:      Alexander Tarasikov <alexander.tarasikov@gmail.com>
To:        wkoszek@freebsd.org, freebsd-hackers@freebsd.org
Subject:   [GSoC 2014] Interested in ARM bringup tasks
Message-ID:  <CAMChaFxz7t6-UAUL50CsC9vDE%2BubG=9aBYwEy2hSinLWtoDaDg@mail.gmail.com>

next in thread | raw e-mail | index | archive | help
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.

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, I suggest using the chainloading approach, that is using the
bootloader that ships with the device and pretend to be a linux image.

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.

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.

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.

Have a nice day!

-- 
Regards, Alexander



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAMChaFxz7t6-UAUL50CsC9vDE%2BubG=9aBYwEy2hSinLWtoDaDg>