Commit Graph

32 Commits

Author SHA1 Message Date
Mai Bui
ea101a90d5
[device/delta] Mitigation for command injection vulnerability (#11865)
#### Why I did it
`os` execution functions are not secure against maliciously constructed input.
#### How I did it
Use `subprocess` module
2022-10-13 21:11:51 -07:00
gechiang
ddfe87a71a
[BRCMSAI 6.0.0.13-1] Fix Cancun file directory at new location causing TD3 platform boot issue (#9922) 2022-02-07 08:56:06 -08:00
Qi Luo
add9b651b6
Add platform_asic file to each platform folder in sonic-device-data based package (#8542)
#### Why I did it
Add platform_asic file to each platform folder in sonic-device-data package. The file content will be used as the ground truth of mapping from PLATFORM_STRING to switch ASIC family.

One use case of the mapping is to prevent installing a wrong image, which targets for other ASIC platforms. For example, currently we have several ONIE images naming as sonic-*.bin, it's easy to mistakenly install the wrong image. With this mapping built into image, we could fetch the ONIE platform string, and figure out which ASIC it is using, and check we are installing the correct image.

After this PR merged, each platform vendor has to add one mandatory text file  `device/PLATFORM_VENDOR/PLATFORM_STRING/platform_asic`, with the content of the platform's switch ASIC family.

I will update https://github.com/Azure/SONiC/wiki/Porting-Guide after this PR is merged.

You can get a list of the ASIC platforms by `ls -b platform | cat`. Currently the options are
```
barefoot
broadcom
cavium
centec
centec-arm64
generic
innovium
marvell
marvell-arm64
marvell-armhf
mellanox
nephos
p4
vs
```

Also support
```
broadcom-dnx
```

#### How I did it

#### How to verify it
Test one image on DUT. And check the folders under `/usr/share/sonic/device`
2021-10-08 19:27:48 -07:00
Ashok Daparthi-Dell
6cbdf11e53
SONIC QOS YANG - Remove qos tables field value refernce format (#7752)
Depends on Azure/sonic-utilities#1626
Depends on Azure/sonic-swss#1754

QOS tables in config db used ABNF format i.e "[TABLE_NAME|name] to refer fieldvalue to other qos tables.

Example:
Config DB:
"Ethernet92|3": {
"scheduler": "[SCHEDULER|scheduler.1]",
"wred_profile": "[WRED_PROFILE|AZURE_LOSSLESS]"
},
"Ethernet0|0": {
"profile": "[BUFFER_PROFILE|ingress_lossy_profile]"
},
"Ethernet0": {
"dscp_to_tc_map": "[DSCP_TO_TC_MAP|AZURE]",
"pfc_enable": "3,4",
"pfc_to_queue_map": "[MAP_PFC_PRIORITY_TO_QUEUE|AZURE]",
"tc_to_pg_map": "[TC_TO_PRIORITY_GROUP_MAP|AZURE]",
"tc_to_queue_map": "[TC_TO_QUEUE_MAP|AZURE]"
},

This format is not consistent with other DB schema followed in sonic.
And also this reference in DB is not required, This is taken care by YANG "leafref".

Removed this format from all platform files to consistent with other sonic db schema.
Example:
"Ethernet92|3": {
"scheduler": "scheduler.1",
"wred_profile": "AZURE_LOSSLESS"
},

Dependent pull requests:
#7752 - To modify platfrom files
#7281 - Yang model
Azure/sonic-utilities#1626 - DB migration
Azure/sonic-swss#1754 - swss change to remove ABNF format
2021-09-28 09:21:24 -07:00
gechiang
c98e8d6690
[BCM Config] Update TD3 bcm.config files to use ISSU capable premium CANCUN 6.4.1 (#6651) 2021-02-02 21:48:26 -08:00
Mahesh Maddikayala
908884b0e8
[broadcom]: Add BCM config variable that contains premier cancun firmware path (#6611)
BRCM SDK 6.5.21 includes firmware updates (premier cancun) for TD3 platforms. The firmware update is required on TD3 platforms, which is packaged with BCMSAI 4.3.0.10.

**- How I did it**

Updated BCM config with a new variable that specifies the firmware package path. SDK uses this path to locate firmware packages and load during cold boot.

**- How to verify it**

 
bsv
BRCM SAI ver: [4.3.0.10], OCP SAI ver: [1.7.1], SDK ver: [sdk-6.5.21] CANCUN ver: [5.3.3]
drivshell>
admin@str2-7050cx3-acs-02:~$ bcmsh
Press Enter to show prompt.
Press Ctrl+C to exit.
NOTICE: Only one bcmsh or bcmcmd can connect to the shell at same time.
 
 
drivshell>cancun stat
cancun stat
UNIT0 CANCUN:
        CIH: LOADED
        Ver: 06.06.01
 
        CMH: LOADED
        Ver: 06.06.01
        SDK Ver: 06.05.21
 
        CCH: LOADED
       Ver: 06.06.01
        SDK Ver: 06.05.21
 
        CEH: LOADED
        Ver: 06.06.01
        SDK Ver: 06.05.21
 
drivshell>
2021-01-30 14:41:17 -08:00
Joe LeVeque
7f4ab8fbd8
[sonic-utilities] Update submodule; Build and install as a Python 3 wheel (#5926)
Submodule updates include the following commits:

* src/sonic-utilities 9dc58ea...f9eb739 (18):
  > Remove unnecessary calls to str.encode() now that the package is Python 3; Fix deprecation warning (#1260)
  > [generate_dump] Ignoring file/directory not found Errors (#1201)
  > Fixed porstat rate and util issues (#1140)
  > fix error: interface counters is mismatch after warm-reboot (#1099)
  > Remove unnecessary calls to str.decode() now that the package is Python 3 (#1255)
  > [acl-loader] Make list sorting compliant with Python 3 (#1257)
  > Replace hard-coded fast-reboot with variable. And some typo corrections (#1254)
  > [configlet][portconfig] Remove calls to dict.has_key() which is not available in Python 3 (#1247)
  > Remove unnecessary conversions to list() and calls to dict.keys() (#1243)
  > Clean up LGTM alerts (#1239)
  > Add 'requests' as install dependency in setup.py (#1240)
  > Convert to Python 3 (#1128)
  > Fix mock SonicV2Connector in python3: use decode_responses mode so caller code will be the same as python2 (#1238)
  > [tests] Do not trim from PATH if we did not append to it; Clean up/fix shebangs in scripts (#1233)
  > Updates to bgp config and show commands with BGP_INTERNAL_NEIGHBOR table (#1224)
  > [cli]: NAT show commands newline issue after migrated to Python3 (#1204)
  > [doc]: Update Command-Reference.md (#1231)
  > Added 'import sys' in feature.py file (#1232)

* src/sonic-py-swsssdk 9d9f0c6...1664be9 (2):
  > Fix: no need to decode() after redis client scan, so it will work for both python2 and python3 (#96)
  > FieldValueMap `contains`(`in`)  will also work when migrated to libswsscommon(C++ with SWIG wrapper) (#94)

- Also fix Python 3-related issues:
    - Use integer (floor) division in config_samples.py (sonic-config-engine)
    - Replace print statement with print function in eeprom.py plugin for x86_64-kvm_x86_64-r0 platform
    - Update all platform plugins to be compatible with both Python 2 and Python 3
    - Remove shebangs from plugins files which are not intended to be executable
    - Replace tabs with spaces in Python plugin files and fix alignment, because Python 3 is more strict
    - Remove trailing whitespace from plugins files
2020-11-25 10:28:36 -08:00
abdosi
a6a10f05b7
In SAI 3.5 by default we are supporting 256 Group with 64 Memeber each. (#5400)
However in SAI 3.7 default behaviout got changes to 128 Group and 128
    Memeber each.

    This change is to make sure we are using same ECMP Group/Memeber Per
    Group for 3.7 also so that behaviour is consistent.

Signed-off-by: Abhishek Dosi <abdosi@microsoft.com>
2020-09-22 11:21:12 -07:00
hanstseng
c6f714ba81
[delta] Support front-panel LEDs (#5348)
Support controlling front-panel LEDs on x86_64-delta_ag9032v2a-r0 platform

Signed-off-by: hans-tseng <hans.tseng@deltaww.com>
2020-09-14 10:58:59 -07:00
abdosi
b6efb49817
Update bcm soc property bcm_num_cos from 8 to 10 (#5314)
as needed by SAI 3.7 and above. Without this change
Warmboot fails from 3.5 to 3.7 as Braodcoam Datastructure
gets corrupted after warm-boot.

Signed-off-by: Abhishek Dosi <abdosi@microsoft.com>
2020-09-04 07:40:17 -07:00
zoe-kuan
fa809c86dc
[platform/delta]: Add a new supported platform, Delta-agc032 (#4602)
* [platform]: Add a new supported platform, Delta-agc032

Switch Vendor: Delta
Switch SKU: Delta-agc032
CPU: BROADWELL-DE
ASIC Vendor: Broadcom
Switch ASIC: Tomahawk3, BCM56980
Port Configuration: 32x400G + 2x10G

- What I did
Add a new Delta platform Delta-agc032.

- How I did it
Add files by following SONiC Porting Guide.

- How to verify it
1. decode-syseeprom
2. sensors
3. psuutil
4. sfputil
5. show interface status
6. bcmcmd

Signed-off-by: zoe-kuan <ZOE.KUAN@deltaww.com>
2020-05-27 09:33:02 -07:00
hans-tseng
7a7e5c377b [devices/delta]: Update the port_config.ini & th2-ag9064-64x100G.config.bcm (#3615)
1.  add the speed and index in port_config.ini
2. rmove the unuse port in the config.bcm  file

Signed-off-by: hans-tseng <hans.tseng@deltaww.com>
2019-10-16 13:56:34 -07:00
JohnsonYJLu
41e855c211 [devices]: fixed sfputil error on ag9032 (#3579)
Signed-off-by: johnson <JOHNSON.LU@deltaww.com>
2019-10-09 13:53:07 -07:00
Ying Xie
eeeda28434
[bcm config] enable sram scan (#3558)
Per Broadcom's recommendations.

Signed-off-by: Ying Xie <ying.xie@microsoft.com>
2019-10-03 17:02:59 -07:00
hans-tseng
500c20f3cd [devics]: update the installer.conf and config.bcm for delta devices (#3482)
1. add the console port in install.conf 
2. update the ag9032v2a configuration file
3. add the default_sku in ag9032v2a

Signed-off-by: hans-tseng <hans.tseng@deltaww.com>
2019-09-27 10:26:09 +02:00
Tony Titus
91510a7742 [innovium]: Initial commit (#3243)
[build] Add ipmitool
[dockers] Add innovium platform in orchagent + ipmitool in snmp
[platform/innovium] Add innovium platform
[device/celestica] Add x86_64-cel_midstone-r0 device for innovium
[device/delta] Add x86_64-delta_et-c032if-r0 device for innovium
[sonic-slave-stretch] Add texi2html

Signed-off-by: Tony Titus ttitus@innovium.com
2019-08-14 10:40:55 -07:00
JohnsonYJLu
3e6e037d67 Modify ag9064 platform module and add support psutil. (#3305)
Signed-off-by: johnson <JOHNSON.LU@deltaww.com>
2019-08-08 16:50:28 -07:00
hans-tseng
ca1534aadb [devices]: Add platform support for delta ag9032v2a (#3148)
Add platform support for delta ag9032v2a
CPU: Broadwell-DE
ASIC: BMC56870 with <100Gx32 + 10Gx1>
BMC: AST2520:
- What I did
add the new platform of delta ag9032v2a
- How I did it
1.provide the QSFP and SWPLD attributes and create the virtual buses of I2C
2. provide the port configuration
- How to verify it
1. psuutil.py
2. sfputil.py
3. bcmcd

- Known issue
The port LED is not ready. We noticed that BCM chip had the M0 FW initialization issue while bringing up SDK with "BRCM SAI ver: [3.5.2.3], OCP SAI ver: [1.4], SDK ver: [6.5.14]" and here is the information :
root@sonic:/home/admin# bcmcmd "M0 status"
M0 status
0:soc_iproc_data_send_wait: No response for msg 2
M0 FW is NOT Running
M0 FW Version is 0.0
Host FW Version is 1.0
Host and M0 FW Versions do not match!!!

Signed-off-by: hans-tseng <hans.tseng@deltaww.com>
2019-08-01 22:18:04 -07:00
Ying Xie
5ab66b191a
[bcm config] remove scache_filename config entry (#2140)
Warm boot is managed by SAI. This configuration entry shouldn't be
included in bcm config.

Signed-off-by: Ying Xie <ying.xie@microsoft.com>
2018-10-12 08:05:38 -07:00
Taoyu Li
018b5899be [updategraph] add support to use preset config instead of default minigraph (#2050)
* [updategraph] add support to use preset config instead of default minigraph

* Fix variable case

* Remove default minigraph case

* Remove default minigraphs and add default_sku files
2018-09-21 22:01:10 -07:00
Kebo Liu
ac7e06debd [devices]: add stubs for new API in SfpUtilBase for all devices (#2038) 2018-09-12 09:40:29 -07:00
StanleyCi
2cce4aec1c [device] Update ag9032v1 and ag9064 modules. (#1690)
* Update ag9032v1 and ag9064 modules.

Signed-off-by: neal tai <neal.tai@deltaww.com>

* Fix the sfputil.py when convert an integer to hexadecimal without the 'L' trailing.

Signed-off-by: neal tai <neal.tai@deltaww.com>
2018-09-01 13:52:38 -07:00
jackyjs
14a0b8c8a3 [devices]: Add Delta Platform et-6248brb (#1640)
* Add Delta Platform et-6248brb

Signed-off-by: jackyjsliu <JACKY.JS.LIU@deltaww.com>

* add Broadcom configuration file

Signed-off-by: jackyjsliu <JACKY.JS.LIU@deltaww.com>

* modify Broadcom configuration file
2018-09-01 13:25:46 -07:00
Ying Xie
e7ef637a09
[config-bcm] move broadcom config files to device folder (#1947)
- Future versions of SAI packages will stop carrying these files.

Signed-off-by: Ying Xie <ying.xie@microsoft.com>
2018-08-20 10:11:11 -07:00
StanleyCi
145aa4ff70 [delta]: Enable ag5648, et-6248brb, ag9064 and fix the build error of ag5648 PSU module. (#32)
* 1. Fixed delta ag5648 PSU modules.
2. Enable build ag5648.

Signed-off-by: neal tai <neal.tai@deltaww.com>

* 1. Modified the kernel depends for ag5648.
2. Modified platform-modules-ag5648.service for install ag5648.

Signed-off-by: neal tai <neal.tai@deltaww.com>

* Enable the ag9064.

Signed-off-by: Stanley Chi <stanley.chi@deltaww.com>

* Add Delta platform et-6248brb

Signed-off-by: neal tai <neal.tai@deltaww.com>
2018-08-11 09:09:03 +00:00
hans-tseng
cbf204ba01 [device]: add the new platform ag9064 (#23)
Signed-off-by: hans <hans.tseng@deltaww.com>
2018-08-11 09:09:03 +00:00
nealtai
830e1dd560 [device]: Add a new supported device, Delta-ag5648 (#1470)
* [platform]: Add a new supported platform, Delta-ag5648

            CPU : Intel Rangeley C2538
            Swich ASIC: Broadcom Tomahawk BCM56967
            Ports : 48x25G + 6x100G
            Switch SKU : Delta-ag5648

Signed-off-by: neal tai <neal.tai@deltaww.com>

* Delete the file

Delete the auto-generated file.

* [device]: ag5648 remove all *.cmd files.
          remove the files under ag5648/modules

Signed-off-by: neal tai <neal.tai@deltaww.com>

* [device]: ag5648 device drivers
          1. Use the common driver dni_emc2305.c

          ag9032v1 device drivers
          1. Move dni_emc2305.c to be the common driver
          2. Remove at24.c

Signed-off-by: neal tai <neal.tai@deltaww.com>
2018-03-23 15:17:41 -07:00
hans-tseng
837e964854 [devices]: add the delta ag9064 platform (#1435)
* add the ag9064 platform

Signed-off-by: hans <hans.tseng@deltaww.com>
2018-03-01 02:14:26 -08:00
StanleyCi
e880c78f2a [Delta]: Updated port_config.ini & fix the bug of fancontrol.service for ag9032v1. (#1371)
* [Delta]: Updated port_config.ini & fix the bug of fancontrol.service for ag9032v1.

Signed-off-by: Stanley Chi <stanley.chi@deltaww.com>

* [Delta]: Updated port_config.ini & fix the bug of fancontrol.service for ag9032v1.

Signed-off-by: Stanley Chi <stanley.chi@deltaww.com>
2018-02-06 21:23:20 +08:00
Taoyu Li
6f12ff286d [minigraph]: Set hostname in all default minigraphs to 'sonic' (#1333) 2018-01-23 18:16:15 -08:00
nealtai
41cdb8971f [Delta]: Add psuutil support for ag9032v1 (#1298)
Fix the bug of psu module for ag9032v1

Signed-off-by: neal <neal.tai@deltaww.com>
2018-01-11 15:17:55 -08:00
nealtai
8602360ffd [platform] Add a new supported platform, Delta-ag9032v1 (#1168)
CPU : Intel Rangeley C2538
    Swich ASIC: Broadcom Tomahawk BCM56960
    Ports : 32x100G
    Switch SKU : Delta-ag9032v1

Signed-off-by: neal <neal.tai@deltaww.com>
2017-11-27 14:29:22 -08:00