U-Boot-2011.12: Difference between revisions
From ArmadeusWiki
|  (Test FPGA download OK sur apf51) | No edit summary | ||
| (22 intermediate revisions by 2 users not shown) | |||
| Line 1: | Line 1: | ||
| == | ==Status== | ||
| *  | * Please check [[U-Boot-2012.04]] that is now the default U-Boot version for all the APF boards | ||
| ==Features/Status== | ==Features/Status== | ||
| Line 47: | Line 30: | ||
| | || || ||  ||     ||     | | || || ||  ||     ||     | ||
| |---------------- | |---------------- | ||
| |'''U-Boot power on''' || style="background:#00ff00;" | U-Boot 2011.12...<br />I2C:   ready<br />DRAM:  16 MiB<br />Flash: 8 MiB<br />In:    serial<br />Out:   serial<br />Err:   serial<br />Net:   dm9000 || style="background:#00ff00;" | U-Boot 2011.12... <br />Freescale i.MX28 family<br />DRAM:  128 MiB<br />NAND:  256 MiB<br />MMC:   MXS MMC: 0<br />In:    serial<br />Out:   serial<br />Err:   serial<br />Net:   FEC0 || style="background:# | |'''U-Boot power on''' || style="background:#00ff00;" | U-Boot 2011.12...<br />I2C:   ready<br />DRAM:  16 MiB<br />Flash: 8 MiB<br />In:    serial<br />Out:   serial<br />Err:   serial<br />Net:   dm9000 || style="background:#00ff00;" | U-Boot 2011.12... <br />Freescale i.MX28 family<br />DRAM:  128 MiB<br />NAND:  256 MiB<br />MMC:   MXS MMC: 0<br />In:    serial<br />Out:   serial<br />Err:   serial<br />Net:   FEC0 || style="background:#00ff00;" | U-Boot 2011.12..<br />CPU:   Freescale i.MX27 at 399 MHz<br />Armadeus APF27<br />DRAM:  64 MiB<br />NAND:  256 MiB || style="background:#00ff00;" | U-Boot 2011.12...<br />I2C:   ready<br />DRAM:  256-512 MiB<br />NAND:  512 MiB<br />In:    serial<br />Out:   serial<br />Err:   serial<br />Net:   FEC | ||
| || power on the board and check the boot log of the board | || power on the board and check the boot log of the board | ||
| |---------------- | |---------------- | ||
| |'''NOR/NAND flash''' || style="background:#00ff00;" | 8 MiB||  style="background:#00ff00;" |  256MiB-2GiB || style="background:# | |'''NOR/NAND flash''' || style="background:#00ff00;" | 8 MiB||  style="background:#00ff00;" |  256MiB-2GiB || style="background:#00ff00;" | 256MiB-2GiB  || style="background:#00ff00;" | 512MiB-4GiB || startup sceen shall display:<br />Flash: xx MiB | ||
| |---------------- | |||
| |'''RAM''' || style="background:#00ff00;" | 16/32 MiB||  style="background:#00ff00;" |  128MiB-512MiB|| style="background:#00ff00;" | 64-256MiB  || style="background:#00ff00;" | 256-512MiB || startup sceen shall display:<br />DRAM:  16 MiB | |||
| |---------------- | |---------------- | ||
| |''' | |'''Ethernet driver''' || style="background:#00ff00;" | dm9000||  style="background:#00ff00;" |  FEC0 || style="background:#00ff00;" |  FEC || style="background:#00ff00;" | FEC || startup sceen shall display:<br />Net:   <DRIVER> | ||
| |---------------- | |---------------- | ||
| |'''Ethernet  | |'''Ethernet MAC''' || style="background:#00ff00;" | dm9000 read<br />00000000: 1e00 00ac|| style="background:#00ff00;" | bdinfo<br />...<br />ethaddr     = 00:1e:ac:... || style="background:#00ff00;" | imxfuse mac<br />iMX mac_addr in fuse: 00:1e:ac:... || style="background:#00ff00;" | iim read fecmac<br />FEC MAC address: 0x00:0x1e:0xac:...|| test the presence of the MAC address in EEPROM/fuses <br /> the command bdinfo should return a valid mac address | ||
| |---------------- | |---------------- | ||
| |''' | |'''Default IP''' || style="background:#00ff00;" | ||  style="background:#00ff00;" | || style="background:#00ff00;" |  || style="background:#00ff00;" | ||  the default IP variables should be:<br /> ipaddr=192.168.0.10<br /> netmask=255.255.255.0<br /> serverip=192.168.0.2<br /> gatewayip=192.168.0.1<br /> use the "flash_reset_env" script<br />to restore the default environment variables | ||
| |---------------- | |---------------- | ||
| |''' | |'''DHCP''' || style="background:#00ff00;" | || style="background:#00ff00;" | || style="background:#00ff00;" |  || style="background:#00ff00;" | ||  the command "DHCP" should be able<br />to update IP environment variables according<br /> to your network and DHCP server | ||
| |---------------- | |---------------- | ||
| |''' | |'''Ping''' || style="background:#00ff00;" | || style="background:#00ff00;" | || style="background:#00ff00;" |  || style="background:#00ff00;" | ||  set ipaddr & serverip according to your network.<br />Test the connection to the server: <br />ping ${serverip} should return the status "alive"  | ||
| |---------------- | |---------------- | ||
| |''' | |'''Board reset''' ||style="background:#00ff00;" | || style="background:#00ff00;" | ||  style="background:#00ff00;" | || style="background:#00ff00;" |  || command "reset" shall reset the board | ||
| |---------------- | |---------------- | ||
| |''' | |'''TFTP''' || style="background:#00ff00;" | || style="background:#00ff00;" |  || style="background:#00ff00;" |  || style="background:#00ff00;" | ||  the command "run download_uboot" should <br />UBoot from the host PC into the target RAM | ||
| |---------------- | |---------------- | ||
| |''' | |'''NFS''' || style="background:#00ff00;" | || style="background:#00ff00;" | || style="background:#00ff00;" |  || style="background:#00ff00;" | || the command <br />"nfs ${loadaddr} ${serverip}:/tftpboot/${board_name}-linux.bin" should download<br />linux kernel from the host PC into the target RAM | ||
| |---------------- | |---------------- | ||
| |''' | |'''Board upgrade scripts''' ||style="background:#00ff00;" | || style="background:#00ff00;" | ||  style="background:#00ff00;" | || style="background:#00ff00;" |  || use the hereafter scripts to update the software of the board:<br /> run update_all<br />run flash_reset_env | ||
| |---------------- | |---------------- | ||
| |''' | |'''I2C''' || style="background:#00ff00;" | 38 76 7F || postponed || postponed || not supported  : unreliable - device detected randomly ||  startup sceen shall display:<br />I2C:   ready<br />the command "i2c probe" should return the list<br />of devices on the i2c bus of the board | ||
| |---------------- | |---------------- | ||
| |''' | |'''linux boot from flash''' || style="background:#00ff00;" |  || style="background:#00ff00;" | || style="background:#00ff00;" |  || style="background:#00ff00;" | ||  the command "boot" should start linux and rootfs from flash<br />the linux login should be "armadeus login: " | ||
| |---------------- | |---------------- | ||
| |''' | |'''NFS boot (rootfs)''' || style="background:#00ff00;" | ||  style="background:#00ff00;" | || style="background:#00ff00;" |   || style="background:#00ff00;" | ||  http://www.armadeus.com/wiki/index.php?title=Nfs#Boot_from_NFS <br /> the command "run nfsboot" should start linux using <br />rootfs over a NFS shared drive on <br />your host server ${serverip} | ||
| |---------------- | |---------------- | ||
| |''' | |''' rootfs on SD/MMC''' || style="background:#00ff00;" | || style="background:#00ff00;" | || style="background:#00ff00;" | || style="background:#00ff00;" |  ||  http://www.armadeus.com/wiki/index.php?title=MultiMediaCard#Booting_from_MMC.2FSD  <br /> the command "run mmcboot" should start linux using <br />a rootfs on your sd/mmc memory card | ||
| |---------------- | |---------------- | ||
| |'''  | |'''Flash lock/unlock''' || style="background:#00ff00;" | || Not Applicable ||  style="background:#00ff00;" | || style="background:#00ff00;" | ||  For APF9328: <br />protect on all<br />erase ${env_addr} +${env_len} <br />-> - Warning: 1 protected sectors will not be erased!<br />protect off all<br />erase ${env_addr} +${env_len} <br />-> no warning - erase done<br /> other apf boards:<br />nand lock; nand erase.part kernel<br />Should not erase the kernel partion<br />(error message, system hang or no message)<br /> | ||
| boot linux<br />to confirm nand integrity -> kernel should start | |||
| |---------------- | |---------------- | ||
| |''' | |'''Env compatibility change''' || style="background:#00ff00;" | ||  style="background:#00ff00;" | || style="background:#00ff00;" | ||  style="background:#00ff00;" | || force a new environment version and check <br />the warning on next reboot:<br />setenv env_version 0<br />saveenv<br />reset<br />=> *** Warning - Environment version change suggests:<br />run flash_reset_env; reset | ||
| |---------------- | |---------------- | ||
| |''' | |'''FPGA control''' || style="background:#00ff00;" | blinking_led_<br />apf9328_200k.bit || Not Applicable  || style="background:#00ff00;" | blinking_led_<br />apf27_200k.bit || style="background:#00ff00;" | blinking_led_<br />apf51_lx9.bin ||   the command "fpga info 0" should indicate<br /> the presence of the spartan 3 <br />Test FPGA download with the blinking_led bit file of your board:<br />tftpboot ${loadaddr} blinking_led_apfxxxx_xxxk.bit<br />fpga load 0 ${loadaddr} ${filesize}<br /> should make the LED blinking without error | ||
| |---------------- | |---------------- | ||
| |''' | |'''Firmware autoload''' || style="background:#00ff00;" | || Not Applicable|| style="background:#00ff00;" |  || style="background:#00ff00;" |  ||  run flash_firmware<br />setenv firmware_autoload 1<br />saveenv<br /><power off>/<power on> the board<br />LED should blink after a couple of seconds and<br />UBoot should continue countdown to boot linux | ||
| |---------------- | |---------------- | ||
| |''' | |'''imxfuse commands''' || Not Applicable || style="background:#00ffff;" | ocotp  || style="background:#ffff00;" | imxfuse mac... || style="background:#00ff00;" | iim blow fecmac... || Use production tool to blow a MAC address | ||
| |---------------- | |---------------- | ||
| |''' | |'''Detect RAM SIze''' || Not Applicable || style="background:#00ff00;" | 128MiB || not supported || style="background:#00ff00;" |  Board rev 1 with 512MiB || Using the default UBoot config test the given<br /> config is correct during boot | ||
| |---------------- | |---------------- | ||
| |'''PAR cleared''' || style="background:#00ff00;" | || || style="background:# | |'''PAR cleared''' || style="background:#00ff00;" | || Not Applicable || style="background:#00ff00;" | || Not Applicable ||   run unlock_regs; boot<br />once logged on linux try the command<br />imxregs<br />should display imx register value instead of any error like "Unhandled fault" | ||
| |---------------- | |---------------- | ||
| |'''NETCONSOLE''' || not supported || not supported || not supported  || not supported || [[Ethernet_console]] | |'''NETCONSOLE''' || not supported || not supported || not supported  || not supported || [[Ethernet_console]] | ||
Latest revision as of 23:50, 18 June 2012
Status
- Please check U-Boot-2012.04 that is now the default U-Boot version for all the APF boards
Features/Status
| Status | Legend Color | 
| Test passed | |
| Compilation or runtime test failed | |
| To be tested | |
| Optional/not activated by default | |
| NA/not supported | 
| Feature | Status | Test case | |||
|---|---|---|---|---|---|
| boards | apf9328 | apf28 | apf27 | apf51 | |
| U-Boot power on | U-Boot 2011.12... I2C: ready DRAM: 16 MiB Flash: 8 MiB In: serial Out: serial Err: serial Net: dm9000 | U-Boot 2011.12... Freescale i.MX28 family DRAM: 128 MiB NAND: 256 MiB MMC: MXS MMC: 0 In: serial Out: serial Err: serial Net: FEC0 | U-Boot 2011.12.. CPU: Freescale i.MX27 at 399 MHz Armadeus APF27 DRAM: 64 MiB NAND: 256 MiB | U-Boot 2011.12... I2C: ready DRAM: 256-512 MiB NAND: 512 MiB In: serial Out: serial Err: serial Net: FEC | power on the board and check the boot log of the board | 
| NOR/NAND flash | 8 MiB | 256MiB-2GiB | 256MiB-2GiB | 512MiB-4GiB | startup sceen shall display: Flash: xx MiB | 
| RAM | 16/32 MiB | 128MiB-512MiB | 64-256MiB | 256-512MiB | startup sceen shall display: DRAM: 16 MiB | 
| Ethernet driver | dm9000 | FEC0 | FEC | FEC | startup sceen shall display: Net: <DRIVER> | 
| Ethernet MAC | dm9000 read 00000000: 1e00 00ac | bdinfo ... ethaddr = 00:1e:ac:... | imxfuse mac iMX mac_addr in fuse: 00:1e:ac:... | iim read fecmac FEC MAC address: 0x00:0x1e:0xac:... | test the presence of the MAC address in EEPROM/fuses the command bdinfo should return a valid mac address | 
| Default IP | the default IP variables should be: ipaddr=192.168.0.10 netmask=255.255.255.0 serverip=192.168.0.2 gatewayip=192.168.0.1 use the "flash_reset_env" script to restore the default environment variables | ||||
| DHCP | the command "DHCP" should be able to update IP environment variables according to your network and DHCP server | ||||
| Ping | set ipaddr & serverip according to your network. Test the connection to the server: ping ${serverip} should return the status "alive" | ||||
| Board reset | command "reset" shall reset the board | ||||
| TFTP | the command "run download_uboot" should UBoot from the host PC into the target RAM | ||||
| NFS | the command "nfs ${loadaddr} ${serverip}:/tftpboot/${board_name}-linux.bin" should download linux kernel from the host PC into the target RAM | ||||
| Board upgrade scripts | use the hereafter scripts to update the software of the board: run update_all run flash_reset_env | ||||
| I2C | 38 76 7F | postponed | postponed | not supported : unreliable - device detected randomly | startup sceen shall display: I2C: ready the command "i2c probe" should return the list of devices on the i2c bus of the board | 
| linux boot from flash | the command "boot" should start linux and rootfs from flash the linux login should be "armadeus login: " | ||||
| NFS boot (rootfs) | http://www.armadeus.com/wiki/index.php?title=Nfs#Boot_from_NFS the command "run nfsboot" should start linux using rootfs over a NFS shared drive on your host server ${serverip} | ||||
| rootfs on SD/MMC | http://www.armadeus.com/wiki/index.php?title=MultiMediaCard#Booting_from_MMC.2FSD the command "run mmcboot" should start linux using a rootfs on your sd/mmc memory card | ||||
| Flash lock/unlock | Not Applicable | For APF9328: protect on all erase ${env_addr} +${env_len} -> - Warning: 1 protected sectors will not be erased! protect off all erase ${env_addr} +${env_len} -> no warning - erase done other apf boards: nand lock; nand erase.part kernel Should not erase the kernel partion (error message, system hang or no message) boot linux | |||
| Env compatibility change | force a new environment version and check the warning on next reboot: setenv env_version 0 saveenv reset => *** Warning - Environment version change suggests: run flash_reset_env; reset | ||||
| FPGA control | blinking_led_ apf9328_200k.bit | Not Applicable | blinking_led_ apf27_200k.bit | blinking_led_ apf51_lx9.bin | the command "fpga info 0" should indicate the presence of the spartan 3 Test FPGA download with the blinking_led bit file of your board: tftpboot ${loadaddr} blinking_led_apfxxxx_xxxk.bit fpga load 0 ${loadaddr} ${filesize} should make the LED blinking without error | 
| Firmware autoload | Not Applicable | run flash_firmware setenv firmware_autoload 1 saveenv <power off>/<power on> the board LED should blink after a couple of seconds and UBoot should continue countdown to boot linux | |||
| imxfuse commands | Not Applicable | ocotp | imxfuse mac... | iim blow fecmac... | Use production tool to blow a MAC address | 
| Detect RAM SIze | Not Applicable | 128MiB | not supported | Board rev 1 with 512MiB | Using the default UBoot config test the given config is correct during boot | 
| PAR cleared | Not Applicable | Not Applicable | run unlock_regs; boot once logged on linux try the command imxregs should display imx register value instead of any error like "Unhandled fault" | ||
| NETCONSOLE | not supported | not supported | not supported | not supported | Ethernet_console | 
| LCD | not supported | not supported | not supported | not supported | |
| SPI | not supported | not supported | not supported | not supported | |
| USB | not supported | not supported | not supported | not supported | |

