Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

ARM: dts: BCM63xx: Add ARMPLL device tree nodes

Add the ARM PLL controller which comes standard with the Cortex-A9 found
on the BCM63138 SoCs. This is the same controller as the one found in
the Broadcom iProc architecture, however, we have a separate compatible
string to indicate the integration difference, since the hardware is
different.

Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>

+28 -8
+28 -8
arch/arm/boot/dts/bcm63138.dtsi
··· 43 43 #address-cells = <1>; 44 44 #size-cells = <0>; 45 45 46 - arm_timer_clk: arm_timer_clk { 47 - #clock-cells = <0>; 48 - compatible = "fixed-clock"; 49 - clock-frequency = <500000000>; 50 - }; 51 - 46 + /* UBUS peripheral clock */ 52 47 periph_clk: periph_clk { 53 48 #clock-cells = <0>; 54 49 compatible = "fixed-clock"; 55 50 clock-frequency = <50000000>; 56 51 clock-output-names = "periph"; 52 + }; 53 + 54 + /* peripheral clock for system timer */ 55 + axi_clk: axi_clk { 56 + #clock-cells = <0>; 57 + compatible = "fixed-factor-clock"; 58 + clocks = <&armpll>; 59 + clock-div = <2>; 60 + clock-mult = <1>; 61 + }; 62 + 63 + /* APB bus clock */ 64 + apb_clk: apb_clk { 65 + #clock-cells = <0>; 66 + compatible = "fixed-factor-clock"; 67 + clocks = <&armpll>; 68 + clock-div = <4>; 69 + clock-mult = <1>; 57 70 }; 58 71 }; 59 72 ··· 106 93 compatible = "arm,cortex-a9-global-timer"; 107 94 reg = <0x1e200 0x20>; 108 95 interrupts = <GIC_PPI 11 IRQ_TYPE_LEVEL_HIGH>; 109 - clocks = <&arm_timer_clk>; 96 + clocks = <&axi_clk>; 110 97 }; 111 98 112 99 local_timer: local-timer@1e600 { 113 100 compatible = "arm,cortex-a9-twd-timer"; 114 101 reg = <0x1e600 0x20>; 115 102 interrupts = <GIC_PPI 13 IRQ_TYPE_LEVEL_HIGH>; 116 - clocks = <&arm_timer_clk>; 103 + clocks = <&axi_clk>; 117 104 }; 118 105 119 106 twd_watchdog: watchdog@1e620 { 120 107 compatible = "arm,cortex-a9-twd-wdt"; 121 108 reg = <0x1e620 0x20>; 122 109 interrupts = <GIC_PPI 14 IRQ_TYPE_LEVEL_HIGH>; 110 + }; 111 + 112 + armpll: armpll { 113 + #clock-cells = <0>; 114 + compatible = "brcm,bcm63138-armpll"; 115 + clocks = <&periph_clk>; 116 + reg = <0x20000 0xf00>; 123 117 }; 124 118 125 119 pmb0: reset-controller@4800c0 {