Skip to content

Commit 059417e

Browse files
sholeksandrij-intel
authored andcommitted
platform: mellanox: mlx-platform: Add support DGX flavor of next-generation 800GB/s ethernet switch.
This system is based on Nvidia SN5600 Spectrum-4 Based 64x800Gb/s ETH Switch System, with the following key changes: Key changes: 1. New system SKU: HI174. 2. Power Supply: PSU AC replaiced with PDB board (added pdb/pwr attributes). 3. CPLD: Update register map with new PDB related signals. Signed-off-by: Oleksandr Shamray <oleksandrs@nvidia.com> Reviewed-by: Vadim Pasternak <vadimp@nvidia.com> Link: https://patch.msgid.link/20260128075939.2704019-3-oleksandrs@nvidia.com Reviewed-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com> Signed-off-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>
1 parent dbf76f8 commit 059417e

1 file changed

Lines changed: 28 additions & 0 deletions

File tree

drivers/platform/mellanox/mlx-platform.c

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7772,6 +7772,27 @@ static int __init mlxplat_dmi_ng800_matched(const struct dmi_system_id *dmi)
77727772
return mlxplat_register_platform_device();
77737773
}
77747774

7775+
static int __init mlxplat_dmi_ng800_dgx_matched(const struct dmi_system_id *dmi)
7776+
{
7777+
int i;
7778+
7779+
mlxplat_max_adap_num = MLXPLAT_CPLD_MAX_PHYS_ADAPTER_NUM;
7780+
mlxplat_mux_num = ARRAY_SIZE(mlxplat_ng800_mux_data);
7781+
mlxplat_mux_data = mlxplat_ng800_mux_data;
7782+
mlxplat_hotplug = &mlxplat_mlxcpld_dgx_ext_data;
7783+
mlxplat_hotplug->deferred_nr =
7784+
mlxplat_msn21xx_channels[MLXPLAT_CPLD_GRP_CHNL_NUM - 1];
7785+
mlxplat_led = &mlxplat_default_ng_led_data;
7786+
mlxplat_regs_io = &mlxplat_dgx_ng_regs_io_data;
7787+
mlxplat_fan = &mlxplat_default_fan_data;
7788+
for (i = 0; i < ARRAY_SIZE(mlxplat_mlxcpld_wd_set_type2); i++)
7789+
mlxplat_wd_data[i] = &mlxplat_mlxcpld_wd_set_type2[i];
7790+
mlxplat_i2c = &mlxplat_mlxcpld_i2c_ng_data;
7791+
mlxplat_regmap_config = &mlxplat_mlxcpld_regmap_config_ng400;
7792+
7793+
return mlxplat_register_platform_device();
7794+
}
7795+
77757796
static int __init mlxplat_dmi_l1_switch_matched(const struct dmi_system_id *dmi)
77767797
{
77777798
int i;
@@ -7926,6 +7947,13 @@ static const struct dmi_system_id mlxplat_dmi_table[] __initconst = {
79267947
DMI_MATCH(DMI_BOARD_NAME, "VMOD0011"),
79277948
},
79287949
},
7950+
{
7951+
.callback = mlxplat_dmi_ng800_dgx_matched,
7952+
.matches = {
7953+
DMI_MATCH(DMI_BOARD_NAME, "VMOD0013"),
7954+
DMI_EXACT_MATCH(DMI_PRODUCT_SKU, "HI174"),
7955+
},
7956+
},
79297957
{
79307958
.callback = mlxplat_dmi_ng800_matched,
79317959
.matches = {

0 commit comments

Comments
 (0)