CC: upgrade kernel to 3.18.68
[15.05/openwrt.git] / target / linux / bcm53xx / patches-3.18 / 073-ARM-BCM5301X-Add-DT-for-D-Link-DIR-885L.patch
1 From 3ea03a9d512ca19d59315492230e954a1653ff6e Mon Sep 17 00:00:00 2001
2 From: =?UTF-8?q?Rafa=C5=82=20Mi=C5=82ecki?= <zajec5@gmail.com>
3 Date: Tue, 26 Jan 2016 23:35:16 +0100
4 Subject: [PATCH] ARM: BCM5301X: Add DT for D-Link DIR-885L
5 MIME-Version: 1.0
6 Content-Type: text/plain; charset=UTF-8
7 Content-Transfer-Encoding: 8bit
8
9 It's device based on BCM47094 which is quite similar to BCM4709 except
10 for higher CPU frequency. This device has 2 flash memories, it boots
11 from serial one and stores firmware on NAND. Other than that we define
12 standard stuff like LEDs, buttons and UART.
13
14 Signed-off-by: Rafał Miłecki <zajec5@gmail.com>
15 Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
16 ---
17 --- a/arch/arm/boot/dts/Makefile
18 +++ b/arch/arm/boot/dts/Makefile
19 @@ -68,7 +68,8 @@ dtb-$(CONFIG_ARCH_BCM_5301X) += \
20         bcm4709-asus-rt-ac87u.dtb \
21         bcm4709-buffalo-wxr-1900dhp.dtb \
22         bcm4709-netgear-r7000.dtb \
23 -       bcm4709-netgear-r8000.dtb
24 +       bcm4709-netgear-r8000.dtb \
25 +       bcm47094-dlink-dir-885l.dtb
26  dtb-$(CONFIG_ARCH_BCM_63XX) += bcm963138dvt.dtb
27  dtb-$(CONFIG_ARCH_BCM_MOBILE) += bcm28155-ap.dtb \
28         bcm21664-garnet.dtb
29 --- /dev/null
30 +++ b/arch/arm/boot/dts/bcm47094-dlink-dir-885l.dts
31 @@ -0,0 +1,111 @@
32 +/*
33 + * Broadcom BCM470X / BCM5301X ARM platform code.
34 + * DTS for D-Link DIR-885L
35 + *
36 + * Copyright (C) 2016 Rafał Miłecki <zajec5@gmail.com>
37 + *
38 + * Licensed under the GNU/GPL. See COPYING for details.
39 + */
40 +
41 +/dts-v1/;
42 +
43 +#include "bcm4708.dtsi"
44 +#include "bcm5301x-nand-cs0-bch8.dtsi"
45 +
46 +/ {
47 +       compatible = "dlink,dir-885l", "brcm,bcm47094", "brcm,bcm4708";
48 +       model = "D-Link DIR-885L";
49 +
50 +       chosen {
51 +               bootargs = "console=ttyS0,115200";
52 +       };
53 +
54 +       memory {
55 +               reg = <0x00000000 0x08000000>;
56 +       };
57 +
58 +       nand: nand@18028000 {
59 +               nandcs@0 {
60 +                       partition@0 {
61 +                               label = "firmware";
62 +                               reg = <0x00000000 0x08000000>;
63 +                       };
64 +               };
65 +       };
66 +
67 +       leds {
68 +               compatible = "gpio-leds";
69 +
70 +               power-white {
71 +                       label = "bcm53xx:white:power";
72 +                       gpios = <&chipcommon 0 GPIO_ACTIVE_LOW>;
73 +                       linux,default-trigger = "default-on";
74 +               };
75 +
76 +               wan-white {
77 +                       label = "bcm53xx:white:wan";
78 +                       gpios = <&chipcommon 1 GPIO_ACTIVE_LOW>;
79 +                       linux,default-trigger = "default-off";
80 +               };
81 +
82 +               power-amber {
83 +                       label = "bcm53xx:amber:power";
84 +                       gpios = <&chipcommon 2 GPIO_ACTIVE_LOW>;
85 +                       linux,default-trigger = "default-off";
86 +               };
87 +
88 +               wan-amber {
89 +                       label = "bcm53xx:amber:wan";
90 +                       gpios = <&chipcommon 3 GPIO_ACTIVE_LOW>;
91 +                       linux,default-trigger = "default-off";
92 +               };
93 +
94 +               usb3-white {
95 +                       label = "bcm53xx:white:usb3";
96 +                       gpios = <&chipcommon 8 GPIO_ACTIVE_LOW>;
97 +                       linux,default-trigger = "default-off";
98 +               };
99 +
100 +               2ghz {
101 +                       label = "bcm53xx:white:2ghz";
102 +                       gpios = <&chipcommon 13 GPIO_ACTIVE_LOW>;
103 +                       linux,default-trigger = "default-off";
104 +               };
105 +
106 +               5ghz {
107 +                       label = "bcm53xx:white:5ghz";
108 +                       gpios = <&chipcommon 14 GPIO_ACTIVE_LOW>;
109 +                       linux,default-trigger = "default-off";
110 +               };
111 +       };
112 +
113 +       gpio-keys {
114 +               compatible = "gpio-keys";
115 +               #address-cells = <1>;
116 +               #size-cells = <0>;
117 +
118 +               wps {
119 +                       label = "WPS";
120 +                       linux,code = <KEY_WPS_BUTTON>;
121 +                       gpios = <&chipcommon 7 GPIO_ACTIVE_LOW>;
122 +               };
123 +
124 +               /* Switch: router / extender */
125 +               extender {
126 +                       label = "Extender";
127 +                       linux,code = <BTN_0>;
128 +                       gpios = <&chipcommon 10 GPIO_ACTIVE_LOW>;
129 +               };
130 +
131 +               restart {
132 +                       label = "Reset";
133 +                       linux,code = <KEY_RESTART>;
134 +                       gpios = <&chipcommon 17 GPIO_ACTIVE_LOW>;
135 +               };
136 +       };
137 +};
138 +
139 +&uart0 {
140 +       status = "okay";
141 +       clock-frequency = <125000000>;
142 +};