The Design and Implementation of the FreeBSD Operating System, Second Edition
Now available: The Design and Implementation of the FreeBSD Operating System (Second Edition)


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]

FreeBSD/Linux Kernel Cross Reference
sys/contrib/device-tree/Bindings/iio/temperature/adi,ltc2983.yaml

Version: -  FREEBSD  -  FREEBSD-13-STABLE  -  FREEBSD-13-0  -  FREEBSD-12-STABLE  -  FREEBSD-12-0  -  FREEBSD-11-STABLE  -  FREEBSD-11-0  -  FREEBSD-10-STABLE  -  FREEBSD-10-0  -  FREEBSD-9-STABLE  -  FREEBSD-9-0  -  FREEBSD-8-STABLE  -  FREEBSD-8-0  -  FREEBSD-7-STABLE  -  FREEBSD-7-0  -  FREEBSD-6-STABLE  -  FREEBSD-6-0  -  FREEBSD-5-STABLE  -  FREEBSD-5-0  -  FREEBSD-4-STABLE  -  FREEBSD-3-STABLE  -  FREEBSD22  -  l41  -  OPENBSD  -  linux-2.6  -  MK84  -  PLAN9  -  xnu-8792 
SearchContext: -  none  -  3  -  10 

    1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
    2 %YAML 1.2
    3 ---
    4 $id: http://devicetree.org/schemas/iio/temperature/adi,ltc2983.yaml#
    5 $schema: http://devicetree.org/meta-schemas/core.yaml#
    6 
    7 title: Analog Devices LTC2983 Multi-sensor Temperature system
    8 
    9 maintainers:
   10   - Nuno Sá <nuno.sa@analog.com>
   11 
   12 description: |
   13   Analog Devices LTC2983 Multi-Sensor Digital Temperature Measurement System
   14   https://www.analog.com/media/en/technical-documentation/data-sheets/2983fc.pdf
   15 
   16 properties:
   17   compatible:
   18     enum:
   19       - adi,ltc2983
   20 
   21   reg:
   22     maxItems: 1
   23 
   24   interrupts:
   25     maxItems: 1
   26 
   27   adi,mux-delay-config-us:
   28     description:
   29       The LTC2983 performs 2 or 3 internal conversion cycles per temperature
   30       result. Each conversion cycle is performed with different excitation and
   31       input multiplexer configurations. Prior to each conversion, these
   32       excitation circuits and input switch configurations are changed and an
   33       internal 1ms delay ensures settling prior to the conversion cycle in most
   34       cases. An extra delay can be configured using this property. The value is
   35       rounded to nearest 100us.
   36     maximum: 255
   37 
   38   adi,filter-notch-freq:
   39     description:
   40       Set's the default setting of the digital filter. The default is
   41       simultaneous 50/60Hz rejection.
   42       0 - 50/60Hz rejection
   43       1 - 60Hz rejection
   44       2 - 50Hz rejection
   45     $ref: /schemas/types.yaml#/definitions/uint32
   46     minimum: 0
   47     maximum: 2
   48 
   49   '#address-cells':
   50     const: 1
   51 
   52   '#size-cells':
   53     const: 0
   54 
   55 patternProperties:
   56   "@([1-9]|1[0-9]|20)$":
   57     type: object
   58 
   59     properties:
   60       reg:
   61         description:
   62           The channel number. It can be connected to one of the 20 channels of
   63           the device.
   64         minimum: 1
   65         maximum: 20
   66 
   67       adi,sensor-type:
   68         description: Identifies the type of sensor connected to the device.
   69         $ref: /schemas/types.yaml#/definitions/uint32
   70 
   71     required:
   72       - reg
   73       - adi,sensor-type
   74 
   75   "^thermocouple@":
   76     type: object
   77     description:
   78       Represents a thermocouple sensor which is connected to one of the device
   79       channels.
   80 
   81     properties:
   82       adi,sensor-type:
   83         description: |
   84           1 - Type J Thermocouple
   85           2 - Type K Thermocouple
   86           3 - Type E Thermocouple
   87           4 - Type N Thermocouple
   88           5 - Type R Thermocouple
   89           6 - Type S Thermocouple
   90           7 - Type T Thermocouple
   91           8 - Type B Thermocouple
   92           9 - Custom Thermocouple
   93         $ref: /schemas/types.yaml#/definitions/uint32
   94         minimum: 1
   95         maximum: 9
   96 
   97       adi,single-ended:
   98         description:
   99           Boolean property which set's the thermocouple as single-ended.
  100         type: boolean
  101 
  102       adi,sensor-oc-current-microamp:
  103         description:
  104           This property set's the pulsed current value applied during
  105           open-circuit detect.
  106         enum: [10, 100, 500, 1000]
  107 
  108       adi,cold-junction-handle:
  109         description:
  110           Phandle which points to a sensor object responsible for measuring
  111           the thermocouple cold junction temperature.
  112         $ref: "/schemas/types.yaml#/definitions/phandle"
  113 
  114       adi,custom-thermocouple:
  115         description:
  116           This is a table, where each entry should be a pair of
  117           voltage(mv)-temperature(K). The entries must be given in nv and uK
  118           so that, the original values must be multiplied by 1000000. For
  119           more details look at table 69 and 70.
  120           Note should be signed, but dtc doesn't currently maintain the
  121           sign.
  122         $ref: /schemas/types.yaml#/definitions/uint64-matrix
  123         minItems: 3
  124         maxItems: 64
  125         items:
  126           minItems: 2
  127           maxItems: 2
  128 
  129   "^diode@":
  130     type: object
  131     description:
  132       Represents a diode sensor which is connected to one of the device
  133       channels.
  134 
  135     properties:
  136       adi,sensor-type:
  137         description: Identifies the sensor as a diode.
  138         $ref: /schemas/types.yaml#/definitions/uint32
  139         const: 28
  140 
  141       adi,single-ended:
  142         description: Boolean property which set's the diode as single-ended.
  143         type: boolean
  144 
  145       adi,three-conversion-cycles:
  146         description:
  147           Boolean property which set's three conversion cycles removing
  148           parasitic resistance effects between the LTC2983 and the diode.
  149         type: boolean
  150 
  151       adi,average-on:
  152         description:
  153           Boolean property which enables a running average of the diode
  154           temperature reading. This reduces the noise when the diode is used
  155           as a cold junction temperature element on an isothermal block
  156           where temperatures change slowly.
  157         type: boolean
  158 
  159       adi,excitation-current-microamp:
  160         description:
  161           This property controls the magnitude of the excitation current
  162           applied to the diode. Depending on the number of conversions
  163           cycles, this property will assume different predefined values on
  164           each cycle. Just set the value of the first cycle (1l).
  165         enum: [10, 20, 40, 80]
  166 
  167       adi,ideal-factor-value:
  168         description:
  169           This property sets the diode ideality factor. The real value must
  170           be multiplied by 1000000 to remove the fractional part. For more
  171           information look at table 20 of the datasheet.
  172         $ref: /schemas/types.yaml#/definitions/uint32
  173 
  174   "^rtd@":
  175     type: object
  176     description:
  177       Represents a rtd sensor which is connected to one of the device channels.
  178 
  179     properties:
  180       reg:
  181         minimum: 2
  182         maximum: 20
  183 
  184       adi,sensor-type:
  185         description: |
  186           10 - RTD PT-10
  187           11 - RTD PT-50
  188           12 - RTD PT-100
  189           13 - RTD PT-200
  190           14 - RTD PT-500
  191           15 - RTD PT-1000
  192           16 - RTD PT-1000 (0.00375)
  193           17 - RTD NI-120
  194           18 - RTD Custom
  195         $ref: /schemas/types.yaml#/definitions/uint32
  196         minimum: 10
  197         maximum: 18
  198 
  199       adi,rsense-handle:
  200         description:
  201           Phandle pointing to a rsense object associated with this RTD.
  202         $ref: "/schemas/types.yaml#/definitions/phandle"
  203 
  204       adi,number-of-wires:
  205         description:
  206           Identifies the number of wires used by the RTD. Setting this
  207           property to 5 means 4 wires with Kelvin Rsense.
  208         $ref: /schemas/types.yaml#/definitions/uint32
  209         enum: [2, 3, 4, 5]
  210 
  211       adi,rsense-share:
  212         description:
  213           Boolean property which enables Rsense sharing, where one sense
  214           resistor is used for multiple 2-, 3-, and/or 4-wire RTDs.
  215         type: boolean
  216 
  217       adi,current-rotate:
  218         description:
  219           Boolean property which enables excitation current rotation to
  220           automatically remove parasitic thermocouple effects. Note that
  221           this property is not allowed for 2- and 3-wire RTDs.
  222         type: boolean
  223 
  224       adi,excitation-current-microamp:
  225         description:
  226           This property controls the magnitude of the excitation current
  227           applied to the RTD.
  228         enum: [5, 10, 25, 50, 100, 250, 500, 1000]
  229 
  230       adi,rtd-curve:
  231         description:
  232           This property set the RTD curve used and the corresponding
  233           Callendar-VanDusen constants. Look at table 30 of the datasheet.
  234         $ref: /schemas/types.yaml#/definitions/uint32
  235         minimum: 0
  236         maximum: 3
  237 
  238       adi,custom-rtd:
  239         description:
  240           This is a table, where each entry should be a pair of
  241           resistance(ohm)-temperature(K). The entries added here are in uohm
  242           and uK. For more details values look at table 74 and 75.
  243         $ref: /schemas/types.yaml#/definitions/uint64-matrix
  244         items:
  245           minItems: 3
  246           maxItems: 64
  247           items:
  248             minItems: 2
  249             maxItems: 2
  250 
  251     required:
  252       - adi,rsense-handle
  253 
  254     dependencies:
  255       adi,current-rotate: [ "adi,rsense-share" ]
  256 
  257   "^thermistor@":
  258     type: object
  259     description:
  260       Represents a thermistor sensor which is connected to one of the device
  261       channels.
  262 
  263     properties:
  264       adi,sensor-type:
  265         description:
  266           19 - Thermistor 44004/44033 2.252kohm at 25°C
  267           20 - Thermistor 44005/44030 3kohm at 25°C
  268           21 - Thermistor 44007/44034 5kohm at 25°C
  269           22 - Thermistor 44006/44031 10kohm at 25°C
  270           23 - Thermistor 44008/44032 30kohm at 25°C
  271           24 - Thermistor YSI 400 2.252kohm at 25°C
  272           25 - Thermistor Spectrum 1003k 1kohm
  273           26 - Thermistor Custom Steinhart-Hart
  274           27 - Custom Thermistor
  275         $ref: /schemas/types.yaml#/definitions/uint32
  276         minimum: 19
  277         maximum: 27
  278 
  279       adi,rsense-handle:
  280         description:
  281           Phandle pointing to a rsense object associated with this
  282           thermistor.
  283         $ref: "/schemas/types.yaml#/definitions/phandle"
  284 
  285       adi,single-ended:
  286         description:
  287           Boolean property which set's the thermistor as single-ended.
  288         type: boolean
  289 
  290       adi,rsense-share:
  291         description:
  292           Boolean property which enables Rsense sharing, where one sense
  293           resistor is used for multiple thermistors. Note that this property
  294           is ignored if adi,single-ended is set.
  295         type: boolean
  296 
  297       adi,current-rotate:
  298         description:
  299           Boolean property which enables excitation current rotation to
  300           automatically remove parasitic thermocouple effects.
  301         type: boolean
  302 
  303       adi,excitation-current-nanoamp:
  304         description:
  305           This property controls the magnitude of the excitation current
  306           applied to the thermistor. Value 0 set's the sensor in auto-range
  307           mode.
  308         $ref: /schemas/types.yaml#/definitions/uint32
  309         enum: [0, 250, 500, 1000, 5000, 10000, 25000, 50000, 100000, 250000,
  310                500000, 1000000]
  311 
  312       adi,custom-thermistor:
  313         description:
  314           This is a table, where each entry should be a pair of
  315           resistance(ohm)-temperature(K). The entries added here are in uohm
  316           and uK only for custom thermistors. For more details look at table
  317           78 and 79.
  318         $ref: /schemas/types.yaml#/definitions/uint64-matrix
  319         minItems: 3
  320         maxItems: 64
  321         items:
  322           minItems: 2
  323           maxItems: 2
  324 
  325       adi,custom-steinhart:
  326         description:
  327           Steinhart-Hart coefficients are also supported and can
  328           be programmed into the device memory using this property. For
  329           Steinhart sensors the coefficients are given in the raw
  330           format. Look at table 82 for more information.
  331         $ref: /schemas/types.yaml#/definitions/uint32-array
  332         items:
  333           minItems: 6
  334           maxItems: 6
  335 
  336     required:
  337       - adi,rsense-handle
  338 
  339     dependencies:
  340       adi,current-rotate: [ "adi,rsense-share" ]
  341 
  342   "^adc@":
  343     type: object
  344     description: Represents a channel which is being used as a direct adc.
  345 
  346     properties:
  347       adi,sensor-type:
  348         description: Identifies the sensor as a direct adc.
  349         $ref: /schemas/types.yaml#/definitions/uint32
  350         const: 30
  351 
  352       adi,single-ended:
  353         description: Boolean property which set's the adc as single-ended.
  354         type: boolean
  355 
  356   "^rsense@":
  357     type: object
  358     description:
  359       Represents a rsense which is connected to one of the device channels.
  360       Rsense are used by thermistors and RTD's.
  361 
  362     properties:
  363       reg:
  364         minimum: 2
  365         maximum: 20
  366 
  367       adi,sensor-type:
  368         description: Identifies the sensor as a rsense.
  369         $ref: /schemas/types.yaml#/definitions/uint32
  370         const: 29
  371 
  372       adi,rsense-val-milli-ohms:
  373         description:
  374           Sets the value of the sense resistor. Look at table 20 of the
  375           datasheet for information.
  376 
  377     required:
  378       - adi,rsense-val-milli-ohms
  379 
  380 required:
  381   - compatible
  382   - reg
  383   - interrupts
  384 
  385 additionalProperties: false
  386 
  387 examples:
  388   - |
  389     #include <dt-bindings/interrupt-controller/irq.h>
  390     spi {
  391         #address-cells = <1>;
  392         #size-cells = <0>;
  393 
  394         sensor_ltc2983: ltc2983@0 {
  395                 compatible = "adi,ltc2983";
  396                 reg = <0>;
  397 
  398                 #address-cells = <1>;
  399                 #size-cells = <0>;
  400 
  401                 interrupts = <20 IRQ_TYPE_EDGE_RISING>;
  402                 interrupt-parent = <&gpio>;
  403 
  404                 thermocouple@18 {
  405                         reg = <18>;
  406                         adi,sensor-type = <8>; //Type B
  407                         adi,sensor-oc-current-microamp = <10>;
  408                         adi,cold-junction-handle = <&diode5>;
  409                 };
  410 
  411                 diode5: diode@5 {
  412                         reg = <5>;
  413                         adi,sensor-type = <28>;
  414                 };
  415 
  416                 rsense2: rsense@2 {
  417                         reg = <2>;
  418                         adi,sensor-type = <29>;
  419                         adi,rsense-val-milli-ohms = <1200000>; //1.2Kohms
  420                 };
  421 
  422                 rtd@14 {
  423                         reg = <14>;
  424                         adi,sensor-type = <15>; //PT1000
  425                         /*2-wire, internal gnd, no current rotation*/
  426                         adi,number-of-wires = <2>;
  427                         adi,rsense-share;
  428                         adi,excitation-current-microamp = <500>;
  429                         adi,rsense-handle = <&rsense2>;
  430                 };
  431 
  432                 adc@10 {
  433                         reg = <10>;
  434                         adi,sensor-type = <30>;
  435                         adi,single-ended;
  436                 };
  437 
  438                 thermistor@12 {
  439                         reg = <12>;
  440                         adi,sensor-type = <26>; //Steinhart
  441                         adi,rsense-handle = <&rsense2>;
  442                         adi,custom-steinhart = <0x00F371EC 0x12345678
  443                                         0x2C0F8733 0x10018C66 0xA0FEACCD
  444                                         0x90021D99>; //6 entries
  445                 };
  446 
  447                 thermocouple@20 {
  448                         reg = <20>;
  449                         adi,sensor-type = <9>; //custom thermocouple
  450                         adi,single-ended;
  451                         adi,custom-thermocouple =
  452                                  /bits/ 64 <(-50220000) 0>,
  453                                  /bits/ 64 <(-30200000) 99100000>,
  454                                  /bits/ 64 <(-5300000) 135400000>,
  455                                  /bits/ 64 <0 273150000>,
  456                                  /bits/ 64 <40200000 361200000>,
  457                                  /bits/ 64 <55300000 522100000>,
  458                                  /bits/ 64 <88300000 720300000>,
  459                                  /bits/ 64 <132200000 811200000>,
  460                                  /bits/ 64 <188700000 922500000>,
  461                                  /bits/ 64 <460400000 1000000000>; //10 pairs
  462                };
  463 
  464         };
  465     };
  466 ...

Cache object: 4f0ecf07321b0097519a8fac93e16d59


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]


This page is part of the FreeBSD/Linux Linux Kernel Cross-Reference, and was automatically generated using a modified version of the LXR engine.