MIPS: BMIPS: Add support PWM device nodes
authorJaedon Shin <jaedon.shin@gmail.com>
Fri, 19 Aug 2016 02:52:26 +0000 (11:52 +0900)
committerRalf Baechle <ralf@linux-mips.org>
Thu, 6 Oct 2016 15:31:01 +0000 (17:31 +0200)
Adds PWM device nodes to BCM7xxx MIPS based SoCs.

Signed-off-by: Jaedon Shin <jaedon.shin@gmail.com>
Reviewed-by: Florian Fainelli <f.fainelli@gmail.com>
Cc: Jonas Gorski <jonas.gorski@gmail.com>
Cc: Kevin Cernekee <cernekee@gmail.com>
Cc: Rob Herring <robh+dt@kernel.org>
Cc: MIPS Mailing List <linux-mips@linux-mips.org>
Cc: devicetree@vger.kernel.org
Patchwork: https://patchwork.linux-mips.org/patch/14000/
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
16 files changed:
arch/mips/boot/dts/brcm/bcm7125.dtsi
arch/mips/boot/dts/brcm/bcm7346.dtsi
arch/mips/boot/dts/brcm/bcm7358.dtsi
arch/mips/boot/dts/brcm/bcm7360.dtsi
arch/mips/boot/dts/brcm/bcm7362.dtsi
arch/mips/boot/dts/brcm/bcm7420.dtsi
arch/mips/boot/dts/brcm/bcm7425.dtsi
arch/mips/boot/dts/brcm/bcm7435.dtsi
arch/mips/boot/dts/brcm/bcm97125cbmb.dts
arch/mips/boot/dts/brcm/bcm97346dbsmb.dts
arch/mips/boot/dts/brcm/bcm97358svmb.dts
arch/mips/boot/dts/brcm/bcm97360svmb.dts
arch/mips/boot/dts/brcm/bcm97362svmb.dts
arch/mips/boot/dts/brcm/bcm97420c.dts
arch/mips/boot/dts/brcm/bcm97425svmb.dts
arch/mips/boot/dts/brcm/bcm97435svmb.dts

index 550e1d9e3ee039eb06f14816bde573a03268ef4c..97191f6bca28ac62be0ff54589e192c2f4428916 100644 (file)
                        #clock-cells = <0>;
                        clock-frequency = <81000000>;
                };
+
+               upg_clk: upg_clk {
+                       compatible = "fixed-clock";
+                       #clock-cells = <0>;
+                       clock-frequency = <27000000>;
+               };
        };
 
        rdb {
                      status = "disabled";
                };
 
+               pwma: pwm@406580 {
+                       compatible = "brcm,bcm7038-pwm";
+                       reg = <0x406580 0x28>;
+                       #pwm-cells = <2>;
+                       clocks = <&upg_clk>;
+                       status = "disabled";
+               };
+
                ehci0: usb@488300 {
                        compatible = "brcm,bcm7125-ehci", "generic-ehci";
                        reg = <0x488300 0x100>;
index ec959061d52e30ef96c71fd78bd07f72b63c124e..eb7b19a32e3ecccbb033ed33573216d7031aeffb 100644 (file)
                        #clock-cells = <0>;
                        clock-frequency = <81000000>;
                };
+
+               upg_clk: upg_clk {
+                       compatible = "fixed-clock";
+                       #clock-cells = <0>;
+                       clock-frequency = <27000000>;
+               };
        };
 
        rdb {
                      status = "disabled";
                };
 
+               pwma: pwm@406580 {
+                       compatible = "brcm,bcm7038-pwm";
+                       reg = <0x406580 0x28>;
+                       #pwm-cells = <2>;
+                       clocks = <&upg_clk>;
+                       status = "disabled";
+               };
+
+               pwmb: pwm@406800 {
+                       compatible = "brcm,bcm7038-pwm";
+                       reg = <0x406800 0x28>;
+                       #pwm-cells = <2>;
+                       clocks = <&upg_clk>;
+                       status = "disabled";
+               };
+
                enet0: ethernet@430000 {
                        phy-mode = "internal";
                        phy-handle = <&phy1>;
index ca57fb5eb1222e4e42066e4b99d5239a85121791..b2276b1e12d44350678342a1b0ffeb10375f0d31 100644 (file)
                        #clock-cells = <0>;
                        clock-frequency = <81000000>;
                };
+
+               upg_clk: upg_clk {
+                       compatible = "fixed-clock";
+                       #clock-cells = <0>;
+                       clock-frequency = <27000000>;
+               };
        };
 
        rdb {
                      status = "disabled";
                };
 
+               pwma: pwm@406400 {
+                       compatible = "brcm,bcm7038-pwm";
+                       reg = <0x406400 0x28>;
+                       #pwm-cells = <2>;
+                       clocks = <&upg_clk>;
+                       status = "disabled";
+               };
+
+               pwmb: pwm@406700 {
+                       compatible = "brcm,bcm7038-pwm";
+                       reg = <0x406700 0x28>;
+                       #pwm-cells = <2>;
+                       clocks = <&upg_clk>;
+                       status = "disabled";
+               };
+
                enet0: ethernet@430000 {
                        phy-mode = "internal";
                        phy-handle = <&phy1>;
index 1c0c3d438c7ac42b6df46523077c8804bdaf99b8..e414af1e14ff4fc964171dfcdfc90b2051987742 100644 (file)
                        #clock-cells = <0>;
                        clock-frequency = <81000000>;
                };
+
+               upg_clk: upg_clk {
+                       compatible = "fixed-clock";
+                       #clock-cells = <0>;
+                       clock-frequency = <27000000>;
+               };
        };
 
        rdb {
                      status = "disabled";
                };
 
+               pwma: pwm@406400 {
+                       compatible = "brcm,bcm7038-pwm";
+                       reg = <0x406400 0x28>;
+                       #pwm-cells = <2>;
+                       clocks = <&upg_clk>;
+                       status = "disabled";
+               };
+
                enet0: ethernet@430000 {
                        phy-mode = "internal";
                        phy-handle = <&phy1>;
index 6b4713add4b8a9e176d7556fe2a27360cb7f745d..3bd1c0111d438f7dcf8bbf9f23533f2d36858c4c 100644 (file)
                        #clock-cells = <0>;
                        clock-frequency = <81000000>;
                };
+
+               upg_clk: upg_clk {
+                       compatible = "fixed-clock";
+                       #clock-cells = <0>;
+                       clock-frequency = <27000000>;
+               };
        };
 
        rdb {
                      status = "disabled";
                };
 
+               pwma: pwm@406400 {
+                       compatible = "brcm,bcm7038-pwm";
+                       reg = <0x406400 0x28>;
+                       #pwm-cells = <2>;
+                       clocks = <&upg_clk>;
+                       status = "disabled";
+               };
+
                enet0: ethernet@430000 {
                        phy-mode = "internal";
                        phy-handle = <&phy1>;
index 0586bf662571e633609517c573e147dddc584c6f..27c3d45556b9e91146a713b77d9df9f6d5806260 100644 (file)
                        #clock-cells = <0>;
                        clock-frequency = <81000000>;
                };
+
+               upg_clk: upg_clk {
+                       compatible = "fixed-clock";
+                       #clock-cells = <0>;
+                       clock-frequency = <27000000>;
+               };
        };
 
        rdb {
                      status = "disabled";
                };
 
+               pwma: pwm@406580 {
+                       compatible = "brcm,bcm7038-pwm";
+                       reg = <0x406580 0x28>;
+                       #pwm-cells = <2>;
+                       clocks = <&upg_clk>;
+                       status = "disabled";
+               };
+
+               pwmb: pwm@406880 {
+                       compatible = "brcm,bcm7038-pwm";
+                       reg = <0x406880 0x28>;
+                       #pwm-cells = <2>;
+                       clocks = <&upg_clk>;
+                       status = "disabled";
+               };
+
                enet0: ethernet@468000 {
                        phy-mode = "internal";
                        phy-handle = <&phy1>;
index c1c15edaf829ba231eeac9afa77c42876e530593..9ab65d64e948dafe041da675b52d11ed8d9f7323 100644 (file)
                        #clock-cells = <0>;
                        clock-frequency = <81000000>;
                };
+
+               upg_clk: upg_clk {
+                       compatible = "fixed-clock";
+                       #clock-cells = <0>;
+                       clock-frequency = <27000000>;
+               };
        };
 
        rdb {
                      status = "disabled";
                };
 
+               pwma: pwm@406580 {
+                       compatible = "brcm,bcm7038-pwm";
+                       reg = <0x406580 0x28>;
+                       #pwm-cells = <2>;
+                       clocks = <&upg_clk>;
+                       status = "disabled";
+               };
+
+               pwmb: pwm@406800 {
+                       compatible = "brcm,bcm7038-pwm";
+                       reg = <0x406800 0x28>;
+                       #pwm-cells = <2>;
+                       clocks = <&upg_clk>;
+                       status = "disabled";
+               };
+
                enet0: ethernet@b80000 {
                        phy-mode = "internal";
                        phy-handle = <&phy1>;
index a874d3a0e2ee637402e3feef5c5a45a6fca1732f..7801169416e74544d0c4be84a7fe9e631ea29fe9 100644 (file)
                        #clock-cells = <0>;
                        clock-frequency = <81000000>;
                };
+
+               upg_clk: upg_clk {
+                       compatible = "fixed-clock";
+                       #clock-cells = <0>;
+                       clock-frequency = <27000000>;
+               };
        };
 
        rdb {
                      status = "disabled";
                };
 
+               pwma: pwm@406580 {
+                       compatible = "brcm,bcm7038-pwm";
+                       reg = <0x406580 0x28>;
+                       #pwm-cells = <2>;
+                       clocks = <&upg_clk>;
+                       status = "disabled";
+               };
+
+               pwmb: pwm@406800 {
+                       compatible = "brcm,bcm7038-pwm";
+                       reg = <0x406800 0x28>;
+                       #pwm-cells = <2>;
+                       clocks = <&upg_clk>;
+                       status = "disabled";
+               };
+
                enet0: ethernet@b80000 {
                        phy-mode = "internal";
                        phy-handle = <&phy1>;
index f2449d147c6da9177010d869f90ac0d1ead9e468..5c24eacd72ddce0a5b354275664f528896af6e83 100644 (file)
        status = "okay";
 };
 
+&pwma {
+       status = "okay";
+};
+
 /* FIXME: USB is wonky; disable it for now */
 &ehci0 {
        status = "disabled";
index d3d28816a0270716d9634b553bcc30962584ef1a..2c55ab094a29778e68966a1740b67bc80300bdd1 100644 (file)
        status = "okay";
 };
 
+&pwma {
+       status = "okay";
+};
+
+&pwmb {
+       status = "okay";
+};
+
 &enet0 {
        status = "okay";
 };
index 02ce6b429dc47b104633491cee178499e677f1f4..757fe9d5f4dff38e6f7916172b669bcb8d66f841 100644 (file)
        status = "okay";
 };
 
+&pwma {
+       status = "okay";
+};
+
+&pwmb {
+       status = "okay";
+};
+
 &enet0 {
        status = "okay";
 };
index 73124be9548aeff58f1fd507883c3f2637808a55..496e6ed9fae300a81714e2210132f514198bbed7 100644 (file)
        status = "okay";
 };
 
+&pwma {
+       status = "okay";
+};
+
 &enet0 {
        status = "okay";
 };
index 3cfcaebe7f79db34e8c340ba71a1238f327b78c3..b880c018f3d8f60023bfdd5e217cea3832f3107e 100644 (file)
        status = "okay";
 };
 
+&pwma {
+       status = "okay";
+};
+
 &enet0 {
        status = "okay";
 };
index 600d57abee05c1bb8e8f22c57d67f1fb7a509a8c..e66271af055e74fd19c41f8390019c19c2fd08b9 100644 (file)
        status = "okay";
 };
 
+&pwma {
+       status = "okay";
+};
+
+&pwmb {
+       status = "okay";
+};
+
 /* FIXME: MAC driver comes up but cannot attach to PHY */
 &enet0 {
        status = "disabled";
index 119c714805cbc8257f1addc89a9b17289ffa73ec..f091e91b11c53179538a077b997375962aefa364 100644 (file)
        status = "okay";
 };
 
+&pwma {
+       status = "okay";
+};
+
+&pwmb {
+       status = "okay";
+};
+
 &enet0 {
        status = "okay";
 };
index 43e3ba27f07ba2ddc6935a7f80ba4a2b238f67ca..9db84f2a66644f77e1f2a245f9ecd3b842c7bec7 100644 (file)
        status = "okay";
 };
 
+&pwma {
+       status = "okay";
+};
+
+&pwmb {
+       status = "okay";
+};
+
 &enet0 {
        status = "okay";
 };