Skip to content

Commit

Permalink
DellEMC: Initial commit for S5224F platform support (#8717)
Browse files Browse the repository at this point in the history
Why I did it
Added support for the device S5224F

How I did it
Implemented the support for the platform S5224F
Switch Vendor: DellEMC
Switch SKU: S5224F-ON
ASIC Vendor: Broadcom
SONiC Image: sonic-broadcom.bin

How to verify it
Verified the show platform/interface commands
  • Loading branch information
arunlk-dell committed Sep 26, 2021
1 parent b0b0ba8 commit c668f2a
Show file tree
Hide file tree
Showing 52 changed files with 6,677 additions and 1 deletion.
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
{%- set default_topo = 't1' %}
{%- include 'buffers_config.j2' %}
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@

{%- set default_cable = '5m' %}

{%- macro generate_buffer_pool_and_profiles() %}
"BUFFER_POOL": {
"ingress_lossless_pool": {
"size": "26531072",
"type": "ingress",
"mode": "dynamic",
"xoff": "6291456"
},
"egress_lossless_pool": {
"size": "32822528",
"type": "egress",
"mode": "static"
}
},
"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",
"mode": "static",
"static_th":"32822528"
},
"egress_lossy_profile": {
"pool":"[BUFFER_POOL|egress_lossless_pool]",
"size":"0",
"mode": "dynamic",
"dynamic_th":"3"
}
},
{%- endmacro %}
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@

{%- set default_cable = '40m' %}

{%- macro generate_buffer_pool_and_profiles() %}
"BUFFER_POOL": {
"ingress_lossless_pool": {
"size": "26531072",
"type": "ingress",
"mode": "dynamic",
"xoff": "6291456"
},
"egress_lossless_pool": {
"size": "32822528",
"type": "egress",
"mode": "static"
}
},
"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",
"mode": "static",
"static_th":"32822528"
},
"egress_lossy_profile": {
"pool":"[BUFFER_POOL|egress_lossless_pool]",
"size":"0",
"mode": "dynamic",
"dynamic_th":"3"
}
},
{%- endmacro %}
Binary file not shown.
Binary file not shown.
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
# PG lossless profiles.
# speed cable size xon xoff threshold xon_offset
10000 5m 1024 2048 46080 -3 2048
25000 5m 1024 2048 65024 -3 2048
40000 5m 1024 2048 77056 -3 2048
50000 5m 1024 2048 93440 -3 2048
100000 5m 1024 2048 162048 -3 2048
10000 40m 1024 2048 47360 -3 2048
25000 40m 1024 2048 67840 -3 2048
40000 40m 1024 2048 81664 -3 2048
50000 40m 1024 2048 99072 -3 2048
100000 40m 1024 2048 173568 -3 2048
10000 300m 1024 2048 57088 -3 2048
25000 300m 1024 2048 92672 -3 2048
40000 300m 1024 2048 121344 -3 2048
50000 300m 1024 2048 148736 -3 2048
100000 300m 1024 2048 272640 -3 2048
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
# name lanes alias index speed
Ethernet0 21 twentyfiveGigE1/1 1 25000
Ethernet1 22 twentyfiveGigE1/2 2 25000
Ethernet2 23 twentyfiveGigE1/3 3 25000
Ethernet3 24 twentyfiveGigE1/4 4 25000
Ethernet4 25 twentyfiveGigE1/5 5 25000
Ethernet5 26 twentyfiveGigE1/6 6 25000
Ethernet6 27 twentyfiveGigE1/7 7 25000
Ethernet7 28 twentyfiveGigE1/8 8 25000
Ethernet8 29 twentyfiveGigE1/9 9 25000
Ethernet9 30 twentyfiveGigE1/10 10 25000
Ethernet10 31 twentyfiveGigE1/11 11 25000
Ethernet11 32 twentyfiveGigE1/12 12 25000
Ethernet12 49 twentyfiveGigE1/13 13 25000
Ethernet13 50 twentyfiveGigE1/14 14 25000
Ethernet14 51 twentyfiveGigE1/15 15 25000
Ethernet15 52 twentyfiveGigE1/16 16 25000
Ethernet16 53 twentyfiveGigE1/17 17 25000
Ethernet17 54 twentyfiveGigE1/18 18 25000
Ethernet18 55 twentyfiveGigE1/19 19 25000
Ethernet19 56 twentyfiveGigE1/20 20 25000
Ethernet20 57 twentyfiveGigE1/21 21 25000
Ethernet21 58 twentyfiveGigE1/22 22 25000
Ethernet22 59 twentyfiveGigE1/23 23 25000
Ethernet23 60 twentyfiveGigE1/24 24 25000
Ethernet24 33,34,35,36 hundredGigE1/25 25 100000
Ethernet28 37,38,39,40 hundredGigE1/26 26 100000
Ethernet32 41,42,43,44 hundredGigE1/27 27 100000
Ethernet36 45,46,47,48 hundredGigE1/28 28 100000
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
{%- include 'qos_config.j2' %}
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
SAI_INIT_CONFIG_FILE=/usr/share/sonic/hwsku/td3-s5224f-25g.config.bcm
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
m0 load 0 0x0 /usr/share/sonic/hwsku/linkscan_led_fw.bin
m0 load 0 0x3800 /usr/share/sonic/hwsku/custom_led.bin
Original file line number Diff line number Diff line change
@@ -0,0 +1,237 @@
os=unix
portmap_1.0=21:25
portmap_2.0=22:25
portmap_3.0=23:25
portmap_4.0=24:25
portmap_5.0=25:25
portmap_6.0=26:25
portmap_7.0=27:25
portmap_8.0=28:25
portmap_9.0=29:25
portmap_10.0=30:25
portmap_11.0=31:25
portmap_12.0=32:25
portmap_13.0=33:100
portmap_17.0=37:100
portmap_47.0=41:100
portmap_51.0=45:100
portmap_35.0=49:25
portmap_36.0=50:25
portmap_37.0=51:25
portmap_38.0=52:25
portmap_39.0=53:25
portmap_40.0=54:25
portmap_41.0=55:25
portmap_42.0=56:25
portmap_43.0=57:25
portmap_44.0=58:25
portmap_45.0=59:25
portmap_46.0=60:25
phy_chain_tx_lane_map_physical{21.0}=0x0123
phy_chain_rx_lane_map_physical{21.0}=0x1032
phy_chain_tx_lane_map_physical{25.0}=0x0123
phy_chain_rx_lane_map_physical{25.0}=0x1032
phy_chain_tx_lane_map_physical{29.0}=0x0123
phy_chain_rx_lane_map_physical{29.0}=0x1032
phy_chain_tx_lane_map_physical{33.0}=0x0132
phy_chain_rx_lane_map_physical{33.0}=0x1302
phy_chain_tx_lane_map_physical{37.0}=0x2310
phy_chain_rx_lane_map_physical{37.0}=0x3201
phy_chain_tx_lane_map_physical{41.0}=0x3210
phy_chain_rx_lane_map_physical{41.0}=0x1032
phy_chain_tx_lane_map_physical{45.0}=0x2031
phy_chain_rx_lane_map_physical{45.0}=0x1320
phy_chain_tx_lane_map_physical{49.0}=0x3210
phy_chain_rx_lane_map_physical{49.0}=0x2301
phy_chain_tx_lane_map_physical{53.0}=0x3210
phy_chain_rx_lane_map_physical{53.0}=0x2301
phy_chain_tx_lane_map_physical{57.0}=0x3210
phy_chain_rx_lane_map_physical{57.0}=0x2301
phy_chain_tx_polarity_flip_physical{21.0}=0x0
phy_chain_rx_polarity_flip_physical{21.0}=0x1
phy_chain_tx_polarity_flip_physical{22.0}=0x1
phy_chain_rx_polarity_flip_physical{22.0}=0x0
phy_chain_tx_polarity_flip_physical{23.0}=0x0
phy_chain_rx_polarity_flip_physical{23.0}=0x1
phy_chain_tx_polarity_flip_physical{24.0}=0x1
phy_chain_rx_polarity_flip_physical{24.0}=0x0
phy_chain_tx_polarity_flip_physical{25.0}=0x0
phy_chain_rx_polarity_flip_physical{25.0}=0x1
phy_chain_tx_polarity_flip_physical{26.0}=0x1
phy_chain_rx_polarity_flip_physical{26.0}=0x0
phy_chain_tx_polarity_flip_physical{27.0}=0x0
phy_chain_rx_polarity_flip_physical{27.0}=0x1
phy_chain_tx_polarity_flip_physical{28.0}=0x1
phy_chain_rx_polarity_flip_physical{28.0}=0x0
phy_chain_tx_polarity_flip_physical{29.0}=0x0
phy_chain_rx_polarity_flip_physical{29.0}=0x1
phy_chain_tx_polarity_flip_physical{30.0}=0x1
phy_chain_rx_polarity_flip_physical{30.0}=0x0
phy_chain_tx_polarity_flip_physical{31.0}=0x0
phy_chain_rx_polarity_flip_physical{31.0}=0x1
phy_chain_tx_polarity_flip_physical{32.0}=0x1
phy_chain_rx_polarity_flip_physical{32.0}=0x0
phy_chain_tx_polarity_flip_physical{33.0}=0x1
phy_chain_rx_polarity_flip_physical{33.0}=0x0
phy_chain_tx_polarity_flip_physical{34.0}=0x0
phy_chain_rx_polarity_flip_physical{34.0}=0x1
phy_chain_tx_polarity_flip_physical{35.0}=0x1
phy_chain_rx_polarity_flip_physical{35.0}=0x1
phy_chain_tx_polarity_flip_physical{36.0}=0x1
phy_chain_rx_polarity_flip_physical{36.0}=0x1
phy_chain_tx_polarity_flip_physical{37.0}=0x0
phy_chain_rx_polarity_flip_physical{37.0}=0x1
phy_chain_tx_polarity_flip_physical{38.0}=0x1
phy_chain_rx_polarity_flip_physical{38.0}=0x0
phy_chain_tx_polarity_flip_physical{39.0}=0x1
phy_chain_rx_polarity_flip_physical{39.0}=0x0
phy_chain_tx_polarity_flip_physical{40.0}=0x0
phy_chain_rx_polarity_flip_physical{40.0}=0x0
phy_chain_tx_polarity_flip_physical{41.0}=0x0
phy_chain_rx_polarity_flip_physical{41.0}=0x0
phy_chain_tx_polarity_flip_physical{42.0}=0x1
phy_chain_rx_polarity_flip_physical{42.0}=0x1
phy_chain_tx_polarity_flip_physical{43.0}=0x1
phy_chain_rx_polarity_flip_physical{43.0}=0x0
phy_chain_tx_polarity_flip_physical{44.0}=0x1
phy_chain_rx_polarity_flip_physical{44.0}=0x1
phy_chain_tx_polarity_flip_physical{45.0}=0x0
phy_chain_rx_polarity_flip_physical{45.0}=0x0
phy_chain_tx_polarity_flip_physical{46.0}=0x0
phy_chain_rx_polarity_flip_physical{46.0}=0x1
phy_chain_tx_polarity_flip_physical{47.0}=0x0
phy_chain_rx_polarity_flip_physical{47.0}=0x1
phy_chain_tx_polarity_flip_physical{48.0}=0x1
phy_chain_rx_polarity_flip_physical{48.0}=0x1
phy_chain_tx_polarity_flip_physical{49.0}=0x0
phy_chain_rx_polarity_flip_physical{49.0}=0x1
phy_chain_tx_polarity_flip_physical{50.0}=0x1
phy_chain_rx_polarity_flip_physical{50.0}=0x0
phy_chain_tx_polarity_flip_physical{51.0}=0x0
phy_chain_rx_polarity_flip_physical{51.0}=0x1
phy_chain_tx_polarity_flip_physical{52.0}=0x1
phy_chain_rx_polarity_flip_physical{52.0}=0x0
phy_chain_tx_polarity_flip_physical{53.0}=0x0
phy_chain_rx_polarity_flip_physical{53.0}=0x1
phy_chain_tx_polarity_flip_physical{54.0}=0x1
phy_chain_rx_polarity_flip_physical{54.0}=0x0
phy_chain_tx_polarity_flip_physical{55.0}=0x0
phy_chain_rx_polarity_flip_physical{55.0}=0x1
phy_chain_tx_polarity_flip_physical{56.0}=0x1
phy_chain_rx_polarity_flip_physical{56.0}=0x0
phy_chain_tx_polarity_flip_physical{57.0}=0x0
phy_chain_rx_polarity_flip_physical{57.0}=0x1
phy_chain_tx_polarity_flip_physical{58.0}=0x1
phy_chain_rx_polarity_flip_physical{58.0}=0x0
phy_chain_tx_polarity_flip_physical{59.0}=0x0
phy_chain_rx_polarity_flip_physical{59.0}=0x1
phy_chain_tx_polarity_flip_physical{60.0}=0x1
phy_chain_rx_polarity_flip_physical{60.0}=0x0
dport_map_port_1=1
dport_map_port_2=2
dport_map_port_3=3
dport_map_port_4=4
dport_map_port_5=5
dport_map_port_6=6
dport_map_port_7=7
dport_map_port_8=8
dport_map_port_9=9
dport_map_port_10=10
dport_map_port_11=11
dport_map_port_12=12
dport_map_port_35=13
dport_map_port_36=14
dport_map_port_37=15
dport_map_port_38=16
dport_map_port_39=17
dport_map_port_40=18
dport_map_port_41=19
dport_map_port_42=20
dport_map_port_43=21
dport_map_port_44=22
dport_map_port_45=23
dport_map_port_46=24
dport_map_port_13=25
dport_map_port_14=26
dport_map_port_15=27
dport_map_port_16=28
dport_map_port_17=29
dport_map_port_18=30
dport_map_port_19=31
dport_map_port_20=32
dport_map_port_47=33
dport_map_port_48=34
dport_map_port_49=35
dport_map_port_50=36
dport_map_port_51=37
dport_map_port_52=38
dport_map_port_53=39
dport_map_port_54=40

dpp_clock_ratio=2:3
oversubscribe_mode=1
core_clock_frequency=1525
pbmp_oversubscribe=0x7fff9fffffffffffffffe
pbmp_xport_xe=0x7fff9fffffffffffffffe
port_flex_enable=1
phy_an_c73=3

l2xmsg_mode=1

#Need for mac learn scale
l2xmsg_hostbuf_size=16384
module_64ports=0

#Interrupts and Parity
max_vp_lags=0

schan_intr_enable=0
tdma_timeout_usec=5000000

# Following added by BRCM
stable_size=0x5500000

#Default L3 profile
l2_mem_entries=32768
l3_alpm_enable=2
l3_alpm_ipv6_128b_bkt_rsvd=1

#check correct value
l2_mem_entries=40960
l3_mem_entries=40960

#Tunnels
use_all_splithorizon_groups=1
sai_tunnel_support=1
bcm_tunnel_term_compatible_mode=1

ptp_ts_pll_fref=50000000
ptp_bs_fref_0=50000000
ptp_bs_fref_1=50000000

#RIOT Enable
riot_enable=1
riot_overlay_l3_intf_mem_size=8192
riot_overlay_l3_egress_mem_size=32768
l3_ecmp_levels=2
riot_overlay_ecmp_resilient_hash_size=16384

sai_preinit_cmd_file=/usr/share/sonic/hwsku/sai_preinit_cmd.soc

#New Additions
pfc_deadlock_seq_control=1

#Common configs from broadcom/x86_64-broadcom_common/x86_64-broadcom_b77/broadcom-sonic-td3.config.bcm (Lower version of Td3 (0xb771))
mem_cache_enable=0
ifp_inports_support_enable=1
ipv6_lpm_128b_enable=0x1
l3_max_ecmp_mode=1
lpm_scaling_enable=0
bcm_num_cos=10
default_cpu_tx_queue=9
mmu_lossless=0
host_as_route_disable=1
sai_eapp_config_file=/etc/broadcom/eapps_cfg.json
sai_fast_convergence_support=1
flow_init_mode=1
sai_load_hw_config=/usr/lib/cancun/
1 change: 1 addition & 0 deletions device/dell/x86_64-dellemc_s5224f_c3538-r0/default_sku
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
DellEMC-S5224f-P-25G t1
2 changes: 2 additions & 0 deletions device/dell/x86_64-dellemc_s5224f_c3538-r0/installer.conf
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
CONSOLE_PORT=0x3f8
CONSOLE_DEV=0
6 changes: 6 additions & 0 deletions device/dell/x86_64-dellemc_s5224f_c3538-r0/led_proc_init.soc
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
# LED microprocessor initialization for Dell S5224
#
#
#Led0
led auto on
led start
Loading

0 comments on commit c668f2a

Please sign in to comment.