Chip, boot, warm boot and diagnostics
Clocks, the Cancun/flex package, memory caching and scanning (soft-error protection), warm-boot storage, module start-up and diag-shell behaviour.
Set in several SONiC Trident 3 HWSKU files: cancun_dir, core_clock_frequency, disable_pcie_firmware_check, dpp_clock_ratio, help_cli_enable, mem_cache_enable, mem_scan_enable, memlist_enable, os, parity_correction, parity_enable, reglist_enable, scache_filename, skip_L2_USER_ENTRY, sram_scan_enable, stable_location, stable_size, table_dma_enable, warmboot_knet_shutdown_mode.
- bcm_sdk_diag_run
- Type:
- string
- bist_timeout_msec
- Type:
- number
Memory Built-In-Self-Test (BIST) timeout in milliseconds
- board_name
- Type:
- string
Board driver name
- cache_coherency_check
- Type:
- number
- SONiC:
set in 1 Trident 3 HWSKU file;
0
- cancun_debug_mode
- Type:
- number
- Default:
0
- cancun_dir
- Type:
- string
Directory with the Cancun (flex pipeline) package files. On SONiC the SAI uses
sai_load_hw_configinstead.- SONiC:
set in 3 Trident 3 HWSKU files;
/usr/share/sonic/platform/cancun/sdk_6.5.16/
- cancun_load_skip
- Type:
- number
- Default:
0
- cfap_tests
- Type:
- number
Select memory tests run by cfapinit (default MT_PAT_FIVES and MT_PAT_AS)
- clear_on_hw_resetting
- Type:
- number
- core_clock_frequency
- Type:
- number
Core clock in MHz; an unsupported value is ignored. Dell S5232F files set 1525.
- SONiC:
set in 39 Trident 3 HWSKU files;
1525,893,445
- custom_feature
- Type:
- number
Customer-specific features. Is used with a propery name suffix per feature. features will likely be specific to a certain device type.
- Forms:
custom_feature_cmicx_ls_hw_cfg_async_enable<N>,custom_feature_cpu_port_priorities<N>,custom_feature_ptp_cosq_port<N>,custom_feature_unet_channels<N>
- custom_feature_shel_arm_enable
- Type:
- number
- Default:
0
- dcb_intr_mitigate_enable
- Type:
- number
Packet DMA interrupts should be mitigated to improve performance
- delay_core_pll_lock
- Type:
- number
- diag_comma
- Type:
- number
ASCII comma character for show counters Use 44 for comma, 46 for period, 0 for none
- diag_lb_fill_rx
- Type:
- number
Diagnostics loopback - if set to TRUE, all receive buffers are filled with 0xdeadbeef before DMAing into them. It is slow, but then you will know if loopback miscompares are due to skipped PCI writes.
- diag_lb_packet_timeout
- Type:
- number
Diagnostics loopback (tr 17 through tr 24) timeout in seconds for loopback packet reception
- diag_pw_buffer_size
- Type:
- number
When set to >= 68, packet watcher will run in truncating mode, allocating smaller Rx buffers and accepting oversized packets on all Rx DMA channels.
- diag_pw_thread_pri
- Type:
- number
Packet watcher thread priority
- diag_shell_exit_do_nothing
- Type:
- number
Do nothing when exit diag shell without “clean” option
- diag_shell_use_slam
- Type:
- number
Use a bulk memory operation when writing multiple table entries in the CLI.
- diag_tabs
- Type:
- number
Tab width for diagnostics (especially ‘show counters’)
- disable_pcie_firmware_check
- Type:
- number
- SONiC:
set in 6 Trident 3 HWSKU files;
1
- dpp_clock_ratio
- Type:
- string
Ratio between the data-path pipeline clock and the core clock, as
<n>:<m>(2:3in Dell S5232F files).- SONiC:
set in 33 Trident 3 HWSKU files;
2:3
- dpr_clock_frequency
- Type:
- number
DPR clock frequency applied to switch chip, any unsupported frequency will be ignored.
- edk_init_disable
- Type:
- number
- Type:
- string
Specifies egress objects sharing same pool or using exclusive pool. Example: egr_share_flex_counter_pool=split(vlan,vfi) make egr_vlan, egr_vfi use exclusive pool. egr_share_flex_counter_pool=share(vlan,vfi) make egr_vlan, egr_vfi use same pool. An object can appear in both share case and split case, but in each case it can appear one time at most. Use token between each groups and use comma between each objects. eg: egr_share_flex_counter_pool=split(A,B,C);share(C,D); Some objects may use the same HW table, so only the first one will take effect. All valid egress object name: port, vlan, vlanxlate, vfi, l3intf, mimlookupid, l2gre, vxlan, l3nat, niv, wlan, mim.
- enhanced_ser_correction_event_report
- Type:
- number
- Default:
0
This soc property is used to enable enhanced SER correction event report mechanism (i.e. parity correction/ECC 1-bit correction/ECC 2-bit correction event are identified). 0 => Use the traditional SER correction event report mechanism: Report event with SOC_SWITCH_EVENT_DATA_ERROR_CORRECTED type for both parity and ECC error correction(including 1-bit and 2-bit). 1 => Use enhanced SER correction event report mechanism: Report event with SOC_SWITCH_EVENT_DATA_ERROR_ECC_1BIT_CORRECTED type for ECC 1-bit error correction. Report event with SOC_SWITCH_EVENT_DATA_ERROR_ECC_2BIT_CORRECTED type for ECC 2-bit error correction. Report event with SOC_SWITCH_EVENT_DATA_ERROR_PARITY_CORRECTED type for parity error correction.
- fail_on_unsupported_attribute
- Type:
- number
- Default:
0
- failover_fixed_nh_offset_enable
- Type:
- number
Enable Tomahawk3-like L3/MPLS failover (protection switching) with fixed next hop offset from primary NH on EGR_L3_NEXT_HOP table. Set value 1 to enabled the feature and half of EGR_L3_NEXT_HOP is reserved for possible failover usage. Default value is 0 which disable the fixed next hop offset failover.
- fc_coe_data_offset
- Type:
- number
- Default:
24
define offset in bytes from after Ethernet Frame for COE FC data. Valid range = [0-31]
- fifo_delay_value
- Type:
- number
- fifo_overflow_threshhold
- Type:
- number
- flex_stat_port_group_support
- Type:
- number
- Default:
0
Enable grouping ports together and assigning single stat identifier. Default value is 0 which disables this feature.
- Type:
- number
- Default:
0
Once enabled, it will allow sharing flex statid across accounting objects. SDK will provide cumulative count for accounting objects sharing statid. User has to take great precaution in not sharing statid across conflicting accounting objects. Currently this config variable enables sharing statid for port module only.
- force_read_through
- Type:
- number
- help_cli_enable
- Type:
- number
Print a command’s usage after
help <cmd>,? <cmd>or unrecognised parameters; 0 suppresses it.- SONiC:
set in 10 Trident 3 HWSKU files;
1- On Seastone2:
help_cli_enable=1
- ignore_device_unique_ids
- Type:
- list
- Type:
- string
Specifies ingress objects sharing same pool or using exclusive pool. Example: ing_share_flex_counter_pool=split(vlan,vfi) make vlan, vfi use exclusive pool. ing_share_flex_counter_pool=share(vlan,vfi) make vlan, vfi use same pool. An object can appear in both share case and split case, but in each case it can appear one time at most. Use token between each groups and use comma between each objects. eg: ing_share_flex_counter_pool=split(A,B,C);share(C,D); Some objects may use the same HW table, so only the first one will take effect. All valid object name: port, vlan, vlanxlate, vfi, l3intf, vrf, policy, mplsvclabel, mplsswitchlabel, mplsfrrlabel, l3host, trill, mimlookupid, l2gre, extpolicy, vxlan, vsan, fcoe, l3route, niv, ipmc.
- init_all_modules
- Type:
- number
Initialise all SDK modules at
init bcm, including those not needed by the application.
- ipep_clock_gating_disable
- Type:
- number
- Default:
0
This soc property is used to disable IP-EP clock gating for BCM5687x, BCM5677x, BCM5637x, BCM5647x and BCM5627x devices. This needs to be set if visibility feature is being used Example: ipep_clock_gating_disable=0 -> Default, enables clock gating during init for power saving ipep_clock_gating_disable=1 -> Disables IPEP clock gating during init, MUST for visibility feature.
- load_firmware
- Type:
- number
Debug option for SerDes firmware loading: load method, checksum and verification. Leave unset.
- Forms:
load_firmware_<port>,load_firmware_<type>,load_firmware
- low_power
- Type:
- number
Enable all of the low power modes that the device/sw combination supported. 1 means enabling low power mode; 0 means disabling low power mode.
- lw_set_up_reinit_skip
- Type:
- number
- mem_cache_enable
- Type:
- number
- Default:
1
Keep a software copy of hardware tables for faster reads and soft-error correction. The SAI sets it to 1 if the file does not; an explicit 0 is kept.
- SONiC:
set in 34 Trident 3 HWSKU files;
0,1- On Seastone2:
mem_cache_enable=1
- mem_check_max_override
- Type:
- number
- Default:
0
Check for mem max override properties and reconfigure memories.
- mem_check_nocache_override
- Type:
- number
- Default:
0
Check for mem no-cache override properties and avoid caching.
- mem_clear_chunk_size
- Type:
- number
- Default:
4096
The size in bytes of memory to be used when clearing a table using bulk table operations. The number of table entries cleared in one operation will vary by table entry width.
- mem_clear_hw_acceleration
- Type:
- number
- Default:
1
Clear tables using the fastest method supported by the device.
- mem_nocache_<MEMORY>
- Type:
- number
Exclude one memory (named in upper case, as in
listmem) from the SDK’s software table cache whenmem_cache_enableis on.- Names:
mem_nocache_L3_DEFIP,mem_nocache_L3_DEFIP_ALPM_IPV4,mem_nocache_L3_DEFIP_ALPM_IPV4_1,mem_nocache_L3_DEFIP_ALPM_IPV6_128,mem_nocache_L3_DEFIP_ALPM_IPV6_64,mem_nocache_L3_DEFIP_ALPM_IPV6_64_1,mem_nocache_L3_DEFIP_AUX_TABLE,mem_nocache_L3_DEFIP_PAIR_128
- mem_scan_chunk_size
- Type:
- number
Specifies the number of table entries to be retrieved at a time during memory scanning.
- mem_scan_enable
- Type:
- number
Run the background memory scan that detects and corrects soft errors in tables.
- SONiC:
set in 3 Trident 3 HWSKU files;
1
- mem_scan_interval
- Type:
- number
Specifies the memory scan repeat interval.
- mem_scan_non_tcam_iterations
- Type:
- number
Specifies how many non-TCAM cycles to perform for every complete TCAM sweep in memscan.
- mem_scan_rate
- Type:
- number
Specifies the memory scan rate in terms of entries per pass.
- mem_scan_thread_pri
- Type:
- number
Specifies the priority of the memory scanning and error correction thread
- memcache_in_scache
- Type:
- number
- memlist_enable
- Type:
- number
Allow
listmemto list memories; read when the command runs.- SONiC:
set in 10 Trident 3 HWSKU files;
1- On Seastone2:
memlist_enable=1; not read by the SDK on that switch
- num_subports
- Type:
- number
- Default:
0
Maximum number of subports or packet processing ports per physical port. This can be used to distribute the total number of available subports across physical ports(cascaded port) suffix with .portX, .geX or _geX.
- os
- Type:
- string
Operating system of the diag application (
os=unix). Found in many SONiC Trident 3 files; the SAI does not use it.- SONiC:
set in 20 Trident 3 HWSKU files;
unix
- parity_correction
- Type:
- number
Correct parity and ECC errors from the software table cache when they are detected.
- SONiC:
set in 10 Trident 3 HWSKU files;
1
- parity_counter_clear
- Type:
- number
- Default:
1
Control to clear or restore(last value accumulated in s/w) counter on parity error
- parity_enable
- Type:
- number
Enable parity and ECC checking of on-chip memories and the soft-error interrupt handling.
- Forms:
parity_enable_<port>,parity_enable_<type>,parity_enable- SONiC:
set in 23 Trident 3 HWSKU files;
1,0- On Seastone2:
parity_enable=0
- reg_ser_error_assert
- Type:
- number
- reglist_enable
- Type:
- number
Allow
listregto list registers; read when the command runs.- SONiC:
set in 10 Trident 3 HWSKU files;
1- On Seastone2:
reglist_enable=1; not read by the SDK on that switch
- scache_filename
- Type:
- string
Warm-boot state file. The SAI sets it from its own configuration (on SONiC
/var/warmboot/brcm_bcm_scache) before reading the file.- SONiC:
set in 7 Trident 3 HWSKU files;
/var/warmboot/wbscache,/tmp/scache- On Seastone2:
scache_filename=/var/warmboot/brcm_bcm_scache
- ser_log_print_one
- Type:
- number
- Default:
0
- skip_<module>_init
- Type:
- number
Skip the start-up initialisation of one SDK module, for example
skip_l3_init=1. The module is then unusable until it is initialised by hand. For bring-up and debugging only; never set on a SONiC switch.- Names:
skip_auth_init,skip_common_init,skip_cosq_init,skip_field_init,skip_hash_init,skip_ipmc_init,skip_l2_vlan_init,skip_l3_init,skip_mcast_init,skip_mim_init,skip_mirror_init,skip_mpls_init,skip_partial_port_hw_init,skip_port_hw_init,skip_qos_init,skip_stack_init,skip_stat_init,skip_trunk_init
- skip_cancun_cch_reg_check
- Type:
- number
- skip_L2_USER_ENTRY
- Type:
- number
- Default:
0
Skip creating the default L2 user entries at start-up.
- SONiC:
set in 10 Trident 3 HWSKU files;
0
- skip_system_scrub
- Type:
- number
- Default:
0
- soc_family
- Type:
- string
Map a chip to a family. This is used in order to map several chips which require similar soc properties to a family, and than use the family as the property suffix. E.g, map chip X and Y to family Z, and than one can define property.Z than will be recognized by both X and Y.
- soc_mem_bulk_schan_op_mode
- Type:
- string
Specifies S-Channel method/engine used for SOC memory bulk operations soc_mem_bulk_XXX(). FIFO - S-Channel FIFO engine is SBUS master. PIO - S-Channel PIO engine is SBUS master. FIFO engine is the recommended as default SBUS master for better performance. PIO mode is useful for debugging and performance comparison.
- soc_skip_reset
- Type:
- number
- Default:
0
Skip hardware reset (CMIC_CONFIG.RESET_CPS) when calling soc_reset(). This means that e.g. ‘init soc’ will NOT perform a hard reset.
- sram_scan_chunk_size
- Type:
- number
Specifies the number of table entries to be retrieved at a time during sram scanning.
- sram_scan_enable
- Type:
- number
- Default:
1
Run the background SRAM soft-error scan. The SAI sets it to 1 if the file does not.
- SONiC:
set in 3 Trident 3 HWSKU files;
0- On Seastone2:
sram_scan_enable=1; not read by the SDK on that switch
- sram_scan_interval
- Type:
- number
Specifies the sram scan repeat interval.
- sram_scan_rate
- Type:
- number
Specifies the sram scan rate in terms of entries per pass.
- sram_scan_thread_pri
- Type:
- number
Specifies the priority of the sram scanning and error correction thread
- ss_ignore_pbmp
- Type:
- number
Specifies the port bitmap of the ports on which system snake should be skipped.
- stable_filename
- Type:
- string
File used for warm-boot state when
stable_locationis 3.
- stable_flags
- Type:
- number
Specify the stable cache flags to configure Warm Boot operations
- stable_location
- Type:
- number
Where warm-boot state is kept (memory, file or shared memory).
- SONiC:
set in 4 Trident 3 HWSKU files;
3
- stable_size
- Type:
- number
Size in bytes of the warm-boot state area (scache). SONiC files use
0x5500000.- SONiC:
set in 44 Trident 3 HWSKU files;
0x5500000,0x55000000,0x6400000- On Seastone2:
stable_size=0x5500000
- table_dma_enable
- Type:
- number
- Default:
1
Read whole tables by DMA instead of one entry at a time.
- SONiC:
set in 8 Trident 3 HWSKU files;
1
- temp_monitor_select
- Type:
- number
Select which on-chip temperature sensors the SDK monitors.
- uat_mode
- Type:
- number
- Default:
0
- warmboot_event_handler_enable
- Type:
- number
Register Warm Boot event handler callback routine
- warmboot_knet_shutdown_mode
- Type:
- number
- Default:
0
This soc property is to indicate if shutdown KNET during doing warmboot. 0-shutdown by default 1-no shutdown
- SONiC:
set in 4 Trident 3 HWSKU files;
1