[Mellanox] Add a new Mellanox platform x86_64-mlnx_msn3420 and new SKU ACS-MSN3420 (#4436)

* New SKU support for MSN3420

Signed-off-by: Shlomi Bitton <shlomibi@mellanox.com>

Conflicts:
	device/mellanox/x86_64-mlnx_msn2700-r0/plugins/sfputil.py

* Add CPLD's

* Symlink fixes and semantics

* Adding new platform at end of lines
This commit is contained in:
shlomibitton 2020-04-26 14:39:55 +03:00 committed by Abhishek Dosi
parent 1d7d8fac66
commit aa33a959dd
24 changed files with 667 additions and 7 deletions

View File

@ -41,8 +41,8 @@ SFP_PORT_NAME_CONVENTION = "sfp{}"
# magic code defnition for port number, qsfp port position of each hwsku # magic code defnition for port number, qsfp port position of each hwsku
# port_position_tuple = (PORT_START, QSFP_PORT_START, PORT_END, PORT_IN_BLOCK, EEPROM_OFFSET) # port_position_tuple = (PORT_START, QSFP_PORT_START, PORT_END, PORT_IN_BLOCK, EEPROM_OFFSET)
hwsku_dict = {'ACS-MSN2700': 0, 'Mellanox-SN2700': 0, 'Mellanox-SN2700-D48C8': 0, 'LS-SN2700': 0, 'ACS-MSN2740': 0, 'ACS-MSN2100': 1, 'ACS-MSN2410': 2, 'ACS-MSN2010': 3, 'ACS-MSN3700': 0, 'ACS-MSN3700C': 0, 'ACS-MSN3800': 4, 'Mellanox-SN3800-D112C8': 4, 'ACS-MSN4700': 0} hwsku_dict = {'ACS-MSN2700': 0, 'Mellanox-SN2700': 0, 'Mellanox-SN2700-D48C8': 0, "LS-SN2700":0, 'ACS-MSN2740': 0, 'ACS-MSN2100': 1, 'ACS-MSN2410': 2, 'ACS-MSN2010': 3, 'ACS-MSN3700': 0, 'ACS-MSN3700C': 0, 'ACS-MSN3800': 4, 'Mellanox-SN3800-D112C8': 4, 'ACS-MSN4700': 0, 'ACS-MSN3420': 5}
port_position_tuple_list = [(0, 0, 31, 32, 1), (0, 0, 15, 16, 1), (0, 48, 55, 56, 1), (0, 18, 21, 22, 1), (0, 0, 63, 64, 1)] port_position_tuple_list = [(0, 0, 31, 32, 1), (0, 0, 15, 16, 1), (0, 48, 55, 56, 1), (0, 18, 21, 22, 1), (0, 0, 63, 64, 1), (0, 48, 59, 60, 1)]
def log_info(msg, also_print_to_console=False): def log_info(msg, also_print_to_console=False):
syslog.openlog("sfputil") syslog.openlog("sfputil")

View File

@ -0,0 +1 @@
../../x86_64-mlnx_msn3700-r0/ACS-MSN3700/buffers.json.j2

View File

@ -0,0 +1 @@
../../x86_64-mlnx_msn3700-r0/ACS-MSN3700/buffers_defaults_t0.j2

View File

@ -0,0 +1 @@
../../x86_64-mlnx_msn3700-r0/ACS-MSN3700/buffers_defaults_t1.j2

View File

@ -0,0 +1 @@
../../x86_64-mlnx_msn3700-r0/ACS-MSN3700/pg_profile_lookup.ini

View File

@ -0,0 +1,61 @@
# name lanes alias index
Ethernet0 0 etp1 0
Ethernet4 4 etp2 1
Ethernet8 8 etp3 2
Ethernet12 12 etp4 3
Ethernet16 16 etp5 4
Ethernet20 20 etp6 5
Ethernet24 24 etp7 6
Ethernet28 28 etp8 7
Ethernet32 32 etp9 8
Ethernet36 36 etp10 9
Ethernet40 40 etp11 10
Ethernet44 44 etp12 11
Ethernet48 48 etp13 12
Ethernet52 52 etp14 13
Ethernet56 56 etp15 14
Ethernet60 60 etp16 15
Ethernet64 64 etp17 16
Ethernet68 68 etp18 17
Ethernet72 72 etp19 18
Ethernet76 76 etp20 19
Ethernet80 80 etp21 20
Ethernet84 84 etp22 21
Ethernet88 88 etp23 22
Ethernet92 92 etp24 23
Ethernet96 96 etp25 24
Ethernet100 100 etp26 25
Ethernet104 104 etp27 26
Ethernet108 108 etp28 27
Ethernet112 112 etp29 28
Ethernet116 116 etp30 29
Ethernet120 120 etp31 30
Ethernet124 124 etp32 31
Ethernet128 128 etp33 32
Ethernet132 132 etp34 33
Ethernet136 136 etp35 34
Ethernet140 140 etp36 35
Ethernet144 144 etp37 36
Ethernet148 148 etp38 37
Ethernet152 152 etp39 38
Ethernet156 156 etp40 39
Ethernet160 160 etp41 40
Ethernet164 164 etp42 41
Ethernet168 168 etp43 42
Ethernet172 172 etp44 43
Ethernet176 176 etp45 44
Ethernet180 180 etp46 45
Ethernet184 184 etp47 46
Ethernet188 188 etp48 47
Ethernet192 192,193,194,195 etp49 48
Ethernet196 196,197,198,199 etp50 49
Ethernet200 200,201,202,203 etp51 50
Ethernet204 204,205,206,207 etp52 51
Ethernet208 208,209,210,211 etp53 52
Ethernet212 212,213,214,215 etp54 53
Ethernet216 216,217,218,219 etp55 54
Ethernet220 220,221,222,223 etp56 55
Ethernet224 224,225,226,227 etp57 56
Ethernet228 228,229,230,231 etp58 57
Ethernet232 232,233,234,235 etp59 58
Ethernet236 236,237,238,239 etp60 59

View File

@ -0,0 +1 @@
../../x86_64-mlnx_msn3700-r0/ACS-MSN3700/qos.json.j2

View File

@ -0,0 +1 @@
SAI_INIT_CONFIG_FILE=/usr/share/sonic/hwsku/sai_3420.xml

View File

@ -0,0 +1,442 @@
<?xml version="1.0"?>
<root>
<platform_info type="3420">
<!-- Device MAC address -->
<device-mac-address>00:02:03:04:05:80</device-mac-address>
<!-- ISSU enabled -->
<issu-enabled>1</issu-enabled>
<!-- Number of ports in the following port list -->
<number-of-physical-ports>60</number-of-physical-ports>
<!-- List of ports in the device -->
<ports-list>
<port-info>
<local-port>105</local-port>
<width>1</width>
<module>0</module>
<!-- 0 none, 1=2, 2=4, 3=2,4 -->
<breakout-modes>0</breakout-modes>
<!-- (BITMASK) 2 - 1Gb , 16 - 10Gb , 32 - 40Gb , 384 - 50Gb , 1536 - 100Gb , 4096 - 200Gb -->
<port-speed>64</port-speed>
</port-info>
<port-info>
<local-port>106</local-port>
<width>1</width>
<module>1</module>
<breakout-modes>0</breakout-modes>
<port-speed>64</port-speed>
</port-info>
<port-info>
<local-port>49</local-port>
<width>1</width>
<module>2</module>
<breakout-modes>0</breakout-modes>
<port-speed>64</port-speed>
</port-info>
<port-info>
<local-port>113</local-port>
<width>1</width>
<module>3</module>
<breakout-modes>0</breakout-modes>
<port-speed>64</port-speed>
</port-info>
<port-info>
<local-port>114</local-port>
<width>1</width>
<module>4</module>
<breakout-modes>0</breakout-modes>
<port-speed>64</port-speed>
</port-info>
<port-info>
<local-port>50</local-port>
<width>1</width>
<module>5</module>
<breakout-modes>0</breakout-modes>
<port-speed>64</port-speed>
</port-info>
<port-info>
<local-port>115</local-port>
<width>1</width>
<module>6</module>
<breakout-modes>0</breakout-modes>
<port-speed>64</port-speed>
</port-info>
<port-info>
<local-port>116</local-port>
<width>1</width>
<module>7</module>
<breakout-modes>0</breakout-modes>
<port-speed>64</port-speed>
</port-info>
<port-info>
<local-port>41</local-port>
<width>1</width>
<module>8</module>
<breakout-modes>0</breakout-modes>
<port-speed>64</port-speed>
</port-info>
<port-info>
<local-port>121</local-port>
<width>1</width>
<module>9</module>
<breakout-modes>0</breakout-modes>
<port-speed>64</port-speed>
</port-info>
<port-info>
<local-port>122</local-port>
<width>1</width>
<module>10</module>
<breakout-modes>0</breakout-modes>
<port-speed>64</port-speed>
</port-info>
<port-info>
<local-port>42</local-port>
<width>1</width>
<module>11</module>
<breakout-modes>0</breakout-modes>
<port-speed>64</port-speed>
</port-info>
<port-info>
<local-port>123</local-port>
<width>1</width>
<module>12</module>
<breakout-modes>0</breakout-modes>
<port-speed>64</port-speed>
</port-info>
<port-info>
<local-port>124</local-port>
<width>1</width>
<module>13</module>
<breakout-modes>0</breakout-modes>
<port-speed>64</port-speed>
</port-info>
<port-info>
<local-port>43</local-port>
<width>1</width>
<module>14</module>
<breakout-modes>0</breakout-modes>
<port-speed>64</port-speed>
</port-info>
<port-info>
<local-port>57</local-port>
<width>1</width>
<module>15</module>
<breakout-modes>0</breakout-modes>
<port-speed>64</port-speed>
</port-info>
<port-info>
<local-port>58</local-port>
<width>1</width>
<module>16</module>
<breakout-modes>0</breakout-modes>
<port-speed>64</port-speed>
</port-info>
<port-info>
<local-port>44</local-port>
<width>1</width>
<module>17</module>
<breakout-modes>0</breakout-modes>
<port-speed>64</port-speed>
</port-info>
<port-info>
<local-port>59</local-port>
<width>1</width>
<module>18</module>
<breakout-modes>0</breakout-modes>
<port-speed>64</port-speed>
</port-info>
<port-info>
<local-port>60</local-port>
<width>1</width>
<module>19</module>
<breakout-modes>0</breakout-modes>
<port-speed>64</port-speed>
</port-info>
<port-info>
<local-port>33</local-port>
<width>1</width>
<module>20</module>
<breakout-modes>0</breakout-modes>
<port-speed>64</port-speed>
</port-info>
<port-info>
<local-port>51</local-port>
<width>1</width>
<module>21</module>
<breakout-modes>0</breakout-modes>
<port-speed>64</port-speed>
</port-info>
<port-info>
<local-port>52</local-port>
<width>1</width>
<module>22</module>
<breakout-modes>0</breakout-modes>
<port-speed>64</port-speed>
</port-info>
<port-info>
<local-port>34</local-port>
<width>1</width>
<module>23</module>
<breakout-modes>0</breakout-modes>
<port-speed>64</port-speed>
</port-info>
<port-info>
<local-port>53</local-port>
<width>1</width>
<module>24</module>
<breakout-modes>0</breakout-modes>
<port-speed>64</port-speed>
</port-info>
<port-info>
<local-port>54</local-port>
<width>1</width>
<module>25</module>
<breakout-modes>0</breakout-modes>
<port-speed>64</port-speed>
</port-info>
<port-info>
<local-port>35</local-port>
<width>1</width>
<module>26</module>
<breakout-modes>0</breakout-modes>
<port-speed>64</port-speed>
</port-info>
<port-info>
<local-port>45</local-port>
<width>1</width>
<module>27</module>
<breakout-modes>0</breakout-modes>
<port-speed>64</port-speed>
</port-info>
<port-info>
<local-port>46</local-port>
<width>1</width>
<module>28</module>
<breakout-modes>0</breakout-modes>
<port-speed>64</port-speed>
</port-info>
<port-info>
<local-port>36</local-port>
<width>1</width>
<module>29</module>
<breakout-modes>0</breakout-modes>
<port-speed>64</port-speed>
</port-info>
<port-info>
<local-port>47</local-port>
<width>1</width>
<module>30</module>
<breakout-modes>0</breakout-modes>
<port-speed>64</port-speed>
</port-info>
<port-info>
<local-port>48</local-port>
<width>1</width>
<module>31</module>
<breakout-modes>0</breakout-modes>
<port-speed>64</port-speed>
</port-info>
<port-info>
<local-port>1</local-port>
<width>1</width>
<module>32</module>
<breakout-modes>0</breakout-modes>
<port-speed>64</port-speed>
</port-info>
<port-info>
<local-port>37</local-port>
<width>1</width>
<module>33</module>
<breakout-modes>0</breakout-modes>
<port-speed>64</port-speed>
</port-info>
<port-info>
<local-port>38</local-port>
<width>1</width>
<module>34</module>
<breakout-modes>0</breakout-modes>
<port-speed>64</port-speed>
</port-info>
<port-info>
<local-port>2</local-port>
<width>1</width>
<module>35</module>
<breakout-modes>0</breakout-modes>
<port-speed>64</port-speed>
</port-info>
<port-info>
<local-port>39</local-port>
<width>1</width>
<module>36</module>
<breakout-modes>0</breakout-modes>
<port-speed>64</port-speed>
</port-info>
<port-info>
<local-port>40</local-port>
<width>1</width>
<module>37</module>
<breakout-modes>0</breakout-modes>
<port-speed>64</port-speed>
</port-info>
<port-info>
<local-port>3</local-port>
<width>1</width>
<module>38</module>
<breakout-modes>0</breakout-modes>
<port-speed>64</port-speed>
</port-info>
<port-info>
<local-port>4</local-port>
<width>1</width>
<module>39</module>
<breakout-modes>0</breakout-modes>
<port-speed>64</port-speed>
</port-info>
<port-info>
<local-port>5</local-port>
<width>1</width>
<module>40</module>
<breakout-modes>0</breakout-modes>
<port-speed>64</port-speed>
</port-info>
<port-info>
<local-port>6</local-port>
<width>1</width>
<module>41</module>
<breakout-modes>0</breakout-modes>
<port-speed>64</port-speed>
</port-info>
<port-info>
<local-port>7</local-port>
<width>1</width>
<module>42</module>
<breakout-modes>0</breakout-modes>
<port-speed>64</port-speed>
</port-info>
<port-info>
<local-port>8</local-port>
<width>1</width>
<module>43</module>
<breakout-modes>0</breakout-modes>
<port-speed>64</port-speed>
</port-info>
<port-info>
<local-port>9</local-port>
<width>1</width>
<module>44</module>
<breakout-modes>0</breakout-modes>
<port-speed>64</port-speed>
</port-info>
<port-info>
<local-port>10</local-port>
<width>1</width>
<module>45</module>
<breakout-modes>0</breakout-modes>
<port-speed>64</port-speed>
</port-info>
<port-info>
<local-port>11</local-port>
<width>1</width>
<module>46</module>
<breakout-modes>0</breakout-modes>
<port-speed>64</port-speed>
</port-info>
<port-info>
<local-port>12</local-port>
<width>1</width>
<module>47</module>
<breakout-modes>0</breakout-modes>
<port-speed>64</port-speed>
</port-info>
<port-info>
<local-port>17</local-port>
<width>4</width>
<module>48</module>
<breakout-modes>3</breakout-modes>
<port-speed>1536</port-speed>
</port-info>
<port-info>
<local-port>21</local-port>
<width>4</width>
<module>49</module>
<breakout-modes>3</breakout-modes>
<port-speed>1536</port-speed>
</port-info>
<port-info>
<local-port>25</local-port>
<width>4</width>
<module>50</module>
<breakout-modes>3</breakout-modes>
<port-speed>1536</port-speed>
</port-info>
<port-info>
<local-port>29</local-port>
<width>4</width>
<module>51</module>
<breakout-modes>3</breakout-modes>
<port-speed>1536</port-speed>
</port-info>
<port-info>
<local-port>89</local-port>
<width>4</width>
<module>52</module>
<breakout-modes>3</breakout-modes>
<port-speed>1536</port-speed>
</port-info>
<port-info>
<local-port>93</local-port>
<width>4</width>
<module>53</module>
<breakout-modes>3</breakout-modes>
<port-speed>1536</port-speed>
</port-info>
<port-info>
<local-port>81</local-port>
<width>4</width>
<module>54</module>
<breakout-modes>3</breakout-modes>
<port-speed>1536</port-speed>
</port-info>
<port-info>
<local-port>85</local-port>
<width>4</width>
<module>55</module>
<breakout-modes>3</breakout-modes>
<port-speed>1536</port-speed>
</port-info>
<port-info>
<local-port>73</local-port>
<width>4</width>
<module>56</module>
<breakout-modes>3</breakout-modes>
<port-speed>1536</port-speed>
</port-info>
<port-info>
<local-port>77</local-port>
<width>4</width>
<module>57</module>
<breakout-modes>3</breakout-modes>
<port-speed>1536</port-speed>
</port-info>
<port-info>
<local-port>65</local-port>
<width>4</width>
<module>58</module>
<breakout-modes>3</breakout-modes>
<port-speed>1536</port-speed>
</port-info>
<port-info>
<local-port>69</local-port>
<width>4</width>
<module>59</module>
<breakout-modes>3</breakout-modes>
<port-speed>1536</port-speed>
</port-info>
</ports-list>
</platform_info>
</root>

View File

@ -0,0 +1 @@
ACS-MSN3420 t1

View File

@ -0,0 +1,12 @@
{
"chassis": {
"x86_64-mlnx_msn3420-r0": {
"component": {
"BIOS": { },
"CPLD1": { },
"CPLD2": { },
"CPLD3": { }
}
}
}
}

View File

@ -0,0 +1 @@
../x86_64-mlnx_msn2700-r0/platform_reboot

View File

@ -0,0 +1 @@
../x86_64-mlnx_msn2700-r0/platform_wait

View File

@ -0,0 +1 @@
../../x86_64-mlnx_msn2700-r0/plugins/eeprom.py

View File

@ -0,0 +1 @@
../../x86_64-mlnx_msn2700-r0/plugins/psuutil.py

View File

@ -0,0 +1 @@
../../x86_64-mlnx_msn2700-r0/plugins/sfplpmget.py

View File

@ -0,0 +1 @@
../../x86_64-mlnx_msn2700-r0/plugins/sfplpmset.py

View File

@ -0,0 +1 @@
../../x86_64-mlnx_msn2700-r0/plugins/sfpreset.py

View File

@ -0,0 +1 @@
../../x86_64-mlnx_msn2700-r0/plugins/sfputil.py

View File

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

View File

@ -0,0 +1,113 @@
################################################################################
# Copyright (c) 2020 Mellanox Technologies
#
# Platform specific sensors config for SN3420
################################################################################
# Temperature sensors
bus "i2c-2" "i2c-1-mux (chan_id 1)"
chip "mlxsw-i2c-*-48"
label temp1 "Ambient ASIC Temp"
bus "i2c-7" "i2c-1-mux (chan_id 6)"
chip "tmp102-i2c-*-49"
label temp1 "Ambient Fan Side Temp (air intake)"
chip "tmp102-i2c-*-4a"
label temp1 "Ambient Port Side Temp (air exhaust)"
bus "i2c-15" "i2c-1-mux (chan_id 6)"
chip "tmp102-i2c-15-49"
label temp1 "Ambient COMEX Temp"
# Power controllers
bus "i2c-5" "i2c-1-mux (chan_id 4)"
chip "tps53679-i2c-*-70"
label in1 "PMIC-1 PSU 12V Rail (in)"
label in2 "PMIC-1 PSU 12V Rail (in)"
label in3 "PMIC-1 COMEX 1.8V Rail (out)"
label in4 "PMIC-1 COMEX 1.05V Rail (out)"
label temp1 "PMIC-1 Temp 1"
label temp2 "PMIC-1 Temp 2"
label power1 "PMIC-1 COMEX 1.8V Rail Pwr (out)"
label power2 "PMIC-1 COMEX 1.05V Rail Pwr (out)"
label curr1 "PMIC-1 COMEX 1.8V Rail Curr (out)"
label curr2 "PMIC-1 COMEX 1.05V Rail Curr (out)"
chip "tps53679-i2c-*-71"
label in1 "PMIC-2 PSU 12V Rail (in)"
label in2 "PMIC-2 PSU 12V Rail (in)"
label in3 "PMIC-2 COMEX 1.8V Rail (out)"
label in4 "PMIC-2 COMEX 1.05V Rail (out)"
label temp1 "PMIC-2 Temp 1"
label temp2 "PMIC-2 Temp 2"
label power1 "PMIC-2 COMEX 1.8V Rail Pwr (out)"
label power2 "PMIC-2 COMEX 1.05V Rail Pwr (out)"
label curr1 "PMIC-2 COMEX 1.8V Rail Curr (out)"
label curr2 "PMIC-2 COMEX 1.05V Rail Curr (out)"
bus "i2c-15" "i2c-1-mux (chan_id 6)"
chip "tps53679-i2c-*-58"
label in1 "PMIC-3 PSU 12V Rail (in)"
label in2 "PMIC-3 PSU 12V Rail (in)"
label in3 "PMIC-3 COMEX 1.8V Rail (out)"
label in4 "PMIC-3 COMEX 1.05V Rail (out)"
label temp1 "PMIC-3 Temp 1"
label temp2 "PMIC-3 Temp 2"
label power1 "PMIC-3 COMEX 1.8V Rail Pwr (out)"
label power2 "PMIC-3 COMEX 1.05V Rail Pwr (out)"
label curr1 "PMIC-3 COMEX 1.8V Rail Curr (out)"
label curr2 "PMIC-3 COMEX 1.05V Rail Curr (out)"
chip "tps53679-i2c-*-61"
label in1 "PMIC-4 PSU 12V Rail (in)"
label in2 "PMIC-4 PSU 12V Rail (in)"
label in3 "PMIC-4 COMEX 1.8V Rail (out)"
label in4 "PMIC-4 COMEX 1.05V Rail (out)"
label temp1 "PMIC-4 Temp 1"
label temp2 "PMIC-4 Temp 2"
label power1 "PMIC-4 COMEX 1.8V Rail Pwr (out)"
label power2 "PMIC-4 COMEX 1.05V Rail Pwr (out)"
label curr1 "PMIC-4 COMEX 1.8V Rail Curr (out)"
label curr2 "PMIC-4 COMEX 1.05V Rail Curr (out)"
# Power supplies
bus "i2c-4" "i2c-1-mux (chan_id 3)"
chip "dps460-i2c-*-58"
label in1 "PSU-1 220V Rail (in)"
label in2 "PSU-1 12V Rail (out)"
label fan1 "PSU-1 Fan 1"
label temp1 "PSU-1 Temp 1"
label temp2 "PSU-1 Temp 2"
label temp3 "PSU-1 Temp 3"
label power1 "PSU-1 220V Rail Pwr (in)"
label power2 "PSU-1 12V Rail Pwr (out)"
label curr1 "PSU-1 220V Rail Curr (in)"
label curr2 "PSU-1 12V Rail Curr (out)"
chip "dps460-i2c-*-59"
label in1 "PSU-2 220V Rail (in)"
label in2 "PSU-2 12V Rail (out)"
label fan1 "PSU-2 Fan 1"
label temp1 "PSU-2 Temp 1"
label temp2 "PSU-2 Temp 2"
label temp3 "PSU-2 Temp 3"
label power1 "PSU-2 220V Rail Pwr (in)"
label power2 "PSU-2 12V Rail Pwr (out)"
label curr1 "PSU-2 220V Rail Curr (in)"
label curr2 "PSU-2 12V Rail Curr (out)"
# Chassis fans
chip "mlxreg_fan-isa-*"
label fan1 "Chassis Fan Drawer-1 Tach 1"
label fan2 "Chassis Fan Drawer-1 Tach 2"
label fan3 "Chassis Fan Drawer-2 Tach 1"
label fan4 "Chassis Fan Drawer-2 Tach 2"
label fan5 "Chassis Fan Drawer-3 Tach 1"
label fan6 "Chassis Fan Drawer-3 Tach 2"
label fan7 "Chassis Fan Drawer-4 Tach 1"
label fan8 "Chassis Fan Drawer-4 Tach 2"
label fan9 "Chassis Fan Drawer-5 Tach 1"
label fan10 "Chassis Fan Drawer-5 Tach 2"
label fan11 "Chassis Fan Drawer-6 Tach 1"
label fan12 "Chassis Fan Drawer-6 Tach 2"
# Miscellaneous
chip "*-virtual-*"
ignore temp1

View File

@ -44,8 +44,8 @@ logger = Logger()
# magic code defnition for port number, qsfp port position of each hwsku # magic code defnition for port number, qsfp port position of each hwsku
# port_position_tuple = (PORT_START, QSFP_PORT_START, PORT_END, PORT_IN_BLOCK, EEPROM_OFFSET) # port_position_tuple = (PORT_START, QSFP_PORT_START, PORT_END, PORT_IN_BLOCK, EEPROM_OFFSET)
hwsku_dict_port = {'ACS-MSN2010': 3, 'ACS-MSN2100': 1, 'ACS-MSN2410': 2, 'ACS-MSN2700': 0, 'Mellanox-SN2700': 0, 'Mellanox-SN2700-D48C8': 0, 'LS-SN2700':0, 'ACS-MSN2740': 0, 'ACS-MSN3700': 0, 'ACS-MSN3700C': 0, 'ACS-MSN3800': 4, 'Mellanox-SN3800-D112C8': 4, 'ACS-MSN4700': 0} hwsku_dict_port = {'ACS-MSN2010': 3, 'ACS-MSN2100': 1, 'ACS-MSN2410': 2, 'ACS-MSN2700': 0, 'Mellanox-SN2700': 0, 'Mellanox-SN2700-D48C8': 0, 'LS-SN2700':0, 'ACS-MSN2740': 0, 'ACS-MSN3700': 0, 'ACS-MSN3700C': 0, 'ACS-MSN3800': 4, 'Mellanox-SN3800-D112C8': 4, 'ACS-MSN4700': 0, 'ACS-MSN3420': 5}
port_position_tuple_list = [(0, 0, 31, 32, 1), (0, 0, 15, 16, 1), (0, 48, 55, 56, 1), (0, 18, 21, 22, 1), (0, 0, 63, 64, 1)] port_position_tuple_list = [(0, 0, 31, 32, 1), (0, 0, 15, 16, 1), (0, 48, 55, 56, 1), (0, 18, 21, 22, 1), (0, 0, 63, 64, 1), (0, 48, 59, 60, 1)]
class Chassis(ChassisBase): class Chassis(ChassisBase):
"""Platform-specific Chassis class""" """Platform-specific Chassis class"""

View File

@ -32,7 +32,7 @@ hwsku_dict_with_unplugable_psu = ['ACS-MSN2010', 'ACS-MSN2100']
# in most SKUs the file psuX_curr, psuX_volt and psuX_power contain current, voltage and power data respectively. # in most SKUs the file psuX_curr, psuX_volt and psuX_power contain current, voltage and power data respectively.
# but there are exceptions which will be handled by the following dictionary # but there are exceptions which will be handled by the following dictionary
hwsku_dict_psu = {'ACS-MSN3700': 1, 'ACS-MSN3700C': 1, 'ACS-MSN3800': 1, 'Mellanox-SN3800-D112C8': 1, 'ACS-MSN4700': 1} hwsku_dict_psu = {'ACS-MSN3700': 1, 'ACS-MSN3700C': 1, 'ACS-MSN3800': 1, 'Mellanox-SN3800-D112C8': 1, 'ACS-MSN4700': 1, 'ACS-MSN3420': 1}
psu_profile_list = [ psu_profile_list = [
# default filename convention # default filename convention
{ {
@ -40,7 +40,7 @@ psu_profile_list = [
PSU_VOLTAGE : "power/psu{}_volt", PSU_VOLTAGE : "power/psu{}_volt",
PSU_POWER : "power/psu{}_power" PSU_POWER : "power/psu{}_power"
}, },
# for 3700, 3700c, 3800, 4700 # for 3420, 3700, 3700c, 3800, 4700
{ {
PSU_CURRENT : "power/psu{}_curr", PSU_CURRENT : "power/psu{}_curr",
PSU_VOLTAGE : "power/psu{}_volt_out2", PSU_VOLTAGE : "power/psu{}_volt_out2",

View File

@ -106,7 +106,7 @@ thermal_api_names = [
THERMAL_API_GET_HIGH_THRESHOLD THERMAL_API_GET_HIGH_THRESHOLD
] ]
hwsku_dict_thermal = {'ACS-MSN2700': 0, 'LS-SN2700':0, 'ACS-MSN2740': 3, 'ACS-MSN2100': 1, 'ACS-MSN2410': 2, 'ACS-MSN2010': 4, 'ACS-MSN3700': 5, 'ACS-MSN3700C': 6, 'Mellanox-SN2700': 0, 'Mellanox-SN2700-D48C8': 0, 'ACS-MSN3800': 7, 'Mellanox-SN3800-D112C8': 7, 'ACS-MSN4700': 8} hwsku_dict_thermal = {'ACS-MSN2700': 0, 'LS-SN2700':0, 'ACS-MSN2740': 3, 'ACS-MSN2100': 1, 'ACS-MSN2410': 2, 'ACS-MSN2010': 4, 'ACS-MSN3700': 5, 'ACS-MSN3700C': 6, 'Mellanox-SN2700': 0, 'Mellanox-SN2700-D48C8': 0, 'ACS-MSN3800': 7, 'Mellanox-SN3800-D112C8': 7, 'ACS-MSN4700': 8, 'ACS-MSN3420': 9}
thermal_profile_list = [ thermal_profile_list = [
# 2700 # 2700
{ {
@ -246,6 +246,22 @@ thermal_profile_list = [
THERMAL_DEV_FAN_AMBIENT THERMAL_DEV_FAN_AMBIENT
] ]
) )
},
# 3420
{
THERMAL_DEV_CATEGORY_CPU_CORE:(0, 4),
THERMAL_DEV_CATEGORY_MODULE:(1, 60),
THERMAL_DEV_CATEGORY_PSU:(1, 2),
THERMAL_DEV_CATEGORY_CPU_PACK:(0,1),
THERMAL_DEV_CATEGORY_GEARBOX:(0,0),
THERMAL_DEV_CATEGORY_AMBIENT:(0,
[
THERMAL_DEV_ASIC_AMBIENT,
THERMAL_DEV_COMEX_AMBIENT,
THERMAL_DEV_PORT_AMBIENT,
THERMAL_DEV_FAN_AMBIENT
]
)
} }
] ]