diff --git a/device/celestica/x86_64-cel_silverstone-r0/Silverstone/port_config.ini b/device/celestica/x86_64-cel_silverstone-r0/Silverstone/port_config.ini
index ff95509f9eb1..32756e949299 100644
--- a/device/celestica/x86_64-cel_silverstone-r0/Silverstone/port_config.ini
+++ b/device/celestica/x86_64-cel_silverstone-r0/Silverstone/port_config.ini
@@ -1,35 +1,35 @@
# name lanes alias index
-Ethernet0 89,90,91,92,93,94,95,96 QSFPDD1 1
-Ethernet4 81,82,83,84,85,86,87,88 QSFPDD2 2
-Ethernet8 105,106,107,108,109,110,111,112 QSFPDD3 3
-Ethernet12 97,98,99,100,101,102,103,104 QSFPDD4 4
-Ethernet16 137,138,139,140,141,142,143,144 QSFPDD5 5
-Ethernet20 129,130,131,132,133,134,135,136 QSFPDD6 6
-Ethernet24 169,170,171,172,173,174,175,176 QSFPDD7 7
-Ethernet28 161,162,163,164,165,166,167,168 QSFPDD8 8
-Ethernet32 201,202,203,204,205,206,207,208 QSFPDD9 9
-Ethernet36 193,194,195,196,197,198,199,200 QSFPDD10 10
-Ethernet40 233,234,235,236,237,238,239,240 QSFPDD11 11
-Ethernet44 225,226,227,228,229,230,231,232 QSFPDD12 12
-Ethernet48 73,74,75,76,77,78,79,80 QSFPDD13 13
-Ethernet52 65,66,67,68,69,70,71,72 QSFPDD14 14
-Ethernet56 121,122,123,124,125,126,127,128 QSFPDD15 15
-Ethernet60 113,114,115,116,117,118,119,120 QSFPDD16 16
-Ethernet64 9,10,11,12,13,14,15,16 QSFPDD17 17
-Ethernet68 1,2,3,4,5,6,7,8 QSFPDD18 18
-Ethernet72 57,58,59,60,61,62,63,64 QSFPDD19 19
-Ethernet76 49,50,51,52,53,54,55,56 QSFPDD20 20
-Ethernet80 153,154,155,156,157,158,159,160 QSFPDD21 21
-Ethernet84 145,146,147,148,149,150,151,152 QSFPDD22 22
-Ethernet88 185,186,187,188,189,190,191,192 QSFPDD23 23
-Ethernet92 177,178,179,180,181,182,183,184 QSFPDD24 24
-Ethernet96 217,218,219,220,221,222,223,224 QSFPDD25 25
-Ethernet100 209,210,211,212,213,214,215,216 QSFPDD26 26
-Ethernet104 249,250,251,252,253,254,255,256 QSFPDD27 27
-Ethernet108 241,242,243,244,245,246,247,248 QSFPDD28 28
-Ethernet112 25,26,27,28,29,30,31,32 QSFPDD29 29
-Ethernet116 17,18,19,20,21,22,23,24 QSFPDD30 30
-Ethernet120 41,42,43,44,45,46,47,48 QSFPDD31 31
-Ethernet124 33,34,35,36,37,38,39,40 QSFPDD32 32
-Ethernet125 257 SFP1 33
-Ethernet126 258 SFP2 34
\ No newline at end of file
+Ethernet0 33,34,35,36,37,38,39,40 QSFPDD1 1
+Ethernet4 41,42,43,44,45,46,47,48 QSFPDD2 2
+Ethernet8 49,50,51,52,53,54,55,56 QSFPDD3 3
+Ethernet12 57,58,59,60,61,62,63,64 QSFPDD4 4
+Ethernet16 65,66,67,68,69,70,71,72 QSFPDD5 5
+Ethernet20 73,74,75,76,77,78,79,80 QSFPDD6 6
+Ethernet24 81,82,83,84,85,86,87,88 QSFPDD7 7
+Ethernet28 89,90,91,92,93,94,95,96 QSFPDD8 8
+Ethernet32 1,2,3,4,5,6,7,8 QSFPDD9 9
+Ethernet36 9,10,11,12,13,14,15,16 QSFPDD10 10
+Ethernet40 17,18,19,20,21,22,23,24 QSFPDD11 11
+Ethernet44 25,26,27,28,29,30,31,32 QSFPDD12 12
+Ethernet48 97,98,99,100,101,102,103,104 QSFPDD13 13
+Ethernet52 105,106,107,108,109,110,111,112 QSFPDD14 14
+Ethernet56 113,114,115,116,117,118,119,120 QSFPDD15 15
+Ethernet60 121,122,123,124,125,126,127,128 QSFPDD16 16
+Ethernet64 129,130,131,132,133,134,135,136 QSFPDD17 17
+Ethernet68 137,138,139,140,141,142,143,144 QSFPDD18 18
+Ethernet72 145,146,147,148,149,150,151,152 QSFPDD19 19
+Ethernet76 153,154,155,156,157,158,159,160 QSFPDD20 20
+Ethernet80 225,226,227,228,229,230,231,232 QSFPDD21 21
+Ethernet84 233,234,235,236,237,238,239,240 QSFPDD22 22
+Ethernet88 241,242,243,244,245,246,247,248 QSFPDD23 23
+Ethernet92 249,250,251,252,253,254,255,256 QSFPDD24 24
+Ethernet96 161,162,163,164,165,166,167,168 QSFPDD25 25
+Ethernet100 169,170,171,172,173,174,175,176 QSFPDD26 26
+Ethernet104 177,178,179,180,181,182,183,184 QSFPDD27 27
+Ethernet108 185,186,187,188,189,190,191,192 QSFPDD28 28
+Ethernet112 193,194,195,196,197,198,199,200 QSFPDD29 29
+Ethernet116 201,202,203,204,205,206,207,208 QSFPDD30 30
+Ethernet120 209,210,211,212,213,214,215,216 QSFPDD31 31
+Ethernet124 217,218,219,220,221,222,223,224 QSFPDD32 32
+Ethernet125 257 SFP1 33
+Ethernet126 258 SFP2 34
diff --git a/device/celestica/x86_64-cel_silverstone-r0/Silverstone/sai.profile b/device/celestica/x86_64-cel_silverstone-r0/Silverstone/sai.profile
index e69de29bb2d1..f028faf377ea 100644
--- a/device/celestica/x86_64-cel_silverstone-r0/Silverstone/sai.profile
+++ b/device/celestica/x86_64-cel_silverstone-r0/Silverstone/sai.profile
@@ -0,0 +1 @@
+SAI_INIT_CONFIG_FILE=/usr/share/sonic/platform/th3-32x400G.config.bcm
diff --git a/device/celestica/x86_64-cel_silverstone-r0/led_proc_init.soc b/device/celestica/x86_64-cel_silverstone-r0/led_proc_init.soc
new file mode 100644
index 000000000000..b01d62353ff2
--- /dev/null
+++ b/device/celestica/x86_64-cel_silverstone-r0/led_proc_init.soc
@@ -0,0 +1,12 @@
+#Enable all ports
+sleep 6
+port all en=1
+#sleep 6
+#linkscan 250000; port xe,ce linkscan=on
+
+#Load LED
+#m0 load 0 0x0 /usr/share/sonic/platform/linkscan_led_fw.bin
+#m0 load 0 0x3800 /usr/share/sonic/platform/custom_led.bin
+#led auto on; led start
+
+
diff --git a/device/celestica/x86_64-cel_silverstone-r0/minigraph.xml b/device/celestica/x86_64-cel_silverstone-r0/minigraph.xml
index b93e24a398c7..1904b64219eb 100644
--- a/device/celestica/x86_64-cel_silverstone-r0/minigraph.xml
+++ b/device/celestica/x86_64-cel_silverstone-r0/minigraph.xml
@@ -645,284 +645,164 @@
- SFP1
+ QSFPDD1
10.0.0.0/31
- SFP2
+ QSFPDD2
10.0.0.2/31
- SFP3
+ QSFPDD3
10.0.0.4/31
- SFP4
+ QSFPDD4
10.0.0.6/31
- SFP5
+ QSFPDD5
10.0.0.8/31
- SFP6
+ QSFPDD6
10.0.0.10/31
- SFP7
+ QSFPDD7
10.0.0.12/31
- SFP8
+ QSFPDD8
10.0.0.14/31
- SFP9
+ QSFPDD9
10.0.0.16/31
- SFP10
+ QSFPDD10
10.0.0.18/31
- SFP11
+ QSFPDD11
10.0.0.20/31
- SFP12
+ QSFPDD12
10.0.0.22/31
- SFP13
+ QSFPDD13
10.0.0.24/31
- SFP14
+ QSFPDD14
10.0.0.26/31
- SFP15
+ QSFPDD15
10.0.0.28/31
- SFP16
+ QSFPDD16
10.0.0.30/31
- SFP17
+ QSFPDD17
10.0.0.32/31
- SFP18
+ QSFPDD18
10.0.0.34/31
- SFP19
+ QSFPDD19
10.0.0.36/31
- SFP20
+ QSFPDD20
10.0.0.38/31
- SFP21
+ QSFPDD21
10.0.0.40/31
- SFP22
+ QSFPDD22
10.0.0.42/31
- SFP23
+ QSFPDD23
10.0.0.44/31
- SFP24
+ QSFPDD24
10.0.0.46/31
- SFP25
+ QSFPDD25
10.0.0.48/31
- SFP26
+ QSFPDD26
10.0.0.50/31
- SFP27
+ QSFPDD27
10.0.0.52/31
- SFP28
+ QSFPDD28
10.0.0.54/31
- SFP29
+ QSFPDD29
10.0.0.56/31
- SFP30
+ QSFPDD30
10.0.0.58/31
- SFP31
+ QSFPDD31
10.0.0.60/31
- SFP32
+ QSFPDD32
10.0.0.62/31
-
-
- SFP33
- 10.0.0.64/31
-
-
-
- SFP34
- 10.0.0.66/31
-
-
-
- SFP35
- 10.0.0.68/31
-
-
-
- SFP36
- 10.0.0.70/31
-
-
-
- SFP37
- 10.0.0.72/31
-
-
-
- SFP38
- 10.0.0.74/31
-
-
-
- SFP39
- 10.0.0.76/31
-
-
-
- SFP40
- 10.0.0.78/31
-
-
-
- SFP41
- 10.0.0.80/31
-
-
-
- SFP42
- 10.0.0.82/31
-
-
-
- SFP43
- 10.0.0.84/31
-
-
-
- SFP44
- 10.0.0.86/31
-
-
-
- SFP45
- 10.0.0.88/31
-
-
-
- SFP46
- 10.0.0.90/31
-
-
-
- SFP47
- 10.0.0.92/31
-
-
-
- SFP48
- 10.0.0.94/31
-
-
-
- QSFP1
- 10.0.0.96/31
-
-
-
- QSFP2
- 10.0.0.98/31
-
-
-
- QSFP3
- 10.0.0.100/31
-
-
-
- QSFP4
- 10.0.0.102/31
-
-
-
- QSFP5
- 10.0.0.104/31
-
-
-
- QSFP6
- 10.0.0.106/31
-
-
-
- QSFP7
- 10.0.0.108/31
-
-
-
- QSFP8
- 10.0.0.110/31
-
@@ -971,4 +851,4 @@
sonic
Silverstone
-
\ No newline at end of file
+
diff --git a/device/celestica/x86_64-cel_silverstone-r0/th3-32x400G.config.bcm b/device/celestica/x86_64-cel_silverstone-r0/th3-32x400G.config.bcm
new file mode 100644
index 000000000000..fe8e4cd77542
--- /dev/null
+++ b/device/celestica/x86_64-cel_silverstone-r0/th3-32x400G.config.bcm
@@ -0,0 +1,266 @@
+
+pbmp_xport_xe.0=0x8111181111c1111811118111181111c111182222
+ccm_dma_enable=0
+ccmdma_intr_enable=0
+ctr_evict_enable=0
+mem_cache_enable=0
+parity_correction=0
+parity_enable=0
+phy_enable=0
+phy_null=1
+pll_bypass=1
+
+init_all_modules=0
+
+
+port_init_cl72=1
+
+portmap_38=257:10
+portmap_118=258:10
+
+
+portmap_20=33:400
+portmap_24=41:400
+portmap_28=49:400
+portmap_32=57:400
+portmap_40=65:400
+portmap_44=73:400
+portmap_48=81:400
+portmap_52=89:400
+portmap_1=1:400
+portmap_5=9:400
+portmap_9=17:400
+portmap_13=25:400
+portmap_60=97:400
+portmap_64=105:400
+portmap_68=113:400
+portmap_72=121:400
+portmap_80=129:400
+portmap_84=137:400
+portmap_88=145:400
+portmap_92=153:400
+portmap_140=225:400
+portmap_144=233:400
+portmap_148=241:400
+portmap_152=249:400
+portmap_100=161:400
+portmap_104=169:400
+portmap_108=177:400
+portmap_112=185:400
+portmap_120=193:400
+portmap_124=201:400
+portmap_128=209:400
+portmap_132=217:400
+
+phy_chain_rx_lane_map_physical{33.0}=0x65732041
+phy_chain_tx_lane_map_physical{33.0}=0x47206531
+phy_chain_rx_lane_map_physical{41.0}=0x07561243
+phy_chain_tx_lane_map_physical{41.0}=0x36207514
+phy_chain_rx_lane_map_physical{49.0}=0x54632071
+phy_chain_tx_lane_map_physical{49.0}=0x06241735
+phy_chain_rx_lane_map_physical{57.0}=0x07561243
+phy_chain_tx_lane_map_physical{57.0}=0x35207614
+phy_chain_rx_lane_map_physical{65.0}=0x45623170
+phy_chain_tx_lane_map_physical{65.0}=0x51260734
+phy_chain_rx_lane_map_physical{73.0}=0x07561243
+phy_chain_tx_lane_map_physical{73.0}=0x37245610
+phy_chain_rx_lane_map_physical{81.0}=0x45632071
+phy_chain_tx_lane_map_physical{81.0}=0x51260734
+phy_chain_rx_lane_map_physical{89.0}=0x07561243
+phy_chain_tx_lane_map_physical{89.0}=0x26437510
+phy_chain_rx_lane_map_physical{1.0}=0x30176524
+phy_chain_tx_lane_map_physical{1.0}=0x20615374
+phy_chain_rx_lane_map_physical{9.0}=0x37562041
+phy_chain_tx_lane_map_physical{9.0}=0x05176432
+phy_chain_rx_lane_map_physical{17.0}=0x43607251
+phy_chain_tx_lane_map_physical{17.0}=0x70261435
+phy_chain_rx_lane_map_physical{25.0}=0x60347125
+phy_chain_tx_lane_map_physical{25.0}=0x46357120
+phy_chain_rx_lane_map_physical{97.0}=0x47601352
+phy_chain_tx_lane_map_physical{97.0}=0x04265137
+phy_chain_rx_lane_map_physical{105.0}=0x73206415
+phy_chain_tx_lane_map_physical{105.0}=0x26374150
+phy_chain_rx_lane_map_physical{113.0}=0x47632051
+phy_chain_tx_lane_map_physical{113.0}=0x03254617
+phy_chain_rx_lane_map_physical{121.0}=0x63027415
+phy_chain_tx_lane_map_physical{121.0}=0x63721045
+phy_chain_rx_lane_map_physical{129.0}=0x30154627
+phy_chain_tx_lane_map_physical{129.0}=0x04735261
+phy_chain_rx_lane_map_physical{137.0}=0x24753061
+phy_chain_tx_lane_map_physical{137.0}=0x37614520
+phy_chain_rx_lane_map_physical{145.0}=0x47601352
+phy_chain_tx_lane_map_physical{145.0}=0x63274510
+phy_chain_rx_lane_map_physical{153.0}=0x07361524
+phy_chain_tx_lane_map_physical{153.0}=0x36527104
+phy_chain_rx_lane_map_physical{225.0}=0x56410273
+phy_chain_tx_lane_map_physical{225.0}=0x10274635
+phy_chain_rx_lane_map_physical{233.0}=0x15740263
+phy_chain_tx_lane_map_physical{233.0}=0x24351607
+phy_chain_rx_lane_map_physical{241.0}=0x74015263
+phy_chain_tx_lane_map_physical{241.0}=0x04152637
+phy_chain_rx_lane_map_physical{249.0}=0x62037514
+phy_chain_tx_lane_map_physical{249.0}=0x72453160
+phy_chain_rx_lane_map_physical{161.0}=0x46510273
+phy_chain_tx_lane_map_physical{161.0}=0x01653724
+phy_chain_rx_lane_map_physical{169.0}=0x25743160
+phy_chain_tx_lane_map_physical{169.0}=0x07216435
+phy_chain_rx_lane_map_physical{177.0}=0x46510273
+phy_chain_tx_lane_map_physical{177.0}=0x01652734
+phy_chain_rx_lane_map_physical{185.0}=0x25743160
+phy_chain_tx_lane_map_physical{185.0}=0x37016425
+phy_chain_rx_lane_map_physical{193.0}=0x46510372
+phy_chain_tx_lane_map_physical{193.0}=0x06153724
+phy_chain_rx_lane_map_physical{201.0}=0x25743160
+phy_chain_tx_lane_map_physical{201.0}=0x36017524
+phy_chain_rx_lane_map_physical{209.0}=0x47601352
+phy_chain_tx_lane_map_physical{209.0}=0x04152736
+phy_chain_rx_lane_map_physical{217.0}=0x26453170
+phy_chain_tx_lane_map_physical{217.0}=0x36027415
+
+serdes_core_rx_polarity_flip_physical{33}=0x29
+serdes_core_tx_polarity_flip_physical{33}=0xfe
+serdes_core_rx_polarity_flip_physical{41}=0xb1
+serdes_core_tx_polarity_flip_physical{41}=0xe8
+serdes_core_rx_polarity_flip_physical{49}=0xca
+serdes_core_tx_polarity_flip_physical{49}=0xb6
+serdes_core_rx_polarity_flip_physical{57}=0x9b
+serdes_core_tx_polarity_flip_physical{57}=0xdc
+serdes_core_rx_polarity_flip_physical{65}=0x17
+serdes_core_tx_polarity_flip_physical{65}=0x86
+serdes_core_rx_polarity_flip_physical{73}=0x9b
+serdes_core_tx_polarity_flip_physical{73}=0x55
+serdes_core_rx_polarity_flip_physical{81}=0xa
+serdes_core_tx_polarity_flip_physical{81}=0x6
+serdes_core_rx_polarity_flip_physical{89}=0x9b
+serdes_core_tx_polarity_flip_physical{89}=0x48
+serdes_core_rx_polarity_flip_physical{1}=0xec
+serdes_core_tx_polarity_flip_physical{1}=0x56
+serdes_core_rx_polarity_flip_physical{9}=0x13
+serdes_core_tx_polarity_flip_physical{9}=0xa6
+serdes_core_rx_polarity_flip_physical{17}=0x5a
+serdes_core_tx_polarity_flip_physical{17}=0xc6
+serdes_core_rx_polarity_flip_physical{25}=0xf
+serdes_core_tx_polarity_flip_physical{25}=0x4e
+serdes_core_rx_polarity_flip_physical{97}=0x17
+serdes_core_tx_polarity_flip_physical{97}=0x2e
+serdes_core_rx_polarity_flip_physical{105}=0xce
+serdes_core_tx_polarity_flip_physical{105}=0x7c
+serdes_core_rx_polarity_flip_physical{113}=0xa
+serdes_core_tx_polarity_flip_physical{113}=0x35
+
+serdes_core_rx_polarity_flip_physical{121}=0xb9
+serdes_core_tx_polarity_flip_physical{121}=0xef
+serdes_core_rx_polarity_flip_physical{129}=0xe8
+serdes_core_tx_polarity_flip_physical{129}=0xac
+serdes_core_rx_polarity_flip_physical{137}=0xcb
+serdes_core_tx_polarity_flip_physical{137}=0x9c
+serdes_core_rx_polarity_flip_physical{145}=0x17
+serdes_core_tx_polarity_flip_physical{145}=0x32
+serdes_core_rx_polarity_flip_physical{153}=0xb9
+serdes_core_tx_polarity_flip_physical{153}=0xaf
+serdes_core_rx_polarity_flip_physical{225}=0xaa
+serdes_core_tx_polarity_flip_physical{225}=0x7
+serdes_core_rx_polarity_flip_physical{233}=0x31
+serdes_core_tx_polarity_flip_physical{233}=0x47
+serdes_core_rx_polarity_flip_physical{241}=0xe8
+serdes_core_tx_polarity_flip_physical{241}=0x9e
+serdes_core_rx_polarity_flip_physical{249}=0xec
+serdes_core_tx_polarity_flip_physical{249}=0x1f
+serdes_core_rx_polarity_flip_physical{161}=0x6a
+serdes_core_tx_polarity_flip_physical{161}=0xd4
+serdes_core_rx_polarity_flip_physical{169}=0x9e
+serdes_core_tx_polarity_flip_physical{169}=0x7b
+serdes_core_rx_polarity_flip_physical{177}=0x6a
+serdes_core_tx_polarity_flip_physical{177}=0xcc
+serdes_core_rx_polarity_flip_physical{185}=0x9e
+serdes_core_tx_polarity_flip_physical{185}=0x58
+serdes_core_rx_polarity_flip_physical{193}=0x6f
+serdes_core_tx_polarity_flip_physical{193}=0x24
+serdes_core_rx_polarity_flip_physical{201}=0x9e
+serdes_core_tx_polarity_flip_physical{201}=0xdf
+serdes_core_rx_polarity_flip_physical{209}=0x17
+serdes_core_tx_polarity_flip_physical{209}=0xe9
+serdes_core_rx_polarity_flip_physical{217}=0xec
+serdes_core_tx_polarity_flip_physical{217}=0x68
+
+dport_map_port_20=1
+dport_map_port_24=2
+dport_map_port_28=3
+dport_map_port_32=4
+dport_map_port_40=5
+dport_map_port_44=6
+dport_map_port_48=7
+dport_map_port_52=8
+dport_map_port_1=9
+dport_map_port_5=10
+dport_map_port_9=11
+dport_map_port_13=12
+dport_map_port_60=13
+dport_map_port_64=14
+dport_map_port_68=15
+dport_map_port_72=16
+dport_map_port_80=17
+dport_map_port_84=18
+dport_map_port_88=19
+dport_map_port_92=20
+dport_map_port_140=21
+dport_map_port_144=22
+dport_map_port_148=23
+dport_map_port_152=24
+dport_map_port_100=25
+dport_map_port_104=26
+dport_map_port_108=27
+dport_map_port_112=28
+dport_map_port_120=29
+dport_map_port_124=30
+dport_map_port_128=31
+dport_map_port_132=32
+
+dport_map_port_38=33
+dport_map_port_118=34
+
+
+
+serdes_lane_config_media_type_20=copper
+serdes_lane_config_media_type_24=copper
+serdes_lane_config_media_type_28=copper
+serdes_lane_config_media_type_32=copper
+serdes_lane_config_media_type_40=copper
+serdes_lane_config_media_type_44=copper
+serdes_lane_config_media_type_48=copper
+serdes_lane_config_media_type_52=copper
+serdes_lane_config_media_type_1=copper
+serdes_lane_config_media_type_5=copper
+serdes_lane_config_media_type_9=copper
+serdes_lane_config_media_type_13=copper
+serdes_lane_config_media_type_60=copper
+serdes_lane_config_media_type_64=copper
+serdes_lane_config_media_type_68=copper
+serdes_lane_config_media_type_72=copper
+serdes_lane_config_media_type_80=copper
+serdes_lane_config_media_type_84=copper
+serdes_lane_config_media_type_88=copper
+serdes_lane_config_media_type_92=copper
+serdes_lane_config_media_type_140=copper
+serdes_lane_config_media_type_144=copper
+serdes_lane_config_media_type_148=copper
+serdes_lane_config_media_type_152=copper
+serdes_lane_config_media_type_100=copper
+serdes_lane_config_media_type_104=copper
+serdes_lane_config_media_type_108=copper
+serdes_lane_config_media_type_112=copper
+serdes_lane_config_media_type_120=copper
+serdes_lane_config_media_type_124=copper
+serdes_lane_config_media_type_128=copper
+serdes_lane_config_media_type_132=copper
+
+
+core_clock_frequency=1325
+dpr_clock_frequency=1000
+device_clock_frequency=1325
+port_flex_enable=1
+
+#firmware load method, use fast load
+load_firmware=0x2
+
+