1057ffcec354c9028842a92c7593bd66ab481f88
[oweals/openwrt.git] /
1 From 092ccf0415c720a1e9458a46fe75f77574027a55 Mon Sep 17 00:00:00 2001
2 From: Florian Fainelli <f.fainelli@gmail.com>
3 Date: Tue, 18 Jul 2017 12:37:37 -0700
4 Subject: [PATCH] ARM: dts: BCM53573: Add Broadcom BCM947189ACDBMR board
5  support
6
7 Adds support for the Broadcom reference board BCM947189ACDMBR which
8 features the following:
9
10 * 128MB of DRAM
11 * External MoCA support through a Broadcom BCM6802 chip
12 * 1x external Gigabit PHY through the external BCM6802
13 * 1x USB 2.0 port
14 * 1x PCIE slot
15 * Few configurable buttons and LEDs
16
17 Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
18 ---
19  arch/arm/boot/dts/Makefile            |  3 +-
20  arch/arm/boot/dts/bcm947189acdbmr.dts | 97 +++++++++++++++++++++++++++++++++++
21  2 files changed, 99 insertions(+), 1 deletion(-)
22  create mode 100644 arch/arm/boot/dts/bcm947189acdbmr.dts
23
24 --- a/arch/arm/boot/dts/Makefile
25 +++ b/arch/arm/boot/dts/Makefile
26 @@ -103,7 +103,8 @@ dtb-$(CONFIG_ARCH_BCM_5301X) += \
27         bcm953012hr.dtb \
28         bcm953012k.dtb
29  dtb-$(CONFIG_ARCH_BCM_53573) += \
30 -       bcm47189-tenda-ac9.dtb
31 +       bcm47189-tenda-ac9.dtb \
32 +       bcm947189acdbmr.dtb
33  dtb-$(CONFIG_ARCH_BCM_63XX) += \
34         bcm963138dvt.dtb
35  dtb-$(CONFIG_ARCH_BCM_CYGNUS) += \
36 --- /dev/null
37 +++ b/arch/arm/boot/dts/bcm947189acdbmr.dts
38 @@ -0,0 +1,97 @@
39 +/*
40 + * Copyright (C) 2017 Broadcom
41 + * Author: Florian Fainelli <f.fainelli@gmail.com>
42 + *
43 + * Licensed under the ISC license.
44 + */
45 +
46 +/dts-v1/;
47 +
48 +#include "bcm53573.dtsi"
49 +
50 +/ {
51 +       compatible = "brcm,bcm947189acdbmr", "brcm,bcm47189", "brcm,bcm53573";
52 +       model = "Broadcom BCM947189ACDBMR";
53 +
54 +       chosen {
55 +               bootargs = "console=ttyS0,115200 earlycon";
56 +       };
57 +
58 +       memory {
59 +               reg = <0x00000000 0x08000000>;
60 +       };
61 +
62 +       leds {
63 +               compatible = "gpio-leds";
64 +
65 +               wps {
66 +                       label = "bcm53xx:blue:wps";
67 +                       gpios = <&chipcommon 10 GPIO_ACTIVE_HIGH>;
68 +               };
69 +
70 +               5ghz {
71 +                       label = "bcm53xx:blue:5ghz";
72 +                       gpios = <&chipcommon 11 GPIO_ACTIVE_HIGH>;
73 +               };
74 +
75 +               2ghz {
76 +                       label = "bcm53xx:blue:2ghz";
77 +                       gpios = <&chipcommon 12 GPIO_ACTIVE_HIGH>;
78 +               };
79 +       };
80 +
81 +       gpio-keys {
82 +               compatible = "gpio-keys";
83 +               #address-cells = <1>;
84 +               #size-cells = <0>;
85 +
86 +               restart {
87 +                       label = "Reset";
88 +                       linux,code = <KEY_RESTART>;
89 +                       gpios = <&chipcommon 7 GPIO_ACTIVE_HIGH>;
90 +               };
91 +
92 +               wps {
93 +                       label = "WPS";
94 +                       linux,code = <KEY_WPS_BUTTON>;
95 +                       gpios = <&chipcommon 9 GPIO_ACTIVE_LOW>;
96 +               };
97 +       };
98 +
99 +       spi {
100 +               compatible = "spi-gpio";
101 +               num-chipselects = <1>;
102 +               gpio-sck = <&chipcommon 21 0>;
103 +               gpio-miso = <&chipcommon 22 0>;
104 +               gpio-mosi = <&chipcommon 23 0>;
105 +               cs-gpios = <&chipcommon 24 0>;
106 +               #address-cells = <1>;
107 +               #size-cells = <0>;
108 +
109 +               /* External BCM6802 MoCA chip is connected */
110 +       };
111 +};
112 +
113 +&pcie0 {
114 +       ranges = <0x00000000 0 0 0 0 0x00100000>;
115 +       #address-cells = <3>;
116 +       #size-cells = <2>;
117 +
118 +       bridge@0,0,0 {
119 +               reg = <0x0000 0 0 0 0>;
120 +               ranges = <0x00000000 0 0 0 0 0 0 0x00100000>;
121 +               #address-cells = <3>;
122 +               #size-cells = <2>;
123 +
124 +               wifi@0,1,0 {
125 +                       reg = <0x0000 0 0 0 0>;
126 +                       ranges = <0x00000000 0 0 0 0x00100000>;
127 +                       #address-cells = <1>;
128 +                       #size-cells = <1>;
129 +               };
130 +       };
131 +};
132 +
133 +&usb2 {
134 +       vcc-gpio = <&chipcommon 8 GPIO_ACTIVE_HIGH>;
135 +};