Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

rpi-4.7.y enable clock manager and modify all subsystems to use it #1628

Closed
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
20 commits
Select commit Hold shift + click to select a range
d0b57d0
bcm2835-i2s: REVERT the reverted patches
DigitalDreamtime Aug 30, 2016
76f119e
ARM: bcm2708: enable clock manager by default
msperl Apr 25, 2016
abffab6
ARM: 2708: i2s: removed clock registers and added clock
msperl Apr 25, 2016
44213c9
ARM: bcm2708: use correct device-tree node names for serial
msperl Apr 26, 2016
e4a9302
ARM: bcm2708: moved uart0 to use new clock framework
msperl Apr 26, 2016
1d1f32d
ARM: bcm2708: move spi0 to use new clock framework
msperl Apr 26, 2016
2f565ef
ARM: bcm2708: move i2c to use new clock framework
msperl Apr 26, 2016
1c2f14f
ARM: bcm2708: move pwm to new clock framework
msperl Apr 26, 2016
a9a3cee
ARM: bcm2708: fix auxiliar clock provider to use clock framework
msperl Apr 26, 2016
3abaa3d
ARM: bcm2708: fix register range of spi-aux
msperl Apr 26, 2016
064dca7
ARM: bcm2708: move to new clock manager and driver for aux-uart
msperl Apr 26, 2016
d8fe04a
ARM: bcm2708: remove pwm clock
msperl Apr 26, 2016
7302cde
MISC: bcm2835: smi: use clock manager and fix reload issues
msperl Apr 26, 2016
a524e40
ARM: bcm2835: move smi to use clock framework
msperl Apr 26, 2016
a5405ff
ARM: bcm2708: move mmc to use clock framework
msperl Apr 26, 2016
42d266e
ARM: bcm2708: move sdhost to use clock framework
msperl Apr 26, 2016
fc7be1c
ARM: bcm2708: remove clk_core as it is no longer used
msperl Apr 26, 2016
1fb2daf
Revert "bcm2835-i2s: Enable MMAP support via a DT property"
DigitalDreamtime Aug 11, 2016
33fc7b7
CM3: ARM: bcm2708: moved uart0 to use new clock framework
DigitalDreamtime Aug 16, 2016
5fb9ffe
CM3: ARM: bcm2708: remove clk_core as it is no longer used
DigitalDreamtime Aug 16, 2016
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 0 additions & 2 deletions arch/arm/boot/dts/bcm2708-rpi-b-plus.dts
Original file line number Diff line number Diff line change
Expand Up @@ -133,7 +133,6 @@
/ {
__overrides__ {
uart0 = <&uart0>,"status";
uart0_clkrate = <&clk_uart0>,"clock-frequency:0";
uart1 = <&uart1>,"status";
i2s = <&i2s>,"status";
spi = <&spi0>,"status";
Expand All @@ -143,7 +142,6 @@
i2c0_baudrate = <&i2c0>,"clock-frequency:0";
i2c1_baudrate = <&i2c1>,"clock-frequency:0";
i2c2_baudrate = <&i2c2>,"clock-frequency:0";
core_freq = <&clk_core>,"clock-frequency:0";

act_led_gpio = <&act_led>,"gpios:4";
act_led_activelow = <&act_led>,"gpios:8";
Expand Down
2 changes: 0 additions & 2 deletions arch/arm/boot/dts/bcm2708-rpi-b.dts
Original file line number Diff line number Diff line change
Expand Up @@ -127,7 +127,6 @@
/ {
__overrides__ {
uart0 = <&uart0>,"status";
uart0_clkrate = <&clk_uart0>,"clock-frequency:0";
uart1 = <&uart1>,"status";
i2s = <&i2s>,"status";
spi = <&spi0>,"status";
Expand All @@ -137,7 +136,6 @@
i2c0_baudrate = <&i2c0>,"clock-frequency:0";
i2c1_baudrate = <&i2c1>,"clock-frequency:0";
i2c2_baudrate = <&i2c2>,"clock-frequency:0";
core_freq = <&clk_core>,"clock-frequency:0";

act_led_gpio = <&act_led>,"gpios:4";
act_led_activelow = <&act_led>,"gpios:8";
Expand Down
1 change: 0 additions & 1 deletion arch/arm/boot/dts/bcm2708-rpi-cm.dts
Original file line number Diff line number Diff line change
Expand Up @@ -88,7 +88,6 @@
/ {
__overrides__ {
uart0 = <&uart0>,"status";
uart0_clkrate = <&clk_uart0>,"clock-frequency:0";
uart1 = <&uart1>,"status";
i2s = <&i2s>,"status";
spi = <&spi0>,"status";
Expand Down
2 changes: 0 additions & 2 deletions arch/arm/boot/dts/bcm2708-rpi-cm.dtsi
Original file line number Diff line number Diff line change
Expand Up @@ -38,8 +38,6 @@

/ {
__overrides__ {
core_freq = <&clk_core>,"clock-frequency:0";

act_led_gpio = <&act_led>,"gpios:4";
act_led_activelow = <&act_led>,"gpios:8";
act_led_trigger = <&act_led>,"linux,default-trigger";
Expand Down
101 changes: 26 additions & 75 deletions arch/arm/boot/dts/bcm2708_common.dtsi
Original file line number Diff line number Diff line change
Expand Up @@ -113,7 +113,6 @@
* oscillator.
*/
clocks = <&clk_osc>;
status = "disabled";
};

random: rng@7e104000 {
Expand All @@ -134,11 +133,12 @@
#interrupt-cells = <2>;
};

uart0: uart@7e201000 {
compatible = "arm,pl011", "arm,primecell";
uart0: serial@7e201000 {
compatible = "brcm,bcm2835-pl011", "arm,pl011", "arm,primecell";
reg = <0x7e201000 0x1000>;
interrupts = <2 25>;
clocks = <&clk_uart0 &clk_apb_p>;
clocks = <&cprman BCM2835_CLOCK_UART>,
<&cprman BCM2835_CLOCK_VPU>;
clock-names = "uartclk","apb_pclk";
arm,primecell-periphid = <0x00241011>; // For an explanation, see
// https://github.com/raspberrypi/linux/commit/13731d862cf5219216533a3b0de052cee4cc5038
Expand All @@ -149,7 +149,7 @@
compatible = "brcm,bcm2835-sdhost";
reg = <0x7e202000 0x100>;
interrupts = <2 24>;
clocks = <&clk_core>;
clocks = <&cprman BCM2835_CLOCK_VPU>;
dmas = <&dma 13>;
dma-names = "rx-tx";
brcm,overclock-50 = <0>;
Expand All @@ -160,8 +160,8 @@
i2s: i2s@7e203000 {
compatible = "brcm,bcm2835-i2s";
#sound-dai-cells = <0>;
reg = <0x7e203000 0x24>,
<0x7e101098 0x08>;
reg = <0x7e203000 0x24>;
clocks = <&cprman BCM2835_CLOCK_PCM>;

dmas = <&dma 2>, <&dma 3>;
dma-names = "tx", "rx";
Expand All @@ -172,7 +172,7 @@
compatible = "brcm,bcm2835-spi";
reg = <0x7e204000 0x1000>;
interrupts = <2 22>;
clocks = <&clk_core>;
clocks = <&cprman BCM2835_CLOCK_VPU>;
#address-cells = <1>;
#size-cells = <0>;
status = "disabled";
Expand All @@ -190,7 +190,7 @@
compatible = "brcm,bcm2708-i2c";
reg = <0x7e205000 0x1000>;
interrupts = <2 21>;
clocks = <&clk_core>;
clocks = <&cprman BCM2835_CLOCK_VPU>;
#address-cells = <1>;
#size-cells = <0>;
status = "disabled";
Expand Down Expand Up @@ -222,32 +222,31 @@
pwm: pwm@7e20c000 {
compatible = "brcm,bcm2835-pwm";
reg = <0x7e20c000 0x28>;
clocks = <&clk_pwm>;
clocks = <&cprman BCM2835_CLOCK_PWM>;
assigned-clocks = <&cprman BCM2835_CLOCK_PWM>;
assigned-clock-rates = <10000000>;
#pwm-cells = <2>;
status = "disabled";
};

aux: aux@0x7e215004 {
aux: aux@0x7e215000 {
compatible = "brcm,bcm2835-aux";
#clock-cells = <1>;
reg = <0x7e215000 0x8>;
clocks = <&clk_core>;
status = "disabled";
clocks = <&cprman BCM2835_CLOCK_VPU>;
};

uart1: uart@7e215040 {
compatible = "brcm,bcm2835-aux-uart", "ns16550";
uart1: serial@7e215040 {
compatible = "brcm,bcm2835-aux-uart";
reg = <0x7e215040 0x40>;
interrupts = <1 29>;
clocks = <&clk_uart1>;
reg-shift = <2>;
no-loopback-test;
clocks = <&aux BCM2835_AUX_CLOCK_UART>;
status = "disabled";
};

spi1: spi@7e215080 {
compatible = "brcm,bcm2835-aux-spi";
reg = <0x7e215080 0x40>, <0x7e215000 0x8>;
reg = <0x7e215080 0x40>;
interrupts = <1 29>;
clocks = <&aux BCM2835_AUX_CLOCK_SPI1>;
#address-cells = <1>;
Expand All @@ -257,7 +256,7 @@

spi2: spi@7e2150C0 {
compatible = "brcm,bcm2835-aux-spi";
reg = <0x7e2150C0 0x40>, <0x7e215000 0x8>;
reg = <0x7e2150C0 0x40>;
interrupts = <1 29>;
clocks = <&aux BCM2835_AUX_CLOCK_SPI2>;
#address-cells = <1>;
Expand All @@ -269,7 +268,7 @@
compatible = "brcm,bcm2835-mmc";
reg = <0x7e300000 0x100>;
interrupts = <2 30>;
clocks = <&clk_mmc>;
clocks = <&cprman BCM2835_CLOCK_EMMC>;
dmas = <&dma 11>;
dma-names = "rx-tx";
brcm,overclock-50 = <0>;
Expand All @@ -286,7 +285,7 @@
compatible = "brcm,bcm2708-i2c";
reg = <0x7e804000 0x1000>;
interrupts = <2 21>;
clocks = <&clk_core>;
clocks = <&cprman BCM2835_CLOCK_VPU>;
#address-cells = <1>;
#size-cells = <0>;
status = "disabled";
Expand All @@ -299,18 +298,19 @@
compatible = "brcm,bcm2708-i2c";
reg = <0x7e805000 0x1000>;
interrupts = <2 21>;
clocks = <&clk_core>;
clocks = <&cprman BCM2835_CLOCK_VPU>;
#address-cells = <1>;
#size-cells = <0>;
status = "disabled";
};

smi: smi@7e600000 {
compatible = "brcm,bcm2835-smi";
reg = <0x7e600000 0x44>, <0x7e1010b0 0x8>;
reg = <0x7e600000 0x100>;
interrupts = <2 16>;
brcm,smi-clock-source = <6>;
brcm,smi-clock-divisor = <4>;
clocks = <&cprman BCM2835_CLOCK_SMI>;
assigned-clocks = <&cprman BCM2835_CLOCK_SMI>;
assigned-clock-rates = <125000000>;
dmas = <&dma 4>;
dma-names = "rx-tx";
status = "disabled";
Expand Down Expand Up @@ -406,55 +406,6 @@
#address-cells = <1>;
#size-cells = <0>;

clk_core: clock@0 {
compatible = "fixed-clock";
reg = <0>;
#clock-cells = <0>;
clock-output-names = "core";
clock-frequency = <250000000>;
};

clk_mmc: clock@1 {
compatible = "fixed-clock";
reg = <1>;
#clock-cells = <0>;
clock-output-names = "mmc";
clock-frequency = <250000000>;
};

clk_uart0: clock@2 {
compatible = "fixed-clock";
reg = <2>;
#clock-cells = <0>;
clock-output-names = "uart0_pclk";
clock-frequency = <3000000>;
};

clk_apb_p: clock@3 {
compatible = "fixed-clock";
reg = <3>;
#clock-cells = <0>;
clock-output-names = "apb_pclk";
clock-frequency = <126000000>;
};

clk_pwm: clock@4 {
compatible = "fixed-clock";
reg = <4>;
#clock-cells = <0>;
clock-output-names = "pwm";
clock-frequency = <100000000>;
};

clk_uart1: clock@5 {
compatible = "fixed-factor-clock";
reg = <5>;
clocks = <&clk_core>;
#clock-cells = <0>;
clock-div = <1>;
clock-mult = <2>;
};

/* The oscillator is the root of the clock tree. */
clk_osc: clock@6 {
compatible = "fixed-clock";
Expand Down
2 changes: 0 additions & 2 deletions arch/arm/boot/dts/bcm2709-rpi-2-b.dts
Original file line number Diff line number Diff line change
Expand Up @@ -133,7 +133,6 @@
/ {
__overrides__ {
uart0 = <&uart0>,"status";
uart0_clkrate = <&clk_uart0>,"clock-frequency:0";
uart1 = <&uart1>,"status";
i2s = <&i2s>,"status";
spi = <&spi0>,"status";
Expand All @@ -143,7 +142,6 @@
i2c0_baudrate = <&i2c0>,"clock-frequency:0";
i2c1_baudrate = <&i2c1>,"clock-frequency:0";
i2c2_baudrate = <&i2c2>,"clock-frequency:0";
core_freq = <&clk_core>,"clock-frequency:0";

act_led_gpio = <&act_led>,"gpios:4";
act_led_activelow = <&act_led>,"gpios:8";
Expand Down
2 changes: 0 additions & 2 deletions arch/arm/boot/dts/bcm2710-rpi-3-b.dts
Original file line number Diff line number Diff line change
Expand Up @@ -184,7 +184,6 @@
/ {
__overrides__ {
uart0 = <&uart0>,"status";
uart0_clkrate = <&clk_uart0>,"clock-frequency:0";
uart1 = <&uart1>,"status";
i2s = <&i2s>,"status";
spi = <&spi0>,"status";
Expand All @@ -194,7 +193,6 @@
i2c0_baudrate = <&i2c0>,"clock-frequency:0";
i2c1_baudrate = <&i2c1>,"clock-frequency:0";
i2c2_baudrate = <&i2c2>,"clock-frequency:0";
core_freq = <&clk_core>,"clock-frequency:0";

act_led_gpio = <&act_led>,"gpios:4";
act_led_activelow = <&act_led>,"gpios:8";
Expand Down
2 changes: 0 additions & 2 deletions arch/arm/boot/dts/bcm2710-rpi-cm3.dts
Original file line number Diff line number Diff line change
Expand Up @@ -149,7 +149,6 @@
/ {
__overrides__ {
uart0 = <&uart0>,"status";
uart0_clkrate = <&clk_uart0>,"clock-frequency:0";
uart1 = <&uart1>,"status";
i2s = <&i2s>,"status";
spi = <&spi0>,"status";
Expand All @@ -159,7 +158,6 @@
i2c0_baudrate = <&i2c0>,"clock-frequency:0";
i2c1_baudrate = <&i2c1>,"clock-frequency:0";
i2c2_baudrate = <&i2c2>,"clock-frequency:0";
core_freq = <&clk_core>,"clock-frequency:0";

act_led_gpio = <&act_led>,"gpios:4";
act_led_activelow = <&act_led>,"gpios:8";
Expand Down
1 change: 0 additions & 1 deletion arch/arm/boot/dts/overlays/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,6 @@ dtbo-$(RPI_DT_OVERLAYS) += i2c-rtc.dtbo
dtbo-$(RPI_DT_OVERLAYS) += i2c0-bcm2708.dtbo
dtbo-$(RPI_DT_OVERLAYS) += i2c1-bcm2708.dtbo
dtbo-$(RPI_DT_OVERLAYS) += i2s-gpio28-31.dtbo
dtbo-$(RPI_DT_OVERLAYS) += i2s-mmap.dtbo
dtbo-$(RPI_DT_OVERLAYS) += iqaudio-dac.dtbo
dtbo-$(RPI_DT_OVERLAYS) += iqaudio-dacplus.dtbo
dtbo-$(RPI_DT_OVERLAYS) += iqaudio-digi-wm8804-audio.dtbo
Expand Down
6 changes: 0 additions & 6 deletions arch/arm/boot/dts/overlays/README
Original file line number Diff line number Diff line change
Expand Up @@ -510,12 +510,6 @@ Load: dtoverlay=i2s-gpio28-31
Params: <None>


Name: i2s-mmap
Info: Enables mmap support in the bcm2708-i2s driver
Load: dtoverlay=i2s-mmap
Params: <None>


Name: iqaudio-dac
Info: Configures the IQaudio DAC audio card
Load: dtoverlay=iqaudio-dac,<param>
Expand Down
13 changes: 0 additions & 13 deletions arch/arm/boot/dts/overlays/i2s-mmap-overlay.dts

This file was deleted.

4 changes: 2 additions & 2 deletions arch/arm/boot/dts/overlays/pi3-disable-bt-overlay.dts
Original file line number Diff line number Diff line change
Expand Up @@ -39,8 +39,8 @@
fragment@3 {
target-path = "/aliases";
__overlay__ {
serial0 = "/soc/uart@7e201000";
serial1 = "/soc/uart@7e215040";
serial0 = "/soc/serial@7e201000";
serial1 = "/soc/serial@7e215040";
};
};
};
4 changes: 2 additions & 2 deletions arch/arm/boot/dts/overlays/pi3-miniuart-bt-overlay.dts
Original file line number Diff line number Diff line change
Expand Up @@ -57,8 +57,8 @@
fragment@4 {
target-path = "/aliases";
__overlay__ {
serial0 = "/soc/uart@7e201000";
serial1 = "/soc/uart@7e215040";
serial0 = "/soc/serial@7e201000";
serial1 = "/soc/serial@7e215040";
};
};
};
3 changes: 3 additions & 0 deletions arch/arm/configs/bcm2709_defconfig
Original file line number Diff line number Diff line change
Expand Up @@ -595,6 +595,9 @@ CONFIG_SERIAL_8250_CONSOLE=y
# CONFIG_SERIAL_8250_DMA is not set
CONFIG_SERIAL_8250_NR_UARTS=1
CONFIG_SERIAL_8250_RUNTIME_UARTS=0
CONFIG_SERIAL_8250_EXTENDED=y
CONFIG_SERIAL_8250_SHARE_IRQ=y
CONFIG_SERIAL_8250_BCM2835AUX=y
CONFIG_SERIAL_OF_PLATFORM=y
CONFIG_SERIAL_AMBA_PL011=y
CONFIG_SERIAL_AMBA_PL011_CONSOLE=y
Expand Down
3 changes: 3 additions & 0 deletions arch/arm/configs/bcmrpi_defconfig
Original file line number Diff line number Diff line change
Expand Up @@ -587,6 +587,9 @@ CONFIG_SERIAL_8250_CONSOLE=y
# CONFIG_SERIAL_8250_DMA is not set
CONFIG_SERIAL_8250_NR_UARTS=1
CONFIG_SERIAL_8250_RUNTIME_UARTS=0
CONFIG_SERIAL_8250_EXTENDED=y
CONFIG_SERIAL_8250_SHARE_IRQ=y
CONFIG_SERIAL_8250_BCM2835AUX=y
CONFIG_SERIAL_OF_PLATFORM=y
CONFIG_SERIAL_AMBA_PL011=y
CONFIG_SERIAL_AMBA_PL011_CONSOLE=y
Expand Down
Loading