Skip to content

Commit

Permalink
overlays: Add mcp342x overlay
Browse files Browse the repository at this point in the history
Support the MCP342x family of ADCs from Microchip.

See: #2819

Signed-off-by: Phil Elwell <[email protected]>
  • Loading branch information
Phil Elwell authored and popcornmix committed Mar 12, 2019
1 parent a4d9cc9 commit f66254c
Show file tree
Hide file tree
Showing 3 changed files with 110 additions and 0 deletions.
1 change: 1 addition & 0 deletions arch/arm/boot/dts/overlays/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -77,6 +77,7 @@ dtbo-$(CONFIG_ARCH_BCM2835) += \
mcp2515-can1.dtbo \
mcp3008.dtbo \
mcp3202.dtbo \
mcp342x.dtbo \
media-center.dtbo \
midi-uart0.dtbo \
midi-uart1.dtbo \
Expand Down
16 changes: 16 additions & 0 deletions arch/arm/boot/dts/overlays/README
Original file line number Diff line number Diff line change
Expand Up @@ -1251,6 +1251,22 @@ Params: spi<n>-<m>-present boolean, configure device at spi<n>, cs<m>
spi<n>-<m>-speed integer, set the spi bus speed for this device


Name: mcp342x
Info: Overlay for activation of Microchip MCP3421-3428 ADCs over I2C
Load: dtoverlay=mcp342x,<param>=<val>
Params: addr I2C bus address of device, for devices with
addresses that are configurable, e.g. by
hardware links (default=0x68)
mcp3421 The device is an MCP3421
mcp3422 The device is an MCP3422
mcp3423 The device is an MCP3423
mcp3424 The device is an MCP3424
mcp3425 The device is an MCP3425
mcp3426 The device is an MCP3426
mcp3427 The device is an MCP3427
mcp3428 The device is an MCP3428


Name: media-center
Info: Media Center HAT - 2.83" Touch Display + extras by Pi Supply
Load: dtoverlay=media-center,<param>=<val>
Expand Down
93 changes: 93 additions & 0 deletions arch/arm/boot/dts/overlays/mcp342x-overlay.dts
Original file line number Diff line number Diff line change
@@ -0,0 +1,93 @@
// Overlay for MCP3421-8 ADCs from Microchip Semiconductor

/dts-v1/;
/plugin/;

/ {
compatible = "brcm,bcm2835", "brcm,bcm2708", "brcm,bcm2709";

fragment@0 {
target = <&i2c1>;
__overlay__ {
#address-cells = <1>;
#size-cells = <0>;

status = "okay";

mcp342x: mcp@68 {
reg = <0x68>;

status = "okay";
};
};
};

fragment@1 {
target = <&mcp342x>;
__dormant__ {
compatible = "microchip,mcp3421";
};
};

fragment@2 {
target = <&mcp342x>;
__dormant__ {
compatible = "microchip,mcp3422";
};
};

fragment@3 {
target = <&mcp342x>;
__dormant__ {
compatible = "microchip,mcp3423";
};
};

fragment@4 {
target = <&mcp342x>;
__dormant__ {
compatible = "microchip,mcp3424";
};
};

fragment@5 {
target = <&mcp342x>;
__dormant__ {
compatible = "microchip,mcp3425";
};
};

fragment@6 {
target = <&mcp342x>;
__dormant__ {
compatible = "microchip,mcp3426";
};
};

fragment@7 {
target = <&mcp342x>;
__dormant__ {
compatible = "microchip,mcp3427";
};
};

fragment@8 {
target = <&mcp342x>;
__dormant__ {
compatible = "microchip,mcp3428";
};
};

__overrides__ {
addr = <&mcp342x>,"reg:0";
mcp3421 = <0>,"=1";
mcp3422 = <0>,"=2";
mcp3423 = <0>,"=3";
mcp3424 = <0>,"=4";
mcp3425 = <0>,"=5";
mcp3426 = <0>,"=6";
mcp3427 = <0>,"=7";
mcp3428 = <0>,"=8";
};
};

0 comments on commit f66254c

Please sign in to comment.