Kernel driver ntc_thermistor

Supported thermistors from Murata:

  • Murata NTC Thermistors NCP15WB473, NCP18WB473, NCP21WB473, NCP03WB473,NCP15WL333, NCP03WF104, NCP15XH103

    Prefixes: ‘ncp15wb473’, ‘ncp18wb473’, ‘ncp21wb473’, ‘ncp03wb473’,‘ncp15wl333’, ‘ncp03wf104’, ‘ncp15xh103’

    Datasheet: Publicly available at Murata

Supported thermistors from EPCOS:

  • EPCOS NTC Thermistors B57330V2103

    Prefixes: b57330v2103

    Datasheet: Publicly available at EPCOS

Other NTC thermistors can be supported simply by adding compensationtables; e.g., NCP15WL333 support is added by the table ncpXXwl333.

Authors:

Description

The NTC (Negative Temperature Coefficient) thermistor is a simple thermistorthat requires users to provide the resistance and lookup the correspondingcompensation table to get the temperature input.

The NTC driver provides lookup tables with a linear approximation functionand four circuit models with an option not to use any of the four models.

Using the following convention:

$    resistor[TH] the thermistor

The four circuit models provided are:

  1. connect = NTC_CONNECTED_POSITIVE, pullup_ohm > 0:

    [pullup_uV]    |    |   [TH]  $ (pullup_ohm)    |    |    +----+-----------------------[read_uV]    |    $ (pulldown_ohm)    |   -+- (ground)
  2. connect = NTC_CONNECTED_POSITIVE, pullup_ohm = 0 (not-connected):

    [pullup_uV]    |   [TH]    |    +----------------------------[read_uV]    |    $ (pulldown_ohm)    |   -+- (ground)
  3. connect = NTC_CONNECTED_GROUND, pulldown_ohm > 0:

    [pullup_uV]    |    $ (pullup_ohm)    |    +----+-----------------------[read_uV]    |    |   [TH]  $ (pulldown_ohm)    |    |   -+----+- (ground)
  4. connect = NTC_CONNECTED_GROUND, pulldown_ohm = 0 (not-connected):

    [pullup_uV]    |    $ (pullup_ohm)    |    +----------------------------[read_uV]    |   [TH]    |   -+- (ground)

When one of the four circuit models is used, read_uV, pullup_uV, pullup_ohm,pulldown_ohm, and connect should be provided. When none of the four modelsare suitable or the user can get the resistance directly, the user shouldprovide read_ohm and _not_ provide the others.

Sysfs Interface

name the mandatory global attribute, the thermistor name.
temp1_typeROalways 4 (thermistor)
temp1_inputROmeasure the temperature and provide the measured value.(reading this file initiates the reading procedure.)

Note that each NTC thermistor has only _one_ thermistor; thus, only temp1 exists.