Hector Martin akakurudzira kuzviisa pakati pezvinhu zvikuru Linux Seti yekutanga yemachira akagadzirwa nechirongwa cheAsahi Linux, vachitungamira basa rekugadzirisa mamiriro ezvinhu Linux Kune makombiyuta eMac ane chip yeApple M1 ARM. Mapeji aya atotenderwa nebazi rinoona nezvekuchengetedza. Linux SoC uye yakagamuchirwa mukodhi base Linux-next, iyo inoumba hwaro hwekushanda kwekernel 5.13. Muchokwadi, Linus Torvalds anogona kudzivirira shanduko dziri kurongwa kuti dzisatumirwe, asi izvi zvinoonekwa sezvisingaite.
Mapeji aya anosanganisira rutsigiro rwezvinhu zvisiri zveGPU zveM1 SoC, zvakaita se interrupt controller, timer, UART, SMP, I/O, uye MMIO. Reverse engineering yeGPU haisati yapera; pakubuda, mapeji aya anopa rutsigiro rweframebuffer uye serial console. Rutsigiro rwemudziyo rwunoziviswa rweApple Mac mini, iyo inoshandiswa sepuratifomu yekutarisa muchirongwa cheAsahi. Linux (mirairo yakadzama yekuisa iripo).
Neparutivi, yakavhurika hardware adapta iri kugadzirwa, iyo inozivikanwa sekurerutsa kubatana kune koni kuburikidza ne serial port uye debugging. Mune chimiro chayo chazvino, nekuda kwekushandiswa kweApple kweasiri-standard USB-PD mirairo mumidziyo yayo, nzira iri nyore yekuwana iyo console ndeyekubatanidza kune imwe komputa yakavakirwa paApple M1 chip uchishandisa USB C tambo. ndeyekugadzira decoupler yakavakirwa paArduino microcontroller, FUSB30 chip uye UART-TTL adapta.
Purojekiti iyi yakagadzirawo m1n1 bootloader, iyo inoita kuti zvikwanisike kurodha kernel. Linux uye nzvimbo shoma yesystem pamakombiyuta eMac neApple M1 CPU. Apple inobvumidza kuti ma kernel asina kusaina aiswe pamakombiyuta neM1 CPU pasina kupwanyika. Iyi ficha inobvumira vagadziri kuti vaedze ma XNU kernels matsva, asi kuedza kutanga mamwe masystem kunopa matambudziko, sezvo Apple ichishandisa proprietary boot protocol uye imwe Device Tree format. Chirongwa cheAsahi chakakurudzira Linux Bootloader ye m1n1 inoshanda sechikamu chinoita kuti zvikwanisike kushandisa standard Device Tree uye standard boot protocol inoshandiswa mu kernel. Linux yeARM64. Mune ramangwana, m1n1 inoronga kuwedzera kugona kufonera U-Boot neGRUB kuronga maitiro eboot akafanana neanoshandiswa pane mamwe mapuratifomu eARM64.
Source: opennet.ru
