| /* SPDX-License-Identifier: GPL-2.0-only */ | |
| /* | |
| * Copyright 2005 Simtec Electronics | |
| * Ben Dooks <ben@simtec.co.uk> | |
| * http://armlinux.simtec.co.uk/ | |
| * | |
| * S3C - HWMon interface for ADC | |
| */ | |
| #ifndef __HWMON_S3C_H__ | |
| #define __HWMON_S3C_H__ | |
| /** | |
| * s3c_hwmon_chcfg - channel configuration | |
| * @name: The name to give this channel. | |
| * @mult: Multiply the ADC value read by this. | |
| * @div: Divide the value from the ADC by this. | |
| * | |
| * The value read from the ADC is converted to a value that | |
| * hwmon expects (mV) by result = (value_read * @mult) / @div. | |
| */ | |
| struct s3c_hwmon_chcfg { | |
| const char *name; | |
| unsigned int mult; | |
| unsigned int div; | |
| }; | |
| /** | |
| * s3c_hwmon_pdata - HWMON platform data | |
| * @in: One configuration for each possible channel used. | |
| */ | |
| struct s3c_hwmon_pdata { | |
| struct s3c_hwmon_chcfg *in[8]; | |
| }; | |
| /** | |
| * s3c_hwmon_set_platdata - Set platform data for S3C HWMON device | |
| * @pd: Platform data to register to device. | |
| * | |
| * Register the given platform data for use with the S3C HWMON device. | |
| * The call will copy the platform data, so the board definitions can | |
| * make the structure itself __initdata. | |
| */ | |
| extern void __init s3c_hwmon_set_platdata(struct s3c_hwmon_pdata *pd); | |
| #endif /* __HWMON_S3C_H__ */ |