mlxsw: core: Extend the index size for temperature sensors readout
Extend sensor index size for Management Temperature Bulk Register (MTBR) and Management Temperature Register (MTMP) upto 12 bits in order to align registers description with new version of PRM document. Add define for base sensor index for SFP modules temperature reading for MTMP register. Signed-off-by: Vadim Pasternak <vadimp@mellanox.com> Acked-by: Jiri Pirko <jiri@mellanox.com> Signed-off-by: Ido Schimmel <idosch@mellanox.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
2e265a8b6c
commit
984aec7521
@ -8039,6 +8039,7 @@ MLXSW_ITEM32(reg, mtcap, sensor_count, 0x00, 0, 7);
|
||||
|
||||
MLXSW_REG_DEFINE(mtmp, MLXSW_REG_MTMP_ID, MLXSW_REG_MTMP_LEN);
|
||||
|
||||
#define MLXSW_REG_MTMP_MODULE_INDEX_MIN 64
|
||||
#define MLXSW_REG_MTMP_GBOX_INDEX_MIN 256
|
||||
/* reg_mtmp_sensor_index
|
||||
* Sensors index to access.
|
||||
@ -8046,7 +8047,7 @@ MLXSW_REG_DEFINE(mtmp, MLXSW_REG_MTMP_ID, MLXSW_REG_MTMP_LEN);
|
||||
* (module 0 is mapped to sensor_index 64).
|
||||
* Access: Index
|
||||
*/
|
||||
MLXSW_ITEM32(reg, mtmp, sensor_index, 0x00, 0, 11);
|
||||
MLXSW_ITEM32(reg, mtmp, sensor_index, 0x00, 0, 12);
|
||||
|
||||
/* Convert to milli degrees Celsius */
|
||||
#define MLXSW_REG_MTMP_TEMP_TO_MC(val) (val * 125)
|
||||
@ -8157,7 +8158,7 @@ MLXSW_REG_DEFINE(mtbr, MLXSW_REG_MTBR_ID, MLXSW_REG_MTBR_LEN);
|
||||
* 64-127 are mapped to the SFP+/QSFP modules sequentially).
|
||||
* Access: Index
|
||||
*/
|
||||
MLXSW_ITEM32(reg, mtbr, base_sensor_index, 0x00, 0, 7);
|
||||
MLXSW_ITEM32(reg, mtbr, base_sensor_index, 0x00, 0, 12);
|
||||
|
||||
/* reg_mtbr_num_rec
|
||||
* Request: Number of records to read
|
||||
@ -8184,7 +8185,7 @@ MLXSW_ITEM32_INDEXED(reg, mtbr, rec_max_temp, MLXSW_REG_MTBR_BASE_LEN, 16,
|
||||
MLXSW_ITEM32_INDEXED(reg, mtbr, rec_temp, MLXSW_REG_MTBR_BASE_LEN, 0, 16,
|
||||
MLXSW_REG_MTBR_REC_LEN, 0x00, false);
|
||||
|
||||
static inline void mlxsw_reg_mtbr_pack(char *payload, u8 base_sensor_index,
|
||||
static inline void mlxsw_reg_mtbr_pack(char *payload, u16 base_sensor_index,
|
||||
u8 num_rec)
|
||||
{
|
||||
MLXSW_REG_ZERO(mtbr, payload);
|
||||
|
Loading…
Reference in New Issue
Block a user