brcm2708: update linux 4.4 patches to latest version
[librecmc/librecmc.git] / target / linux / brcm2708 / patches-4.4 / 0238-BCM270X_DT-Add-dpi24-overlay.patch
1 From 3533e797aaf506f1e81a3b53bf04ce9592005756 Mon Sep 17 00:00:00 2001
2 From: Phil Elwell <phil@raspberrypi.org>
3 Date: Tue, 5 Apr 2016 13:01:54 +0100
4 Subject: [PATCH 238/304] BCM270X_DT: Add dpi24 overlay
5
6 Signed-off-by: Phil Elwell <phil@raspberrypi.org>
7 ---
8  arch/arm/boot/dts/overlays/Makefile          |  1 +
9  arch/arm/boot/dts/overlays/README            |  8 +++++++
10  arch/arm/boot/dts/overlays/dpi24-overlay.dts | 31 ++++++++++++++++++++++++++++
11  3 files changed, 40 insertions(+)
12  create mode 100644 arch/arm/boot/dts/overlays/dpi24-overlay.dts
13
14 --- a/arch/arm/boot/dts/overlays/Makefile
15 +++ b/arch/arm/boot/dts/overlays/Makefile
16 @@ -15,6 +15,7 @@ endif
17  dtbo-$(RPI_DT_OVERLAYS) += ads7846.dtbo
18  dtbo-$(RPI_DT_OVERLAYS) += at86rf233.dtbo
19  dtbo-$(RPI_DT_OVERLAYS) += bmp085_i2c-sensor.dtbo
20 +dtbo-$(RPI_DT_OVERLAYS) += dpi24.dtbo
21  dtbo-$(RPI_DT_OVERLAYS) += dwc2.dtbo
22  dtbo-$(RPI_DT_OVERLAYS) += dwc-otg.dtbo
23  dtbo-$(RPI_DT_OVERLAYS) += dht11.dtbo
24 --- a/arch/arm/boot/dts/overlays/README
25 +++ b/arch/arm/boot/dts/overlays/README
26 @@ -213,6 +213,14 @@ Params: gpiopin                 GPIO con
27                                  (default 4)
28  
29  
30 +Name:   dpi24
31 +Info:   Overlay for a generic 24-bit DPI display
32 +        This uses GPIOs 0-27 (so no I2C, uart etc.), and activates the output
33 +        2-3 seconds after the kernel has started.
34 +Load:   dtoverlay=dpi24
35 +Params: <None>
36 +
37 +
38  Name:   dwc-otg
39  Info:   Selects the dwc_otg USB controller driver which has fiq support. This
40          is the default on all except the Pi Zero which defaults to dwc2.
41 --- /dev/null
42 +++ b/arch/arm/boot/dts/overlays/dpi24-overlay.dts
43 @@ -0,0 +1,31 @@
44 +/dts-v1/;
45 +/plugin/;
46 +
47 +/{
48 +       compatible = "brcm,bcm2708";
49 +
50 +       // There is no DPI driver module, but we need a platform device
51 +       // node (that doesn't already use pinctrl) to hang the pinctrl
52 +       // reference on - leds will do
53 +
54 +       fragment@0 {
55 +               target = <&leds>;
56 +               __overlay__ {
57 +                       pinctrl-names = "default";
58 +                       pinctrl-0 = <&dpi24_pins>;
59 +               };
60 +       };
61 +
62 +       fragment@1 {
63 +               target = <&gpio>;
64 +               __overlay__ {
65 +                       dpi24_pins: dpi24_pins {
66 +                               brcm,pins = <0 1 2 3 4 5 6 7 8 9 10 11
67 +                                            12 13 14 15 16 17 18 19 20
68 +                                            21 22 23 24 25 26 27>;
69 +                               brcm,function = <6>; /* alt2 */
70 +                               brcm,pull = <0>; /* no pull */
71 +                       };
72 +               };
73 +       };
74 +};