[openwrt/openwrt] kirkwood: Add support for Sheevaplug
LEDE Commits
lede-commits at lists.infradead.org
Sun Jun 6 12:38:49 PDT 2021
adrian pushed a commit to openwrt/openwrt.git, branch master:
https://git.openwrt.org/03d66d6b8fa6660a89648847a69d691a9a82d5b4
commit 03d66d6b8fa6660a89648847a69d691a9a82d5b4
Author: BERENYI Balazs <balazs at wee.hu>
AuthorDate: Sat Jan 2 18:49:42 2021 +0000
kirkwood: Add support for Sheevaplug
Globalscale SheevaPlug:
* Marvell Kirkwood 88F6281
* 512 MB SDRAM
* 512 MB Flash
* Gigabit Network
* USB 2.0
* SD slot
* Serial console
The device is supported in mainline uboot/linux the commit adds only
some openwrt config for building an image.
Installation:
1 - Update uboot:
setenv ipaddr '192.168.0.111'
setenv serverip '192.168.0.1'
tftpboot u-boot.kwb
nand erase 0x0 0x100000
nand write 0x800000 0x0 0x100000
reset
2 - Install OpenWRT:
setenv ethaddr 00:50:43:01:xx:xx
saveenv
setenv ipaddr '192.168.0.111'
setenv serverip '192.168.0.1'
tftpboot openwrt-kirkwood-globalscale_sheevaplug-squashfs-factory.bin
nand erase.part ubi
nand write 0x800000 ubi 0x600000
reset
Signed-off-by: BERENYI Balazs <balazs at wee.hu>
Reviewed-by: Pawel Dembicki <paweldembicki at gmail.com>
[add vendor name for uboot-kirkwood, merge patches, copy to 5.10,
add AUTORELEASE for uboot-kirkwood, refresh patches]
Signed-off-by: Adrian Schmutzler <freifunk at adrianschmutzler.de>
---
package/boot/uboot-envtools/files/kirkwood | 1 +
package/boot/uboot-kirkwood/Makefile | 10 ++++-
.../uboot-kirkwood/patches/170-sheevaplug.patch | 39 ++++++++++++++++++
.../patches/200-openwrt-config.patch | 10 +++++
.../kirkwood/base-files/etc/board.d/02_network | 1 +
target/linux/kirkwood/image/Makefile | 7 ++++
.../kirkwood/patches-5.10/112-sheevaplug.patch | 47 ++++++++++++++++++++++
.../kirkwood/patches-5.4/112-sheevaplug.patch | 47 ++++++++++++++++++++++
8 files changed, 160 insertions(+), 2 deletions(-)
diff --git a/package/boot/uboot-envtools/files/kirkwood b/package/boot/uboot-envtools/files/kirkwood
index d1986f206d..6a3dfcaba8 100644
--- a/package/boot/uboot-envtools/files/kirkwood
+++ b/package/boot/uboot-envtools/files/kirkwood
@@ -15,6 +15,7 @@ case "$board" in
checkpoint,l-50|\
cloudengines,pogoe02|\
cloudengines,pogoplugv4|\
+globalscale,sheevaplug|\
iom,ix2-200|\
linksys,e4200-v2|\
linksys,ea4500|\
diff --git a/package/boot/uboot-kirkwood/Makefile b/package/boot/uboot-kirkwood/Makefile
index 1ed1743e21..d9cb10ce13 100644
--- a/package/boot/uboot-kirkwood/Makefile
+++ b/package/boot/uboot-kirkwood/Makefile
@@ -8,7 +8,7 @@
include $(TOPDIR)/rules.mk
PKG_VERSION:=2020.04
-PKG_RELEASE:=1
+PKG_RELEASE:=$(AUTORELEASE)
PKG_HASH:=fe732aaf037d9cc3c0909bad8362af366ae964bbdac6913a34081ff4ad565372
@@ -94,6 +94,11 @@ define U-Boot/pogoplugv4
BUILD_DEVICES:=cloudengines_pogoplugv4
endef
+define U-Boot/sheevaplug
+ NAME:=Globalscale SheevaPlug
+ BUILD_DEVICES:=globalscale_sheevaplug
+endef
+
UBOOT_TARGETS := \
dockstar dockstar_second_stage \
goflexhome \
@@ -105,7 +110,8 @@ UBOOT_TARGETS := \
nsa310s \
nsa325 \
pogo_e02 pogo_e02_second_stage \
- pogoplugv4
+ pogoplugv4 \
+ sheevaplug
define Build/Configure
$(if $(findstring _second_stage,$(BUILD_VARIANT)),
diff --git a/package/boot/uboot-kirkwood/patches/170-sheevaplug.patch b/package/boot/uboot-kirkwood/patches/170-sheevaplug.patch
new file mode 100644
index 0000000000..12b3e68d00
--- /dev/null
+++ b/package/boot/uboot-kirkwood/patches/170-sheevaplug.patch
@@ -0,0 +1,39 @@
+--- a/include/configs/sheevaplug.h
++++ b/include/configs/sheevaplug.h
+@@ -45,15 +45,17 @@
+ /*
+ * Default environment variables
+ */
+-#define CONFIG_BOOTCOMMAND "${x_bootcmd_kernel}; " \
+- "setenv bootargs ${x_bootargs} ${x_bootargs_root}; " \
+- "bootm 0x6400000;"
++#define CONFIG_BOOTCOMMAND \
++ "setenv bootargs ${console} ${mtdparts} ${bootargs_root}; " \
++ "ubi part ubi; " \
++ "ubi read 0x800000 kernel; " \
++ "bootm 0x800000"
+
+-#define CONFIG_EXTRA_ENV_SETTINGS "x_bootargs=console" \
+- "=ttyS0,115200 mtdparts="CONFIG_MTDPARTS_DEFAULT \
+- "x_bootcmd_kernel=nand read 0x6400000 0x100000 0x400000\0" \
+- "x_bootcmd_usb=usb start\0" \
+- "x_bootargs_root=root=/dev/mtdblock3 rw rootfstype=jffs2\0"
++#define CONFIG_EXTRA_ENV_SETTINGS \
++ "console=console=ttyS0,115200\0" \
++ "mtdids="CONFIG_MTDIDS_DEFAULT "\0" \
++ "mtdparts="CONFIG_MTDPARTS_DEFAULT "\0" \
++ "bootargs_root=\0"
+
+ /*
+ * Ethernet Driver configuration
+--- a/configs/sheevaplug_defconfig
++++ b/configs/sheevaplug_defconfig
+@@ -30,7 +30,7 @@ CONFIG_CMD_FAT=y
+ CONFIG_CMD_JFFS2=y
+ CONFIG_CMD_MTDPARTS=y
+ CONFIG_MTDIDS_DEFAULT="nand0=orion_nand"
+-CONFIG_MTDPARTS_DEFAULT="mtdparts=orion_nand:512K(uboot),512K(env),4M(kernel),-(rootfs)"
++CONFIG_MTDPARTS_DEFAULT="mtdparts=orion_nand:1M(uboot),-(ubi)"
+ CONFIG_CMD_UBI=y
+ CONFIG_ISO_PARTITION=y
+ CONFIG_OF_CONTROL=y
diff --git a/package/boot/uboot-kirkwood/patches/200-openwrt-config.patch b/package/boot/uboot-kirkwood/patches/200-openwrt-config.patch
index 83eb0f9d2c..ae9fdf3390 100644
--- a/package/boot/uboot-kirkwood/patches/200-openwrt-config.patch
+++ b/package/boot/uboot-kirkwood/patches/200-openwrt-config.patch
@@ -204,3 +204,13 @@
+#include "openwrt-kirkwood-common.h"
+
#endif /* _CONFIG_NSA310S_H */
+--- a/configs/sheevaplug_defconfig
++++ b/configs/sheevaplug_defconfig
+@@ -49,4 +49,7 @@
+ CONFIG_DM_USB=y
+ CONFIG_USB_EHCI_HCD=y
+ CONFIG_USB_STORAGE=y
++CONFIG_FIT=y
++CONFIG_FIT_VERBOSE=y
+ CONFIG_LZMA=y
++CONFIG_LZO=y
diff --git a/target/linux/kirkwood/base-files/etc/board.d/02_network b/target/linux/kirkwood/base-files/etc/board.d/02_network
index 0578691144..c379d13046 100644
--- a/target/linux/kirkwood/base-files/etc/board.d/02_network
+++ b/target/linux/kirkwood/base-files/etc/board.d/02_network
@@ -18,6 +18,7 @@ case "$board" in
;;
"cloudengines,pogoe02"|\
"cloudengines,pogoplugv4"|\
+"globalscale,sheevaplug"|\
"iom,iconnect-1.1"|\
"iom,ix2-200"|\
"raidsonic,ib-nas62x0"|\
diff --git a/target/linux/kirkwood/image/Makefile b/target/linux/kirkwood/image/Makefile
index e06eb050ef..c2c5bcab8f 100644
--- a/target/linux/kirkwood/image/Makefile
+++ b/target/linux/kirkwood/image/Makefile
@@ -67,6 +67,13 @@ define Device/cloudengines_pogoplugv4
endef
TARGET_DEVICES += cloudengines_pogoplugv4
+define Device/globalscale_sheevaplug
+ DEVICE_VENDOR := Globalscale
+ DEVICE_MODEL := Sheevaplug
+ DEVICE_PACKAGES := kmod-mvsdio
+endef
+TARGET_DEVICES += globalscale_sheevaplug
+
define Device/iom_iconnect-1.1
DEVICE_VENDOR := Iomega
DEVICE_MODEL := Iconnect
diff --git a/target/linux/kirkwood/patches-5.10/112-sheevaplug.patch b/target/linux/kirkwood/patches-5.10/112-sheevaplug.patch
new file mode 100644
index 0000000000..d1ff9884a0
--- /dev/null
+++ b/target/linux/kirkwood/patches-5.10/112-sheevaplug.patch
@@ -0,0 +1,47 @@
+--- a/arch/arm/boot/dts/kirkwood-sheevaplug-common.dtsi
++++ b/arch/arm/boot/dts/kirkwood-sheevaplug-common.dtsi
+@@ -78,13 +78,8 @@
+ };
+
+ partition at 100000 {
+- label = "uImage";
+- reg = <0x0100000 0x400000>;
+- };
+-
+- partition at 500000 {
+- label = "root";
+- reg = <0x0500000 0x1fb00000>;
++ label = "ubi";
++ reg = <0x0100000 0x1ff00000>;
+ };
+ };
+
+--- a/arch/arm/boot/dts/kirkwood-sheevaplug.dts
++++ b/arch/arm/boot/dts/kirkwood-sheevaplug.dts
+@@ -13,6 +13,13 @@
+ model = "Globalscale Technologies SheevaPlug";
+ compatible = "globalscale,sheevaplug", "marvell,kirkwood-88f6281", "marvell,kirkwood";
+
++ aliases {
++ led-boot = &led_health;
++ led-failsafe = &led_health;
++ led-running = &led_health;
++ led-upgrade = &led_health;
++ };
++
+ ocp at f1000000 {
+ mvsdio at 90000 {
+ pinctrl-0 = <&pmx_sdio>;
+@@ -28,10 +35,10 @@
+ pinctrl-0 = <&pmx_led_blue &pmx_led_red>;
+ pinctrl-names = "default";
+
+- health {
++ led_health: health {
+ label = "sheevaplug:blue:health";
+ gpios = <&gpio1 17 GPIO_ACTIVE_LOW>;
+- default-state = "keep";
++ default-state = "on";
+ };
+
+ misc {
diff --git a/target/linux/kirkwood/patches-5.4/112-sheevaplug.patch b/target/linux/kirkwood/patches-5.4/112-sheevaplug.patch
new file mode 100644
index 0000000000..d1ff9884a0
--- /dev/null
+++ b/target/linux/kirkwood/patches-5.4/112-sheevaplug.patch
@@ -0,0 +1,47 @@
+--- a/arch/arm/boot/dts/kirkwood-sheevaplug-common.dtsi
++++ b/arch/arm/boot/dts/kirkwood-sheevaplug-common.dtsi
+@@ -78,13 +78,8 @@
+ };
+
+ partition at 100000 {
+- label = "uImage";
+- reg = <0x0100000 0x400000>;
+- };
+-
+- partition at 500000 {
+- label = "root";
+- reg = <0x0500000 0x1fb00000>;
++ label = "ubi";
++ reg = <0x0100000 0x1ff00000>;
+ };
+ };
+
+--- a/arch/arm/boot/dts/kirkwood-sheevaplug.dts
++++ b/arch/arm/boot/dts/kirkwood-sheevaplug.dts
+@@ -13,6 +13,13 @@
+ model = "Globalscale Technologies SheevaPlug";
+ compatible = "globalscale,sheevaplug", "marvell,kirkwood-88f6281", "marvell,kirkwood";
+
++ aliases {
++ led-boot = &led_health;
++ led-failsafe = &led_health;
++ led-running = &led_health;
++ led-upgrade = &led_health;
++ };
++
+ ocp at f1000000 {
+ mvsdio at 90000 {
+ pinctrl-0 = <&pmx_sdio>;
+@@ -28,10 +35,10 @@
+ pinctrl-0 = <&pmx_led_blue &pmx_led_red>;
+ pinctrl-names = "default";
+
+- health {
++ led_health: health {
+ label = "sheevaplug:blue:health";
+ gpios = <&gpio1 17 GPIO_ACTIVE_LOW>;
+- default-state = "keep";
++ default-state = "on";
+ };
+
+ misc {
More information about the lede-commits
mailing list