From 13d6fa008189f8c5a6b9c68ffc9afb665e7e878a Mon Sep 17 00:00:00 2001 From: Jonas Gorski Date: Mon, 24 Nov 2014 14:44:19 +0000 Subject: [PATCH] brcm63xx: Add DT support for A226G/M MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit Signed-off-by: Álvaro Fernández Rojas SVN-Revision: 43359 --- target/linux/brcm63xx/dts/a226g.dts | 30 +++++++++++++++++++ target/linux/brcm63xx/dts/a226m-fwb.dts | 30 +++++++++++++++++++ target/linux/brcm63xx/dts/a226m.dts | 30 +++++++++++++++++++ target/linux/brcm63xx/image/Makefile | 22 ++++---------- ...ulate-the-compatible-to-board_info-l.patch | 3 +- target/linux/brcm63xx/profiles/pirelli.mk | 19 ++++++++++++ 6 files changed, 116 insertions(+), 18 deletions(-) create mode 100644 target/linux/brcm63xx/dts/a226g.dts create mode 100644 target/linux/brcm63xx/dts/a226m-fwb.dts create mode 100644 target/linux/brcm63xx/dts/a226m.dts diff --git a/target/linux/brcm63xx/dts/a226g.dts b/target/linux/brcm63xx/dts/a226g.dts new file mode 100644 index 0000000000..9aff81bad0 --- /dev/null +++ b/target/linux/brcm63xx/dts/a226g.dts @@ -0,0 +1,30 @@ +/dts-v1/; + +/include/ "bcm6358.dtsi" + +/ { + model = "Pirelli A226G"; + compatible = "pirelli,a226g", "brcm,bcm6358"; +}; + +&pflash { + status = "ok"; + + linux,part-probe = "bcm63xxpart"; + + cfe@0 { + label = "CFE"; + reg = <0x000000 0x010000>; + read-only; + }; + + linux@10000 { + label = "linux"; + reg = <0x010000 0x7e0000>; + }; + + nvram@7f0000 { + label = "nvram"; + reg = <0x7f0000 0x010000>; + }; +}; diff --git a/target/linux/brcm63xx/dts/a226m-fwb.dts b/target/linux/brcm63xx/dts/a226m-fwb.dts new file mode 100644 index 0000000000..1abf8707ed --- /dev/null +++ b/target/linux/brcm63xx/dts/a226m-fwb.dts @@ -0,0 +1,30 @@ +/dts-v1/; + +/include/ "bcm6358.dtsi" + +/ { + model = "Pirelli A226M-FWB"; + compatible = "pirelli,a226m-fwb", "brcm,bcm6358"; +}; + +&pflash { + status = "ok"; + + linux,part-probe = "bcm63xxpart"; + + cfe@0 { + label = "CFE"; + reg = <0x000000 0x020000>; + read-only; + }; + + linux@20000 { + label = "linux"; + reg = <0x020000 0xfc0000>; + }; + + nvram@fe0000 { + label = "nvram"; + reg = <0xfe0000 0x020000>; + }; +}; diff --git a/target/linux/brcm63xx/dts/a226m.dts b/target/linux/brcm63xx/dts/a226m.dts new file mode 100644 index 0000000000..ba6382eccd --- /dev/null +++ b/target/linux/brcm63xx/dts/a226m.dts @@ -0,0 +1,30 @@ +/dts-v1/; + +/include/ "bcm6358.dtsi" + +/ { + model = "Pirelli A226M"; + compatible = "pirelli,a226m", "brcm,bcm6358"; +}; + +&pflash { + status = "ok"; + + linux,part-probe = "bcm63xxpart"; + + cfe@0 { + label = "CFE"; + reg = <0x000000 0x010000>; + read-only; + }; + + linux@10000 { + label = "linux"; + reg = <0x010000 0x7e0000>; + }; + + nvram@7f0000 { + label = "nvram"; + reg = <0x7f0000 0x010000>; + }; +}; diff --git a/target/linux/brcm63xx/image/Makefile b/target/linux/brcm63xx/image/Makefile index 2b57fcd985..9f0227c7d3 100755 --- a/target/linux/brcm63xx/image/Makefile +++ b/target/linux/brcm63xx/image/Makefile @@ -71,16 +71,6 @@ define Image/Build/ZYXCFEDTB rm -f $(BIN_DIR)/openwrt-$(5)-$(1).tmp endef -define Image/Build/CFEAGPF - # Generate the tagged image - $(STAGING_DIR_HOST)/bin/imagetag -i $(KDIR)/vmlinux.lzma.cfe -f $(KDIR)/root.$(1) \ - --output $(BIN_DIR)/openwrt-$(5)-$(1)-cfe.bin \ - --boardid $(2) --chipid $(3) --entry $(LOADADDR) \ - --load-addr $(LOADADDR) --tag-version 8 \ - --signature2 IMAGE --block-size 0x20000 \ - --image-offset $(4) --info1 "-$(call Image/LimitName16,$(5))" --info2 $(1) -endef - define Image/Build/RG100A # Generate the tagged image $(STAGING_DIR_HOST)/bin/imagetag -i $(KDIR)/vmlinux.lzma.cfe -f $(KDIR)/root.$(1) \ @@ -288,13 +278,6 @@ define Image/Build $(call Image/Build/CFE,$(1),F@ST2704V2,6328,F@ST2704V2,OpenWRT-$(REVISION)) # Inventel Livebox $(call Image/Build/RedBoot,livebox) - # Pirelli A226G - $(call Image/Build/CFEAGPF,$(1),DWV-S0,6358,0x10000,A226G-cfe) - $(call Image/Build/CFEAGPF,$(1),DWV-S0,6358,0x10000,A226G) - - # Pirelli A226M - $(call Image/Build/CFEAGPF,$(1),DWV-S0,6358,0x20000,A226M-cfe) - $(call Image/Build/CFEAGPF,$(1),DWV-S0,6358,0x20000,A226M) # RG100A,DB120 etc. $(call Image/Build/RG100A,$(1),96358VW2,6358,0x20000,RG100A_DB120) @@ -387,6 +370,11 @@ $(eval $(call CfeImageDTB,HG556a_AB,hg556a-b,HW556,6358,HG556a_B,EchoLife_HG556a $(eval $(call CfeImageDTB,HG556a_C,hg556a-c,HW556,6358,HG556a_C,EchoLife_HG556a,--image-offset 0x20000 --block-size 0x20000 --tag-version 8)) # Pirelli Alice Gate VoIP 2 Plus Wi-Fi AGPF-S0 $(eval $(call CfeImageDTB,AGPF_S0,agpf-s0,AGPF-S0,6358,AGV2+W,,--block-size 0x20000 --image-offset 0x20000 --signature2 IMAGE --tag-version 8)) +# Pirelli A226G +$(eval $(call CfeImageDTB,A226G,a226g,DWV-S0,6358,A226G,,--signature2 IMAGE --tag-version 8)) +# Pirelli A226M/A226M-FWB +$(eval $(call CfeImageDTB,A226M,a226m,DWV-S0,6358,A226M,,--signature2 IMAGE --tag-version 8)) +$(eval $(call CfeImageDTB,A226M,a226m-fwb,DWV-S0,6358,A226M-FWB,,--block-size 0x20000 --image-offset 0x20000 --signature2 IMAGE --tag-version 8)) # T-Com Speedport W 500V $(eval $(call CfeImageDTB,SPW500V,spw500v,96348GW,6348,SPW500V)) # Tecom GW6000 diff --git a/target/linux/brcm63xx/patches-3.14/369-MIPS-BCM63XX-populate-the-compatible-to-board_info-l.patch b/target/linux/brcm63xx/patches-3.14/369-MIPS-BCM63XX-populate-the-compatible-to-board_info-l.patch index d65a808dd5..3ae3b94482 100644 --- a/target/linux/brcm63xx/patches-3.14/369-MIPS-BCM63XX-populate-the-compatible-to-board_info-l.patch +++ b/target/linux/brcm63xx/patches-3.14/369-MIPS-BCM63XX-populate-the-compatible-to-board_info-l.patch @@ -14,7 +14,7 @@ Signed-off-by: Jonas Gorski --- a/arch/mips/bcm63xx/boards/board_bcm963xx.c +++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c -@@ -736,6 +736,41 @@ static const struct board_info __initcon +@@ -736,6 +736,42 @@ static const struct board_info __initcon }; static struct of_device_id const bcm963xx_boards_dt[] = { @@ -45,6 +45,7 @@ Signed-off-by: Jonas Gorski + { .compatible = "brcm,bcm96358vw2", .data = &board_96358vw2, }, + { .compatible = "pirelli,a226g", .data = &board_DWVS0, }, + { .compatible = "pirelli,a226m", .data = &board_DWVS0, }, ++ { .compatible = "pirelli,a226m-fwb", .data = &board_DWVS0, }, + { .compatible = "pirelli,agpf-s0", .data = &board_AGPFS0, }, +#endif +#ifdef CONFIG_BCM63XX_CPU_6368 diff --git a/target/linux/brcm63xx/profiles/pirelli.mk b/target/linux/brcm63xx/profiles/pirelli.mk index c06852eaf2..58617199d0 100644 --- a/target/linux/brcm63xx/profiles/pirelli.mk +++ b/target/linux/brcm63xx/profiles/pirelli.mk @@ -5,6 +5,25 @@ # See /LICENSE for more information. # +define Profile/A226G + NAME:=Pirelli A226G + PACKAGES:=kmod-b43 wpad-mini\ + kmod-usb2 kmod-usb-ohci +endef +define Profile/A226G/Description + Package set optimized for A226G. +endef +$(eval $(call Profile,A226G)) + +define Profile/A226M + NAME:=Pirelli A226M/A226M-FWB + PACKAGES:=kmod-usb2 kmod-usb-ohci +endef +define Profile/A226M/Description + Package set optimized for A226M/A226M-FWB. +endef +$(eval $(call Profile,A226M)) + define Profile/AGPF_S0 NAME:=Pirelli Alice Gate VoIP 2 Plus Wi-Fi AGPF-S0 PACKAGES:=kmod-b43 wpad-mini\ -- 2.30.2