|
|
| 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]
| |