Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 5c40d493 authored by Jaedon Shin's avatar Jaedon Shin Committed by Ralf Baechle
Browse files

MIPS: BMIPS: Add support UART, I2C, SATA device



Add UART, I2C, SATA device tree nodes on Broadcom BCM7xxx MIPS-based
platforms.

Signed-off-by: default avatarJaedon Shin <jaedon.shin@gmail.com>
Reviewed-by: default avatarFlorian Fainelli <f.fainelli@gmail.com>
Cc: Kevin Cernekee <cernekee@gmail.com>
Cc: Dragan Stancevic <dragan.stancevic@gmail.com>
Cc: Linux-MIPS <linux-mips@linux-mips.org>
Patchwork: https://patchwork.linux-mips.org/patch/13016/


Signed-off-by: default avatarRalf Baechle <ralf@linux-mips.org>
parent 23021b2b
Loading
Loading
Loading
Loading
+67 −2
Original line number Diff line number Diff line
@@ -85,14 +85,15 @@
			compatible = "brcm,bcm7120-l2-intc";
			reg = <0x406780 0x8>;

			brcm,int-map-mask = <0x44>;
			brcm,int-map-mask = <0x44>, <0xf000000>;
			brcm,int-fwd-mask = <0x70000>;

			interrupt-controller;
			#interrupt-cells = <1>;

			interrupt-parent = <&periph_intc>;
			interrupts = <18>;
			interrupts = <18>, <19>;
			interrupt-names = "upg_main", "upg_bsc";
		};

		sun_top_ctrl: syscon@404000 {
@@ -118,6 +119,70 @@
			status = "disabled";
		};

		uart1: serial@406b40 {
			compatible = "ns16550a";
			reg = <0x406b40 0x20>;
			reg-io-width = <0x4>;
			reg-shift = <0x2>;
			native-endian;
			interrupt-parent = <&periph_intc>;
			interrupts = <64>;
			clocks = <&uart_clk>;
			status = "disabled";
		};

		uart2: serial@406b80 {
			compatible = "ns16550a";
			reg = <0x406b80 0x20>;
			reg-io-width = <0x4>;
			reg-shift = <0x2>;
			native-endian;
			interrupt-parent = <&periph_intc>;
			interrupts = <65>;
			clocks = <&uart_clk>;
			status = "disabled";
		};

		bsca: i2c@406200 {
		      clock-frequency = <390000>;
		      compatible = "brcm,brcmstb-i2c";
		      interrupt-parent = <&upg_irq0_intc>;
		      reg = <0x406200 0x58>;
		      interrupts = <24>;
		      interrupt-names = "upg_bsca";
		      status = "disabled";
		};

		bscb: i2c@406280 {
		      clock-frequency = <390000>;
		      compatible = "brcm,brcmstb-i2c";
		      interrupt-parent = <&upg_irq0_intc>;
		      reg = <0x406280 0x58>;
		      interrupts = <25>;
		      interrupt-names = "upg_bscb";
		      status = "disabled";
		};

		bscc: i2c@406300 {
		      clock-frequency = <390000>;
		      compatible = "brcm,brcmstb-i2c";
		      interrupt-parent = <&upg_irq0_intc>;
		      reg = <0x406300 0x58>;
		      interrupts = <26>;
		      interrupt-names = "upg_bscc";
		      status = "disabled";
		};

		bscd: i2c@406380 {
		      clock-frequency = <390000>;
		      compatible = "brcm,brcmstb-i2c";
		      interrupt-parent = <&upg_irq0_intc>;
		      reg = <0x406380 0x58>;
		      interrupts = <27>;
		      interrupt-names = "upg_bscd";
		      status = "disabled";
		};

		ehci0: usb@488300 {
			compatible = "brcm,bcm7125-ehci", "generic-ehci";
			reg = <0x488300 0x100>;
+0 −2
Original line number Diff line number Diff line
@@ -24,8 +24,6 @@

	aliases {
		uart0 = &uart0;
		uart1 = &uart1;
		uart2 = &uart2;
	};

	cpu_intc: cpu_intc {
+0 −2
Original line number Diff line number Diff line
@@ -18,8 +18,6 @@

	aliases {
		uart0 = &uart0;
		uart1 = &uart1;
		uart2 = &uart2;
	};

	cpu_intc: cpu_intc {
+40 −2
Original line number Diff line number Diff line
@@ -18,8 +18,6 @@

	aliases {
		uart0 = &uart0;
		uart1 = &uart1;
		uart2 = &uart2;
	};

	cpu_intc: cpu_intc {
@@ -241,5 +239,45 @@
			interrupts = <66>;
			status = "disabled";
		};

		sata: sata@181000 {
			compatible = "brcm,bcm7425-ahci", "brcm,sata3-ahci";
			reg-names = "ahci", "top-ctrl";
			reg = <0x181000 0xa9c>, <0x180020 0x1c>;
			interrupt-parent = <&periph_intc>;
			interrupts = <86>;
			#address-cells = <1>;
			#size-cells = <0>;
			status = "disabled";

			sata0: sata-port@0 {
				reg = <0>;
				phys = <&sata_phy0>;
			};

			sata1: sata-port@1 {
				reg = <1>;
				phys = <&sata_phy1>;
			};
		};

		sata_phy: sata-phy@180100 {
			compatible = "brcm,bcm7425-sata-phy", "brcm,phy-sata3";
			reg = <0x180100 0x0eff>;
			reg-names = "phy";
			#address-cells = <1>;
			#size-cells = <0>;
			status = "disabled";

			sata_phy0: sata-phy@0 {
				reg = <0>;
				#phy-cells = <0>;
			};

			sata_phy1: sata-phy@1 {
				reg = <1>;
				#phy-cells = <0>;
			};
		};
	};
};
+0 −2
Original line number Diff line number Diff line
@@ -24,8 +24,6 @@

	aliases {
		uart0 = &uart0;
		uart1 = &uart1;
		uart2 = &uart2;
	};

	cpu_intc: cpu_intc {
Loading