Skip to content

Commit eb480b4

Browse files
mellanoxbmcdvhart
authored andcommitted
platform/x86: mlx-platform: Add extra CPLD for next generation systems
Add support for CPLD4 for the next generation systems MQMB7xx, MSN37xx, MSN34xx, MSN38xx. All these systems are equipped with four programmable device. The version of this new device is to be exposed to sysfs through mlxreg-io register. Signed-off-by: Vadim Pasternak <vadimp@mellanox.com> Signed-off-by: Darren Hart (VMware) <dvhart@infradead.org>
1 parent fd77149 commit eb480b4

File tree

1 file changed

+9
-0
lines changed

1 file changed

+9
-0
lines changed

drivers/platform/x86/mlx-platform.c

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,7 @@
2525
#define MLXPLAT_CPLD_LPC_REG_CPLD1_VER_OFFSET 0x00
2626
#define MLXPLAT_CPLD_LPC_REG_CPLD2_VER_OFFSET 0x01
2727
#define MLXPLAT_CPLD_LPC_REG_CPLD3_VER_OFFSET 0x02
28+
#define MLXPLAT_CPLD_LPC_REG_CPLD4_VER_OFFSET 0x03
2829
#define MLXPLAT_CPLD_LPC_REG_RESET_CAUSE_OFFSET 0x1d
2930
#define MLXPLAT_CPLD_LPC_REG_RST_CAUSE1_OFFSET 0x1e
3031
#define MLXPLAT_CPLD_LPC_REG_RST_CAUSE2_OFFSET 0x1f
@@ -1139,6 +1140,12 @@ static struct mlxreg_core_data mlxplat_mlxcpld_default_ng_regs_io_data[] = {
11391140
.bit = GENMASK(7, 0),
11401141
.mode = 0444,
11411142
},
1143+
{
1144+
.label = "cpld4_version",
1145+
.reg = MLXPLAT_CPLD_LPC_REG_CPLD4_VER_OFFSET,
1146+
.bit = GENMASK(7, 0),
1147+
.mode = 0444,
1148+
},
11421149
{
11431150
.label = "reset_long_pb",
11441151
.reg = MLXPLAT_CPLD_LPC_REG_RESET_CAUSE_OFFSET,
@@ -1369,6 +1376,7 @@ static bool mlxplat_mlxcpld_readable_reg(struct device *dev, unsigned int reg)
13691376
case MLXPLAT_CPLD_LPC_REG_CPLD1_VER_OFFSET:
13701377
case MLXPLAT_CPLD_LPC_REG_CPLD2_VER_OFFSET:
13711378
case MLXPLAT_CPLD_LPC_REG_CPLD3_VER_OFFSET:
1379+
case MLXPLAT_CPLD_LPC_REG_CPLD4_VER_OFFSET:
13721380
case MLXPLAT_CPLD_LPC_REG_RESET_CAUSE_OFFSET:
13731381
case MLXPLAT_CPLD_LPC_REG_RST_CAUSE1_OFFSET:
13741382
case MLXPLAT_CPLD_LPC_REG_RST_CAUSE2_OFFSET:
@@ -1426,6 +1434,7 @@ static bool mlxplat_mlxcpld_volatile_reg(struct device *dev, unsigned int reg)
14261434
case MLXPLAT_CPLD_LPC_REG_CPLD1_VER_OFFSET:
14271435
case MLXPLAT_CPLD_LPC_REG_CPLD2_VER_OFFSET:
14281436
case MLXPLAT_CPLD_LPC_REG_CPLD3_VER_OFFSET:
1437+
case MLXPLAT_CPLD_LPC_REG_CPLD4_VER_OFFSET:
14291438
case MLXPLAT_CPLD_LPC_REG_RESET_CAUSE_OFFSET:
14301439
case MLXPLAT_CPLD_LPC_REG_RST_CAUSE1_OFFSET:
14311440
case MLXPLAT_CPLD_LPC_REG_RST_CAUSE2_OFFSET:

0 commit comments

Comments
 (0)