[GSoC 2014 : ARM Port] Week #8

Blog post by dnivra on Sun, 2014-06-15 12:16
Hey everyone!
The bootstrap-mmc target is now finally available! What this means is that you can follow all instructions in [1] except run
$ jam -q @boostrap-mmc
instead of
$ jam -q @bootstrap-raw
and you’ll get an image that can be copied to an SD card directly.

BIG DISCLAIMER: Things are not working yet! MMU isn’t operational still and there is still a long way to go till Haiku starts working on a beaglebone black. The good news though is if you are interested in helping out, compiling Haiku for a beaglebone black just got much easier :).

[1] https://www.haiku-os.org/blog/dnivra/2014-05-04_gsoc_2014_arm_port_week_...

Comments

Re: [GSoC 2014 : ARM Port] Week #8

This may get me in a pickle if it's been mentioned before... but does this ARM port mean this is theoretically a step towards getting Haiku to run on a Raspberry Pi!?

Re: [GSoC 2014 : ARM Port] Week #8

Hi,

The current efforts are on porting to the BeagleBone Black, which uses an ARMv7 processor. The Pi uses an ARMv6 which needs some different code in some areas. We are targetting ARMv7 because a lot of things besides the CPU became standard: the MMU, the system timer, etc. This allows the same kernel to run on a broader range of systems and chips from different manufacturer, while work on the Pi would be specific to the Pi and not useful for any other ARMv6 device.

That being said, yes, this is still one step towards Pi support. With an ARM port that builds again, I would be surprised if no one tried to get some progress made on the Pi.

Re: [GSoC 2014 : ARM Port] Week #8

Hi.
Can you tell us about how many lines of code you have written so far in 8 weeks?

Re: [GSoC 2014 : ARM Port] Week #8

Hi cipri,
I'm counting this week's contribution in the statistic too(so that's actually 8 weeks; I didn't work for 2 weeks): a little shy of 50 lines.

Relevant commits:
http://cgit.haiku-os.org/haiku/commit/?id=3d6edc43d98295a74f801343f14c6e...
http://cgit.haiku-os.org/haiku/commit/?id=cf0ba4901dae2b632b8aac9623db66...
http://cgit.haiku-os.org/haiku/commit/?id=6f742d85f9f907e6c2f69fffca89d0...

Any particular reason for asking :)?

Re: [GSoC 2014 : ARM Port] Week #8

I don't know, but with 50 lines of code, do you think you can pass the midterm?

I understand that it takes time to learn about the stuff you should work on, but I guess after two month, having just 50 lines is somehow under the expectations.

Re: [GSoC 2014 : ARM Port] Week #8

Hi cipri,
Sorry for the delayed response - I had some issues logging to the website over past few days.

(Personal opinion alert!) I don't think GSoC projects are evaluated based on number of lines of code written - it more about how the work completed compares with the timeline in the proposal. Lines of code alone is probably a poor metric since there's so much understanding and work required prior to writing code. Also, there were several other issues not related to Haiku which stalled progress.

For instance, I used several disk manipulations tools(fdisk, losetup, mtools to name a few) before finally choosing one that works across GNU/Linux, BSDs and OS X. After creating the image successfully, I spent many days debugging why the image wouldn't boot on qemu only to find out that qemu detected a small FAT32 partition as a FAT16 partition(the bug report still present in the Linaro tracker). I wouldn't have never imagined this would be an issue!

Working with the MMU wasn't easy either - the Cortex-A8 documentation isn't exactly easily understandable material and correlating documentation with existing code isn't a trivial task. I spent 3 - 4 days switching between debugging and reading the documentation. Finally, the issue turned out be something which isn't something the documentation could help with(more in the week #10 update). The issue is pretty obvious when one reflects on it but figuring it out took such a long time.

I hope I have sufficiently addressed your concerns. I would be happy to clarify further queries, if any :). mmadia should write a report on the midterm soon; I'm waiting for that too :).