[haiku-development] Re: Nightly ARM builds now automated

  • From: kallisti5 <kallisti5@xxxxxxxxxxx>
  • To: haiku-development@xxxxxxxxxxxxx
  • Date: Thu, 09 Feb 2017 08:02:45 -0600

On 2017-02-09 00:13, Adrien Destugues wrote:

On Wed, Feb 08, 2017 at 09:32:33PM +0000, Josh Wright wrote:

Understood. Thanks for the links - now I just need to find something to connect the serial cable to! :-)

I was going to ask if the build supports the Pi 3 as your post mentions Pi 2. I appreciate x64 is the likely priority here for R1, but is anyone actively developing ARM support, as your comment suggests not?

It is mostly one off efforts to keep things building at the moment. And
each person doing some work on ARM chooses his personal favorite target
and breaks everything else.

For example, the switch to Raspberry Pi 2 nightly builds means the
buildbot isn't building the SD image for Beagle Board xM, which was the
previous target, mainly for the reason that it is supported in some
version of QEMU and that made testing a lot easier.

We really need to sort out the device tree and early mmu memory mapping
and get a single kernel to work for all devices, if people don't manage
to keep each code path working.

The last major activity on the ARM port was during GSoC 2014, with the
beagle-xm port starting the kernel and then not finding the boot
partition. We still don't have support for USB nor SD mass storage on
ARM, one of the two is needed to boot further in normal ways.
Alternatives are network booting or using the "NOR" driver which would
allow loading a root filesystem in RAM.

I've been playing with a "haiku-arm-image-installer" here:
https://github.com/kallisti5/haiku-arm-image-installer

The idea is you pass in a generic armhfp image with all the device trees on it.

Then when the user "writes" the image to the block device (SD card) it preps it
for boot on that platform. (and makes sure the correct dtb + u-boot binary is used.

It generally will also write blobs to the correct locations on the media for that SOC.

http://pastebin.com/vLKagLFv

Fedora does this with their ARM releases, and it makes a lot of sense. (one build for the architecture vs a *bunch* of builds)

There is still some work todo within haiku before something like this would work... but an interesting way of doing it.

 -- Alex

Other related posts: