Savage Board

İşlemci
Freescale i.MX6 Cortex A9 1Ghz / Quad Core
RAM
DDR3 1GB
Storage
eMMC 8GB
GPU
3D GPU Vivante GC2000
Hard FP (eabihf)
Var
USB
2x Ext / 1x Int 1with mPCIe
SATA
Var
Micro SD Kart
Var
Ethernet
Var (Gigabit)
HDMI
Var
Konsol
Var, RS232 DB9
NAND Flash
Yok
Toolchain Seçimi
Savage Board hard-floating desteğine sahip olduğundan eabihf toolchain'ler kullanılabileceği, soft-float toolchain'ler de kullanılabilmektedir.
Güncel Linaro, CodeSourcery ve Arago toolchain'leri sorun yaşamadan kullanabilirsiniz.
U-boot
http://www.savageboard.org adresinden Download bölümünden uboot-savage-1.5.tar.gz
dosyası indirilmelidir. Aşağıdaki şekilde güncel versiyonu indirilip hardfp veya softfp toolchain'ler ile derlenebilir:
$ wget http://www.savageboard.org/Downloads/uboot-savage-1.5.tgz
$ tar xf uboot-savage-1.5.tgz
$ cd uboot-imx
$ make CROSS_COMPILE=arm-none-linux-gnueabi- mx6q_savage_config
$ make CROSS_COMPILE=arm-none-linux-gnueabi- -j4
İşlem bitiminde uboot.bin
dosyası oluşacaktır. Bu dosyayı kullanarak sistemi recovery yöntemiyle açabilirsiniz. Ancak derlediğiniz u-boot binary imajını eMMC içerisinde yer alan imaj ile değiştirmek için yapılması gereken ek işlemler bulunmaktadır. Konunun detayına geçmeden, iMX6 serisinde kullanılan IVT Tablosu Kullanımı konusuna değinmemiz gereklidir.
IVT Tablosu
U-boot Konsolunda Çalışmak
mmc dev 2
setenv bootargs console=ttymxc0,115200 root=/dev/mmcblk0p2 rootwait rw
fatload mmc 2:1 0x12000000 uImage
bootm 0x12000000
Kernel
http://www.savageboard.org adresinden Download bölümünden kernel_savage-1.5.tgz
dosyası indirilmelidir.
$ wget http://www.savageboard.org/Downloads/savage-arch-kernel-3.10.17-1.1.tar.gz
$ tar xf savage-arch-kernel-3.10.17-1.1.tar.gz
$ cd savage-kernel-3.10.17-20141127
$ cp arch/arm/config/savage_defconfig .config
$ make ARCH=arm imx6q-savage.dtb uImage -j8 \
LOADADDR=0x10008000 DTB=imx6q-savage.dtb \
CROSS_COMPILE=arm-none-linux-gnueabi-
Modülleri derlemek için:
$ make ARCH=arm CROSS_COMPILE=arm-none-linux-gnueabi- modules -j8
Modüller derlendikten sonra modules_install
target'ı kullanılarak, modüllerin kurulacağı kök dosya sistemi INSTALL_MOD_PATH
parametresi ile aşağıdaki gibi verilmelidir (kök dosya sisteminin /opt/savage
dizininde oluşturulduğunu varsayarsak):
$ make ARCH=arm CROSS_COMPILE=arm-none-linux-gnueabi- \
INSTALL_MOD_PATH=/opt/savage modules_install
Recovery
Board'un açılmaması, boot yükleyici alanının bozulması vb. durumlarında kullanabileceğiniz bir recovery mekanizması mevcuttur.
Cihazı bu moda geçirebilmek için, micro-usb kablosu cihaz ile bilgisayarınız arasında takılı durumdayken, kartın ortasındaki küçük butona basılı tutup karta enerji vermeniz gereklidir. Bu şekilde açıldığında bilgisayarınızdan lsusb
ile bakıldığında aşağıdaki gibi bir çıktı görünecektir:
$ lsusb
Bus 001 Device 009: ID 15a2:0054 Freescale Semiconductor, Inc. i.MX6Q SystemOnChip in RecoveryMode
Kart recovery modunda iken, micro-usb kablosu üzerinden derlemiş olduğunuz u-boot.bin dosyasını karta gönderebilir ve çalıştırılmasını sağlayabilirsiniz. Ancak bu süreci işletebilmek için, öncelikle imx_usb_loader projesini indirip derlemeliyiz. Projeyi derleyebilmeniz sistemde libusb development paketleri de kurulu olmalıdır, değilse öncelikle aşağıdaki şekilde paketleri yüklemelisiniz:
$ sudo apt-get install libusb-1.0-0-dev libusb-dev
Ardından projeyi clone'layıp aşağıdaki şekilde derleyiniz:
$ git clone https://github.com/boundarydevices/imx_usb_loader.git
$ cd imx_usb_loader
$ make
İşlem bitiminde imx_usb uygulaması oluşacaktır. Uygulamayı sudo aracılığıyla root erişim haklarıyla çalıştırıp, parametre olarak derlediğiniz u-boot.bin dosyasını vermelisiniz:
$ sudo ./imx_usb ../uboot-imx/u-boot.bin
Last updated
Was this helpful?