brcm63xx: rename target to bcm63xx
[openwrt/staging/stintel.git] / target / linux / brcm2708 / patches-4.19 / 950-0268-overlays-Add-mcp342x-overlay.patch
1 From b71f1fd962c66ba3fa46483f193cc2263146c5bf Mon Sep 17 00:00:00 2001
2 From: Phil Elwell <phil@raspberrypi.org>
3 Date: Mon, 21 Jan 2019 12:23:55 +0000
4 Subject: [PATCH] overlays: Add mcp342x overlay
5
6 Support the MCP342x family of ADCs from Microchip.
7
8 See: https://github.com/raspberrypi/linux/issues/2819
9
10 Signed-off-by: Phil Elwell <phil@raspberrypi.org>
11 ---
12 arch/arm/boot/dts/overlays/Makefile | 1 +
13 arch/arm/boot/dts/overlays/README | 16 ++++
14 .../arm/boot/dts/overlays/mcp342x-overlay.dts | 93 +++++++++++++++++++
15 3 files changed, 110 insertions(+)
16 create mode 100644 arch/arm/boot/dts/overlays/mcp342x-overlay.dts
17
18 --- a/arch/arm/boot/dts/overlays/Makefile
19 +++ b/arch/arm/boot/dts/overlays/Makefile
20 @@ -79,6 +79,7 @@ dtbo-$(CONFIG_ARCH_BCM2835) += \
21 mcp2515-can1.dtbo \
22 mcp3008.dtbo \
23 mcp3202.dtbo \
24 + mcp342x.dtbo \
25 media-center.dtbo \
26 midi-uart0.dtbo \
27 midi-uart1.dtbo \
28 --- a/arch/arm/boot/dts/overlays/README
29 +++ b/arch/arm/boot/dts/overlays/README
30 @@ -1277,6 +1277,22 @@ Params: spi<n>-<m>-present boolean,
31 spi<n>-<m>-speed integer, set the spi bus speed for this device
32
33
34 +Name: mcp342x
35 +Info: Overlay for activation of Microchip MCP3421-3428 ADCs over I2C
36 +Load: dtoverlay=mcp342x,<param>=<val>
37 +Params: addr I2C bus address of device, for devices with
38 + addresses that are configurable, e.g. by
39 + hardware links (default=0x68)
40 + mcp3421 The device is an MCP3421
41 + mcp3422 The device is an MCP3422
42 + mcp3423 The device is an MCP3423
43 + mcp3424 The device is an MCP3424
44 + mcp3425 The device is an MCP3425
45 + mcp3426 The device is an MCP3426
46 + mcp3427 The device is an MCP3427
47 + mcp3428 The device is an MCP3428
48 +
49 +
50 Name: media-center
51 Info: Media Center HAT - 2.83" Touch Display + extras by Pi Supply
52 Load: dtoverlay=media-center,<param>=<val>
53 --- /dev/null
54 +++ b/arch/arm/boot/dts/overlays/mcp342x-overlay.dts
55 @@ -0,0 +1,93 @@
56 +// Overlay for MCP3421-8 ADCs from Microchip Semiconductor
57 +
58 +/dts-v1/;
59 +/plugin/;
60 +
61 +/ {
62 + compatible = "brcm,bcm2835", "brcm,bcm2708", "brcm,bcm2709";
63 +
64 + fragment@0 {
65 + target = <&i2c1>;
66 + __overlay__ {
67 + #address-cells = <1>;
68 + #size-cells = <0>;
69 +
70 + status = "okay";
71 +
72 + mcp342x: mcp@68 {
73 + reg = <0x68>;
74 +
75 + status = "okay";
76 + };
77 + };
78 + };
79 +
80 + fragment@1 {
81 + target = <&mcp342x>;
82 + __dormant__ {
83 + compatible = "microchip,mcp3421";
84 + };
85 + };
86 +
87 + fragment@2 {
88 + target = <&mcp342x>;
89 + __dormant__ {
90 + compatible = "microchip,mcp3422";
91 + };
92 + };
93 +
94 + fragment@3 {
95 + target = <&mcp342x>;
96 + __dormant__ {
97 + compatible = "microchip,mcp3423";
98 + };
99 + };
100 +
101 + fragment@4 {
102 + target = <&mcp342x>;
103 + __dormant__ {
104 + compatible = "microchip,mcp3424";
105 + };
106 + };
107 +
108 + fragment@5 {
109 + target = <&mcp342x>;
110 + __dormant__ {
111 + compatible = "microchip,mcp3425";
112 + };
113 + };
114 +
115 + fragment@6 {
116 + target = <&mcp342x>;
117 + __dormant__ {
118 + compatible = "microchip,mcp3426";
119 + };
120 + };
121 +
122 + fragment@7 {
123 + target = <&mcp342x>;
124 + __dormant__ {
125 + compatible = "microchip,mcp3427";
126 + };
127 + };
128 +
129 + fragment@8 {
130 + target = <&mcp342x>;
131 + __dormant__ {
132 + compatible = "microchip,mcp3428";
133 + };
134 + };
135 +
136 + __overrides__ {
137 + addr = <&mcp342x>,"reg:0";
138 + mcp3421 = <0>,"=1";
139 + mcp3422 = <0>,"=2";
140 + mcp3423 = <0>,"=3";
141 + mcp3424 = <0>,"=4";
142 + mcp3425 = <0>,"=5";
143 + mcp3426 = <0>,"=6";
144 + mcp3427 = <0>,"=7";
145 + mcp3428 = <0>,"=8";
146 + };
147 +};
148 +