Skip to content

New dtoverlays for max6675 and max31855 thermocouples #3763

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
wants to merge 1 commit into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions arch/arm/boot/dts/overlays/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -98,6 +98,7 @@ dtbo-$(CONFIG_ARCH_BCM2835) += \
justboom-digi.dtbo \
ltc294x.dtbo \
max98357a.dtbo \
maxtherm.dtbo \
mbed-dac.dtbo \
mcp23017.dtbo \
mcp23s17.dtbo \
Expand Down
30 changes: 30 additions & 0 deletions arch/arm/boot/dts/overlays/README
Original file line number Diff line number Diff line change
Expand Up @@ -1622,6 +1622,36 @@ Params: no-sdmode Driver does not manage the state of the DAC's
of the DAC (default GPIO4 if parameter omitted).


Name: maxtherm
Info: Configure a MAX6675 or MAX31855 thermocouple as an IIO device.

For devices on spi1 or spi2, the interfaces should be enabled
with one of the spi1-1/2/3cs and/or spi2-1/2/3cs overlays.
The overlay expects to disable the relevant spidev node, so also using
e.g. cs0_spidev=off is unnecessary.

Note: with the 5.7 kernel (and later) there will also be
overlays for MAX31855E, MAX31855J, MAX31855K,
MAX31885N, MAX31855R, MAX31855S and MAX31855T.

Example:
MAX31855 on /dev/spidev0.0
dtoverlay=maxtherm,spi0-0,max31855

Load: dtoverlay=maxtherm,<param>=<val>
Params: spi<n>-<m> Configure device at spi<n>, cs<m>
(boolean, required)
max6675 Enable support for the MAX6675 (default)
max31855 Enable support for the MAX31855
max31855e Enable support for the MAX31855E
max31855j Enable support for the MAX31855J
max31855k Enable support for the MAX31855K
max31855n Enable support for the MAX31855N
max31855r Enable support for the MAX31855R
max31855s Enable support for the MAX31855S
max31855t Enable support for the MAX31855T


Name: mbed-dac
Info: Configures the mbed AudioCODEC (TLV320AIC23B)
Load: dtoverlay=mbed-dac
Expand Down
166 changes: 166 additions & 0 deletions arch/arm/boot/dts/overlays/maxtherm-overlay.dts
Original file line number Diff line number Diff line change
@@ -0,0 +1,166 @@
/*
* Universal device tree overlay for SPI devices
*/

/dts-v1/;
/plugin/;

/ {
compatible = "brcm,bcm2835";

fragment@0 {
target = <&spidev0>;
__dormant__ {
status = "disabled";
};
};

fragment@1 {
target = <&spidev1>;
__dormant__ {
status = "disabled";
};
};

fragment@2 {
target-path = "spi1/spidev@0";
__dormant__ {
status = "disabled";
};
};

fragment@3 {
target-path = "spi1/spidev@1";
__dormant__ {
status = "disabled";
};
};

fragment@4 {
target-path = "spi1/spidev@2";
__dormant__ {
status = "disabled";
};
};

fragment@5 {
target-path = "spi2/spidev@0";
__dormant__ {
status = "disabled";
};
};

fragment@6 {
target-path = "spi2/spidev@1";
__dormant__ {
status = "disabled";
};
};

fragment@7 {
target-path = "spi2/spidev@2";
__dormant__ {
status = "disabled";
};
};

maxfrag: fragment@8 {
target = <&spi0>;
__overlay__ {
status = "okay";
#address-cells = <1>;
#size-cells = <0>;

max: maxtherm@0 {
compatible = "maxim,max6675";
reg = <0>;
spi-max-frequency = <500000>;
};
};
};

fragment@9 {
target = <&max>;
__dormant__ {
compatible = "maxim,max31855e", "maxim,max31855";
};
};

fragment@10 {
target = <&max>;
__dormant__ {
compatible = "maxim,max31855j", "maxim,max31855";
};
};

fragment@11 {
target = <&max>;
__dormant__ {
compatible = "maxim,max31855k", "maxim,max31855";
};
};

fragment@12 {
target = <&max>;
__dormant__ {
compatible = "maxim,max31855n", "maxim,max31855";
};
};

fragment@13 {
target = <&max>;
__dormant__ {
compatible = "maxim,max31855r", "maxim,max31855";
};
};

fragment@14 {
target = <&max>;
__dormant__ {
compatible = "maxim,max31855s", "maxim,max31855";
};
};

fragment@15 {
target = <&max>;
__dormant__ {
compatible = "maxim,max31855t", "maxim,max31855";
};
};

__overrides__ {
spi0-0 = <0>, "+0",
<&maxfrag>,"target:0=",<&spi0>,
<&max>,"reg:0=0";
spi0-1 = <0>, "+1",
<&maxfrag>,"target:0=",<&spi0>,
<&max>,"reg:0=1";
spi1-0 = <0>, "+2",
<&maxfrag>,"target:0=",<&spi1>,
<&max>,"reg:0=0";
spi1-1 = <0>, "+3",
<&maxfrag>,"target:0=",<&spi1>,
<&max>,"reg:0=1";
spi1-2 = <0>, "+4",
<&maxfrag>,"target:0=",<&spi1>,
<&max>,"reg:0=2";
spi2-0 = <0>, "+5",
<&maxfrag>,"target:0=",<&spi2>,
<&max>,"reg:0=0";
spi2-1 = <0>, "+6",
<&maxfrag>,"target:0=",<&spi2>,
<&max>,"reg:0=1";
spi2-2 = <0>, "+7",
<&maxfrag>,"target:0=",<&spi2>,
<&max>,"reg:0=2";
max6675 = <&max>,"compatible=maxim,max6675";
max31855 = <&max>,"compatible=maxim,max31855";
max31855e = <0>,"+9";
max31855j = <0>,"+10";
max31855k = <0>,"+11";
max31855n = <0>,"+12";
max31855r = <0>,"+13";
max31855s = <0>,"+14";
max31855t = <0>,"+15";
};
};