[OpenWrt-Devel] [PATCH v2 5/6] brcm63xx: Add DT support for SPW303V

Álvaro Fernández Rojas noltari at gmail.com
Sat Nov 22 10:15:24 EST 2014


Signed-off-by: Álvaro Fernández Rojas <noltari at gmail.com>
---
diff --git a/target/linux/brcm63xx/dts/spw303v.dts b/target/linux/brcm63xx/dts/spw303v.dts
new file mode 100644
index 0000000..664ad7b
--- /dev/null
+++ b/target/linux/brcm63xx/dts/spw303v.dts
@@ -0,0 +1,30 @@
+/dts-v1/;
+
+/include/ "bcm6358.dtsi"
+
+/ {
+	model = "T-Com Speedport W303 V";
+	compatible = "t-com,spw303v", "brcm,bcm6358";
+};
+
+&pflash {
+	status = "ok";
+
+	linux,part-probe = "bcm63xxpart";
+
+	cfe at 0 {
+		label = "CFE";
+		reg = <0x000000 0x010000>;
+		read-only;
+	};
+
+	linux at 10000 {
+		label = "linux";
+		reg = <0x010000 0x7e0000>;
+	};
+
+	nvram at 7f0000 {
+		label = "nvram";
+		reg = <0x7f0000 0x010000>;
+	};
+};
diff --git a/target/linux/brcm63xx/image/Makefile b/target/linux/brcm63xx/image/Makefile
index fc290c6..f82c864 100755
--- a/target/linux/brcm63xx/image/Makefile
+++ b/target/linux/brcm63xx/image/Makefile
@@ -64,6 +64,20 @@ define Image/Build/OLDCFEDTB
 		-o $(BIN_DIR)/openwrt-$(5)-$(1)-cfe.bin $(6)
 endef
 
+define Image/Build/SPW303VCFEDTB
+	# Generate the tagged image
+	$(STAGING_DIR_HOST)/bin/imagetag -i $(KDIR)/vmlinux-$(2).lzma.cfe -f $(KDIR)/root.$(1) \
+		--output $(BIN_DIR)/openwrt-$(5)-$(1).tmp \
+		--boardid $(3) --chipid $(4) --entry $(KERNEL_ENTRY) \
+		--load-addr $(LOADADDR) --rsa-signature "$(6)" $(7)
+	# Fix up header
+	$(STAGING_DIR_HOST)/bin/spw303v -i $(BIN_DIR)/openwrt-$(5)-$(1).tmp \
+		-o $(BIN_DIR)/openwrt-$(5)-$(1)-cfe-sysupgrade.bin
+	$(STAGING_DIR_HOST)/bin/xorimage -i $(BIN_DIR)/openwrt-$(5)-$(1)-cfe-sysupgrade.bin \
+		-o $(BIN_DIR)/openwrt-$(5)-$(1)-cfe-factory.bin
+	rm -f $(BIN_DIR)/openwrt-$(5)-$(1).tmp
+endef
+
 define Image/Build/ZYXCFEDTB
 	# Generate the tagged image
 	$(STAGING_DIR_HOST)/bin/imagetag -i $(KDIR)/vmlinux-$(2).lzma.cfe -f $(KDIR)/root.$(1) \
@@ -86,21 +100,6 @@ define Image/Build/RedBoot
 	dd if=$(KDIR)/vmlinux.bin.gz of=$(BIN_DIR)/openwrt-$(1)-vmlinux.gz bs=65536 conv=sync
 endef
 
-define Image/Build/SPW303V
-	# Generate the tagged image
-	$(STAGING_DIR_HOST)/bin/imagetag -i $(KDIR)/vmlinux.lzma.cfe -f $(KDIR)/root.$(1) \
-		--output $(BIN_DIR)/openwrt-$(4)-$(1)-cfe.bin.tmp \
-		--boardid $(2) --chipid $(3) --entry $(KERNEL_ENTRY) \
-		--load-addr $(LOADADDR) --rsa-signature "$(5)" \
-		--pad 4 $(6) $(7) $(8) $(9)
-	# Fix up header
-	$(STAGING_DIR_HOST)/bin/spw303v -i $(BIN_DIR)/openwrt-$(4)-$(1)-cfe.bin.tmp \
-		-o $(BIN_DIR)/openwrt-$(4)-$(1)-cfe-sysupgrade.bin
-	$(STAGING_DIR_HOST)/bin/xorimage -i $(BIN_DIR)/openwrt-$(4)-$(1)-cfe-sysupgrade.bin \
-		-o $(BIN_DIR)/openwrt-$(4)-$(1)-cfe-factory.bin
-	rm -f $(BIN_DIR)/openwrt-$(4)-$(1)-cfe.bin.tmp
-endef
-
 define Image/Build/HCS
 	$(STAGING_DIR_HOST)/bin/hcsmakeimage --magic_byte=$(3) \
 		--rev_maj=$(4) --rev_min=$(5) --input_file=$(6) \
@@ -216,6 +215,24 @@ endef
 # $(5) = imagename
 # $(6) = rsa signature
 # $(7) = additional options
+define Spw303vCfeImageDTB
+  define Image/Build/$(5)
+    $$(call Image/Build/SPW303VCFEDTB,$$(1),$(2),$(3),$(4),$(5),$(6),$(7))
+  endef
+
+  TARGET_Default_DTBS += $(2)
+  TARGET_Default_IMAGES += $(5)
+  TARGET_$(1)_DTBS += $(2)
+  TARGET_$(1)_IMAGES += $(5)
+endef
+
+# $(1) = Profile
+# $(2) = dtb
+# $(3) = boardname
+# $(4) = chipid
+# $(5) = imagename
+# $(6) = rsa signature
+# $(7) = additional options
 define ZyxCfeImageDTB
   define Image/Build/$(5)
     $$(call Image/Build/ZYXCFEDTB,$$(1),$(2),$(3),$(4),$(5),$(6),$(7))
@@ -287,9 +304,6 @@ define Image/Build
 	# Telsey CPVA642-type (e.g. CPA-ZNTE60T)
 	$(call Image/Build/CFE,$(1),CPVA642,6358,CPA-ZNTE60T,,--signature "Telsey Tlc",--signature2 "99.99.999",--second-image-flag "0")
 
-	# T-Com Speedport W 303V Typ B
-	$(call Image/Build/SPW303V,$(1),96358-502V,6358,SPW303V)
-
 	# Netgear CVG834G
 	$(call Image/Build/HCS,$(1),cvg834g,a020,0001,0022,$(KDIR)/vmlinux)
 
@@ -381,6 +395,8 @@ $(eval $(call CfeImageDTB,A226G,a226g,DWV-S0,6358,A226G,,--signature2 IMAGE --ta
 # 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 303V Typ B
+$(eval $(call Spw303vCfeImageDTB,SPW303V,spw303v,96358-502V,6358,SPW303V,,--pad 4))
 # T-Com Speedport W 500V
 $(eval $(call CfeImageDTB,SPW500V,spw500v,96348GW,6348,SPW500V))
 # Tecom GW6000
diff --git a/target/linux/brcm63xx/patches-3.14/510-board_spw303v.patch b/target/linux/brcm63xx/patches-3.14/510-board_spw303v.patch
index 3912399..b371694 100644
--- a/target/linux/brcm63xx/patches-3.14/510-board_spw303v.patch
+++ b/target/linux/brcm63xx/patches-3.14/510-board_spw303v.patch
@@ -81,3 +81,11 @@
  #endif
  };
  
+@@ -1663,6 +2063,7 @@ static struct of_device_id const bcm963x
+ 	{ .compatible = "pirelli,agpf-s0", .data = &board_AGPFS0, },
+ 	{ .compatible = "sfr,nb4-ser-r0", .data = &board_nb4_ser_r0, },
+ 	{ .compatible = "sfr,nb4-fxc-r1", .data = &board_nb4_fxc_r1, },
++	{ .compatible = "t-com,spw303v", .data = &board_spw303v, },
+ #endif
+ #ifdef CONFIG_BCM63XX_CPU_6368
+ #endif
diff --git a/target/linux/brcm63xx/profiles/t-com.mk b/target/linux/brcm63xx/profiles/t-com.mk
index fe78c06..f1eaf0a 100644
--- a/target/linux/brcm63xx/profiles/t-com.mk
+++ b/target/linux/brcm63xx/profiles/t-com.mk
@@ -5,6 +5,16 @@
 # See /LICENSE for more information.
 #
 
+define Profile/SPW303V
+  NAME:=T-Com Speedport W 303V
+  PACKAGES:=kmod-b43 wpad-mini
+endef
+define Profile/SPW303V/Description
+  Package set optimized for SPW303V.
+endef
+$(eval $(call Profile,SPW303V))
+
+
 define Profile/SPW500V
   NAME:=T-Com Speedport W 500V
   PACKAGES:=kmod-b43 wpad-mini
_______________________________________________
openwrt-devel mailing list
openwrt-devel at lists.openwrt.org
https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel



More information about the openwrt-devel mailing list