README 5.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151
  1. Layerscape Quick Start
  2. 1. Layerscape target support
  3. ----------------------------
  4. * ARMv8 64-bit
  5. LS1012ARDB LS1012AFRDM LS1043ARDB LS1046ARDB LS1088ARDB LS2088ARDB
  6. * ARMv8 32-bit
  7. LS1012ARDB LS1012AFRDM LS1043ARDB LS1046ARDB
  8. 2. Build
  9. --------
  10. 2.1 make menuconfig
  11. -------------------
  12. * For single device
  13. Target System: "NXP Layerscape".
  14. Subtarget: "ARMv8 64-bit based boards" or "ARMv8 32-bit based boards"
  15. Target Profile: (select device you want to build)
  16. For example, build firmware for 64-bit ls1043ardb.
  17. +---------------------------------------------+
  18. | Target System (NXP Layerscape) ---> |
  19. |---------------------------------------------|
  20. | Subtarget (ARMv8 64-bit based boards) ---> |
  21. |---------------------------------------------|
  22. | Target Profile (ls1043ardb-armv8_64b) ---> |
  23. +---------------------------------------------+
  24. * For multiple devices
  25. Target System: "NXP Layerscape".
  26. Subtarget: "ARMv8 64-bit based boards" or "ARMv8 32-bit based boards"
  27. Target Profile: "Multiple devices"
  28. Target Devices: (select devices you want to build)
  29. For example, build firmware for all 64-bit devices.
  30. Target Devices --->
  31. +-----------------------------------------------------------------+
  32. | [*] Enable all profiles by default |
  33. |-----------------------------------------------------------------|
  34. | [ ] Use a per-device root filesystem that adds profile packages |
  35. |-----------------------------------------------------------------|
  36. | [*] ls1012afrdm-armv8_64b ---- |
  37. |-----------------------------------------------------------------|
  38. | [*] ls1012ardb-armv8_64b ---- |
  39. |-----------------------------------------------------------------|
  40. | [*] ls1043ardb-armv8_64b ---- |
  41. |-----------------------------------------------------------------|
  42. | [*] ls1046ardb-armv8_64b ---- |
  43. |-----------------------------------------------------------------|
  44. | [*] ls1088ardb-armv8_64b ---- |
  45. |-----------------------------------------------------------------|
  46. | [*] ls2088ardb-armv8_64b ---- |
  47. +-----------------------------------------------------------------+
  48. Note: per-device root filesystem hasn't been supported for now.
  49. 2.2 make (or make -j<n>)
  50. ------------------------
  51. 2.3 Final firmware
  52. ------------------
  53. Final firmware would be in bin/targets/layerscape/<subtarget>/, and
  54. named as lede-layerscape-<subtarget>-<device>-squashfs-firmware.bin.
  55. 3. Program firmware to NOR/QSPI flash
  56. -------------------------------------
  57. * LS1043ARDB (NOR flash)
  58. Start up from bank0, and program firmware to bank4 with below commands.
  59. Switch to bank4 to start up LEDE.
  60. => tftp a0000000 lede-layerscape-<subtarget>-<device>-squashfs-firmware.bin
  61. => protect off all
  62. => erase 64000000 +$filesize
  63. => cp.b a0000000 64000000 $filesize
  64. => cpld reset altbank
  65. * LS2088ARDB (NOR flash)
  66. Start up from bank0, and program firmware to bank4 with below commands.
  67. Switch to bank4 to start up LEDE.
  68. => tftp a0000000 lede-layerscape-<subtarget>-<device>-squashfs-firmware.bin
  69. => protect off all
  70. => erase 584000000 +$filesize
  71. => cp.b a0000000 584000000 $filesize
  72. => qix altbank
  73. * LS1012ARDB (QSPI flash)
  74. Start up from bank1, and program firmware to bank2 with below commands.
  75. Switch to bank2 to start up LEDE.
  76. => tftp a0000000 lede-layerscape-<subtarget>-<device>-squashfs-firmware.bin
  77. => i2c mw 0x24 0x7 0xfc;i2c mw 0x24 0x3 0xf5
  78. => sf probe 0:0
  79. => sf erase 0 +$filesize
  80. => sf write a0000000 0 $filesize
  81. => reset
  82. * LS1012AFRDM (QSPI flash)
  83. LS1012AFRDM board only has one bank. Start up board, and program firmware
  84. with below commands. Reset to start up LEDE.
  85. => tftp 96000000 lede-layerscape-<subtarget>-<device>-squashfs-firmware.bin
  86. => sf probe 0:0
  87. => sf erase 0 +$filesize
  88. => sf write 96000000 0 $filesize
  89. => reset
  90. * LS1046ARDB (QSPI flash)
  91. Start up from bank1, and program firmware to bank2 with below commands.
  92. Switch to bank2 to start up LEDE.
  93. => tftp a0000000 lede-layerscape-<subtarget>-<device>-squashfs-firmware.bin
  94. => sf probe 0:1
  95. => sf erase 0 +$filesize
  96. => sf write a0000000 0 $filesize
  97. => cpld reset altbank
  98. * LS1088ARDB (QSPI flash)
  99. Start up from bank0, and program firmware to bank1 with below commands.
  100. Switch to bank1 to start up LEDE.
  101. => tftp a0000000 lede-layerscape-<subtarget>-<device>-squashfs-firmware.bin
  102. => sf probe 0:1
  103. => sf erase 0 +$filesize
  104. => sf write a0000000 0 $filesize
  105. => qix altbank
  106. Note: old version u-boot of ls1088ardb may use below commands to switch to
  107. bank1 instead of 'qix altbank'.
  108. => i2c mw 66 50 20;i2c mw 66 10 20;i2c mw 66 10 21
  109. 4. Other references and sources
  110. -------------------------------
  111. - NXP LSDK site: https://lsdk.github.io/
  112. - NXP LSDK github: https://github.com/qoriq-open-source
  113. - LEDE documentation: https://lede-project.org/docs/start