root/include/linux/platform_data/ntc_thermistor.h

/* [<][>][^][v][top][bottom][index][help] */

INCLUDED FROM


   1 /* SPDX-License-Identifier: GPL-2.0-or-later */
   2 /*
   3  * ntc_thermistor.h - NTC Thermistors
   4  *
   5  *  Copyright (C) 2010 Samsung Electronics
   6  *  MyungJoo Ham <myungjoo.ham@samsung.com>
   7  */
   8 #ifndef _LINUX_NTC_H
   9 #define _LINUX_NTC_H
  10 
  11 struct iio_channel;
  12 
  13 enum ntc_thermistor_type {
  14         TYPE_B57330V2103,
  15         TYPE_B57891S0103,
  16         TYPE_NCPXXWB473,
  17         TYPE_NCPXXWF104,
  18         TYPE_NCPXXWL333,
  19         TYPE_NCPXXXH103,
  20 };
  21 
  22 struct ntc_thermistor_platform_data {
  23         /*
  24          * One (not both) of read_uV and read_ohm should be provided and only
  25          * one of the two should be provided.
  26          * Both functions should return negative value for an error case.
  27          *
  28          * pullup_uV, pullup_ohm, pulldown_ohm, and connect are required to use
  29          * read_uV()
  30          *
  31          * How to setup pullup_ohm, pulldown_ohm, and connect is
  32          * described at Documentation/hwmon/ntc_thermistor.rst
  33          *
  34          * pullup/down_ohm: 0 for infinite / not-connected
  35          *
  36          * chan: iio_channel pointer to communicate with the ADC which the
  37          * thermistor is using for conversion of the analog values.
  38          */
  39         int (*read_uv)(struct ntc_thermistor_platform_data *);
  40         unsigned int pullup_uv;
  41 
  42         unsigned int pullup_ohm;
  43         unsigned int pulldown_ohm;
  44         enum { NTC_CONNECTED_POSITIVE, NTC_CONNECTED_GROUND } connect;
  45         struct iio_channel *chan;
  46 
  47         int (*read_ohm)(void);
  48 };
  49 
  50 #endif /* _LINUX_NTC_H */

/* [<][>][^][v][top][bottom][index][help] */