MacBook Pro 2018 T2 ArchLinux-เดจเตŠเดชเตเดชเด‚ เดชเตเดฐเดตเตผเดคเตเดคเดฟเด•เตเด•เตเดจเตเดจเต (เดกเตเดฏเตเดตเตฝเดฌเต‚เดŸเตเดŸเต)

เดชเตเดคเดฟเดฏ T2 เดšเดฟเดชเตเดชเต เด’เดฐเต เดŸเดšเตเดšเตเดฌเดพเตผ เด‰เดณเตเดณ เดชเตเดคเดฟเดฏ 2018 เดฎเดพเด•เตเดฌเตเด•เตเด•เตเด•เดณเดฟเตฝ Linux เด‡เตปเดธเตเดฑเตเดฑเดพเตพ เดšเต†เดฏเตเดฏเตเดจเตเดจเดคเต เด…เดธเดพเดงเตเดฏเดฎเดพเด•เตเด•เตเดฎเต†เดจเตเดจ เดตเดธเตเดคเตเดคเดฏเต†เด•เตเด•เตเดฑเดฟเดšเตเดšเต เด•เตเดฑเดšเตเดšเต เดนเตˆเดชเตเดชเต เด‰เดฃเตเดŸเต. เดธเดฎเดฏเด‚ เด•เดŸเดจเตเดจเตเดชเต‹เดฏเดฟ, 2019 เด…เดตเดธเดพเดจเดคเตเดคเต‹เดŸเต†, เดฎเต‚เดจเตเดจเดพเด‚ เด•เด•เตเดทเดฟ เดกเต†เดตเดฒเดชเตเดชเตผเดฎเดพเตผ T2 เดšเดฟเดชเตเดชเตเดฎเดพเดฏเตเดณเตเดณ เด†เดถเดฏเดตเดฟเดจเดฟเดฎเดฏเดคเตเดคเดฟเดจเดพเดฏเดฟ เดจเดฟเดฐเดตเดงเดฟ เดกเตเดฐเตˆเดตเดฑเตเด•เดณเตเด‚ เด•เต‡เตผเดฃเตฝ เดชเดพเดšเตเดšเตเด•เดณเตเด‚ เดจเดŸเดชเตเดชเดฟเดฒเดพเด•เตเด•เดฟ. MacBook เดฎเต‹เดกเดฒเตเด•เตพ 2018-เดจเตเดฑเต† เดชเตเดฐเดงเดพเดจ เดกเตเดฐเตˆเดตเตผ เดตเดฟเดŽเดšเตเดšเตเดธเดฟเด เด“เดชเตเดชเดฑเต‡เดทเตป (เดŸเดšเตเดšเต/เด•เต€เดฌเต‹เตผเดกเต/เดคเตเดŸเด™เตเด™เดฟเดฏเดต), เด…เดคเตเดชเต‹เดฒเต† เดถเดฌเตเดฆ เดชเตเดฐเดตเตผเดคเตเดคเดจเดตเตเด‚.

เดชเดฆเตเดงเดคเดฟ mbp2018-bridge-drv 3 เดชเตเดฐเดงเดพเดจ เด˜เดŸเด•เด™เตเด™เดณเดพเดฏเดฟ เดคเดฟเดฐเดฟเดšเตเดšเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจเต:

  • BCE (เดฌเดซเตผ เด•เต‹เดชเตเดชเดฟ เดŽเดžเตเดšเดฟเตป) - T2 เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เดชเตเดฐเดงเดพเดจ เด†เดถเดฏเดตเดฟเดจเดฟเดฎเดฏ เดšเดพเดจเตฝ เดธเตเดฅเดพเดชเดฟเด•เตเด•เตเดจเตเดจเต. VHCI, เด“เดกเดฟเดฏเต‹ เดŽเดจเตเดจเดฟเดตเดฏเตเด•เตเด•เต เดˆ เด˜เดŸเด•เด‚ เด†เดตเดถเตเดฏเดฎเดพเดฃเต.
  • VHCI เด’เดฐเต USB เดตเต†เตผเดšเตเดตเตฝ เดนเต‹เดธเตเดฑเตเดฑเต เด•เตบเดŸเตเดฐเต‹เดณเดฑเดพเดฃเต; เด•เต€เดฌเต‹เตผเดกเต, เดฎเต—เดธเต, เดฎเดฑเตเดฑเต เดธเดฟเดธเตเดฑเตเดฑเด‚ เด˜เดŸเด•เด™เตเด™เตพ เดŽเดจเตเดจเดฟเดต เดˆ เด˜เดŸเด•เดฎเดพเดฃเต เดจเตฝเด•เตเดจเตเดจเดคเต (เด•เต‚เดŸเตเดคเตฝ เดชเตเดฐเดตเตผเดคเตเดคเดจเด•เตเดทเดฎเดค เดจเตฝเด•เดพเตป เดฎเดฑเตเดฑเต เดกเตเดฐเตˆเดตเตผเดฎเดพเตผ เดˆ เดนเต‹เดธเตเดฑเตเดฑเต เด•เตบเดŸเตเดฐเต‹เดณเตผ เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเดจเตเดจเต.
  • T2 เด“เดกเดฟเดฏเต‹ เด‡เดจเตเดฑเตผเดซเต‡เดธเดฟเดจเตเดณเตเดณ เด“เดกเดฟเดฏเต‹ - เดกเตเดฐเตˆเดตเตผ, เดจเดฟเดฒเดตเดฟเตฝ เดฎเดพเด•เตเดฌเตเด•เตเด•เดฟเดจเตเดฑเต† เดฌเดฟเตฝเดฑเตเดฑเต-เด‡เตป เดธเตเดชเต€เด•เตเด•เดฑเตเด•เดณเดฟเดฒเต‚เดŸเต† เดฎเดพเดคเตเดฐเดฎเต‡ เด“เดกเดฟเดฏเต‹ เด”เดŸเตเดŸเตเดชเตเดŸเตเดŸเดฟเดจเต† เดชเดฟเดจเตเดคเตเดฃเดฏเตเด•เตเด•เต‚


เดฐเดฃเตเดŸเดพเดฎเดคเตเดคเต† เดชเตเดฐเต‹เดœเด•เตเดฑเตเดฑเต เดŽเดจเตเดจเต เดตเดฟเดณเดฟเด•เตเด•เตเดจเตเดจเต macbook12-spi-driver, เด•เต‚เดŸเดพเดคเต† 2016 เด…เดตเดธเดพเดจเดคเตเดคเดฟเดฒเตเด‚ เดชเดฟเดจเตเดจเต€เดŸเตเดณเตเดณ MacBook Pros-เดจเตเด‚ เด•เต€เดฌเต‹เตผเดกเต, SPI เดŸเตเดฐเดพเด•เตเด•เตเดชเดพเดกเต, เดŸเดšเตเดšเตเดฌเดพเตผ เดŽเดจเตเดจเดฟเดตเดฏเตโ€Œเด•เตเด•เดพเดฏเดฟ เด’เดฐเต เด‡เตปเดชเตเดŸเตเดŸเต เดกเตเดฐเตˆเดตเตผ เดชเตเดฐเดตเตผเดคเตเดคเดฟเดชเตเดชเดฟเด•เตเด•เดพเดจเตเดณเตเดณ เด•เดดเดฟเดตเต เด‡เดคเต เดจเดŸเดชเตเดชเดฟเดฒเดพเด•เตเด•เตเดจเตเดจเต. เดšเดฟเดฒ เด•เต€เดฌเต‹เตผเดกเต/เดŸเตเดฐเดพเด•เตเด•เตเดชเดพเดกเต เดกเตเดฐเตˆเดตเดฑเตเด•เตพ เด‡เดชเตเดชเต‹เตพ เด•เต‡เตผเดฃเดฒเดฟเตฝ เด‰เตพเดชเตเดชเต†เดŸเตเดคเตเดคเดฟเดฏเดฟเดŸเตเดŸเตเดฃเตเดŸเต, เดชเดคเดฟเดชเตเดชเต 5.3 เดฎเตเดคเตฝ เด†เดฐเด‚เดญเดฟเด•เตเด•เตเดจเตเดจเต.

เดตเตˆ-เดซเตˆ, เดŸเดšเตเดšเตเดชเดพเดกเต เดคเตเดŸเด™เตเด™เดฟเดฏ เด‰เดชเด•เดฐเดฃเด™เตเด™เตพเด•เตเด•เตเดณเตเดณ เดชเดฟเดจเตเดคเตเดฃเดฏเตเด‚ เด•เต‡เตผเดฃเตฝ เดชเดพเดšเตเดšเตเด•เตพ เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เดจเดŸเดชเตเดชเดฟเดฒเดพเด•เตเด•เดฟ. เดจเดฟเดฒเดตเดฟเดฒเต† เด•เต‡เตผเดฃเตฝ เดชเดคเดฟเดชเตเดชเต 5.3.5-1

เด‡เดชเตเดชเต‹เตพ เดŽเดจเตเดคเดพเดฃเต เดชเตเดฐเดตเตผเดคเตเดคเดฟเด•เตเด•เตเดจเตเดจเดคเต

  1. NVMe
  2. เด•เต€เดฌเต‹เตผเดกเต
  3. USB-C (เดคเดฃเตเดŸเตผเดฌเต‹เตพเดŸเตเดŸเต เดชเดฐเต€เด•เตเดทเดฟเดšเตเดšเดฟเดŸเตเดŸเดฟเดฒเตเดฒ; เดฎเตŠเดกเตเดฏเต‚เตพ เดธเตเดตเดฏเดฎเต‡เดต เดฒเต‹เดกเต เดšเต†เดฏเตเดฏเตเดฎเตเดชเต‹เตพ, เด…เดคเต เดธเดฟเดธเตเดฑเตเดฑเดคเตเดคเต† เดฎเดฐเดตเดฟเดชเตเดชเดฟเด•เตเด•เตเดจเตเดจเต)
  4. เดŸเดšเตเดšเตเดฌเดพเตผ (Fn เด•เต€เด•เตพ, เดฌเดพเด•เตเด•เตเดฒเตˆเดฑเตเดฑเต, ESC เดฎเตเดคเดฒเดพเดฏเดต เด“เดฃเดพเด•เตเด•เดพเดจเตเดณเตเดณ เด•เดดเดฟเดตเต‹เดŸเต†)
  5. เดถเดฌเตเดฆเด‚ (เดฌเดฟเตฝเดฑเตเดฑเต-เด‡เตป เดธเตเดชเต€เด•เตเด•เดฑเตเด•เตพ เดฎเดพเดคเตเดฐเด‚)
  6. Wi-Fi เดฎเตŠเดกเตเดฏเต‚เตพ (brcmfmac เดตเดดเดฟเดฏเตเด‚ iw เดตเดดเดฟ เดฎเดพเดคเตเดฐเด‚)
  7. USB-C เดตเดดเดฟเดฏเตเดณเตเดณ เดกเดฟเดธเตเดชเตเดฒเต‡ เดชเต‹เตผเดŸเตเดŸเต
  8. เดธเต†เตปเดธเดฑเตเด•เตพ
  9. เดคเดพเตฝเด•เตเด•เดพเดฒเดฟเด•เดฎเดพเดฏเดฟ เดจเดฟเตผเดคเตเดคเตเด•/เดชเตเดจเดฐเดพเดฐเด‚เดญเดฟเด•เตเด•เตเด• (เดญเดพเด—เดฟเด•เดฎเดพเดฏเดฟ)
  10. เดฎเตเดคเดฒเดพเดฏเดต

เดˆ เดŸเตเดฏเต‚เดŸเตเดŸเต‹เดฑเดฟเดฏเตฝ macbookpro15,1, macbookpro15,2 เดŽเดจเตเดจเดฟเดตเดฏเตเด•เตเด•เต เดฌเดพเดงเด•เดฎเดพเดฃเต. เด‡เด‚เด—เตเดฒเต€เดทเดฟเดฒเตเดณเตเดณ เด—เดฟเดคเตเดคเดฌเดฟเตฝ เดจเดฟเดจเตเดจเดพเดฃเต เดฒเต‡เด–เดจเด‚ เดŽเดŸเตเดคเตเดคเดคเต. เด‡เดตเดฟเดŸเต† เดจเดฟเดจเตเดจเต. เดˆ เดฒเต‡เด–เดจเดคเตเดคเดฟเดฒเต† เดŽเดฒเตเดฒเดพเด‚ เดชเตเดฐเดตเตผเดคเตเดคเดฟเด•เตเด•เตเดจเตเดจเดฟเดฒเตเดฒ, เด…เดคเดฟเดจเดพเตฝ เดŽเดจเดฟเด•เตเด•เต เดธเตเดตเดฏเด‚ เด’เดฐเต เดชเดฐเดฟเดนเดพเดฐเด‚ เด•เดฃเตเดŸเต†เดคเตเดคเต‡เดฃเตเดŸเดฟ เดตเดจเตเดจเต.

เดจเดฟเด™เตเด™เตพ เด‡เตปเดธเตเดฑเตเดฑเดพเตพ เดšเต†เดฏเตเดฏเต‡เดฃเตเดŸเดคเต

  • USB-C เดกเต‹เด•เตเด•เดฟเด‚เด—เต เด…เดกเดพเดชเตเดฑเตเดฑเตผ USB-เดฒเต‡เด•เตเด•เต (เด’เดฐเต เดฎเต—เดธเต, เด•เต€เดฌเต‹เตผเดกเต, USB เดฎเต‹เดกเด‚ เด…เดฒเตเดฒเต†เด™เตเด•เดฟเตฝ เดซเต‹เตบ เดŸเต†เดคเดฑเดฟเด‚เด—เต เดฎเต‹เดกเดฟเตฝ เดฌเดจเตเดงเดฟเดชเตเดชเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเต เด•เตเดฑเดžเตเดžเดคเต เดฎเต‚เดจเตเดจเต USB เด‡เตปเดชเตเดŸเตเดŸเตเด•เดณเต†เด™เตเด•เดฟเดฒเตเด‚). เด‡เตปเดธเตเดฑเตเดฑเดพเดณเต‡เดทเดจเตเดฑเต† เด†เดฆเตเดฏ เด˜เดŸเตเดŸเด™เตเด™เดณเดฟเตฝ เดฎเดพเดคเตเดฐเดฎเต‡ เด‡เดคเต เด†เดตเดถเตเดฏเดฎเตเดณเตเดณเต‚
  • USB เด•เต€เดฌเต‹เตผเดกเต
  • USB/USB-C เดซเตเดฒเดพเดทเต เดกเตเดฐเตˆเดตเต เด•เตเดฑเดžเตเดžเดคเต 4GB

1. เดฌเดพเดนเตเดฏ เดฎเต€เดกเดฟเดฏเดฏเดฟเตฝ เดจเดฟเดจเตเดจเต เดฌเต‚เดŸเตเดŸเต เดšเต†เดฏเตเดฏเตเดจเตเดจเดคเดฟเดจเตเดณเตเดณ เดจเดฟเดฐเต‹เดงเดจเด‚ เดชเตเดฐเดตเตผเดคเตเดคเดจเดฐเดนเดฟเดคเดฎเดพเด•เตเด•เตเด•

https://support.apple.com/en-us/HT208330
https://www.ninjastik.com/support/2018-macbook-pro-boot-from-usb/

2. เดกเดฟเดธเตเด•เต เดฏเต‚เดŸเตเดŸเดฟเดฒเดฟเดฑเตเดฑเดฟ เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เดธเตเดตเดคเดจเตเดคเตเดฐ เดธเตเดฅเดฒเด‚ เด…เดจเตเดตเดฆเดฟเด•เตเด•เตเด•

เดธเต—เด•เดฐเตเดฏเดพเตผเดคเตเดฅเด‚, เดžเดพเตป เด‰เดŸเตป เดคเดจเตเดจเต† เดกเดฟเดธเตเด•เดฟเดฒเต‡เด•เตเด•เต 30GB เด…เดจเตเดตเดฆเดฟเดšเตเดšเต, เดกเดฟเดธเตเด•เต เดฏเต‚เดŸเตเดŸเดฟเดฒเดฟเดฑเตเดฑเดฟเดฏเดฟเตฝ เดคเดจเตเดจเต† เด…เดคเต เดŽเด•เตเดธเตเดซเดพเดฑเตเดฑเดฟเตฝ เดซเต‹เตผเดฎเดพเดฑเตเดฑเต เดšเต†เดฏเตเดคเต. เด’เดฐเต เดซเดฟเดธเดฟเด•เตเด•เตฝ เดกเดฟเดธเตเด•เต เดกเดฟเดธเตเด•เต เดฏเต‚เดŸเตเดŸเดฟเดฒเดฟเดฑเตเดฑเดฟ เดชเดพเตผเดŸเตเดŸเต€เดทเตป เดšเต†เดฏเตเดฏเตเดจเตเดจเต.

3. เด’เดฐเต ISO เด‡เดฎเต‡เดœเต เด‰เดฃเตเดŸเดพเด•เตเด•เตเด•

เด“เดชเตเดทเดจเตเด•เตพ:

  1. เดจเดฟเด™เตเด™เตพเด•เตเด•เต เดฒเดณเดฟเดคเดฎเดพเดฏ เดฑเต‚เดŸเตเดŸเดฟเตฝ เดชเต‹เดฏเดฟ เด•เต‡เตผเดฃเตฝ 5.3.5-1 เด‰เด‚ เดชเดพเดšเตเดšเตเด•เดณเตเด‚ เด‰เดณเตเดณ เด’เดฐเต เดฑเต†เดกเดฟเดฎเต†เดฏเตเดกเต เด‡เดฎเต‡เดœเต เดกเต—เตบเดฒเต‹เดกเต เดšเต†เดฏเตเดฏเดพเด‚. เด”เดจเดพเดฒเดฟ1 เดชเต‚เตผเดคเตเดคเดฟเดฏเดพเดฏ เดšเดฟเดคเตเดฐเดคเตเดคเดฟเดฒเต‡เด•เตเด•เตเดณเตเดณ เดฒเดฟเด™เตเด•เต
  2. archlive เดตเดดเดฟ เดธเตเดตเดฏเด‚ เด’เดฐเต เดšเดฟเดคเตเดฐเด‚ เดธเตƒเดทเตโ€ŒเดŸเดฟเด•เตเด•เตเด• (เด†เตผเดšเตเดš เดตเดฟเดคเดฐเดฃเดฎเตเดณเตเดณ เด’เดฐเต เดธเดฟเดธเตเดฑเตเดฑเด‚ เด†เดตเดถเตเดฏเดฎเดพเดฃเต)

    เด‡เตปเดธเตเดฑเตเดฑเดพเตพ เดšเต†เดฏเตเดฏเตเด• เด†เตผเด•เตเด•เดฟเดธเต‹

    pacman -S archiso

    
    cp -r /usr/share/archiso/configs/releng/ archlive
    cd archlive
    

    pacman.conf เดฒเต‡เด•เตเด•เต เดถเต‡เด–เดฐเด‚ เดšเต‡เตผเด•เตเด•เตเด•:

    
    [mbp]
    Server = https://packages.aunali1.com/archlinux/$repo/$arch
    

    pacman.conf-เดฒเต† เดฏเดฅเดพเตผเดคเตเดฅ เด•เต‡เตผเดฃเตฝ เดžเด™เตเด™เตพ เด…เดตเด—เดฃเดฟเด•เตเด•เตเดจเตเดจเต:

    IgnorePkg   = linux linux-headers
    

    เด†เดตเดถเตเดฏเดฎเดพเดฏ เดชเดพเด•เตเด•เต‡เดœเตเด•เตพ เดšเต‡เตผเด•เตเด•เตเด•, เด…เดตเดธเดพเดจเด‚ linux-mbp เด•เต‡เตผเดฃเดฒเตเด‚ linux-mbp-เดนเต†เดกเดฑเตเด•เดณเตเด‚ เดšเต‡เตผเด•เตเด•เตเด•

    ...
    wvdial
    xl2tpd
    linux-mbp
    linux-mbp-headers
    

    เด‡เดจเตเดฑเดฑเดพเด•เตเดŸเต€เดตเต เดฎเต‹เดกเดฟเตฝ เดชเตเดฐเดตเตผเดคเตเดคเดฟเด•เตเด•เดพเตป เดžเด™เตเด™เตพ เดธเตโ€Œเด•เตเดฐเดฟเดชเตเดฑเตเดฑเต เดฎเดพเดฑเตเดฑเตเดจเตเดจเต (pacstrap -C เดฎเดพเดฑเตเดฑเดฟ เดชเดพเด•เตโ€Œเดธเตโ€ŒเดŸเตเดฐเดพเดชเตเดชเต -i -C เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต):

    sudo nano /usr/bin/mkarchiso

    # Install desired packages to airootfs
    _pacman ()
    {
        _msg_info "Installing packages to '${work_dir}/airootfs/'..."
    
        if [[ "${quiet}" = "y" ]]; then
            pacstrap -i -C "${pacman_conf}" -c -G -M "${work_dir}/airootfs" $* &> /dev/null
        else
            pacstrap -i -C "${pacman_conf}" -c -G -M "${work_dir}/airootfs" $*
        fi
    
        _msg_info "Packages installed successfully!"
    }

    เด’เดฐเต เดšเดฟเดคเตเดฐเด‚ เดฐเต‚เดชเดชเตเดชเต†เดŸเตเดคเตเดคเตเดจเตเดจเต:

    sudo ./build.sh -v

    เด…เดตเด—เดฃเดฟเด•เตเด•เดชเตเดชเต†เดŸเตเดŸ เดชเดพเด•เตเด•เต‡เดœเตเด•เตพ เด’เดดเดฟเดตเดพเด•เตเด•เดพเตป Y เด…เดฎเตผเดคเตเดคเตเด•, เดคเตเดŸเตผเดจเตเดจเต usb เดซเตเดฒเดพเดทเต เดกเตเดฐเตˆเดตเดฟเดฒเต‡เด•เตเด•เต iso เด‡เดฎเต‡เดœเต เดŽเดดเตเดคเตเด•:

    sudo dd if=out/archlinux*.iso of=/dev/sdb bs=1M

4. เด†เดฆเตเดฏ เดฌเต‚เดŸเตเดŸเต

เดซเตเดฒเดพเดทเต เดกเตเดฐเตˆเดตเต, เด•เต€เดฌเต‹เตผเดกเต เดŽเดจเตเดจเดฟเดต เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เดฑเต€เดฌเต‚เดŸเตเดŸเต เดšเต†เดฏเตเดฏเตเด•. เด†เดชเตเดชเดฟเตพ เดฆเตƒเดถเตเดฏเดฎเดพเด•เตเดฎเตเดชเต‹เตพ เด“เดชเตเดทเดจเตเด•เตพ เด…เดฎเตผเดคเตเดคเตเด•, EFI BOOT เดคเดฟเดฐเดžเตเดžเต†เดŸเตเด•เตเด•เตเด•.

เด…เดŸเตเดคเตเดคเดคเดพเดฏเดฟ, เดจเดฟเด™เตเด™เตพ "e" เด•เต€ เด…เดฎเตผเดคเตเดคเดฟ เด•เดฎเดพเตปเดกเต เดฒเตˆเดจเดฟเดจเตเดฑเต† เด…เดตเดธเดพเดจเด‚ เดจเตฝเด•เต‡เดฃเตเดŸเดคเตเดฃเตเดŸเต module_blacklist = เด‡เดŸเดฟเดฎเดฟเดจเตเดจเตฝ. เด‡เดคเต เดšเต†เดฏเตเดคเดฟเดฒเตเดฒเต†เด™เตเด•เดฟเตฝ, เดธเดฟเดธเตเดฑเตเดฑเด‚ เดฌเต‚เดŸเตเดŸเต เดšเต†เดฏเตเดคเต‡เด•เตเด•เดฟเดฒเตเดฒ, เด’เดฐเต เดคเดฃเตเดŸเตผเดฌเต‹เตพเดŸเตเดŸเต ICM เดชเดฟเดถเด•เต เดฆเตƒเดถเตเดฏเดฎเดพเด•เตเด‚.

fdisk/cfdisk เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เดจเดฎเตเดฎเตพ เดจเดฎเตเดฎเตเดŸเต† เดชเดพเตผเดŸเตเดŸเต€เดทเตป เด•เดฃเตเดŸเต†เดคเตเดคเตเดจเตเดจเต (เดŽเดจเดฟเด•เตเด•เต เด‡เดคเต nvme0n1p4 เด†เดฃเต), เด…เดคเต เดซเต‹เตผเดฎเดพเดฑเตเดฑเต เดšเต†เดฏเตเดคเต เด†เตผเด•เตเด•เตˆเดตเต เด‡เตปเดธเตเดฑเตเดฑเดพเตพ เดšเต†เดฏเตเดฏเตเด•. เดจเดฟเด™เตเด™เตพเด•เตเด•เต เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เดพเด‚ เด”เดฆเตเดฏเต‹เด—เดฟเด• เดจเดฟเตผเดฆเตเดฆเต‡เดถเด™เตเด™เตพ เด…เดฅเดตเดพ เดตเดถเดคเตเดคเต‡เด•เตเด•เต.

เดžเด™เตเด™เตพ เด’เดฐเต เดฌเต‚เดŸเตเดŸเต เดชเดพเตผเดŸเตเดŸเต€เดทเตป เด‰เดฃเตเดŸเดพเด•เตเด•เตเดจเตเดจเดฟเดฒเตเดฒ; เดžเด™เตเด™เตพ เดฌเต‚เดŸเตเดŸเตเดฒเต‹เดกเตผ เดŽเดดเตเดคเตเด‚ /dev/nvme0n1p1
/mnt-เดฒเต† เดชเดฐเดฟเดธเตเดฅเดฟเดคเดฟ เดชเต‚เตผเดฃเตเดฃเดฎเดพเดฏเดฟ เดฐเต‚เดชเดชเตเดชเต†เดŸเตเดŸเดคเดฟเดจเตเดถเต‡เดทเด‚, arch-chroot-เดฒเต‡เด•เตเด•เต เดจเต€เด™เตเด™เตเดจเตเดจเดคเดฟเดจเต เดฎเตเดฎเตเดชเต, เดŽเดดเตเดคเตเด•:

mount /dev/nvme0n1p1 /mnt/boot
arch-chroot /mnt /bin/bash

/etc/pacman.conf เดŽเดจเตเดจเดคเดฟเดฒเต‡เด•เตเด•เต เดšเต‡เตผเด•เตเด•เตเด•:


[mbp]
Server = https://packages.aunali1.com/archlinux/$repo/$arch

เด•เต‡เตผเดฃเตฝ เด‡เตปเดธเตเดฑเตเดฑเดพเตพ เดšเต†เดฏเตเดฏเตเด•:


sudo pacman -S linux-mbp linux-mbp-headers
sudo mkinitcpio -p linux-mbp

เดžเด™เตเด™เตพ /etc/modprobe.d/blacklist.conf เดŽเดจเตเดจเดคเดฟเตฝ เดคเดฃเตเดŸเตผเดฌเต‹เตพเดŸเตเดŸเตเด‚ applesmc เด‰เด‚ เดฐเดœเดฟเดธเตเดฑเตเดฑเตผ เดšเต†เดฏเตเดฏเตเดจเตเดจเต

blacklist thunderbolt
blacklist applesmc

เด•เต€เดฌเต‹เตผเดกเต, เดŸเดšเตเดšเตเดฌเดพเตผ เดฎเตเดคเดฒเดพเดฏเดต

Yay เด‡เตปเดธเตเดฑเตเดฑเดพเตพ เดšเต†เดฏเตเดฏเตเด•:


sudo pacman -S git gcc make fakeroot binutils
git clone https://aur.archlinux.org/yay.git
cd yay
makepkg -si

เดŸเดšเตเดšเตเดฌเดพเตผ เดชเตเดฐเดตเตผเดคเตเดคเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเต เดฎเตŠเดกเตเดฏเต‚เดณเตเด•เตพ เด‡เตปเดธเตเดฑเตเดฑเดพเตพ เดšเต†เดฏเตเดฏเตเดจเตเดจเต:


git clone --branch mbp15 https://github.com/roadrunner2/macbook12-spi-driver.git
cd macbook12-spi-driver
make install

เดธเตเดฑเตเดฑเดพเตผเดŸเตเดŸเดชเตเดชเดฟเดฒเต‡เด•เตเด•เต เดฎเตŠเดกเตเดฏเต‚เดณเตเด•เตพ เดšเต‡เตผเด•เตเด•เตเด•: /etc/modules-load.d/apple.conf

industrialio_triggered_buffer
apple-ibridge
apple-ib-tb
apple-ib-als

เด•เต€เดฌเต‹เตผเดกเดฟเดจเดพเดฏเดฟ เด•เต‡เตผเดฃเตฝ เดฎเตŠเดกเตเดฏเต‚เดณเตเด•เตพ เด‡เตปเดธเตเดฑเตเดฑเดพเตพ เดšเต†เดฏเตเดฏเตเดจเตเดจเต. เดถเต‡เด–เดฐเดคเตเดคเดฟเตฝ เดตเดพเตผเดทเดฟเด•เด‚1 เด’เดฐเต เดฑเต†เดกเดฟเดฎเต†เดฏเตเดกเต เดชเดพเด•เตเด•เต‡เดœเต เด‰เดฃเตเดŸเต, เด…เดคเดฟเดจเต† เดตเดฟเดณเดฟเด•เตเด•เตเดจเตเดจเต apple-bce-dkms-git. เด‡เดคเต เด‡เตปเดธเตเดฑเตเดฑเดพเตพ เดšเต†เดฏเตเดฏเดพเตป, เด•เตบเดธเต‹เดณเดฟเตฝ เดŽเดดเตเดคเตเด•:

pacman -S apple-bce-dkms-git

เดˆ เดธเดพเดนเดšเดฐเตเดฏเดคเตเดคเดฟเตฝ, เด•เต‡เตผเดฃเตฝ เดฎเตŠเดกเตเดฏเต‚เตพ เดตเดฟเดณเดฟเด•เตเด•เดชเตเดชเต†เดŸเตเด‚ เด†เดชเตเดชเดฟเตพ-เด•เตเดฐเดฟ.เดฎเต. เดธเตเดตเดฏเด‚ เด…เดธเด‚เดฌเตเดฒเดฟเดฏเตเดŸเต† เด•เดพเดฐเตเดฏเดคเตเดคเดฟเตฝ, เด…เดคเดฟเดจเต† เดตเดฟเดณเดฟเด•เตเด•เตเดจเตเดจเต เดฌเดฟเดธเดฟ. เด…เดคเดจเตเดธเดฐเดฟเดšเตเดšเต, mkinicpio.conf เดซเดฏเดฒเดฟเดจเตเดฑเต† MODULES เดตเดฟเดญเดพเด—เดคเตเดคเดฟเตฝ เดจเดฟเด™เตเด™เตพเด•เตเด•เต เด’เดฐเต เดฎเตŠเดกเตเดฏเต‚เตพ เดฐเดœเดฟเดธเตเดฑเตเดฑเตผ เดšเต†เดฏเตเดฏเดฃเดฎเต†เด™เตเด•เดฟเตฝ, เดจเดฟเด™เตเด™เตพ เด‡เตปเดธเตเดฑเตเดฑเดพเตพ เดšเต†เดฏเตเดค เดฎเตŠเดกเตเดฏเต‚เตพ เดฎเดฑเด•เตเด•เดฐเตเดคเต.

เดฎเดพเดจเตเดตเตฝ เด…เดธเด‚เดฌเตเดฒเดฟ:


git clone https://github.com/MCMrARM/mbp2018-bridge-drv.git
cd mbp2018-bridge-drv
make
cp bce.ko /usr/lib/modules/extramodules-mbp/bce.ko

เดธเตเดฑเตเดฑเดพเตผเดŸเตเดŸเดชเตเดชเดฟเดฒเต‡เด•เตเด•เต bce เด…เดฒเตเดฒเต†เด™เตเด•เดฟเตฝ apple-bce เดฎเตŠเดกเตเดฏเต‚เตพ เดšเต‡เตผเด•เตเด•เตเด•: /etc/modules-load.d/bce.conf

bce

เดจเดฟเด™เตเด™เตพเด•เตเด•เต เดธเตเดฅเดฟเดฐเดธเตเดฅเดฟเดคเดฟเดฏเดพเดฏเดฟ Fn เดฌเดŸเตเดŸเดฃเตเด•เตพ เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เดฃเดฎเต†เด™เตเด•เดฟเตฝ, /etc/modprobe.d/apple-tb.conf เดซเดฏเดฒเดฟเตฝ เดŽเดดเตเดคเตเด•:

options apple-ib-tb fnmode=2

เด•เต‡เตผเดฃเดฒเตเด‚ initramf เด•เดณเตเด‚ เด…เดชเตเดกเต‡เดฑเตเดฑเต เดšเต†เดฏเตเดฏเตเดจเตเดจเต.


mkinitcpio -p linux-mbp

iwd เด‡เตปเดธเตเดฑเตเดฑเดพเตพ เดšเต†เดฏเตเดฏเตเด•:

sudo pacman -S networkmanager iwd

5. เดฒเต‹เดกเตผ

chroot-เดจเตเดณเตเดณเดฟเตฝ เดŽเดฒเตเดฒเดพ เดชเตเดฐเดงเดพเดจ เดชเดพเด•เตเด•เต‡เดœเตเด•เดณเตเด‚ เด‡เตปเดธเตเดฑเตเดฑเดพเตพ เดšเต†เดฏเตเดคเตเด•เดดเดฟเดžเตเดžเดพเตฝ, เดจเดฟเด™เตเด™เตพเด•เตเด•เต เดฌเต‚เดŸเตเดŸเตเดฒเต‹เดกเตผ เด‡เตปเดธเตเดฑเตเดฑเดพเตพ เดšเต†เดฏเตเดฏเดพเตป เดคเตเดŸเด™เตเด™เดพเด‚.

เดŽเดจเดฟเด•เตเด•เต เดœเต‹เดฒเดฟเด•เตเด•เต เดชเต‹เด•เดพเตป เด•เดดเดฟเดžเตเดžเดฟเดฒเตเดฒ. เด’เดฐเต เดŽเด•เตเดธเตเดฑเตเดฑเต‡เดฃเตฝ USB เดกเตเดฐเตˆเดตเดฟเตฝ เดจเดฟเดจเตเดจเต เด—เตเดฐเดฌเต เดฌเต‚เดŸเตเดŸเต เดšเต†เดฏเตเดฏเตเด•, เดŽเดจเตเดจเดพเตฝ เดจเดฟเด™เตเด™เตพ เด…เดคเต nvme-เตฝ เดฐเดœเดฟเดธเตเดฑเตเดฑเตผ เดšเต†เดฏเตเดฏเดพเตป เดถเตเดฐเดฎเดฟเด•เตเด•เตเดฎเตเดชเต‹เตพ

grub-install --target=x86_64-efi --efi-directory=/boot --bootloader-id=grub

เดธเดฟเดธเตเดฑเตเดฑเด‚ เด•เต‡เตผเดฃเตฝ เดชเดพเดจเดฟเด•เตเด•เดฟเดฒเต‡เด•เตเด•เต เดชเต‹เดฏเดฟ, เด•เต‚เดŸเดพเดคเต† เด“เดชเตโ€Œเดทเดจเตเด•เดณเดฟเดฒเต‚เดŸเต† เด’เดฐเต เดชเตเดคเดฟเดฏ เด‡เดจเด‚ เดฑเต€เดฌเต‚เดŸเตเดŸเต เดšเต†เดฏเตเดคเดคเดฟเดจเตเดถเต‡เดทเด‚ เดฆเตƒเดถเตเดฏเดฎเดพเดฏเดฟเดฒเตเดฒ. เดˆ เดชเตเดฐเดถเตเดจเดคเตเดคเดฟเดจเต เดตเตเดฏเด•เตเดคเดฎเดพเดฏ เด’เดฐเต เดชเดฐเดฟเดนเดพเดฐเดตเตเด‚ เดžเดพเตป เด•เดฃเตเดŸเต†เดคเตเดคเดฟเดฏเดฟเดฒเตเดฒ, เด…เดคเดฟเดจเดพเตฝ systemd-boot เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เดฌเต‚เดŸเตเดŸเดฟเด‚เด—เต เดจเดŸเดชเตเดชเดฟเดฒเดพเด•เตเด•เดพเตป เดžเดพเตป เดคเต€เดฐเตเดฎเดพเดจเดฟเดšเตเดšเต.

  1. เดฒเต‹เดžเตเดšเต
    bootctl --path=/boot install

    เดžเด™เตเด™เตพ เด•เต‡เตผเดฃเตฝ เดชเดฐเดฟเดญเตเดฐเดพเดจเตเดคเดฟเดฏเดฟเดฒเต‡เด•เตเด•เต เดชเต‹เด•เตเดจเตเดจเต. เดฎเดพเด•เตเดฌเตเด•เตเด•เต เด“เดซเต เดšเต†เดฏเตเดฏเตเด•, เด…เดคเต เดตเต€เดฃเตเดŸเตเด‚ เด“เดฃเดพเด•เตเด•เตเด•, เด“เดชเตเดทเดจเตเด•เตพ เด•เตเดฒเดฟเด•เตเด•เต เดšเต†เดฏเตเดฏเตเด• (เด•เต€เดฌเต‹เตผเดกเต เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต USB-C เดนเดฌเต เด“เดซเต เดšเต†เดฏเตเดฏเดฐเตเดคเต)

  2. เดฌเดพเดนเตเดฏ เด‰เดชเด•เดฐเดฃเดคเตเดคเดฟเดจเต เดชเตเดฑเดฎเต† เด’เดฐเต เดชเตเดคเดฟเดฏ EFI เดฌเต‚เดŸเตเดŸเต เดŽเตปเดŸเตเดฐเดฟ เดชเตเดฐเดคเตเดฏเด•เตเดทเดชเตเดชเต†เดŸเตเดŸเดฟเดŸเตเดŸเตเดฃเตเดŸเต‹ เดŽเดจเตเดจเต เดžเด™เตเด™เตพ เดชเดฐเดฟเดถเต‹เดงเดฟเด•เตเด•เตเดจเตเดจเต
  3. เด†เดฆเตเดฏ เด‡เตปเดธเตเดฑเตเดฑเดฒเต‡เดทเตป เดธเดฎเดฏเดคเตเดคเต† เดชเต‹เดฒเต† เด’เดฐเต เดฌเดพเดนเตเดฏ USB เดกเตเดฐเตˆเดตเดฟเตฝ เดจเดฟเดจเตเดจเต เดฌเต‚เดŸเตเดŸเต เดšเต†เดฏเตเดฏเดพเตป เดžเด™เตเด™เตพ เดคเดฟเดฐเดžเตเดžเต†เดŸเตเด•เตเด•เตเดจเตเดจเต (module_blacklist=thunderbolt เดตเตเดฏเด•เตเดคเดฎเดพเด•เตเด•เดพเตป เดฎเดฑเด•เตเด•เดฐเตเดคเต)
  4. เดžเด™เตเด™เตพ เดžเด™เตเด™เดณเตเดŸเต† เดกเดฟเดธเตเด•เต เดฎเตŒเดฃเตเดŸเต เดšเต†เดฏเตเดฏเตเด•เดฏเตเด‚ เด†เตผเดšเตเดšเต-เด•เตเดฐเต‹เดŸเตเดŸเต เดตเดดเดฟ เดชเดฐเดฟเดธเตเดฅเดฟเดคเดฟเดฏเดฟเดฒเต‡เด•เตเด•เต เดชเต‹เด•เตเด•เดฏเตเด‚ เดšเต†เดฏเตเดฏเตเดจเตเดจเต


mount /dev/nvme0n1p4 /mnt
mount /dev/nvme0n1p1 /mnt/boot
arch-chroot /mnt

เดธเดฟเดธเตเดฑเตเดฑเด‚ เดชเต‚เตผเดฃเตเดฃเดฎเดพเดฏเดฟ เดฒเต‹เดกเตเดšเต†เดฏเตเดฏเตเดจเตเดจเดคเต เดตเดฐเต† เด•เต€เดฌเต‹เตผเดกเต เดชเตเดฐเดตเตผเดคเตเดคเดฟเด•เตเด•เต‡เดฃเตเดŸเดคเต เด†เดตเดถเตเดฏเดฎเดพเดฃเต†เด™เตเด•เดฟเตฝ (luks/dm-crypt เดŽเตปเด•เตเดฐเดฟเดชเตเดทเตป เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเดฎเตเดชเต‹เตพ เด‡เดคเต เด†เดตเดถเตเดฏเดฎเดพเดฃเต), เดคเตเดŸเตผเดจเตเดจเต เด…เดคเต MODULES เดตเดฟเดญเดพเด—เดคเตเดคเดฟเดฒเต† /etc/mkinicpio.conf เดซเดฏเดฒเดฟเตฝ เดŽเดดเตเดคเตเด•:

MODULES=(ext4 applespi intel_lpss_pci spi_pxa2xx_platform bce)

เด•เต‡เตผเดฃเดฒเตเด‚ initramf เด•เดณเตเด‚ เด…เดชเตเดกเต‡เดฑเตเดฑเต เดšเต†เดฏเตเดฏเตเดจเตเดจเต.


mkinicpio -p linux-mbp

systemd-boot เดธเดœเตเดœเต€เด•เดฐเดฟเด•เตเด•เตเดจเตเดจเต

เดžเด™เตเด™เตพ /boot/loader/loader.conf เดซเดฏเตฝ เดŽเดกเดฟเดฑเตเดฑเต เดšเต†เดฏเตเดฏเตเด•เดฏเตเด‚ เด‰เดณเตเดณเดฟเดฒเตเดณเตเดณเดคเต†เดฒเตเดฒเดพเด‚ เด‡เดฒเตเดฒเดพเดคเดพเด•เตเด•เตเด•เดฏเตเด‚ เด‡เดจเดฟเดชเตเดชเดฑเดฏเตเดจเตเดจเดต เดšเต‡เตผเด•เตเด•เตเด•เดฏเตเด‚ เดšเต†เดฏเตเดฏเตเดจเตเดจเต:

default arch
timeout 5
editor 1

/boot/loader/entries เดซเต‹เตพเดกเดฑเดฟเดฒเต‡เด•เตเด•เต เดชเต‹เดฏเดฟ arch.conf เดซเดฏเตฝ เดธเตƒเดทเตเดŸเดฟเดšเตเดšเต เดŽเดดเตเดคเตเด•:

title arch
linux /vmlinuz-linux-mbp
initrd /initramfs-linux-mbp.img
options root=/dev/<b>nvme0n1p4</b> rw pcie_ports=compat

เดจเดฟเด™เตเด™เตพ luks เด‰เด‚ lvm เด‰เด‚ เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเดฟเดŸเตเดŸเตเดฃเตเดŸเต†เด™เตเด•เดฟเตฝ, เดชเดฟเดจเตเดจเต†

options cryptdevice=/dev/<b>nvme0n1p4</b>:luks root=/dev/mapper/vz0-root rw pcie_ports=compat

MacOS-เดฒเต‡เด•เตเด•เต เดฑเต€เดฌเต‚เดŸเตเดŸเต เดšเต†เดฏเตเดฏเตเด•.

6. Wi-Fi เดธเดœเตเดœเต€เด•เดฐเดฃเด‚

เด…เดตเดธเดพเดจเด‚ เดธเด‚เดญเดตเดฟเดšเตเดšเดคเตเดชเต‹เดฒเต†, MacOS เดซเต‹เตพเดกเดฑเดฟเตฝ wi-fi เด…เดกเดพเดชเตเดฑเตเดฑเดฑเดฟเดจเดพเดฏเตเดณเตเดณ เดซเต‡เด‚เดตเต†เดฏเตผ เดซเดฏเดฒเตเด•เตพ เดธเด‚เดญเดฐเดฟเด•เตเด•เตเดจเตเดจเต /usr/share/firmware/wifi , เดจเดฟเด™เตเด™เตพเด•เตเด•เต เด…เดต เด…เดตเดฟเดŸเต† เดจเดฟเดจเตเดจเต เดฌเตเดฒเต‹เดฌเตเด•เดณเตเดŸเต† เดฐเต‚เดชเดคเตเดคเดฟเตฝ เดŽเดŸเตเดคเตเดคเต brcmfmac เด•เต‡เตผเดฃเตฝ เดฎเตŠเดกเตเดฏเต‚เดณเดฟเดฒเต‡เด•เตเด•เต เดจเตฝเด•เดพเด‚. เดจเดฟเด™เตเด™เดณเตเดŸเต† เด…เดกเดพเดชเตเดฑเตเดฑเตผ เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเดจเตเดจ เดซเดฏเดฒเตเด•เตพ เด•เดฃเตเดŸเต†เดคเตเดคเตเดจเตเดจเดคเดฟเดจเต, MacOS-เตฝ เด’เดฐเต เดŸเต†เตผเดฎเดฟเดจเตฝ เดคเตเดฑเดจเตเดจเต เดŽเดดเตเดคเตเด•:

ioreg -l | grep C-4364

เดจเดฎเตเด•เตเด•เต เด’เดฐเต เดจเต€เดฃเตเดŸ เดชเดŸเตเดŸเดฟเด• เดฒเดญเดฟเด•เตเด•เตเด‚. เดžเด™เตเด™เตพเด•เตเด•เต เดตเดฟเดญเดพเด—เดคเตเดคเดฟเตฝ เดจเดฟเดจเตเดจเตเดณเตเดณ เดซเดฏเดฒเตเด•เตพ เดฎเดพเดคเตเดฐเดฎเต‡ เด†เดตเดถเตเดฏเดฎเตเดณเตเดณเต‚ เด…เดญเตเดฏเตผเดคเตเดฅเดฟเดšเตเดš เดซเดฏเดฒเตเด•เตพ:

"RequestedFiles" = ({"Firmware"="<b>C-4364__s-B2/maui.trx</b>","TxCap"="C-4364__s-B2/maui-X3.txcb","Regulatory"="C-4364__s-B2/<b>maui-X3.clmb</b>","NVRAM"="C-4364__s-B2/<b>P-maui-X3_M-HRPN_V-m__m-7.7.txt</b>"})

เดจเดฟเด™เตเด™เดณเตเดŸเต† เด•เดพเดฐเตเดฏเดคเตเดคเดฟเตฝ, เดซเดฏเดฒเตเด•เดณเตเดŸเต† เดชเต‡เดฐเตเด•เตพ เดตเตเดฏเดคเตเดฏเดธเตเดคเดฎเดพเดฏเดฟเดฐเดฟเด•เตเด•เดพเด‚. เด…เดตเดฏเต† /usr/share/firmware/wifi เดซเต‹เตพเดกเดฑเดฟเตฝ เดจเดฟเดจเตเดจเต เดซเตเดฒเดพเดทเต เดกเตเดฐเตˆเดตเดฟเดฒเต‡เด•เตเด•เต เดชเด•เตผเดคเตเดคเดฟ เด‡เดจเดฟเดชเตเดชเดฑเดฏเตเดจเตเดจ เดฐเต€เดคเดฟเดฏเดฟเตฝ เดชเต‡เดฐเตเดฎเดพเดฑเตเดฑเตเด•:

    maui.trx -> brcmfmac4364-pcie.bin
    maui-X3.clmb -> brcmfmac4364-pcie.clm_blob
    P-maui-X3_M-HRPN_V-m__m-7.7.txt -> brcmfmac4364-pcie.Apple Inc.-<b>MacBookPro15,2.txt</b>

เดˆ เดธเดพเดนเดšเดฐเตเดฏเดคเตเดคเดฟเตฝ, เด…เดตเดธเดพเดจเดคเตเดคเต† เดŸเต†เด•เตเดธเตเดฑเตเดฑเต เดซเดฏเดฒเดฟเตฝ เดฎเต‹เดกเตฝ เดชเต‡เดฐเตเด•เตพ เด…เดŸเด™เตเด™เดฟเดฏเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจเต; เดจเดฟเด™เตเด™เดณเตเดŸเต† เดฎเต‹เดกเตฝ macbookpro15,2 เด…เดฒเตเดฒเต†เด™เตเด•เดฟเตฝ, เดจเดฟเด™เตเด™เดณเตเดŸเต† MacBook เดฎเต‹เดกเดฒเดฟเดจเต เด…เดจเตเดธเตƒเดคเดฎเดพเดฏเดฟ เดˆ เดซเดฏเดฒเดฟเดจเตเดฑเต† เดชเต‡เดฐเต เดฎเดพเดฑเตเดฑเต‡เดฃเตเดŸเดคเตเดฃเตเดŸเต.

เด†เตผเด•เตเด•เดฟเดฒเต‡เด•เตเด•เต เดฑเต€เดฌเต‚เดŸเตเดŸเต เดšเต†เดฏเตเดฏเตเด•.

เดซเตเดฒเดพเดทเต เดกเตเดฐเตˆเดตเดฟเตฝ เดจเดฟเดจเตเดจเต /lib/firmware/brcm/ เดซเต‹เตพเดกเดฑเดฟเดฒเต‡เด•เตเด•เต เดซเดฏเดฒเตเด•เตพ เดชเด•เตผเดคเตเดคเตเด•


sudo cp brcmfmac4364-pcie.bin /lib/firmware/brcm/
sudo cp brcmfmac4364-pcie.clm_blob /lib/firmware/brcm/
sudo cp 'brcmfmac4364-pcie.Apple Inc.-<b>MacBookPro15,2.txt' /lib/firmware/brcm/

เดฎเตŠเดกเตเดฏเต‚เดณเดฟเดจเตเดฑเต† เดชเตเดฐเดตเตผเดคเตเดคเดจเด•เตเดทเดฎเดค เดชเดฐเดฟเดถเต‹เดงเดฟเด•เตเด•เตเดจเตเดจเต:


rmmod brcmfmac
modprobe brcmfmac

ifconfig/ip เดตเดดเดฟเดฏเดพเดฃเต เดจเต†เดฑเตเดฑเตโ€Œเดตเตผเด•เตเด•เต เด‡เดจเตเดฑเตผเดซเต‡เดธเต เดฆเตƒเดถเตเดฏเดฎเดพเด•เตเดจเตเดจเดคเต†เดจเตเดจเต เดžเด™เตเด™เตพ เด‰เดฑเดชเตเดชเดพเด•เตเด•เตเดจเตเดจเต.
เดตเดดเดฟ เดตเตˆเดซเตˆ เดธเดœเตเดœเต€เด•เดฐเดฟเด•เตเด•เตเดจเตเดจเต iwctl

เดถเตเดฐเดฆเตเดง. netctl, nmcli เดฎเตเดคเดฒเดพเดฏเดต เดตเดดเดฟ. เด‡เดจเตเดฑเตผเดซเต‡เดธเต เดชเตเดฐเดตเตผเดคเตเดคเดฟเด•เตเด•เตเดจเตเดจเดฟเดฒเตเดฒ, iwd เดตเดดเดฟ เดฎเดพเดคเตเดฐเด‚.

iwd เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เดพเตป เดžเด™เตเด™เตพ NetworkManager-เดจเต† เดจเดฟเตผเดฌเดจเตเดงเดฟเด•เตเด•เตเดจเตเดจเต. เด‡เดคเต เดšเต†เดฏเตเดฏเตเดจเตเดจเดคเดฟเดจเต, เดซเดฏเตฝ /etc/NetworkManager/NetworkManager.conf เดธเตƒเดทเตเดŸเดฟเดšเตเดšเต เดŽเดดเตเดคเตเด•:

[device]
wifi.backend=iwd

NetworkManager เดธเต‡เดตเดจเด‚ เด†เดฐเด‚เดญเดฟเด•เตเด•เตเด•


sudo systemctl start NetworkManager.service
sudo systemctl enable NetworkManager.service

7. เดถเดฌเตเดฆเด‚

เดถเดฌเตโ€Œเดฆเด‚ เดชเตเดฐเดตเตผเดคเตเดคเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเต, เดจเดฟเด™เตเด™เตพ เดชเตพเดธเต‹เดกเดฟเดฏเต‹ เด‡เตปเดธเตเดฑเตเดฑเดพเตพ เดšเต†เดฏเตเดฏเต‡เดฃเตเดŸเดคเตเดฃเตเดŸเต:


sudo pacman -S pulseaudio

เดฎเต‚เดจเตเดจเต เดซเดฏเดฒเตเด•เตพ เดกเต—เตบเดฒเต‹เดกเต เดšเต†เดฏเตเดฏเตเด•:

เดจเดฎเตเด•เตเด•เต เด…เดตเดฏเต† เดจเต€เด•เตเด•เดพเด‚:

    /usr/share/alsa/cards/AppleT2.conf
    /usr/share/pulseaudio/alsa-mixer/profile-sets/apple-t2.conf
    /usr/lib/udev/rules.d/91-pulseaudio-custom.rules

8. เดธเดธเตเดชเต†เตปเดกเต/เดชเตเดจเดฐเดพเดฐเด‚เดญเดฟเด•เตเด•เตเด•

เดˆ เดจเดฟเดฎเดฟเดทเด‚ 16.10.2019 เดจเดฟเด™เตเด™เตพ เดถเดฌเตโ€Œเดฆเด‚ เด…เดฒเตเดฒเต†เด™เตเด•เดฟเตฝ เดธเดธเตเดชเต†เตปเดกเต/เดฑเต†เดธเตเดฏเตเดฎเต† เดคเดฟเดฐเดžเตเดžเต†เดŸเตเด•เตเด•เดฃเด‚. bce เดฎเตŠเดกเตเดฏเต‚เดณเดฟเดจเตเดฑเต† เดฐเดšเดฏเดฟเดคเดพเดตเต เดชเตเดฐเดตเตผเดคเตเดคเดจเด‚ เดชเต‚เตผเดคเตเดคเดฟเดฏเดพเด•เตเด•เตเดจเตเดจเดคเดฟเดจเดพเดฏเดฟ เดžเด™เตเด™เตพ เด•เดพเดคเตเดคเดฟเดฐเดฟเด•เตเด•เตเด•เดฏเดพเดฃเต.

เดธเดธเตเดชเต†เดกเต/เดฑเต†เดธเตเดฏเต‚เด‚ เดธเดชเตเดชเต‹เตผเดŸเตเดŸเต เด‰เดณเตเดณ เด’เดฐเต เดฎเตŠเดกเตเดฏเต‚เตพ เดจเดฟเตผเดฎเตเดฎเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเต, เดจเดฟเด™เตเด™เตพ เด‡เดจเดฟเดชเตเดชเดฑเดฏเตเดจเตเดจเดต เดšเต†เดฏเตเดฏเดฃเด‚:


git clone https://github.com/MCMrARM/mbp2018-bridge-drv.git
cd mbp2018-bridge-drv
git checkout suspend
make
cp bce.ko /usr/lib/modules/extramodules-mbp/bce.ko
modprobe bce

เดจเดฟเด™เตเด™เตพ anuali1 เดถเต‡เด–เดฐเดฃเดคเตเดคเดฟเตฝ เดจเดฟเดจเตเดจเต เดฑเต†เดกเดฟเดฎเต†เดฏเตเดกเต apple-bce เดฎเตŠเดกเตเดฏเต‚เตพ เด‡เตปเดธเตเดฑเตเดฑเดพเตพ เดšเต†เดฏเตเดคเดฟเดŸเตเดŸเตเดฃเตเดŸเต†เด™เตเด•เดฟเตฝ, เดจเดฟเด™เตเด™เตพ เด†เดฆเตเดฏเด‚ เด…เดคเต เดจเต€เด•เตเด•เด‚ เดšเต†เดฏเตเดฏเดฃเด‚, เด…เดคเดฟเดจเตเดถเต‡เดทเด‚ เดฎเดพเดคเตเดฐเดฎเต‡ เดธเดธเตเดชเต†เตปเดกเต เดฎเต‹เดกเต เดชเดฟเดจเตเดคเตเดฃเดฏเต‹เดŸเต† bce เดฎเตŠเดกเตเดฏเต‚เตพ เด•เต‚เดŸเตเดŸเดฟเดšเตเดšเต‡เตผเด•เตเด•เตเด•เดฏเตเด‚ เด‡เตปเดธเตเดฑเตเดฑเดพเตพ เดšเต†เดฏเตเดฏเตเด•เดฏเตเด‚ เดตเต‡เดฃเด‚.

เด•เต‚เดŸเดพเดคเต†, เดจเดฟเด™เตเด™เตพ applesmc เดฎเตŠเดกเตเดฏเต‚เตพ เดฌเตเดฒเดพเด•เตเด•เตโ€Œเดฒเดฟเดธเตเดฑเตเดฑเดฟเดฒเต‡เด•เตเด•เต เดšเต‡เตผเด•เตเด•เต‡เดฃเตเดŸเดคเตเดฃเตเดŸเต (เดจเดฟเด™เตเด™เตพ เด‡เดคเต เดฎเตเดฎเตเดชเต เดšเต†เดฏเตเดคเดฟเดŸเตเดŸเดฟเดฒเตเดฒเต†เด™เตเด•เดฟเตฝ) เด•เต‚เดŸเดพเดคเต† /boot/loader/entries/arch.conf เดŽเดจเตเดจเดคเดฟเตฝ เด…เดตเดธเดพเดจเด‚ เดชเดพเดฐเดพเดฎเต€เดฑเตเดฑเตผ เดšเต‡เตผเดคเตเดคเดฟเดŸเตเดŸเตเดฃเตเดŸเต†เดจเตเดจเต เด‰เดฑเดชเตเดชเดพเด•เตเด•เตเด•. pcie_ports=compat.

เดจเดฟเดฒเดตเดฟเตฝ, เดธเดธเตเดชเต†เตปเดกเต เดฎเต‹เดกเดฟเตฝ เดชเตเดฐเดตเต‡เดถเดฟเด•เตเด•เตเดฎเตเดชเต‹เตพ เดŸเดšเตเดšเตเดฌเดพเตผ เดกเตเดฐเตˆเดตเตผ เดคเด•เดฐเดพเดฑเดฟเดฒเดพเด•เตเดจเตเดจเต, เดคเดฃเตเดŸเตผเดฌเต‹เตพเดŸเตเดŸเต เดกเตเดฐเตˆเดตเตผ เดšเดฟเดฒเดชเตเดชเต‹เตพ เดธเดฟเดธเตเดฑเตเดฑเดคเตเดคเต† 30 เดธเต†เด•เตเด•เตปเดกเดฟเตฝ เด•เต‚เดŸเตเดคเตฝ เดซเตเดฐเต€เดธเตเดšเต†เดฏเตเดฏเตเดจเตเดจเต, เดชเตเดจเดฐเดพเดฐเด‚เดญเดฟเด•เตเด•เตเดฎเตเดชเต‹เตพ เด•เตเดฑเดšเตเดšเต เดฎเดฟเดจเดฟเดฑเตเดฑเต เดจเต‡เดฐเดคเตเดคเต‡เด•เตเด•เต. เดชเตเดฐเดถเตเดจเดฎเตเดณเตเดณ เดฎเตŠเดกเตเดฏเต‚เดณเตเด•เตพ เดธเตเดตเดฏเดฎเต‡เดต เด…เตบเดฒเต‹เดกเต เดšเต†เดฏเตเดฏเตเดจเตเดจเดคเดฟเดฒเต‚เดŸเต† เด‡เดคเต เดชเดฐเดฟเดนเดฐเดฟเด•เตเด•เดพเดจเดพเด•เตเด‚.

เด’เดฐเต เดธเตเด•เตเดฐเดฟเดชเตเดฑเตเดฑเต เดธเตƒเดทเตเดŸเดฟเด•เตเด•เตเด• /lib/systemd/system-sleep/rmmod.sh:

#!/bin/sh
if [ "" == "pre" ]; then
        rmmod thunderbolt
        rmmod apple_ib_tb
elif [ "" == "post" ]; then
        modprobe apple_ib_tb
        modprobe thunderbolt
fi

เด‡เดคเต เดŽเด•เตเดธเดฟเด•เตเดฏเต‚เดŸเตเดŸเดฌเดฟเตพ เด†เด•เตเด•เตเด•:

sudo chmod +x /lib/systemd/system-sleep/rmmod.sh

เด‡เดชเตเดชเต‡เดพเดดเดคเตเดคเต‡เด•เตเด•เต เด‡เดคเตเดฐเดฎเดพเดคเตเดฐเด‚. เดธเดธเตเดชเต†เตปเดกเต/เดฑเต†เดธเตเดฏเต‚เดฎเต† เด‰เดณเตเดณ เดšเดฟเดฒ เดธเต‚เด•เตเดทเตเดฎเดคเด•เตพ เด’เดดเดฟเด•เต†, เดชเต‚เตผเดฃเตเดฃเดฎเดพเดฏเตเด‚ เดชเตเดฐเดตเตผเดคเตเดคเดจเด•เตเดทเดฎเดฎเดพเดฏ เด’เดฐเต เดธเด‚เดตเดฟเดงเดพเดจเดฎเดพเดฃเต เดซเดฒเด‚. เดชเตเดฐเดตเตผเดคเตเดคเดจเดธเดฎเดฏเดคเตเดคเต เดจเดฟเดฐเดตเดงเดฟ เดฆเดฟเดตเดธเด™เตเด™เดณเดฟเตฝ เด•เตเดฐเดพเดทเตเด•เดณเต‹ เด•เต‡เตผเดฃเตฝ เดชเดฐเดฟเดญเตเดฐเดพเดจเตเดคเดฟเด•เดณเต‹ เด‰เดฃเตเดŸเดพเดฏเดฟเดฒเตเดฒ. เดธเดฎเต€เดชเดญเดพเดตเดฟเดฏเดฟเตฝ bce เดฎเตŠเดกเตเดฏเต‚เดณเดฟเดจเตเดฑเต† เดฐเดšเดฏเดฟเดคเดพเดตเต เด‡เดคเต เดชเต‚เตผเดคเตเดคเดฟเดฏเดพเด•เตเด•เตเดฎเต†เดจเตเดจเต เดžเดพเตป เดชเตเดฐเดคเต€เด•เตเดทเดฟเด•เตเด•เตเดจเตเดจเต, เด•เต‚เดŸเดพเดคเต† เดธเดธเตเดชเต†เตปเดกเต/เดฑเต†เดธเตเดฏเต‚เดฎเต†, เดถเดฌเตโ€Œเดฆเด‚ เดŽเดจเตเดจเดฟเดตเดฏเตโ€Œเด•เตเด•เต เดžเด™เตเด™เตพเด•เตเด•เต เดชเต‚เตผเดฃเตเดฃ เดชเดฟเดจเตเดคเตเดฃ เดฒเดญเดฟเด•เตเด•เตเด‚.

เด…เดตเดฒเด‚เดฌเด‚: www.habr.com

เด’เดฐเต เด…เดญเดฟเดชเตเดฐเดพเดฏเด‚ เดšเต‡เตผเด•เตเด•เตเด•