aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/layerscape
diff options
context:
space:
mode:
authorWojciech Dubowik <Wojciech.Dubowik@protonmail.ch>2022-07-19 13:35:12 +0200
committerHauke Mehrtens <hauke@hauke-m.de>2023-05-07 14:50:50 +0200
commit924a5aabc708d2ab84ae9c05a580db75b188534f (patch)
treea5a43ef85849c900121213b45943b910bee6c2b7 /target/linux/layerscape
parent7700a6f8266cb12fbfd32456a3ae8181bc1cf347 (diff)
downloadupstream-924a5aabc708d2ab84ae9c05a580db75b188534f.tar.gz
upstream-924a5aabc708d2ab84ae9c05a580db75b188534f.tar.bz2
upstream-924a5aabc708d2ab84ae9c05a580db75b188534f.zip
layerscape: Add ls1028ardb support
Add support for NXP LS1028ARDB reference board. It's a dual core Coretex-A53 board with 4G RAM and 5 Eternet ports (4 ports are connected to MSCC Felix switch). The original layout of NXP board has been kept but firmware images are adapted to be more sysupgrade friendly. At the moment NOR and SD boots are supported. NOR flash instructions: * make sd card with sdboot image * boot * write firmware image to spi flash $ mtd write /tmp/openwrt-layerscape-armv8_64b-fsl_ls1028a-rdb- squashfs-firmware.bin /dev/mtd0 * change jumper to NOR boot and reset V3: * Added board specific network defaults for lan/wan v2: * Added INA220 curent monitor, PCF2129 RTC clock and NXP SA56004ED temperature sensor to default packages * removed compat fixups for thist board Signed-off-by: Wojciech Dubowik <Wojciech.Dubowik@protonmail.ch>
Diffstat (limited to 'target/linux/layerscape')
-rw-r--r--target/linux/layerscape/README10
-rw-r--r--target/linux/layerscape/base-files/etc/board.d/02_network4
-rw-r--r--target/linux/layerscape/base-files/lib/preinit/79_move_config1
-rw-r--r--target/linux/layerscape/base-files/lib/upgrade/platform.sh5
-rw-r--r--target/linux/layerscape/image/armv8_64b.mk47
5 files changed, 67 insertions, 0 deletions
diff --git a/target/linux/layerscape/README b/target/linux/layerscape/README
index a8d1846468..1e3f707b4f 100644
--- a/target/linux/layerscape/README
+++ b/target/linux/layerscape/README
@@ -12,6 +12,7 @@ users can bring up the board without difficulty.
LS1012ARDB (QSPI NOR boot)
LS1012AFRDM (QSPI NOR boot)
LS1012AFRWY (QSPI NOR boot)
+ LS1028ARDB (QSPI NOR boot | SD card boot)
LS1043ARDB (NOR boot | SD card boot)
LS1046ARDB (QSPI NOR boot | SD card boot)
LS1046AFRWY (QSPI NOR boot | SD card boot)
@@ -95,6 +96,15 @@ from SD card. (sdcard.img images are gz-iped to save space. Please extract them
=> sf write a0000000 0 $filesize
=> reset
+* LS1028ARDB
+ Board has only one bank. Those commands will replace stock bootloader
+ and firmware.
+ => tftp a0000000 <firmware_name>-firmware.bin
+ => sf probe 0:0
+ => sf erase 0 +$filesize
+ => sf write a0000000 0 $filesize
+ => reset
+
* LS1043ARDB
Start up from bank0, and program firmware to bank4 with below commands.
Switch to bank4 to start up OpenWrt.
diff --git a/target/linux/layerscape/base-files/etc/board.d/02_network b/target/linux/layerscape/base-files/etc/board.d/02_network
index b46f0b0621..172172c12c 100644
--- a/target/linux/layerscape/base-files/etc/board.d/02_network
+++ b/target/linux/layerscape/base-files/etc/board.d/02_network
@@ -5,6 +5,10 @@
board_config_update
case "$(board_name)" in
+ fsl,ls1028a-rdb|\
+ fsl,ls1028a-rdb-sdboot)
+ ucidef_set_interfaces_lan_wan "swp0 swp1 swp2 swp3" "eth0"
+ ;;
traverse,ls1043v)
ucidef_set_interface_lan "eth0 eth1 eth2 eth3"
ucidef_set_interface_wan "eth4"
diff --git a/target/linux/layerscape/base-files/lib/preinit/79_move_config b/target/linux/layerscape/base-files/lib/preinit/79_move_config
index 901a289b66..5519e059d9 100644
--- a/target/linux/layerscape/base-files/lib/preinit/79_move_config
+++ b/target/linux/layerscape/base-files/lib/preinit/79_move_config
@@ -10,6 +10,7 @@ move_config() {
fsl,ls1012a-frwy-sdboot | \
fsl,ls1021a-iot-sdboot | \
fsl,ls1021a-twr-sdboot | \
+ fsl,ls1028a-rdb-sdboot | \
fsl,ls1043a-rdb-sdboot | \
fsl,ls1046a-frwy-sdboot | \
fsl,ls1046a-rdb-sdboot | \
diff --git a/target/linux/layerscape/base-files/lib/upgrade/platform.sh b/target/linux/layerscape/base-files/lib/upgrade/platform.sh
index 857be5a744..e88dfdf145 100644
--- a/target/linux/layerscape/base-files/lib/upgrade/platform.sh
+++ b/target/linux/layerscape/base-files/lib/upgrade/platform.sh
@@ -71,6 +71,7 @@ platform_copy_config() {
fsl,ls1012a-frwy-sdboot | \
fsl,ls1021a-iot-sdboot | \
fsl,ls1021a-twr-sdboot | \
+ fsl,ls1028a-rdb-sdboot | \
fsl,ls1043a-rdb-sdboot | \
fsl,ls1046a-frwy-sdboot | \
fsl,ls1046a-rdb-sdboot | \
@@ -95,6 +96,8 @@ platform_check_image() {
fsl,ls1021a-iot-sdboot | \
fsl,ls1021a-twr | \
fsl,ls1021a-twr-sdboot | \
+ fsl,ls1028a-rdb | \
+ fsl,ls1028a-rdb-sdboot | \
fsl,ls1043a-rdb | \
fsl,ls1043a-rdb-sdboot | \
fsl,ls1046a-frwy | \
@@ -130,6 +133,7 @@ platform_do_upgrade() {
fsl,ls1012a-frdm | \
fsl,ls1012a-rdb | \
fsl,ls1021a-twr | \
+ fsl,ls1028a-rdb | \
fsl,ls1043a-rdb | \
fsl,ls1046a-frwy | \
fsl,ls1046a-rdb | \
@@ -142,6 +146,7 @@ platform_do_upgrade() {
fsl,ls1012a-frwy-sdboot | \
fsl,ls1021a-iot-sdboot | \
fsl,ls1021a-twr-sdboot | \
+ fsl,ls1028a-rdb-sdboot | \
fsl,ls1043a-rdb-sdboot | \
fsl,ls1046a-frwy-sdboot | \
fsl,ls1046a-rdb-sdboot | \
diff --git a/target/linux/layerscape/image/armv8_64b.mk b/target/linux/layerscape/image/armv8_64b.mk
index 4a69f1c19e..f5a6a055fb 100644
--- a/target/linux/layerscape/image/armv8_64b.mk
+++ b/target/linux/layerscape/image/armv8_64b.mk
@@ -98,6 +98,53 @@ define Device/fsl_ls1012a-frwy-sdboot
endef
TARGET_DEVICES += fsl_ls1012a-frwy-sdboot
+define Device/fsl_ls1028a-rdb
+ DEVICE_VENDOR := NXP
+ DEVICE_MODEL := LS1028A-RDB
+ DEVICE_VARIANT := Default
+ DEVICE_DTS := freescale/fsl-ls1028a-rdb
+ KERNEL = kernel-bin | gzip | fit gzip $$(DTS_DIR)/$$(DEVICE_DTS).dtb
+ DEVICE_PACKAGES += \
+ trusted-firmware-a-ls1028a-rdb \
+ kmod-hwmon-ina2xx \
+ kmod-hwmon-lm90 \
+ kmod-rtc-pcf2127
+ IMAGE/firmware.bin := \
+ ls-clean | \
+ ls-append $(1)-bl2.pbl | pad-to 1M | \
+ ls-append $(1)-fip.bin | pad-to 5M | \
+ ls-append $(1)-uboot-env.bin | pad-to 16M | \
+ append-kernel | \
+ append-rootfs | pad-rootfs | check-size
+ IMAGE/sysupgrade.bin := \
+ append-kernel | \
+ append-rootfs | pad-rootfs | \
+ check-size $(LS_SYSUPGRADE_IMAGE_SIZE) | append-metadata
+endef
+TARGET_DEVICES += fsl_ls1028a-rdb
+
+define Device/fsl_ls1028a-rdb-sdboot
+ $(Device/fsl-sdboot)
+ DEVICE_VENDOR := NXP
+ DEVICE_MODEL := LS1028A-RDB
+ DEVICE_VARIANT := SD Card Boot
+ DEVICE_DTS := freescale/fsl-ls1028a-rdb
+ DEVICE_PACKAGES += \
+ trusted-firmware-a-ls1028a-rdb-sdboot \
+ kmod-hwmon-ina2xx \
+ kmod-hwmon-lm90 \
+ kmod-rtc-pcf2127
+ IMAGE/sdcard.img.gz := \
+ ls-clean | \
+ ls-append-sdhead $(1) | pad-to 4K | \
+ ls-append $(1)-bl2.pbl | pad-to 1M | \
+ ls-append $(1)-fip.bin | pad-to 5M | \
+ ls-append $(1)-uboot-env.bin | pad-to 16M | \
+ ls-append-kernel | pad-to $(LS_SD_ROOTFSPART_OFFSET)M | \
+ append-rootfs | pad-to $(LS_SD_IMAGE_SIZE)M | gzip
+endef
+TARGET_DEVICES += fsl_ls1028a-rdb-sdboot
+
define Device/fsl_ls1043a-rdb
$(Device/fix-sysupgrade)
DEVICE_VENDOR := NXP