U-Arnd Bergmann, Umthuthukisi we-Linux kernel ovela egatsheni le-arm-soc kanye nomphathi wamaphakheji we-kernel e-SUSE, ukhiphe i- isiphakamiso lapho ebeka phezu kwetafula udaba lokukhipha i-kernel esekelwe ku-GCC futhi udale amathuluzi ekhodi ukusekela ama-ARM CPU amadala, ama-ABI awo ahlobene, amasethi eziyalezo, namandla e-kernel.
U-Arnd Bergmann, ubalula lokho isisekelo sesiphakamiso yokuyeka ukwesekwa kuma-ARM CPUs endala ku-kernel kungenxa yokuyekwa kwe-GCC, njengoba amanye ama-CPU ahlongozwayo ukuthi asuswe engasasekelwa emagatsheni akamuva e-GCC, futhi amanye ahlelelwe ukukhishwa ekukhishweni okuzayo.
Yisho ukuthi ngokusebenzisa lokhu, Ukwenziwa kwesimanjemanje kanye nokuqaliswa kwemisebenzi emisha kumdidiyeli kuzokwenziwa lula. KANYEUkukhipha usekelo lwezakhiwo ku-GCC kuzodinga ukususwa kwayo ku-kernel uma ubuncane benguqulo ye-GCC esekelwa i-kernel inyuswa (okwamanje, okungenani inguqulo ye-GCC 5.1 iyadingeka ukuze kuhlanganiswe i-kernel).
Phakathi kwezakhiwo, ama-chips kanye nezandiso okuhlongozwayo ukuthi kukhishwe ku-kernel, kubaluliwe okulandelayo:
- I-ARMv3: Ikhishwe ku-GCC-9, ngakho-ke izogcina ikhishiwe ku-kernel njengoba izinguqulo ezincane ze-compiler zanda.
- I-ARMv4: Isetshenziselwa i-StrongARM kanye ne-FA526 CPUs, isesemabhodini athile. Ngisho nama-chips amasha asondele eminyakeni engama-20 ubudala. Inguqulo yokugcina ye-Debian eyayibasekela kwakunguLenny (5.0). Imindeni eyisithupha ye-SoC enama-ARMv4T cores (ARM720T, ARM920T kanye ne-ARM922T) isasekelwa. Yize sezindala, zinabasebenzisi nonjiniyela abaningi kune-ARMv4. U-Debian Stretch (9.0) ube ngowokugcina ukubasekela.
- I-ARMv5: Cishe ingxenye yesithathu yamapulatifomu asekelwayo asebenzisa i-ARMv5, kodwa iningi seliseduze nokuphela kokusekelwa kwawo.
- I-ARMv6 ngaphambi kwesikhathi: ihlanganisa i-ARM1136r0p ku-NXP i.MX31 kanye ne-OMAP24xx, ikakhulukazi ithebhulethi ye-Nokia N8xx. Idinga ama-hacks akhethekile ukusekela izinhlamvu nge-SMP. Kunesiqephu esishintsha i-ARMv6 isuke ekusebenzisaneni ne-ARMv7 ukuze ihambisane ne-ARMv5, kodwa idinga umsebenzi owengeziwe.
- I-ARMv6K
I-ARMv7-M: I-Cortex-M3/M4/M7 iwukuphela kwama-cores asekelwa ngaphandle kwe-MMU, okwamanje akuzingxenyekazi ezi-5 ze-microcontroller. Angase asuswe ngo-2027, kodwa i-GCC isazodinga ukuwasekela kwamanye amasistimu okusebenza. - iWMMXt: abekho abasebenzisi abasele abaziwayo be-iWMMXt, futhi ukusekelwa kwama-ARMv7 PJ4 CPUs kususiwe. Isekelwa kuphela ku-Intel/Marvell PXA naku-MMP1.
- I-ARMv5 enkulu endian kernel (BE32): I-SoC eyodwa kuphela eyisebenzisayo, i-Intel IIXP4xx. I-Debian iyisekele ngemodi encane-endian, kodwa abashayeli baphukile ku-LE.
- I-ARMv7 enkulu endian kernel (BE8)
- I-Param_struct pre-ATAGS: Lokhu kwehle ngo-2001, ukuze kuqedwe "eminyakeni emi-5", osekwenzekile kakade.
- Amafayela epuleti asuselwa ku-ATAGS: Ngemuva kokuhlanza okungenhla, kunamafayela ebhodi angama-29 asele kumapulatifomu ayi-10 we-SoC.
- I-OABI Kernels: Cishe wonke umuntu usebenzisa i-EABI namuhla, futhi ukusekelwa kwe-OABI kususiwe njengokuhlosiwe ku-GCC-4.8. I-kernel isavumela ukwakhiwa njenge-OABI nge -mabi=apcs-gnu, esetshenziswa ngokuzenzakalelayo kuma-kernel e-ARMv4/ARMv5.
- I-OABI Compat Mode: Lokhu kuvumela ukusebenzisa okuhamba ngakubili kwe-OABI nge-EABI kernel.
- NWFPE
- I-Highmem: Imishini eminingi ye-ARM ingasebenza ngaphandle kosekelo lwe-highmem isebenzisa i-CONFIG_VMSPLIT_2GB ukubhekana nememori efika ku-2GB. Imishini emikhulu yavela ne-Cortex-A15 ngo-2012, yashintshwa ngokushesha ngama-chips angama-64-bit.
- I-Sparsemem: Kukhona ingxoxo mayelana nokususa ukusekelwa kwe-sparsemem yendabuko. Lokhu kuphinde kuhlobane nemishini edinga i-highmem ukuze isebenzise yonke i-RAM yayo
- I-RiscPC: Lena inkundla endala kakhulu esekelwayo, futhi izogcina isusiwe, njengoba ingasebenzi ne-GCC-9 noma ngaphezulu ngenxa yokususwa kwe-ARMv3.
- I-SA1100, i-Footbridge: ezinye izinkundla ezisekelwe ku-StrongARM, ezifanele kuphela i-nostalgia.
- Gemini, Moxart: Bobabili basebenzisa i-Faraday FA526 CPU core, efana ne-StrongARM esebenzisa i-ARMv4 esikhundleni se-ARMv4T ngesithupha. Ama-chips nawo angaphezulu kweminyaka engama-20, kepha ikhodi ye-kernel ibuyekeziwe futhi akuwona umthwalo wokulungisa.
- Amafayela ebhodi le-PXA: Kunamafayela epuleti amabili asele kukhodi ye-PXA engasuswanga eminyakeni emibili edlule, ngethemba lokuthi lokhu kuzosiza ukuguqulelwa ku-DT.
- I-OMAP1: okuwukuphela kwenkundla ye-ARMv4T/ARMv5 ngaphandle kokusekelwa kwe-DT, okuyenza ibe umgomo wokususwa ngesikhathi esithile.
- I-Nspire, AT91RM9200, CLPS711X, EP93xx, iMX1
- OMAP24xx
- I-iMX31, i-realview/integrator ene-1136r0
- I-S3C64xx (Cragganmore): Leli ukuphela kwebhodi le-ARMv6K ngaphandle kokusekelwa kwe-devicetree, futhi ifayela lebhodi liqukethe inani elifanayo lobunzima njengawo wonke amanye amafayela ebhodi ehlanganisiwe. i-arch/arm/mach-s3c/Kconfig.s3c64xx iyibeka ohlwini ukuze isuswe ekuqaleni konyaka ozayo, okungavumela ukuhlanzwa okukhulu kwengqalasizinda yesikhulumi nabashayeli.
- I-Orion5x, mv78xx0, amafayela webhodi lejuba: Njenge-PXA, lezi zishiywe kusalindwe inqubekelaphambili ebheke ekuguqulweni kwe-DT, kodwa akukho okwenzekile ngaphandle kokulungisa okuthile okuncane ku-mv78xx0. Ngokuphambene, i-Debian isuse i-orion5x kernel kanambambili ecaphuna ukushoda kwabasebenzisi, ngakho-ke kubonakala mancane kakhulu amathuba okuthi kuqedwe.
- iMX35, WM8750, AST2500, BCM2835: Lezi ezine zonke zingamapulatifomu e-ARMv6K futhi asekelwa kahle, nakuba i-AST2500 ne-BCM2835 kuphela enesisekelo sabasebenzisi esisebenzayo.
- Izilawuli ezincane ze-Stm32f4/f7/h7: Lawa ukuphela kwama-chips okungewona awe-MMU Arm ukubona intuthuko eqhubekayo njengoba i-ST iqhubeka nokweseka amakhasimende ayo akhona.
Ekugcineni, kufanele kushiwo lokho lolu hlelo lusasesigabeni se-RFC, okungukuthi, ishicilelwe ukuze kuxoxiswane ngayo nomphakathi. Uma kuvunyiwe, kuhlongozwa ukuthi kuqalwe ukukhishwa kwamaphrosesa amadala e-ARM ku-Linux kernel 6.12, okulindeleke ngoDisemba. Amakhandidethi okuqala azosuswa yi-ARMv4 (ngaphandle kokukhipha i-ARMv4T), i-iWMMXt, BE32 ne-OABI.
Umthombo: https://lkml.org