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)

mick3_de 2013-11-23 08:54

Darwin/ARM running on a Nokia N900
 
Quote:

Darwin is the core operating system that lies under both Mac OS X and iPhone OS. It is the true core foundation that bridges the kernel to the actual UI above.
http://winocm.com/projects/research/...milestone-one/
http://winocm.moe/projects/research/...milestone-one/
[via osnews.com]

yaliang 2013-11-23 10:06

ios core running on N900
 
http://9to5mac.com/2013/11/22/develo...pple-hardware/

it is so cool . anybody make a UI?

Dave999 2013-11-23 10:08

Re: ios core running on N900
 
Quote:

Originally Posted by yaliang (Post 1388400)

Allready posted as a thread and no., read the last line in the dev blogpost.

http://talk.maemo.org/showthread.php...87#post1388387

But your thread title is better for average Joe...

yaliang 2013-11-23 10:19

Re: ios core running on N900
 
i had search but i cannt find . Thanks

will others make a UI?

Hurrian 2013-11-23 10:21

Re: Darwin/ARM running on a Nokia N900
 
It's all open sauce.

A little birdie told me this only builds properly on Linux hosts ('buntu 13.10 confirmed OK); building with the target OMAP3430_RX51 produces a binary you can combine with GenericBooter which passes... stuff along from the boot environment (u-boot) to the xnu kernel.

The little birdie also told me that a real N900 on-hand (this was ported first to the N900 QEMU...) would help - you may want to send the guy one to help 'em along!

Birdie also notes that the recommended userland filesystem package for this would be iPhone OS 4.3.5. Accelerated graphics don't work for now, so you're stuck in console (non-single user at least!) mode.

This would also be semi-effortlessly portable to the N9/50 if a u-boot port was made. The N900 port is a good place to start.

Hardware keyboard doesn't work. Yet, at least. Use the serial console if you need it.

panjgoori 2013-11-24 16:02

Re: Darwin/ARM running on a Nokia N900
 
he's done a great job but how its useful for us N900 users ? any benefits ? or can we run iOS apps with it ? sorry for the noob questions.

b-man 2013-11-25 20:16

Re: Darwin/ARM running on a Nokia N900
 
Hey guys, it's been a while since I've been here and I'm sure a lot has changed, good to see that some of the older members on this site have stuck around. :)

I'm currently one of the maintainers of this project (I'm primarily working on developer tools for this project).

If you want to try this out on your N900, you will either need a recent version of Ubuntu or Linux Mint (I've been using Mint 15 32-bit to build and test everything). I plan to push fixes to xnu-deps-linux to resolve problems for other distros when I get the time. You will also need a fairly recent version of Clang (preferably 3.4) and a copy of the CodeSorcery toolchain (arm-eabi-none).

IMPORTANT NOTE: While xnu does boot on the N900, we still need to implement a TWL4030 watchdog kicker to keep the system alive while booted. Until we get this done, you will need to enable R&D mode on your N900. Also, we still need to implement a keyboard driver. This will require writing an I2C driver that can be used to talk to the TWL4030. If anyone is interested in working on this, we would greatly appreciate your help. :)

Also something important to remember: unix signal support is still a work in progress, so until that is worked out, job control doesn't work. (eg: Using Ctrl-C crashes the kernel).

I would recommend that you build things in the following order:
(dependencies for developer tool components are listed in their respective README.md)

Code:

# Build the container tool
git clone https://github.com/darwin-on-arm/image3maker.git

cd image3maker/; make; make install

cd ..

# Build the developer tools
git clone https://github.com/darwin-on-arm/xnu-deps-linux.git

cd xnu-deps-linux/; make; make install

cd ..

# Build the kernel
git clone https://github.com/darwin-on-arm/xnu.git

cd xnu/

make TARGET_CONFIGS="debug arm omap3430_rx51" MAKEJOBS=  SDKVERSION=10.7 HOST_CC=clang HOST_YACC=yacc \
    HOST_BISON=bison HOST_FLEX=flex HOST_CODESIGN=/bin/true BUILD_NO_DEBUG=1  DEPLOYMENT_TARGET_FLAGS=  \
    RC_CFLAGS="-D__arm__ -DARM" MIG=/usr/bin/mig CC=clang CXX=clang++ RC_CFLAGS="-target arm-apple-darwin11" \
    VERBOSE=YES RC_LDFLAGS="-target arm-apple-darwin11 /usr/lib/libclang_rt.cc_kext.a" \
    STRIP="arm-apple-darwin11-strip" NM="arm-apple-darwin11-nm"

cd ../

# Put the kernel into an img3 container
image3maker -t krnl -f xnu/BUILD/obj*/*/mach_kernel -o mach.img3

# Build the fused kernel+bootloader
git clone https://github.com/darwin-on-arm/GenericBooter.git

mv mach.img3 GenericBooter/

cd GenericBooter

# open main.c with a text editor and scroll down to corestart_main
# you need to comment out lines 114-123 to disable realview board check
# you may also want to comment out the contents of uart_putc in debuc.c as this assumes a PL011 uart

make

# You should now have a SampleBooter.elf.uImage file which you can boot via u-boot, enjoy!

If you wish to boot this with a ramdisk (and why not!), you can use this one. You can boot this ramdisk with the kernel in the same way you would with a standard linux kernel in u-boot. If you have any problems or have any other questions or want to contribute, jump on ##darwin-on-arm on freenode and I'm sure that someone will be able to answer your question. Have fun! :D

wicket 2013-11-25 22:59

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

Originally Posted by b-man (Post 1388960)
Hey guys, it's been a while since I've been here and I'm sure a lot has changed, good to see that some of the older members on this site have stuck around. :)

I'm currently one of the maintainers of this project (I'm primarily working on developer tools for this project).

If you want to try this out on your N900, you will either need a recent version of Ubuntu or Linux Mint (I've been using version 15 to build and test everything). I plan to push fixes to xnu-deps-linux to resolve problems for other distros when I get the time. You will also need a fairly recent version of Clang (preferably 3.4) and a copy of the CodeSorcery toolchain (arm-eabi-none).

IMPORTANT NOTE: While xnu does boot on the N900, we still need to implement a TWL4030 watchdog kicker to keep the system alive while booted. Until we get this done, you will need to enable R&D mode on your N900. Also, we still need to implement a keyboard driver. This will require writing an I2C driver that can be used to talk to the TWL4030. If anyone is interested in working on this, we would greatly appreciate your help. :)

Also something important to remember: unix signal support is still a work in progress, so until that is worked out, job control doesn't work. (eg: Using Ctrl-C crashes the kernel).

I would recommend that you build things in the following order:

Code:

# Build the container tool
git clone https://github.com/image3maker.git

cd image3maker/; make; make install

cd ..

# Build the developer tools
git clone https://github.com/darwin-on-arm/xnu-deps-linux.git

cd xnu-deps-linux/; make; make install

cd ..

# Build the kernel
git clone https://github.com/darwin-on-arm/xnu.git

cd xnu/

make TARGET_CONFIGS="debug arm omap3430_rx51" MAKEJOBS=  SDKVERSION=10.7 HOST_CC=clang HOST_YACC=yacc \
    HOST_BISON=bison HOST_FLEX=flex HOST_CODESIGN=/bin/true BUILD_NO_DEBUG=1  DEPLOYMENT_TARGET_FLAGS=  \
    RC_CFLAGS="-D__arm__ -DARM" MIG=/usr/bin/mig CC=clang CXX=clang++ RC_CFLAGS="-target arm-apple-darwin11" \
    VERBOSE=YES RC_LDFLAGS="-target arm-apple-darwin11 /usr/lib/libclang_rt.cc_kext.a" \
    STRIP="arm-apple-darwin11-strip" NM="arm-apple-darwin11-nm"

cd ../

# Put the kernel into an img3 container
image3maker -t krnl -f xnu/BUILD/obj*/*/mach_kernel -o mach.img3

# Build the fused kernel+bootloader
git clone https://github.com/darwin-on-arm/GenericBooter.git

mv mach.img3 GenericBooter/

cd GenericBooter

# open main.c with a text editor and scroll down to corestart_main
# you need to comment out lines 114-123 to disable realview board check
# you may also want to comment out the contents of uart_putc in debuc.c as this assumes a PL011 uart

make

# You should now have a SampleBooter.elf.uImage file which you can boot via u-boot, enjoy!

If you wish to boot this with a ramdisk (and why not!), you can use this one. You can boot this ramdisk with the kernel in the same way you would with a standard linux kernel in u-boot. If you have any problems or have any other questions or want to contribute, jump on ##darwin-on-arm on freenode and I'm sure that someone will be able to answer your question. Have fun! :D

This is very cool, I will try it out when I get a bit of spare time.

I do have to ask though, why did you choose to port Darwin over FreeBSD? I'm struggling to think of any advantage for choosing Darwin unless you have some kind of crazy long-term goal of an iOS or OS X compatibility layer. :P

Hurrian 2013-11-25 23:33

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

Originally Posted by wicket (Post 1388996)
I do have to ask though, why did you choose to port Darwin over FreeBSD? I'm struggling to think of any advantage for choosing Darwin unless you have some kind of crazy long-term goal of an iOS or OS X compatibility layer. :P

The ARM bringup was done by a winocm.

Binaries compiled for iOS actually already do run (look for Terminal packages on Cydia...)

Binary kernel drivers from iOS devices will very likely not work - which means no SGX535 driver (among others)
Also, the way OMAP handles the framebuffer (OMAPFB, OMAPDSS) means that getting iOS as-is on the N9/50/00 is a moonshot.

The biggest blocker for daily use right now is the keypad not working. IIRC you have to use it with a serial terminal for now.

b-man 2013-11-25 23:42

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

Originally Posted by wicket (Post 1388996)
This is very cool, I will try it out when I get a bit of spare time.

I do have to ask though, why did you choose to port Darwin over FreeBSD? I'm struggling to think of any advantage for choosing Darwin unless you have some kind of crazy long-term goal of an iOS or OS X compatibility layer. :P

It wasn't me who did the work to get Darwin ported to arm, winocm did most of the work. I am in charge of porting and maintaining Darwin development tools for the project.

As for why he chose to work on this project, his explanation can be seen here.

As for why I am getting involved? I think Darwin is a pretty interesting OS and I figured that it would be a fun learning experience to get involved. :)

EDIT: Err, I see that Hurrian beat me to it :)

nokiabot 2013-11-26 03:22

Re: Darwin/ARM running on a Nokia N900
 
in 2050 there will be ios 3 in n900:D

Boemien 2013-11-26 20:52

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

Originally Posted by nokiabot (Post 1389016)
in 2050 there will be ios 3 in n900:D

Hmmm I don't think so, maybe on Neo900 :p:p:p

By the way, it has been said in websites posted in comments above, that this project is in a non-UI state at this time, but what are the benefits of porting on the N900, will we be able to run OSX/iOS apps through command line, and from a long term view, will it be possible to port an UI on this???

b-man 2013-11-27 01:35

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

Originally Posted by Boemien (Post 1389178)
Hmmm I don't think so, maybe on Neo900 :p:p:p

By the way, it has been said in websites posted in comments above, that this project is in a non-UI state at this time, but what are the benefits of porting on the N900, will we be able to run OSX/iOS apps through command line, and from a long term view, will it be possible to port an UI on this???

The primary goal for this project is to make an open source implementation of Darwin for arm. The N900 is just one of several testing platforms being used to reach this goal.

As for GUI support, this should be attainable by adapting a version of OSX's IOGraphics for the kernel (apple already uses an embedded profile of IOGraphics for the iOS kernel).

Also to note, some iOS kernel extensions, like AppleMobileFileIntegrity, already work without problems with this kernel.

winocm 2013-11-30 04:35

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

Originally Posted by Hurrian (Post 1388404)
It's all open sauce.

A little birdie told me this only builds properly on Linux hosts ('buntu 13.10 confirmed OK); building with the target OMAP3430_RX51 produces a binary you can combine with GenericBooter which passes... stuff along from the boot environment (u-boot) to the xnu kernel.

The little birdie also told me that a real N900 on-hand (this was ported first to the N900 QEMU...) would help - you may want to send the guy one to help 'em along!

Birdie also notes that the recommended userland filesystem package for this would be iPhone OS 4.3.5. Accelerated graphics don't work for now, so you're stuck in console (non-single user at least!) mode.

This would also be semi-effortlessly portable to the N9/50 if a u-boot port was made. The N900 port is a good place to start.

Hardware keyboard doesn't work. Yet, at least. Use the serial console if you need it.

I did make a nice keyboard driver this week. Getting an N900 might be really nice for development purposes. :)

Currently, I do debug in QEMU and I have other people test the kernels on their hardware.

Luckily, not so much of the kernel is platform dependent, so I can do debug on my BeagleBoard xM, or an iPhone 4. Let me know if you can get me an N900 for development. I would really appreciate it.

oenthaa 2015-01-18 20:27

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

Originally Posted by b-man (Post 1389221)
The primary goal for this project is to make an open source implementation of Darwin for arm. The N900 is just one of several testing platforms being used to reach this goal.

As for GUI support, this should be attainable by adapting a version of OSX's IOGraphics for the kernel (apple already uses an embedded profile of IOGraphics for the iOS kernel).

Also to note, some iOS kernel extensions, like AppleMobileFileIntegrity, already work without problems with this kernel.

im confused

juiceme 2015-01-18 20:32

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

Originally Posted by oenthaa (Post 1457147)
im confused

Please elaborate?

oenthaa 2015-01-18 20:39

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

Originally Posted by juiceme (Post 1457149)
Please elaborate?

I read this post , but I always fail to boot . what is wrong ? I use ubuntu 14 64bit .

juiceme 2015-01-18 20:51

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

Originally Posted by oenthaa (Post 1457152)
I read this post , but I always fail to boot . what is wrong ? I use ubuntu 14 64bit .

Could be any of dozens of things. Booting to alternative OS'es is not a trivial thing.

Wikiwide 2015-01-19 03:12

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

Originally Posted by winocm (Post 1390985)
I did make a nice keyboard driver this week. Getting an N900 might be really nice for development purposes. :)

Currently, I do debug in QEMU and I have other people test the kernels on their hardware.

Luckily, not so much of the kernel is platform dependent, so I can do debug on my BeagleBoard xM, or an iPhone 4. Let me know if you can get me an N900 for development. I would really appreciate it.

Quick question...

Hmm... I would gladly get you one (not my own, though ;-) ). Maybe, this one?

Any news? I have read Milestone One; and I see GitHub is alive.

Would you consider using GNUstep as GUI, with time?

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

Wikiwide 2015-01-19 04:13

Re: Darwin/ARM running on a Nokia N900
 
A link...
https://en.wikipedia.org/wiki/GNU-Darwin
Thank you. Best wishes.

b-man 2015-01-19 04:40

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

Originally Posted by Wikiwide (Post 1457184)
Quick question...

Hmm... I would gladly get you one (not my own, though ;-) ). Maybe, this one?

Any news? I have read Milestone One; and I see GitHub is alive.

Would you consider using GNUstep as GUI, with time?

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

Unfortunately winocm has had to shift her focus away from this project to work on other things (apple internship, school, misc. research) and she has put me and a few others in charge to maintain the project.

So far since that last milestone update a few things have changed. The most notable changes include proper support for UNIX signals (using signal trampoline) and improved thread handling (support for more thread states, ect). I'm planning to eventually fix kxld so kernel extensions will be able to be dynamically loaded so we won't need to muck around with building kernelcaches. Unfortunately because of school I won't be able to investigate this anytime soon. Perhaps if I don't have too much work over spring break I can try to get that hammered out.

Btw, updated information on building a bootable image can be found here. (warning: this wiki is a work-in-progress and is incomplete - I'm still investigating a more organized way of compiling device trees).

Once we've overcome the problem with kernel extensions, eliminate some remaining deadlock problems, and perhaps investigate ways to make pmap a little more optimized, then we can worry about a GUI. ;)

Mentalist Traceur 2015-01-19 06:04

Re: Darwin/ARM running on a Nokia N900
 
Well, I for one second Wikiwide's willingness to contribute money to get one (or more) of you an N900. Personally, I'd rather see people reversing N900 components so that we can get a purely-libre build of Maemo 5 someday, while this iOS stuff project interests me only as a very low priority, BUT, I think there's a LOT of merit in principle in such a project succeeding.

b-man 2015-01-20 01:07

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

Originally Posted by Mentalist Traceur (Post 1457201)
Well, I for one second Wikiwide's willingness to contribute money to get one (or more) of you an N900. Personally, I'd rather see people reversing N900 components so that we can get a purely-libre build of Maemo 5 someday, while this iOS stuff project interests me only as a very low priority, BUT, I think there's a LOT of merit in principle in such a project succeeding.

I appreciate the generosity and I may take you guys up on that offer. I once had an N900, but sadly it gave up the ghost this past summer (LCD cable was failing and then an internal failure happened on the PCB that rendered it a brick). Keep in mind however that if you guys do send me one, it will likely be a bit of time before I get enough free time to do anything with it pertaining to this project or to maemo. This semester is a fairly critical one and I need time to focus on my studies.

I'll also add that if anyone is interested in participating in this project the help would be greatly appreciated. Despite winocm appointing me and a few others to maintain this project, I've pretty much been the only person doing any work on this project since September of last year (and I'm not giving up! :D). The next major endeavor that will need to be taken will be to arrange the source code for userspace components in such a way that those components can be built with Make (instead of Xcode). If I can get extra help we should be able to get this done within a reasonable amount of time, however if I end up doing this alone it will likely take a good chunk of next summer to complete.

b-man 2015-01-20 01:12

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

Originally Posted by oenthaa (Post 1457152)
I read this post , but I always fail to boot . what is wrong ? I use ubuntu 14 64bit .

Those instructions are obsolete - An updated set of instructions can be found here. However unfortunately those instructions are still a work-in-progress. I'll PM you a device tree that you will need to use when following those instructions tomorrow.

pichlo 2015-01-20 07:39

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

Originally Posted by Wikiwide (Post 1457184)
Hmm... I would gladly get you one (not my own, though ;-) ). Maybe, this one?

Wow, Wikiwide, you are a hero! I would not (cannot) go as far as donating a whole N900, but I would be happy to contribute 20 GBP to your cause for every donated device. Please PM me with/for details.

reinob 2015-01-20 09:04

Re: Darwin/ARM running on a Nokia N900
 
Proposal to council/board?:

set-up a separate bank account so that people can transfer money (as a pure donation) to it. This will be used for funding/donating to interesting projects. Perhaps people/projects can nominate themselves or be nominated by others, and every 3 months a poll is made (within the community) to decide which projects get how much.

pichlo 2015-01-20 09:15

Re: Darwin/ARM running on a Nokia N900
 
1 Attachment(s)
But... but... but... reinob, you ARE (on) the council! ;)

Attachment 36418

YOU can make it happen!

reinob 2015-01-20 10:12

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

Originally Posted by pichlo (Post 1457355)
But... but... but... reinob, you ARE (on) the council! ;)

Attachment 36418

YOU can make it happen!

No I'm not! :)

pichlo 2015-01-20 10:22

Re: Darwin/ARM running on a Nokia N900
 
No?????? How could that happen?
Well, that illustrates how much in touch with TMO politics I am. Good job I did not get elected :)

juiceme 2015-01-20 18:19

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

Originally Posted by pichlo (Post 1457361)
No?????? How could that happen?
Well, that illustrates how much in touch with TMO politics I am. Good job I did not get elected :)

Indeed, both of you would have been excellent councillors IMHO.
SO welcome to #maemo-meeting today at 21:00UTC to present the idea to the council.

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 01:25.

vBulletin® Version 3.8.8