17ebd8b66SMauro Carvalho ChehabKernel driver da9055 27ebd8b66SMauro Carvalho Chehab==================== 37ebd8b66SMauro Carvalho Chehab 47ebd8b66SMauro Carvalho ChehabSupported chips: 57ebd8b66SMauro Carvalho Chehab * Dialog Semiconductors DA9055 PMIC 67ebd8b66SMauro Carvalho Chehab 77ebd8b66SMauro Carvalho Chehab Prefix: 'da9055' 87ebd8b66SMauro Carvalho Chehab 97ebd8b66SMauro Carvalho Chehab Datasheet: Datasheet is not publicly available. 107ebd8b66SMauro Carvalho Chehab 117ebd8b66SMauro Carvalho ChehabAuthors: David Dajun Chen <dchen@diasemi.com> 127ebd8b66SMauro Carvalho Chehab 137ebd8b66SMauro Carvalho ChehabDescription 147ebd8b66SMauro Carvalho Chehab----------- 157ebd8b66SMauro Carvalho Chehab 167ebd8b66SMauro Carvalho ChehabThe DA9055 provides an Analogue to Digital Converter (ADC) with 10 bits 177ebd8b66SMauro Carvalho Chehabresolution and track and hold circuitry combined with an analogue input 187ebd8b66SMauro Carvalho Chehabmultiplexer. The analogue input multiplexer will allow conversion of up to 5 197ebd8b66SMauro Carvalho Chehabdifferent inputs. The track and hold circuit ensures stable input voltages at 207ebd8b66SMauro Carvalho Chehabthe input of the ADC during the conversion. 217ebd8b66SMauro Carvalho Chehab 227ebd8b66SMauro Carvalho ChehabThe ADC is used to measure the following inputs: 237ebd8b66SMauro Carvalho Chehab 247ebd8b66SMauro Carvalho Chehab- Channel 0: VDDOUT - measurement of the system voltage 257ebd8b66SMauro Carvalho Chehab- Channel 1: ADC_IN1 - high impedance input (0 - 2.5V) 267ebd8b66SMauro Carvalho Chehab- Channel 2: ADC_IN2 - high impedance input (0 - 2.5V) 277ebd8b66SMauro Carvalho Chehab- Channel 3: ADC_IN3 - high impedance input (0 - 2.5V) 287ebd8b66SMauro Carvalho Chehab- Channel 4: Internal Tjunc. - sense (internal temp. sensor) 297ebd8b66SMauro Carvalho Chehab 307ebd8b66SMauro Carvalho ChehabBy using sysfs attributes we can measure the system voltage VDDOUT, 317ebd8b66SMauro Carvalho Chehabchip junction temperature and auxiliary channels voltages. 327ebd8b66SMauro Carvalho Chehab 337ebd8b66SMauro Carvalho ChehabVoltage Monitoring 347ebd8b66SMauro Carvalho Chehab------------------ 357ebd8b66SMauro Carvalho Chehab 367ebd8b66SMauro Carvalho ChehabVoltages are sampled in a AUTO mode it can be manually sampled too and results 377ebd8b66SMauro Carvalho Chehabare stored in a 10 bit ADC. 387ebd8b66SMauro Carvalho Chehab 397ebd8b66SMauro Carvalho ChehabThe system voltage is calculated as: 407ebd8b66SMauro Carvalho Chehab 417ebd8b66SMauro Carvalho Chehab Milli volt = ((ADC value * 1000) / 85) + 2500 427ebd8b66SMauro Carvalho Chehab 437ebd8b66SMauro Carvalho ChehabThe voltages on ADC channels 1, 2 and 3 are calculated as: 447ebd8b66SMauro Carvalho Chehab 457ebd8b66SMauro Carvalho Chehab Milli volt = (ADC value * 1000) / 102 467ebd8b66SMauro Carvalho Chehab 477ebd8b66SMauro Carvalho ChehabTemperature Monitoring 487ebd8b66SMauro Carvalho Chehab---------------------- 497ebd8b66SMauro Carvalho Chehab 507ebd8b66SMauro Carvalho ChehabTemperatures are sampled by a 10 bit ADC. Junction temperatures 517ebd8b66SMauro Carvalho Chehabare monitored by the ADC channels. 527ebd8b66SMauro Carvalho Chehab 537ebd8b66SMauro Carvalho ChehabThe junction temperature is calculated: 547ebd8b66SMauro Carvalho Chehab 557ebd8b66SMauro Carvalho Chehab Degrees celsius = -0.4084 * (ADC_RES - T_OFFSET) + 307.6332 567ebd8b66SMauro Carvalho Chehab 577ebd8b66SMauro Carvalho ChehabThe junction temperature attribute is supported by the driver. 58