Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 8c22a8f5 authored by Dirk Eibach's avatar Dirk Eibach Committed by Jean Delvare
Browse files

hwmon: Add support for Texas Instruments ADS1015



Signed-off-by: default avatarDirk Eibach <eibach@gdsys.de>
Signed-off-by: default avatarJean Delvare <khali@linux-fr.org>
parent a98d506c
Loading
Loading
Loading
Loading
+29 −0
Original line number Diff line number Diff line
ADS1015 (I2C)

This device is a 12-bit A-D converter with 4 inputs.

The inputs can be used single ended or in certain differential combinations.

For configuration all possible combinations are mapped to 8 channels:
0: Voltage over AIN0 and AIN1.
1: Voltage over AIN0 and AIN3.
2: Voltage over AIN1 and AIN3.
3: Voltage over AIN2 and AIN3.
4: Voltage over AIN0 and GND.
5: Voltage over AIN1 and GND.
6: Voltage over AIN2 and GND.
7: Voltage over AIN3 and GND.

Optional properties:

 - exported-channels : exported_channels is a bitmask that specifies which
		       channels should be accessable by the user.

Example:
ads1015@49 {
	compatible = "ti,ads1015";
	reg = <0x49>;
	exported-channels = <0x14>;
};

In this example only channel 2 and 4 would be accessable by the user.
+67 −0
Original line number Diff line number Diff line
Kernel driver ads1015
=====================

Supported chips:
  * Texas Instruments ADS1015
    Prefix: 'ads1015'
    Datasheet: Publicly available at the Texas Instruments website :
               http://focus.ti.com/lit/ds/symlink/ads1015.pdf

Authors:
        Dirk Eibach, Guntermann & Drunck GmbH <eibach@gdsys.de>

Description
-----------

This driver implements support for the Texas Instruments ADS1015.

This device is a 12-bit A-D converter with 4 inputs.

The inputs can be used single ended or in certain differential combinations.

The inputs can be exported to 8 sysfs input files in0_input - in7_input:
in0: Voltage over AIN0 and AIN1.
in1: Voltage over AIN0 and AIN3.
in2: Voltage over AIN1 and AIN3.
in3: Voltage over AIN2 and AIN3.
in4: Voltage over AIN0 and GND.
in5: Voltage over AIN1 and GND.
in6: Voltage over AIN2 and GND.
in7: Voltage over AIN3 and GND.

Which inputs are exported can be configured using platform data or devicetree.

By default all inputs are exported.

Platform Data
-------------

In linux/i2c/ads1015.h platform data is defined as:

struct ads1015_platform_data {
	unsigned int exported_channels;
};

exported_channels is a bitmask that specifies which inputs should be exported.

Example:
struct ads1015_platform_data data = {
	.exported_channels = (1 << 2) | (1 << 4)
};

In this case only in2_input and in4_input would be created.

Devicetree
----------

The ads1015 node may have an "exported-channels" property.
exported_channels is a bitmask that specifies which inputs should be exported.

Example:
ads1015@49 {
	compatible = "ti,ads1015";
	reg = <0x49>;
	exported-channels = < 0x14 >;
};

In this case only in2_input and in4_input would be created.
+8 −0
Original line number Diff line number Diff line
@@ -365,6 +365,14 @@ W: http://wiki-analog.com/ADP8860
S:	Supported
F:	drivers/video/backlight/adp8860_bl.c

ADS1015 HARDWARE MONITOR DRIVER
M:	Dirk Eibach <eibach@gdsys.de>
L:	lm-sensors@lm-sensors.org
S:	Maintained
F:	Documentation/hwmon/ads1015
F:	drivers/hwmon/ads1015.c
F:	include/linux/i2c/ads1015.h

ADT746X FAN DRIVER
M:	Colin Leroy <colin@colino.net>
S:	Maintained
+10 −0
Original line number Diff line number Diff line
@@ -968,6 +968,16 @@ config SENSORS_SCH5627
	  This driver can also be built as a module.  If so, the module
	  will be called sch5627.

config SENSORS_ADS1015
	tristate "Texas Instruments ADS1015"
	depends on I2C
	help
	  If you say yes here you get support for Texas Instruments ADS1015
	  12-bit 4-input ADC device.

	  This driver can also be built as a module.  If so, the module
	  will be called ads1015.

config SENSORS_ADS7828
	tristate "Texas Instruments ADS7828"
	depends on I2C
+1 −0
Original line number Diff line number Diff line
@@ -29,6 +29,7 @@ obj-$(CONFIG_SENSORS_ADM1026) += adm1026.o
obj-$(CONFIG_SENSORS_ADM1029)	+= adm1029.o
obj-$(CONFIG_SENSORS_ADM1031)	+= adm1031.o
obj-$(CONFIG_SENSORS_ADM9240)	+= adm9240.o
obj-$(CONFIG_SENSORS_ADS1015)	+= ads1015.o
obj-$(CONFIG_SENSORS_ADS7828)	+= ads7828.o
obj-$(CONFIG_SENSORS_ADS7871)	+= ads7871.o
obj-$(CONFIG_SENSORS_ADT7411)	+= adt7411.o
Loading