aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux
diff options
context:
space:
mode:
Diffstat (limited to 'target/linux')
-rw-r--r--target/linux/layerscape/README151
1 files changed, 151 insertions, 0 deletions
diff --git a/target/linux/layerscape/README b/target/linux/layerscape/README
new file mode 100644
index 0000000000..eaeee32e8c
--- /dev/null
+++ b/target/linux/layerscape/README
@@ -0,0 +1,151 @@
+
+Layerscape Quick Start
+
+1. Layerscape target support
+----------------------------
+* ARMv8 64-bit
+ LS1012ARDB LS1012AFRDM LS1043ARDB LS1046ARDB LS1088ARDB LS2088ARDB
+
+* ARMv8 32-bit
+ LS1012ARDB LS1012AFRDM LS1043ARDB LS1046ARDB
+
+
+2. Build
+--------
+
+2.1 make menuconfig
+-------------------
+* For single device
+
+ Target System: "NXP Layerscape".
+ Subtarget: "ARMv8 64-bit based boards" or "ARMv8 32-bit based boards"
+ Target Profile: (select device you want to build)
+
+ For example, build firmware for 64-bit ls1043ardb.
+ +---------------------------------------------+
+ | Target System (NXP Layerscape) ---> |
+ |---------------------------------------------|
+ | Subtarget (ARMv8 64-bit based boards) ---> |
+ |---------------------------------------------|
+ | Target Profile (ls1043ardb-armv8_64b) ---> |
+ +---------------------------------------------+
+
+* For multiple devices
+
+ Target System: "NXP Layerscape".
+ Subtarget: "ARMv8 64-bit based boards" or "ARMv8 32-bit based boards"
+ Target Profile: "Multiple devices"
+ Target Devices: (select devices you want to build)
+
+ For example, build firmware for all 64-bit devices.
+ Target Devices --->
+ +-----------------------------------------------------------------+
+ | [*] Enable all profiles by default |
+ |-----------------------------------------------------------------|
+ | [ ] Use a per-device root filesystem that adds profile packages |
+ |-----------------------------------------------------------------|
+ | [*] ls1012afrdm-armv8_64b ---- |
+ |-----------------------------------------------------------------|
+ | [*] ls1012ardb-armv8_64b ---- |
+ |-----------------------------------------------------------------|
+ | [*] ls1043ardb-armv8_64b ---- |
+ |-----------------------------------------------------------------|
+ | [*] ls1046ardb-armv8_64b ---- |
+ |-----------------------------------------------------------------|
+ | [*] ls1088ardb-armv8_64b ---- |
+ |-----------------------------------------------------------------|
+ | [*] ls2088ardb-armv8_64b ---- |
+ +-----------------------------------------------------------------+
+
+ Note: per-device root filesystem hasn't been supported for now.
+
+2.2 make (or make -j<n>)
+------------------------
+
+2.3 Final firmware
+------------------
+Final firmware would be in bin/targets/layerscape/<subtarget>/, and
+named as lede-layerscape-<subtarget>-<device>-squashfs-firmware.bin.
+
+
+3. Program firmware to NOR/QSPI flash
+-------------------------------------
+* LS1043ARDB (NOR flash)
+
+ Start up from bank0, and program firmware to bank4 with below commands.
+ Switch to bank4 to start up LEDE.
+
+ => tftp a0000000 lede-layerscape-<subtarget>-<device>-squashfs-firmware.bin
+ => protect off all
+ => erase 64000000 +$filesize
+ => cp.b a0000000 64000000 $filesize
+ => cpld reset altbank
+
+* LS2088ARDB (NOR flash)
+
+ Start up from bank0, and program firmware to bank4 with below commands.
+ Switch to bank4 to start up LEDE.
+
+ => tftp a0000000 lede-layerscape-<subtarget>-<device>-squashfs-firmware.bin
+ => protect off all
+ => erase 584000000 +$filesize
+ => cp.b a0000000 584000000 $filesize
+ => qix altbank
+
+* LS1012ARDB (QSPI flash)
+
+ Start up from bank1, and program firmware to bank2 with below commands.
+ Switch to bank2 to start up LEDE.
+
+ => tftp a0000000 lede-layerscape-<subtarget>-<device>-squashfs-firmware.bin
+ => i2c mw 0x24 0x7 0xfc;i2c mw 0x24 0x3 0xf5
+ => sf probe 0:0
+ => sf erase 0 +$filesize
+ => sf write a0000000 0 $filesize
+ => reset
+
+* LS1012AFRDM (QSPI flash)
+
+ LS1012AFRDM board only has one bank. Start up board, and program firmware
+ with below commands. Reset to start up LEDE.
+
+ => tftp 96000000 lede-layerscape-<subtarget>-<device>-squashfs-firmware.bin
+ => sf probe 0:0
+ => sf erase 0 +$filesize
+ => sf write 96000000 0 $filesize
+ => reset
+
+* LS1046ARDB (QSPI flash)
+
+ Start up from bank1, and program firmware to bank2 with below commands.
+ Switch to bank2 to start up LEDE.
+
+ => tftp a0000000 lede-layerscape-<subtarget>-<device>-squashfs-firmware.bin
+ => sf probe 0:1
+ => sf erase 0 +$filesize
+ => sf write a0000000 0 $filesize
+ => cpld reset altbank
+
+* LS1088ARDB (QSPI flash)
+
+ Start up from bank0, and program firmware to bank1 with below commands.
+ Switch to bank1 to start up LEDE.
+
+ => tftp a0000000 lede-layerscape-<subtarget>-<device>-squashfs-firmware.bin
+ => sf probe 0:1
+ => sf erase 0 +$filesize
+ => sf write a0000000 0 $filesize
+ => qix altbank
+
+ Note: old version u-boot of ls1088ardb may use below commands to switch to
+ bank1 instead of 'qix altbank'.
+ => i2c mw 66 50 20;i2c mw 66 10 20;i2c mw 66 10 21
+
+
+4. Other references and sources
+-------------------------------
+- NXP LSDK site: https://lsdk.github.io/
+
+- NXP LSDK github: https://github.com/qoriq-open-source
+
+- LEDE documentation: https://lede-project.org/docs/start