Migrating STM32F4 SOM to Release 2.0.0 |
|
This note explains how to upgrade the STM32F4 SOM running earlier release to Release 2.0.0. The procedure below assumes that you have configured networking in U-Boot and placed the release 2.0.0 images to the TFTP directory on your host.
Note that the layout of the Flash partitions has changed in Release 2.0.0. If you are using the JFFS2 partition (/dev/mtd2), preserve it contents (for example, using NFS mount) before running the upgrade.
- Reboot and stop at the U-Boot prompt:
U-Boot 2010.03-cortexm-1.14.2 (Sep 04 2015 - 20:31:28) CPU : STM32F4 (Cortex-M4) Freqs: SYSCLK=180MHz,HCLK=180MHz,PCLK1=45MHz,PCLK2=90MHz Board: STM-SOM Rev 2.A, www.emcraft.com DRAM: 32 MB Flash: 16 MB In: serial Out: serial Err: serial Net: STM32_MAC Hit any key to stop autoboot: 0 STM32F4X9-SOM>
- Update the U-Boot image. The system will reset, stop at the U-Boot prompt.
STM32F4X9-SOM> tftp psl/stmf4/cm-2.0.0/u-boot.bin Auto-negotiation...completed. STM32_MAC: link UP (100/Half) Using STM32_MAC device TFTP from server 172.17.0.1; our IP address is 172.17.4.206 Filename 'psl/stmf4/cm-2.0.0/u-boot.bin'. Load address: 0xc0007fc0 Loading: ######## done Bytes transferred = 115784 (1c448 hex) STM32F4X9-SOM> cptf 0x08000000 ${loadaddr} ${filesize} 1 cptf: Updating eNVM. Please wait ... U-Boot 2010.03-cortexm-2.0.0 (May 12 2016 - 14:15:19) CPU : STM32F4 (Cortex-M4) Freqs: SYSCLK=180MHz,HCLK=180MHz,PCLK1=45MHz,PCLK2=90MHz Board: STM-SOM Rev 2.A, www.emcraft.com DRAM: 32 MB Flash: 16 MB In: serial Out: serial Err: serial Net: STM32_MAC Hit any key to stop autoboot: 0 STM32F4X9-SOM>
- Update the load address in RAM:
STM32F4X9-SOM> print loadaddr loadaddr=0xC0007FC0 STM32F4X9-SOM> setenv loadaddr 0xC0007FB4 STM32F4X9-SOM> savee Saving Environment to Flash... . done Un-Protected 1 sectors Erasing Flash... . done Erased 1 sectors Writing to Flash... done . done Protected 1 sectors STM32F4X9-SOM>
- Update the Linux image in the NOR Flash:
STM32F4X9-SOM> setenv image psl/stmf4/cm-2.0.0/rootfs.uImage STM32F4X9-SOM> run update Auto-negotiation...completed. STM32_MAC: link UP (100/Half) Using STM32_MAC device TFTP from server 172.17.0.1; our IP address is 172.17.4.206 Filename 'psl/stmf4/cm-2.0.0/rootfs.uImage'. Load address: 0xc0007fb4 Loading: ######################################################################## ######################################################################## ######################################################################## ######################################################################## ######################################################################## ############################## done Bytes transferred = 5735684 (578504 hex) ............................................ done Un-Protected 44 sectors ............................................ done Erased 44 sectors Copy to Flash... done Saving Environment to Flash... . done Un-Protected 1 sectors Erasing Flash... . done Erased 1 sectors Writing to Flash... done . done Protected 1 sectors STM32F4X9-SOM>
- Reset and boot the new Linux image:
U-Boot 2010.03-cortexm-2.0.0 (May 12 2016 - 14:15:19) CPU: STM32F4 (Cortex-M4) Freqs: SYSCLK=180MHz,HCLK=180MHz,PCLK1=45MHz,PCLK2=90MHz Board: STM-SOM Rev 2.A, www.emcraft.com DRAM: 32 MB Flash: 16 MB In: serial Out: serial Err: serial Net: STM32_MAC Hit any key to stop autoboot: 0 ## Booting kernel from Legacy Image at c0007fb4 ... Image Name: Linux-4.2.0-cortexm-2.0.0 Image Type: ARM Linux Multi-File Image (uncompressed) Data Size: 5735620 Bytes = 5.5 MB Load Address: c0008000 Entry Point: c0008001 Contents: Image 0: 5718576 Bytes = 5.5 MB Image 1: 17032 Bytes = 16.6 kB Verifying Checksum ... OK ## Flattened Device Tree from multi component Image at C0007FB4 Booting using the fdt at 0xc057c230 Loading Multi-File Image ... OK OK Loading Device Tree to c1ff8000, end c1fff287 ... OK Starting kernel ... Booting Linux on physical CPU 0x0 Linux version 4.2.0-cortexm-2.0.0 (
This e-mail address is being protected from spambots. You need JavaScript enabled to view it
)(gcc version 4.4.1 (Sourcery G++ Lite 2010q1-189) ) #1 Thu May 12 14:57:40 +0400 2016 ... Freeing unused kernel memory: 2652K (c02bb000 - c0552000) init started: BusyBox v1.17.0 (2016-05-12 14:56:35 +0400) / #
|