mirror of
				git://git.openwrt.org/openwrt/openwrt.git
				synced 2025-11-04 06:54:27 -05:00 
			
		
		
		
	bcm53xx: backport BCM5301X/BCM53573 dts commits from 4.19+
This includes Linksys EA9500 support, BCM53573 timer fix and upstream-ready partitions patch that replaces two downstream hacks. Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
This commit is contained in:
		
							parent
							
								
									8a175ea219
								
							
						
					
					
						commit
						a07730472c
					
				@ -327,7 +327,7 @@ platform_do_upgrade() {
 | 
				
			|||||||
	case "$file_type" in
 | 
						case "$file_type" in
 | 
				
			||||||
		"chk")		cmd=$(platform_trx_from_chk_cmd "$trx");;
 | 
							"chk")		cmd=$(platform_trx_from_chk_cmd "$trx");;
 | 
				
			||||||
		"cybertan")	cmd=$(platform_trx_from_cybertan_cmd "$trx");;
 | 
							"cybertan")	cmd=$(platform_trx_from_cybertan_cmd "$trx");;
 | 
				
			||||||
		"safeloader")	trx=$(platform_img_from_safeloader "$trx");;
 | 
							"safeloader")	trx=$(platform_img_from_safeloader "$trx"); PART_NAME=os-image;;
 | 
				
			||||||
		"seama")	trx=$(platform_img_from_seama "$trx");;
 | 
							"seama")	trx=$(platform_img_from_seama "$trx");;
 | 
				
			||||||
	esac
 | 
						esac
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
				
			|||||||
@ -0,0 +1,34 @@
 | 
				
			|||||||
 | 
					From a21e7548438f3a8f59f9b9f3a8bc973613d3726a Mon Sep 17 00:00:00 2001
 | 
				
			||||||
 | 
					From: =?UTF-8?q?Rafa=C5=82=20Mi=C5=82ecki?= <rafal@milecki.pl>
 | 
				
			||||||
 | 
					Date: Thu, 14 Jun 2018 18:41:47 +0200
 | 
				
			||||||
 | 
					Subject: [PATCH] ARM: dts: BCM53573: Add architected timer
 | 
				
			||||||
 | 
					MIME-Version: 1.0
 | 
				
			||||||
 | 
					Content-Type: text/plain; charset=UTF-8
 | 
				
			||||||
 | 
					Content-Transfer-Encoding: 8bit
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					It's a standard ARM architected timer that was simply missed when
 | 
				
			||||||
 | 
					initially adding this .dtsi file.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
 | 
				
			||||||
 | 
					Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
 | 
				
			||||||
 | 
					---
 | 
				
			||||||
 | 
					 arch/arm/boot/dts/bcm53573.dtsi | 8 ++++++++
 | 
				
			||||||
 | 
					 1 file changed, 8 insertions(+)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					--- a/arch/arm/boot/dts/bcm53573.dtsi
 | 
				
			||||||
 | 
					+++ b/arch/arm/boot/dts/bcm53573.dtsi
 | 
				
			||||||
 | 
					@@ -48,6 +48,14 @@
 | 
				
			||||||
 | 
					 		};
 | 
				
			||||||
 | 
					 	};
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					+	timer {
 | 
				
			||||||
 | 
					+		compatible = "arm,armv7-timer";
 | 
				
			||||||
 | 
					+		interrupts = <GIC_PPI 13 IRQ_TYPE_LEVEL_LOW>,
 | 
				
			||||||
 | 
					+			     <GIC_PPI 14 IRQ_TYPE_LEVEL_LOW>,
 | 
				
			||||||
 | 
					+			     <GIC_PPI 11 IRQ_TYPE_LEVEL_LOW>,
 | 
				
			||||||
 | 
					+			     <GIC_PPI 10 IRQ_TYPE_LEVEL_LOW>;
 | 
				
			||||||
 | 
					+	};
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					 	clocks {
 | 
				
			||||||
 | 
					 		#address-cells = <1>;
 | 
				
			||||||
 | 
					 		#size-cells = <1>;
 | 
				
			||||||
@ -0,0 +1,269 @@
 | 
				
			|||||||
 | 
					From 2bebdfcdcd0feb58d5df419532a2cedc78a336d7 Mon Sep 17 00:00:00 2001
 | 
				
			||||||
 | 
					From: Vivek Unune <npcomplete13@gmail.com>
 | 
				
			||||||
 | 
					Date: Mon, 18 Jun 2018 13:41:59 -0400
 | 
				
			||||||
 | 
					Subject: [PATCH] ARM: dts: BCM5301X: Add support for Linksys EA9500
 | 
				
			||||||
 | 
					MIME-Version: 1.0
 | 
				
			||||||
 | 
					Content-Type: text/plain; charset=UTF-8
 | 
				
			||||||
 | 
					Content-Transfer-Encoding: 8bit
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Hardware Info
 | 
				
			||||||
 | 
					-------------
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Processor	- Broadcom BCM4709C0KFEBG dual-core @ 1.4 GHz
 | 
				
			||||||
 | 
					Switch		- BCM53012 in BCM4709C0KFEBG & external BCM53125
 | 
				
			||||||
 | 
					DDR3 RAM	- 256 MB
 | 
				
			||||||
 | 
					Flash		- 128 MB (Toshiba TC58BVG0S3HTA00)
 | 
				
			||||||
 | 
					2.4GHz		- BCM4366 4×4 2.4/5G single chip 802.11ac SoC
 | 
				
			||||||
 | 
					Power Amp	- Skyworks SE2623L 2.4 GHz power amp (x4)
 | 
				
			||||||
 | 
					5GHz x 2	- BCM4366 4×4 2.4/5G single chip 802.11ac SoC
 | 
				
			||||||
 | 
					Power Amp	- PLX Technology PEX8603 3-lane, 3-port PCIe switch
 | 
				
			||||||
 | 
					Ports		- 8 Ports, 1 WAN Ports
 | 
				
			||||||
 | 
					Antennas	- 8 Antennas
 | 
				
			||||||
 | 
					Serial Port	- @J6 [GND,TX,RX] (VCC NC)    115200 8n1
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Tested with OpenWrt built with DSA driver and Kernel v4.14
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Signed-off-by: Vivek Unune <npcomplete13@gmail.com>
 | 
				
			||||||
 | 
					Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
 | 
				
			||||||
 | 
					---
 | 
				
			||||||
 | 
					 arch/arm/boot/dts/bcm47094-linksys-panamera.dts | 229 ++++++++++++++++++++++++
 | 
				
			||||||
 | 
					 1 file changed, 229 insertions(+)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					--- a/arch/arm/boot/dts/bcm47094-linksys-panamera.dts
 | 
				
			||||||
 | 
					+++ b/arch/arm/boot/dts/bcm47094-linksys-panamera.dts
 | 
				
			||||||
 | 
					@@ -31,6 +31,235 @@
 | 
				
			||||||
 | 
					 			linux,code = <KEY_WPS_BUTTON>;
 | 
				
			||||||
 | 
					 			gpios = <&chipcommon 3 GPIO_ACTIVE_LOW>;
 | 
				
			||||||
 | 
					 		};
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					+		rfkill {
 | 
				
			||||||
 | 
					+				label = "WiFi";
 | 
				
			||||||
 | 
					+				linux,code = <KEY_RFKILL>;
 | 
				
			||||||
 | 
					+				gpios = <&chipcommon 16 GPIO_ACTIVE_LOW>;
 | 
				
			||||||
 | 
					+		};
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					+		reset {
 | 
				
			||||||
 | 
					+				label = "Reset";
 | 
				
			||||||
 | 
					+				linux,code = <KEY_RESTART>;
 | 
				
			||||||
 | 
					+				gpios = <&chipcommon 17 GPIO_ACTIVE_LOW>;
 | 
				
			||||||
 | 
					+		};
 | 
				
			||||||
 | 
					+	};
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					+	leds {
 | 
				
			||||||
 | 
					+		compatible = "gpio-leds";
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					+		wps {
 | 
				
			||||||
 | 
					+			label = "bcm53xx:white:wps";
 | 
				
			||||||
 | 
					+			gpios = <&chipcommon 22 GPIO_ACTIVE_LOW>;
 | 
				
			||||||
 | 
					+		};
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					+		usb2 {
 | 
				
			||||||
 | 
					+			label = "bcm53xx:green:usb2";
 | 
				
			||||||
 | 
					+			gpios = <&chipcommon 1 GPIO_ACTIVE_LOW>;
 | 
				
			||||||
 | 
					+			trigger-sources = <&ohci_port2>, <&ehci_port2>;
 | 
				
			||||||
 | 
					+			linux,default-trigger = "usbport";
 | 
				
			||||||
 | 
					+		};
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					+		usb3 {
 | 
				
			||||||
 | 
					+			label = "bcm53xx:green:usb3";
 | 
				
			||||||
 | 
					+			gpios = <&chipcommon 2 GPIO_ACTIVE_LOW>;
 | 
				
			||||||
 | 
					+			trigger-sources = <&ohci_port1>, <&ehci_port1>,
 | 
				
			||||||
 | 
					+					  <&xhci_port1>;
 | 
				
			||||||
 | 
					+			linux,default-trigger = "usbport";
 | 
				
			||||||
 | 
					+		};
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					+		power {
 | 
				
			||||||
 | 
					+			label = "bcm53xx:white:power";
 | 
				
			||||||
 | 
					+			gpios = <&chipcommon 4 GPIO_ACTIVE_HIGH>;
 | 
				
			||||||
 | 
					+		};
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					+		wifi-disabled {
 | 
				
			||||||
 | 
					+			label = "bcm53xx:amber:wifi-disabled";
 | 
				
			||||||
 | 
					+			gpios = <&chipcommon 0 GPIO_ACTIVE_LOW>;
 | 
				
			||||||
 | 
					+		};
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					+		wifi-enabled {
 | 
				
			||||||
 | 
					+			label = "bcm53xx:white:wifi-enabled";
 | 
				
			||||||
 | 
					+			gpios = <&chipcommon 5 GPIO_ACTIVE_HIGH>;
 | 
				
			||||||
 | 
					+		};
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					+		bluebar1 {
 | 
				
			||||||
 | 
					+			label = "bcm53xx:white:bluebar1";
 | 
				
			||||||
 | 
					+			gpios = <&chipcommon 11 GPIO_ACTIVE_HIGH>;
 | 
				
			||||||
 | 
					+		};
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					+		bluebar2 {
 | 
				
			||||||
 | 
					+			label = "bcm53xx:white:bluebar2";
 | 
				
			||||||
 | 
					+			gpios = <&chipcommon 12 GPIO_ACTIVE_HIGH>;
 | 
				
			||||||
 | 
					+		};
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					+		bluebar3 {
 | 
				
			||||||
 | 
					+			label = "bcm53xx:white:bluebar3";
 | 
				
			||||||
 | 
					+			gpios = <&chipcommon 15 GPIO_ACTIVE_LOW>;
 | 
				
			||||||
 | 
					+		};
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					+		bluebar4 {
 | 
				
			||||||
 | 
					+			label = "bcm53xx:white:bluebar4";
 | 
				
			||||||
 | 
					+			gpios = <&chipcommon 18 GPIO_ACTIVE_HIGH>;
 | 
				
			||||||
 | 
					+		};
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					+		bluebar5 {
 | 
				
			||||||
 | 
					+			label = "bcm53xx:white:bluebar5";
 | 
				
			||||||
 | 
					+			gpios = <&chipcommon 19 GPIO_ACTIVE_HIGH>;
 | 
				
			||||||
 | 
					+		};
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					+		bluebar6 {
 | 
				
			||||||
 | 
					+			label = "bcm53xx:white:bluebar6";
 | 
				
			||||||
 | 
					+			gpios = <&chipcommon 20 GPIO_ACTIVE_HIGH>;
 | 
				
			||||||
 | 
					+		};
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					+		bluebar7 {
 | 
				
			||||||
 | 
					+			label = "bcm53xx:white:bluebar7";
 | 
				
			||||||
 | 
					+			gpios = <&chipcommon 21 GPIO_ACTIVE_HIGH>;
 | 
				
			||||||
 | 
					+		};
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					+		bluebar8 {
 | 
				
			||||||
 | 
					+			label = "bcm53xx:white:bluebar8";
 | 
				
			||||||
 | 
					+			gpios = <&chipcommon 8 GPIO_ACTIVE_HIGH>;
 | 
				
			||||||
 | 
					+		};
 | 
				
			||||||
 | 
					+	};
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					+	mdio-bus-mux {
 | 
				
			||||||
 | 
					+		/* BIT(9) = 1 => external mdio */
 | 
				
			||||||
 | 
					+		mdio_ext: mdio@200 {
 | 
				
			||||||
 | 
					+			reg = <0x200>;
 | 
				
			||||||
 | 
					+			#address-cells = <1>;
 | 
				
			||||||
 | 
					+			#size-cells = <0>;
 | 
				
			||||||
 | 
					+		};
 | 
				
			||||||
 | 
					+	};
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					+	mdio-mii-mux {
 | 
				
			||||||
 | 
					+		compatible = "mdio-mux-mmioreg";
 | 
				
			||||||
 | 
					+		mdio-parent-bus = <&mdio_ext>;
 | 
				
			||||||
 | 
					+		#address-cells = <1>;
 | 
				
			||||||
 | 
					+		#size-cells = <0>;
 | 
				
			||||||
 | 
					+		reg = <0x1800c1c0 0x4>;
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					+		/* BIT(6) = mdc, BIT(7) = mdio */
 | 
				
			||||||
 | 
					+		mux-mask = <0xc0>;
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					+		mdio-mii@0 {
 | 
				
			||||||
 | 
					+			/* Enable MII function */
 | 
				
			||||||
 | 
					+			reg = <0x0>;
 | 
				
			||||||
 | 
					+			#address-cells = <1>;
 | 
				
			||||||
 | 
					+			#size-cells = <0>;
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					+			switch@0  {
 | 
				
			||||||
 | 
					+				compatible = "brcm,bcm53125";
 | 
				
			||||||
 | 
					+				#address-cells = <1>;
 | 
				
			||||||
 | 
					+				#size-cells = <0>;
 | 
				
			||||||
 | 
					+				reset-gpios = <&chipcommon 10 GPIO_ACTIVE_LOW>;
 | 
				
			||||||
 | 
					+				reset-names = "robo_reset";
 | 
				
			||||||
 | 
					+				reg = <0>;
 | 
				
			||||||
 | 
					+				dsa,member = <1 0>;
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					+				ports {
 | 
				
			||||||
 | 
					+					#address-cells = <1>;
 | 
				
			||||||
 | 
					+					#size-cells = <0>;
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					+					port@0 {
 | 
				
			||||||
 | 
					+						reg = <0>;
 | 
				
			||||||
 | 
					+						label = "lan1";
 | 
				
			||||||
 | 
					+					};
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					+					port@1 {
 | 
				
			||||||
 | 
					+						reg = <1>;
 | 
				
			||||||
 | 
					+						label = "lan5";
 | 
				
			||||||
 | 
					+					};
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					+					port@2 {
 | 
				
			||||||
 | 
					+						reg = <2>;
 | 
				
			||||||
 | 
					+						label = "lan2";
 | 
				
			||||||
 | 
					+					};
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					+					port@3 {
 | 
				
			||||||
 | 
					+						reg = <3>;
 | 
				
			||||||
 | 
					+						label = "lan6";
 | 
				
			||||||
 | 
					+					};
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					+					port@4 {
 | 
				
			||||||
 | 
					+						reg = <4>;
 | 
				
			||||||
 | 
					+						label = "lan3";
 | 
				
			||||||
 | 
					+					};
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					+					sw1_p8: port@8 {
 | 
				
			||||||
 | 
					+						reg = <8>;
 | 
				
			||||||
 | 
					+						ethernet = <&sw0_p0>;
 | 
				
			||||||
 | 
					+						label = "cpu";
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					+						fixed-link {
 | 
				
			||||||
 | 
					+							speed = <1000>;
 | 
				
			||||||
 | 
					+							full-duplex;
 | 
				
			||||||
 | 
					+						};
 | 
				
			||||||
 | 
					+					};
 | 
				
			||||||
 | 
					+				};
 | 
				
			||||||
 | 
					+			};
 | 
				
			||||||
 | 
					+		};
 | 
				
			||||||
 | 
					+	};
 | 
				
			||||||
 | 
					+};
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					+&usb2 {
 | 
				
			||||||
 | 
					+	vcc-gpio = <&chipcommon 13 GPIO_ACTIVE_HIGH>;
 | 
				
			||||||
 | 
					+};
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					+&usb3 {
 | 
				
			||||||
 | 
					+	vcc-gpio = <&chipcommon 14 GPIO_ACTIVE_HIGH>;
 | 
				
			||||||
 | 
					+};
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					+&srab {
 | 
				
			||||||
 | 
					+	compatible = "brcm,bcm53012-srab", "brcm,bcm5301x-srab";
 | 
				
			||||||
 | 
					+	status = "okay";
 | 
				
			||||||
 | 
					+	dsa,member = <0 0>;
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					+	ports {
 | 
				
			||||||
 | 
					+		#address-cells = <1>;
 | 
				
			||||||
 | 
					+		#size-cells = <0>;
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					+		port@1 {
 | 
				
			||||||
 | 
					+			reg = <1>;
 | 
				
			||||||
 | 
					+			label = "lan7";
 | 
				
			||||||
 | 
					+		};
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					+		port@2 {
 | 
				
			||||||
 | 
					+			reg = <2>;
 | 
				
			||||||
 | 
					+			label = "lan4";
 | 
				
			||||||
 | 
					+		};
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					+		port@3 {
 | 
				
			||||||
 | 
					+			reg = <3>;
 | 
				
			||||||
 | 
					+			label = "lan8";
 | 
				
			||||||
 | 
					+		};
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					+		port@4 {
 | 
				
			||||||
 | 
					+			reg = <4>;
 | 
				
			||||||
 | 
					+			label = "wan";
 | 
				
			||||||
 | 
					+		};
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					+		port@8 {
 | 
				
			||||||
 | 
					+			reg = <8>;
 | 
				
			||||||
 | 
					+			ethernet = <&gmac2>;
 | 
				
			||||||
 | 
					+			label = "cpu";
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					+			fixed-link {
 | 
				
			||||||
 | 
					+				speed = <1000>;
 | 
				
			||||||
 | 
					+				full-duplex;
 | 
				
			||||||
 | 
					+			};
 | 
				
			||||||
 | 
					+		};
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					+		sw0_p0: port@0 {
 | 
				
			||||||
 | 
					+			reg = <0>;
 | 
				
			||||||
 | 
					+			label = "extsw";
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					+			fixed-link {
 | 
				
			||||||
 | 
					+				speed = <1000>;
 | 
				
			||||||
 | 
					+				full-duplex;
 | 
				
			||||||
 | 
					+			};
 | 
				
			||||||
 | 
					+		};
 | 
				
			||||||
 | 
					 	};
 | 
				
			||||||
 | 
					 };
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
@ -0,0 +1,166 @@
 | 
				
			|||||||
 | 
					From ed4728d9fa0b19687caa964cf5c2082b80208167 Mon Sep 17 00:00:00 2001
 | 
				
			||||||
 | 
					From: =?UTF-8?q?Rafa=C5=82=20Mi=C5=82ecki?= <rafal@milecki.pl>
 | 
				
			||||||
 | 
					Date: Sat, 28 Jul 2018 13:25:48 +0200
 | 
				
			||||||
 | 
					Subject: [PATCH] ARM: dts: BCM5301X: Specify flash partitions
 | 
				
			||||||
 | 
					MIME-Version: 1.0
 | 
				
			||||||
 | 
					Content-Type: text/plain; charset=UTF-8
 | 
				
			||||||
 | 
					Content-Transfer-Encoding: 8bit
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Most devices use Broadcom standard partitions which allows them to be
 | 
				
			||||||
 | 
					described with the "brcm,bcm947xx-cfe-partitions". Exceptions are:
 | 
				
			||||||
 | 
					1) TP-LINK devices which use "os-image" partition with TRX containing
 | 
				
			||||||
 | 
					   kernel only + separated rootfs partition.
 | 
				
			||||||
 | 
					2) Asus RT-AC87U with custom "asus" partition.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					This commit also removes undocumented and unsupported linux,part-probe
 | 
				
			||||||
 | 
					binding which got accidentally upstreamed while describing SPI
 | 
				
			||||||
 | 
					controller.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
 | 
				
			||||||
 | 
					---
 | 
				
			||||||
 | 
					 arch/arm/boot/dts/bcm47081-tplink-archer-c5-v2.dts | 28 +++++++++++++++++++
 | 
				
			||||||
 | 
					 arch/arm/boot/dts/bcm4709-asus-rt-ac87u.dts        | 31 ++++++++++++++++++++++
 | 
				
			||||||
 | 
					 arch/arm/boot/dts/bcm4709-tplink-archer-c9-v1.dts  | 28 +++++++++++++++++++
 | 
				
			||||||
 | 
					 arch/arm/boot/dts/bcm5301x-nand-cs0.dtsi           |  4 +++
 | 
				
			||||||
 | 
					 arch/arm/boot/dts/bcm5301x.dtsi                    |  5 +++-
 | 
				
			||||||
 | 
					 5 files changed, 95 insertions(+), 1 deletion(-)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					--- a/arch/arm/boot/dts/bcm47081-tplink-archer-c5-v2.dts
 | 
				
			||||||
 | 
					+++ b/arch/arm/boot/dts/bcm47081-tplink-archer-c5-v2.dts
 | 
				
			||||||
 | 
					@@ -94,6 +94,34 @@
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					 &spi_nor {
 | 
				
			||||||
 | 
					 	status = "okay";
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					+	partitions {
 | 
				
			||||||
 | 
					+		compatible = "fixed-partitions";
 | 
				
			||||||
 | 
					+		#address-cells = <1>;
 | 
				
			||||||
 | 
					+		#size-cells = <1>;
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					+		boot@0 {
 | 
				
			||||||
 | 
					+			label = "boot";
 | 
				
			||||||
 | 
					+			reg = <0x000000 0x040000>;
 | 
				
			||||||
 | 
					+			read-only;
 | 
				
			||||||
 | 
					+		};
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					+		os-image@100000 {
 | 
				
			||||||
 | 
					+			label = "os-image";
 | 
				
			||||||
 | 
					+			reg = <0x040000 0x200000>;
 | 
				
			||||||
 | 
					+			compatible = "brcm,trx";
 | 
				
			||||||
 | 
					+		};
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					+		rootfs@240000 {
 | 
				
			||||||
 | 
					+			label = "rootfs";
 | 
				
			||||||
 | 
					+			reg = <0x240000 0xc00000>;
 | 
				
			||||||
 | 
					+		};
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					+		nvram@ff0000 {
 | 
				
			||||||
 | 
					+			label = "nvram";
 | 
				
			||||||
 | 
					+			reg = <0xff0000 0x010000>;
 | 
				
			||||||
 | 
					+		};
 | 
				
			||||||
 | 
					+	};
 | 
				
			||||||
 | 
					 };
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					 &usb2 {
 | 
				
			||||||
 | 
					--- a/arch/arm/boot/dts/bcm4709-asus-rt-ac87u.dts
 | 
				
			||||||
 | 
					+++ b/arch/arm/boot/dts/bcm4709-asus-rt-ac87u.dts
 | 
				
			||||||
 | 
					@@ -66,3 +66,34 @@
 | 
				
			||||||
 | 
					 &usb3_phy {
 | 
				
			||||||
 | 
					 	status = "okay";
 | 
				
			||||||
 | 
					 };
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					+&nandcs {
 | 
				
			||||||
 | 
					+	partitions {
 | 
				
			||||||
 | 
					+		compatible = "fixed-partitions";
 | 
				
			||||||
 | 
					+		#address-cells = <1>;
 | 
				
			||||||
 | 
					+		#size-cells = <1>;
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					+		boot@0 {
 | 
				
			||||||
 | 
					+			label = "boot";
 | 
				
			||||||
 | 
					+			reg = <0x00000000 0x00080000>;
 | 
				
			||||||
 | 
					+			read-only;
 | 
				
			||||||
 | 
					+		};
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					+		nvram@80000 {
 | 
				
			||||||
 | 
					+			label = "nvram";
 | 
				
			||||||
 | 
					+			reg = <0x00080000 0x00180000>;
 | 
				
			||||||
 | 
					+		};
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					+		firmware@200000 {
 | 
				
			||||||
 | 
					+			label = "firmware";
 | 
				
			||||||
 | 
					+			reg = <0x00200000 0x07cc0000>;
 | 
				
			||||||
 | 
					+			compatible = "brcm,trx";
 | 
				
			||||||
 | 
					+		};
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					+		asus@7ec0000 {
 | 
				
			||||||
 | 
					+			label = "asus";
 | 
				
			||||||
 | 
					+			reg = <0x07ec0000 0x00140000>;
 | 
				
			||||||
 | 
					+			read-only;
 | 
				
			||||||
 | 
					+		};
 | 
				
			||||||
 | 
					+	};
 | 
				
			||||||
 | 
					+};
 | 
				
			||||||
 | 
					--- a/arch/arm/boot/dts/bcm4709-tplink-archer-c9-v1.dts
 | 
				
			||||||
 | 
					+++ b/arch/arm/boot/dts/bcm4709-tplink-archer-c9-v1.dts
 | 
				
			||||||
 | 
					@@ -103,6 +103,34 @@
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					 &spi_nor {
 | 
				
			||||||
 | 
					 	status = "okay";
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					+	partitions {
 | 
				
			||||||
 | 
					+		compatible = "fixed-partitions";
 | 
				
			||||||
 | 
					+		#address-cells = <1>;
 | 
				
			||||||
 | 
					+		#size-cells = <1>;
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					+		boot@0 {
 | 
				
			||||||
 | 
					+			label = "boot";
 | 
				
			||||||
 | 
					+			reg = <0x000000 0x040000>;
 | 
				
			||||||
 | 
					+			read-only;
 | 
				
			||||||
 | 
					+		};
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					+		os-image@100000 {
 | 
				
			||||||
 | 
					+			label = "os-image";
 | 
				
			||||||
 | 
					+			reg = <0x040000 0x200000>;
 | 
				
			||||||
 | 
					+			compatible = "brcm,trx";
 | 
				
			||||||
 | 
					+		};
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					+		rootfs@240000 {
 | 
				
			||||||
 | 
					+			label = "rootfs";
 | 
				
			||||||
 | 
					+			reg = <0x240000 0xc00000>;
 | 
				
			||||||
 | 
					+		};
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					+		nvram@ff0000 {
 | 
				
			||||||
 | 
					+			label = "nvram";
 | 
				
			||||||
 | 
					+			reg = <0xff0000 0x010000>;
 | 
				
			||||||
 | 
					+		};
 | 
				
			||||||
 | 
					+	};
 | 
				
			||||||
 | 
					 };
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					 &usb3_phy {
 | 
				
			||||||
 | 
					--- a/arch/arm/boot/dts/bcm5301x-nand-cs0.dtsi
 | 
				
			||||||
 | 
					+++ b/arch/arm/boot/dts/bcm5301x-nand-cs0.dtsi
 | 
				
			||||||
 | 
					@@ -12,6 +12,10 @@
 | 
				
			||||||
 | 
					 			reg = <0>;
 | 
				
			||||||
 | 
					 			#address-cells = <1>;
 | 
				
			||||||
 | 
					 			#size-cells = <1>;
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					+			partitions {
 | 
				
			||||||
 | 
					+				compatible = "brcm,bcm947xx-cfe-partitions";
 | 
				
			||||||
 | 
					+			};
 | 
				
			||||||
 | 
					 		};
 | 
				
			||||||
 | 
					 	};
 | 
				
			||||||
 | 
					 };
 | 
				
			||||||
 | 
					--- a/arch/arm/boot/dts/bcm5301x.dtsi
 | 
				
			||||||
 | 
					+++ b/arch/arm/boot/dts/bcm5301x.dtsi
 | 
				
			||||||
 | 
					@@ -475,8 +475,11 @@
 | 
				
			||||||
 | 
					 			compatible = "jedec,spi-nor";
 | 
				
			||||||
 | 
					 			reg = <0>;
 | 
				
			||||||
 | 
					 			spi-max-frequency = <20000000>;
 | 
				
			||||||
 | 
					-			linux,part-probe = "ofpart", "bcm47xxpart";
 | 
				
			||||||
 | 
					 			status = "disabled";
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					+			partitions {
 | 
				
			||||||
 | 
					+				compatible = "brcm,bcm947xx-cfe-partitions";
 | 
				
			||||||
 | 
					+			};
 | 
				
			||||||
 | 
					 		};
 | 
				
			||||||
 | 
					 	};
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
@ -1,34 +0,0 @@
 | 
				
			|||||||
From: =?UTF-8?q?Rafa=C5=82=20Mi=C5=82ecki?= <rafal@milecki.pl>
 | 
					 | 
				
			||||||
Subject: [PATCH] Use "brcm,bcm947xx-cfe-partitions" binding for Broadcom
 | 
					 | 
				
			||||||
 partitions
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
---
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
--- a/arch/arm/boot/dts/bcm5301x-nand-cs0.dtsi
 | 
					 | 
				
			||||||
+++ b/arch/arm/boot/dts/bcm5301x-nand-cs0.dtsi
 | 
					 | 
				
			||||||
@@ -12,6 +12,10 @@
 | 
					 | 
				
			||||||
 			reg = <0>;
 | 
					 | 
				
			||||||
 			#address-cells = <1>;
 | 
					 | 
				
			||||||
 			#size-cells = <1>;
 | 
					 | 
				
			||||||
+
 | 
					 | 
				
			||||||
+			partitions {
 | 
					 | 
				
			||||||
+				compatible = "brcm,bcm947xx-cfe-partitions";
 | 
					 | 
				
			||||||
+			};
 | 
					 | 
				
			||||||
 		};
 | 
					 | 
				
			||||||
 	};
 | 
					 | 
				
			||||||
 };
 | 
					 | 
				
			||||||
--- a/arch/arm/boot/dts/bcm5301x.dtsi
 | 
					 | 
				
			||||||
+++ b/arch/arm/boot/dts/bcm5301x.dtsi
 | 
					 | 
				
			||||||
@@ -456,8 +456,11 @@
 | 
					 | 
				
			||||||
 			compatible = "jedec,spi-nor";
 | 
					 | 
				
			||||||
 			reg = <0>;
 | 
					 | 
				
			||||||
 			spi-max-frequency = <20000000>;
 | 
					 | 
				
			||||||
-			linux,part-probe = "ofpart", "bcm47xxpart";
 | 
					 | 
				
			||||||
 			status = "disabled";
 | 
					 | 
				
			||||||
+
 | 
					 | 
				
			||||||
+			partitions {
 | 
					 | 
				
			||||||
+				compatible = "brcm,bcm947xx-cfe-partitions";
 | 
					 | 
				
			||||||
+			};
 | 
					 | 
				
			||||||
 		};
 | 
					 | 
				
			||||||
 	};
 | 
					 | 
				
			||||||
 
 | 
					 | 
				
			||||||
@ -1,56 +0,0 @@
 | 
				
			|||||||
From: =?UTF-8?q?Rafa=C5=82=20Mi=C5=82ecki?= <rafal@milecki.pl>
 | 
					 | 
				
			||||||
Subject: [PATCH] mtd: bcm47xxpart: add device specific workarounds
 | 
					 | 
				
			||||||
MIME-Version: 1.0
 | 
					 | 
				
			||||||
Content-Type: text/plain; charset=UTF-8
 | 
					 | 
				
			||||||
Content-Transfer-Encoding: 8bit
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
 | 
					 | 
				
			||||||
---
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
--- a/drivers/mtd/bcm47xxpart.c
 | 
					 | 
				
			||||||
+++ b/drivers/mtd/bcm47xxpart.c
 | 
					 | 
				
			||||||
@@ -15,6 +15,7 @@
 | 
					 | 
				
			||||||
 #include <linux/slab.h>
 | 
					 | 
				
			||||||
 #include <linux/mtd/mtd.h>
 | 
					 | 
				
			||||||
 #include <linux/mtd/partitions.h>
 | 
					 | 
				
			||||||
+#include <linux/of.h>
 | 
					 | 
				
			||||||
 
 | 
					 | 
				
			||||||
 #include <uapi/linux/magic.h>
 | 
					 | 
				
			||||||
 
 | 
					 | 
				
			||||||
@@ -134,6 +135,36 @@ static int bcm47xxpart_parse(struct mtd_
 | 
					 | 
				
			||||||
 			break;
 | 
					 | 
				
			||||||
 		}
 | 
					 | 
				
			||||||
 
 | 
					 | 
				
			||||||
+		/*
 | 
					 | 
				
			||||||
+		 * Device specific workarounds (hacks). We should use DT to
 | 
					 | 
				
			||||||
+		 * define partitions but we need a working TRX firmware splitter
 | 
					 | 
				
			||||||
+		 * first.
 | 
					 | 
				
			||||||
+		 */
 | 
					 | 
				
			||||||
+		if (of_machine_is_compatible("asus,rt-ac87u") && offset == 0x7ec0000) {
 | 
					 | 
				
			||||||
+			/*
 | 
					 | 
				
			||||||
+			 * "asus" partition uses JFFS2 which we don't detect and
 | 
					 | 
				
			||||||
+			 * we don't want to as this could affect other devices.
 | 
					 | 
				
			||||||
+			 */
 | 
					 | 
				
			||||||
+			bcm47xxpart_add_part(&parts[curr_part++], "asus", offset, MTD_WRITEABLE);
 | 
					 | 
				
			||||||
+			continue;
 | 
					 | 
				
			||||||
+		} else  if (of_machine_is_compatible("tplink,archer-c5-v2") && offset == 0xe40000) {
 | 
					 | 
				
			||||||
+			/*
 | 
					 | 
				
			||||||
+			 * There is a whole set of partitions (not even listed
 | 
					 | 
				
			||||||
+			 * by original firmware): "default-mac", "pin",
 | 
					 | 
				
			||||||
+			 * "partition-table", etc.
 | 
					 | 
				
			||||||
+			 */
 | 
					 | 
				
			||||||
+			bcm47xxpart_add_part(&parts[curr_part++], "tplink", offset, MTD_WRITEABLE);
 | 
					 | 
				
			||||||
+			continue;
 | 
					 | 
				
			||||||
+		} else  if (of_machine_is_compatible("tplink,archer-c9-v1") && offset == 0xe40000) {
 | 
					 | 
				
			||||||
+			/*
 | 
					 | 
				
			||||||
+			 * There is a whole set of partitions (not even listed
 | 
					 | 
				
			||||||
+			 * by original firmware): "default-mac", "pin",
 | 
					 | 
				
			||||||
+			 * "partition-table", etc.
 | 
					 | 
				
			||||||
+			 */
 | 
					 | 
				
			||||||
+			bcm47xxpart_add_part(&parts[curr_part++], "tplink", offset, MTD_WRITEABLE);
 | 
					 | 
				
			||||||
+			continue;
 | 
					 | 
				
			||||||
+		}
 | 
					 | 
				
			||||||
+
 | 
					 | 
				
			||||||
 		/* Read beginning of the block */
 | 
					 | 
				
			||||||
 		err = mtd_read(master, offset, BCM47XXPART_BYTES_TO_READ,
 | 
					 | 
				
			||||||
 			       &bytes_read, (uint8_t *)buf);
 | 
					 | 
				
			||||||
@ -11,22 +11,14 @@ Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
--- a/arch/arm/boot/dts/bcm53573.dtsi
 | 
					--- a/arch/arm/boot/dts/bcm53573.dtsi
 | 
				
			||||||
+++ b/arch/arm/boot/dts/bcm53573.dtsi
 | 
					+++ b/arch/arm/boot/dts/bcm53573.dtsi
 | 
				
			||||||
@@ -48,6 +48,15 @@
 | 
					@@ -54,6 +54,7 @@
 | 
				
			||||||
 		};
 | 
					 			     <GIC_PPI 14 IRQ_TYPE_LEVEL_LOW>,
 | 
				
			||||||
 | 
					 			     <GIC_PPI 11 IRQ_TYPE_LEVEL_LOW>,
 | 
				
			||||||
 | 
					 			     <GIC_PPI 10 IRQ_TYPE_LEVEL_LOW>;
 | 
				
			||||||
 | 
					+		clocks = <&ilp>;
 | 
				
			||||||
 	};
 | 
					 	};
 | 
				
			||||||
 
 | 
					 
 | 
				
			||||||
+	timer {
 | 
					 | 
				
			||||||
+		compatible = "arm,armv7-timer";
 | 
					 | 
				
			||||||
+		interrupts = <GIC_PPI 13 0>,
 | 
					 | 
				
			||||||
+			     <GIC_PPI 14 0>,
 | 
					 | 
				
			||||||
+			     <GIC_PPI 11 0>,
 | 
					 | 
				
			||||||
+			     <GIC_PPI 10 0>;
 | 
					 | 
				
			||||||
+		clocks = <&ilp>;
 | 
					 | 
				
			||||||
+	};
 | 
					 | 
				
			||||||
+
 | 
					 | 
				
			||||||
 	clocks {
 | 
					 	clocks {
 | 
				
			||||||
 		#address-cells = <1>;
 | 
					 | 
				
			||||||
 		#size-cells = <1>;
 | 
					 | 
				
			||||||
--- a/drivers/bcma/main.c
 | 
					--- a/drivers/bcma/main.c
 | 
				
			||||||
+++ b/drivers/bcma/main.c
 | 
					+++ b/drivers/bcma/main.c
 | 
				
			||||||
@@ -348,14 +348,6 @@ static int bcma_register_devices(struct
 | 
					@@ -348,14 +348,6 @@ static int bcma_register_devices(struct
 | 
				
			||||||
 | 
				
			|||||||
		Loading…
	
		Reference in New Issue
	
	Block a user