Wednesday, September 23, 2015

1. Boot Mode


Như đã đề cập ở bài trước, board mini2440 có NOR flash chứa chương trình tương tự như Bios của máy tính, có chức năng để cài đặt Linux lên NAND flash. Ở các board cũ, NOR chứa chương trình dùng bootloader có tên là Supervivi, còn các board mới từ sau 2014 được đổi sang dùng Superboot. Supervivi chỉ cho phép cài đặt Linux vào NAND thông qua cáp USB, còn Superboot thì qua SDCard.

NAND flash chứa các thành phần đầy đủ của hệ thống bao gồm:
- Bootloader
- Linux kernel
- Rootfs

2. Cài đặt Linux lên board
Trong phần này chúng ta mặc định là các thành phần bootloader, kernel và rootfs đã có sẵn (lấy mấy file đã được build sẵn, xem bài trước)

2.1 NOR dùng Supervivi
Chuẩn bị:
+ usbpush (phần mềm để push bootloader, kernel, rootfs từ host lên NAND flash)
+ Linux
    - supervivi-128M (bootloader cho board có Flash 1G)
    - zImage_P35 (kernel cho board có màn hình P35)
    - rootfs_qtopia_qt4.img





- Bật Boot Mode switch của board sang NOR
- Bật nguồn
- Trên host vào chương trình minicom



- Bật Boot Mode switch sang NAND
- Bấm nút reset trên board

2.2 NOR dùng Superboot
Chuẩn bị:
+ SDCard format FAT32
+ Linux
    - FriendlyARM.ini
    - Superboot2440.bin
    - zImage_P35
    - rootfs_qtopia_qt4.img

Tất cả được đặt trong thư mục images trong sdcard



Nội dung FriendlyARM.ini:
 #This line cannot be removed. by FriendlyARM(www.arm9.net)  
 USBMode = No  
 Action = Install  
 OS = Linux  
 VerifyNandWrite = Yes  
 LowFormat = No  
 Status Type = Beeper| LED  
 # Linux part  
 Linux-BootLoader = Superboot2440.bin  
 Linux-Kernel = zImage_P35  
 Linux-CommandLine = noinitrd root=/dev/mtdblock3 init=/linuxrc console=ttySAC0   
 Linux-RootFs-InstallImage = rootfs_qtopia_qt4.img  


- Gắn sdcard lên board
- Bật Boot Mode switch sang NOR
- Bật nguồn board
- Mở minicom trên host để xem quá trình install
...
- Sau khi quá trình install hoàn tất, bật Boot Mode switch sang NAND
- Bấm nút reset trên board

Leave a Reply

Subscribe to Posts | Subscribe to Comments

- Copyright © Lập trình hệ thống nhúng Linux . Powered by Luong Duy Ninh -