在年初 赫克托·馬丁(Hector Martin) (也稱為Marcan) 我宣布您有興趣從事可移植內核的工作 Linux可以在配備有Mac OS X的Mac計算機上運行 蘋果新的ARM芯片M1。
為此任務 HéctorMartin在Patreon上發起了一項籌款活動 所有對該項目感興趣或支持Héctor的人都進行了捐款,以便他可以將Linux移植到新的Apple M1系列上。 接著就,隨即 該項目正式啟動 Marcan將其命名為Asahi Linux,並創建了官方網站和代碼存儲庫。
赫克托(Hector)在使Linux用於不尋常系統方面擁有豐富的經驗,例如,他以將Linux移植到Nintendo Switch / Wii,Microsoft Kinect和Sony PlayStation 3/4上而聞名(包括他曾因規避侵權行為而在索尼引起轟動的訴訟中被告之一) PlayStation 3上的保護)。
現在在最近的新聞中 HéctorMartin建議將其包含在內核中 Linux第一 為以下目的準備的補丁集 裝有ARM Apple M1芯片的Mac計算機的Linux端口 由Asahi Linux項目使用。
這些修補程序已經得到Linux SoC分支維護者的批准,並已被Linux下一個代碼庫所接受,並以此為基礎構建了5.13內核功能。 從技術上講,Linus Torvalds可以阻止提議的更改的交付,但是這種發展被認為是不可能的。
自從我們測試了第一個Apple M1硬件以來已經過去了五個月,而那一天的每一天我們都花了一個完全基本的引導環境“幾乎適合調試”。
無法猜測Asahi開發人員對M1的GPU進行反向工程並產生高質量的開源驅動程序將花費多長時間。 即使到了現在,他們也不可能完全停止這樣做。 或由於某些原因,您的工作可能在初始階段就沒有被接受。
補丁包括對非GPU SoC M1組件的支持, 作為中斷控制器,計時器 UART,SMP,I / O和MMIO功能。 GPU的逆向工程尚未完成,通過串行端口提供了幀緩衝區和控制台支持,以將輸出組織為補丁。
在這些設備中,聲明了與在Asahi Linux項目中用作參考平台的Apple Mac mini計算機的兼容性(提供詳細的安裝說明)。
正在開發一個單獨的開放式硬件適配器 簡化串行控制台的連接和調試。 按照目前的形式,由於Apple在其計算機上使用了自定義USB-PD命令,因此訪問控制台的最簡單方法是使用USB C電纜連接到另一台基於Apple M1芯片的計算機。基於Arduino微控制器,FUSB30芯片和UART-TTL適配器的連接。
該項目 還準備了m1n1引導程序,這使得可以在具有Apple M1 CPU的Mac計算機上加載Linux內核和最小的系統環境。 Apple在正常模式下具有M1 CPU的計算機上的Apple允許加載未經數字簽名的內核,而無需越獄。
這項特徵 允許開發人員嘗試新的XNU內核 但是嘗試引導其他系統存在困難,因為Apple使用其自己的引導協議和不同的設備樹格式。
朝日Linux項目提出的m1n1引導加載程序充當允許使用標准設備樹和用於ARM64的Linux內核中使用的標準引導協議的層。 將來,計劃將m1n1添加調用U-Boot和GRUB的功能,以組織典型的引導過程,該過程類似於在其他ARM64平台上使用的過程。