From 27da2fd14450235a8bff00da7b4a669c9ad0e33a Mon Sep 17 00:00:00 2001
From: Zhi Yuan Carl Zhao <zyzhao@arista.com>
Date: Mon, 24 Sep 2018 15:18:11 -0700
Subject: [PATCH] Add new hwsku Arista-7050-Q31S4

---
 .../Arista-7050-Q31S4/buffers.json.j2         |   3 +
 .../Arista-7050-Q31S4/buffers_defaults_t1.j2  |  49 ++
 .../Arista-7050-Q31S4/hwsku-init              |   1 +
 .../Arista-7050-Q31S4/pg_profile_lookup.ini   |  14 +
 .../Arista-7050-Q31S4/port_config.ini         |  36 +
 .../Arista-7050-Q31S4/qos.json.j2             | 148 ++++
 .../Arista-7050-Q31S4/sai.profile             |   1 +
 .../td2-a7050-q31s4-31x40G-4x10G.config.bcm   | 676 ++++++++++++++++++
 .../Arista-7050-QX-32S/hwsku-init             |   1 +
 9 files changed, 929 insertions(+)
 create mode 100644 device/arista/x86_64-arista_7050_qx32s/Arista-7050-Q31S4/buffers.json.j2
 create mode 100644 device/arista/x86_64-arista_7050_qx32s/Arista-7050-Q31S4/buffers_defaults_t1.j2
 create mode 100644 device/arista/x86_64-arista_7050_qx32s/Arista-7050-Q31S4/hwsku-init
 create mode 100644 device/arista/x86_64-arista_7050_qx32s/Arista-7050-Q31S4/pg_profile_lookup.ini
 create mode 100644 device/arista/x86_64-arista_7050_qx32s/Arista-7050-Q31S4/port_config.ini
 create mode 100644 device/arista/x86_64-arista_7050_qx32s/Arista-7050-Q31S4/qos.json.j2
 create mode 100644 device/arista/x86_64-arista_7050_qx32s/Arista-7050-Q31S4/sai.profile
 create mode 100644 device/arista/x86_64-arista_7050_qx32s/Arista-7050-Q31S4/td2-a7050-q31s4-31x40G-4x10G.config.bcm
 create mode 100644 device/arista/x86_64-arista_7050_qx32s/Arista-7050-QX-32S/hwsku-init

diff --git a/device/arista/x86_64-arista_7050_qx32s/Arista-7050-Q31S4/buffers.json.j2 b/device/arista/x86_64-arista_7050_qx32s/Arista-7050-Q31S4/buffers.json.j2
new file mode 100644
index 000000000000..b67cf577ab75
--- /dev/null
+++ b/device/arista/x86_64-arista_7050_qx32s/Arista-7050-Q31S4/buffers.json.j2
@@ -0,0 +1,3 @@
+{%- set default_topo = 't1' %}
+{%- include 'buffers_config.j2' %}
+
diff --git a/device/arista/x86_64-arista_7050_qx32s/Arista-7050-Q31S4/buffers_defaults_t1.j2 b/device/arista/x86_64-arista_7050_qx32s/Arista-7050-Q31S4/buffers_defaults_t1.j2
new file mode 100644
index 000000000000..f72e3eb06fb5
--- /dev/null
+++ b/device/arista/x86_64-arista_7050_qx32s/Arista-7050-Q31S4/buffers_defaults_t1.j2
@@ -0,0 +1,49 @@
+{%- set default_cable = '300m' %}
+
+{%- macro generate_port_lists(PORT_ALL) %}
+    {# Generate list of ports #}
+    {% if PORT_ALL.append("Ethernet0") %}{% endif %}
+    {% if PORT_ALL.append("Ethernet1") %}{% endif %}
+    {% if PORT_ALL.append("Ethernet2") %}{% endif %}
+    {% if PORT_ALL.append("Ethernet3") %}{% endif %}
+    {% for port_idx in range(1,32) %}
+        {% if PORT_ALL.append("Ethernet%d" % (port_idx * 4)) %}{% endif %}
+    {% endfor %}
+{%- endmacro %}
+
+{%- macro generate_buffer_pool_and_profiles() %}
+    "BUFFER_POOL": {
+        "ingress_lossless_pool": {
+            "size": "12766208",
+            "type": "ingress",
+            "mode": "dynamic"
+        },
+        "egress_lossless_pool": {
+            "size": "12766208",
+            "type": "egress",
+            "mode": "static"
+        },
+        "egress_lossy_pool": {
+            "size": "8072396",
+            "type": "egress",
+            "mode": "dynamic"
+        }
+    },
+    "BUFFER_PROFILE": {
+        "ingress_lossy_profile": {
+            "pool":"[BUFFER_POOL|ingress_lossless_pool]",
+            "size":"0",
+            "dynamic_th":"3"
+        },
+        "egress_lossless_profile": {
+            "pool":"[BUFFER_POOL|egress_lossless_pool]",
+            "size":"0",
+            "static_th":"12766208"
+        },
+        "egress_lossy_profile": {
+            "pool":"[BUFFER_POOL|egress_lossy_pool]",
+            "size":"1518",
+            "dynamic_th":"3"
+        }
+    },
+{%- endmacro %}
diff --git a/device/arista/x86_64-arista_7050_qx32s/Arista-7050-Q31S4/hwsku-init b/device/arista/x86_64-arista_7050_qx32s/Arista-7050-Q31S4/hwsku-init
new file mode 100644
index 000000000000..c005241e4b6a
--- /dev/null
+++ b/device/arista/x86_64-arista_7050_qx32s/Arista-7050-Q31S4/hwsku-init
@@ -0,0 +1 @@
+echo 1 > /sys/devices/pci0000:00/0000:00:02.2/0000:02:00.0/mux
diff --git a/device/arista/x86_64-arista_7050_qx32s/Arista-7050-Q31S4/pg_profile_lookup.ini b/device/arista/x86_64-arista_7050_qx32s/Arista-7050-Q31S4/pg_profile_lookup.ini
new file mode 100644
index 000000000000..f961fd33b138
--- /dev/null
+++ b/device/arista/x86_64-arista_7050_qx32s/Arista-7050-Q31S4/pg_profile_lookup.ini
@@ -0,0 +1,14 @@
+# PG lossless profiles.
+# speed cable size      xon     xoff   threshold xon_offset
+  10000  5m   41808     18432   40560  -4        2496
+  40000  5m   41808     18432   40560  -4        2496
+  50000  5m   41808     18432   40560  -4        2496
+ 100000  5m   41808     18432   40560  -4        2496
+  10000  40m  41808     18432   40560  -4        2496
+  40000  40m  41808     18432   40560  -4        2496
+  50000  40m  41808     18432   40560  -4        2496
+ 100000  40m  41808     18432   40560  -4        2496
+  10000  300m 41808     18432   40560  -4        2496
+  40000  300m 41808     18432   40560  -4        2496
+  50000  300m 41808     18432   40560  -4        2496
+ 100000  300m 41808     18432   40560  -4        2496
diff --git a/device/arista/x86_64-arista_7050_qx32s/Arista-7050-Q31S4/port_config.ini b/device/arista/x86_64-arista_7050_qx32s/Arista-7050-Q31S4/port_config.ini
new file mode 100644
index 000000000000..dafdb570e9cc
--- /dev/null
+++ b/device/arista/x86_64-arista_7050_qx32s/Arista-7050-Q31S4/port_config.ini
@@ -0,0 +1,36 @@
+# name          lanes             alias         index
+Ethernet0       9                 Ethernet1     1
+Ethernet1       10                Ethernet2     2
+Ethernet2       11                Ethernet3     3
+Ethernet3       12                Ethernet4     4
+Ethernet4       13,14,15,16       Ethernet6/1   6
+Ethernet8       17,18,19,20       Ethernet7/1   7
+Ethernet12      21,22,23,24       Ethernet8/1   8
+Ethernet16      29,30,31,32       Ethernet9/1   9
+Ethernet20      25,26,27,28       Ethernet10/1  10
+Ethernet24      33,34,35,36       Ethernet11/1  11
+Ethernet28      37,38,39,40       Ethernet12/1  12
+Ethernet32      45,46,47,48       Ethernet13/1  13
+Ethernet36      41,42,43,44       Ethernet14/1  14
+Ethernet40      49,50,51,52       Ethernet15/1  15
+Ethernet44      53,54,55,56       Ethernet16/1  16
+Ethernet48      69,70,71,72       Ethernet17/1  17
+Ethernet52      65,66,67,68       Ethernet18/1  18
+Ethernet56      73,74,75,76       Ethernet19/1  19
+Ethernet60      77,78,79,80       Ethernet20/1  20
+Ethernet64      93,94,95,96       Ethernet21/1  21
+Ethernet68      89,90,91,92       Ethernet22/1  22
+Ethernet72      97,98,99,100      Ethernet23/1  23
+Ethernet76      101,102,103,104   Ethernet24/1  24
+Ethernet80      109,110,111,112   Ethernet25/1  25
+Ethernet84      105,106,107,108   Ethernet26/1  26
+Ethernet88      121,122,123,124   Ethernet27/1  27
+Ethernet92      125,126,127,128   Ethernet28/1  28
+Ethernet96      61,62,63,64       Ethernet29    29
+Ethernet100     57,58,59,60       Ethernet30    30
+Ethernet104     81,82,83,84       Ethernet31    31
+Ethernet108     85,86,87,88       Ethernet32    32
+Ethernet112     117,118,119,120   Ethernet33    33
+Ethernet116     113,114,115,116   Ethernet34    34
+Ethernet120     1,2,3,4           Ethernet35    35
+Ethernet124     5,6,7,8           Ethernet36    36
diff --git a/device/arista/x86_64-arista_7050_qx32s/Arista-7050-Q31S4/qos.json.j2 b/device/arista/x86_64-arista_7050_qx32s/Arista-7050-Q31S4/qos.json.j2
new file mode 100644
index 000000000000..1accac3ddd0d
--- /dev/null
+++ b/device/arista/x86_64-arista_7050_qx32s/Arista-7050-Q31S4/qos.json.j2
@@ -0,0 +1,148 @@
+{
+    "TC_TO_PRIORITY_GROUP_MAP": {
+        "AZURE": {
+            "0": "0",
+            "1": "1",
+            "3": "3",
+            "4": "4"
+        }
+    },
+    "MAP_PFC_PRIORITY_TO_QUEUE": {
+        "AZURE": {
+            "0": "0",
+            "1": "1",
+            "3": "3",
+            "4": "4"
+        }
+    },
+    "TC_TO_QUEUE_MAP": {
+        "AZURE": {
+            "0": "0",
+            "1": "1",
+            "3": "3",
+            "4": "4"
+        }
+    },
+    "DSCP_TO_TC_MAP": {
+        "AZURE": {
+            "0":"0",
+            "1":"0",
+            "2":"0",
+            "3":"3",
+            "4":"4",
+            "5":"0",
+            "6":"0",
+            "7":"0",
+            "8":"1",
+            "9":"0",
+            "10":"0",
+            "11":"0",
+            "12":"0",
+            "13":"0",
+            "14":"0",
+            "15":"0",
+            "16":"0",
+            "17":"0",
+            "18":"0",
+            "19":"0",
+            "20":"0",
+            "21":"0",
+            "22":"0",
+            "23":"0",
+            "24":"0",
+            "25":"0",
+            "26":"0",
+            "27":"0",
+            "28":"0",
+            "29":"0",
+            "30":"0",
+            "31":"0",
+            "32":"0",
+            "33":"0",
+            "34":"0",
+            "35":"0",
+            "36":"0",
+            "37":"0",
+            "38":"0",
+            "39":"0",
+            "40":"0",
+            "41":"0",
+            "42":"0",
+            "43":"0",
+            "44":"0",
+            "45":"0",
+            "46":"0",
+            "47":"0",
+            "48":"0",
+            "49":"0",
+            "50":"0",
+            "51":"0",
+            "52":"0",
+            "53":"0",
+            "54":"0",
+            "55":"0",
+            "56":"0",
+            "57":"0",
+            "58":"0",
+            "59":"0",
+            "60":"0",
+            "61":"0",
+            "62":"0",
+            "63":"0"
+        }
+    },
+    "SCHEDULER": {
+        "scheduler.0" : {
+            "type":"DWRR",
+            "weight": "25"
+        },
+        "scheduler.1" : {
+            "type":"DWRR",
+            "weight": "30"
+        },
+        "scheduler.2" : {
+            "type":"DWRR",
+            "weight": "20"
+        }
+    },
+    "PORT_QOS_MAP": {
+        "Ethernet0,Ethernet1,Ethernet2,Ethernet3,Ethernet4,Ethernet8,Ethernet12,Ethernet16,Ethernet20,Ethernet24,Ethernet28,Ethernet32,Ethernet36,Ethernet40,Ethernet44,Ethernet48,Ethernet52,Ethernet56,Ethernet60,Ethernet64,Ethernet68,Ethernet72,Ethernet76,Ethernet80,Ethernet84,Ethernet88,Ethernet92,Ethernet96,Ethernet100,Ethernet104,Ethernet108,Ethernet112,Ethernet116,Ethernet120,Ethernet124": {
+            "dscp_to_tc_map"  : "[DSCP_TO_TC_MAP|AZURE]",
+            "tc_to_queue_map" : "[TC_TO_QUEUE_MAP|AZURE]",
+            "tc_to_pg_map"    : "[TC_TO_PRIORITY_GROUP_MAP|AZURE]",
+            "pfc_to_queue_map": "[MAP_PFC_PRIORITY_TO_QUEUE|AZURE]",
+            "pfc_enable": "3,4"
+        }
+    },
+    "WRED_PROFILE": {
+        "AZURE_LOSSLESS" : {
+            "wred_green_enable":"true",
+            "wred_yellow_enable":"true",
+            "wred_red_enable":"true",
+            "ecn":"ecn_all",
+            "red_max_threshold":"312000",
+            "red_min_threshold":"104000",
+            "yellow_max_threshold":"312000",
+            "yellow_min_threshold":"104000",
+            "green_max_threshold":"312000",
+            "green_min_threshold":"104000"
+        }
+    },
+    "QUEUE": {
+        "Ethernet0,Ethernet1,Ethernet2,Ethernet3,Ethernet4,Ethernet8,Ethernet12,Ethernet16,Ethernet20,Ethernet24,Ethernet28,Ethernet32,Ethernet36,Ethernet40,Ethernet44,Ethernet48,Ethernet52,Ethernet56,Ethernet60,Ethernet64,Ethernet68,Ethernet72,Ethernet76,Ethernet80,Ethernet84,Ethernet88,Ethernet92,Ethernet96,Ethernet100,Ethernet104,Ethernet108,Ethernet112,Ethernet116,Ethernet120,Ethernet124|3-4" : {
+            "scheduler"     :   "[SCHEDULER|scheduler.0]"
+        },
+        "Ethernet0,Ethernet1,Ethernet2,Ethernet3,Ethernet4,Ethernet8,Ethernet12,Ethernet16,Ethernet20,Ethernet24,Ethernet28,Ethernet32,Ethernet36,Ethernet40,Ethernet44,Ethernet48,Ethernet52,Ethernet56,Ethernet60,Ethernet64,Ethernet68,Ethernet72,Ethernet76,Ethernet80,Ethernet84,Ethernet88,Ethernet92,Ethernet96,Ethernet100,Ethernet104,Ethernet108,Ethernet112,Ethernet116,Ethernet120,Ethernet124|3" : {
+            "wred_profile"  :   "[WRED_PROFILE|AZURE_LOSSLESS]"
+        },
+        "Ethernet0,Ethernet1,Ethernet2,Ethernet3,Ethernet4,Ethernet8,Ethernet12,Ethernet16,Ethernet20,Ethernet24,Ethernet28,Ethernet32,Ethernet36,Ethernet40,Ethernet44,Ethernet48,Ethernet52,Ethernet56,Ethernet60,Ethernet64,Ethernet68,Ethernet72,Ethernet76,Ethernet80,Ethernet84,Ethernet88,Ethernet92,Ethernet96,Ethernet100,Ethernet104,Ethernet108,Ethernet112,Ethernet116,Ethernet120,Ethernet124|4" : {
+            "wred_profile"  :   "[WRED_PROFILE|AZURE_LOSSLESS]"
+        },
+        "Ethernet0,Ethernet1,Ethernet2,Ethernet3,Ethernet4,Ethernet8,Ethernet12,Ethernet16,Ethernet20,Ethernet24,Ethernet28,Ethernet32,Ethernet36,Ethernet40,Ethernet44,Ethernet48,Ethernet52,Ethernet56,Ethernet60,Ethernet64,Ethernet68,Ethernet72,Ethernet76,Ethernet80,Ethernet84,Ethernet88,Ethernet92,Ethernet96,Ethernet100,Ethernet104,Ethernet108,Ethernet112,Ethernet116,Ethernet120,Ethernet124|0" : {
+            "scheduler"     :   "[SCHEDULER|scheduler.1]"
+        },
+        "Ethernet0,Ethernet1,Ethernet2,Ethernet3,Ethernet4,Ethernet8,Ethernet12,Ethernet16,Ethernet20,Ethernet24,Ethernet28,Ethernet32,Ethernet36,Ethernet40,Ethernet44,Ethernet48,Ethernet52,Ethernet56,Ethernet60,Ethernet64,Ethernet68,Ethernet72,Ethernet76,Ethernet80,Ethernet84,Ethernet88,Ethernet92,Ethernet96,Ethernet100,Ethernet104,Ethernet108,Ethernet112,Ethernet116,Ethernet120,Ethernet124|1" : {
+            "scheduler"     :   "[SCHEDULER|scheduler.2]"
+        }
+    }
+}
diff --git a/device/arista/x86_64-arista_7050_qx32s/Arista-7050-Q31S4/sai.profile b/device/arista/x86_64-arista_7050_qx32s/Arista-7050-Q31S4/sai.profile
new file mode 100644
index 000000000000..9a50433cabdc
--- /dev/null
+++ b/device/arista/x86_64-arista_7050_qx32s/Arista-7050-Q31S4/sai.profile
@@ -0,0 +1 @@
+SAI_INIT_CONFIG_FILE=/usr/share/sonic/hwsku/td2-a7050-q31s4-31x40G-4x10G.config.bcm
diff --git a/device/arista/x86_64-arista_7050_qx32s/Arista-7050-Q31S4/td2-a7050-q31s4-31x40G-4x10G.config.bcm b/device/arista/x86_64-arista_7050_qx32s/Arista-7050-Q31S4/td2-a7050-q31s4-31x40G-4x10G.config.bcm
new file mode 100644
index 000000000000..9be3064af257
--- /dev/null
+++ b/device/arista/x86_64-arista_7050_qx32s/Arista-7050-Q31S4/td2-a7050-q31s4-31x40G-4x10G.config.bcm
@@ -0,0 +1,676 @@
+arl_clean_timeout_usec=15000000
+bcm_num_cos.0=8
+bcm_stat_flags=1
+bcm_stat_jumbo.0=9236
+cdma_timeout_usec.0=15000000
+dma_desc_timeout_usec.0=15000000
+higig2_hdr_mode.0=1
+ipv6_lpm_128b_enable.0=2
+l2xmsg_mode.0=1
+max_vp_lags.0=0
+mdio_output_delay=0x0d
+miim_intr_enable.0=0
+module_64ports.0=0
+os=unix
+pbmp_oversubscribe.0=0x1fffffffffffffffffffffffffe
+pbmp_xport_xe.0=0x1fffffffffffffffffffffffffe
+phy_an_c37_1.0=3
+phy_an_c37_5.0=3
+phy_an_c37_9.0=3
+phy_an_c37_13.0=3
+phy_an_c37_17.0=3
+phy_an_c37_21.0=3
+phy_an_c37_25.0=3
+phy_an_c37_29.0=3
+phy_an_c37_33.0=3
+phy_an_c37_37.0=3
+phy_an_c37_41.0=3
+phy_an_c37_45.0=3
+phy_an_c37_49.0=3
+phy_an_c37_53.0=3
+phy_an_c37_57.0=3
+phy_an_c37_61.0=3
+phy_an_c37_65.0=3
+phy_an_c37_69.0=3
+phy_an_c37_73.0=3
+phy_an_c37_77.0=3
+phy_an_c37_81.0=3
+phy_an_c37_85.0=3
+phy_an_c37_89.0=3
+phy_an_c37_93.0=3
+phy_an_c37_97.0=0
+phy_an_c37_98.0=0
+phy_an_c37_99.0=0
+phy_an_c37_100.0=0
+phy_an_c37_101.0=0
+phy_an_c37_102.0=0
+phy_an_c37_103.0=0
+phy_an_c37_104.0=0
+phy_an_c73_1.0=0
+phy_an_c73_5.0=0
+phy_an_c73_9.0=0
+phy_an_c73_13.0=0
+phy_an_c73_17.0=0
+phy_an_c73_21.0=0
+phy_an_c73_25.0=0
+phy_an_c73_29.0=0
+phy_an_c73_33.0=0
+phy_an_c73_37.0=0
+phy_an_c73_41.0=0
+phy_an_c73_45.0=0
+phy_an_c73_49.0=0
+phy_an_c73_53.0=0
+phy_an_c73_57.0=0
+phy_an_c73_61.0=0
+phy_an_c73_65.0=0
+phy_an_c73_69.0=0
+phy_an_c73_73.0=0
+phy_an_c73_77.0=0
+phy_an_c73_81.0=0
+phy_an_c73_85.0=0
+phy_an_c73_89.0=0
+phy_an_c73_93.0=0
+phy_an_c73_97.0=2
+phy_an_c73_98.0=2
+phy_an_c73_99.0=2
+phy_an_c73_100.0=2
+phy_an_c73_101.0=2
+phy_an_c73_102.0=2
+phy_an_c73_103.0=2
+phy_an_c73_104.0=2
+phy_xaui_rx_polarity_flip_1.0=0x0
+phy_xaui_rx_polarity_flip_5.0=0x0
+phy_xaui_rx_polarity_flip_9.0=0x4
+phy_xaui_rx_polarity_flip_13.0=0x0
+phy_xaui_rx_polarity_flip_17.0=0xb
+phy_xaui_rx_polarity_flip_21.0=0x3
+phy_xaui_rx_polarity_flip_25.0=0xb
+phy_xaui_rx_polarity_flip_29.0=0xf
+phy_xaui_rx_polarity_flip_33.0=0xb
+phy_xaui_rx_polarity_flip_37.0=0x3
+phy_xaui_rx_polarity_flip_41.0=0xb
+phy_xaui_rx_polarity_flip_45.0=0x0
+phy_xaui_rx_polarity_flip_49.0=0x4
+phy_xaui_rx_polarity_flip_53.0=0xc
+phy_xaui_rx_polarity_flip_57.0=0x4
+phy_xaui_rx_polarity_flip_61.0=0x0
+phy_xaui_rx_polarity_flip_65.0=0xb
+phy_xaui_rx_polarity_flip_69.0=0x3
+phy_xaui_rx_polarity_flip_73.0=0xb
+phy_xaui_rx_polarity_flip_77.0=0xf
+phy_xaui_rx_polarity_flip_81.0=0xb
+phy_xaui_rx_polarity_flip_85.0=0x3
+phy_xaui_rx_polarity_flip_89.0=0x4
+phy_xaui_rx_polarity_flip_93.0=0x0
+phy_xaui_rx_polarity_flip_97.0=0xb
+phy_xaui_rx_polarity_flip_98.0=0x3
+phy_xaui_rx_polarity_flip_99.0=0x4
+phy_xaui_rx_polarity_flip_100.0=0x0
+phy_xaui_rx_polarity_flip_101.0=0x0
+phy_xaui_rx_polarity_flip_102.0=0xe
+phy_xaui_rx_polarity_flip_103.0=0x0
+phy_xaui_rx_polarity_flip_104.0=0x0
+phy_xaui_tx_polarity_flip_1.0=0x0
+phy_xaui_tx_polarity_flip_5.0=0x0
+phy_xaui_tx_polarity_flip_9.0=0x2
+phy_xaui_tx_polarity_flip_13.0=0x0
+phy_xaui_tx_polarity_flip_17.0=0xd
+phy_xaui_tx_polarity_flip_21.0=0xc
+phy_xaui_tx_polarity_flip_25.0=0xd
+phy_xaui_tx_polarity_flip_29.0=0xf
+phy_xaui_tx_polarity_flip_33.0=0xd
+phy_xaui_tx_polarity_flip_37.0=0xc
+phy_xaui_tx_polarity_flip_41.0=0xd
+phy_xaui_tx_polarity_flip_45.0=0x0
+phy_xaui_tx_polarity_flip_49.0=0x2
+phy_xaui_tx_polarity_flip_53.0=0x3
+phy_xaui_tx_polarity_flip_57.0=0x2
+phy_xaui_tx_polarity_flip_61.0=0x0
+phy_xaui_tx_polarity_flip_65.0=0xd
+phy_xaui_tx_polarity_flip_69.0=0xc
+phy_xaui_tx_polarity_flip_73.0=0xd
+phy_xaui_tx_polarity_flip_77.0=0xf
+phy_xaui_tx_polarity_flip_81.0=0xd
+phy_xaui_tx_polarity_flip_85.0=0xc
+phy_xaui_tx_polarity_flip_89.0=0x2
+phy_xaui_tx_polarity_flip_93.0=0x0
+phy_xaui_tx_polarity_flip_97.0=0xd
+phy_xaui_tx_polarity_flip_98.0=0xc
+phy_xaui_tx_polarity_flip_99.0=0x2
+phy_xaui_tx_polarity_flip_100.0=0x0
+phy_xaui_tx_polarity_flip_101.0=0x0
+phy_xaui_tx_polarity_flip_102.0=0x7
+phy_xaui_tx_polarity_flip_103.0=0x2
+phy_xaui_tx_polarity_flip_104.0=0x0
+port_init_autoneg_1.0=0
+port_init_autoneg_5.0=0
+port_init_autoneg_9.0=0
+port_init_autoneg_13.0=0
+port_init_autoneg_17.0=0
+port_init_autoneg_21.0=0
+port_init_autoneg_25.0=0
+port_init_autoneg_29.0=0
+port_init_autoneg_33.0=0
+port_init_autoneg_37.0=0
+port_init_autoneg_41.0=0
+port_init_autoneg_45.0=0
+port_init_autoneg_49.0=0
+port_init_autoneg_53.0=0
+port_init_autoneg_57.0=0
+port_init_autoneg_61.0=0
+port_init_autoneg_65.0=0
+port_init_autoneg_69.0=0
+port_init_autoneg_73.0=0
+port_init_autoneg_77.0=0
+port_init_autoneg_81.0=0
+port_init_autoneg_85.0=0
+port_init_autoneg_89.0=0
+port_init_autoneg_93.0=0
+port_init_autoneg_97.0=0
+port_init_autoneg_98.0=0
+port_init_autoneg_99.0=0
+port_init_autoneg_100.0=0
+port_init_autoneg_101.0=0
+port_init_autoneg_102.0=0
+port_init_autoneg_103.0=0
+port_init_autoneg_104.0=0
+port_init_cl72.0=0
+portmap_1.0=9:10
+portmap_2.0=10:10
+portmap_3.0=11:10
+portmap_4.0=12:10
+portmap_5.0=13:40
+portmap_9.0=17:40
+portmap_13.0=21:40
+portmap_17.0=29:40
+portmap_21.0=25:40
+portmap_25.0=33:40
+portmap_29.0=37:40
+portmap_33.0=45:40
+portmap_37.0=41:40
+portmap_41.0=49:40
+portmap_45.0=53:40
+portmap_49.0=69:40
+portmap_53.0=65:40
+portmap_57.0=73:40
+portmap_61.0=77:40
+portmap_65.0=93:40
+portmap_69.0=89:40
+portmap_73.0=97:40
+portmap_77.0=101:40
+portmap_81.0=109:40
+portmap_85.0=105:40
+portmap_89.0=121:40
+portmap_93.0=125:40
+portmap_97.0=61:40
+portmap_98.0=57:40
+portmap_99.0=81:40
+portmap_100.0=85:40
+portmap_101.0=117:40
+portmap_102.0=113:40
+portmap_103.0=1:40
+portmap_104.0=5:40
+scache_filename=/tmp/scache
+schan_intr_enable=0
+serdes_firmware_mode_1.0=2
+serdes_firmware_mode_5.0=2
+serdes_firmware_mode_9.0=2
+serdes_firmware_mode_13.0=2
+serdes_firmware_mode_17.0=2
+serdes_firmware_mode_21.0=2
+serdes_firmware_mode_25.0=2
+serdes_firmware_mode_29.0=2
+serdes_firmware_mode_33.0=2
+serdes_firmware_mode_37.0=2
+serdes_firmware_mode_41.0=2
+serdes_firmware_mode_45.0=2
+serdes_firmware_mode_49.0=2
+serdes_firmware_mode_53.0=2
+serdes_firmware_mode_57.0=2
+serdes_firmware_mode_61.0=2
+serdes_firmware_mode_65.0=2
+serdes_firmware_mode_69.0=2
+serdes_firmware_mode_73.0=2
+serdes_firmware_mode_77.0=2
+serdes_firmware_mode_81.0=2
+serdes_firmware_mode_85.0=2
+serdes_firmware_mode_89.0=2
+serdes_firmware_mode_93.0=2
+serdes_firmware_mode_97.0=2
+serdes_firmware_mode_98.0=2
+serdes_firmware_mode_99.0=2
+serdes_firmware_mode_100.0=2
+serdes_firmware_mode_101.0=2
+serdes_firmware_mode_102.0=2
+serdes_firmware_mode_103.0=2
+serdes_firmware_mode_104.0=2
+stable_size=0x2000000
+tdma_timeout_usec.0=15000000
+tslam_timeout_usec.0=15000000
+xgxs_lcpll_xtal_refclk.0=1
+xgxs_rx_lane_map_1.0=0x0123
+xgxs_rx_lane_map_5.0=0x0321
+xgxs_rx_lane_map_9.0=0x1302
+xgxs_rx_lane_map_13.0=0x0213
+xgxs_rx_lane_map_17.0=0x1302
+xgxs_rx_lane_map_21.0=0x1302
+xgxs_rx_lane_map_25.0=0x1302
+xgxs_rx_lane_map_29.0=0x0213
+xgxs_rx_lane_map_33.0=0x1302
+xgxs_rx_lane_map_37.0=0x1302
+xgxs_rx_lane_map_41.0=0x1302
+xgxs_rx_lane_map_45.0=0x0213
+xgxs_rx_lane_map_49.0=0x1302
+xgxs_rx_lane_map_53.0=0x1302
+xgxs_rx_lane_map_57.0=0x1302
+xgxs_rx_lane_map_61.0=0x0213
+xgxs_rx_lane_map_65.0=0x1302
+xgxs_rx_lane_map_69.0=0x1302
+xgxs_rx_lane_map_73.0=0x1302
+xgxs_rx_lane_map_77.0=0x0213
+xgxs_rx_lane_map_81.0=0x1302
+xgxs_rx_lane_map_85.0=0x1302
+xgxs_rx_lane_map_89.0=0x1302
+xgxs_rx_lane_map_93.0=0x0213
+xgxs_rx_lane_map_97.0=0x1302
+xgxs_rx_lane_map_98.0=0x1302
+xgxs_rx_lane_map_99.0=0x1302
+xgxs_rx_lane_map_100.0=0x0213
+xgxs_rx_lane_map_101.0=0x0213
+xgxs_rx_lane_map_102.0=0x1302
+xgxs_rx_lane_map_103.0=0x0123
+xgxs_rx_lane_map_104.0=0x2031
+xgxs_tx_lane_map_1.0=0x3210
+xgxs_tx_lane_map_5.0=0x0321
+xgxs_tx_lane_map_9.0=0x2031
+xgxs_tx_lane_map_13.0=0x0213
+xgxs_tx_lane_map_17.0=0x2031
+xgxs_tx_lane_map_21.0=0x2031
+xgxs_tx_lane_map_25.0=0x2031
+xgxs_tx_lane_map_29.0=0x0213
+xgxs_tx_lane_map_33.0=0x2031
+xgxs_tx_lane_map_37.0=0x2031
+xgxs_tx_lane_map_41.0=0x2031
+xgxs_tx_lane_map_45.0=0x0213
+xgxs_tx_lane_map_49.0=0x2031
+xgxs_tx_lane_map_53.0=0x2031
+xgxs_tx_lane_map_57.0=0x2031
+xgxs_tx_lane_map_61.0=0x0213
+xgxs_tx_lane_map_65.0=0x2031
+xgxs_tx_lane_map_69.0=0x2031
+xgxs_tx_lane_map_73.0=0x2031
+xgxs_tx_lane_map_77.0=0x0213
+xgxs_tx_lane_map_81.0=0x2031
+xgxs_tx_lane_map_85.0=0x2031
+xgxs_tx_lane_map_89.0=0x2031
+xgxs_tx_lane_map_93.0=0x0213
+xgxs_tx_lane_map_97.0=0x2031
+xgxs_tx_lane_map_98.0=0x2031
+xgxs_tx_lane_map_99.0=0x2031
+xgxs_tx_lane_map_100.0=0x0213
+xgxs_tx_lane_map_101.0=0x0213
+xgxs_tx_lane_map_102.0=0x2031
+xgxs_tx_lane_map_103.0=0x3120
+xgxs_tx_lane_map_104.0=0x1302
+
+# tuning parameters
+serdes_preemphasis_lane0_1.0=0x81f7
+serdes_preemphasis_lane1_1.0=0x81f7
+serdes_preemphasis_lane2_1.0=0x81f7
+serdes_preemphasis_lane3_1.0=0x81f7
+serdes_pre_driver_current_lane0_5.0=0x7
+serdes_driver_current_lane0_5.0=0x7
+serdes_preemphasis_lane0_5.0=0xc2f0
+serdes_pre_driver_current_lane1_5.0=0x7
+serdes_driver_current_lane1_5.0=0x7
+serdes_preemphasis_lane1_5.0=0xc2f0
+serdes_pre_driver_current_lane2_5.0=0x7
+serdes_driver_current_lane2_5.0=0x7
+serdes_preemphasis_lane2_5.0=0xc2f0
+serdes_pre_driver_current_lane3_5.0=0x7
+serdes_driver_current_lane3_5.0=0x7
+serdes_preemphasis_lane3_5.0=0xc2f0
+serdes_pre_driver_current_lane0_9.0=0x7
+serdes_driver_current_lane0_9.0=0x7
+serdes_preemphasis_lane0_9.0=0xbb10
+serdes_pre_driver_current_lane1_9.0=0x7
+serdes_driver_current_lane1_9.0=0x7
+serdes_preemphasis_lane1_9.0=0xbb10
+serdes_pre_driver_current_lane2_9.0=0x7
+serdes_driver_current_lane2_9.0=0x7
+serdes_preemphasis_lane2_9.0=0xbb10
+serdes_pre_driver_current_lane3_9.0=0x7
+serdes_driver_current_lane3_9.0=0x7
+serdes_preemphasis_lane3_9.0=0xbb10
+serdes_pre_driver_current_lane0_13.0=0x7
+serdes_driver_current_lane0_13.0=0x7
+serdes_preemphasis_lane0_13.0=0xbb10
+serdes_pre_driver_current_lane1_13.0=0x7
+serdes_driver_current_lane1_13.0=0x7
+serdes_preemphasis_lane1_13.0=0xbb10
+serdes_pre_driver_current_lane2_13.0=0x7
+serdes_driver_current_lane2_13.0=0x7
+serdes_preemphasis_lane2_13.0=0xbb10
+serdes_pre_driver_current_lane3_13.0=0x7
+serdes_driver_current_lane3_13.0=0x7
+serdes_preemphasis_lane3_13.0=0xbb10
+serdes_pre_driver_current_lane0_17.0=0x6
+serdes_driver_current_lane0_17.0=0x6
+serdes_preemphasis_lane0_17.0=0xb720
+serdes_pre_driver_current_lane1_17.0=0x6
+serdes_driver_current_lane1_17.0=0x6
+serdes_preemphasis_lane1_17.0=0xb720
+serdes_pre_driver_current_lane2_17.0=0x6
+serdes_driver_current_lane2_17.0=0x6
+serdes_preemphasis_lane2_17.0=0xb720
+serdes_pre_driver_current_lane3_17.0=0x6
+serdes_driver_current_lane3_17.0=0x6
+serdes_preemphasis_lane3_17.0=0xb720
+serdes_pre_driver_current_lane0_21.0=0x7
+serdes_driver_current_lane0_21.0=0x7
+serdes_preemphasis_lane0_21.0=0xbb10
+serdes_pre_driver_current_lane1_21.0=0x7
+serdes_driver_current_lane1_21.0=0x7
+serdes_preemphasis_lane1_21.0=0xbb10
+serdes_pre_driver_current_lane2_21.0=0x7
+serdes_driver_current_lane2_21.0=0x7
+serdes_preemphasis_lane2_21.0=0xbb10
+serdes_pre_driver_current_lane3_21.0=0x7
+serdes_driver_current_lane3_21.0=0x7
+serdes_preemphasis_lane3_21.0=0xbb10
+serdes_pre_driver_current_lane0_25.0=0x5
+serdes_driver_current_lane0_25.0=0x5
+serdes_preemphasis_lane0_25.0=0xb720
+serdes_pre_driver_current_lane1_25.0=0x5
+serdes_driver_current_lane1_25.0=0x5
+serdes_preemphasis_lane1_25.0=0xb720
+serdes_pre_driver_current_lane2_25.0=0x5
+serdes_driver_current_lane2_25.0=0x5
+serdes_preemphasis_lane2_25.0=0xb720
+serdes_pre_driver_current_lane3_25.0=0x5
+serdes_driver_current_lane3_25.0=0x5
+serdes_preemphasis_lane3_25.0=0xb720
+serdes_pre_driver_current_lane0_29.0=0x5
+serdes_driver_current_lane0_29.0=0x5
+serdes_preemphasis_lane0_29.0=0xb720
+serdes_pre_driver_current_lane1_29.0=0x5
+serdes_driver_current_lane1_29.0=0x5
+serdes_preemphasis_lane1_29.0=0xb720
+serdes_pre_driver_current_lane2_29.0=0x5
+serdes_driver_current_lane2_29.0=0x5
+serdes_preemphasis_lane2_29.0=0xb720
+serdes_pre_driver_current_lane3_29.0=0x5
+serdes_driver_current_lane3_29.0=0x5
+serdes_preemphasis_lane3_29.0=0xb720
+serdes_pre_driver_current_lane0_33.0=0x4
+serdes_driver_current_lane0_33.0=0x4
+serdes_preemphasis_lane0_33.0=0xb720
+serdes_pre_driver_current_lane1_33.0=0x4
+serdes_driver_current_lane1_33.0=0x4
+serdes_preemphasis_lane1_33.0=0xb720
+serdes_pre_driver_current_lane2_33.0=0x4
+serdes_driver_current_lane2_33.0=0x4
+serdes_preemphasis_lane2_33.0=0xb720
+serdes_pre_driver_current_lane3_33.0=0x4
+serdes_driver_current_lane3_33.0=0x4
+serdes_preemphasis_lane3_33.0=0xb720
+serdes_pre_driver_current_lane0_37.0=0x5
+serdes_driver_current_lane0_37.0=0x5
+serdes_preemphasis_lane0_37.0=0xb720
+serdes_pre_driver_current_lane1_37.0=0x5
+serdes_driver_current_lane1_37.0=0x5
+serdes_preemphasis_lane1_37.0=0xb720
+serdes_pre_driver_current_lane2_37.0=0x5
+serdes_driver_current_lane2_37.0=0x5
+serdes_preemphasis_lane2_37.0=0xb720
+serdes_pre_driver_current_lane3_37.0=0x5
+serdes_driver_current_lane3_37.0=0x5
+serdes_preemphasis_lane3_37.0=0xb720
+serdes_pre_driver_current_lane0_41.0=0x3
+serdes_driver_current_lane0_41.0=0x3
+serdes_preemphasis_lane0_41.0=0xb330
+serdes_pre_driver_current_lane1_41.0=0x3
+serdes_driver_current_lane1_41.0=0x3
+serdes_preemphasis_lane1_41.0=0xb330
+serdes_pre_driver_current_lane2_41.0=0x3
+serdes_driver_current_lane2_41.0=0x3
+serdes_preemphasis_lane2_41.0=0xb330
+serdes_pre_driver_current_lane3_41.0=0x3
+serdes_driver_current_lane3_41.0=0x3
+serdes_preemphasis_lane3_41.0=0xb330
+serdes_pre_driver_current_lane0_45.0=0x4
+serdes_driver_current_lane0_45.0=0x4
+serdes_preemphasis_lane0_45.0=0xb720
+serdes_pre_driver_current_lane1_45.0=0x4
+serdes_driver_current_lane1_45.0=0x4
+serdes_preemphasis_lane1_45.0=0xb720
+serdes_pre_driver_current_lane2_45.0=0x4
+serdes_driver_current_lane2_45.0=0x4
+serdes_preemphasis_lane2_45.0=0xb720
+serdes_pre_driver_current_lane3_45.0=0x4
+serdes_driver_current_lane3_45.0=0x4
+serdes_preemphasis_lane3_45.0=0xb720
+serdes_pre_driver_current_lane0_49.0=0x3
+serdes_driver_current_lane0_49.0=0x3
+serdes_preemphasis_lane0_49.0=0xb330
+serdes_pre_driver_current_lane1_49.0=0x3
+serdes_driver_current_lane1_49.0=0x3
+serdes_preemphasis_lane1_49.0=0xb330
+serdes_pre_driver_current_lane2_49.0=0x3
+serdes_driver_current_lane2_49.0=0x3
+serdes_preemphasis_lane2_49.0=0xb330
+serdes_pre_driver_current_lane3_49.0=0x3
+serdes_driver_current_lane3_49.0=0x3
+serdes_preemphasis_lane3_49.0=0xb330
+serdes_pre_driver_current_lane0_53.0=0x4
+serdes_driver_current_lane0_53.0=0x4
+serdes_preemphasis_lane0_53.0=0xb720
+serdes_pre_driver_current_lane1_53.0=0x4
+serdes_driver_current_lane1_53.0=0x4
+serdes_preemphasis_lane1_53.0=0xb720
+serdes_pre_driver_current_lane2_53.0=0x4
+serdes_driver_current_lane2_53.0=0x4
+serdes_preemphasis_lane2_53.0=0xb720
+serdes_pre_driver_current_lane3_53.0=0x4
+serdes_driver_current_lane3_53.0=0x4
+serdes_preemphasis_lane3_53.0=0xb720
+serdes_pre_driver_current_lane0_57.0=0x3
+serdes_driver_current_lane0_57.0=0x3
+serdes_preemphasis_lane0_57.0=0xb330
+serdes_pre_driver_current_lane1_57.0=0x3
+serdes_driver_current_lane1_57.0=0x3
+serdes_preemphasis_lane1_57.0=0xb330
+serdes_pre_driver_current_lane2_57.0=0x3
+serdes_driver_current_lane2_57.0=0x3
+serdes_preemphasis_lane2_57.0=0xb330
+serdes_pre_driver_current_lane3_57.0=0x3
+serdes_driver_current_lane3_57.0=0x3
+serdes_preemphasis_lane3_57.0=0xb330
+serdes_pre_driver_current_lane0_61.0=0x4
+serdes_driver_current_lane0_61.0=0x4
+serdes_preemphasis_lane0_61.0=0xb720
+serdes_pre_driver_current_lane1_61.0=0x4
+serdes_driver_current_lane1_61.0=0x4
+serdes_preemphasis_lane1_61.0=0xb720
+serdes_pre_driver_current_lane2_61.0=0x4
+serdes_driver_current_lane2_61.0=0x4
+serdes_preemphasis_lane2_61.0=0xb720
+serdes_pre_driver_current_lane3_61.0=0x4
+serdes_driver_current_lane3_61.0=0x4
+serdes_preemphasis_lane3_61.0=0xb720
+serdes_pre_driver_current_lane0_65.0=0x4
+serdes_driver_current_lane0_65.0=0x4
+serdes_preemphasis_lane0_65.0=0xb720
+serdes_pre_driver_current_lane1_65.0=0x4
+serdes_driver_current_lane1_65.0=0x4
+serdes_preemphasis_lane1_65.0=0xb720
+serdes_pre_driver_current_lane2_65.0=0x4
+serdes_driver_current_lane2_65.0=0x4
+serdes_preemphasis_lane2_65.0=0xb720
+serdes_pre_driver_current_lane3_65.0=0x4
+serdes_driver_current_lane3_65.0=0x4
+serdes_preemphasis_lane3_65.0=0xb720
+serdes_pre_driver_current_lane0_69.0=0x4
+serdes_driver_current_lane0_69.0=0x4
+serdes_preemphasis_lane0_69.0=0xb720
+serdes_pre_driver_current_lane1_69.0=0x4
+serdes_driver_current_lane1_69.0=0x4
+serdes_preemphasis_lane1_69.0=0xb720
+serdes_pre_driver_current_lane2_69.0=0x4
+serdes_driver_current_lane2_69.0=0x4
+serdes_preemphasis_lane2_69.0=0xb720
+serdes_pre_driver_current_lane3_69.0=0x4
+serdes_driver_current_lane3_69.0=0x4
+serdes_preemphasis_lane3_69.0=0xb720
+serdes_pre_driver_current_lane0_73.0=0x4
+serdes_driver_current_lane0_73.0=0x4
+serdes_preemphasis_lane0_73.0=0xb720
+serdes_pre_driver_current_lane1_73.0=0x4
+serdes_driver_current_lane1_73.0=0x4
+serdes_preemphasis_lane1_73.0=0xb720
+serdes_pre_driver_current_lane2_73.0=0x4
+serdes_driver_current_lane2_73.0=0x4
+serdes_preemphasis_lane2_73.0=0xb720
+serdes_pre_driver_current_lane3_73.0=0x4
+serdes_driver_current_lane3_73.0=0x4
+serdes_preemphasis_lane3_73.0=0xb720
+serdes_pre_driver_current_lane0_77.0=0x5
+serdes_driver_current_lane0_77.0=0x5
+serdes_preemphasis_lane0_77.0=0xb720
+serdes_pre_driver_current_lane1_77.0=0x5
+serdes_driver_current_lane1_77.0=0x5
+serdes_preemphasis_lane1_77.0=0xb720
+serdes_pre_driver_current_lane2_77.0=0x5
+serdes_driver_current_lane2_77.0=0x5
+serdes_preemphasis_lane2_77.0=0xb720
+serdes_pre_driver_current_lane3_77.0=0x5
+serdes_driver_current_lane3_77.0=0x5
+serdes_preemphasis_lane3_77.0=0xb720
+serdes_pre_driver_current_lane0_81.0=0x5
+serdes_driver_current_lane0_81.0=0x5
+serdes_preemphasis_lane0_81.0=0xb720
+serdes_pre_driver_current_lane1_81.0=0x5
+serdes_driver_current_lane1_81.0=0x5
+serdes_preemphasis_lane1_81.0=0xb720
+serdes_pre_driver_current_lane2_81.0=0x5
+serdes_driver_current_lane2_81.0=0x5
+serdes_preemphasis_lane2_81.0=0xb720
+serdes_pre_driver_current_lane3_81.0=0x5
+serdes_driver_current_lane3_81.0=0x5
+serdes_preemphasis_lane3_81.0=0xb720
+serdes_pre_driver_current_lane0_85.0=0x5
+serdes_driver_current_lane0_85.0=0x5
+serdes_preemphasis_lane0_85.0=0xb720
+serdes_pre_driver_current_lane1_85.0=0x5
+serdes_driver_current_lane1_85.0=0x5
+serdes_preemphasis_lane1_85.0=0xb720
+serdes_pre_driver_current_lane2_85.0=0x5
+serdes_driver_current_lane2_85.0=0x5
+serdes_preemphasis_lane2_85.0=0xb720
+serdes_pre_driver_current_lane3_85.0=0x5
+serdes_driver_current_lane3_85.0=0x5
+serdes_preemphasis_lane3_85.0=0xb720
+serdes_pre_driver_current_lane0_89.0=0x6
+serdes_driver_current_lane0_89.0=0x6
+serdes_preemphasis_lane0_89.0=0xb720
+serdes_pre_driver_current_lane1_89.0=0x6
+serdes_driver_current_lane1_89.0=0x6
+serdes_preemphasis_lane1_89.0=0xb720
+serdes_pre_driver_current_lane2_89.0=0x6
+serdes_driver_current_lane2_89.0=0x6
+serdes_preemphasis_lane2_89.0=0xb720
+serdes_pre_driver_current_lane3_89.0=0x6
+serdes_driver_current_lane3_89.0=0x6
+serdes_preemphasis_lane3_89.0=0xb720
+serdes_pre_driver_current_lane0_93.0=0x7
+serdes_driver_current_lane0_93.0=0x7
+serdes_preemphasis_lane0_93.0=0xbb10
+serdes_pre_driver_current_lane1_93.0=0x7
+serdes_driver_current_lane1_93.0=0x7
+serdes_preemphasis_lane1_93.0=0xbb10
+serdes_pre_driver_current_lane2_93.0=0x7
+serdes_driver_current_lane2_93.0=0x7
+serdes_preemphasis_lane2_93.0=0xbb10
+serdes_pre_driver_current_lane3_93.0=0x7
+serdes_driver_current_lane3_93.0=0x7
+serdes_preemphasis_lane3_93.0=0xbb10
+serdes_pre_driver_current_lane0_97.0=0x5
+serdes_driver_current_lane0_97.0=0x5
+serdes_preemphasis_lane0_97.0=0xb720
+serdes_pre_driver_current_lane1_97.0=0x5
+serdes_driver_current_lane1_97.0=0x5
+serdes_preemphasis_lane1_97.0=0xb720
+serdes_pre_driver_current_lane2_97.0=0x5
+serdes_driver_current_lane2_97.0=0x5
+serdes_preemphasis_lane2_97.0=0xb720
+serdes_pre_driver_current_lane3_97.0=0x5
+serdes_driver_current_lane3_97.0=0x5
+serdes_preemphasis_lane3_97.0=0xb720
+serdes_pre_driver_current_lane0_98.0=0x6
+serdes_driver_current_lane0_98.0=0x6
+serdes_preemphasis_lane0_98.0=0xb720
+serdes_pre_driver_current_lane1_98.0=0x6
+serdes_driver_current_lane1_98.0=0x6
+serdes_preemphasis_lane1_98.0=0xb720
+serdes_pre_driver_current_lane2_98.0=0x6
+serdes_driver_current_lane2_98.0=0x6
+serdes_preemphasis_lane2_98.0=0xb720
+serdes_pre_driver_current_lane3_98.0=0x6
+serdes_driver_current_lane3_98.0=0x6
+serdes_preemphasis_lane3_98.0=0xb720
+serdes_pre_driver_current_lane0_99.0=0x5
+serdes_driver_current_lane0_99.0=0x5
+serdes_preemphasis_lane0_99.0=0xb720
+serdes_pre_driver_current_lane1_99.0=0x5
+serdes_driver_current_lane1_99.0=0x5
+serdes_preemphasis_lane1_99.0=0xb720
+serdes_pre_driver_current_lane2_99.0=0x5
+serdes_driver_current_lane2_99.0=0x5
+serdes_preemphasis_lane2_99.0=0xb720
+serdes_pre_driver_current_lane3_99.0=0x5
+serdes_driver_current_lane3_99.0=0x5
+serdes_preemphasis_lane3_99.0=0xb720
+serdes_pre_driver_current_lane0_100.0=0x7
+serdes_driver_current_lane0_100.0=0x7
+serdes_preemphasis_lane0_100.0=0xbb10
+serdes_pre_driver_current_lane1_100.0=0x7
+serdes_driver_current_lane1_100.0=0x7
+serdes_preemphasis_lane1_100.0=0xbb10
+serdes_pre_driver_current_lane2_100.0=0x7
+serdes_driver_current_lane2_100.0=0x7
+serdes_preemphasis_lane2_100.0=0xbb10
+serdes_pre_driver_current_lane3_100.0=0x7
+serdes_driver_current_lane3_100.0=0x7
+serdes_preemphasis_lane3_100.0=0xbb10
+serdes_pre_driver_current_lane0_101.0=0x7
+serdes_driver_current_lane0_101.0=0x7
+serdes_preemphasis_lane0_101.0=0xbb10
+serdes_pre_driver_current_lane1_101.0=0x7
+serdes_driver_current_lane1_101.0=0x7
+serdes_preemphasis_lane1_101.0=0xbb10
+serdes_pre_driver_current_lane2_101.0=0x7
+serdes_driver_current_lane2_101.0=0x7
+serdes_preemphasis_lane2_101.0=0xbb10
+serdes_pre_driver_current_lane3_101.0=0x7
+serdes_driver_current_lane3_101.0=0x7
+serdes_preemphasis_lane3_101.0=0xbb10
+serdes_pre_driver_current_lane0_102.0=0x7
+serdes_driver_current_lane0_102.0=0x7
+serdes_preemphasis_lane0_102.0=0xbb10
+serdes_pre_driver_current_lane1_102.0=0x7
+serdes_driver_current_lane1_102.0=0x7
+serdes_preemphasis_lane1_102.0=0xbb10
+serdes_pre_driver_current_lane2_102.0=0x7
+serdes_driver_current_lane2_102.0=0x7
+serdes_preemphasis_lane2_102.0=0xbb10
+serdes_pre_driver_current_lane3_102.0=0x7
+serdes_driver_current_lane3_102.0=0x7
+serdes_preemphasis_lane3_102.0=0xbb10
+serdes_preemphasis_lane0_103.0=0x81f4
+serdes_preemphasis_lane1_103.0=0x81f4
+serdes_preemphasis_lane2_103.0=0x81f4
+serdes_preemphasis_lane3_103.0=0x81f4
+serdes_preemphasis_lane0_104.0=0x81f5
+serdes_preemphasis_lane1_104.0=0x81f5
+serdes_preemphasis_lane2_104.0=0x81f5
+serdes_preemphasis_lane3_104.0=0x81f5
diff --git a/device/arista/x86_64-arista_7050_qx32s/Arista-7050-QX-32S/hwsku-init b/device/arista/x86_64-arista_7050_qx32s/Arista-7050-QX-32S/hwsku-init
new file mode 100644
index 000000000000..49639a743436
--- /dev/null
+++ b/device/arista/x86_64-arista_7050_qx32s/Arista-7050-QX-32S/hwsku-init
@@ -0,0 +1 @@
+echo 0 > /sys/devices/pci0000:00/0000:00:02.2/0000:02:00.0/mux