Commit 640f592e authored by Phil Elwell's avatar Phil Elwell
Browse files

overlays: Add mcp342x overlay

Support the MCP342x family of ADCs from Microchip.

See: https://github.com/raspberrypi/linux/issues/2819



Signed-off-by: default avatarPhil Elwell <phil@raspberrypi.org>
parent a9e96b88
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -79,6 +79,7 @@ dtbo-$(CONFIG_ARCH_BCM2835) += \
	mcp2515-can1.dtbo \
	mcp3008.dtbo \
	mcp3202.dtbo \
	mcp342x.dtbo \
	media-center.dtbo \
	midi-uart0.dtbo \
	midi-uart1.dtbo \
+16 −0
Original line number Diff line number Diff line
@@ -1267,6 +1267,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>
+93 −0
Original line number Diff line number Diff line
// 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";
	};
};