Commit Graph

757 Commits

Author SHA1 Message Date
Arun Saravanan Balachandran
54b284f4b0
[DellEMC]: EEPROM decoder for S6000, S6000-ON (#4718)
**- Why I did it**

For decoding system EEPROM of S6000 based on Dell offset format and S6000-ON’s system EEPROM in ONIE TLV format.

**- How I did it**

- Differentiate between S6000 and S6000-ON using the product name available in ‘dmi’  ( “/sys/class/dmi/id/product_name” )
- For decoding S6000 system EEPROM in Dell offset format and updating the redis DB with the EEPROM contents, added a new class ‘EepromS6000’ in eeprom.py, 
- Renamed certain methods in both Eeprom, EepromS6000 classes to accommodate the plugin-specific methods.

**- How to verify it**

- Use 'decode-syseeprom' command to list the system EEPROM details.
- Wrote a python script to load chassis class and call the appropriate methods.

UT Logs: [S6000_eeprom_logs.txt](https://github.com/Azure/sonic-buildimage/files/4735515/S6000_eeprom_logs.txt), [S6000-ON_eeprom_logs.txt](https://github.com/Azure/sonic-buildimage/files/4735461/S6000-ON_eeprom_logs.txt)
Test script: [eeprom_test_py.txt](https://github.com/Azure/sonic-buildimage/files/4735509/eeprom_test_py.txt)
2020-06-09 09:08:15 -07:00
joyas-joseph
9505bdb910
[docker-syncd-vs]: Convert syncd-vs docker to buster (#4726)
Signed-off-by: Joyas Joseph <joyas_joseph@dell.com>
2020-06-09 09:07:25 -07:00
Mahesh Maddikayala
af81b8ebcd
[libsaibcm] Update pointer to Broadcom SAI debian package (#4725) 2020-06-08 17:03:09 -07:00
Samuel Angebault
c8bd640ae5
[arista] Update drivers submodules (#4693)
- Sensor and Fan information added to primary platforms for thermal API.
- Refactors involving better abstractions, code reuse and dead code removal.
- Improvements to the diag capabilities
- Pylintrc added to improve code quality. Will become fatal at a later time.

Co-authored-by: Baptiste Covolato <baptiste@arista.com>
2020-06-04 13:33:33 -07:00
Mahesh Maddikayala
fb6916f88b
Update packages and pointers to use SAI1.6 headers. (#4597)
* Update sonic-sairedis (sairedis with SAI 1.6 headers)

* Update SAIBCM to 3.7.4.2, which is built upon SAI1.6 headers

* missed updating BRCM_SAI variable, fixed it

* Update SAIBCM to 3.7.4.2, updated link to libsaibcm

* [Mellanox] Update SAI (release:v1.16.3; API:v1.6)

Signed-off-by: Volodymyr Samotiy <volodymyrs@mellanox.com>

* Update sonic-sairedis pointer to include SAI1.6 headers

* [Mellanox] Update SDK to 4.4.0914 and FW to xx.2007.1112 to match SAI 1.16.3 (API:v1.6)

Signed-off-by: Volodymyr Samotiy <volodymyrs@mellanox.com>

* ensure the veth link is up in docker VS container

* ensure the veth link is up in docker VS container

* [Mellanox] Update SAI (release:v1.16.3.2; API:v1.6)

Signed-off-by: Volodymyr Samotiy <volodymyrs@mellanox.com>

* use 'config interface startup' instead of using ifconfig command, also undid the previous change'

Co-authored-by: Volodymyr Samotiy <volodymyrs@mellanox.com>
2020-05-30 14:23:34 -07:00
Arun Saravanan Balachandran
f0eb1dbc93
DellEMC: Skip thermalctld (S6000, S6100, Z9100 and Z9264) and thermal platform API changes (#4644)
- Skip thermalctld in DellEMC S6000, S6100, Z9100 and Z9264 platforms.
- Change the return type of thermal Platform APIs in DellEMC S6000, S6100, Z9100 and Z9264 platforms to 'float'.
2020-05-27 12:22:55 -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
jostar-yang
f532fb95a9
[accton/as4630-54pe] Fix ypeb-1200am psu_fan dir issue (#4626)
3y Power YPEB-1200am PSU doens't support read fan_dir from pmbus register

Check with vendor this PUS type only support F2B fan direction. So add to show "F2B"
when red psu_fan_dir sysfs.
2020-05-26 12:49:51 -07:00
Guohan Lu
bb40300cad [docker-syncd-brcm]: use service dependency in supervisord to start services 2020-05-22 11:01:28 -07:00
Wirut Getbamrung
5e5e9ec417
[device/celestica]: DX010 platform API update (#4608)
- Fix fancontrol.service path
- Fix return temp format in thermal API
- Improve init time in chassis API
- Upgrade sfp API
2020-05-22 03:50:43 -07:00
Srideep
2cd9f74d21
[platform] Add DellEMC s5232f API 2.0 support (#4552) 2020-05-20 14:40:39 -07:00
Arun Saravanan Balachandran
e976b70e74
DellEMC: get_change_event Platform API implementation for S6000, S6100 and Z9100 (#4593)
For detecting transceiver change events through xcvrd in DellEMC S6000, S6100 and Z9100 platforms.

- In S6000, rename 'get_transceiver_change_event' in chassis.py to 'get_change_event' and return appropriate values.
- In S6100, implement 'get_change_event' through polling method (poll interval = 1 second) in chassis.py (Transceiver insertion/removal does not generate interrupts due to a CPLD bug)
- In Z9100, implement 'get_change_event' through interrupt method using select.epoll().
2020-05-20 12:52:50 -07:00
Santhosh Kumar T
d90fdbf3f9
[DellEMC] S6000 Disable Low power mode by default (#4592) 2020-05-14 10:29:43 -07:00
ciju-juniper
40bc4875a8
[Juniper][QFX5200] EM policy updates (#4543)
This patchset implement the following:
 - Setting the FAN frequency
 - Corrections to the EM policy with respect to platform
   defined temperature / fan values
 - Updates to the platform monitorng script logging
 - Fixes to platform initialization script

Signed-off-by: Ciju Rajan K <crajank@juniper.net>
2020-05-13 10:02:15 -07:00
Guohan Lu
767bc5c8c0 [build]: add docker-saiserver-* as stretch docker targets
Signed-off-by: Guohan Lu <lguohan@gmail.com>
2020-05-06 10:23:38 +00:00
lguohan
c55603f494
[build]: add docker-ptf-* as stretch docker targets (#4516)
Signed-off-by: Guohan Lu <lguohan@gmail.com>
2020-05-01 11:20:33 -07:00
dereksun01
506e9546c9
[device] Upgrade as4630_54pe for new platform (#4268)
- Add port auto-negotiation attribute.
- Add CPLD command to disable mode.
2020-05-01 05:27:32 -07:00
Samuel Angebault
80a025a7c2
[arista] update platform driver submodules (#4512)
- Add Makefile rules to build debug containers for SWI images
- Fix some platform API implementation for xcvrd and thermalctld
- Improvements to arista diag command
- Miscellaneous refactors

Co-authored-by: Maxime Lorrillere <mlorrillere@arista.com>
2020-04-30 12:06:19 -07:00
Aravind Mani
a40fe3ba15
[DellEMC] S6100-Fix i2C ISMT issue (#4330)
* [DellEMC] S6100-Fix i2C ISMT issue

* Modified the retry condition for bit bang
2020-04-28 13:16:19 -07:00
jostar-yang
9129378097
[accton/as9716-32d] add support get_transceiver_change_event (#4105)
Co-authored-by: Jostar Yang <jostar_yang@accton.com.tw>
2020-04-22 22:54:48 -07:00
lguohan
c52b8c4e75
[platform-modules]: set debian control depends on unsigned kernel package (#4466)
Signed-off-by: Guohan Lu <lguohan@gmail.com>
2020-04-22 19:41:48 -07:00
ciju-juniper
d1940b2cf4
[Juniper] Re-organizing sonic_platform modules (#4448)
This patch set implements the following:
 - Fixes the conflicts in chassis.py / platform.py in sonic_platfrom
 - Consolidating the common library files in sonic_platform
 - Moving QFX5210 specific drivers to qfx5210/modules
 - Moving Juniper common fpga drivers to common/modules
 - Cleaning up the platform driver files
 - Bug fixes in QFX5210 platform monitor & initialiazation script
 - Fixing the bugs in QFX5210 eeprom parsing

Signed-off-by: Ciju Rajan K <crajank@juniper.net>
2020-04-21 02:25:51 -07:00
lguohan
46fad0e0c6
Merge pull request #4405 from lguohan/buster
[baseimage]: upgrade base image to debian buster

bring up the base image to debian buster 4.19 kernel.

using the merge commits to preserve the individual commits to better track the history.
2020-04-20 15:32:17 -07:00
byu343
0095763780 [arista]: Update driver submodules to support buster kernel (#57) 2020-04-20 07:34:43 +00:00
abdosi
d8b716681c
[sonic-buildimage] libsaibcm Debian package update (#4439)
from 3.7.3.3-3 to 3.7.3.3-4
Fixes for PFC WD

Signed-off-by: Abhishek Dosi <abdosi@microsoft.com>
2020-04-17 10:46:56 -07:00
Guohan Lu
e5e26d9a43 [platform-modules]: set debian control file to depend on 4.19.0-6
change depends to linux-image-4.19.0-6-amd64 in debian/control

Signed-off-by: Guohan Lu <lguohan@gmail.com>
2020-04-17 04:51:51 +00:00
Guohan Lu
207e32a9f2 [platform-modules]: fix compile issues for platform driver under 4.19
1. undefine led_classdev_register as it is defined in leds.h
2. header file location change
   a. linux/i2c/pmbus.h -> linux/pmbus.h
   b. linux/i2c-mux-gpio.h -> linux/platform_data/i2c-mux-gpio.h
   c. linux/i2c/pca954x.h -> linux/platform_data/pca954x.h
2020-04-17 04:51:51 +00:00
Guohan Lu
7f7212d8a8 [broadcom]: build opennsl-modules for kernel 4.19.0-6
Signed-off-by: Guohan Lu <lguohan@gmail.com>
2020-04-16 10:26:18 +00:00
Guohan Lu
9d6760c336 [kernel]: build linux kernel 4.19.0-6
Signed-off-by: Guohan Lu <lguohan@gmail.com>
2020-04-16 10:26:18 +00:00
Guohan Lu
01cb7934b0 [build]: add buster docker as the last step of the build proces
- build SONIC_STRETCH_DOCKERS in sonic-slave-stretch docker
- build image related module in sonic-slave-buster docker.
  This includes all kernels modules and some packages

Signed-off-by: Guohan Lu <lguohan@gmail.com>
2020-04-16 10:26:18 +00:00
ciju-juniper
695652c9d1
[platform]: Adding platform support for Juniper QFX5200 (#4376)
This is a 1RU switch with 32 QSFP28 (40G/100G) ports on
Broadcom Tomahawk I chipset. CPU used in QFX5200-32C-S
is Intel Ivy Bridge. The machine has Redundant and
hot-swappable Power Supply (1+1) and also has Redundant
and hot swappable fans (5).

Signed-off-by: Ciju Rajan K <crajank@juniper.net>
Signed-off-by: Ashish Bhensdadia <bashish@juniper.net>
2020-04-16 03:09:32 -07:00
rajendra-dendukuri
606db589b8
[brcm-th-svk]: Fix errors in BCM956960K switch (#4390)
Fix Broadcom TH SVK boot up crash
2020-04-10 09:25:52 -07:00
Joe LeVeque
7405f8cfea
[Accton AS4630-54PE] Fix Python indentation error (#4393)
Fix Python indentation error
Add newline at EOF
2020-04-08 23:04:13 -07:00
Joe LeVeque
9068652cfd
[Juniper QFX5210] Fix Python errors (#4394)
* [Juniper QFX5210] Fix Python errors
* Remove unnecessary 'pass'
2020-04-08 23:01:27 -07:00
Srideep
444cede11d
[DellEMC] S5232 platform updates (#4360)
FPGA driver crash fix for stale buffer in i2c transfer
LED firmware load issue fix.
10G port swapfix
psu/sfp bug fixes to report correct states/status of hw
2020-04-08 02:41:56 -07:00
Santhosh Kumar T
7bc8f1293c
[DellEMC] Z9264f Watchdog support (#4192)
Co-authored-by: Sujin Kang <sujkang@microsoft.com>
2020-04-06 09:27:45 -07:00
rkdevi27
84256314fe
DellEMC: Platform 2.0 Api - Fan for z9264f (#4191) 2020-03-28 11:48:22 -07:00
Samuel Angebault
5b0ec7afe6
[Arista] Update drivers submodules (#4317)
* Update arista drivers submodules

* Add device configs for 7060CX2-32S

* Update boot0 and union-mount for 7060CX2-32S

* Add 7170-32C and 7170-32CD support in boot0

* Sync after writting boot configs

* Add 7170-32C and 7170-32CD device configurations

Co-authored-by: Boyang Yu <byu@arista.com>
2020-03-27 17:28:27 -07:00
jostar-yang
592abec5d9
[as4630-54pe]Put correct fanuilt.py file (#4321) 2020-03-25 11:58:19 -07:00
Santhosh Kumar T
12291b276b
DellEMC S6100 I2C Enumeration Segregation (#4312) 2020-03-24 13:52:30 -07:00
Aravind Mani
8a6aeace6e
[DellEMC] Fix Z9100 port index issue (#4309) 2020-03-23 21:09:35 -07:00
Arun Saravanan Balachandran
0b52be3e5f
DellEMC: Z9264-Platform2.0 Implementation [Reboot Cause] (#4246)
- Added get_reboot_cause() API implementation in chassis.py
- Added new file platform.py for platform2.0 API implementation.
2020-03-23 15:30:09 -07:00
CharlieChenEC
3e6899004c
[docker/brcm-syncd-rpc]: remove duplicated "--net" options in broadcom syncd rpc (#4296)
In the file "files/build_templates/docker_image_ctl.j2", it adds the option
"--net" to the docker create command through the commit
"abe7ef7e2e2e1215c97cee19a83aab0b130cebe5" (#3856).

Remove the "--net" option in "docker-syncd-brcm-rpc.mk" to avoid
specifying duplicated "--net" options.

Signed-off-by: charlie_chen <charlie_chen@edge-core.com>
2020-03-21 18:47:31 -07:00
jostar-yang
c9059992a0
[AS9716-32D]:Support 0x57 and 0x56 eeprom (#4103)
* [AS9716-32D]:Support 0x57 and 0x56 eeprom

* Add checking sysfs use 0x57 or 0x56

Co-authored-by: Jostar Yang <jostar_yang@accton.com.tw>
2020-03-21 14:26:55 -07:00
ashishb-juniper
f88dffe95c
[platform]: Added QFX5210 readme for build and install (#4211)
Signed-off-by: Ciju Rajan K <crajank@juniper.net>
Signed-off-by: Ashish Bhensdadia <bashish@juniper.net>
Co-authored-by: Ashish Kumar Bhensdadia <ashish@sonic-server.englab.juniper.net>
2020-03-19 23:33:44 -07:00
Mykola F
bfe690b739
[syncd-rpc.mk] install ptf dependancy (#4279)
Signed-off-by: Mykola Faryma <mykolaf@mellanox.com>
2020-03-18 11:59:39 -07:00
Samuel Angebault
a3bbdc9929
[arista] Update platform drivers submodules (#4200)
* Build Arista drivers using DPKG_DEB
* Update arista platform submodule
2020-03-17 10:14:59 -07:00
Kalimuthu-Velappan
7d2ebf8116
[build]: support for DPKG local caching (#4117)
DPKG caching framework provides the infrastructure to cache the sonic module/target .deb files into a local cache by tracking the target dependency files.SONIC build infrastructure is designed as a plugin framework where any new source code can be easily integrated into sonic as a module and that generates output as a .deb file. The source code compilation of a module is completely independent of other modules compilation. Inter module dependency is resolved through build artifacts like header files, libraries, and binaries in the form of Debian packages. For example module A depends on module B. While module A is being built, it uses B's .deb file to install it in the build docker.

The DPKG caching framework provides an infrastructure that caches a module's deb package and restores it back to the build directory if its dependency files are not modified. When a module is compiled for the first time, the generated deb package is stored at the DPKG cache location. On the subsequent build, first, it checks the module dependency file modification. If none of the dependent files is changed, it copies the deb package from the cache location, otherwise, it goes for local compilation and generates the deb package. The modified files should be checked-in to get the newer cache deb package.

This provides a huge improvement in build time and also supports the true incremental build by tracking the dependency files.

- How I did it
It takes two global arguments to enable the DPKG caching, the first one indicates the caching method and the second one describes the location of the cache.
SONIC_DPKG_CACHE_METHOD=cache
SONIC_DPKG_CACHE_SOURCE=

    where  SONIC_DPKG_CACHE_METHOD - Default method is 'cache' for deb package caching
                            none:     no caching
                            cache:    cache from local directory
Dependency file tracking:
Dependency files are tracked for each target in two levels.
1. Common make infrastructure files - rules/config, rules/functions, slave.mk etc.
2. Per module files - files which are specific to modules, Makefile, debian/rules, patch files, etc.

    For example: dependency files for Linux Kernel - src/sonic-linux-kernel,

            SPATH       := $($(LINUX_HEADERS_COMMON)_SRC_PATH)
            DEP_FILES   := $(SONIC_COMMON_FILES_LIST) rules/linux-kernel.mk rules/linux-kernel.dep
            DEP_FILES   += $(SONIC_COMMON_BASE_FILES_LIST)
            SMDEP_FILES := $(addprefix $(SPATH)/,$(shell cd $(SPATH) && git ls-files))

            DEP_FLAGS := $(SONIC_COMMON_FLAGS_LIST) \
                         $(KERNEL_PROCURE_METHOD) $(KERNEL_CACHE_PATH)

            $(LINUX_HEADERS_COMMON)_CACHE_MODE  := GIT_CONTENT_SHA
            $(LINUX_HEADERS_COMMON)_DEP_FLAGS   := $(DEP_FLAGS)
            $(LINUX_HEADERS_COMMON)_DEP_FILES   := $(DEP_FILES)
            $(LINUX_HEADERS_COMMON)_SMDEP_FILES := $(SMDEP_FILES)
            $(LINUX_HEADERS_COMMON)_SMDEP_PATHS := $(SPATH)
Cache file tracking:
The Cache file is a compressed TAR ball of a module's target DEB file and its derived-target DEB files.
The cache filename is formed with the following format

    FORMAT:
            <module deb filename>.<24 byte of DEP SHA hash >-<24 byte of MOD SHA hash>.tgz
            Eg:
              linux-headers-4.9.0-9-2-common_4.9.168-1+deb9u3_all.deb-23658712fd21bb776fa16f47-c0b63ef593d4a32643bca228.tgz

            < 24-byte DEP SHA value > - the SHA value is derived from all the dependent packages.
            < 24-byte MOD SHA value > - the SHA value is derived from either of the following.
                    GIT_COMMIT_SHA  - SHA value of the last git commit ID if it is a submodule
                    GIT_CONTENT_SHA - SHA value is generated from the content of the target dependency files.
Target Specific rules:
Caching can be enabled/disabled on a global level and also on the per-target level.

            $(addprefix $(DEBS_PATH)/, $(SONIC_DPKG_DEBS)) : $(DEBS_PATH)/% : .platform $$(addsuffix -install,$$(addprefix $(DEBS_PATH)/,$$($$*_DEPENDS))) \
                    $(call dpkg_depend,$(DEBS_PATH)/%.dep )
            $(HEADER)


            # Load the target deb from DPKG cache
            $(call LOAD_CACHE,$*,$@)


            # Skip building the target if it is already loaded from cache
            if [ -z '$($*_CACHE_LOADED)' ] ; then

                  .....
                 # Rules for Generating the target DEB file.
                  .....

                  # Save the target deb into DPKG cache
                  $(call SAVE_CACHE,$*,$@)
            fi


            $(FOOTER)


    The make rule-'$(call dpkg_depend,$(DEBS_PATH)/%.dep )' checks for target dependency file modification. If it is newer than the target, it will go for re-generation of that target.

    Two main macros 'LOAD_CACHE' and 'SAVE_CACHE' are used for loading and storing the cache contents.
    The 'LOAD_CACHE' macro is used to load the cache file from cache storage and extracts them into the target folder. It is done only if target dependency files are not modified by checking the GIT file status, otherwise, cache loading is skipped and full compilation is performed.
    It also updates the target-specific variable to indicate the cache is loaded or not.
    The 'SAVE_CACHE' macro generates the compressed tarball of the cache file and saves them into cache storage. Saving into the cache storage is protected with a lock.
- How to verify it

    The caching functionality is verified by enabling it in Linux kernel submodule.
    It uses the cache directory as 'target/cache' where Linux cache file gets stored on the first-time build and it is picked from the cache location during the subsequent clean build.
- Description for the changelog
The DPKG caching framework provides the infrastructure to save the module-specific deb file to be cached by tracking the module's dependency files.
If the module's dependency files are not changed, it restores the module deb files from the cache storage.

- Description for the changelog

- A picture of a cute animal (not mandatory but encouraged)

DOCUMENT PR:

           https://github.com/Azure/SONiC/pull/559
2020-03-11 20:04:52 -07:00
Danny Allen
590caaf5cf
[bcmsai] Update BRCM SAI Debian to 3.7.3.3-3 (#4233)
Signed-off-by: Danny Allen <daall@microsoft.com>
2020-03-07 00:38:09 -08:00
Joe LeVeque
ab4861deb8
DellEMC: Platform 2.0 Api - Component for z9264f (#4091) 2020-03-04 19:17:09 -08:00
Samuel Angebault
75181702d3
[arista] Update drivers submodule (#4164)
- Refactor of the cli
 - Refactor of the logging mechanism
 - Add some more utilities
 - Miscelaneous fixes and improvements
2020-02-25 09:14:56 -08:00
abdosi
7aae61abb5
[broadcom]: Updated BRCM SAI Debian package revision number to 3.7.3.3-2. (#4182)
This has patch to fix enable/disable attribute for lag member. It's on top of vanilla 3.7.3.3
2020-02-25 09:14:23 -08:00
abdosi
52e3947487
Updated the file permission mode to include +x (#4183)
This to avoid git status reporting dirty.

Signed-off-by: Abhishek Dosi <abdosi@microsoft.com>
2020-02-22 07:22:43 -08:00
Arun Saravanan Balachandran
30ef11198f
DellEMC: Z9264-Platform2.0 Implementation [Thermal] (#4175) 2020-02-20 14:57:54 -08:00
Santhosh Kumar T
2626565afb
[DellEMC] S6100 Last Reboot Reason Thermal Support (#3767) 2020-02-18 00:02:33 -08:00
Arun Saravanan Balachandran
15eaf36036
DellEMC: Z9264-Platform2.0 Implementation [PSU] (#4104) 2020-02-14 14:58:24 -08:00
Samuel Angebault
1e40c598a3
[arista] Update drivers submodules (#4147)
Update the linux-kernel dependency to 4.9.0-11-2
2020-02-13 18:16:10 -08:00
jostar-yang
427ed1f29a
[platform]:Fix as7726 read thermal sensor issue (#4135)
Due to linux create hwmonN node number, N isn't fixed. So modify to use "" to let thermal.py can correct sysfs. For example, use /sys/bus/i2c/devices/55-0048/hwmon/hwmon/temp1_input to instead of /sys/bus/i2c/devices/55-0048/hwmon/hwmon4/temp1_input
2020-02-12 17:55:58 -08:00
Olivier Singla
6a0dcb1b16
[kernel]: security kernel update to 4.9.189 (#3913)
This patch upgrade the kernel from version
4.9.0-9-2 (4.9.168-1+deb9u3) to 4.9.0-11-2 (4.9.189-3+deb9u2)

Co-authored-by: rajendra-dendukuri <47423477+rajendra-dendukuri@users.noreply.github.com>
2020-02-12 17:41:58 -08:00
David Xiao
1f4325e3bf
[Inventec][D6356] Update Inventec 6356 (#3839)
* [Inventec][D6356] Update Inventec 6356
   1.[Platform API] Add get_change_event implementation for Chassis class
   2.[Platforn monitor] skip ledd to avoid pmon init failure
2020-02-10 12:26:48 -08:00
yozhao101
91e5fb5602
[Service] Enable/disable container auto-restart based on configuration. (#4073) 2020-02-07 12:34:07 -08:00
Santhosh Kumar T
57d4c841db
[DellEMC] Dell Platform Modules Debian Build Error Fix (#4108)
- Fix for Azure/sonic-buildimage#4095
- Exit status from failed make command(action) didnt reached parent target because the make command is inside the "for" loop.
- Only the exit status of the last command in the last iteration of the for loop is read by parent target.
- This is the reason why dpkg-buildpackage ignored the make error.
- Fixed the issue with help of "set -e".
2020-02-07 07:49:08 -08:00
Santhosh Kumar T
74e28ad6ff
[DellEMC] S6000 - Thermal support - Last Reboot Reason (#4097)
- Added support for Thermal event in Last Reboot Reason "show reboot-cause" command.
- Added support for sending log message in case of thermal shutdown.

sonic NOTICE root: Shutting down due to over temperature (40 degree, 30 degree, 34 degree)
2020-02-06 05:23:27 -08:00
Arun Saravanan Balachandran
c095e515b4
DellEMC: Z9264-Platform2.0 Implementation [ipmihelper] (#4060)
Implement classes IpmiSensor, IpmiFru to obtain platform sensors information for Platform2.0 APIs in DellEMC Z9264 platform.

Add a new file ipmihelper.py with the implementation for IpmiSensor, IpmiFru classes.
2020-01-28 22:06:04 -08:00
Srideep
dc994b8425 DellEMC: Dell platform bug fixes on s5248 and s6232 (#4071)
* Dynamic bus detection and loading driver for eeprom on s5248,s5232
* sfputil fix for S5248
2020-01-27 23:28:26 -08:00
Arun Saravanan Balachandran
d2dadc976b DellEMC: Platform2.0 API enhancements in DellEMC S6000 and other API changes (#3956) 2020-01-24 10:08:22 -08:00
rkdevi27
c2677a5614 [devices]: DellEMC: Platform 2.0 Api(sfp,eeprom,chassis )for z9264f (#4007)
- Sfp,Eeprom,Chassis(transceiver change event) support added for z9264f Platform 2.0 API
- Added Interrupt handler to SFP change event in dell_z9264f_fpga_ocores.c
- Fixed few indentation and offset issues in sfputil.py for z9264f
2020-01-23 09:32:34 -08:00
paavaanan
a664123786 [devices]: DellEMC S6000 fancontrol support (#4048)
- Implemented fancontrol service to monitor S6000 fans and adjust fan speed w.r.t temperature.
- fancontrol.service starts the fancontrol script at startup.
- This script takes the average temperature by reading three sensors and configure FANS to appropritate RPM against the temperature.
- When the temperature is adjusted script will log in syslog for future reference.
- Also, script checks for faulty fans and report the status in syslog.
2020-01-23 09:27:41 -08:00
yozhao101
db7668638a [Monit] Change the full process name of syncd in the monit config file. (#4033)
Since the syncd process running on different platforms will have the different full path names, we
change the full path name of process syncd in the monit config file such that it will be universal and is not for a specific vendor.

Signed-off-by: Yong Zhao <yozhao@microsoft.com>
2020-01-22 17:00:49 -08:00
Dong Zhang
7aa0baf709 [MultiDB] (except ./src and ./dockers dirs): replace redis-cli with sonic-db-cli and use new DBConnector (#4035)
* [MultiDB] (except ./src and ./dockers dirs): replace redis-cli with sonic-db-cli and use new DBConnector
* update comment for a potential bug
* update comment
* add TODO maker as review reqirement
2020-01-22 11:26:23 -08:00
Samuel Angebault
64500e143b [Arista] Update drivers and boot script (#3959)
* Update arista driver submodule

* Add support for 7260CX3-64E in boot0

* Refactor boot0 platform specific definition

Make it easier to manage new sku

* Add support for 7050CX3-32S in boot0

Just contains the required boot0 information

* Add basic plugin support for DCS-7050CX3-32S

* Add port config for Arista-7050CX3-32S-C32

Co-authored-by: yurypm <yurypm@arista.com>
Co-authored-by: byu343 <byu@arista.com>
2020-01-17 10:44:49 -08:00
byu343
b45d2b4130 [arista]: Add support for bald eagle phy (#3922)
* Add support for bald edgle phy
2020-01-17 10:36:12 -08:00
Pradchaya Phucharoen
522916397d [Celestica/Seastone2] Add support Seastone2 device and platform (#3761)
* [device/celestica] Add seastone2 device specific plugins and SKU

* [platform/broadcom] Add Celestica seastone2 platform module

* update minigraph for Seastone_2 and remove 10KR port configuration

* [device/celestica] hwsku:Seastone2 update port configuration

* [plugins/psuutil] fix psutuil cannot run in pmon docker

* [plugins/sfputil] raise error in get_transceiver_change_event

* [device/celestica] Seastone2 add config to skip ledd in pmon

Co-authored-by: tiantianlv <38775940+tiantianlv@users.noreply.github.com>
2020-01-15 18:42:09 -08:00
yozhao101
b7e48b422f [Services] Allow monit system tool to monitor the critical processes status running in various SONiC containers. (#3940)
* Add a monit config file for teamd container.

Signed-off-by: Yong Zhao <yozhao@microsoft.com>

* Add a copy mechanism to put the monit config file in teamd container
into base image.

Signed-off-by: Yong Zhao <yozhao@microsoft.com>

* Add a monit config file for snmp container.

Signed-off-by: Yong Zhao <yozhao@microsoft.com>

* Add a copy mechanism to put the monit config file of snmp container into
the base image.

Signed-off-by: Yong Zhao <yozhao@microsoft.com>

* Add a monit config file for dhcp_relay container in the dir
base_image_files.

Signed-off-by: Yong Zhao <yozhao@microsoft.com>

* Add a copy mechanism to put the monit config file of dhcp_relay
container into base image under /etc/monit/conf.d.

Signed-off-by: Yong Zhao <yozhao@microsoft.com>

* Add a monit config file for router advertiser container.

Signed-off-by: Yong Zhao <yozhao@microsoft.com>

* Add a copy mechanism to put the monit config file of router advertiser
contianer into base image.

Signed-off-by: Yong Zhao <yozhao@microsoft.com>

* [Docker-Pmon] Add a monit config file for pmon container.

Signed-off-by: Yong Zhao <yozhao@microsoft.com>

* [Docker-Pmon] Add a copy mechanism to put the monit config file into the
base image.

Signed-off-by: Yong Zhao <yozhao@microsoft.com>

* [Docker-lldp] Add a monit config file for lldp container.

Signed-off-by: Yong Zhao <yozhao@microsoft.com>

* [Docker-lldp] Add a copy mechanism to put the monit config file into the
base image.

Signed-off-by: Yong Zhao <yozhao@microsoft.com>

* [Docker-bgp] Add a monit config file for BGP container.

Signed-off-by: Yong Zhao <yozhao@microsoft.com>

* [Docker-bgp] Add a copy mechanism to put monit config file into the base
image.

Signed-off-by: Yong Zhao <yozhao@microsoft.com>

* [Docker-swss] Add a monit config file for the swss container.

Signed-off-by: Yong Zhao <yozhao@microsoft.com>

* [Docker-swss] Add a copy mechanism to put monit config file into the
base image.

Signed-off-by: Yong Zhao <yozhao@microsoft.com>

* [Docker-syncd] Add a monit config file for syncd container on barefoot
platform.

Signed-off-by: Yong Zhao <yozhao@microsoft.com>

* [Docker-syncd] Add a copy mechanism to put the monit config file into
the base image on barefoot.

Signed-off-by: Yong Zhao <yozhao@microsoft.com>

* [Docker-syncd] Add a monit config file for syncd container on broadcom.

Signed-off-by: Yong Zhao <yozhao@microsoft.com>

* [Docker-syncd] Add a copy mechanism to put the monit config file into
the base image on broadcom.

Signed-off-by: Yong Zhao <yozhao@microsoft.com>

* [Docker-syncd] Add a monit config file for syncd container on cavium.

Signed-off-by: Yong Zhao <yozhao@microsoft.com>

* [Docker-syncd] Add a copy mechanism to put the monit config file into
the base image.

Signed-off-by: Yong Zhao <yozhao@microsoft.com>

* [Docker-centec] Add a monit config file for syncd container on centen
platform.

Signed-off-by: Yong Zhao <yozhao@microsoft.com>

* [Docker-syncd] Add a copy mechanism to put the monit config file into
the base image.

Signed-off-by: Yong Zhao <yozhao@microsoft.com>

* [Docker-syncd] Add a monit config file for syncd container on centen
platform.

Signed-off-by: Yong Zhao <yozhao@microsoft.com>

* [Docker-syncd] Add a copy mechanism to put the monit config file into
the base image.

Signed-off-by: Yong Zhao <yozhao@microsoft.com>

* [Docker-syncd] Add a monit config file for syncd container on marvell.

Signed-off-by: Yong Zhao <yozhao@microsoft.com>

* [Docker-syncd] Add a copy mechanism to put the monit conifg file into
the base image.

Signed-off-by: Yong Zhao <yozhao@microsoft.com>

* [Docker-syncd] Add a monit config file for syncd container on
marvell-arm64.

Signed-off-by: Yong Zhao <yozhao@microsoft.com>

* [Docker-syncd] Add a copy mechanism to put the monit config file into
the base image on marvell-arm64.

Signed-off-by: Yong Zhao <yozhao@microsoft.com>

* [Docker-syncd] Add a monit config file for syncd container on
marvell-armhf.

Signed-off-by: Yong Zhao <yozhao@microsoft.com>

* [Docker-syncd] Add a copy mechanism to put the monit config file into
the base image.

Signed-off-by: Yong Zhao <yozhao@microsoft.com>

* [Docker-syncd] Add a monit config file for syncd container on mellanox.

Signed-off-by: Yong Zhao <yozhao@microsoft.com>

* [Docker-syncd] Add a copy mechanism to put the monit config file into
the base image.

Signed-off-by: Yong Zhao <yozhao@microsoft.com>

* [Docker-syncd] Add a monit config file for syncd container on nephos.

Signed-off-by: Yong Zhao <yozhao@microsoft.com>

* [Docker-syncd] Add a copy mechanism to put the monit config file into
the base image.

Signed-off-by: Yong Zhao <yozhao@microsoft.com>

* [Docker-sflow] Add a monit config file for sflow container.

Signed-off-by: Yong Zhao <yozhao@microsoft.com>

* [Docker-sflow] Add a copy mechanism to put the monit conifg file into
the base image.

Signed-off-by: Yong Zhao <yozhao@microsoft.com>

* [Docker-telemetry] Add a monit config file for telemetry container.

Signed-off-by: Yong Zhao <yozhao@microsoft.com>

* [Docker-telemetry] Add a copy mechanism to put the monit config file
into the base image.

Signed-off-by: Yong Zhao <yozhao@microsoft.com>

* [Docker-database] Add a monit config file for database container.

Signed-off-by: Yong Zhao <yozhao@microsoft.com>

* [Docker-database] Add a copy mechanism to put the monit config file into
the base image.

Signed-off-by: Yong Zhao <yozhao@microsoft.com>

* [Docker-Dhcprelay] Change a typo.

Signed-off-by: Yong Zhao <yozhao@microsoft.com>

* [Docker-Dhcprelay] Change the process name in monit config file to
dhcrelay.

Signed-off-by: Yong Zhao <yozhao@microsoft.com>

* [Docker-syncd] There is no desserve process in syncd container on
barefoot.

Signed-off-by: Yong Zhao <yozhao@microsoft.com>

* [Docker-syncd] There is no process desserve in syncd container on
cavium.

Signed-off-by: Yong Zhao <yozhao@microsoft.com>

* [Docker-syncd] There is no process named desserve in syncd on centec.

Signed-off-by: Yong Zhao <yozhao@microsoft.com>

* [Docker-syncd] There is no process named desserve in syncd on marvell.

Signed-off-by: Yong Zhao <yozhao@microsoft.com>

* [Docker-syncd] Should not delete the process desserve in syncd container
on marvell.

Signed-off-by: Yong Zhao <yozhao@microsoft.com>

* [Docker-syncd] Delete the process dsserve in syncd on marvell.

Signed-off-by: Yong Zhao <yozhao@microsoft.com>

* [Docker-syncd] Delete the process dsserve in syncd container on
marvell-arm64.

Signed-off-by: Yong Zhao <yozhao@microsoft.com>

* [Docker-syncd] Delete the process dsserve in syncd container on
marvell-armhf.

Signed-off-by: Yong Zhao <yozhao@microsoft.com>

* [Docker-syncd] Delete the process dsserve in syncd container on
mellanox.

Signed-off-by: Yong Zhao <yozhao@microsoft.com>

* [Docker-Radv] Change the process name to radvd.

Signed-off-by: Yong Zhao <yozhao@microsoft.com>

* [Docker-telemetry] Correct a typo in monit_telemetry.

Signed-off-by: Yong Zhao <yozhao@microsoft.com>

* [Docker-teamd] Delete the monit config file for teamd.

Signed-off-by: Yong Zhao <yozhao@microsoft.com>

* [Docker-teamd] Delete the mechanism to copy the monit config file into
base image.

Signed-off-by: Yong Zhao <yozhao@microsoft.com>

* [Docker-dhcprelay] Delete the monit config file for dhcp_relay
container.

Signed-off-by: Yong Zhao <yozhao@microsoft.com>

* [Docker-dhcprelay] Delete the mechanism to copy the monit config file
into the base image.

Signed-off-by: Yong Zhao <yozhao@microsoft.com>

* [Docker-radv] Delete the monit config file foe radv container.

Signed-off-by: Yong Zhao <yozhao@microsoft.com>

* [Docker-radv] Delete the mechanism to copy the monit config file into
the base image.

Signed-off-by: Yong Zhao <yozhao@microsoft.com>

* [Docker-bgp] change the monit config file for BGP container such that
monit only generates alert if the process is not running for 5 minutes.

Signed-off-by: Yong Zhao <yozhao@microsoft.com>

* [Docker-snmp] Change the monit config file for snmp container such that
monit only generates alret if the process is not running for 5 minutes.

Signed-off-by: Yong Zhao <yozhao@microsoft.com>

* [Docker-pmon] Change the monit config file for pmon container such that
monit only generates alert if the processes are not running for 5
minutes.

Signed-off-by: Yong Zhao <yozhao@microsoft.com>

* [Docker-lldp] Change the monit config file for lldp container such that
monit only generates alerts if some processes are not running for 5
minutes.

Signed-off-by: Yong Zhao <yozhao@microsoft.com>

* [Docker-pmon] Delete the monit config file for pmon container since some
of processes are not running depended on the type of box.

Signed-off-by: Yong Zhao <yozhao@microsoft.com>

* [Docker-pmon] Delete the copy mechanism to copy the monit config file
into the base image.

Signed-off-by: Yong Zhao <yozhao@microsoft.com>

* [Docker-lldp] Change the matching name for the process lldpd.

Signed-off-by: Yong Zhao <yozhao@microsoft.com>

* [Docker-swss] Change the monit config file for swss container such that
monit only generates alerts if the processes are not running for 5
minutes.

Signed-off-by: Yong Zhao <yozhao@microsoft.com>

* [Docker-syncd] Change the monit config file for syncd container on
barefoot such that monit only generates alerts if the process is not
running for 5 minutes.

Signed-off-by: Yong Zhao <yozhao@microsoft.com>

* [Docker-syncd] Correct a typo in monit config file.

Signed-off-by: Yong Zhao <yozhao@microsoft.com>

* [Docker-syncd] Change the monit config file for syncd container on
broadcom such that monit only generates alerts if the processes are not
running for 5 minutes.

Signed-off-by: Yong Zhao <yozhao@microsoft.com>

* [Docker-syncd] Change the monit config file for syncd container on
cavium such that monit only generates alerts if the process is not
running for 5 minutes.

Signed-off-by: Yong Zhao <yozhao@microsoft.com>

* [Docker-syncd] Change the monit config file for syncd container such
that monit only generates alerts if the process is not running for 5
minutes.

Signed-off-by: Yong Zhao <yozhao@microsoft.com>

* [Docker-syncd] Change the monit config file for syncd container on
marvell such that monit only generates alerts if the process is not
running for 5 minutes.

Signed-off-by: Yong Zhao <yozhao@microsoft.com>

* [Docker-syncd] Change the monit config file for syncd container on
marvell-arm64 such that monit only generates alerts if the process is
not running for 5 minutes.

Signed-off-by: Yong Zhao <yozhao@microsoft.com>

* [Docker-syncd] Change the monit config file for syncd container on
marvell-armhf such that monit will generate alert if the process is not
running for 5 minutes.

Signed-off-by: Yong Zhao <yozhao@microsoft.com>

* [Docker-syncd] Change the monit config file for syncd container on
mellanox such that monit only generates alerts if the process is not
running for 5 minutes.

Signed-off-by: Yong Zhao <yozhao@microsoft.com>

* [Docker-sycnd] Change the monit config file for syncd container such
that monit only generates alerts if the processes are not running for 5
minutes.

Signed-off-by: Yong Zhao <yozhao@microsoft.com>

* [Docker-sflow] Change the monit config file for sflow container such
that monit only generates alerts if the process is not running for 5
minutes.

Signed-off-by: Yong Zhao <yozhao@microsoft.com>

* [Docker-telemetry] Change the monit config file for telemetry container
such that monit only generates alerts if the processes are not running
for 5 minutes.

Signed-off-by: Yong Zhao <yozhao@microsoft.com>

* [Docker-database] Change the monit config file for database container
such that monit only generates alerts if the process is not running for
5 minutes.

Signed-off-by: Yong Zhao <yozhao@microsoft.com>

* [Docker-database] Use 4 spaces to replace 2 spaces in monit config file.

Signed-off-by: Yong Zhao <yozhao@microsoft.com>

* [Docker-bgp] Use 4 spcess to replace 2 spaces in monit config file.

Signed-off-by: Yong Zhao <yozhao@microsoft.com>

* [Docker-lldp] Use 4 spaces to replace 2 spaces in monit config file.

Signed-off-by: Yong Zhao <yozhao@microsoft.com>

* [Docker-swss] Use 4 spaces to replace 2 space in monit config file.

Signed-off-by: Yong Zhao <yozhao@microsoft.com>

* [Docker-sflow] Use 4 spaces to replace 2 spaces in monit config file.

Signed-off-by: Yong Zhao <yozhao@microsoft.com>

* [Docker-snmp] Use 4 spaces to replace 2 spaces in monit config file.

Signed-off-by: Yong Zhao <yozhao@microsoft.com>

* [Docker-telemetry] Use 4 spaces to replace 2 spaces in monit config
file.

Signed-off-by: Yong Zhao <yozhao@microsoft.com>

* [Docker-syncd] Use 4 spaces to replace 2 spaces in the monit config file
on barefoot.

Signed-off-by: Yong Zhao <yozhao@microsoft.com>

* [Docker-syncd] Use 4 spaces to replace 2 spaces in the monit config file
on broadcom.

Signed-off-by: Yong Zhao <yozhao@microsoft.com>

* [Docker-syncd] Use 4 spaces to replace 2 spaces in the monit config file
on cavium.

Signed-off-by: Yong Zhao <yozhao@microsoft.com>

* [Docker-syncd] Use 4 spaces to replace 2 spaces in the monit config file
on centec.

Signed-off-by: Yong Zhao <yozhao@microsoft.com>

* [Docker-syncd] Use 4 spaces to replace 2 spaces in the monit config file
on marvell.

Signed-off-by: Yong Zhao <yozhao@microsoft.com>

* [Docker-syncd] Use 4 spaces to replace 2 spaces in the monit config file
on mellanox.

Signed-off-by: Yong Zhao <yozhao@microsoft.com>

* [Docker-syncd] Use 4 spaces to repalce 2 spaces in the monit config file
on nephos.

Signed-off-by: Yong Zhao <yozhao@microsoft.com>

* [Docker-bgp] Remove the trailing extra spaces in monit config file.

Signed-off-by: Yong Zhao <yozhao@microsoft.com>
2020-01-10 16:21:02 -08:00
lguohan
483a5946a8
Revert "[MultiDB]except src and dockers : replace redis-cli with sonic-db-cli and use new DBConnector (#3928)" (#4002)
This reverts commit 0dae59ac30.
2020-01-10 08:27:34 -08:00
Dong Zhang
0dae59ac30 [MultiDB]except src and dockers : replace redis-cli with sonic-db-cli and use new DBConnector (#3928)
* [MultiDB]except src and dockers : replace redis-cli with sonic-db-cli and use new DBConnector
* fix vs tests along with swss vs tests together
2020-01-02 14:46:25 -08:00
Wataru Ishida
ed2d5f8a32 [broadcom]: respect the current network namespace when creating netdev (#3896)
https://github.com/Broadcom-Switch/OpenNSL/issues/26

Signed-off-by: Wataru Ishida <ishida@nel-america.com>
2019-12-23 10:27:22 -08:00
Judy Joseph
9c4c36e1b5 [broadom]: Upgrade broadcom SAI to 3.7.3.2
[Broadcom] : update saibcm-modules to sdk 6.5.16
[Broadcom SAI] : upgrade Broadcom SAI to 3.7.3.2
2019-12-19 06:28:38 +00:00
srideepDell
4458efbd71 DellEMC: Add support for new platform z9332f -32x400G (#3845)
* Switch Vendor: DellEMC
* Switch SKU: z9332F
* ASIC Vendor: Broadcom
* Swich ASIC: tomahawk3
* Port Configuration: 32x400G
* SONiC Image: sonic-broadcom.bin

* Changes Include ipmitool implementation for platform_sensors script is inclued in pmon startup
2019-12-17 15:26:23 -08:00
Wirut Getbamrung
1e5d25b48e [platform-celestica]: Update fancontrol service for Seastone-DX010 device (#3690)
* [platform/cel]: add fancontrol service support for dx010

* [device/celestica]: add hysteresis temp to dx010 fancontrol configuration
2019-12-16 09:04:42 -08:00
Aravind Mani
9cb12e6474 DellEMC: S52xx platforms optoe driver changes (#3865)
used overriding method instead of making changes in sfputilbase.py and changed the sff84xx to optoe driver for both QSFP and SFP.
2019-12-16 08:57:25 -08:00
Wirut Getbamrung
1286e5ed3f [platform/cel]: Remove afulnx_64 (#3900)
remove afulnx_64 install script
2019-12-16 07:30:35 -08:00
Wataru Ishida
e8f3bee0b4 [broadcom]: fix KNET MTU setting with Linux Kernel > 4.10.0 (#3895)
We need to set min_mtu/max_mtu properly to support MTU setting

https://github.com/torvalds/linux/commit/61e84623

Signed-off-by: Wataru Ishida <ishida@nel-america.com>
2019-12-13 14:41:00 -08:00
ciju-juniper
f126258d5f [Juniper][QFX5210] Platform monitoring updates (#3899)
As part of this commit, there are a few enhancements being
made for EM policy implementation: a) Introduced hysteresis
algorithm to prevent fan hunting b) Reading ASIC temperature
to make decision for fan speed.

As part of the PR# 3599, Workaround for the boot problem
from secondary bios was addressed. When the SONiC image is
upgraded, this resulted in creating multiple entries for
BOOTX64.EFI. To fix the problem, as part of this changeset,
introducing a check to see if there is already an UEFI entry
for BOOTX64.EFI and accordingly creating / skipping the UEFI
entry.

Signed-off-by: Ciju Rajan K <crajank@juniper.net>
2019-12-13 09:06:05 -08:00
srideepDell
dd322270cb [DellEMC]: utility to set onie modes from NOS (#3860)
This common utility would set next boot option as onie mode and
when reboot is triggered it would reboot the box into that specific onie mode.

Current support modes are rescue/install/uninstall
2019-12-10 15:13:25 -08:00
Arun Saravanan Balachandran
343ad78931 DellEMC : Platform2.0 API Implementation [S6100, S6000, Z9100] (#3740) 2019-12-03 10:36:41 -08:00
ChiouRung Haung
82e309f6de [broadcom]: Add bcmcmd and bcmsh to docker-syncd-brcm-rpc (#3739)
Signed-off-by: chiourung_huang <chiourung_huang@edge-core.com>
2019-11-20 07:41:04 -08:00
srideepDell
413f07820d [devices]: Firmware upgrade support for DellEMC platforms(s5248,s5232,z9100,s6100,z9264f) (#3743)
* This method is used to update firmware components such as CPLD,FPGA,BIOS,SMF
           * This uses ONIE firmware upgrade design to stage firmware update from NOS.

a) Copy latest firmware updater image to target running sonic.
b) Run “./fw-updater -u onie-firmware-x86_64-dellemc_s5200_c3538-r0.3.40.5.1-9.bin”.
c) This would automatically reboot ONIE into update mode and update firmware components to latest and reboot back to sonic without any user intervention.

Signed-off-by: Srideep Devireddy <srideep_devireddy@dell.com>
2019-11-14 00:08:15 -08:00
Aravind Mani
4f35a81065 DellEMC:optoe driver support in DellEMC platforms (#3747)
- optoe driver truncates invalid pages(ff) but sff driver doesn't truncate.so,the DOM related calculation made by sff8436 driver will show incorrect data.
- Few optics doesn't support DOM.
- SFP plugins currently returns None for unreadable pages and this'd throw the below mentioned error in sfpshow eeprom --dom.
2019-11-14 00:04:11 -08:00
ciju-juniper
73721223cd [Juniper][QFX5210] Updating platform README (#3746)
* Updating the platform README

Added the steps for configuring FEC mode

Signed-off-by: Ciju Rajan K <crajank@juniper.net>
2019-11-13 09:06:45 -08:00
Danny Allen
5174ec8923 [bcm SAI] Upgrade Broadcom SAI to version 3.5.3.1m-26 (#50)
Signed-off-by: Danny Allen <daall@microsoft.com>
2019-11-12 18:46:21 -08:00
Joe LeVeque
85b0de3df1 [docker-syncd]: Restart SwSS, syncd and dependent services if a critical process in syncd container exits unexpectedly (#3534)
Add the same mechanism I developed for the SwSS service in #2845 to the syncd service. However, in order to cause the SwSS service to also exit and restart in this situation, I developed a docker-wait-any program which the SwSS service uses to wait for either the swss or syncd containers to exit.
2019-11-09 10:26:39 -08:00
CharlieChenEC
099f9b0a6a [devices]:start opennsl modules after platform handle mac service on AS7326-56X/AS7726-56X (#3726)
AS7326-56X and AS7726-56X use the same design so both devices have the same problem.
The detailed description below takes AS7326-56X as the example to explain.

Original implementation:
- In platform/broadcom/sonic-platform-modules-accton/as7326-56x/service/as7326-platform-handle_mac.service,
  it executes the script file "accton_handle_idt.sh".
- In "accton_handle_idt.sh", it modifies the content of the script file "/etc/init.d/opennsl-modules"
  to insert the lines to execute "idt_init.sh" before the command to load broadcom linux kernel module "linux-kernel-bde.ko".
- The script "idt_init.sh" cannot be executed at the first boot of SONiC after installing SONiC under ONIE. This is the reason why all of the ports does not work.

New implementation:
- Let "as7326-platform-handle_mac.service" execute "idt_init.sh".
- Change the content of "as7326-platform-handle_mac.service" to define the service type as "oneshot". Add the settings to ensure "as7326-platform-handle_mac.service" is executed before "opennsl-modules.service".
  By setting the service type as "oneshot", it is guaranteed that "opennsl-modules.services" is started only when the forked process to execute the script file "idt_init.sh" is terminated

Signed-off-by: charlie_chen <charlie_chen@edge-core.com>
2019-11-09 10:23:18 -08:00
Guohan Lu
e877e471c0 [devices]: fix debian/control for accton platform modules
the bug was introduced by commit ac2908ef03

Signed-off-by: Guohan Lu <gulv@microsoft.com>
2019-11-09 05:03:07 +00:00
Pradchaya Phucharoen
2e61e14bb3 [devices] Celeatica Silverstone add IPMI platform sensor read. (#3591)
* [platform/broadcom] Celeatica Silverstone add IPMI platform sensor read.

* [platform_sensors] Silverstone update temperature sensor description
2019-11-07 22:02:52 -08:00
jostar-yang
ac2908ef03 [devices]: Add thermal plan to as4630_54pe (#3665) 2019-11-07 21:53:21 -08:00
dereksun01
6c0ab4b926 [device] accton device of as5812_54t supports SAI and modify as5812_54t periphery (#3663)
- Support as5812_54t SAI.
- Modify as5812_54t periphery.

Signed-off-by: derek_sun <derek_sun@edge-core.com>
2019-11-07 16:24:42 -08:00
Santhosh Kumar T
a5e2799b33 [DellEMC] S6100 Watchdog Support (#3698)
Implement Watchdog platform2.0 API for DellEMC S6100 platform.
- Added new file watchdog.py in sonic_platform directory.
- Enabled API support to Enable/disable watchdog.
2019-11-07 13:27:02 -08:00
brandonchuang
7d4093d6ed [device/platform] Add reset in sfputil.py for Accton AS7326-56X (#3685)
Add reset in sfputil.py for as7326-56x.

Signed-off-by: brandon_chuang <brandon_chuang@edge-core.com>
2019-11-06 18:57:08 -08:00
Wirut Getbamrung
65fc916dcf [platform/device] - Implement Silverstone platform API [Chassis/Fan] (#3706)
Implement part of the Chassis and Fan related APIs.

- Chassis APIs

get_base_mac()
get_serial_number()
get_serial_number()
get_system_eeprom_info()
get_reboot_cause()

- Fan APIs

get_direction()
get_speed()
get_target_speed()
get_speed_tolerance()
set_speed()
set_status_led()
get_target_speed()

- Fan APIs base on Device API

get_name()
get_presence()
get_model()
get_serial()
get_status()

Signed-off-by: Wirut Getbamrung wgetbumr@celestica.com
2019-11-06 18:56:17 -08:00
Samuel Angebault
05e659901f [arista] Add support for more 7280CR3 variants (#3711)
* Add extra Smartsville hwskus
2019-11-06 10:11:38 -08:00
ciju-juniper
a4c35b72d8 [Juniper][QFX5210] Updating preemphasis values for supported optics (#3686)
* Preemphasis values for various optics

This patch adds the preemphasis values for the various supported
optics for qfx5210 platform

Signed-off-by: Ciju Rajan K <crajank@juniper.net>
2019-11-05 11:55:58 -08:00
rkdevi27
ebcd2d5252 [devices]: Fixed Fpga crash on dell z9264 (#3672)
Fixed the fpga crash issue which we see in 15-20 mins time frame after onie-install. Accessing stale i2c transfer message buffer causes this crash. Te message buffer becomes stale due to race between i2c transfer and fpga interrupt handler.

This new state STATE_STOP will not be exposed for the wake up call till all the ISR of previous transfer is completed successfully.
2019-11-05 11:26:34 -08:00
Aravind Mani
d6f3fde884 [devices]: support SFP+ for Z9264F (#3700)
- Changed sff8436 to optoe driver for both QSFP and SFP+
- Used optoe1 for QSFP and optoe2 for SFP.
2019-11-04 22:10:20 -08:00
ciju-juniper
6cb445cb9e [Juniper][QFX5210]Adding the system reboot handler (#3599)
The following changes are done as part of this commit:

- Adding the system reboot handler
- Adding swizzle reset case for the reboot reason
- Workaround for the boot problem from Golden bios
- Adding the logging messages for platform scripts
- EEPROM parsing and library routines
2019-10-19 20:46:32 -07:00
lguohan
2eb6ccee51
[SAI]: use SAI 1.5.1 header
[submodule]: update sonic-sairedis

1f4a1d7 2019-09-24 | Add warm boot support with removed/created port (#515) (HEAD, origin/master, origin/HEAD) [Kamil Cudnik]
59e530a 2019-09-20 | Add support for debug counters (#517) [Danny Allen]
1ed09e0 2019-09-20 | fully support bulk_remove in sairedis (#516) [Dong Zhang]
6cb1b31 2019-09-17 | Add support for port remove and port create (no warm boot) (#500) [Kamil Cudnik]
83d86ed 2019-09-17 | Fix c_str() in printf for string (#514) [Kamil Cudnik]
11b44b5 2019-09-16 | Advance SAI reference pointer to v1.5.0 (#509) [Wenda Ni]
38c6945 2019-09-14 | support sflow on virtual switch (#498) [Rakesh Datta]
e7d766e 2019-09-09 | Add acl counter match logic based on acl entry field (#511) [Kamil Cudnik]
58845ce 2019-09-06 | Add extra check for warm boot discovered RIDs (#502) [Kamil Cudnik]
b4893ef 2019-09-05 | [flex counter]: Lower the severity of log during rif counter support check (#504) [shikenghua]
b859344 2019-09-03 | fix found typo in new added syncMode related codes (#506) [Dong Zhang]

also update broadcom and mellanox SAI
2019-10-18 09:18:06 -07:00
srideepDell
60a7f4d653 [device]: Add a new supported device DellEMC s5248f (#3547)
* Switch Vendor: DellEMC
* Switch SKU: s5248F
* ASIC Vendor: Broadcom
* Swich ASIC: Trident3
* Port Configuration: 48x25G,4x100G,2x200G
* SONiC Image: sonic-broadcom.bin

* Changes Include ipmitool implementation for platform_sensors script is inclued in pmon startup
* Added 25G,10G configruation(25G is default) 1-48FP. 4x100G,2x200G (49-54 FP)
* LED support for s5248f
2019-10-17 18:43:59 -07:00
zzhiyuan
6ecec007e3 [arista]: Update arista drivers submodule (#3618)
Fixed variable name causing problems for sonic-platform-commons for arista.
2019-10-16 18:38:13 -07:00
Roy Lee
4d8a01c26c [device] as4630-54pe: update sfputil for get_transceiver_change_event. (#3315)
Signed-off-by: roy_lee <roy_lee@accton.com>
2019-10-16 18:01:38 -07:00
Arun Saravanan Balachandran
ee4ca2c0c5 DellEMC : Platform2.0 API Implementation for Component [S6000, S6100, Z9100] (#3588) 2019-10-16 17:57:32 -07:00
habeebmohammed
2d87ca4a18 [inventec/d7054q28b] Add new platform APIs chassis, eeprom,fan, psu, thermal, sfp (#3577) 2019-10-16 16:49:39 -07:00
tiantianlv
368c4fa9fe [devices]: support Silverstone platform (#3474)
* [device/celestica] Add silverstone device plugins and configs

* add port led fireware of PAM4!

* [platform/broadcom] Add Celestica silverstone platform module.

* Add switch configuration Silverstone!

* Add 128x100 configuration!

* Delete serdes copper parameter!

* [device/celestica] Fix incorrect index in Silverstone 128x100G port cfg

* [platform/broadcom] Remove unrelated platform other than Silverstone

* [device/celestica] Silverstone remove minigraphs

* [device/celestica] Silverstone update sai.profile to use hwsku path

* [device/celestica] Silverstone format sfputil codes

* [device/celestica] Add speed column to Silverstone 32x400G port conf

* [device/celestica] Silverstone disable 10G ports prevent orchagent crash

 *These ports will be added later after BRCM SAI support SFP.

* Remove LED redundancy configuration and add comments!

* [plugins/sfputil] update Silverstone ports to QSFP-DD type

* [plugins/sfputil] Silverstone fix return NotImplementedError with raise
2019-10-09 17:47:46 -07:00
Ying Xie
9bdd693e81 [bcm SAI] upgrade Broadcom SAI to version 3.5.3.1m-25 (#48)
- Built with SAI header version v1.5.0.

Signed-off-by: Ying Xie <ying.xie@microsoft.com>
2019-10-09 17:28:33 -07:00
David Xiao
110bff9b47 [Inventec][D6356] Update driver and Add new platform API implementation (#3521)
* Update driver and Add new platform API implementation for Inventec D6356
* Update Platform API (SFP)
* Update Platform API (QSFP)
* Update Platform API (FAN, THERMAL)
Signed-off-by: David Xiao <xiao.david@inventec.com>
2019-10-09 16:16:05 -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
Wirut Getbamrung
ecdd866713 [device/celestica]: Update Component APIs (#3510)
* [platform/cel]: add bios upgrade tool
* [device/celestica]: update Seastone/E1031 component api to support BIOS upgrade
* [device/celestica]: add error handler for eeprom api
* [device/celestica]: add component description
2019-09-27 12:44:16 -07:00
Wenda Ni
7b0a5ba6ae Remove the divide by 4 operation to the under the hood SAI (#1532)
* Remove the divide by 4 operation to the under the hood SAI

This is to avoid the need and thus the confusion for application program to know
the mmu internal architecture

This change must have support from SAI change to reach the correct
config

Signed-off-by: Wenda <wenni@microsoft.com>

* Relegate the divide by 4 operation to the under the hood SAI for egress
lossless pool

Extend to 7060 and 6100

Signed-off-by: Wenda <wenni@microsoft.com>

* Add more TH/TH2 hwskus

Signed-off-by: Wenda Ni <wenni@microsoft.com>

* Update config test

Signed-off-by: Wenda Ni <wenni@microsoft.com>

* Add TH2 ingress lossy profile

Signed-off-by: Wenda Ni <wenni@microsoft.com>

* Move the divide by 4 operation to SAI internal

Signed-off-by: Wenda Ni <wenni@microsoft.com>

* [bcm SAI] Upgrade Broadcom SAI to version 3.5.3.1-15

- Broadcom SAI 3.5 GA release 20190924.

Signed-off-by: Ying Xie <ying.xie@microsoft.com>
2019-09-25 15:57:07 -07:00
Arun Saravanan Balachandran
5c9348b093 DellEMC Z9100 : Platform2.0 API implementation [PSU, Thermal] (#3361)
* DellEMC Z9100 : Platform2.0 API implementation [PSU, Thermal]

* DellEMC Z9100 : Platform2.0 API [ Thermal ]

* DellEMC Z9100 : Platform2.0 API [PSU, Thermal]
2019-09-18 15:09:43 -07:00
Arun Saravanan Balachandran
6ca0d7b197 DellEMC S6000 : Platform2.0 API implementation [PSU, Thermal] (#3357)
* DellEMC S6000 : Platform2.0 API implementation [PSU, Thermal]

* Fix invalid number of arguments error

* DellEMC S6000 : Platform2.0 [ Thermal ]

* DellEMC S6000 : Platform2.0 API [PSU, Thermal]

* Updated merge changes
2019-09-18 15:06:42 -07:00
sridhar-ravindran
3c0b56a709 [DELL] S6100 Support PowerCycle in Last Reboot Reason (#3403)
* [DELL] S6100 Support PowerCycle in Last Reboot Reason

* handle first time boot properly

* S6000 Last Reboot Reason Fix
2019-09-17 16:51:46 -07:00
Arun Saravanan Balachandran
1cbc99d99e
Merge branch 'master' into platform2.0 2019-09-16 10:33:13 +05:30
Aravind Mani
ac1d2c1023 [devices]: DellEMC Z9264f_50gProfile: Added support for 50G T0 profile (#3418)
* Z9264f_50gProfile: Added support for 50g profile
2019-09-14 20:23:48 -07:00
Sujin Kang
faa754fe3c
Merge pull request #3363 from ArunSaravananBalachandran/platform2.0_s6100
DellEMC S6100 : Platform2.0 API implementation [Module, Thermal]
2019-09-13 17:18:20 -07:00
Arun Saravanan Balachandran
da2ae4959d Updated merge changes 2019-09-13 03:53:04 -07:00
ciju-juniper
3ff0c4d0dc [Juniper][QFX5210] Optoe driver for SFP management (#3438)
* Adding platform support for Juniper QFX5210

This switch has 64 QSFP28 (40G/100G) ports, 2 SFP+ (1G/10G) ports
on Broadcom Tomahawk II chipset. CPU used in QFX5210-64C-S is
Intel Broadwell-DE. The machine has Redundant and hot-swappable
Power Supply (1+1) and also has Redundant and hot swappable fans (3+1).

Signed-off-by: Ciju Rajan K <crajank@juniper.net>

* [Juniper][QFX5210] Optoe driver for SFP management

This commit implements the following changes
 - Moving to optoe driver for sfp management
 - Removing the old sfp driver
 - Updating the port-config.ini to add the index field
 - Correction in sfputil.py to incorporate optoe driver
 - Platform support for 'poweroff' command

Signed-off-by: Ciju Rajan K <crajank@juniper.net>
2019-09-11 09:39:24 -07:00
Arun Saravanan Balachandran
372f786e7a
Merge branch 'master' into platform2.0 2019-09-11 15:45:22 +05:30
Arun Saravanan Balachandran
a9310e4dac DellEMC S6000: Platform2.0 API [Fan] 2019-09-11 05:21:57 -04:00
Roy Lee
9179990ba1 [device][accton] Add as5812-54t. (#3428)
* Verified as5812_54t platfrom, except SDK and monitor.
Signed-off-by: roy_lee <roy_lee@accton.com>

* Add as5812-54t to build its debian package.
Signed-off-by: roy_lee <roy_lee@accton.com>

* Use the right cpld read/write api.
Signed-off-by: roy_lee <roy_lee@accton.com>

* Update device paths.
Signed-off-by: roy_lee <roy_lee@accton.com>

* update psu driver, correct python lib location.
Signed-off-by: roy_lee <roy_lee@accton.com>

* Give a default return value.
Signed-off-by: roy_lee <roy_lee@accton.com>
2019-09-10 22:07:13 -07:00
zzhiyuan
2095d6ec03 [devices]: Update arista submodule (#3431)
- Add support for fans in new platform API
- Mount platform API in pmon for arista platforms
2019-09-10 14:37:05 -07:00
Arun Saravanan Balachandran
584ac010a0 DellEMC S6100 : Sync latest changes to Module 2019-09-09 01:25:32 -07:00
Arun Saravanan Balachandran
4bad5eabb6
Merge branch 'master' into platform2.0_s6100 2019-09-09 12:45:07 +05:30
jostar-yang
d47ec5268c [devices]: Add to support thermal plan in as9716 platform (#3409) 2019-09-06 15:11:46 -07:00
sridhar-ravindran
309af83225 [DELL][S6000] Platform 2.0 TransceiverChange Support (#3414)
Implemented remaining APIs in s6100,z9100,s6000
Removed soft link in s6100,s6000,z9100 and implemented seperately
Implemented get_transceiver_change_event in S6000
2019-09-06 14:57:52 -07:00
ciju-juniper
fdcb69d048 [devices]: Adding platform support for Juniper QFX5210 (#3270)
This switch has 64 QSFP28 (40G/100G) ports, 2 SFP+ (1G/10G) ports
on Broadcom Tomahawk II chipset. CPU used in QFX5210-64C-S is
Intel Broadwell-DE. The machine has Redundant and hot-swappable
Power Supply (1+1) and also has Redundant and hot swappable fans (3+1).

Signed-off-by: Ciju Rajan K <crajank@juniper.net>
2019-09-06 07:52:45 -07:00
ChiouRung Haung
4c36866a26 [syncd-rpc-brcm]: Fix syncd terminated in broadcom rpc image (#3391)
Signed-off-by: chiourung_huang <chiourung_huang@edge-core.com>
2019-08-28 11:55:27 -07:00
Wirut Getbamrung
a5b805e37a [platform/cel]: Add new API installer to pmon and base image (#3379)
* [platform/cel]: Add new api installer

* [device/celestica]: Update APIs to support both pmon and base image

* [device/e1031]: update hwmon name
2019-08-28 11:19:34 -07:00
Arun Saravanan Balachandran
dd9c2a5b22 DellEMC S6100 : Platform2.0 API [Module] 2019-08-23 23:34:53 -04:00
Aravind Mani
f238042471 Z9264f-LED_changes (#3376)
Updated z9264_platform.sh to change appropriate LED when HWSKU is changed.
2019-08-23 12:00:37 -07:00
Samuel Angebault
892473981e [device/arista] Update drivers submodules (#3378)
- increase timeout for power supply driver initialization
2019-08-23 11:55:24 -07:00
paavaanan
aea84a7477 BIOS upgrade support with API2.0 for DellEMC S6100 (#3116) 2019-08-23 11:12:26 -07:00
Arun Saravanan Balachandran
9cebe7c153 DellEMC : Platform2.0 API Implementation for Chassis [S6000, S6100, Z9100] 2019-08-23 13:37:38 -04:00
Arun Saravanan Balachandran
79b1eb8fc1 DellEMC S6100 : Platform2.0 API [Module, Thermal] 2019-08-20 10:56:57 -04:00
JohnsonYJLu
cc6642300a update cpld & swpld module attribute (#3362)
Signed-off-by: johnson <JOHNSON.LU@deltaww.com>
2019-08-19 10:23:48 -07:00
Arun Saravanan Balachandran
c870b39589 DellEMC S6100 : Platform2.0 API implementation [Module, Thermal] 2019-08-19 09:35:30 -04:00
Jonathan Tsai
a5c351a467 [Quanta/platform] Update IX1B to support Stretch (#2358)
* [Quanta/platform] Update IX1B to support Stretch

What I did
Update IX1B's platform folders to support Stretch
How I did it
Follow https://github.com/Azure/SONiC/wiki/Porting-Guide
How to verify it
Follow https://github.com/Azure/SONiC/wiki/Command-Reference
to verify hardware information can get from CLI correctly

Signed-off-by: Jonathan Tsai <jonathan.tsai@quantatw.com>
2019-08-15 02:25:43 -07:00
Samuel Angebault
05d75dec07 [device/Arista] Update drivers submodules (#3339)
- Improve smbus reliability for all platforms
 - Delay processing of the reboot cause to reduce critical path
 - Add support of get_change_event for PSUs
2019-08-15 02:22:37 -07:00
linalvin
4fed69ecbe [device][platform] Update Inventec new platform d6356 (#2791) 2019-08-15 01:00:52 -07:00
jostar-yang
ff6437eaaa [devices]: Add support fpga drv and pimutility for minipack platform (#3053) 2019-08-15 00:50:13 -07:00
Roy Lee
e19e661080 [device] as5712-54x, add more entries for sensors (#3328)
* Change psu driver to comfort to lm-sensors.
Signed-off-by: roy_lee <roy_lee@accton.com>

* Duplicate fan attributes with naming conforming to lm-sensors.
Replace psu drivers.
Signed-off-by: roy_lee <roy_lee@accton.com>

* Revise cpr_4011_4mxx.c to support lm-sensors.
Signed-off-by: roy_lee <roy_lee@accton.com>
2019-08-15 00:48:19 -07:00
Jonathan Tsai
ee31e3b8bb [Quanta] Add a new supported device and platform, IX9-32X (#3341)
Switch Vendor: Quanta
Switch SKU: IX9-32X
CPU: Broadwell-DE with BMC
ASIC Vendor: Broadcom
Switch ASIC: Tomahawk3, BCM56980
Port Configuration: 32x400G

Signed-off-by: Jonathan Tsai <jonathan.tsai@quantatw.com>
2019-08-15 00:43:34 -07:00
Wirut Getbamrung
ea063db4b6 [device/celestica]: Implement Sfp APIs based on the new platform API (#3290)
* [platform/cel]: update qsfp driver for dx010

* [device/celestica]: add sfp api

* [device/celestica]: add eeprom api
2019-08-14 17:51:20 -07:00
sridhar-ravindran
88dc7ad13e [DELL][Z9100,S6100,S6000] Platform 2.0 SFP Changes (#3229)
* [DELL][Z9100,S6100,S6000] Platform 2.0 SFP Changes

Added support in sfp.py file which will be generic. Send the eeprom path and sfp_control path from chassis.py
2019-08-13 08:47:21 -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
Roy Lee
b45c1aca73 [device] Adding platform support for Accton as7315-27xb (#3301)
This switch has 27 fiber ports, 4x25G, 20x10G , and 3x100G ports ports.
CPU: Intel ® Atom™ Processor C3508,1.6GHz
BMC: None
MAC: Broadcom BCM88470 (Qumran AX).
MISC: Support IEEE1588v2, hot-swappable PSU, hot-swappable fan tray.

But notice here, BCM88470 is not supported for SAI now.
So the syncd container is not running so far.

Signed-off-by: roy_lee <roy_lee@accton.com>
2019-08-08 01:13:46 -07:00
Jonathan Tsai
2ff8f5d1b9 [Quanta] Add a new supported device and platform, IX7-32X, IX8-56X (#3297)
Switch Vendor: Quanta
Switch SKU: IX7-32X
CPU: Intel C2558
ASIC Vendor: Broadcom
Switch ASIC: Trident3, BCM56870
Port Configuration: 32x100G

Switch Vendor: Quanta
Switch SKU: IX8-56X
CPU: Intel C2558
ASIC Vendor: Broadcom
Switch ASIC: Trident3, BCM56873
Port Configuration: 48x25G + 8x100G

Signed-off-by: Jonathan Tsai <jonathan.tsai@quantatw.com>
2019-08-08 01:11:29 -07:00
jostar-yang
cc312793b5 Fix read lm75 thermal sensors issue (#3285) 2019-08-07 13:00:41 -07:00
Karthik Gengan
a99a37dbef DellEmc: Platform 2.0 Api(chassis,fan,eeprom) for S6100 and Z9100 (#3234) 2019-08-07 11:02:56 -07:00
Arun Saravanan Balachandran
f0c0fac162 DellEMC S6000 : Platform2.0 API implementation for EEPROM (#3295) 2019-08-06 15:53:07 -07:00
Wirut Getbamrung
1dd2688844 [device/celestica]: Implement thermal base API based on the new platform API (#3220) 2019-08-05 09:01:50 -07:00
Jonathan Tsai
2bb58044c0 [Quanta] Add a new supported device and platform, IX8C-56X (#3182)
* [Quanta] Add a new supported device and platform, IX8C-56X

Switch Vendor: Quanta
Switch SKU: IX8C-56X
ASIC Vendor: Broadcom
Switch ASIC: Trident3
Port Configuration: 48x25G + 8x100G

Signed-off-by: Jonathan Tsai <jonathan.tsai@quantatw.com>
2019-08-01 22:19:52 -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
Roy Lee
ff8e34463d [device/Accton] Fix i2c fault from ir3570a on 3 models (#3245)
I2c burst read may failed due to misoperation of ir3570a(A DC-to-DC converter IC).
As #2966, there are 3 more models have this symptom, as7326-56x, as7726-32x, and as9716-32d.
Also correct typo of naming on as7816-64x and as7716-32x.

Signed-off-by: roy_lee roy_lee@accton.com

What I did
Disabling i2c function of ir3570a which may failed i2c tranfer to others.
Close channel of mux after data transfered.

How I did it
Identify version of ir3570, if it's ir3570a, disable its alias i2c address.
Enable parameter of driver i2c_mux_pca954x to close channel on after every access.

How to verify it
Write 08 to offset 0xcf of systom eeprom and execute i2c block read.
It will return error.
plug-in several transceivers and run "show interfaces transceiver presence" and "sfputil show presence". You may see the different result. (But doing this requires updated xcvrd).

Signed-off-by: roy_lee <roy_lee@accton.com>
2019-07-31 11:28:03 -07:00
Lawrence Lee
7271fe598f [build]: Move Systemd service start to systemd generator (#3172)
- What I did

 Move the enabling of Systemd services from sonic_debian_extension to a new systemd generator

- How I did it

  Create a new systemd generator to manually create symlinks to enable systemd services
  Add rules/Makefile to build generator
  Add services to be enabled to /etc/sonic/generated_services.conf to be read by the generator at boot time

Signed-off-by: Lawrence Lee <t-lale@microsoft.com>
2019-07-29 15:52:15 -07:00
sridhar-ravindran
95558ad5ce [DELLEMC][S6000] Platform 2.0 Reboot Reason and fixed issue in process-reboot-cause (#3156)
Added Reboot Reason for S6000 in platform 2.0
Fixed issue in process-reboot-cause
Added package uninstall code in platform de-init code for z9100, s6100
- How I did it
-> Added support for S6000 Reboot Reason
-> Added platform.py for all platforms
-> Verified show reboot-cause command with the code changes. Added UT logs with show reboot-cause
-> Modified process-reboot-cause service to start after pmon.service. In S6000, we have to wait for nvram to be loaded.
-> If reboot-cause service starts before pmon.service, show reboot-cause is showing incorrect reason.
-> Bug fix in process-reboot-cause file
- import sonic_platform
+ import sonic_platform.platform
2019-07-24 12:15:46 -07:00
Roy Lee
efe9438c61 [Accton] Correct port index and offer the default speed. (#3213)
* [as5712-54x]
Verified with index from 1.
Add qsfp_event() for command "show interaface trancerver".
Signed-off-by: roy_lee <roy_lee@accton.com>

* [as6712-32x]
Add default port speed.
Verified with index from 1.

Signed-off-by: roy_lee <roy_lee@accton.com>

* [as7726-32x]
Add default port speed.
Verified with index from 1.
Signed-off-by: roy_lee <roy_lee@accton.com>

* [as7712-32x]
Add default port speed.
Verified with index from 1.
Signed-off-by: roy_lee <roy_lee@accton.com>

* [as5812-54x]
Add default port speed.
Verified with index from 1.

Signed-off-by: roy_lee <roy_lee@accton.com>

* [as5712-54x]
Update port-config with 1-based index.
Signed-off-by: roy_lee <roy_lee@accton.com>

* [as5812-54x]
Somehow the service may block, use type=simple to work-around.
Add syslog function for monitor.
Signed-off-by: roy_lee <roy_lee@accton.com>

* [as7716-32x]
Update port-config with 1-based index.
Signed-off-by: roy_lee <roy_lee@accton.com>

* [as7816-64x]
Update port-config with 1-based index.
Implement sfputil change_event.
Signed-off-by: roy_lee <roy_lee@accton.com>

* [as7326-56x]
Update port-config with 1-based index.
Implement sfputil change_event.

Signed-off-by: roy_lee <roy_lee@accton.com>

* Remove debug code.
Signed-off-by: roy_lee <roy_lee@accton.com>

* [as7312-54x]
Update port-config with 1-based index and default port speed.

Signed-off-by: roy_lee <roy_lee@accton.com>
2019-07-24 12:14:43 -07:00
Harish Venkatraman
dbe07a4339 [sonic-platform-modules-dell] Graceful platform reboot (#2912)
The following commit addresses the graceful unmounting of file
system and graceful shutdown of dockers before calling a
cold reboot which will cause a power cycle of SSD. This ensures
orderly shutdown and no corruption of files systems because
of the power cycle to SSD.
This commit will use the existing systemd-reboot service scripts
and override the configuration to do cold reboot for S6100 and
Z9100.
Unit tested the fix and graceful shutdown of file system and
dockers are done with cold reboot.

Signed-off-by: Harish Venkatraman <harish_venkatraman@dell.com>
2019-07-23 15:26:58 -07:00
Wirut Getbamrung
0340cf3b8b [device/celestica]: Implement device base APIs for Fan/PSU API based on the new platform API (#3163)
* [platform/cel]: add fan present sysfs

* [device/celestica]: move component device to chassis

* [device/celestica]: add basic device api
2019-07-23 10:00:02 -07:00
srideepDell
ce5d16f858 [devices]: DellEMC [s5232]: PSU detection and default led state support (#3185)
*   [devices]: Add a new supported device DellEMC s5232f

    * Switch Vendor: DellEMC
    * Switch SKU: s5232F
    * ASIC Vendor: Broadcom
    * Swich ASIC: Trident3
    * Port Configuration: 32x100G
    * SONiC Image: sonic-broadcom.bin

    * LED support for s5232f
    * Changes Include ipmitool implementation for platform_sensors script is inclued in pmon startup
    * Added 100G,25G,10G configruation ( 100G is default).

* s5232[device] PSU detecttion and default led state support
2019-07-19 07:01:02 -07:00
Roy Lee
9c4d23427b [device][accton]: add support for as7312-54xs (#3140)
* Add driver and util for peripherals of as7312-54xs, most are copied from as7312-54s.
Signed-off-by: roy_lee <roy_lee@accton.com>

* Add default port speed and index from 1.
Signed-off-by: roy_lee <roy_lee@accton.com>

* Update i2c addr of psus.
Add system logging for monitor.
Signed-off-by: roy_lee <roy_lee@accton.com>

* Correct syntax of module_dirs.
Signed-off-by: roy_lee <roy_lee@accton.com>

* Validate sfputil after tested.
Signed-off-by: roy_lee <roy_lee@accton.com>

* Correct the index of eeprom mapping.
Signed-off-by: roy_lee <roy_lee@accton.com>
2019-07-18 07:30:22 -07:00
ArunSaravananBalachandran
e520cbe9e3 DellEMC S6100 : Platform2.0 API implementation for PSU (#3132) 2019-07-10 11:54:14 -07:00
Stepan Blyshchak
e4300b8f76 [sairedis.mk] do not build rpc sairedis when not needed (#3109)
Signed-off-by: Stepan Blyschak <stepanb@mellanox.com>
2019-07-06 14:55:31 -07:00
brandonchuang
5a89cf5733 [device][platform] add platform as5835-54t, accton. (#3119)
Signed-off-by: brandon_chuang <brandon_chuang@edge-core.com>
2019-07-06 14:53:02 -07:00
Samuel Angebault
ae2e555418 [device/Arista] Update arista driver submodules (#3122)
- Add PSU support for the platform API
 - Complete LED support for the platform API
 - Misc refactoring
2019-07-06 14:50:25 -07:00
sridhar-ravindran
56608bf06b [devices]: DELL Platform 2.0 API Infra and Reboot Reason support in Z9100 & S6100 (#3063) 2019-07-03 06:52:35 -07:00
paavaanan
4f737f8b65 [devices]: DellEMC S6100 Watchdog support (#2835) 2019-06-28 23:47:36 -07:00
jostar-yang
9b0d1b74f9 [devices]: Add support as9716 platform (#2993) 2019-06-28 21:53:06 -07:00
sridhar-ravindran
fe45a0d1ea [devices]: DELLEMC: Z9100,S6100 Exporting Device Last PowerOn Reason (#3059) 2019-06-28 21:49:12 -07:00
srideepDell
0695a6449f [devices]: Add a new supported device DellEMC s5232f (#3090)
* Switch Vendor: DellEMC
    * Switch SKU: s5232F
    * ASIC Vendor: Broadcom
    * Swich ASIC: Trident3
    * Port Configuration: 32x100G
    * SONiC Image: sonic-broadcom.bin

    * LED support for s5232f
    * Changes Include ipmitool implementation for platform_sensors script is inclued in pmon startup
    * Added 100G,25G,10G configruation ( 100G is default).
2019-06-28 21:40:50 -07:00
Samuel Angebault
a80baaf8d1 [device/Arista] Update drivers submodules (#3092)
- Add reboot cause support for the platform API
 - Add LED support for the platform API xcvrs and fans
 - Misc fixes
2019-06-28 21:37:36 -07:00
brandonchuang
0b8c1a10e8 [devices]: Add lpmode in sfputil.py for Accton AS6712-32X (#3095)
Signed-off-by: brandon_chuang <brandon_chuang@edge-core.com>
2019-06-28 21:35:27 -07:00
Karthik Gengan
b92d980769 Remapping S6000 platform files under Vendor (DellEmc) specific directory (#3079) 2019-06-25 12:23:24 -07:00
Sudharsan D.G
2e40fa5dbe [devices]: Poller to detect Intel Rangely LPC failure for dell z9100/s6100 (#3065)
- What I did
Added Daemon to Log LPC bus degradation in Intel C2000 processor. Intel Rangeley C2000 processors with revision less than or equal to 2 have issue where LPC bus degrades over time in some processors. To identify the problem and to notify the issue, a daemon has been added which will log on encountering the issue.

- How I did it
Added a daemon which validates the CPLD scratch(0x102) and SMF scratch(0x202) registers by writing and reading values on regular polling intervals (300 seconds). If there is a discrepancy between read and write, a critical log will be thrown.

- How to verify it
The infra is verify by simulating the issue where between write and read, the value in register is modified and the log appearance is checked.

- Description for the changelog

Added Daemon to identify LPC bus degradation issue and notify using syslog in Dell S6100 and Z9100 platforms. This daemon will only run on processors with revision less than or equal to 2.
2019-06-24 08:13:40 -07:00
sridhar-ravindran
9cf34ec464 Revert "[Dell] [Z9100] Supporting PreEmphasis Settings for Optics (#2501)" (#3060)
This reverts commit ed2d87a710.
2019-06-22 14:45:43 -07:00
RAMA CHANDRA REDDY GADDAM
6370d64b3d [broadcom]: Check for broadcom platform sdk init ready during syncd start. (#2931)
- What I did
During boot/reload time, wait in a loop to check for bcm initialization.
Break the loop, once sdk is ready to process the 'bcmcmd' request (or) loop count reached the maximum value.

- How I did it
In the existing implementation during syncd start process will sleep for a fixed time (3 secs)
for sdk initialization to happen. But the time taken for sdk initialization is varying for different platforms.
To fix this issue, the syncd start process wait in a loop and check whether sdk is ready to process 'bcmcmd' command.

- How to verify it
Check for syncd process status and interface status.
Check for syslogs and no failures related to syncd should be present.
2019-06-19 01:25:37 -07:00
Qi Luo
e7b1988638
[submodule] update sonic-linux-kernel (#2985)
* [submodule] update sonic-linux-kernel
* update linux kernel version
* Fix many version strings
* update mellanox components (built with new kernel)
* [mlnx] add make files for SDK WJH libs
* Update arista driver submodule (#8)
Make the debian packaging point to a newer kernel version.
2019-06-18 10:00:16 -07:00
Shuotian Cheng
a5aa3bb0a5
[Broadcom]: Update SAI version to 3.5.2.3 (#3014)
--Create/remove port fix
--Support SAI_PORT_ATTR_SERDES_IPREDRIVER
--Egress ACL fix for PFC storm restoration
--Memory corruption during warm reboot
--SAI_OBJECT_TYPE_TUNNEL_MAP_ENTRY removal fix
--Segfault/memory corruption fix during switch shutdown
--Directed boardcast fix
--Pre-emphasis value for Dell 6100

Signed-off-by: Shu0T1an ChenG <shuche@microsoft.com>
2019-06-14 15:47:11 -07:00
Renuka Manavalan
cdca062693 [build]: Build sonic-broadcom.bin using debug dockers for all stretch based dockers (#2833)
* Updated Makefile infrastructure to build debug images.
As a sample, platform/broadcom/docker-orchagent-brcm.mk is updated to add a docker-orchagent-brcm-dbg.gz target.

Now "BLDENV=stretch make target/docker-orchagent-brcm-dbg.gz" will build the debug image.

NOTE: If you don't specify NOSTRETcH=1, it implicitly calls "make stretch", which builds all stretch targets and that would include debug dockers too.

This debug image can be used in any linux box to inspect core file. If your module's external dependency can be suitably mocked, you my even manually run it inside.

"docker run -it --entrypoint=/bin/bash e47a8fb8ed38"

You may map the core file path to this docker run.

* Dropped the regular binary using DBG_PACKAGES and a small name change to help readability.

* Tweaked the changes to retain the existing behavior w.r.t INSTALL_DEBUG_TOOLS=y.

When this change ('building debug docker image transparently') is extended to all dockers, this flag would become redundant. Yet, there can be some test based use cases that rely on this flag.

Until after all the dockers gets their debug images by default and we switch all use cases of this flag to use the newly built debug images, we need to maintain the existing behavior.

* 1) slave.mk - Dropped unused Docker build args
2) Debug template builder: renamed build_dbg_j2.sh to build_debug_docker_j2.sh
3) Dropped insignifcant statement CMD from debug Docker file, as base docker has Entrypoint.

* Reverted some changes, per review comments.
"User, uid, guid, frr-uid & frr-guid" are required for all docker images, with exception of debug images.

* Get in sync with the new update that filters out dockers to be built (SONIC_STRETCH_DOCKERS_FOR_INSTALLERS) and build debug-dockers only for those to be built and debug target is available.

* Mkae a template for each target that can be shared by all platforms.
Where needed a platform entry can override the template.
This avoids duplication, hence easier to maintain.

* A small change, that can fit better with other targets too.
Just take the platform code and do the rest in template.

* Extended debug to all stretch based docker images

* 1) Combined all orchagent makefiles into one platform independent make under rules/docker-orchagent.mk
2) Extened debug image to all stretch dockers

* Changes per review comments:
1) Dropped LIBSAIREDIS_DBG from database, teamd, router-advertiser, telemetry, and platform-monitor docker*.mk files from _DBG_DEPENDS list
2) W.r.t docker make for syncd, moved DEPENDS from template to specific makefile and let the template has stuff that is applicable to all.

* 1) Corrected a copy/paste mistake

* Fixed a copy/paste bug

* The base syncd dockers follow a template, which defines the base docker as DOCKER_SYNCD_BASE instead of DOCKER_SYNCD_<platform code>. Fix the docker-syncd-<mlnx, bfn>.mk to use the new one.

[Yet to be tested locally]

* Fixed spelling mistake

* Enable build of dbg-sonic-broadcom.bin, which uses dbg-dockers in place of regular dockers, for dockers that build debug version. For dockers that do not build debug version, it uses the regular docker.

This debug bin is installable and usable in a DUT, just like a regular bin.

* Per review comments:
  1) Share a single rule for final image for normal & debug flavors (e.g. sonic-broadcom.bin & sonic-broadcom-dbg.bin)
  2) Put dbg as suffix in final image name.
  3) Compared target/sonic-broadcom.bin.logs with & w/o fix to verify integrity of sonic-broadcom.bin
  4) Compared target/sonic-broadcom.bin.logs with sonic-broadcom-dbg.bin.log for verification

This fix takes care of ONIE image only. The next PR will cover the rest.
The next PR, will also make debug image conditional with flag.

* Updated per comments.
Now that debug dockers are available, do not need a way to install debug symbols in regular dockers.

With this commit, when INSTALL_DEBUG_TOOLS=y is set, it builds debug dockers (for dockers that enable debug build) and the final image uses debug dockers. For dockers that do not enable debug build, regular dockers get used in the final image.

Note:
The debug dockers are explicitly named as <docker name>-dbg.gz. But there is no "-dbg" suffix for image.
Hence if you make two runs with and w/o INSTALL_DEBUG_TOOLS=y, you have complete set of regular dockers + debug dockers. But the image gets overwritten.
Hence if both regular & debug images are needed, make two runs, as one with INSTALL_DEBUG_TOOLS=y and one w/o. Make sure to copy/rename the final image, before making the second run.
2019-06-12 01:36:21 -07:00
Olivier Singla
708999ad61 [devices]: Add Broadcom XLR/GTS (BCM9COMX2XMC) support for Tomahawk switch (BCM956960K) (#2682)
These patches add support for the Broadcom XMC card (XLR/GTS). At this moment
only Tomahawk switch (BCM956960K) is supported. Add
device/broadcom/x86_64-bcm_xlr-r0 and
platform/broadcom/sonic-platform-modules-brcm-xlr-gts files
2019-06-09 12:09:31 -07:00
lguohan
fa3ea537e7
[docker-saiserver]: upgrade docker saiserver to stretch for brcm/mlnx (#2983) 2019-06-08 16:27:19 -07:00
Samuel Angebault
df063bd78d [device/Arista] Add initial support for platform API (#2964)
* Congregate plugin scripts for Arista platforms

* Update arista driver submodules

Pulls new platform API related changes
2019-06-07 09:01:09 -07:00
brandonchuang
4073e8fa64 [device][platform] add platform as5835-54x, accton. (#2977)
Signed-off-by: brandon_chuang <brandon_chuang@edge-core.com>
2019-06-07 09:00:12 -07:00
Karthik Gengan
f7774bec6b [device]: DellEmc-S6000 : Back-end work for last reboot reason (#2974)
* DellEmc-S6000 Backend work for lastreboot reason
2019-06-07 08:59:54 -07:00
Roy Lee
4f85c7cd5f [devices/accton]:bugfix: potential i2c fault from IC IR3570a (#2966)
Disabling i2c function of ir3507a which may failed i2c tranfer to others.
Signed-off-by: roy_lee <roy_lee@accton.com>
2019-06-05 12:47:22 -07:00
Roy Lee
4d212debc7 [device][platform] add platform as5812-54x, accton. (#2889)
* Add new device accton_as5812_54x.
Signed-off-by: roy_lee <roy_lee@accton.com>

* Rename 5812's config.bcm.
Signed-off-by: roy_lee <roy_lee@accton.com>

* Change fan module to support lm-sensors.
Validate for thermal policy.
Signed-off-by: roy_lee <roy_lee@accton.com>

* Add bask reset and lpmode control of 6 QSFP ports.
Signed-off-by: roy_lee <roy_lee@accton.com>

* Get currect duty of fan for comparing. Instead of by stored duty from previous iteration.
Signed-off-by: roy_lee <roy_lee@accton.com>

* Roll back the mistakes to update mellanox submodules.
Signed-off-by: roy_lee <roy_lee@accton.com>

* Rollback for misoperation on submodule platform/p4/SAI-P4-BM.
Signed-off-by: roy_lee <roy_lee@accton.com>

* Change indexes of ports to start from 1, as them on the front panel.
Add low-power mode control of the transciever's eeprom, follows SFF-8436.
Signed-off-by: roy_lee <roy_lee@accton.com>
2019-05-28 22:44:32 -07:00
Sudharsan D.G
6d62249f04 [devices]: Optics fixes in Dell Z9100/Z9264f platforms (#2936) 2019-05-25 18:06:53 -07:00
Karthik Gengan
154a88331d [devices]: DellEmc-Z9264f:Interrupt based Optic OIR (#2926) 2019-05-22 22:09:53 -07:00
paavaanan
85077a9211 [devices]: Export reboot_reason sysfs attribute for DellEMC S6100/Z9100 (#2922) 2019-05-20 09:35:31 -07:00
Karthik Gengan
a5a5ba6d6a [devices]: DellEmc-Z9264f: Bug fixed in platform specific sensor script (#2916) 2019-05-19 22:05:46 -07:00
jostar-yang
c1a501e9d5 [devices]: Add to support as4630-54pe platform (#2895)
* Add to support as4630-54pe platform

* Add as4630 monitor psu/fan status
2019-05-18 22:11:38 -07:00
Samuel Angebault
aac0c24312 [device/Arista] Add support for the 7280CR3-32P4 (#2910)
* Add boot0 support for the 7280CR3

* Add platform and plugins for 7280CR3

* Add port config for 7280CR3

* Add platform_reboot for 7280CR3

* Add support for 7280CR3-32D4 based on the 7280CR3-32P4

* Update arista driver submodules

 - Introduce new 7280CR3-32P4
 - Improve to the led plugin for OSFP
2019-05-18 10:34:07 -07:00
Samuel Angebault
5d3da111b2 [device/arista] update arista drivers submodules (#2903)
- Update README.md
 - Improve reboot cause reporting on all platform
 - Refactor parts of the library toward sonic_platform API support
 - Add abstraction for fans
 - Export consistent sysfs entries for fan airflow direction
 - Bootstrap python testing of the driver library.
 - Fix miscellaneous bugs
2019-05-15 18:35:04 -07:00
paavaanan
d5d51c0369 LED Supprot For DellEMC Z9100 (#2799) 2019-05-14 16:07:40 -07:00
Sudharsan D.G
db7c42f750 [devices]: Adding new SKU to DELL Z9264f (#2891)
correcting default sku

Changes for adding tiers

Adding new SKU to Z9264f

correcting default sku

Changes for adding tiers

Modified reboot script

Adding new SKU to Z9264f

correcting default sku

Changes for adding tiers

Adding new SKU to Z9264f

correcting default sku

Changes for adding tiers

Modified reboot script

Renaming sai.profile

UT Fixes

Fixing z9100 c32

Modifying c64 sku

Changing default sku

Fixing typo
2019-05-13 13:36:25 -07:00
Wirut Getbamrung
38ad2a8dad [platform-celestica] - Implement FAN APIs based on the new platform API (#2739)
* [platform/cel] Implement FAN APIs based on the new platform API

* [platform/cel] Move platform api to under device platform

* [platform/cel] Remove rule to build platform api python wheel
2019-05-09 00:57:17 -07:00
paavaanan
b1862f4372 [devices]: DellEMC S6100/Z9100 sensor.conf update (#2861) 2019-05-09 00:22:18 -07:00
Sudharsan D.G
25f285d2ed [devices]: DELL S6000 CPLD driver update to recover if mux is hung during i2c operation (#2858) 2019-05-09 00:12:26 -07:00
Pradchaya Phucharoen
999ec0a7f2 [devices]: Add HLX a dps200 psu driver (#2871) 2019-05-09 00:05:21 -07:00
Roy Lee
584ed989c8 [device][accton]Add fan monitor for as7816-64x (#2859)
* catch signal SIGINT and SIGTERM to set all fans full-speed before end fan monitor.
Signed-off-by: roy_lee <roy_lee@accton.com>

* Add fan_control monitor for as7816-64x.
Signed-off-by: roy_lee <roy_lee@accton.com>

* Fix typo.
Signed-off-by: roy_lee <roy_lee@accton.com>

* Correct typo and duty setting after verified.
Signed-off-by: roy_lee <roy_lee@accton.com>
2019-05-08 00:41:07 -07:00
lguohan
2519048184
[sairedis]: Update sonic-sairedis pointer and Broadcom/Mellanox SAI/SDK/FW (#2826)
[sairedis]: Update sonic-sairedis pointer and Broadcom/Mellanox SAI/SDK/FW
2019-05-06 11:45:50 -07:00
Guohan Lu
5e95e2753e [docker-brcm-syncd]: build brcm syncd from stretch
Signed-off-by: Guohan Lu <gulv@microsoft.com>
2019-05-06 05:39:37 +00:00
Guohan Lu
38ef219b7c [broadcom]: update broadcom sai to 3.5.2.1 2019-05-06 05:39:17 +00:00
Shu0T1an ChenG
76adaa80f8 [broadcom]: update saibcm-modules to sdk 6.5.14 2019-05-03 11:29:31 +00:00
sridhar-ravindran
3bd15a07e5 Enable Debugs in BCM Kernel-bde and Knet Modules (#2786)
* Enable Debugs in BCM Kernel-bde and Knet Modules

* Added Explanation for debugs enabled
2019-05-02 08:05:33 -07:00
Roy Lee
38028d0cc2 [devices/accton]: Add a separator for dh_installdirs not to take the wrong platform name. (#2810)
Signed-off-by: roy_lee <roy_lee@accton.com>
2019-04-24 12:25:19 -07:00
Ying Xie
efc28a6830
Revert "[devices]: Watchdog enable/disable in DellEMC S6100 (#2730)" (#2817)
This reverts commit 22d17da09c.
2019-04-23 09:35:20 -07:00
zhenggen-xu
75964ef243 [baseimage]: Add fstrim service and fstrim timer by default (#2804)
This service (weekly) will let SSD firmware to do the garbage collection
after file-system deleted files. It could avoid slowness or
even READ-ONLY error due to SSD not being able to free the pages
even though the file system thinks there was a lot of space left.

Signed-off-by: Zhenggen Xu <zxu@linkedin.com>
2019-04-21 14:21:16 -07:00
Renuka Manavalan
ba0ca01ee0 [build]: Makefile: Extend to build debug docker images for all stretch dockers (#2789)
Overall goal: Build debug images for every stretch docker.

An earlier PR (#2789) made the first cut, by transforming broadcom/orchagent to build target/docker-orhagent-dbg.gz.

Changes in this PR:

Made docker-orchagent build to be platform independent.
1.1) Created rules/docker_orchagent.mk
1.2) Removed platform//docker-orchagent-*.mk
1.3) Removed the corresponding entry from platform//rules.mk

Extended the debug docker image build to stretch based syncd dockers.
2.1) For now, only mellanox & barefoot are stretch based.
2.2) All the common variable definitions are put in one place platform/template/docker-syncd-base.mk
2.3) platform/[mellanox, bfn]/docker-syncd-[mlnx, bfn].mk are updated as detailed below.
2.3.1) Set platform code and include template base file
2.3.2) Add the dependencies & debug dependencies and any update over what base template offers.

Extended all stretch based non-platform dockers to build debug dockers too.
3.1) Affected are:
docker-database.mk,
docker-platform-monitor.mk,
docker-router-advertiser.mk,
docker-teamd.mk,
docker-telemetry.mk

Next: Build debug flavor of final images with regular dockers replaced with debug dockers where available.
2019-04-19 18:49:21 -07:00
Pradchaya Phucharoen
9525f862fa [devices]: Haliburton xcvrd event support (#2486)
* [platform/broadcom] Add xcvr event interrupt for haliburton

* [device/celestica] Sfputil implement xcvr event monitor on haliburton

* Codes cleanup, remove gpio_ich module unload line
2019-04-18 02:30:50 -07:00
Stepan Blyshchak
ea078e7823 [buildsystem] Install debug packages in syncd when INSTALL_DEBUG_TOOLS=y (#2702)
* [buildsystem] Install debug packages in syncd when INSTALL_DEBUG_TOOLS=y

Signed-off-by: Stepan Blyschak <stepanb@mellanox.com>
2019-04-18 02:25:51 -07:00
paavaanan
22d17da09c [devices]: Watchdog enable/disable in DellEMC S6100 (#2730) 2019-04-17 00:04:48 -07:00
Renuka Manavalan
c846fb9ead [build]: Updated Makefile infrastructure to build debug images. (#2753)
* Updated Makefile infrastructure to build debug images.
As a sample, platform/broadcom/docker-orchagent-brcm.mk is updated to add a docker-orchagent-brcm-dbg.gz target.

Now "BLDENV=stretch make target/docker-orchagent-brcm-dbg.gz" will build the debug image.

This debug image can be used in any linux box to inspect core file. If your module's external dependency can be suitably mocked, you my even manually run it inside.

"docker run -it --entrypoint=/bin/bash e47a8fb8ed38"

You may map the core file path to this docker run.

* Dropped the regular binary using DBG_PACKAGES and a small name change to help readability.

* Tweaked the changes to retain the existing behavior w.r.t INSTALL_DEBUG_TOOLS=y.

When this change ('building debug docker image transparently') is extended to all dockers, this flag would become redundant. Yet, there can be some test based use cases that rely on this flag.

Until after all the dockers gets their debug images by default and we switch all use cases of this flag to use the newly built debug images, we need to maintain the existing behavior.
2019-04-13 17:05:18 -07:00
Wirut Getbamrung
4fcb3321b2 [platform-celestica]: Add new fancontrol service for haliburton device (#2736) 2019-04-10 19:13:30 -07:00
Ying Xie
1af74d5662 [Bcm SAI] ugprade Broadcom SAI to version 3.3.5.4m-1 (#2765)
- Broadcom SAI 3.3 GA release 20190402.

Signed-off-by: Ying Xie <ying.xie@microsoft.com>
2019-04-10 19:11:59 -07:00
lguohan
b73f9a5b1d
[swss]: update swss docker to stretch (#2714)
* [swss]: update swss docker to stretch

sonic-swss update:

* aa92326 2019-03-29 | fix c++ 11 build complaint for destructors default to noexcept (#822) (HEAD, origin/master, origin/HEAD) [lguohan]
* a304007 2019-03-28 | Allow ACL entry creation without ACL counter (#818) [Wenda Ni]
* 60a8a0d 2019-03-28 | [orchagent]: Cast enum class variable to int (#819) (HEAD, origin/master, origin/HEAD) [Shuotian Cheng]
* 3dd37a4 2019-03-26 | [vnetorch]: Add VNET/tunnel/route removal flows for Bitmap VNET implementation (#816) [Volodymyr Samotiy]
* a937f92 2019-03-22 | [VS]: fix occasional test_fdb_notifications vs test failure (#813) [Jipan Yang]
* ea54825 2019-03-21 | [portsorch] Fix inconsistent return value in bindAclTable (#791) [yorke]
* 5984e3a 2019-03-07 | Fix orchagent SEGV when PortConfigDone not set (#803) [Ramesh Santhanakrishnan]

Signed-off-by: Guohan Lu <gulv@microsoft.com>
2019-03-30 11:57:25 -07:00
Roy Lee
802d5ef55a [devices] add new accton platform minipack (#2670)
[devices] add new accton platform minipack.

Add support for new platform, minipack.
It has
CPU: Broadwell DE – D1527
MAC: Tomahawk3(BCM56980).
PHY:Broadcom BCM81724, 4 pcs, Gearbox for PIM-16Q
BMC:AST2520
8 hot-swappable Port-Interface-Modules, each of them has 16*100G QSFP.

- What I did
Add device and platform files for minipack.
- How I did it
Add as SONiC Porting Guide.
- How to verify it
decode-syseeprom
sensors
psuutil
sfputil
thermal monitor
bcmsh on port status
(port LEDs may not working)
2019-03-15 09:40:38 -07:00
Qi Luo
eb3a1b1b41 Update bcmcmd binary: fix crash issue when long line >= 1023 chars (#2659)
Signed-off-by: Qi Luo <qiluo-msft@users.noreply.github.com>
2019-03-08 02:22:00 -08:00
sridhar-ravindran
be92a250d3 [devices]: Reset I2C MUX in S6000 while invoking platform reboot (#2567) 2019-02-16 11:50:15 -08:00
Ying Xie
0846654585 [sai and sairedis] advance sairedis sub-module and upgrade to matching Broadcom SAI build (#2488)
* [Broadcom SAI] upgrade Broadcom SAI to 3.3.4.3m-3

This is SAI 3.3.4.3m-3 compiled with SAI header file at commit ID
6ad3382217ec22f64cd268faefcbc2ff7caba4fd of SAI repo.

Signed-off-by: Ying Xie <ying.xie@microsoft.com>

* change libsaithrift version to 0.9.4

Signed-off-by: Guohan Lu <gulv@microsoft.com>

* [submodule]: update swss, sairedis, swss-common, sonic-utilities

swss

* a6d60f2 2019-02-15 | Create egress ACL table group during the PFCWD stats list installment (#787) (HEAD, origin/master, origin/HEAD) [Wenda Ni]
* 52de963 2019-02-15 | [fpmsyncd] Add VNET routes support (#772) [Wei Bai]
* d27f49e 2019-02-13 | Move warm_restart enable/disable config to stateDB WARM_RESTART_ENABLE_TABLE (#786) [Jipan Yang]
* 6363985 2019-02-08 | [vstest]: Potential fix for timing issue in warm_reboot's routing UT (#788) [Rodny Molina]
* 6d5424d 2019-02-07 | VNet/Vxlan delete handling (#766) [Prince Sunny]
* d680ce2 2019-02-07 | [neighsyncd] increase neighbor syncd restore timeout to 110 seconds (#745) [Ying Xie]
* b78cc8d 2019-02-01 | support 8 lanes for a physical port (#778) [lguohan]
* 73b620c 2019-02-01 | Increase the watermark polling interval to 10s (#777) [Wenda Ni]
* a2b987b 2019-02-01 | [vstest]: fix test_speed.py (#780) [lguohan]
* cef4bd0 2019-02-01 | [vstest]: fix test_port_an_warm.py test (#779) [lguohan]
* 9f20eda 2019-02-01 | fix a unstable swss egress acl test (#776) [Kebo Liu]
* 316ae6c 2019-01-30 | portsorch ports init done flag should means buffer, autoneg, speed, m… (#747) [Jipan Yang]
* 4280036 2019-01-30 | [teammgrd] Fix inconsistent port admin status (#755) [Jipan Yang]
* cf12bdf 2019-01-30 | Remove AclTableGroup upon removal of port/lag/vlan (#751) [Jipan Yang]
* 5779c1a 2019-01-29 | [aclorch] Remove  L4 port range support limitation on egress ACL table and add new SWSS virtual test. (#741) [Kebo Liu]
* 36e85eb 2019-01-29 | On a routing vlan, the neighbor entry in the /31 subnet is not added to hardware (#771) [Kiran Kumar Kella]
* 882ccc6 2019-01-24 | [vnetorch] Change logic for adding VNet interface (#761) [Marian Pritsak]
* f637557 2019-01-25 | [vrfmgrd] Fix VRF is not set to VRF_TABLE in APP_DB correctly (#768) [yorke]
* e84a6ab 2019-01-24 | use sai_stat_id_t for new SAI header file (#769) [lguohan]

sairedis

* d685e35 2019-02-15 | Add support for fdb_event MOVE and check fdb event oids (#420) (HEAD, origin/master, origin/HEAD) [Kamil Cudnik]
* 2b91013 2019-02-15 | [vslib] add missing port attributes for virtual switch (#419) [Stepan Blyshchak]
* dcc8688 2019-02-14 | Add more specific logic for ingress ACL and buffer profile (#421) [Kamil Cudnik]
* c0b39ea 2019-02-12 | Move warm_restart enable/disable config to stateDB WARM_RESTART_ENABLE_TABLE (#418) [Jipan Yang]
* ab35dfa 2019-02-11 | Add support for vlan tagged frames in virtual switch (#417) [Kamil Cudnik]
* 145ea44 2019-02-02 | [flex counter] handle router interface stats (#410) [Mykola F]
* c03d639 2019-02-02 | Add more information on failed map sizes (#416) [Kamil Cudnik]
* 29f1e3c 2019-01-31 | Update SAI pointer (#414) [Marian Pritsak]
* c0a948d 2019-01-30 | Add WRED specific comparison logic (#413) [Kamil Cudnik]
* 1b6a661 2019-01-24 | install SAI extension header files into /usr/include/sai (#412) [lguohan]
* 849525a 2019-01-24 | Initialize notification queue pointer before switch create (#411) [Kamil Cudnik]
* 02d92f1 2019-01-23 | Add log info for not matching SG/IPG/QUEUES (#409) [Kamil Cudnik]
* 8793562 2019-01-18 | Update SAI pointer to latest master (#408) [Marian Pritsak]

swss-common

* ec04a5a 2019-02-14 | Add support for WarmStart::setDataCheckState() (#242) [Jipan Yang]
* 56bd73f 2019-02-13 | Force only supported commands on consumer table (#261) [Kamil Cudnik]
* 414de0f 2019-02-12 | Move warm_restart enable/disable config to stateDB WARM_RESTART_ENABLE_TABLE (#260) [Jipan Yang]
* 88de725 2019-02-05 | [pyext] enable types in stdint.h (#259) [Ying Xie]
* f457ae8 2019-02-05 | Optimized ProducerStateTable set/del notification processing to avoid… (#257) [Jipan Yang]
* e5286fd 2019-01-30 | [rif counters] Rif counter schema update (#256) [Mykola F]

sonic-utilities

* b44b462 2019-02-14 | Move warm_restart enable/disable config to stateDB WARM_RESTART_ENABL… (#458) (HEAD, origin/master, origin/HEAD) [Jipan Yang]
* e856b8b 2019-02-11 | [aclshow] output only counters per table/rule (#442) [Roman Kachur]

Signed-off-by: Guohan Lu <gulv@microsoft.com>

* [mlnx] update mellanox sai

Signed-off-by: Stepan Blyschak <stepanb@mellanox.com>
2019-02-16 10:14:18 -08:00
Ying Xie
ca522a3da9 [bcm sai] Upgrade Broadcom SAI to version 3.3.4.3-2 (#2550)
- Including Broadcom patch for CS7252202.

Signed-off-by: Ying Xie <ying.xie@microsoft.com>
2019-02-12 05:33:57 +00:00
zzhiyuan
6037707abc [devices]: Add device data for Arista 7060PX/DX4-32 (#2534)
* Add boot0 definition for Arista 7060PX4-32 and 7060DX4-32

* Add port configuration for Arista 7060PX4-32

* Add plugins for Arista 7060PX4-32

* Add platform_reboot for Arista 7060PX4-32

* Add Arista 7060DX4-32 as symlink of 7060PX4-32

* Add sensors configuration and fancontrol for Arista 7060PX4-32

* Update arista-driver submodules for barefoot/broadcom

* Add platform_reboot script for Alhambra

* Rook fancontrol CPLD rename
2019-02-08 22:02:01 -08:00
sridhar-ravindran
ed2d87a710 [Dell] [Z9100] Supporting PreEmphasis Settings for Optics (#2501) 2019-02-06 00:38:06 -08:00
paavaanan
922fdc5de1 [devices]: Dell Hwmon S6100/Z9100 SFM version export (#2521) 2019-02-05 10:35:50 -08:00
lguohan
4ccd35bc25
[kernel]: update sonic kernel to 4.9.0-8-2 (#2468)
* [kernel]: update sonic kernel to 4.9.0-8-2

* 3b2114d 2019-01-20 | [sonic-linux-kernel] add udp_l3mdev_accept kernel upstream patch (#70) (HEAD, azure/master) [Harish Venkatraman]
* 37734aa 2019-01-10 | L3mdev cgroup (#73) [lguohan]
* d631eeb 2018-12-15 | yet another uart race condition fix (#75) [lguohan]

Signed-off-by: Guohan Lu <gulv@microsoft.com>

* Update Mellanox SDK

Signed-off-by: Guohan Lu <gulv@microsoft.com>

* Update arista platform driver to match 4.9.0-8-2 kernel

Signed-off-by: Guohan Lu <gulv@microsoft.com>
2019-01-25 00:46:09 -08:00
Ying Xie
8a1d73d76d
[Broadcom SAI] Upgrade Broadcom SAI to 3.3.4.3-1 (#2472)
- Broadcom SAI 3.3 GA 20190118.
- With warm reboot support.

Signed-off-by: Ying Xie <ying.xie@microsoft.com>
2019-01-22 14:49:10 -08:00
jostar-yang
e67f1da9ba [devices]: Fix cpld sysfs permisson error for accton devices (#2457) 2019-01-17 08:56:46 -08:00
paavaanan
9c70e65d54 [device/Dell] SOSFTDEP to lpc_ich module for dell_ich module (#2440)
dell_ich module fails to load sometimes due to the failure of pci_get_drvdata().

This function is responsible for fetching INTEL PCI related memory handle in kernel. This is implemented in lpc_ich kernel module.

Due to race in addition/deletion of kernel modules, sometimes lpc_ich loads after dell_ich.

Because of this behaviour dell_ich module fails to load.

Fixed by addding dependency between modules.

Removed i2c_mux_gpio module from blacklist entry as it is not the original root case of this issue.
2019-01-15 15:32:37 -08:00
Sudharsan D.G
1ffb34b4e3 [devices]: Dell z9264f bringup (#2415)
* Updating Z9264f for A01 board

* Adding platform_reboot plugin to Z9264f

* Change execute mode for platform_reboot

* Indenting python files

* Adding missed service file

* Addressing code review comments

* Modified the polling logic in transceiver change event
2019-01-08 21:14:18 -08:00
padmanarayana
14a0297128 [devices]: Address Dell issue#46 : Adding MUX reset logic to fix probe failures (#2356) 2019-01-08 15:27:16 -08:00
paavaanan
ab6a52f122 [devices]: platform_reboot support for Dell S6100/Z9100 platforms (#2420) 2019-01-07 19:16:31 -08:00
Samuel Angebault
23bc14cf81 [device/arista] Update arista submodule for 4.9.0-8 kernel (#2393)
Update the arista driver submodules to depend on the newest 4.9.0-8
kernel. The dependency on the older one is causing a runtime issue.
2018-12-19 10:05:20 -08:00
Ying Xie
ff7ef2a8fc [bcm sai] upgrace Broadcom SAI to 3.3.3.1-3 (#2389)
- Include helix4 fix.
- Include support for TD2 56854.
- Add dummy support for SAI_PORT_ATTR_ADVERTISED_SPEED.

Signed-off-by: Ying Xie <ying.xie@microsoft.com>
2018-12-17 00:44:05 -08:00
zhenggen-xu
f093ef2a9f [security kernel] Upgrade kernel from 4.9.110-3+deb9u2 to 4.9.110-3+deb9u6 (#2367)
* [security kernel] Upgrade kernel from 4.9.110-3+deb9u2 to 4.9.110-3+deb9u6
short version: 4.9.0-7 to 4.9.0-8

See changelogs for security fixes:
https://tracker.debian.org/media/packages/l/linux/changelog-4.9.110-3deb9u6

Signed-off-by: Zhenggen Xu <zxu@linkedin.com>

* Update sonic-linux-kernel submodule after it was merged

Signed-off-by: Zhenggen Xu <zxu@linkedin.com>
2018-12-11 04:17:17 -08:00
Samuel Angebault
6c7bcf5067 [device/Arista] fix small issue for the 7170 (#2373)
* Fix boot0 install on vfat

* Only display the hook name in boot0

Instead of printing the entire path

* Update arista driver submodule
2018-12-11 04:14:46 -08:00
Ying Xie
790974eaa0 [knet driver] don't unload knet drivers during shutdown (#2361)
knet driver unload takes about 30 seconds to remove netdevs. This cuts
into our warm reboot time budget.

Signed-off-by: Ying Xie <ying.xie@microsoft.com>
2018-12-07 23:05:02 -08:00
Joe LeVeque
13e17d3a33 [docker-syncd-brcm] Add 'startsecs=0' to ledinit process (#2366) 2018-12-07 20:04:22 -08:00
jostar-yang
7a74ff0c01 [devices]: Add support as7326 thermal plan. Monitor fan/psu (#2344)
* Add support as7326 thermal plan. Monitor fan/psu

* Fix incorrect kernel version for idt init

* fix error parsing
2018-12-06 00:38:53 -08:00
jostar-yang
8a4e779ce1 [devices]: Fix error parsing to idt_int for accton as7726 (#2349) 2018-12-05 16:02:27 -08:00
paavaanan
bcd4e1e375 [devices]: Dell SMF driver hwmon number reorder fix for Dell S6100/Z9100 (#2305) 2018-12-04 20:55:37 -08:00
jostar-yang
1d655dbf2b [devices]: Add support as7726-32x platform (#2340) 2018-12-04 10:11:02 -08:00
Samuel Angebault
989b60059b [device/arista]: Update (#2336)
* Update arista drivers submodule

* Ignore the possible timestamp warning in tar extraction

* Add verbosity toggle to boot0

Console logging is slow because of the 9600 baud rate.
Some time can be saved by decreasing the console verbosity.

* Add hook mechanism in boot0.

Support additional features in boot0 via hooks.
Hooks are unpacked and executed at post-install or pre-exec time.

* Fix 7170 sensors.conf file

Fix critical temperature settings for MAX6658 sensors

* Fix the random swap of storage devices

For arista 7050 switches running with linux 4.9, it is likely the device
name of flash drive (/dev/sda) and usb (/dev/sdb) randomly swap in kernel
booting, depending on which one is ready first. It breaks the expectation
that flash will be mounted as root by setting root=/dev/sda1. This patch
will correct ROOT to flash device refering to the path under block_flash.

* Fix 7170 fancontrol

* Do not remove aquota.user file in boot0

This file is a filesystem protected file used by EOS.
It can be simply removed and will make the SONiC installation failed if
not skipped.
2018-12-04 10:08:55 -08:00