Hi HN! I wrote an article about this initial support series and what it took to make things work properly on this machine:<p><a href="https://asahilinux.org/2021/03/progress-report-january-february-2021/" rel="nofollow noreferrer">https://asahilinux.org/2021/03/progress-report-january-febru...</a><p>It still applies to what got merged; the past month was spent on clean-ups, fixes, and review feedback, but there are no major changes to the approach. This initial merge was quite complex as it has to touch a number of subsystems and core kernel code in order to support the M1's quirks, and it was CCed to ~20 people. Now that it's done we can more efficiently work on individual drivers and subsystems, so I expect the pace to pick up.<p>If you would like to support my work on this project, I do have a Patreon: <a href="https://www.patreon.com/marcan" rel="nofollow">https://www.patreon.com/marcan</a><p>I also streamed initial development on YouTube and will be resuming streams next week (patch feedback and git rebasing and munging doesn't make for very interesting streams, but now I'm back to coding). Coming up I have some driver support other people have been working on, and then I'll be writing a minimal hypervisor that can run macOS as a guest, to help reverse engineer the hardware - this will be important for reverse engineering more complex drivers cleanly, especially the GPU kernel side.<p>Until now we've used a serial cable to debug/load kernels (needs a DIY arduino thing, an proper design I'm working on which is still vapourware, or another M1 box), but Sven added support for the USB device controller and I'll merge it into our bootloader soon, so from this point on anyone will be able to do quick kernel iteration, debugging, and hardware exploration with just a standard USB cable and any other host machine.