[Mellanox] Support running hw-management service on MSN4700 emulation platform (#16584)

- Why I did it
Support running hw-management service on MSN4700 emulation platform.

- How I did it
Use physical EEPROM instead of the fake one
Do not skip PSUd, PCId, thermal control daemon
Adjust PCIe and thermal configuration files
Adjust platform.json for different chassis names and thermals
Remove a patch to hw-management in order to enable it

- How to verify it
Run Nvidia simulation on SN4700 (ASIC and Platform)

Signed-off-by: Stephen Sun <stephens@nvidia.com>
This commit is contained in:
Stephen Sun 2023-11-19 17:03:46 +08:00 committed by GitHub
parent 672781e24a
commit b93852d53d
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
10 changed files with 834 additions and 119 deletions

View File

@ -0,0 +1,91 @@
##
## Copyright (c) 2023 NVIDIA CORPORATION & AFFILIATES.
## Apache-2.0
##
## Licensed under the Apache License, Version 2.0 (the "License");
## you may not use this file except in compliance with the License.
## You may obtain a copy of the License at
##
## http://www.apache.org/licenses/LICENSE-2.0
##
## Unless required by applicable law or agreed to in writing, software
## distributed under the License is distributed on an "AS IS" BASIS,
## WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
## See the License for the specific language governing permissions and
## limitations under the License.
##
- bus: '00'
dev: '00'
fn: '0'
id: '1237'
name: 'Host bridge: Intel Corporation 440FX - 82441FX PMC [Natoma] (rev 02)'
- bus: '00'
dev: '01'
fn: '0'
id: '7000'
name: 'ISA bridge: Intel Corporation 82371SB PIIX3 ISA [Natoma/Triton II]'
- bus: '00'
dev: '01'
fn: '1'
id: '7010'
name: 'IDE interface: Intel Corporation 82371SB PIIX3 IDE [Natoma/Triton II]'
- bus: '00'
dev: '01'
fn: '2'
id: '7020'
name: 'USB controller: Intel Corporation 82371SB PIIX3 USB [Natoma/Triton II] (rev
01)'
- bus: '00'
dev: '01'
fn: '3'
id: '7113'
name: 'Bridge: Intel Corporation 82371AB/EB/MB PIIX4 ACPI (rev 03)'
- bus: '00'
dev: '02'
fn: '0'
id: 00b8
name: 'VGA compatible controller: Cirrus Logic GD 5446'
- bus: '00'
dev: '03'
fn: '0'
id: 100e
name: 'Ethernet controller: Intel Corporation 82540EM Gigabit Ethernet Controller
(rev 03)'
- bus: '00'
dev: '04'
fn: '0'
id: '1002'
name: 'Unclassified device [00ff]: Red Hat, Inc. Virtio memory balloon'
- bus: '00'
dev: '05'
fn: '0'
id: '1009'
name: 'Unclassified device [0002]: Red Hat, Inc. Virtio filesystem'
- bus: '00'
dev: '06'
fn: '0'
id: '2922'
name: 'SATA controller: Intel Corporation 82801IR/IO/IH (ICH9R/DO/DH) 6 port SATA
Controller [AHCI mode] (rev 02)'
- bus: '00'
dev: '07'
fn: '0'
id: '0001'
name: 'PCI bridge: Red Hat, Inc. QEMU PCI-PCI bridge'
- bus: '00'
dev: 0c
fn: '0'
id: '1009'
name: 'Unclassified device [0002]: Red Hat, Inc. Virtio filesystem'
- bus: '00'
dev: 0e
fn: '0'
id: '1001'
name: 'System peripheral: NVIDIA Corporation GK110B [GeForce GTX TITAN Z] (rev 01)'
- bus: '01'
dev: '10'
fn: '0'
id: cf70
name: 'Ethernet controller: Mellanox Technologies Spectrum-3'

View File

@ -1 +0,0 @@
../x86_64-mlnx_msn4700-r0/platform.json

View File

@ -0,0 +1,716 @@
{
"chassis": {
"name": "MSN4700",
"components": [
{
"name": "ONIE"
},
{
"name": "SSD"
},
{
"name": "BIOS"
},
{
"name": "CPLD1"
},
{
"name": "CPLD2"
},
{
"name": "CPLD3"
}
],
"fans": [],
"fan_drawers": [
{
"name": "drawer1",
"fans": [
{
"name": "fan1"
},
{
"name": "fan2"
}
]
},
{
"name": "drawer2",
"fans": [
{
"name": "fan3"
},
{
"name": "fan4"
}
]
},
{
"name": "drawer3",
"fans": [
{
"name": "fan5"
},
{
"name": "fan6"
}
]
},
{
"name": "drawer4",
"fans": [
{
"name": "fan7"
},
{
"name": "fan8"
}
]
},
{
"name": "drawer5",
"fans": [
{
"name": "fan9"
},
{
"name": "fan10"
}
]
},
{
"name": "drawer6",
"fans": [
{
"name": "fan11"
},
{
"name": "fan12"
}
]
}
],
"psus": [
{
"name": "PSU 1",
"fans": [
{
"name": "psu1_fan1"
}
],
"thermals": [
{
"name": "PSU-1 Temp"
}
]
},
{
"name": "PSU 2",
"fans": [
{
"name": "psu2_fan1"
}
],
"thermals": [
{
"name": "PSU-2 Temp"
}
]
}
],
"thermals": [
{
"name": "ASIC"
},
{
"name": "Ambient COMEX Temp"
},
{
"name": "Ambient Fan Side Temp"
},
{
"name": "Ambient Port Side Temp"
}
],
"sfps": [
{
"name": "sfp1",
"thermals": [
{
"name": "xSFP module 1 Temp"
}
]
},
{
"name": "sfp2",
"thermals": [
{
"name": "xSFP module 2 Temp"
}
]
},
{
"name": "sfp3",
"thermals": [
{
"name": "xSFP module 3 Temp"
}
]
},
{
"name": "sfp4",
"thermals": [
{
"name": "xSFP module 4 Temp"
}
]
},
{
"name": "sfp5",
"thermals": [
{
"name": "xSFP module 5 Temp"
}
]
},
{
"name": "sfp6",
"thermals": [
{
"name": "xSFP module 6 Temp"
}
]
},
{
"name": "sfp7",
"thermals": [
{
"name": "xSFP module 7 Temp"
}
]
},
{
"name": "sfp8",
"thermals": [
{
"name": "xSFP module 8 Temp"
}
]
},
{
"name": "sfp9",
"thermals": [
{
"name": "xSFP module 9 Temp"
}
]
},
{
"name": "sfp10",
"thermals": [
{
"name": "xSFP module 10 Temp"
}
]
},
{
"name": "sfp11",
"thermals": [
{
"name": "xSFP module 11 Temp"
}
]
},
{
"name": "sfp12",
"thermals": [
{
"name": "xSFP module 12 Temp"
}
]
},
{
"name": "sfp13",
"thermals": [
{
"name": "xSFP module 13 Temp"
}
]
},
{
"name": "sfp14",
"thermals": [
{
"name": "xSFP module 14 Temp"
}
]
},
{
"name": "sfp15",
"thermals": [
{
"name": "xSFP module 15 Temp"
}
]
},
{
"name": "sfp16",
"thermals": [
{
"name": "xSFP module 16 Temp"
}
]
},
{
"name": "sfp17",
"thermals": [
{
"name": "xSFP module 17 Temp"
}
]
},
{
"name": "sfp18",
"thermals": [
{
"name": "xSFP module 18 Temp"
}
]
},
{
"name": "sfp19",
"thermals": [
{
"name": "xSFP module 19 Temp"
}
]
},
{
"name": "sfp20",
"thermals": [
{
"name": "xSFP module 20 Temp"
}
]
},
{
"name": "sfp21",
"thermals": [
{
"name": "xSFP module 21 Temp"
}
]
},
{
"name": "sfp22",
"thermals": [
{
"name": "xSFP module 22 Temp"
}
]
},
{
"name": "sfp23",
"thermals": [
{
"name": "xSFP module 23 Temp"
}
]
},
{
"name": "sfp24",
"thermals": [
{
"name": "xSFP module 24 Temp"
}
]
},
{
"name": "sfp25",
"thermals": [
{
"name": "xSFP module 25 Temp"
}
]
},
{
"name": "sfp26",
"thermals": [
{
"name": "xSFP module 26 Temp"
}
]
},
{
"name": "sfp27",
"thermals": [
{
"name": "xSFP module 27 Temp"
}
]
},
{
"name": "sfp28",
"thermals": [
{
"name": "xSFP module 28 Temp"
}
]
},
{
"name": "sfp29",
"thermals": [
{
"name": "xSFP module 29 Temp"
}
]
},
{
"name": "sfp30",
"thermals": [
{
"name": "xSFP module 30 Temp"
}
]
},
{
"name": "sfp31",
"thermals": [
{
"name": "xSFP module 31 Temp"
}
]
},
{
"name": "sfp32",
"thermals": [
{
"name": "xSFP module 32 Temp"
}
]
}
]
},
"interfaces": {
"Ethernet0": {
"index": "1,1,1,1,1,1,1,1",
"lanes": "0,1,2,3,4,5,6,7",
"breakout_modes": {
"1x400G[200G,100G,50G,40G,25G,10G,1G]": ["etp1"],
"2x200G[100G,50G,40G,25G,10G,1G]": ["etp1a", "etp1b"],
"4x100G[50G,25G,10G,1G]": ["etp1a", "etp1b", "etp1c", "etp1d"],
"4x25G(4)[10G,1G]": ["etp1a", "etp1b", "etp1c", "etp1d"]
}
},
"Ethernet8": {
"index": "2,2,2,2,2,2,2,2",
"lanes": "8,9,10,11,12,13,14,15",
"breakout_modes": {
"1x400G[200G,100G,50G,40G,25G,10G,1G]": ["etp2"],
"2x200G[100G,50G,40G,25G,10G,1G]": ["etp2a", "etp2b"],
"4x100G[50G,25G,10G,1G]": ["etp2a", "etp2b", "etp2c", "etp2d"],
"4x25G(4)[10G,1G]": ["etp2a", "etp2b", "etp2c", "etp2d"]
}
},
"Ethernet16": {
"index": "3,3,3,3,3,3,3,3",
"lanes": "16,17,18,19,20,21,22,23",
"breakout_modes": {
"1x400G[200G,100G,50G,40G,25G,10G,1G]": ["etp3"],
"2x200G[100G,50G,40G,25G,10G,1G]": ["etp3a", "etp3b"],
"4x100G[50G,25G,10G,1G]": ["etp3a", "etp3b", "etp3c", "etp3d"],
"4x25G(4)[10G,1G]": ["etp3a", "etp3b", "etp3c", "etp3d"]
}
},
"Ethernet24": {
"index": "4,4,4,4,4,4,4,4",
"lanes": "24,25,26,27,28,29,30,31",
"breakout_modes": {
"1x400G[200G,100G,50G,40G,25G,10G,1G]": ["etp4"],
"2x200G[100G,50G,40G,25G,10G,1G]": ["etp4a", "etp4b"],
"4x100G[50G,25G,10G,1G]": ["etp4a", "etp4b", "etp4c", "etp4d"],
"4x25G(4)[10G,1G]": ["etp4a", "etp4b", "etp4c", "etp4d"]
}
},
"Ethernet32": {
"index": "5,5,5,5,5,5,5,5",
"lanes": "32,33,34,35,36,37,38,39",
"breakout_modes": {
"1x400G[200G,100G,50G,40G,25G,10G,1G]": ["etp5"],
"2x200G[100G,50G,40G,25G,10G,1G]": ["etp5a", "etp5b"],
"4x100G[50G,25G,10G,1G]": ["etp5a", "etp5b", "etp5c", "etp5d"],
"4x25G(4)[10G,1G]": ["etp5a", "etp5b", "etp5c", "etp5d"]
}
},
"Ethernet40": {
"index": "6,6,6,6,6,6,6,6",
"lanes": "40,41,42,43,44,45,46,47",
"breakout_modes": {
"1x400G[200G,100G,50G,40G,25G,10G,1G]": ["etp6"],
"2x200G[100G,50G,40G,25G,10G,1G]": ["etp6a", "etp6b"],
"4x100G[50G,25G,10G,1G]": ["etp6a", "etp6b", "etp6c", "etp6d"],
"4x25G(4)[10G,1G]": ["etp6a", "etp6b", "etp6c", "etp6d"]
}
},
"Ethernet48": {
"index": "7,7,7,7,7,7,7,7",
"lanes": "48,49,50,51,52,53,54,55",
"breakout_modes": {
"1x400G[200G,100G,50G,40G,25G,10G,1G]": ["etp7"],
"2x200G[100G,50G,40G,25G,10G,1G]": ["etp7a", "etp7b"],
"4x100G[50G,25G,10G,1G]": ["etp7a", "etp7b", "etp7c", "etp7d"],
"4x25G(4)[10G,1G]": ["etp7a", "etp7b", "etp7c", "etp7d"]
}
},
"Ethernet56": {
"index": "8,8,8,8,8,8,8,8",
"lanes": "56,57,58,59,60,61,62,63",
"breakout_modes": {
"1x400G[200G,100G,50G,40G,25G,10G,1G]": ["etp8"],
"2x200G[100G,50G,40G,25G,10G,1G]": ["etp8a", "etp8b"],
"4x100G[50G,25G,10G,1G]": ["etp8a", "etp8b", "etp8c", "etp8d"],
"4x25G(4)[10G,1G]": ["etp8a", "etp8b", "etp8c", "etp8d"]
}
},
"Ethernet64": {
"index": "9,9,9,9,9,9,9,9",
"lanes": "64,65,66,67,68,69,70,71",
"breakout_modes": {
"1x400G[200G,100G,50G,40G,25G,10G,1G]": ["etp9"],
"2x200G[100G,50G,40G,25G,10G,1G]": ["etp9a", "etp9b"],
"4x100G[50G,25G,10G,1G]": ["etp9a", "etp9b", "etp9c", "etp9d"],
"4x25G(4)[10G,1G]": ["etp9a", "etp9b", "etp9c", "etp9d"]
}
},
"Ethernet72": {
"index": "10,10,10,10,10,10,10,10",
"lanes": "72,73,74,75,76,77,78,79",
"breakout_modes": {
"1x400G[200G,100G,50G,40G,25G,10G,1G]": ["etp10"],
"2x200G[100G,50G,40G,25G,10G,1G]": ["etp10a", "etp10b"],
"4x100G[50G,25G,10G,1G]": ["etp10a", "etp10b", "etp10c", "etp10d"],
"4x25G(4)[10G,1G]": ["etp10a", "etp10b", "etp10c", "etp10d"]
}
},
"Ethernet80": {
"index": "11,11,11,11,11,11,11,11",
"lanes": "80,81,82,83,84,85,86,87",
"breakout_modes": {
"1x400G[200G,100G,50G,40G,25G,10G,1G]": ["etp11"],
"2x200G[100G,50G,40G,25G,10G,1G]": ["etp11a", "etp11b"],
"4x100G[50G,25G,10G,1G]": ["etp11a", "etp11b", "etp11c", "etp11d"],
"4x25G(4)[10G,1G]": ["etp11a", "etp11b", "etp11c", "etp11d"]
}
},
"Ethernet88": {
"index": "12,12,12,12,12,12,12,12",
"lanes": "88,89,90,91,92,93,94,95",
"breakout_modes": {
"1x400G[200G,100G,50G,40G,25G,10G,1G]": ["etp12"],
"2x200G[100G,50G,40G,25G,10G,1G]": ["etp12a", "etp12b"],
"4x100G[50G,25G,10G,1G]": ["etp12a", "etp12b", "etp12c", "etp12d"],
"4x25G(4)[10G,1G]": ["etp12a", "etp12b", "etp12c", "etp12d"]
}
},
"Ethernet96": {
"index": "13,13,13,13,13,13,13,13",
"lanes": "96,97,98,99,100,101,102,103",
"breakout_modes": {
"1x400G[200G,100G,50G,40G,25G,10G,1G]": ["etp13"],
"2x200G[100G,50G,40G,25G,10G,1G]": ["etp13a", "etp13b"],
"4x100G[50G,25G,10G,1G]": ["etp13a", "etp13b", "etp13c", "etp13d"],
"4x25G(4)[10G,1G]": ["etp13a", "etp13b", "etp13c", "etp13d"]
}
},
"Ethernet104": {
"index": "14,14,14,14,14,14,14,14",
"lanes": "104,105,106,107,108,109,110,111",
"breakout_modes": {
"1x400G[200G,100G,50G,40G,25G,10G,1G]": ["etp14"],
"2x200G[100G,50G,40G,25G,10G,1G]": ["etp14a", "etp14b"],
"4x100G[50G,25G,10G,1G]": ["etp14a", "etp14b", "etp14c", "etp14d"],
"4x25G(4)[10G,1G]": ["etp14a", "etp14b", "etp14c", "etp14d"]
}
},
"Ethernet112": {
"index": "15,15,15,15,15,15,15,15",
"lanes": "112,113,114,115,116,117,118,119",
"breakout_modes": {
"1x400G[200G,100G,50G,40G,25G,10G,1G]": ["etp15"],
"2x200G[100G,50G,40G,25G,10G,1G]": ["etp15a", "etp15b"],
"4x100G[50G,25G,10G,1G]": ["etp15a", "etp15b", "etp15c", "etp15d"],
"4x25G(4)[10G,1G]": ["etp15a", "etp15b", "etp15c", "etp15d"]
}
},
"Ethernet120": {
"index": "16,16,16,16,16,16,16,16",
"lanes": "120,121,122,123,124,125,126,127",
"breakout_modes": {
"1x400G[200G,100G,50G,40G,25G,10G,1G]": ["etp16"],
"2x200G[100G,50G,40G,25G,10G,1G]": ["etp16a", "etp16b"],
"4x100G[50G,25G,10G,1G]": ["etp16a", "etp16b", "etp16c", "etp16d"],
"4x25G(4)[10G,1G]": ["etp16a", "etp16b", "etp16c", "etp16d"]
}
},
"Ethernet128": {
"index": "17,17,17,17,17,17,17,17",
"lanes": "128,129,130,131,132,133,134,135",
"breakout_modes": {
"1x400G[200G,100G,50G,40G,25G,10G,1G]": ["etp17"],
"2x200G[100G,50G,40G,25G,10G,1G]": ["etp17a", "etp17b"],
"4x100G[50G,25G,10G,1G]": ["etp17a", "etp17b", "etp17c", "etp17d"],
"4x25G(4)[10G,1G]": ["etp17a", "etp17b", "etp17c", "etp17d"]
}
},
"Ethernet136": {
"index": "18,18,18,18,18,18,18,18",
"lanes": "136,137,138,139,140,141,142,143",
"breakout_modes": {
"1x400G[200G,100G,50G,40G,25G,10G,1G]": ["etp18"],
"2x200G[100G,50G,40G,25G,10G,1G]": ["etp18a", "etp18b"],
"4x100G[50G,25G,10G,1G]": ["etp18a", "etp18b", "etp18c", "etp18d"],
"4x25G(4)[10G,1G]": ["etp18a", "etp18b", "etp18c", "etp18d"]
}
},
"Ethernet144": {
"index": "19,19,19,19,19,19,19,19",
"lanes": "144,145,146,147,148,149,150,151",
"breakout_modes": {
"1x400G[200G,100G,50G,40G,25G,10G,1G]": ["etp19"],
"2x200G[100G,50G,40G,25G,10G,1G]": ["etp19a", "etp19b"],
"4x100G[50G,25G,10G,1G]": ["etp19a", "etp19b", "etp19c", "etp19d"],
"4x25G(4)[10G,1G]": ["etp19a", "etp19b", "etp19c", "etp19d"]
}
},
"Ethernet152": {
"index": "20,20,20,20,20,20,20,20",
"lanes": "152,153,154,155,156,157,158,159",
"breakout_modes": {
"1x400G[200G,100G,50G,40G,25G,10G,1G]": ["etp20"],
"2x200G[100G,50G,40G,25G,10G,1G]": ["etp20a", "etp20b"],
"4x100G[50G,25G,10G,1G]": ["etp20a", "etp20b", "etp20c", "etp20d"],
"4x25G(4)[10G,1G]": ["etp20a", "etp20b", "etp20c", "etp20d"]
}
},
"Ethernet160": {
"index": "21,21,21,21,21,21,21,21",
"lanes": "160,161,162,163,164,165,166,167",
"breakout_modes": {
"1x400G[200G,100G,50G,40G,25G,10G,1G]": ["etp21"],
"2x200G[100G,50G,40G,25G,10G,1G]": ["etp21a", "etp21b"],
"4x100G[50G,25G,10G,1G]": ["etp21a", "etp21b", "etp21c", "etp21d"],
"4x25G(4)[10G,1G]": ["etp21a", "etp21b", "etp21c", "etp21d"]
}
},
"Ethernet168": {
"index": "22,22,22,22,22,22,22,22",
"lanes": "168,169,170,171,172,173,174,175",
"breakout_modes": {
"1x400G[200G,100G,50G,40G,25G,10G,1G]": ["etp22"],
"2x200G[100G,50G,40G,25G,10G,1G]": ["etp22a", "etp22b"],
"4x100G[50G,25G,10G,1G]": ["etp22a", "etp22b", "etp22c", "etp22d"],
"4x25G(4)[10G,1G]": ["etp22a", "etp22b", "etp22c", "etp22d"]
}
},
"Ethernet176": {
"index": "23,23,23,23,23,23,23,23",
"lanes": "176,177,178,179,180,181,182,183",
"breakout_modes": {
"1x400G[200G,100G,50G,40G,25G,10G,1G]": ["etp23"],
"2x200G[100G,50G,40G,25G,10G,1G]": ["etp23a", "etp23b"],
"4x100G[50G,25G,10G,1G]": ["etp23a", "etp23b", "etp23c", "etp23d"],
"4x25G(4)[10G,1G]": ["etp23a", "etp23b", "etp23c", "etp23d"]
}
},
"Ethernet184": {
"index": "24,24,24,24,24,24,24,24",
"lanes": "184,185,186,187,188,189,190,191",
"breakout_modes": {
"1x400G[200G,100G,50G,40G,25G,10G,1G]": ["etp24"],
"2x200G[100G,50G,40G,25G,10G,1G]": ["etp24a", "etp24b"],
"4x100G[50G,25G,10G,1G]": ["etp24a", "etp24b", "etp24c", "etp24d"],
"4x25G(4)[10G,1G]": ["etp24a", "etp24b", "etp24c", "etp24d"]
}
},
"Ethernet192": {
"index": "25,25,25,25,25,25,25,25",
"lanes": "192,193,194,195,196,197,198,199",
"breakout_modes": {
"1x400G[200G,100G,50G,40G,25G,10G,1G]": ["etp25"],
"2x200G[100G,50G,40G,25G,10G,1G]": ["etp25a", "etp25b"],
"4x100G[50G,25G,10G,1G]": ["etp25a", "etp25b", "etp25c", "etp25d"],
"4x25G(4)[10G,1G]": ["etp25a", "etp25b", "etp25c", "etp25d"]
}
},
"Ethernet200": {
"index": "26,26,26,26,26,26,26,26",
"lanes": "200,201,202,203,204,205,206,207",
"breakout_modes": {
"1x400G[200G,100G,50G,40G,25G,10G,1G]": ["etp26"],
"2x200G[100G,50G,40G,25G,10G,1G]": ["etp26a", "etp26b"],
"4x100G[50G,25G,10G,1G]": ["etp26a", "etp26b", "etp26c", "etp26d"],
"4x25G(4)[10G,1G]": ["etp26a", "etp26b", "etp26c", "etp26d"]
}
},
"Ethernet208": {
"index": "27,27,27,27,27,27,27,27",
"lanes": "208,209,210,211,212,213,214,215",
"breakout_modes": {
"1x400G[200G,100G,50G,40G,25G,10G,1G]": ["etp27"],
"2x200G[100G,50G,40G,25G,10G,1G]": ["etp27a", "etp27b"],
"4x100G[50G,25G,10G,1G]": ["etp27a", "etp27b", "etp27c", "etp27d"],
"4x25G(4)[10G,1G]": ["etp27a", "etp27b", "etp27c", "etp27d"]
}
},
"Ethernet216": {
"index": "28,28,28,28,28,28,28,28",
"lanes": "216,217,218,219,220,221,222,223",
"breakout_modes": {
"1x400G[200G,100G,50G,40G,25G,10G,1G]": ["etp28"],
"2x200G[100G,50G,40G,25G,10G,1G]": ["etp28a", "etp28b"],
"4x100G[50G,25G,10G,1G]": ["etp28a", "etp28b", "etp28c", "etp28d"],
"4x25G(4)[10G,1G]": ["etp28a", "etp28b", "etp28c", "etp28d"]
}
},
"Ethernet224": {
"index": "29,29,29,29,29,29,29,29",
"lanes": "224,225,226,227,228,229,230,231",
"breakout_modes": {
"1x400G[200G,100G,50G,40G,25G,10G,1G]": ["etp29"],
"2x200G[100G,50G,40G,25G,10G,1G]": ["etp29a", "etp29b"],
"4x100G[50G,25G,10G,1G]": ["etp29a", "etp29b", "etp29c", "etp29d"],
"4x25G(4)[10G,1G]": ["etp29a", "etp29b", "etp29c", "etp29d"]
}
},
"Ethernet232": {
"index": "30,30,30,30,30,30,30,30",
"lanes": "232,233,234,235,236,237,238,239",
"breakout_modes": {
"1x400G[200G,100G,50G,40G,25G,10G,1G]": ["etp30"],
"2x200G[100G,50G,40G,25G,10G,1G]": ["etp30a", "etp30b"],
"4x100G[50G,25G,10G,1G]": ["etp30a", "etp30b", "etp30c", "etp30d"],
"4x25G(4)[10G,1G]": ["etp30a", "etp30b", "etp30c", "etp30d"]
}
},
"Ethernet240": {
"index": "31,31,31,31,31,31,31,31",
"lanes": "240,241,242,243,244,245,246,247",
"breakout_modes": {
"1x400G[200G,100G,50G,40G,25G,10G,1G]": ["etp31"],
"2x200G[100G,50G,40G,25G,10G,1G]": ["etp31a", "etp31b"],
"4x100G[50G,25G,10G,1G]": ["etp31a", "etp31b", "etp31c", "etp31d"],
"4x25G(4)[10G,1G]": ["etp31a", "etp31b", "etp31c", "etp31d"]
}
},
"Ethernet248": {
"index": "32,32,32,32,32,32,32,32",
"lanes": "248,249,250,251,252,253,254,255",
"breakout_modes": {
"1x400G[200G,100G,50G,40G,25G,10G,1G]": ["etp32"],
"2x200G[100G,50G,40G,25G,10G,1G]": ["etp32a", "etp32b"],
"4x100G[50G,25G,10G,1G]": ["etp32a", "etp32b", "etp32c", "etp32d"],
"4x25G(4)[10G,1G]": ["etp32a", "etp32b", "etp32c", "etp32d"]
}
}
}
}

View File

@ -1 +0,0 @@
../x86_64-mlnx_msn2700_simx-r0/pmon_daemon_control.json

View File

@ -0,0 +1,5 @@
{
"skip_ledd": true,
"skip_xcvrd": true,
"skip_fancontrol": true
}

View File

@ -0,0 +1 @@
../x86_64-mlnx_msn2700-r0/thermal_policy.json

View File

@ -1,7 +1,7 @@
From 489764eb124e03087eb408dec27d769fa4f98459 Mon Sep 17 00:00:00 2001
From 5a7bf8934772b94a2414f54cb3e343d0d1d81efd Mon Sep 17 00:00:00 2001
From: keboliu <kebol@mellanox.com>
Date: Fri, 15 Jan 2021 14:41:16 +0800
Subject: [PATCH 1/4] Make SONiC determine-reboot-cause service start after
Subject: [PATCH 1/3] Make SONiC determine-reboot-cause service start after
hw-mgmt service
Signed-off-by: Kebo Liu <kebol@nvidia.com>
@ -10,7 +10,7 @@ Signed-off-by: Kebo Liu <kebol@nvidia.com>
1 file changed, 1 insertion(+)
diff --git a/debian/hw-management.hw-management.service b/debian/hw-management.hw-management.service
index 8bdcaef..1c25ffb 100755
index 8bdcaef5..1c25ffb2 100755
--- a/debian/hw-management.hw-management.service
+++ b/debian/hw-management.hw-management.service
@@ -1,6 +1,7 @@
@ -22,5 +22,5 @@ index 8bdcaef..1c25ffb 100755
[Service]
Type=oneshot
--
2.20.1
2.30.2

View File

@ -1,103 +0,0 @@
From eb3a76d7fbd0cbf2c370ecadd912960b094403d6 Mon Sep 17 00:00:00 2001
From: Junchao-Mellanox <junchao@nvidia.com>
Date: Wed, 23 Aug 2023 14:33:44 +0800
Subject: [PATCH] [PATCH 2/4] Disable hw-mgmt on SimX platforms
---
usr/usr/bin/hw-management-ready.sh | 3 ---
usr/usr/bin/hw-management.sh | 21 +++++++++------------
2 files changed, 9 insertions(+), 15 deletions(-)
diff --git a/usr/usr/bin/hw-management-ready.sh b/usr/usr/bin/hw-management-ready.sh
index 840bb0b..2f8547f 100755
--- a/usr/usr/bin/hw-management-ready.sh
+++ b/usr/usr/bin/hw-management-ready.sh
@@ -56,9 +56,6 @@ fi
# environment, TC need to be stopped.
if [ -n "$(lspci -vvv | grep SimX)" ]; then
case $product_sku in
- HI130|HI122)
- # Let the TC continue to run
- ;;
*)
if systemctl is-enabled --quiet hw-management-tc; then
echo "Stopping and disabling hw-management-tc on SimX"
diff --git a/usr/usr/bin/hw-management.sh b/usr/usr/bin/hw-management.sh
index d3914d1..a60dba9 100755
--- a/usr/usr/bin/hw-management.sh
+++ b/usr/usr/bin/hw-management.sh
@@ -545,7 +545,7 @@ function restore_i2c_bus_frequency_default()
function find_regio_sysfs_path_helper()
{
# Find hwmon{n} sysfs path for regio device
- case $board_type in
+ case $board_type in
VMOD0014)
for path in /sys/devices/pci0000:00/*/NVSN2201:*/mlxreg-io/hwmon/hwmon*; do
if [ -d "$path" ]; then
@@ -732,10 +732,10 @@ set_jtag_gpio()
gpio_tdi=$((gpiobase+jtag_tdi))
echo $gpio_tdi > /sys/class/gpio/"$export_unexport"
- # In SN2201 system.
+ # In SN2201 system.
# GPIO0 for CPU request to reset the Main Board I2C Mux.
- # GPIO1 for CPU control the CPU Board MUX when doing the ISP programming.
- # GPIO13 for CPU request Main Board JTAG control signal.
+ # GPIO1 for CPU control the CPU Board MUX when doing the ISP programming.
+ # GPIO13 for CPU request Main Board JTAG control signal.
if [ "$board_type" == "VMOD0014" ]; then
mux_reset=27
jtag_mux_en=33
@@ -1294,7 +1294,7 @@ connect_msn4700_msn4600_A1()
# msn4600C with removed A2D
connect_table+=(${msn4600C_A1_base_connect_table[@]})
else
- # msn4700/msn4600 respin
+ # msn4700/msn4600 respin
connect_table+=(${msn4700_msn4600_A1_base_connect_table[@]})
fi
add_cpu_board_to_connection_table
@@ -2144,7 +2144,7 @@ create_symbolic_links()
fi
if [ ! -d $thermal_path ]; then
mkdir $thermal_path
- fi
+ fi
if [ ! -d $config_path ]; then
mkdir $config_path
fi
@@ -2341,7 +2341,7 @@ do_start()
check_system
set_asic_pci_id
- asic_control=$(< $config_path/asic_control)
+ asic_control=$(< $config_path/asic_control)
if [[ $asic_control -ne 0 ]]; then
get_asic_bus
get_asic2_bus
@@ -2379,9 +2379,9 @@ do_start()
else
ln -sf /etc/sensors3.conf $config_path/lm_sensors_config
fi
- if [ -v "lm_sensors_labels" ] && [ -f $lm_sensors_labels ]; then
+ if [ -v "lm_sensors_labels" ] && [ -f $lm_sensors_labels ]; then
ln -sf $lm_sensors_labels $config_path/lm_sensors_labels
- fi
+ fi
if [ -v "thermal_control_config" ] && [ -f $thermal_control_config ]; then
ln -sf $thermal_control_config $config_path/tc_config.json
else
@@ -2528,9 +2528,6 @@ do_chip_up_down()
check_simx()
{
case $sku in
- HI130|HI122)
- # Let the initialization go through
- ;;
*)
if [ -n "$(lspci -vvv | grep SimX)" ]; then
exit 0
--
1.9.1

View File

@ -1,14 +1,14 @@
From 439639e939f896f9aee42a4dbd5216feb728220c Mon Sep 17 00:00:00 2001
From f239df6348e9602bdde2f0c068e3c93c6a22b434 Mon Sep 17 00:00:00 2001
From: Alexander Allen <arallen@nvidia.com>
Date: Thu, 17 Feb 2022 04:19:50 +0000
Subject: [PATCH 3/4] Remove unused non-upstream kernel modules from load
Subject: [PATCH 2/3] Remove unused non-upstream kernel modules from load
---
usr/etc/modules-load.d/05-hw-management-modules.conf | 2 --
1 file changed, 2 deletions(-)
diff --git a/usr/etc/modules-load.d/05-hw-management-modules.conf b/usr/etc/modules-load.d/05-hw-management-modules.conf
index cfcfaa4..dd3b5ca 100644
index ca9d1043..c0980bcd 100644
--- a/usr/etc/modules-load.d/05-hw-management-modules.conf
+++ b/usr/etc/modules-load.d/05-hw-management-modules.conf
@@ -15,8 +15,6 @@ xdpe12284
@ -21,5 +21,5 @@ index cfcfaa4..dd3b5ca 100644
gpio-pca953x
pmbus
--
2.20.1
2.30.2

View File

@ -1,7 +1,7 @@
From 038bce6bf808ec9d082e96fec4184e060b3a85a9 Mon Sep 17 00:00:00 2001
From e45320c61765b07f5d73f6c207f9f1d3b4d21721 Mon Sep 17 00:00:00 2001
From: Stephen Sun <stephens@nvidia.com>
Date: Mon, 28 Nov 2022 03:55:14 +0000
Subject: [PATCH 4/4] Make system-health service starts after hw-management to
Subject: [PATCH 3/3] Make system-health service starts after hw-management to
avoid failures
On SN2410, it can fail to read the file led_status_capability if it starts from ONIE
@ -12,7 +12,7 @@ Signed-off-by: Stephen Sun <stephens@nvidia.com>
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/debian/hw-management.hw-management.service b/debian/hw-management.hw-management.service
index 1c25ffb..0fbd877 100755
index 1c25ffb2..639bd3cd 100755
--- a/debian/hw-management.hw-management.service
+++ b/debian/hw-management.hw-management.service
@@ -1,7 +1,7 @@
@ -25,5 +25,5 @@ index 1c25ffb..0fbd877 100755
[Service]
Type=oneshot
--
2.20.1
2.30.2

View File

@ -70,6 +70,13 @@ DEVICE_DATA = {
}
}
},
'x86_64-mlnx_msn4700_simx-r0': {
'thermal': {
"capability": {
"cpu_pack": False
}
}
},
'x86_64-mlnx_msn3700-r0': {
},
'x86_64-mlnx_msn3700c-r0': {

View File

@ -1,5 +1,5 @@
#
# Copyright (c) 2019-2021 NVIDIA CORPORATION & AFFILIATES.
# Copyright (c) 2019-2023 NVIDIA CORPORATION & AFFILIATES.
# Apache-2.0
#
# Licensed under the Apache License, Version 2.0 (the "License");
@ -41,7 +41,7 @@ logger = Logger()
#
EEPROM_SYMLINK = "/var/run/hw-management/eeprom/vpd_info"
platform_name = DeviceDataManager.get_platform_name()
if platform_name and 'simx' in platform_name:
if platform_name and 'simx' in platform_name and '4700' not in platform_name:
if not os.path.exists(EEPROM_SYMLINK):
if is_host():
platform_path = os.path.join('/usr/share/sonic/device', platform_name)