Ahududu Pi nasıl açılır?


57

Bir ahududu mini bilgisayarım var ve o şeyin tüm önyükleme işlemini nasıl yaptığını merak ediyorum. Kendi çekirdeğimi ve init ramdiskimi kendi scriptlerimle derleyip PC üzerinde kendi minimal linux sistemimi kurabilirim, ancak bunun için bazı bootloader kullanmam gerekiyor. Ahududu, bootloaders'ı hiç desteklemiyor gibi görünüyor.

Bir şekilde SD32'de (muhtemelen önyüklenebilir bayrağa sahip olan) FAT32'de biçimlendirilmesi gereken bazı bölümleri okuyan GPU'yu kullanarak önyükleme yapıyor gibi görünüyor, ardından raspbian tarafından sağlanan bazı dosyaları okuyor.

Fakat kendi çekirdeğimi, kendimi derlediğim kendi kişiselleştirmelerimi nasıl başlatırım? Ahududu bulması ve önyüklemesi için çekirdek imajını / initrd (ram diski) nereye kopyalamalıyım? Temel olarak ahududu önyükleme işlemini açıklayan bazı çok ayrıntılı teknik belgeler veya bunun sadece bir açıklamasını arıyorum.


Yanıtlar:


59

Bu Ahududu Pi forum gönderisinden [ loader.binBir anakronizm olarak yansıtacak şekilde düzenlenmiş ] :

  1. Ahududu Pi ilk açıldığında, ARM çekirdeği kapalı ve GPU çekirdeği açık. Bu noktada, SDRAM devre dışıdır.
  2. GPU, SoC’da ROM’da depolanan ilk aşama önyükleyiciyi çalıştırmaya başlar. İlk aşamada bootloader SD kartı okur ve ikinci aşama bootloader'ı ( bootcode.bin) L2 önbelleğe yükler ve çalıştırır.
  3. bootcode.binSDRAM’ı etkinleştirir ve üncü aşamadaki bootloader’ı (loader.bin) SD karttan RAM’e okur ve çalıştırır. [Daha yeni sürümlerde üçüncü aşama bir bootloader kullanmayın. ]
  4. [Varsa] loader.binGPU bellenimini okur ( start.elf).
  5. start.elfokur config.txt, cmdline.txtvekernel.img

loader.binpek bir şey yapmaz. .elfDosyaları işleyebilir ve start.elfbelleğin üzerine yüklemek için gereklidir (ARM, sıfır adresinden SDRAM kullanır). Gereksiz bootcode.binhale getirecek elf yükleme desteği eklemek için bir plan var loader.bin, ancak bu düşük bir öncelik (sanırım açılışta sizi 100ms'den kurtarabilir). [Bu değişiklik o zamandan beri gerçekleşti. ]

İşte yardımcı olabilecek bazı kaynaklar:


2
Bu bin dosyalarının içeriği tüm tescilli yazılım mı?
Petr

3
@Petr İşte Ahududu Pi ürün yazılımı için Github, cevabımı düzenleyeceğim.
syb0rg

1
On Ahududu Pi SSS , bu devralacak "Sen SD ama USB HD edebilir zorunda önyükleme‘diyor’ilk açılıştan sonra. Bir SD kart olmadan önyükleme olamaz."
syb0rg

1
İlk okunan bölüm B bayrağına sahip bir bölüm mü yoksa ilk bölüm mü olmalı? Peki ya çok büyütürsem ve SD kartın ucunda daha küçük olan başka bir tane daha yaratmak isterdim
Petr

1
@Petr Bunu başka bir soru olarak sormalısınız!
syb0rg
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.