maemo.org - Talk

maemo.org - Talk (https://talk.maemo.org/index.php)
-   Alternatives (https://talk.maemo.org/forumdisplay.php?f=36)
-   -   Darwin/ARM running on a Nokia N900 (https://talk.maemo.org/showthread.php?t=91850)

pichlo 2015-01-20 21:40

Re: Darwin/ARM running on a Nokia N900
 
Quote:

Originally Posted by juiceme (Post 1457403)
SO welcome to #maemo-meeting today at 21:00UTC to present the idea to the council.

Oops! I missed it again. DESPITE having made a mental note just 90 minutes ago to join the meeting. Oh well... I guess it proves you wrong: I would have made a TERRIBLE councillor :(

reinob 2015-01-21 08:23

Re: Darwin/ARM running on a Nokia N900
 
Quote:

Originally Posted by juiceme (Post 1457403)
SO welcome to #maemo-meeting today at 21:00UTC to present the idea to the council.

Note: I'm reading this for the first time at 09:00 (CET) on wednesday. Oops :).

b-man 2015-01-22 02:23

Re: Darwin/ARM running on a Nokia N900
 
oenthaa,

Since I wan't able to PM you the link and since it would make more sense to share this for everyone else here is the device tree:

NOTE: this is essentially a slightley modified RealView PB-A8 dt,
I need more time to do a proper one for RX-51.

Code:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
        <key>@children</key>
        <array>
                <dict>
                        <key>@children</key>
                        <array>
                                <dict>
                                        <key>compatible</key>
                                        <array>
                                                <string>ARM,cortex-a8</string>
                                                <string>ARM,v7</string>
                                        </array>
                                        <key>device_type</key>
                                        <string>cpu</string>
                                        <key>name</key>
                                        <string>cpu0</string>
                                        <key>reg</key>
                                        <integer>0</integer>
                                </dict>
                        </array>
                        <key>name</key>
                        <string>cpus</string>
                        <key>device_type</key>
                        <string>arm-cpu</string>
                        <key>compatible</key>
                        <string>cpu-interconnect,arm</string>
                </dict>
                <dict>
                        <key>@children</key>
                        <array>
                                <dict>
                                        <key>APPL,phandle</key>
                                        <integer>3</integer>
                                        <key>compatible</key>
                                        <string>gic,arm</string>
                                        <key>device_type</key>
                                        <string>interrupt-controller</string>
                                        <key>interrupt-controller</key>
                                        <string>master</string>
                                        <key>name</key>
                                        <string>gic</string>
                                        <key>reg</key>
                                        <array>
                                                <integer>503316480</integer>
                                                <integer>65536</integer>
                                        </array>
                                </dict>
                                <dict>
                                        <key>compatible</key>
                                        <string>uart,pl011</string>
                                        <key>device_type</key>
                                        <string>uart</string>
                                        <key>interrupt-parent</key>
                                        <integer>3</integer>
                                        <key>name</key>
                                        <string>uart0</string>
                                        <key>reg</key>
                                        <array>
                                                <integer>268472320</integer>
                                                <integer>4096</integer>
                                        </array>
                                </dict>
                                <dict>
                                        <key>compatible</key>
                                        <string>gpio,pl069</string>
                                        <key>device_type</key>
                                        <string>gpio</string>
                                        <key>interrupt-parent</key>
                                        <integer>3</integer>
                                        <key>name</key>
                                        <string>gpio0</string>
                                        <key>reg</key>
                                        <array>
                                                <integer>268513280</integer>
                                                <integer>4096</integer>
                                        </array>
                                </dict>
                                <dict>
                                        <key>compatible</key>
                                        <string>clcd,pl111</string>
                                        <key>device_type</key>
                                        <string>clcd</string>
                                        <key>interrupt-parent</key>
                                        <integer>3</integer>
                                        <key>name</key>
                                        <string>clcd</string>
                                        <key>reg</key>
                                        <array>
                                                <integer>268566528</integer>
                                                <integer>65536</integer>
                                        </array>
                                </dict>
                        </array>
                        <key>compatible</key>
                        <string>arm-io,pba8</string>
                        <key>device_type</key>
                        <string>pba8-io</string>
                        <key>name</key>
                        <string>arm-io</string>
                </dict>
        </array>
        <key>APPL,phandle</key>
        <integer>1</integer>
        <key>compatible</key>
        <array>
                <string>iPhone1,1</string>
                <string>AppleARM</string>
                <string>M68AP</string>
        </array>
</dict>
</plist>

You can convert this for use within GenericBooter by running the following cmmands:

Code:

image3maker -t xmdt -f xmdt.plist -o GenericBooter/images/Ramdisk.img3
Now back to doing school work.. :p

Mentalist Traceur 2015-01-23 04:11

Re: Darwin/ARM running on a Nokia N900
 
Quote:

Originally Posted by pichlo (Post 1457426)
Oops! I missed it again. DESPITE having made a mental note just 90 minutes ago to join the meeting. Oh well... I guess it proves you wrong: I would have made a TERRIBLE councillor :(

Well, it may help you to know that I missed this week's meeting on accident as well - totally forgot about it. So I guess this term the bar is pretty low.

Wikiwide 2015-01-25 05:09

Re: Darwin/ARM running on a Nokia N900
 
Quote:

Originally Posted by Mentalist Traceur (Post 1457691)
Well, it may help you to know that I missed this week's meeting on accident as well - totally forgot about it. So I guess this term the bar is pretty low.

Quick line...

Hopefully, being absent will not become a fashion. Better late than never ;-)

Thank you. Best wishes.
~~~~~~~~~~~~~~~~~
Per aspera ad astra...

loonbg 2015-06-05 13:09

Re: Darwin/ARM running on a Nokia N900
 
hey some news??

Wikiwide 2015-06-12 06:53

Re: Darwin/ARM running on a Nokia N900
 
Not sure...
https://github.com/darwin-on-arm/
https://twitter.com/winocm
https://twitter.com/bman626

b-man 2015-06-25 03:07

Re: Darwin/ARM running on a Nokia N900
 
Hey guys, sorry for the lack of any significant updates..

Unfortunately progress has significantly slowed down due to a couple of reasons; first due to a rather nasty but obscure bug in the security framework (mac_labelzone_free() in security/mac_label.c) that causes metadata to get lost, causing a kernel panic sometime later on in the boot up phase and sometimes in the shutdown phase of the kernel. The second reason is due to other responsibilities that are unrelated to my work with this project.

Going back to the security framework bug, my first hypothesis on this was that something was wrong with how pages were being allocated, but that didn't appear to be the case as mac_labelzone_free gets called hundreds of times before this bug gets triggered so that presumably isn't the cause. My second hypothesis is that data isn't being properly handled during context switching/stack handoffs and that part of the thread's pcb structure (that contains this security metadata) is getting corrupted/overwritten. My third hypothesis is that something in the scheduler isn't working in the right sequence due to some unhandled condition that it expects and as a result the process thread is terminated and reinitialized at the wrong time.

I've been spending many hours on weeding out this bug to no avail, but I'm not giving up. This whole thing has been quite a learning process for me and I want this project to move forward. If anyone wants to try their hand at weeding out this bug, your contribution would be greatly appreciated. Building instructions to get this fired up in qemu can be found here. (NOTE: use GenericBooter-old for now as device tree setup is a bit of a mess atm).

wicket 2017-10-02 21:39

Re: Darwin/ARM running on a Nokia N900
 
Apple recently open sourced the XNU kernel on ARM. Will Darwin on the N900 see a revival?


All times are GMT. The time now is 23:14.

vBulletin® Version 3.8.8