|
|
Line 1: |
Line 1: |
− | == CM-X300 Firmware Update process ==
| + | #REDIRECT [[CM-X300: U-Boot: Firmware Update]] |
− | | |
− | === Preliminary ===
| |
− | Some basic steps are needed to be taken in order to update the CM-X300 firmware successfully:
| |
− | * Make sure to power off the CM-X300 board
| |
− | * Connect one end of the supplied serial cable to your module's base board and the other one to your host system
| |
− | * Start terminal console application on your host system and configure the following:
| |
− | ** Set the serial port to one with the attached cable
| |
− | ** Set baud rate to 38400 bps
| |
− | ** 8 bit per frame
| |
− | ** 1 stop bit
| |
− | ** no parity
| |
− | ** no flow control
| |
− | * Turn the CM-X300 board on
| |
− | * Now you should get the U-Boot command prompt in your terminal application
| |
− | {{Note| If you have an operating system installed or U-Boot environment configured for auto boot, you will have to stop the auto boot sequence by pressing any key in your terminal application during the start of the boot process!}}
| |
− | U-Boot firmware could be updated either from [[CM-X300_U-Boot_Update#USB_flash_drive|USB flash drive]] (with FAT filesystem), or from [[CM-X300_U-Boot_Update#Network_tftp_download|Network tftp download]].
| |
− | Either method is done from U-Boot command line.
| |
− | | |
− | === USB flash drive ===
| |
− | {{Note| Please, connect your flash drive directly to the base board of the module! Do not use any USB hubs or other separating equipment!}}
| |
− | To update the U-Boot firmware via USB flash drive, follow the instructions precisely!
| |
− | * Start the U-Boot USB subsystem and check that your storage device is ready and contains the firmware
| |
− | ** Type: ''usb start''
| |
− | ** Type: ''fatls usb 0'' to ensure you have the firmware in place
| |
− | <pre>
| |
− | U-Boot> usb start
| |
− | (Re)start USB...
| |
− | USB: scanning bus for devices... 2 USB Device(s) found
| |
− | scanning bus for storage devices... 1 Storage Device(s) found
| |
− | U-Boot> fatls usb 0
| |
− | 524288 cm-x300-firmware
| |
− | | |
− | 1 file(s), 0 dir(s)
| |
− | </pre>
| |
− | | |
− | * Load the firmware to memory
| |
− | ** Type: ''fatload usb 0 80a00000 <firmware filename>''
| |
− | | |
− | <pre>
| |
− | U-Boot> fatload usb 0 80a00000 cm-x300-firmware | |
− | reading cm-x300-firmware
| |
− | | |
− | 524288 bytes read
| |
− | </pre>
| |
− | * Proceed to [[CM-X300_U-Boot_Update#Update_process|Update process]] section
| |
− | | |
− | === Network tftp download ===
| |
− | In order to use this update method, you need:
| |
− | * TFTP service/server installed on your host system
| |
− | * Firmware file should reside in the root directory of TFTP service
| |
− | To update the U-Boot firmware via tftp download, follow the instructions precisely!
| |
− | * Download the firmware to module's memory
| |
− | ** Type: ''tftp 80a00000 <firmware filename>''
| |
− | <pre>
| |
− | U-Boot> tftp 80a00000 cm-x300-firmware
| |
− | dm9000 i/o: 0x8000010, id: 0x90000a46
| |
− | DM9000: running in 16 bit mode
| |
− | MAC: 00:01:c0:05:20:be
| |
− | operating at 100M full duplex mode
| |
− | TFTP from server 10.1.1.13; our IP address is 10.1.1.144
| |
− | Filename 'cm-x300-firmware'.
| |
− | Load address: 0x80a00000
| |
− | Loading: ####################################
| |
− | done
| |
− | Bytes transferred = 524288 (80000 hex)
| |
− | </pre>
| |
− | * Proceed to [[CM-X300_U-Boot_Update#Update_process|Update process]] section
| |
− | {{Note| If you get the "''could not establish link''" message, check that your ethernet plugs are in place and try again.}}
| |
− | | |
− | === Update process ===
| |
− | {{Warning| DO NOT RESET OR POWER OFF THE MODULE DURING THE UPDATE PROCESS! DOING SO MAY RESULT IN DISABLED MODULE!}}
| |
− | | |
− | * Flash the firmware to onboard NAND storage
| |
− | ** Type: ''nand erase 0 80000''
| |
− | ** Type: ''nand write 80a00000 0 80000''
| |
− | <pre>
| |
− | U-Boot> nand erase 0 80000
| |
− | | |
− | NAND erase: device 0 offset 0x0, size 0x80000
| |
− | Erasing at 0x60000 -- 100% complete.
| |
− | OK
| |
− | U-Boot> nand write 80a00000 0 80000
| |
− | | |
− | NAND write: device 0 offset 0x0, size 0x80000
| |
− | 524288 bytes written: OK
| |
− | </pre>
| |
− | * Now you may reset the board
| |
− | | |
− | {{Important|In case you use Windows CE and you update U-Boot, you will need to load the ImageUdater after the U-Boot update. There is no need to install the image again. This will update the NAND flash metadata that is crucial for Windows CE.}}
| |
− | | |
− | == See also ==
| |
− | | |
− | * [[U-Boot quick reference]]
| |
− | * [[U-Boot images]]
| |
− | * [[Getting started with Linux on CM-X300]]
| |
− | * [http://www.denx.de/wiki/U-Boot/Documentation U-Boot documentation]
| |