Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

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>

authored by

Oleksandr Shamray and committed by
Ilpo Järvinen
059417ea dbf76f86

+28
+28
drivers/platform/mellanox/mlx-platform.c
··· 7772 7772 return mlxplat_register_platform_device(); 7773 7773 } 7774 7774 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 + 7775 7796 static int __init mlxplat_dmi_l1_switch_matched(const struct dmi_system_id *dmi) 7776 7797 { 7777 7798 int i; ··· 7945 7924 .callback = mlxplat_dmi_modular_matched, 7946 7925 .matches = { 7947 7926 DMI_MATCH(DMI_BOARD_NAME, "VMOD0011"), 7927 + }, 7928 + }, 7929 + { 7930 + .callback = mlxplat_dmi_ng800_dgx_matched, 7931 + .matches = { 7932 + DMI_MATCH(DMI_BOARD_NAME, "VMOD0013"), 7933 + DMI_EXACT_MATCH(DMI_PRODUCT_SKU, "HI174"), 7948 7934 }, 7949 7935 }, 7950 7936 {