bcm27xx: update patches from RPi foundation
[oweals/openwrt.git] / target / linux / bcm27xx / patches-5.4 / 950-0371-ARM-dts-bcm283x-Move-system-timer-back-to-bcm283x.dt.patch
1 From fcd4bc412167d2a79bf63603e883f4960ca6b2a1 Mon Sep 17 00:00:00 2001
2 From: Stefan Wahren <wahrenst@gmx.net>
3 Date: Fri, 27 Dec 2019 11:15:00 +0100
4 Subject: [PATCH] ARM: dts: bcm283x: Move system timer back to
5  bcm283x.dtsi
6
7 During Raspberry Pi 4 upstream discussion Tim Gover confirmed that the
8 system timer also exists on BCM2711. So move it back to bcm283x.dtsi and
9 overwrite the interrupt definition in bcm2838.dtsi.
10
11 Signed-off-by: Stefan Wahren <wahrenst@gmx.net>
12 ---
13  arch/arm/boot/dts/bcm2835-common.dtsi | 11 -----------
14  arch/arm/boot/dts/bcm2838.dtsi        |  7 +++++++
15  arch/arm/boot/dts/bcm283x.dtsi        | 11 +++++++++++
16  3 files changed, 18 insertions(+), 11 deletions(-)
17
18 --- a/arch/arm/boot/dts/bcm2835-common.dtsi
19 +++ b/arch/arm/boot/dts/bcm2835-common.dtsi
20 @@ -6,17 +6,6 @@
21  
22  / {
23         soc {
24 -               timer@7e003000 {
25 -                       compatible = "brcm,bcm2835-system-timer";
26 -                       reg = <0x7e003000 0x1000>;
27 -                       interrupts = <1 0>, <1 1>, <1 2>, <1 3>;
28 -                       /* This could be a reference to BCM2835_CLOCK_TIMER,
29 -                        * but we don't have the driver using the common clock
30 -                        * support yet.
31 -                        */
32 -                       clock-frequency = <1000000>;
33 -               };
34 -
35                 intc: interrupt-controller@7e00b200 {
36                         compatible = "brcm,bcm2835-armctrl-ic";
37                         reg = <0x7e00b200 0x200>;
38 --- a/arch/arm/boot/dts/bcm2838.dtsi
39 +++ b/arch/arm/boot/dts/bcm2838.dtsi
40 @@ -711,6 +711,13 @@
41         interrupts = <GIC_SPI 120 IRQ_TYPE_LEVEL_HIGH>;
42  };
43  
44 +&system_timer {
45 +       interrupts = <GIC_SPI 64 IRQ_TYPE_LEVEL_HIGH>,
46 +                    <GIC_SPI 65 IRQ_TYPE_LEVEL_HIGH>,
47 +                    <GIC_SPI 66 IRQ_TYPE_LEVEL_HIGH>,
48 +                    <GIC_SPI 67 IRQ_TYPE_LEVEL_HIGH>;
49 +};
50 +
51  &uart0 {
52         interrupts = <GIC_SPI 121 IRQ_TYPE_LEVEL_HIGH>;
53  };
54 --- a/arch/arm/boot/dts/bcm283x.dtsi
55 +++ b/arch/arm/boot/dts/bcm283x.dtsi
56 @@ -56,6 +56,17 @@
57                 #address-cells = <1>;
58                 #size-cells = <1>;
59  
60 +               system_timer: timer@7e003000 {
61 +                       compatible = "brcm,bcm2835-system-timer";
62 +                       reg = <0x7e003000 0x1000>;
63 +                       interrupts = <1 0>, <1 1>, <1 2>, <1 3>;
64 +                       /* This could be a reference to BCM2835_CLOCK_TIMER,
65 +                        * but we don't have the driver using the common clock
66 +                        * support yet.
67 +                        */
68 +                       clock-frequency = <1000000>;
69 +               };
70 +
71                 txp: txp@7e004000 {
72                         compatible = "brcm,bcm2835-txp";
73                         reg = <0x7e004000 0x20>;