mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-08-24 09:50:04 +00:00
platform/x86: mlx-platform: Add support for fan capability registers
Provide support for the fan capability registers for the next generation systems of types MQM87xx, MSN34xx, MSN37xx. These new registers provide configuration for tachometers and fan drawers connectivity. Use these registers for next generation led, fan and hotplug structures in order to distinguish between the systems which have minor configuration differences. This reduces the amount of code used to describe such systems. Signed-off-by: Vadim Pasternak <vadimp@mellanox.com> Signed-off-by: Darren Hart (VMware) <dvhart@infradead.org>
This commit is contained in:
parent
946e4e02b1
commit
83cdb2c111
2 changed files with 91 additions and 1 deletions
|
@ -495,7 +495,9 @@ static int mlxreg_hotplug_set_irq(struct mlxreg_hotplug_priv_data *priv)
|
||||||
{
|
{
|
||||||
struct mlxreg_core_hotplug_platform_data *pdata;
|
struct mlxreg_core_hotplug_platform_data *pdata;
|
||||||
struct mlxreg_core_item *item;
|
struct mlxreg_core_item *item;
|
||||||
int i, ret;
|
struct mlxreg_core_data *data;
|
||||||
|
u32 regval;
|
||||||
|
int i, j, ret;
|
||||||
|
|
||||||
pdata = dev_get_platdata(&priv->pdev->dev);
|
pdata = dev_get_platdata(&priv->pdev->dev);
|
||||||
item = pdata->items;
|
item = pdata->items;
|
||||||
|
@ -507,6 +509,25 @@ static int mlxreg_hotplug_set_irq(struct mlxreg_hotplug_priv_data *priv)
|
||||||
if (ret)
|
if (ret)
|
||||||
goto out;
|
goto out;
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Verify if hardware configuration requires to disable
|
||||||
|
* interrupt capability for some of components.
|
||||||
|
*/
|
||||||
|
data = item->data;
|
||||||
|
for (j = 0; j < item->count; j++, data++) {
|
||||||
|
/* Verify if the attribute has capability register. */
|
||||||
|
if (data->capability) {
|
||||||
|
/* Read capability register. */
|
||||||
|
ret = regmap_read(priv->regmap,
|
||||||
|
data->capability, ®val);
|
||||||
|
if (ret)
|
||||||
|
goto out;
|
||||||
|
|
||||||
|
if (!(regval & data->bit))
|
||||||
|
item->mask &= ~BIT(j);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/* Set group initial status as mask and unmask group event. */
|
/* Set group initial status as mask and unmask group event. */
|
||||||
if (item->inversed) {
|
if (item->inversed) {
|
||||||
item->cache = item->mask;
|
item->cache = item->mask;
|
||||||
|
|
|
@ -68,6 +68,9 @@
|
||||||
#define MLXPLAT_CPLD_LPC_REG_TACHO10_OFFSET 0xee
|
#define MLXPLAT_CPLD_LPC_REG_TACHO10_OFFSET 0xee
|
||||||
#define MLXPLAT_CPLD_LPC_REG_TACHO11_OFFSET 0xef
|
#define MLXPLAT_CPLD_LPC_REG_TACHO11_OFFSET 0xef
|
||||||
#define MLXPLAT_CPLD_LPC_REG_TACHO12_OFFSET 0xf0
|
#define MLXPLAT_CPLD_LPC_REG_TACHO12_OFFSET 0xf0
|
||||||
|
#define MLXPLAT_CPLD_LPC_REG_FAN_CAP1_OFFSET 0xf5
|
||||||
|
#define MLXPLAT_CPLD_LPC_REG_FAN_CAP2_OFFSET 0xf6
|
||||||
|
#define MLXPLAT_CPLD_LPC_REG_FAN_DRW_CAP_OFFSET 0xf7
|
||||||
#define MLXPLAT_CPLD_LPC_IO_RANGE 0x100
|
#define MLXPLAT_CPLD_LPC_IO_RANGE 0x100
|
||||||
#define MLXPLAT_CPLD_LPC_I2C_CH1_OFF 0xdb
|
#define MLXPLAT_CPLD_LPC_I2C_CH1_OFF 0xdb
|
||||||
#define MLXPLAT_CPLD_LPC_I2C_CH2_OFF 0xda
|
#define MLXPLAT_CPLD_LPC_I2C_CH2_OFF 0xda
|
||||||
|
@ -585,36 +588,48 @@ static struct mlxreg_core_data mlxplat_mlxcpld_default_ng_fan_items_data[] = {
|
||||||
.label = "fan1",
|
.label = "fan1",
|
||||||
.reg = MLXPLAT_CPLD_LPC_REG_FAN_OFFSET,
|
.reg = MLXPLAT_CPLD_LPC_REG_FAN_OFFSET,
|
||||||
.mask = BIT(0),
|
.mask = BIT(0),
|
||||||
|
.capability = MLXPLAT_CPLD_LPC_REG_FAN_DRW_CAP_OFFSET,
|
||||||
|
.bit = BIT(0),
|
||||||
.hpdev.nr = MLXPLAT_CPLD_NR_NONE,
|
.hpdev.nr = MLXPLAT_CPLD_NR_NONE,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
.label = "fan2",
|
.label = "fan2",
|
||||||
.reg = MLXPLAT_CPLD_LPC_REG_FAN_OFFSET,
|
.reg = MLXPLAT_CPLD_LPC_REG_FAN_OFFSET,
|
||||||
.mask = BIT(1),
|
.mask = BIT(1),
|
||||||
|
.capability = MLXPLAT_CPLD_LPC_REG_FAN_DRW_CAP_OFFSET,
|
||||||
|
.bit = BIT(1),
|
||||||
.hpdev.nr = MLXPLAT_CPLD_NR_NONE,
|
.hpdev.nr = MLXPLAT_CPLD_NR_NONE,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
.label = "fan3",
|
.label = "fan3",
|
||||||
.reg = MLXPLAT_CPLD_LPC_REG_FAN_OFFSET,
|
.reg = MLXPLAT_CPLD_LPC_REG_FAN_OFFSET,
|
||||||
.mask = BIT(2),
|
.mask = BIT(2),
|
||||||
|
.capability = MLXPLAT_CPLD_LPC_REG_FAN_DRW_CAP_OFFSET,
|
||||||
|
.bit = BIT(2),
|
||||||
.hpdev.nr = MLXPLAT_CPLD_NR_NONE,
|
.hpdev.nr = MLXPLAT_CPLD_NR_NONE,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
.label = "fan4",
|
.label = "fan4",
|
||||||
.reg = MLXPLAT_CPLD_LPC_REG_FAN_OFFSET,
|
.reg = MLXPLAT_CPLD_LPC_REG_FAN_OFFSET,
|
||||||
.mask = BIT(3),
|
.mask = BIT(3),
|
||||||
|
.capability = MLXPLAT_CPLD_LPC_REG_FAN_DRW_CAP_OFFSET,
|
||||||
|
.bit = BIT(3),
|
||||||
.hpdev.nr = MLXPLAT_CPLD_NR_NONE,
|
.hpdev.nr = MLXPLAT_CPLD_NR_NONE,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
.label = "fan5",
|
.label = "fan5",
|
||||||
.reg = MLXPLAT_CPLD_LPC_REG_FAN_OFFSET,
|
.reg = MLXPLAT_CPLD_LPC_REG_FAN_OFFSET,
|
||||||
.mask = BIT(4),
|
.mask = BIT(4),
|
||||||
|
.capability = MLXPLAT_CPLD_LPC_REG_FAN_DRW_CAP_OFFSET,
|
||||||
|
.bit = BIT(4),
|
||||||
.hpdev.nr = MLXPLAT_CPLD_NR_NONE,
|
.hpdev.nr = MLXPLAT_CPLD_NR_NONE,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
.label = "fan6",
|
.label = "fan6",
|
||||||
.reg = MLXPLAT_CPLD_LPC_REG_FAN_OFFSET,
|
.reg = MLXPLAT_CPLD_LPC_REG_FAN_OFFSET,
|
||||||
.mask = BIT(5),
|
.mask = BIT(5),
|
||||||
|
.capability = MLXPLAT_CPLD_LPC_REG_FAN_DRW_CAP_OFFSET,
|
||||||
|
.bit = BIT(5),
|
||||||
.hpdev.nr = MLXPLAT_CPLD_NR_NONE,
|
.hpdev.nr = MLXPLAT_CPLD_NR_NONE,
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
|
@ -817,61 +832,85 @@ static struct mlxreg_core_data mlxplat_mlxcpld_default_ng_led_data[] = {
|
||||||
.label = "fan1:green",
|
.label = "fan1:green",
|
||||||
.reg = MLXPLAT_CPLD_LPC_REG_LED2_OFFSET,
|
.reg = MLXPLAT_CPLD_LPC_REG_LED2_OFFSET,
|
||||||
.mask = MLXPLAT_CPLD_LED_LO_NIBBLE_MASK,
|
.mask = MLXPLAT_CPLD_LED_LO_NIBBLE_MASK,
|
||||||
|
.capability = MLXPLAT_CPLD_LPC_REG_FAN_DRW_CAP_OFFSET,
|
||||||
|
.bit = BIT(0),
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
.label = "fan1:orange",
|
.label = "fan1:orange",
|
||||||
.reg = MLXPLAT_CPLD_LPC_REG_LED2_OFFSET,
|
.reg = MLXPLAT_CPLD_LPC_REG_LED2_OFFSET,
|
||||||
.mask = MLXPLAT_CPLD_LED_LO_NIBBLE_MASK,
|
.mask = MLXPLAT_CPLD_LED_LO_NIBBLE_MASK,
|
||||||
|
.capability = MLXPLAT_CPLD_LPC_REG_FAN_DRW_CAP_OFFSET,
|
||||||
|
.bit = BIT(0),
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
.label = "fan2:green",
|
.label = "fan2:green",
|
||||||
.reg = MLXPLAT_CPLD_LPC_REG_LED2_OFFSET,
|
.reg = MLXPLAT_CPLD_LPC_REG_LED2_OFFSET,
|
||||||
.mask = MLXPLAT_CPLD_LED_HI_NIBBLE_MASK,
|
.mask = MLXPLAT_CPLD_LED_HI_NIBBLE_MASK,
|
||||||
|
.capability = MLXPLAT_CPLD_LPC_REG_FAN_DRW_CAP_OFFSET,
|
||||||
|
.bit = BIT(1),
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
.label = "fan2:orange",
|
.label = "fan2:orange",
|
||||||
.reg = MLXPLAT_CPLD_LPC_REG_LED2_OFFSET,
|
.reg = MLXPLAT_CPLD_LPC_REG_LED2_OFFSET,
|
||||||
.mask = MLXPLAT_CPLD_LED_HI_NIBBLE_MASK,
|
.mask = MLXPLAT_CPLD_LED_HI_NIBBLE_MASK,
|
||||||
|
.capability = MLXPLAT_CPLD_LPC_REG_FAN_DRW_CAP_OFFSET,
|
||||||
|
.bit = BIT(1),
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
.label = "fan3:green",
|
.label = "fan3:green",
|
||||||
.reg = MLXPLAT_CPLD_LPC_REG_LED3_OFFSET,
|
.reg = MLXPLAT_CPLD_LPC_REG_LED3_OFFSET,
|
||||||
.mask = MLXPLAT_CPLD_LED_LO_NIBBLE_MASK,
|
.mask = MLXPLAT_CPLD_LED_LO_NIBBLE_MASK,
|
||||||
|
.capability = MLXPLAT_CPLD_LPC_REG_FAN_DRW_CAP_OFFSET,
|
||||||
|
.bit = BIT(2),
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
.label = "fan3:orange",
|
.label = "fan3:orange",
|
||||||
.reg = MLXPLAT_CPLD_LPC_REG_LED3_OFFSET,
|
.reg = MLXPLAT_CPLD_LPC_REG_LED3_OFFSET,
|
||||||
.mask = MLXPLAT_CPLD_LED_LO_NIBBLE_MASK,
|
.mask = MLXPLAT_CPLD_LED_LO_NIBBLE_MASK,
|
||||||
|
.capability = MLXPLAT_CPLD_LPC_REG_FAN_DRW_CAP_OFFSET,
|
||||||
|
.bit = BIT(2),
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
.label = "fan4:green",
|
.label = "fan4:green",
|
||||||
.reg = MLXPLAT_CPLD_LPC_REG_LED3_OFFSET,
|
.reg = MLXPLAT_CPLD_LPC_REG_LED3_OFFSET,
|
||||||
.mask = MLXPLAT_CPLD_LED_HI_NIBBLE_MASK,
|
.mask = MLXPLAT_CPLD_LED_HI_NIBBLE_MASK,
|
||||||
|
.capability = MLXPLAT_CPLD_LPC_REG_FAN_DRW_CAP_OFFSET,
|
||||||
|
.bit = BIT(3),
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
.label = "fan4:orange",
|
.label = "fan4:orange",
|
||||||
.reg = MLXPLAT_CPLD_LPC_REG_LED3_OFFSET,
|
.reg = MLXPLAT_CPLD_LPC_REG_LED3_OFFSET,
|
||||||
.mask = MLXPLAT_CPLD_LED_HI_NIBBLE_MASK,
|
.mask = MLXPLAT_CPLD_LED_HI_NIBBLE_MASK,
|
||||||
|
.capability = MLXPLAT_CPLD_LPC_REG_FAN_DRW_CAP_OFFSET,
|
||||||
|
.bit = BIT(3),
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
.label = "fan5:green",
|
.label = "fan5:green",
|
||||||
.reg = MLXPLAT_CPLD_LPC_REG_LED4_OFFSET,
|
.reg = MLXPLAT_CPLD_LPC_REG_LED4_OFFSET,
|
||||||
.mask = MLXPLAT_CPLD_LED_LO_NIBBLE_MASK,
|
.mask = MLXPLAT_CPLD_LED_LO_NIBBLE_MASK,
|
||||||
|
.capability = MLXPLAT_CPLD_LPC_REG_FAN_DRW_CAP_OFFSET,
|
||||||
|
.bit = BIT(4),
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
.label = "fan5:orange",
|
.label = "fan5:orange",
|
||||||
.reg = MLXPLAT_CPLD_LPC_REG_LED4_OFFSET,
|
.reg = MLXPLAT_CPLD_LPC_REG_LED4_OFFSET,
|
||||||
.mask = MLXPLAT_CPLD_LED_LO_NIBBLE_MASK,
|
.mask = MLXPLAT_CPLD_LED_LO_NIBBLE_MASK,
|
||||||
|
.capability = MLXPLAT_CPLD_LPC_REG_FAN_DRW_CAP_OFFSET,
|
||||||
|
.bit = BIT(4),
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
.label = "fan6:green",
|
.label = "fan6:green",
|
||||||
.reg = MLXPLAT_CPLD_LPC_REG_LED4_OFFSET,
|
.reg = MLXPLAT_CPLD_LPC_REG_LED4_OFFSET,
|
||||||
.mask = MLXPLAT_CPLD_LED_HI_NIBBLE_MASK,
|
.mask = MLXPLAT_CPLD_LED_HI_NIBBLE_MASK,
|
||||||
|
.capability = MLXPLAT_CPLD_LPC_REG_FAN_DRW_CAP_OFFSET,
|
||||||
|
.bit = BIT(5),
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
.label = "fan6:orange",
|
.label = "fan6:orange",
|
||||||
.reg = MLXPLAT_CPLD_LPC_REG_LED4_OFFSET,
|
.reg = MLXPLAT_CPLD_LPC_REG_LED4_OFFSET,
|
||||||
.mask = MLXPLAT_CPLD_LED_HI_NIBBLE_MASK,
|
.mask = MLXPLAT_CPLD_LED_HI_NIBBLE_MASK,
|
||||||
|
.capability = MLXPLAT_CPLD_LPC_REG_FAN_DRW_CAP_OFFSET,
|
||||||
|
.bit = BIT(5),
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -1208,61 +1247,85 @@ static struct mlxreg_core_data mlxplat_mlxcpld_default_fan_data[] = {
|
||||||
.label = "tacho1",
|
.label = "tacho1",
|
||||||
.reg = MLXPLAT_CPLD_LPC_REG_TACHO1_OFFSET,
|
.reg = MLXPLAT_CPLD_LPC_REG_TACHO1_OFFSET,
|
||||||
.mask = GENMASK(7, 0),
|
.mask = GENMASK(7, 0),
|
||||||
|
.capability = MLXPLAT_CPLD_LPC_REG_FAN_CAP1_OFFSET,
|
||||||
|
.bit = BIT(0),
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
.label = "tacho2",
|
.label = "tacho2",
|
||||||
.reg = MLXPLAT_CPLD_LPC_REG_TACHO2_OFFSET,
|
.reg = MLXPLAT_CPLD_LPC_REG_TACHO2_OFFSET,
|
||||||
.mask = GENMASK(7, 0),
|
.mask = GENMASK(7, 0),
|
||||||
|
.capability = MLXPLAT_CPLD_LPC_REG_FAN_CAP1_OFFSET,
|
||||||
|
.bit = BIT(1),
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
.label = "tacho3",
|
.label = "tacho3",
|
||||||
.reg = MLXPLAT_CPLD_LPC_REG_TACHO3_OFFSET,
|
.reg = MLXPLAT_CPLD_LPC_REG_TACHO3_OFFSET,
|
||||||
.mask = GENMASK(7, 0),
|
.mask = GENMASK(7, 0),
|
||||||
|
.capability = MLXPLAT_CPLD_LPC_REG_FAN_CAP1_OFFSET,
|
||||||
|
.bit = BIT(2),
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
.label = "tacho4",
|
.label = "tacho4",
|
||||||
.reg = MLXPLAT_CPLD_LPC_REG_TACHO4_OFFSET,
|
.reg = MLXPLAT_CPLD_LPC_REG_TACHO4_OFFSET,
|
||||||
.mask = GENMASK(7, 0),
|
.mask = GENMASK(7, 0),
|
||||||
|
.capability = MLXPLAT_CPLD_LPC_REG_FAN_CAP1_OFFSET,
|
||||||
|
.bit = BIT(3),
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
.label = "tacho5",
|
.label = "tacho5",
|
||||||
.reg = MLXPLAT_CPLD_LPC_REG_TACHO5_OFFSET,
|
.reg = MLXPLAT_CPLD_LPC_REG_TACHO5_OFFSET,
|
||||||
.mask = GENMASK(7, 0),
|
.mask = GENMASK(7, 0),
|
||||||
|
.capability = MLXPLAT_CPLD_LPC_REG_FAN_CAP1_OFFSET,
|
||||||
|
.bit = BIT(4),
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
.label = "tacho6",
|
.label = "tacho6",
|
||||||
.reg = MLXPLAT_CPLD_LPC_REG_TACHO6_OFFSET,
|
.reg = MLXPLAT_CPLD_LPC_REG_TACHO6_OFFSET,
|
||||||
.mask = GENMASK(7, 0),
|
.mask = GENMASK(7, 0),
|
||||||
|
.capability = MLXPLAT_CPLD_LPC_REG_FAN_CAP1_OFFSET,
|
||||||
|
.bit = BIT(5),
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
.label = "tacho7",
|
.label = "tacho7",
|
||||||
.reg = MLXPLAT_CPLD_LPC_REG_TACHO7_OFFSET,
|
.reg = MLXPLAT_CPLD_LPC_REG_TACHO7_OFFSET,
|
||||||
.mask = GENMASK(7, 0),
|
.mask = GENMASK(7, 0),
|
||||||
|
.capability = MLXPLAT_CPLD_LPC_REG_FAN_CAP1_OFFSET,
|
||||||
|
.bit = BIT(6),
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
.label = "tacho8",
|
.label = "tacho8",
|
||||||
.reg = MLXPLAT_CPLD_LPC_REG_TACHO8_OFFSET,
|
.reg = MLXPLAT_CPLD_LPC_REG_TACHO8_OFFSET,
|
||||||
.mask = GENMASK(7, 0),
|
.mask = GENMASK(7, 0),
|
||||||
|
.capability = MLXPLAT_CPLD_LPC_REG_FAN_CAP1_OFFSET,
|
||||||
|
.bit = BIT(7),
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
.label = "tacho9",
|
.label = "tacho9",
|
||||||
.reg = MLXPLAT_CPLD_LPC_REG_TACHO9_OFFSET,
|
.reg = MLXPLAT_CPLD_LPC_REG_TACHO9_OFFSET,
|
||||||
.mask = GENMASK(7, 0),
|
.mask = GENMASK(7, 0),
|
||||||
|
.capability = MLXPLAT_CPLD_LPC_REG_FAN_CAP2_OFFSET,
|
||||||
|
.bit = BIT(0),
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
.label = "tacho10",
|
.label = "tacho10",
|
||||||
.reg = MLXPLAT_CPLD_LPC_REG_TACHO10_OFFSET,
|
.reg = MLXPLAT_CPLD_LPC_REG_TACHO10_OFFSET,
|
||||||
.mask = GENMASK(7, 0),
|
.mask = GENMASK(7, 0),
|
||||||
|
.capability = MLXPLAT_CPLD_LPC_REG_FAN_CAP2_OFFSET,
|
||||||
|
.bit = BIT(1),
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
.label = "tacho11",
|
.label = "tacho11",
|
||||||
.reg = MLXPLAT_CPLD_LPC_REG_TACHO11_OFFSET,
|
.reg = MLXPLAT_CPLD_LPC_REG_TACHO11_OFFSET,
|
||||||
.mask = GENMASK(7, 0),
|
.mask = GENMASK(7, 0),
|
||||||
|
.capability = MLXPLAT_CPLD_LPC_REG_FAN_CAP2_OFFSET,
|
||||||
|
.bit = BIT(2),
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
.label = "tacho12",
|
.label = "tacho12",
|
||||||
.reg = MLXPLAT_CPLD_LPC_REG_TACHO12_OFFSET,
|
.reg = MLXPLAT_CPLD_LPC_REG_TACHO12_OFFSET,
|
||||||
.mask = GENMASK(7, 0),
|
.mask = GENMASK(7, 0),
|
||||||
|
.capability = MLXPLAT_CPLD_LPC_REG_FAN_CAP2_OFFSET,
|
||||||
|
.bit = BIT(3),
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -1349,6 +1412,9 @@ static bool mlxplat_mlxcpld_readable_reg(struct device *dev, unsigned int reg)
|
||||||
case MLXPLAT_CPLD_LPC_REG_TACHO11_OFFSET:
|
case MLXPLAT_CPLD_LPC_REG_TACHO11_OFFSET:
|
||||||
case MLXPLAT_CPLD_LPC_REG_TACHO12_OFFSET:
|
case MLXPLAT_CPLD_LPC_REG_TACHO12_OFFSET:
|
||||||
case MLXPLAT_CPLD_LPC_REG_PWM_CONTROL_OFFSET:
|
case MLXPLAT_CPLD_LPC_REG_PWM_CONTROL_OFFSET:
|
||||||
|
case MLXPLAT_CPLD_LPC_REG_FAN_CAP1_OFFSET:
|
||||||
|
case MLXPLAT_CPLD_LPC_REG_FAN_CAP2_OFFSET:
|
||||||
|
case MLXPLAT_CPLD_LPC_REG_FAN_DRW_CAP_OFFSET:
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
return false;
|
return false;
|
||||||
|
@ -1401,6 +1467,9 @@ static bool mlxplat_mlxcpld_volatile_reg(struct device *dev, unsigned int reg)
|
||||||
case MLXPLAT_CPLD_LPC_REG_TACHO11_OFFSET:
|
case MLXPLAT_CPLD_LPC_REG_TACHO11_OFFSET:
|
||||||
case MLXPLAT_CPLD_LPC_REG_TACHO12_OFFSET:
|
case MLXPLAT_CPLD_LPC_REG_TACHO12_OFFSET:
|
||||||
case MLXPLAT_CPLD_LPC_REG_PWM_CONTROL_OFFSET:
|
case MLXPLAT_CPLD_LPC_REG_PWM_CONTROL_OFFSET:
|
||||||
|
case MLXPLAT_CPLD_LPC_REG_FAN_CAP1_OFFSET:
|
||||||
|
case MLXPLAT_CPLD_LPC_REG_FAN_CAP2_OFFSET:
|
||||||
|
case MLXPLAT_CPLD_LPC_REG_FAN_DRW_CAP_OFFSET:
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
return false;
|
return false;
|
||||||
|
|
Loading…
Reference in a new issue