7 Mart 2017 Salı

Raspberry pi aracılığı ile Libreboot ve Coreboot Kurulumu

Merhabalar, Libreboot ve Coreboot'un neler olduğunu ve kendi bilgisayarımıza kurup nasıl derleyebileceğimizi önceki yazılarımda bulabilirsiniz. Bu yazımda x200 makinelere ve desteklenen diğer tüm makinelere nasıl Coreboot veya Libreboot kurulacağını anlatacağım. Yakın zamandada videolu bir kurulum yapmayı planlıyorum. IBM x60 makinelerdeki gibi bilgisayar açıkken ve üzerinde bir GNU/Linux dağıtımı koşarken kurulum yapılamadığı için x200 de ve diğer çoğu makinede kurması biraz zahmetli ve birkaç malzeme gerekiyor öncelikle bunları öğrenelim.

-Jumper kablo(10 cm veya daha kısa)

    Sinyallerin iletilebilmesi için 10 cm den kısa olması gerekmekte

-SOIC16 test clip (Bios Romunuz 8 bacaklı ise SOIC8 test clip)


    Bu ürünlerin türkiyede satışını bulamadık ve Ebayden 10$'a SOIC16 ve SOIC8 seti sipariş verdik. Pomona Electronics in 5252 modelini kullanabilirsiniz.

-Bir adet Kullanıma hazır Raspberry Pi

    Üzerinde GPIO pinlerinin olduğu herhangi bir Raspberry Pi işimizi görecektir.

İlk Önce Raspberry Pi kısmında yapılacakları yapalım:
/boot/config.txt dosyasına

dtparam=spi=on



satırını ekleyelim.

sudo modprobe spidev
sudo modprobe spi_bcm2835

modüllerini yükleyelim

sudo apt-get update && sudo apt-get dist-upgrade && reboot
sudo apt-get update && sudo apt-get install libftdi1 libftdi-dev libusb-dev libpci-dev subversion
 

paketlerini yükleyelim.

wget http://download.flashrom.org/releases/flashrom-0.9.9.tar.bz2
tar -xvf flashrom-0.9.9.tar.bz2
cd flashrom-0.9.9
make

flashrom paketini kuralım ve Pi'ımızı yeniden başlatalım.

Daha sonra x200 makinenin vidalarını söküp bios romuna ulaşalım. Kasanın altındaki klavye ve alt panelin simgesinin olduğu vidalar söküldükten sonra  klavye ve alt panel çok rahat çıkmakta. Bios rom'unun modelini üzerine bakıp öğrendikten sonra Soic test clip'i takalım ve Raspberry Pi ile arasındaki kablo bağlantısını aşağıdaki tablo yardımı ile kuralım.

1 ve 9 nolu pinleri birbirine bağlayıp Raspberryde 17 nolu pine takmamız gerekiyor. 2 tane 3.3v çıkışı olduğu için 1 ve 9 u 17 ye, 2 yi 1 e bağladım. Libreboot dökümanında yer verilmesede flashrom geliştiricileri sorunların çoğunun bundan kaynaklandığını söylemekte.
Bağlantıyı Raspberry Pi açıkken yaparsanız reset atacaktır, bağlantıyı Raspberry Pi kapalı iken yapıp daha sonra açmamız daha sağlıklı olacaktır.


       Pin Name     Raspberry Pi Pin
1 HOLD 17
2 3.3V 1
3 - -
4 - -
5 - -
6 - -
7 CS# 24
8 S0/SIO1 21
9 WP 17
10 GND 25
11 - -
12 - -
13 - -
14 - -
15 S1/SIO0 19
16 SCLK 23


Yardımcı olması için chiplerin data sheet'i:



Yani sağdan başlayıp u şeklinde numaralandırılıyor(Bizim tarafımızda sağdaki 1. pin iken soldaki 16. pin)





Makinemiz için olan rom'u Raspberry Pi'a atalım.
scp coreboot.rom pi@xx.xx.xx.xx:

Herhangi bir sorun olmasına karşı orjinal bios'u yedeklemekte fayda var.
 Flashrom programında hata alırsanız spispeed i düşürmeyi deneyin ve her ne kadar 8mb bir dosya olsada okuma yazma uzun sürmekte sabırlı olun.
sudo ./flashrom -c "MX25L6405" -p linux_spi:dev=/dev/spidev0.0,spispeed=512 -r fabrika.rom

sudo ./flashrom -c "MX25L6405" -p linux_spi:dev=/dev/spidev0.0,spispeed=512 -r fabrika2.rom

diff fabrika.rom fabrika2.rom
ile romların aynı olup olmadığına bakalım. Farklıysa işlemi tekrarlayalım.

Sıra geldi Libreboot veya Coreboot yüklemeye
sudo ./flashrom -c "MX25L6405" -p linux_spi:dev=/dev/spidev0.0,spispeed=512 -w coreboot.rom

"Erasing and writing flash chip... FAILED at 0x00601000! Expected=0xff, Found=0x72, failed byte count from 0x00600000-0x0060ffff: 0xec8d
ERASE FAILED!"

  gibi hatalar versede önemli olan en son

"Verifying flash... VERIFIED." yazmasıdır.
Verified yazmıyorsa işlemi tekrarlayınız kendi derlediğiniz romlarda hata olduğunu düşünüyorsanız libreboot'un hazır derlenmiş romları ile deneme yapabilirsiniz.

    Bilgisayarımızı açtığımızda büyük olasılıkla açılmayacaktır çünkü içinde bulunan wifi kartı özgür yazılım ile çalışmıyor. Bunun için wifi kartımızı Atheros AR9285/AR5B95 model bir kart ile değiştirmemiz veya wifi kartını çıkarıp wifi'ı sol taraftaki açma kapama düğmesinden kapatmalıyız. Bunları yapsak bile ilk rom yüklendikten sonra 3-4 kez açma kapama yapmak gerekti belkide sabırsızlığımdan kaynaklı bilemiyorum.
Not: Sistemi bir kez boot ettikten sonra wifi kartını taktım ve çalıştı

    Umarım bu yazım bioslarının arkalarından iş çevirmediğinden emin olmak isteyen tüm kullanıcıların işine yarar ve kurulum esnasında sorun yaşamazlar. Kurulum bayağı zorlu bir süreç hatasız yapmak imkansıza yakın gibi bir olasılık, eğer bir hata ile karşılaştıysanız seve seve yardımcı olmak isterim. Hoşçakalın...