Linux kernel 5.13 သည် Apple M1 CPU များအတွက် ကနဦး ပံ့ပိုးမှု ရှိသည်။

Hector Martin သည် Apple M1 ARM ချစ်ပ်ဖြင့် တပ်ဆင်ထားသော Mac ကွန်ပျူတာများအတွက် Linux ပရိုဂျက်တာမှ ပြင်ဆင်သည့် Asahi Linux ပရောဂျက်မှ ပြင်ဆင်သည့် ပထမဆုံး ဖာထေးမှုအစုံကို Linux kernel တွင် ထည့်သွင်းရန် အဆိုပြုခဲ့သည်။ ဤ ဖာထေးမှုများကို Linux SoC ဌာနခွဲ၏ ထိန်းသိမ်းသူမှ အတည်ပြုပြီးဖြစ်ကာ 5.13 kernel ၏ လုပ်ဆောင်နိုင်စွမ်းကို ဖွဲ့စည်းထားသည့် အခြေခံဖြင့် Linux-နောက်တစ်ခု codebase သို့ လက်ခံခဲ့သည်။ နည်းပညာအရ၊ Linus Torvalds သည် အဆိုပြုထားသော အပြောင်းအလဲများကို ပေးပို့ခြင်းကို ပိတ်ဆို့ထားနိုင်သော်လည်း ထိုသို့သော ဖွံ့ဖြိုးတိုးတက်မှုသည် မဖြစ်နိုင်ဟု ယူဆပါသည်။

ဖာထေးမှုများတွင် ကြားဖြတ်ထိန်းချုပ်ကိရိယာ၊ အချိန်တိုင်းကိရိယာ၊ UART၊ SMP၊ I/O လုပ်ဆောင်ချက်များနှင့် MMIO ကဲ့သို့သော M1 SoC ၏ GPU မဟုတ်သော အစိတ်အပိုင်းများအတွက် ပံ့ပိုးမှု ပါဝင်သည်။ GPU reverse engineering သည် မပြီးပြတ်သေးပါ၊ ဖာထေးမှုများသည် အထွက်အတွက် framebuffer နှင့် serial console တို့ကို ပံ့ပိုးပေးပါသည်။ စက်ပစ္စည်းများသည် Asahi Linux ပရောဂျက်တွင် ကိုးကားသည့်ပလပ်ဖောင်းတစ်ခုအဖြစ် အသုံးပြုသည့် Apple Mac mini ကွန်ပျူတာကို ပံ့ပိုးပေးရန် တောင်းဆိုသည် (အသေးစိတ်တပ်ဆင်မှုလမ်းညွှန်ချက်များကို ရနိုင်သည်)။

သီးခြားအနေဖြင့်၊ အဖွင့်ဟာ့ဒ်ဝဲလ်အဒက်တာတစ်ခုကို ကွန်ဆိုးလ်သို့ ရိုးရှင်းသောချိတ်ဆက်မှုနှင့် အမှားရှာပြင်ခြင်းမှတစ်ဆင့် ချိတ်ဆက်မှုအဖြစ် အသိအမှတ်ပြုထားသည့် အဖွင့်ဟတ်ဝဲအဒက်တာတစ်ခုကို တီထွင်လျက်ရှိသည်။ ၎င်း၏လက်ရှိပုံစံတွင်၊ Apple ၏စက်ပစ္စည်းများတွင် စံမဟုတ်သော USB-PD ညွှန်ကြားချက်များကို အသုံးပြုခြင်းကြောင့် console ကိုဝင်ရောက်ရန် အလွယ်ကူဆုံးနည်းလမ်းမှာ USB C ကြိုးကို အသုံးပြု၍ Apple M1 ချစ်ပ်ပေါ်အခြေခံ၍ အခြားကွန်ပျူတာသို့ ချိတ်ဆက်ခြင်းဖြစ်သည်။ ပိုမိုရှုပ်ထွေးသောနည်းလမ်းဖြစ်သည်။ Arduino microcontroller၊ FUSB30 ချစ်ပ်နှင့် UART-TTL အဒက်တာအပေါ်အခြေခံသည့် decoupler တစ်ခုဖန်တီးရန်ဖြစ်သည်။

ပရောဂျက်သည် Apple M1 CPU ဖြင့် Mac ကွန်ပျူတာများတွင် Linux kernel နှင့် အနည်းငယ်မျှသာသော စနစ်ပတ်ဝန်းကျင်ကို တင်နိုင်စေသည့် m1n1 bootloader ကို ပြင်ဆင်ထားသည်။ M1 CPU ရှိသော ကွန်ပျူတာများတွင် Apple သည် Jailbreak ပြုလုပ်ရန်မလိုအပ်ဘဲ ဒစ်ဂျစ်တယ်စနစ်ဖြင့် လက်မှတ်မထိုးထားသော kernel များကို ပုံမှန်အားဖြင့် ဖွင့်ခွင့်ပြုသည်။ ဤအင်္ဂါရပ်သည် developer များအား XNU kernels အသစ်များနှင့် စမ်းသပ်နိုင်စေသော်လည်း Apple သည် ၎င်း၏ကိုယ်ပိုင် boot protocol နှင့် မတူညီသော Device Tree ဖော်မတ်ကို အသုံးပြုထားသောကြောင့် အခြားစနစ်များကို boot လုပ်ရာတွင် အခက်အခဲများ ဖြစ်ပေါ်လာပါသည်။ Asahi Linux ပရောဂျက်မှ အဆိုပြုထားသော m1n1 bootloader သည် စံ Device Tree နှင့် ARM64 အတွက် Linux kernel တွင် အသုံးပြုထားသော standard boot protocol ကို အသုံးပြုရန် အလွှာတစ်ခုအနေဖြင့် လုပ်ဆောင်သည်။ အနာဂတ်တွင်၊ m1n1 သည် အခြား ARM64 ပလပ်ဖောင်းများတွင် အသုံးပြုသည့် ပုံမှန် Boot လုပ်ငန်းစဉ်ကို စုစည်းရန် U-Boot နှင့် GRUB တို့ကို ခေါ်ဆိုနိုင်သည့် စွမ်းရည်ကို ထည့်သွင်းရန် စီစဉ်ထားသည်။

source: opennet.ru

မှတ်ချက် Add