README.kwbimage 3.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293
  1. ---------------------------------------------
  2. Kirkwood Boot Image generation using mkimage
  3. ---------------------------------------------
  4. This document describes the U-Boot feature as it
  5. is implemented for the Kirkwood family of SoCs.
  6. The Kirkwood SoC's can boot directly from NAND FLASH,
  7. SPI FLASH, SATA etc. using its internal bootRom support.
  8. for more details refer section 24.2 of Kirkwood functional specifications.
  9. ref: www.marvell.com/products/embedded.../kirkwood/index.jsp
  10. Command syntax:
  11. --------------
  12. ./tools/mkimage -l <kwboot_file>
  13. to list the kwb image file details
  14. ./tools/mkimage -n <board specific configuration file> \
  15. -T kwbimage -a <start address> -e <execution address> \
  16. -d <input_raw_binary> <output_kwboot_file>
  17. for ex.
  18. ./tools/mkimage -n ./board/Marvell/openrd_base/kwbimage.cfg \
  19. -T kwbimage -a 0x00600000 -e 0x00600000 \
  20. -d u-boot.bin u-boot.kwb
  21. kwimage support available with mkimage utility will generate kirkwood boot
  22. image that can be flashed on the board NAND/SPI flash
  23. Board specific configuration file specifications:
  24. ------------------------------------------------
  25. 1. This file must present in the $(BOARDDIR) and the name should be
  26. kwbimage.cfg (since this is used in Makefile)
  27. 2. This file can have empty lines and lines starting with "#" as first
  28. character to put comments
  29. 3. This file can have configuration command lines as mentioned below,
  30. any other information in this file is treated as invalid.
  31. Configuration command line syntax:
  32. ---------------------------------
  33. 1. Each command line is must have two strings, first one command or address
  34. and second one data string
  35. 2. Following are the valid command strings and associated data strings:-
  36. Command string data string
  37. -------------- -----------
  38. BOOT_FROM nand/spi/sata
  39. NAND_ECC_MODE default/rs/hamming/disabled
  40. NAND_PAGE_SIZE any uint16_t hex value
  41. SATA_PIO_MODE any uint32_t hex value
  42. DDR_INIT_DELAY any uint32_t hex value
  43. DATA regaddr and regdara hex value
  44. you can have maximum 55 such register programming commands
  45. 3. All commands are optional to program
  46. Typical example of kwimage.cfg file:
  47. -----------------------------------
  48. # Boot Media configurations
  49. BOOT_FROM nand
  50. NAND_ECC_MODE default
  51. NAND_PAGE_SIZE 0x0800
  52. # Configure RGMII-0 interface pad voltage to 1.8V
  53. DATA 0xFFD100e0 0x1b1b1b9b
  54. # DRAM Configuration
  55. DATA 0xFFD01400 0x43000c30
  56. DATA 0xFFD01404 0x37543000
  57. DATA 0xFFD01408 0x22125451
  58. DATA 0xFFD0140C 0x00000a33
  59. DATA 0xFFD01410 0x000000cc
  60. DATA 0xFFD01414 0x00000000
  61. DATA 0xFFD01418 0x00000000
  62. DATA 0xFFD0141C 0x00000C52
  63. DATA 0xFFD01420 0x00000040
  64. DATA 0xFFD01424 0x0000F17F
  65. DATA 0xFFD01428 0x00085520
  66. DATA 0xFFD0147C 0x00008552
  67. DATA 0xFFD01504 0x0FFFFFF1
  68. DATA 0xFFD01508 0x10000000
  69. DATA 0xFFD0150C 0x0FFFFFF5
  70. DATA 0xFFD01514 0x00000000
  71. DATA 0xFFD0151C 0x00000000
  72. DATA 0xFFD01494 0x00030000
  73. DATA 0xFFD01498 0x00000000
  74. DATA 0xFFD0149C 0x0000E803
  75. DATA 0xFFD01480 0x00000001
  76. # End of Header extension
  77. DATA 0x0 0x0
  78. ------------------------------------------------
  79. Author: Prafulla Wadaskar <prafulla@marvell.com>