Page 1 of 1

A new era is dawning

PostPosted: Sun Oct 01, 2017 9:29 pm
by morpheus
AAPL has released the ARM64 portions of XNU. God knows what went through their heads if it's intentional, and God save the negligent engineer who did this if it's by mistake.

But whatever. It's done. And that means that XNU can now theoretically be compiled for ARM64 from source. I'm starting a team @Tg to focus on porting the pieces that are still missing - namely , some kexts and a basic iBoot clone loader - with the aim of getting a full distribution for generic ARM64 And possibly ARMv7 (though that's mostly dead now). Think, Hackintosh, but for ARM platforms like QEmu, BeagleBoard/Raspberri Pi or .. *gasp* unlocked Samsung Android devices :-)

Loose goals that come to mind (these will surely be revised, many times, but this is off the top of my head):

1) Produce a working makefile that gets XNU to compile for ARM64, from source. (Difficulty: Annoying but shouldn't be that hard)
2) Extend (1) so as to get Dtrace working on it, and whatever other CONFIG_DEVELOPMENT stuff
3a) Get (1) and (2) working on iOS 8 devices, by enabling a kloader type without that nagging KPP. (Difficulty: hard)
3b) Build a simple iBoot substitute that will load XNU + DT for arbitrary ARM64 hardware. (Difficulty: challenging)
5) Slowly but surely provide KEXT replacements for ARM64 Hardware (ARMplatform, etc.). (Difficulty: Hard to Sysiphean)

Interested? Leave your name here, or email me directly. You won't have to move - we're virtual. But you might just move AAPL.

J

Re: A new era is dawning

PostPosted: Mon Oct 02, 2017 12:52 pm
by littlelailo
This sounds great! Unfortunately I haven't the time and experience to help you out, but I'll keep an eye on this and may join the team at some point in the future.

Re: A new era is dawning

PostPosted: Tue Oct 03, 2017 4:59 am
by coolstar
Most of my experience with drivers is with PCI/i2c/HID/smbus devices (on both Windows KMDF drivers and macOS I/OKit based kexts), but I'm happy to contribute to kext development where needed :)

Regarding the bootloader/device tree, I wonder if it might be a feasible idea to use a EDK2/Tianocore based bootloader on ARM64 (since it already works pretty well on AMD64 and we can possibly import bits from the Clover project), and either have that load XNU with a DT, or we can use ACPICA and implement ACPI tables in EDK2 and xnu for ARM (similar to the currently-closed source AppleACPIPlatform kext)

Re: A new era is dawning

PostPosted: Tue Oct 03, 2017 8:41 am
by Spamm3r
Well I dont have experience in such things but I would really like to contribute.

Re: A new era is dawning

PostPosted: Mon Oct 09, 2017 12:41 pm
by scknight
I have experience reverse engineering and some experience writing kernel drivers. I would definitely be interested in helping

Re: A new era is dawning

PostPosted: Mon Oct 09, 2017 8:07 pm
by InSaneDarwin
@coolstar we could us you know for our PureDarwin x64 build that we're stuck on. Come join us on Telegram(Main Devs site at) and our new forum for PureDarwin https://www.pd-devs.org

Re: A new era is dawning

PostPosted: Tue Oct 10, 2017 12:06 pm
by annaleah
Amazing read that is, as me myself on my current cutting cycle and trying to follow proper guidelines and your articles helped me a lot in my cycle.

Re: A new era is dawning

PostPosted: Wed Oct 11, 2017 3:38 am
by binerdd
I have some experience in reverse engineering and iOS internals, definately want to help out in any kind of way.