* [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
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>
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>
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>
- 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>
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
* [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>
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>
* [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
* 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>
* 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).
- 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.
- 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.
* [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.
* 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.
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
* 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>
* 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
- 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
* [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
* 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>
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>
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.
* 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.
[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)
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.
- 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>
* [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>
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>
* 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.
* Fix broadcom lane map for 7050-QX32S
First port lane map needs to be swapped.
* Update arista submodules for SFP txdisable toggle
With this update the SFPs will set txdisable to 0 when out of reset.
Allowing optical cables to be used on these ports.
* [syncd] warn shutdown syncd process when warm boot is enabled
Signed-off-by: Ying Xie <ying.xie@microsoft.com>
* [warmboot] mount folder to hold warmboot temporary files
Signed-off-by: Ying Xie <ying.xie@microsoft.com>
* Fix a typo
* [device][platform] d6254qs d6556 platform porting
[device][platform] sensor and status led support for d7032q28b d7254q28b d7264q28b d6254qs d6556
[device][platform] qos support for d7032q28b d7254q28b
[device][platform] service configuration files for d7032q28b d7254q28b d7264q28b d6254qs d6556
* remove binary files and remove non-supported attributes in config.bcm
* remove gpio-ich here. file a PR in sonic-linux-kernel instead.
* remove unnecessary comments
* add GPL license
* Update ag9032v1 and ag9064 modules.
Signed-off-by: neal tai <neal.tai@deltaww.com>
* Fix the sfputil.py when convert an integer to hexadecimal without the 'L' trailing.
Signed-off-by: neal tai <neal.tai@deltaww.com>
* [platform/haliburton] Fix kernel panic when remove smc module.
* [platform/haliburton] Chanage sysfs to support module interrupt
* [device/haliburton] Update sfputil to use new sysfs.
* [device/haliburton] sfputil to support xcvrd monitoring.
led start bcm cmd triggers link state notifications.
This is quick fix to avoid such fake link state notifications.
Signed-off-by: Guohan Lu <gulv@microsoft.com>
* [device]: Modify SFPUtil for inventec-d7032
[device]: Add front panel led support for Inventec-d7032
[platform]: Add transceiver monitor daemon for Inventec-d7032 and Inventec-d7054
* [device] follow new porting guide to have broadcom config under device folder
* remove license
* [device] Update arista driver submodule
* Set Arista scd driver config
Set ARISTA_SCD_DRIVER_CONFIG config to build and
include scd driver to resulting Arista deb packages
* Added new platform support DellEMC - Z92264f - 64x100
* Includes changes with Makefiles, sfputil, eeprom and default minigraph
* Led support for Z9264f platform
* Includes changes on default minigraph
* ipmitool implementation in pmon docker. platform_sensors script is inclued in pmon startup
* [device] Update arista driver submodule
* Set Arista scd driver config
Set ARISTA_SCD_DRIVER_CONFIG config to build and
include scd driver to resulting arista deb packages
* [Broadcom SAI] upgrade Broadcom SAI to version 3.1.3.4-9
Includes configuration files for following devices:
- Quanta 1X1B-32X
- Dell Z9264F
- Inventec D7054Q28B and D7032Q28B
* [bcm sai] upgrade sai version to 3.1.3.4-10
include configuration change to 7060 T0.
* [platform]: Add a new supported platform, Delta-ag5648
CPU : Intel Rangeley C2538
Swich ASIC: Broadcom Tomahawk BCM56967
Ports : 48x25G + 6x100G
Switch SKU : Delta-ag5648
Signed-off-by: neal tai <neal.tai@deltaww.com>
* Delete the file
Delete the auto-generated file.
* [device]: ag5648 remove all *.cmd files.
remove the files under ag5648/modules
Signed-off-by: neal tai <neal.tai@deltaww.com>
* [device]: ag5648 device drivers
1. Use the common driver dni_emc2305.c
ag9032v1 device drivers
1. Move dni_emc2305.c to be the common driver
2. Remove at24.c
Signed-off-by: neal tai <neal.tai@deltaww.com>
* [device/dell] Added dynamic sai.profile generation
This commit addds new code for generating dynamic sai.profile file.
The sai.profile.j2 will generate the sai.profile dynamically based on
the topology. It will generate the sai.profile under /etc/sai.d/ directory
in syncd. Before syncd is started this J2 file will be run from the start.sh
file from /usr/bin/ directory. Since the sai.profile is dynamically generated
the old sai.profile file is not required so deleted the file for S6100.
It also address couple of more changes for port_config.ini support is added
for speed in the file which can be used later to find the port speed. Also
the buffer_default_t*.j2 file the ports should be from 0 to 64 changed.
Unit tested the code on S6100 for dynamic generation of sai.profile file for
both T0 and T1 and the file was created in /etc/sai.d/sai.profile
Similarly tested the sonic binary on S6000 to make sure that the sai.profile is
copied from the /usr/share/sonic/hwsku/sai.profile to /etc/sai.d/sai.profile.
Signed-off-by: Harish Venkatraman <Harish_Venkatraman@dell.com>
* [sonic-buildimage] Updating module sai-redis
Updating the sonic-sairedis point.
Signed-off-by: Harish Venkatraman <Harish_Venkatraman@dell.com>
* Support OS9 -> SONiC fast-reboot migration
* Address review comments. Update NOS mac in EEPROM and net.rules for eth0
* Address review comments. Update sonic-platform-modules-dell to fac81d...
* Fix script for POSIX compliance
* Add psuutil for S8900-54XC and S8900-64XC.
* Update syseeprom to CPU EEPROM for S9130-32X, S9200-64X and S9230-64X.
* Update sensors.conf for S9200-64X and S9230-64X.
* Update submodule for platform/broadcom/sonic-platform-modules-ingrasys
Signed-off-by: Wade He <chihen.he@gmail.com>
- What I did
Add psuutil support for Quanta-IX1B-32X
Update Quanta submodule
- How I did it
Update Quanta-IX1B-32X platform module driver.
- How to verify it
admin@switch1:~$ sudo psuutil status
PSU Status
----- --------
PSU 1 OK
PSU 2 OK
- Description for the changelog
Add psuutil support for Quanta-IX1B-32X
Update Quanta submodule
- A picture of a cute animal (not mandatory but encouraged)
Signed-off-by: Jonathan Tsai <jonathan.tsai@quantatw.com>
* [device] Add a new platform ly1200 for MiTAC
Signed-off-by: Eddy Weng <eddy.weng@mic.com.tw>
* [platform/broadcom/sonic-platform-modules-mitac] Update dependency for new kernel.
Signed-off-by: Stane Shieh <stane.shieh@mic.com.tw>
* [minigraph]: Set hostname in all default minigraphs to 'sonic'
Signed-off-by: Stane Shieh <stane.shieh@mic.com.tw>
* [kernel]: update linux kernel to support ly1200 of MiTAC
Signed-off-by: Stane Shieh <stane.shieh@mic.com.tw>
* [platform/broadcom/sonic-platform-modules-mitac] adapt PSU driver for linux kernel upgrade.
Signed-off-by: Stane Shieh <stane.shieh@mic.com.tw>
* Resolve the conflict with Quanta
modified files are as below.
.gitmodules
platform/broadcom/one-image.mk
platform/broadcom/rules.mk
Signed-off-by: Stane Shieh <stane.shieh@mic.com.tw>
- The driver package was split into bins, drivers, python2, python3
- Introduce some tracing regarding the switch chip reset
- Add watchdog during boot for DCS-7260CX3-64
* Upgrade linux-image version
* Add missing dependency of igb
* Fix mft build rule
* Add missing dependency of ixgbe
* [Broadcom]: Update OpenNSL modules to be compatible with kernel 3.16.0-5 (#3)
* [Nephos] Update SDK version to support new kernel module 3.16.0-5 (#4)
* [mellanox]: Update URL for SDK (#5)
* Fix build of libsaithrift for broadcom
* Restore libsaithrift-dev building
* Comment out libsaithrift library on cavium and marvell. Both of them have old SAI drivers
* Revert back unintentional acton changes
* Don't run the package checks when building sairedis package
* [platform] Add Psuutil and fixed voltage alarm for S9100
* Add I2C CPLD kernel module for psuutil.
* Support psuutil script.
* Add voltage min and max threshold.
Signed-off-by: Wade He <chihen.he@gmail.com>
* [Platform] Add Psuutil and update sensors.conf for S8810-32Q and S9200-64X
* Support psuutil script.
* Update sensors.conf for tmp75.
Signed-off-by: Wade He <chihen.he@gmail.com>
Revise kernel driver to duplicate nodes for support of lm-sensors, at fan and PSU.
Update sfputil.py to to fit new SfpUtil prototype.
Signed-off-by: roylee123 <roy_lee@accton.com>
1. _INSTALLS defines the packages to be installed in the image
at the build time.
2. _LAZY_INSTALLS defines the packages to be installed in the image
at the first run time
3. _DEPENDS defines the packages to at the build dependency of
the image
* Bump sonic-platform-modules-arista
Improves i2c performance for xcvrs
Fix the led_plugin by ignoring unknown ports
Miscellaneous improvements
* Fix index column for Arista-7260CX3-D108C8
* Fix flash permissions for Arista platforms
The ext4 flash uses acl to properly handle permissions in EOS.
Aboot isn't built with this support and therefore can't be used
to set the flash permissions. It has to be deferred in sonic initrd.
Including the following commit:
depmod to ensure that modules get loaded after ONIE install / image upgrade
Signed-off-by: Shu0T1an ChenG <shuche@microsoft.com>
Including the following commits:
Add support for Dell S6100 and Z9100 module deinit (#18)
Disable S6100 low power mode by default (#19)
Signed-off-by: Shu0T1an ChenG <shuche@microsoft.com>
* Add S8900-64XC SFP QSFP CPLD kernel module.
* Fixed QSFP function call in i2c_utils.sh.
* Add QSFP monitor service for SFP and QSFP SI.
Signed-off-by: Wade He <chihen.he@gmail.com>
change hwmon kernel modules installation order on S8810-32Q/S8900-54XC/S8900-64XC/S9100-32X
change hwmon kernel modules installation order in i2c_utils.sh and update related fancontrol file
Check the hwmon kernel module insertion order in /sys/class/hwmon/hwmonX.
w83795 should be in /sys/class/hwmon/hwmon1, and jc42 should be the last one.
change hwmon kernel modules installation order on S8810-32Q/S8900-54XC/S8900-64XC/S9100-32X
- What I did
Update Ingrasys submodule for S8900-54XC QSFP reset function.
- How I did it
Add reset init scripts in S8900-54XC init function.
- How to verify it
Used the command "sfputil reset Ethernet48" to verify reset function.
If no error occurs, it is passed.
- Description for the changelog
Update Ingrasys submodule for S8900-54XC QSFP reset function
- A picture of a cute animal (not mandatory but encouraged)
* Bump sonic-platform-modules-arista submodule
* Allow image specific mount option for containers
* Add led plugin for DCS-7060CX-32S
* Add led plugin for DCS-7260CX3-64
1. "make target/sonic-broadcom.raw" will create the compressed dd'able image.
2. This will also update the grub config files (device/dell/*/nos_to_sonic_grub.cfg) with the image versions.
* Bump sonic-platform-modules-arista submodule
* Fix sfputil plugin for arista_7060_cx32s
* Fix sfputil plugin for arista_7260cx3_64
* Add front panel port number for arista platforms
* [platform/Seastone] Add a new supported platform, Celestica Seastone-DX010.
Switch Vendor: Celestica
Switch SKU : Seastone-DX010
ASIC Vendor: Broadcom
Swich ASIC: Tomahawk
Port Configuration: 32x100G, 64x50G and 96x10G+16x50G.
SONiC Image: SONiC-ONIE-Broadcom
Signed-off-by: asang@celestica.com
* Help to convert tab to white space for Inventec-D7032Q28B platform.
* [docker-syncd-brcm]: Sleep to allow syncd to create socket before calling bcmcmd
* Instead of fixed sleep interval, continually check for presence of socket
* Remove exsiting sonic-platform-modules-accton and apply submodule adding on this folder.
* Remove redundant commnet
* Remove folder platform/broadcom/sonic-platform-modules-accton.
* Add this dir for submodule.
* Update submodule platform/broadcom/sonic-platform-modules-ingrasys
* Fixed FAN Status Setup Error.
* Add Drivers deinitialization feature.
* Allow for updating drivers on a running system.
* Let fans returned to full speed when driver uninstalled.
* Change S8900-64XC fancontrol config
* Delete S9100 syncd.conf
Signed-off-by: Wade He <chihen.he@gmail.com>
* Update submodule
* Fixed build error in fsroot on different kernel versions between host and rootfs.
* Fixed Read HW Revision in CPLD.
* rmmod check to avoid error.
Signed-off-by: Wade He <chihen.he@gmail.com>
* Bump sonic-platform-modules-arista submodule
* Use sonic_sfputil plugin from the arista library
* Fix undefined variable varlog_size
* Prevent minigraph.xml to be removed from the flash
* Update DCS-7050QX-32 sensors config
Under rules/config now there's additional configuration option
ENABLE_SYNCD_RPC that allows building SONIC installer with
docker-syncd-*-rpc for evaluation purposes.
Signed-off-by: marian-pritsak <marianp@mellanox.com>
Fix the bug introduced by commit e6bb4b20a1
The previous commit mount /var/log into the docker which override
the original /var/log directory structure, causing swss docker failed to
start due to following errors.
Error: The directory named as part of the path /var/log/supervisor/supervisord.log
does not exist.
- [swss]: Update sairedis/swss/common submodules
- [orchagent]: Mount /var/log folder and use the folder to save recording files
- [orchagent]: Use -d to specify the folder path
- This PR allows supervisord to log syncd exit events to syslog
- Syncd dockers now are built from docker-config-engine instead of docker-base
- Supervisord in all syncd dockers now call syncd_start.s which is installed by sonic-sairedis repo
- Consolidate config.sh and start.sh scripts into one script (start.sh)
- Solve issue #435 - All dockers now run supervisord as their ENTRYPOINT
- All stdout/stderr output from processes managed by supervisord is now sent to syslog instead of their own files
- Supervisord log messages are now also sent to syslog
- Removed unused smartmontools package from docker-platform-monitor
- Extending SONiC building infrastructure to provide users
with greater flexibility, by allowing them to elect a
routing-stack different than the default one (quagga). The desired
routing-stack will be defined in rules/config file.
- As part of these changes I'm adding support for
Free-Range-Routing (FRR) stack. Quagga will continue to be
the default routing-stack.
Signed-off-by: Rodny Molina <rodny@linkedin.com>
- Update Broadcom libsaibcm debian package to 2.1.5.1-2
- Add SAI_NUM_ECMP_MEMBERS=32 to two Trident II platforms
- Update sonic-swss submodule version to support such changes
Signed-off-by: Shuotian Cheng <shuche@microsoft.com>
- Create /var/run/redis/ folder on the host
- Install Python client for Redis on the host
- Mount /var/run/redis/ as read/write from host for all dockers
- Enable accessing the database everywhere including on the host and from remote
Signed-off-by: Shuotian Cheng <shuche@microsoft.com>
The reason is that /etc/network/interfaces file is in base image. After booting,
docker-swss is not ready and thus the empty VLAN interfaces cannot be created
when the brctl is pointing to the binary inside the swss docker.
Add the bridge-utils into the base image and add bridge_ports none to the
/etc/network/interfaces file so that after boot-up the empty VLAN interfaces
will be created to let the members to join later.
Signed-off-by: Shuotian Cheng <shuche@microsoft.com>
* [files]: Add allow-hotplug stanza to interfaces files
- start interface <interface_name> when the kernel detects
a hotplug event from the interface
ref: https://www.debian.org/doc/manuals/debian-reference/ch05.en.html
* [interfaces]: Combine vlan_interfaces and lag_interfaces file and add allow-hotplug
1. Remove vlan_interfaces and lag_interfaces file and members in teamd.j2
2. Add all interfaces to /etc/network/interfaces file
3. Add allow-hotplug stanza
4. Add up <command> to automatically add interfaces to VLAN and LAG
5. Add unique_name filter to minigraph.py to remove duplicate interface names
6. Add brctl to base image
7. Update sonic-swss submodule
Signed-off-by: Shuotian Cheng <shuche@microsoft.com>
add_derived_package setup dependency between the main deb and derived deb.
The derived deb depends on the main deb and need to install the main deb.
add_extra_package does not setup dependency between the main deb and peer deb,
does not require to install the main deb.
* rename add_peer_packages to add_extra_packages
* [docker-config-engine]: introduce docker sonic config engine
sonic config engine provide the sonic configure engine for all sonic
dockers that rely on the engine to generate runtime configuration.
* Single image
* Fix review comments
* Update syncd service. Add HW mgmt to Mellanox single image.
* Add single image template for Broadcom platform.
SKU should be provided during configure:
make configure PLATFORM=broadcom SKU=Force10-S6000
* Add single image template for Cavium platform.
SKU should be provided during configure:
make configure PLATFORM=cavium SKU=AS7512
* Add description to sonic_debian_extension.j2 file.
* Build improvements
Fix dependencies
Add configuration options
Automatically build sonic-slave
* Set default number of jobs to 1
* Auto generate target/debs directory
Signed-off-by: marian-pritsak <marianp@mellanox.com>
* Automatically remove sonic-slave container after exit
* Silence clean-logs
* Add SONIC_CLEAN_TARGETS to clean
* Use second expansion for clean dependencies
* Avoid creating empty log files
Remove log file on flush instead of writing empty string
* Put dpkg install inside lock
Use same lock as debian install targets do to avoid
race condition in dpkg installation
* Remove redirect to log from docker save
* Add .platform dependency to all and clean targets
* Remove header and footer from clean targets
* Disable messages for SONIC_CLEAN_TARGETS
* Exit with error if dpkg-buildpackage fails
* Set new location for debs in build_debian.sh
* Add recipe for docker-database
* Update redis version to 3.2.4
* Add support for p4 platform
* Add recipe for snmpd
* Add slave targets to phony and make all target default
* Remove build.sh from thrift
* Add versioning to team, nl, hiredis and initramfs
* Change sonic-slave to support snmpd build from sources
* Remove src/tenjin
* Add recipe for lldpd
* Add recipe for mpdecimal
* Remove hiredis directory on rebuild
* Add recipe for Mellanox hw management
* Remove generic image from all targets for Mellanox
* Add support for python wheels
* Add lldp and snmp dockers
* Sync docker-database to include libjemalloc
* Fix asyncsnmp variable name
* Change default build configuration
Redirect output to log files by default
Set number of jobs to nproc value
Do not print dependencies
Fix logging to print log of failed job into console
* Use docker inspect to check if sonic-slave image exists
* Use config in slave.mk directly
* Disable color output by default
* Remove sswsdk dependency from lldp and snmp dockers
* Fix comment in py wheels install targets
* Add dependency between two versions of sswsdk
* Add containers to mellanox platform
lldp, snmp and database containers
* Add recipe for team docker
* Add team docker to mellanox platform
* Encrypt password passed to build_debian.sh
* Update mellanox SAI version
Make version and revision setting only in main recipe
* Fix error handling in makefiles
As makefiles use .ONESHELL we should add -e
option to shell options in order to exit after any command fails
* Add recipe for platform monitor image
* Add platfotm monitor to mellanox targets
* Ignore submodules when building base image