hwmon: (pmbus/core) Add support for Intel IMVP9 and AMD 6.25mV modes
Extend "vrm_version" with the type for Intel IMVP9 and AMD 6.25mV VID modes. Add calculation for those types. Signed-off-by: Vadim Pasternak <vadimp@mellanox.com> Link: https://lore.kernel.org/r/20200113150841.17670-3-vadimp@mellanox.com Signed-off-by: Guenter Roeck <linux@roeck-us.net>
This commit is contained in:
parent
b9fa0a3acf
commit
9d72340b6a
|
@ -388,7 +388,7 @@ enum pmbus_sensor_classes {
|
||||||
#define PMBUS_PAGE_VIRTUAL BIT(31)
|
#define PMBUS_PAGE_VIRTUAL BIT(31)
|
||||||
|
|
||||||
enum pmbus_data_format { linear = 0, direct, vid };
|
enum pmbus_data_format { linear = 0, direct, vid };
|
||||||
enum vrm_version { vr11 = 0, vr12, vr13 };
|
enum vrm_version { vr11 = 0, vr12, vr13, imvp9, amd625mv };
|
||||||
|
|
||||||
struct pmbus_driver_info {
|
struct pmbus_driver_info {
|
||||||
int pages; /* Total number of pages */
|
int pages; /* Total number of pages */
|
||||||
|
|
|
@ -709,6 +709,14 @@ static long pmbus_reg2data_vid(struct pmbus_data *data,
|
||||||
if (val >= 0x01)
|
if (val >= 0x01)
|
||||||
rv = 500 + (val - 1) * 10;
|
rv = 500 + (val - 1) * 10;
|
||||||
break;
|
break;
|
||||||
|
case imvp9:
|
||||||
|
if (val >= 0x01)
|
||||||
|
rv = 200 + (val - 1) * 10;
|
||||||
|
break;
|
||||||
|
case amd625mv:
|
||||||
|
if (val >= 0x0 && val <= 0xd8)
|
||||||
|
rv = DIV_ROUND_CLOSEST(155000 - val * 625, 100);
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
return rv;
|
return rv;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue