Arnd Bergmann, i cili përgjigjet për paketat e bërthamës në SUSE, publikoi në listën e postës për zhvilluesit e bërthamës Linux një plan për të hequr nga bërthama dhe mjetet e ndërtimit të bazuara në GCC kodin për mbështetje të CPU-ve të vjetra ARM dhe ABI-të e lidhura, si dhe grupe të instruksioneve dhe mundësive të bërthamës. Plani është akoma në fazën RFC, dmth. është paraqitur për diskutim në komunitet. Nëse plani miratohet, heqja e procesorëve të vjetër ARM propozohet të fillojë në bërthamën Linux 6.12, lëshimi i të cilit pritet në dhjetor. Kandidatët e parë për heqje janë ARMv4 (pa hequr ARMv4T), iWMMXt, BE32 dhe OABI.
NdĂ«rprerja e mbĂ«shtetjes pĂ«r CPU-tĂ« e vjetra ARM nĂ« bĂ«rthama pĂ«rkon me ndĂ«rprerjen e mbĂ«shtetjes sĂ« tyre nĂ« GCC â disa nga CPU-tĂ« e propozuara pĂ«r heqje nuk mbĂ«shteten mĂ« nĂ« degĂ«t e reja tĂ« GCC, ndĂ«rsa disa planifikohen tĂ« hiqen nĂ« lĂ«shimet e ardhshme, gjĂ« qĂ« do ta lehtĂ«sojĂ« modernizimin dhe implementimin e mundĂ«sive tĂ« reja nĂ« kompajler. Heqja e mbĂ«shtetjes pĂ«r arkitekturĂ«n nĂ« GCC do tĂ« kĂ«rkojĂ« heqjen e mbĂ«shtetjes edhe nga bĂ«rthama nĂ« rast se versioni minimal i mbĂ«shtetur nga bĂ«rthama i GCC-sĂ« rritet (aktualisht pĂ«r ndĂ«rtimin e bĂ«rthamĂ«s kĂ«rkohet tĂ« paktĂ«n versioni GCC 5.1).
Arkitekturat, çipat dhe zgjerimet që propozohet të hiqen nga bërthama:
- ARMv3 â mbĂ«shtetja Ă«shtĂ« ndalur tashmĂ« nĂ« GCC 9.
- ARMv4 â pĂ«rdoret pĂ«r procesorĂ« tĂ« njohur si StrongARM dhe FA526, ndĂ«rsa mĂ« tĂ« rinjtĂ« nga kĂ«ta çipa janĂ« lĂ«shuar rreth 20 vjet mĂ« parĂ«. MbĂ«shtetja pĂ«r ARMv4 Ă«shtĂ« ndalur nĂ« Debian 5.0. Propozohet fillimisht tĂ« pezullohet mbĂ«shtetja pĂ«r ARMv4 nĂ« GCC dhe pas disa vjetĂ«sh edhe nĂ« bĂ«rthamĂ«.
- ARMv4T â ndodhen 6 familje SoC me bĂ«rthama ARM720T, ARM920T dhe ARM922T, qĂ« janĂ« mĂ« tĂ« zakonshme se SoC-tĂ« qĂ« bazohen nĂ« ARMv4. MbĂ«shtetja pĂ«r ARMv4T Ă«shtĂ« ndalur nĂ« Debian 9.0. NĂ« bĂ«rthamĂ« mbĂ«shtetja pĂ«r ARMv4T planifikohet tĂ« pezullohet, jo mĂ« herĂ«t se pezullimi i mbĂ«shtetjes pĂ«r ARMv5.
- ARMv5 â pĂ«rdoret nĂ« rreth 1/3 tĂ« tĂ« gjitha platformave tĂ« mbĂ«shtetura nĂ« bĂ«rthamĂ«, por shumica e kĂ«tyre platformave janĂ« afĂ«r pĂ«rfundimit tĂ« ciklit tĂ« tyre tĂ« jetĂ«s. Debian vazhdon tĂ« mbĂ«shtesĂ« ARMv5, por pĂ«r shkak tĂ« mungesĂ«s sĂ« FPU dhe operacioneve atomike, mbajtja e mbĂ«shtetjes bĂ«het gjithnjĂ« e mĂ« e vĂ«shtirĂ« dhe, me siguri, nĂ« njĂ« tĂ« ardhme tĂ« afĂ«rt, porti i Debian pĂ«r ARMv5 do tĂ« kalojĂ« nĂ« grupin e atyre jozyrtarĂ«.
- Gjenrat fillestar tĂ« ARMv6 â pĂ«rdoren nĂ« SoC-tĂ« si ARM1136r0p (NXP i.MX31) dhe OMAP24xx (Nokia N8xx), por mbĂ«shtetja e tyre kĂ«rkon hile pĂ«r tĂ« punuar nĂ« bĂ«rthama SMP.
- ARMv6K â pĂ«rdoret nĂ« ARM1176 (Raspberry Pi 1, AST2500) dhe ARM1136r1. NĂ« bĂ«rthamĂ« nuk ka pengesa pĂ«r tĂ« ndaluar mbĂ«shtetjen, por nĂ« shpĂ«rndarje ka vĂ«shtirĂ«si pĂ«r shkak tĂ« mos pĂ«rputhjes me standardin e zakonshĂ«m armv7-a+vfpv3-d16.
- ARMv7-M â pĂ«rdoret nĂ« mikroçipa tĂ« bazuar nĂ« Cortex-M3/M4/M7, qĂ« mbeten çipat e fundit tĂ« mbĂ«shtetur nĂ« bĂ«rthamĂ« pa njĂ«si menaxhimi tĂ« memories (MMU). Puna mbi bĂ«rthamat nĂ« sisteme pa MMU Ă«shtĂ« ndalur nĂ« 2017, pas kalimit nĂ« zhvillimin e RTOS, siç Ă«shtĂ« Zephyr. Propozohet tĂ« hiqet mbĂ«shtetja pĂ«r ARMv7-M nĂ« 2027, pas 10 vjetĂ«sh, pas pĂ«rfundimit tĂ« zhvillimit, megjithĂ«se mbĂ«shtetja vazhdon nĂ« GCC.
- iWMMXt â mbĂ«shtetja pĂ«r CPU ARMv7 PJ4 (MMP2, Berlin) nĂ« bĂ«rthamĂ« Ă«shtĂ« ndalur, pas sĂ« cilĂ«s nuk ka mbetur asnjĂ« sistem nĂ« pĂ«rdorim qĂ« pĂ«rdor kĂ«tĂ« grup instruksionesh. MbĂ«shtetja pĂ«r iWMMXt Ă«shtĂ« ndaluar tashmĂ« nĂ« Clang dhe Ă«shtĂ« propozuar pĂ«r heqje nga GCC.
- BE32 (big endian ARMv5) â pĂ«rdoret vetĂ«m nĂ« njĂ« SoC Intel IXP4xx. NĂ« versionet e vjetra tĂ« Debian, Ă«shtĂ« mbĂ«shtetur vetĂ«m moda little-endian, por nĂ« drejtoritĂ« mbeten probleme tĂ« pazgjidhura. Propozohet tĂ« hiqet mbĂ«shtetja BE32 nga GCC dhe nga bĂ«rthama, pasi nĂ« drejtoritĂ« pĂ«r disa vjet askush nuk e ka provuar tĂ« zgjidhĂ« problemet.
- BE8 (big-endian ARMv7) â nĂ« shumĂ« drejtorira ka probleme, testimi i funksionimit Ă«shtĂ« ndĂ«rprerĂ« dhe nuk ka informacione mbi ndonjĂ« pajisje qĂ« ende pĂ«rdoret. Norma BE8 mund tĂ« jetĂ« e dobishme pĂ«r testimin e komponentĂ«ve tĂ« hapĂ«sirĂ«s sĂ« pĂ«rdoruesit nĂ« sisteme big-endian, prandaj mbĂ«shtetja pĂ«r BE8 planifikohet tĂ« ruhet nĂ« bĂ«rthamĂ« dhe GCC pĂ«r tĂ« paktĂ«n disa vjet para se tĂ« fillojĂ« tĂ« shkaktojĂ« probleme.
Mundësitë e propozuara për heqje nga bërthama Linux:
- Struktura param_struct, e pĂ«rdorur pĂ«rpara ATAGS (ARM Tag-Area) â Ă«shtĂ« shpallur e vjetruar qĂ« nĂ« 2001, por akoma pĂ«rdoret nĂ« kodin pĂ«r platforma RiscPC dhe Footbridge.
- Skedaret me parametra tĂ« bazuara nĂ« strukturĂ«n ATAGS (pĂ«rdorur pĂ«r transferimin e informacionit rreth konfigurimit deri nĂ« Device Tree) â nĂ« bĂ«rthamĂ« mbeten 29 skedare, tĂ« lidhura me 10 platforma SoC, qĂ« pĂ«rdorin ATAGS.
- OABI (Old ABI, ABI e vjetĂ«r pĂ«r arkitekturĂ«n ARM) â gati nĂ« tĂ« gjitha vendeve tani pĂ«rdoret EABI (Embedded ABI). OABI Ă«shtĂ« shkaku i shumĂ« gabimeve, pasi zhvilluesit e drejtorive janĂ« ndalur sĂ« marrĂ« nĂ« konsideratĂ« disa karakteristika tĂ« lidhura me tĂ«. MbĂ«shtetja pĂ«r OABI gjatĂ« ndĂ«rtimit tĂ« komponentĂ«ve pĂ«r hapĂ«sirĂ«n e pĂ«rdoruesve ka pĂ«rfunduar nĂ« GCC 4.8, por pĂ«r bĂ«rthamĂ«n Ă«shtĂ« ruajtur njĂ« flamur '-mabi=apcs-gnu'. Propozohet pĂ«r momentin tĂ« ruhet OABI, por tĂ« vĂ«shtirĂ«sohet aktivizimi i saj pĂ«r shkak tĂ« moskujdesit.
- Rezhimi i pajtueshmërisë me OABI (OABI_COMPAT) lejon ekzekutimin e skedarëve ekzekutues të ndërtuar për OABI duke përdorur bërthamën me EABI. Derdhen disa probleme në driver-a për shkak të moskatërsisë me ioctl, por ndihma e këtij rezhimi është dukshëm më e vogël se ndihma e bërthamave me OABI. Për të ruajtur mbështetje për StrongARM, është e arsyeshme të ruhet mbështetje për OABI ose OABI_COMPAT.
- NWFPE (No Floating Point Emulator, emulator pĂ«r ekzekutimin e operacioneve me pikĂ« floating) â patch-et pĂ«r heqjen e tij u propozuan 11 vjet mĂ« parĂ«, por NWFPE Ă«shtĂ« i nevojshĂ«m pĂ«r funksionimin e disa komponentĂ«ve tĂ« hapĂ«sirĂ«s sĂ« pĂ«rdoruesit tĂ« ndĂ«rtuar pĂ«r OABI, prandaj mbĂ«shtetje pĂ«r NWFPE rekomandohet tĂ« ruhet deri sa nĂ« bĂ«rthamĂ« tĂ« mbetet mbĂ«shtetje pĂ«r OABI ose OABI_COMPAT.
- Highmem (pĂ«rdoret pĂ«r menaxhimin e memories nĂ« zonat pas 1 GB) â shumica e sistemeve ARM mund tĂ« funksionojnĂ« pa aktivizimin e highmem ose mund tĂ« pĂ«rdorin CONFIG_VMSPLIT_2GB pĂ«r tĂ« aksesuar dy GB tĂ« parĂ« tĂ« memories fizike. Po punohet pĂ«r organizimin e aksesit nĂ« 4 GB RAM nĂ« sistemet me LPAE (Cortex-A7/A15), pas pĂ«rfundimit tĂ« sĂ« cilĂ«s mbĂ«shtetje pĂ«r Highmem mund tĂ« hiqet.
- Sparsemem â kĂ«rkohet pĂ«r sistemet pĂ«r tĂ« cilat nevojitet highmem.
Platformat e propozuara për heqje:
- RiscPC â platforma mĂ« e vjetĂ«r e mbĂ«shtetur nĂ« bĂ«rthamĂ«. Nuk mbĂ«shtetet nĂ« GCC, qĂ« nga dega 9.x pĂ«r shkak tĂ« largimit tĂ« mbĂ«shtetjes pĂ«r ARMv3. Mantenimiento vazhdon tĂ« testojĂ« funksionimin e bĂ«rthamĂ«s nĂ« kĂ«tĂ« platformĂ«, por ndjeshĂ«m nuk ka pĂ«rdorues realĂ«, prandaj mbĂ«shtetje mund tĂ« ndĂ«rpritet nĂ« rast se humbet interesi i mirĂ«mbajtĂ«sit.
- SA1100, Footbridge â platforma tĂ« vjetra, tĂ« ruajtura vetĂ«m pĂ«r arsye nostalgjie. Praktikisht tĂ« gjitha skedarĂ«t pĂ«r pĂ«rshkrimin e bordit pĂ«r kĂ«to platforma janĂ« hequr nĂ« bĂ«rthamĂ«n 6.3, mbetet vetĂ«m mbĂ«shtetja pĂ«r pajisjet ipaq h3600, assabet, netwinder dhe ebsa285. ĂĂ«shtja e heqjes varet nga qĂ«llimet e mirĂ«mbajtĂ«sit.
- Gemini, Moxart â pĂ«rdorin CPU tĂ« bazuar nĂ« ARMv4. Ăipat janĂ« prodhuar mĂ« shumĂ« se 20 vjet mĂ« parĂ«, por mbĂ«shtetje e tyre nuk kĂ«rkon pĂ«rpjekje shtesĂ« nĂ« mirĂ«mbajtje, prandaj nuk ka kuptim t'i hiqni deri nĂ« heqjen e platformĂ«s StrongARM.
- SkedarĂ«t pĂ«r mbĂ«shtetje PXA â platforma janĂ« nĂ« njĂ« gjendje tĂ« braktisur dhe nuk janĂ« mĂ« nĂ« pĂ«rdorim, nĂ«se interesi pĂ«r ta nuk kthehet, Ă«shtĂ« planifikuar heqja e tyre nĂ« fillim tĂ« vitit 2025.
- OMAP1 â nga njĂ«ra anĂ« mbetet platforma e vetme e bazuar nĂ« ARMv4T/ARMv5 pa mbĂ«shtetje pĂ«r Device Tree dhe nuk ka asnjĂ« lĂ«vizje pĂ«r kalimin nĂ« Device Tree, por nga ana tjetĂ«r platforma ka pĂ«rdorues.
- Nspire, AT91RM9200, CLPS711X, EP93xx, iMX1 â pĂ«rdorin CPU tĂ« bazuar nĂ« ARMv4T. Po punohet pĂ«r kalimin e pĂ«rshkrimeve tĂ« bordit nĂ« Device Tree, por ka kuptim tĂ« mbĂ«shtetet vetĂ«m deri sa mbĂ«shtet ARMv5.
- OMAP24xx â platforma e vetme e bazuar nĂ« ARMv6 qĂ« ka pĂ«rdorues aktivĂ«. Ruajtja e mbĂ«shtetjes varet nga ruajtja e mbĂ«shtetjes pĂ«r CPU arm1136r0.
- iMX31 â nuk ka informacione pĂ«r praninĂ« e pĂ«rdoruesve aktivĂ«, por nuk ka kuptim tĂ« hiqet para OMAP2.
- S3C64xx (Cragganmore) â platforma e vetme pa mbĂ«shtetje pĂ«r Device Tree, e ndĂ«rtuar mbi ARMv6K. Platforma vazhdon tĂ« pĂ«rdoret pĂ«r testimin e kodekĂ«ve audio, prandaj heqja Ă«shtĂ« shtyrĂ« deri sa testimi tĂ« kalojĂ« nĂ« njĂ« bord tjetĂ«r.
- Orion5x, mv78xx0 â çështja e heqjes planifikohet tĂ« shqyrtohet nĂ« fillim tĂ« vitit tĂ« ardhshĂ«m.
- iMX35, WM8750, AST2500, BCM2835 â mbĂ«shteten mirĂ« dhe kanĂ« pĂ«rdorues aktivĂ«, prandaj nuk planifikohet heqja pĂ«r momentin.
- stm32f4/f7/h7 â mikrokontrollerĂ« pa MMU, mirĂ«mbajtja nĂ« bĂ«rthamĂ« vazhdon dhe ka pĂ«rdorues aktivĂ«. ĂĂ«shtja e heqjes planifikohet tĂ« shqyrtohet nĂ« vitin 2026.
Burimi: opennet.ru
