17ebd8b66SMauro Carvalho ChehabKernel driver adc128d818 27ebd8b66SMauro Carvalho Chehab======================== 37ebd8b66SMauro Carvalho Chehab 47ebd8b66SMauro Carvalho ChehabSupported chips: 57ebd8b66SMauro Carvalho Chehab 67ebd8b66SMauro Carvalho Chehab * Texas Instruments ADC818D818 77ebd8b66SMauro Carvalho Chehab 87ebd8b66SMauro Carvalho Chehab Prefix: 'adc818d818' 97ebd8b66SMauro Carvalho Chehab 107ebd8b66SMauro Carvalho Chehab Addresses scanned: I2C 0x1d, 0x1e, 0x1f, 0x2d, 0x2e, 0x2f 117ebd8b66SMauro Carvalho Chehab 12*ad736c1aSAlexander A. Klimov Datasheet: Publicly available at the TI website https://www.ti.com/ 137ebd8b66SMauro Carvalho Chehab 147ebd8b66SMauro Carvalho ChehabAuthor: Guenter Roeck 157ebd8b66SMauro Carvalho Chehab 167ebd8b66SMauro Carvalho ChehabDescription 177ebd8b66SMauro Carvalho Chehab----------- 187ebd8b66SMauro Carvalho Chehab 197ebd8b66SMauro Carvalho ChehabThis driver implements support for the Texas Instruments ADC128D818. 207ebd8b66SMauro Carvalho ChehabIt is described as 'ADC System Monitor with Temperature Sensor'. 217ebd8b66SMauro Carvalho Chehab 227ebd8b66SMauro Carvalho ChehabThe ADC128D818 implements one temperature sensor and seven voltage sensors. 237ebd8b66SMauro Carvalho Chehab 247ebd8b66SMauro Carvalho ChehabTemperatures are measured in degrees Celsius. There is one set of limits. 257ebd8b66SMauro Carvalho ChehabWhen the HOT Temperature Limit is crossed, this will cause an alarm that will 267ebd8b66SMauro Carvalho Chehabbe reasserted until the temperature drops below the HOT Hysteresis. 277ebd8b66SMauro Carvalho ChehabMeasurements are guaranteed between -55 and +125 degrees. The temperature 287ebd8b66SMauro Carvalho Chehabmeasurement has a resolution of 0.5 degrees; the limits have a resolution 297ebd8b66SMauro Carvalho Chehabof 1 degree. 307ebd8b66SMauro Carvalho Chehab 317ebd8b66SMauro Carvalho ChehabVoltage sensors (also known as IN sensors) report their values in volts. 327ebd8b66SMauro Carvalho ChehabAn alarm is triggered if the voltage has crossed a programmable minimum 337ebd8b66SMauro Carvalho Chehabor maximum limit. Note that minimum in this case always means 'closest to 347ebd8b66SMauro Carvalho Chehabzero'; this is important for negative voltage measurements. All voltage 357ebd8b66SMauro Carvalho Chehabinputs can measure voltages between 0 and 2.55 volts, with a resolution 367ebd8b66SMauro Carvalho Chehabof 0.625 mV. 377ebd8b66SMauro Carvalho Chehab 387ebd8b66SMauro Carvalho ChehabIf an alarm triggers, it will remain triggered until the hardware register 397ebd8b66SMauro Carvalho Chehabis read at least once. This means that the cause for the alarm may 407ebd8b66SMauro Carvalho Chehabalready have disappeared by the time the alarm is read. The driver 417ebd8b66SMauro Carvalho Chehabcaches the alarm status for each sensor until it is at least reported 427ebd8b66SMauro Carvalho Chehabonce, to ensure that alarms are reported to user space. 437ebd8b66SMauro Carvalho Chehab 447ebd8b66SMauro Carvalho ChehabThe ADC128D818 only updates its values approximately once per second; 457ebd8b66SMauro Carvalho Chehabreading it more often will do no harm, but will return 'old' values. 467ebd8b66SMauro Carvalho Chehab 477ebd8b66SMauro Carvalho ChehabIn addition to the scanned address list, the chip can also be configured for 487ebd8b66SMauro Carvalho Chehabaddresses 0x35 to 0x37. Those addresses are not scanned. You have to instantiate 497ebd8b66SMauro Carvalho Chehabthe driver explicitly if the chip is configured for any of those addresses in 507ebd8b66SMauro Carvalho Chehabyour system. 51