Хектор Мартин (Hector Martin) предложи да включи в ядрото на Linux първия набор от пачове, подготвени от проекта Asahi Linux, който работи по адаптацията на Linux за компютри Mac, оборудвани с ARM-чипа Apple M1. Указаните пачове вече са одобрени от поддържащия клон Linux SoC и приети в кодовата база Linux-next, на базата на която се изгражда функционалността на ядро 5.13. Технически, Линус Торвалдс може да блокира предаването на предложените промени, но такова развитие на събитията се оценява като малко вероятно.
Пачовете включват поддръжка на компоненти SoC M1, които не са свързани с GPU, като контролер за прекъсвания, таймер, UART, SMP, функции за организиране на вход/изход и MMIO. Обратното инженерство на GPU все още не е завършено, за организиране на изход в пачовете е предоставена поддръжка на фреймбуфер и конзола чрез серийния порт. От устройствата е обявена поддръжка на компютъра Apple Mac mini, който се използва като референтна платформа в проекта Asahi Linux (има подробна инструкция за инсталиране).
Отделно се разработва отворен хардуерный адаптер, признат за опростяване на свързването към конзолата чрез серийния порт и провеждането на отстраняване на неизправности. В текущия вид, заради използването на нестандартни команди USB-PD от компанията Apple в своето оборудване, най-простият начин за достъп до конзолата е свързването към друг компютър на базата на чипа Apple M1 с помощта на кабел USB C. По-сложният начин включва създаване на развръзка на база микроконтролер Arduino, чип FUSB30 и адаптер UART-TTL.
Проектът също така подготви зареждач m1n1, който позволява зареждане на ядрото Linux и минималната система на компютри Mac с CPU Apple M1. Компанията Apple на компютри с CPU M1 в нормален режим позволява зареждане на неуспешно подписани ядрота без необходимост от прилагане на jailbreak. Тази характеристика позволява на разработчиците да експериментират с нови ядра XNU, но при опити за зареждане на други системи възникват трудности, тъй като Apple използва собствен протокол за зареждане и различен формат на Device Tree. Предложеното от проекта Asahi Linux зареждачно m1n1 функционира като слой, който позволява използването на стандартния Device Tree и вградения протокол за зареждане, използван в ядрото Linux за ARM64. По-късно в m1n1 е планирано да се добави възможността за извикване на U-Boot и GRUB за организиране на типичния процес на зареждане, подобен на този, който се използва на други платформи ARM64.
Източник: opennet.ru
