Username:
Password:
 

Příprava linuxového jádra (kernelu) 2.6.23 pro SBC-9200 

Požadavky

  • Linux kernel 2.6.22 - download na www.kernel.org
  • Patch pro kernel 2.6.22 pro update na 2.6.23-rc3 opět ze ze stránek výše
  • Patch pro AT91RM9200 ze stránek maxim.org.za pro kernel verze 2.6.23-rc3
Lokální mirrory a potřebné soubory:

Kompilace kernelu

- rozbalit linux-2.6.22.5.tar.bz2 do pracovniho adresáře
- zkopírovat patch-2.6.23-rc3.bz2 do adresáře s kernelem a přepnout se do něho
- bzip2 -cd ./patch-2.6.23-rc3.bz2 | patch -p1
- gzip -cd ./at91-2.6.23-rc3.patch.gz | patch -p1
- v arch/arm/mach-at91/Makefile změnit řádek 'obj-$(CONFIG_MACH_AT91RM9200DK) += board-dk.c' na 'obj-$(CONFIG_MACH_AT91RM9200DK) += board-sbc.c' a do stejného adresáře nakopírovat soubor board-sbc.c
- do adresáře arch/arm/configs zkopírovat at91rm9200sbc_defconfig
- make ARCH=arm at91RM9200sbc_defconfig
- make ARCH=arm menuconfig (doladit detaily, DŮLEŽITÉ)
- make ARCH=arm uImage CROSS_COMPILE=armv4l-linux-
- make ARCH=arm modules CROSS_COMPILE=armv4l-linux-
- make ARCH=arm modules_install INSTALL_MOD_PATH=[target]

Instalace kernelu

- v adresáři [kernel]/arch/arm/boot se nachází soubor uImage připravený pro U-Boot, ten je nutné nakopírovat do adresáře TFTP serveru
- resetovat desku až se zobrazí příkazová řádka U-Bootu
- stáhnout uImage do RAM na modulu (používám adresu 0x23000000, na ní určitě nic nebude), tftp 23000000 uImage
- překopírovat uImage do DataFlash, cp.b 23000000 C002A000 [velikost] (velikost je udána v hexa po provedení příkazu tftp na konci výpisu v závorkách)
- zkontrolovat proměnnou bootcmd (měla by obsahovat minimálně bootm c002a000) a bootargs
- spustit linux, boot

Chyby

při testování usb device jsem zjistil nepříjemnou věc, a to že při použití gagdetu serial dojde při otevření portu na straně hosta k totálnímu zamrznutí SBC. V mé předchozí verzi jádra (2.6.20.1) se toto nestávalo. K vyřešení problému jsem tedy využil zdrojové soubory gadgetu právě z této verze. "Oprava" je k dispozici zde. Adresáře drivers a include je nutné zkopírovat do adresáře kde je umístěno jádro a to překompilovat.


 
 
      -vod | Forum | Kontakt     Valid HTML 4.01 Transitional

     Bez svolení autora je zakázáno jakékoliv kopírování článků (i jejich částí), obrázků atd. z těchto stránek, pokud není kopírování výslovně povoleno. Uvedené
     konstrukce je přísně zakázáno využívat pro komerční účely!
     Autor nenese zodpovědnost za škody vzniklé použitím návodů uvedených na těchto stránkách :-).
     Návštěvníků od 25.12.2005: 225552.    Copyright © 2005-2009 Tronic Software. All rights reserved.