* [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>
38 lines
944 B
Bash
Executable File
38 lines
944 B
Bash
Executable File
#!/usr/bin/env bash
|
|
|
|
PLATFORM_DIR=/usr/share/sonic/platform
|
|
HWSKU_DIR=/usr/share/sonic/hwsku
|
|
|
|
rm -f /var/run/rsyslogd.pid
|
|
|
|
supervisorctl start rsyslogd
|
|
|
|
mkdir -p /etc/sai.d/
|
|
|
|
# Create/Copy the sai.profile to /etc/sai.d/sai.profile
|
|
if [ -f $HWSKU_DIR/sai.profile.j2 ]; then
|
|
sonic-cfggen -d -t $HWSKU_DIR/sai.profile.j2 > /etc/sai.d/sai.profile
|
|
else
|
|
if [ -f $HWSKU_DIR/sai.profile ]; then
|
|
cp $HWSKU_DIR/sai.profile /etc/sai.d/sai.profile
|
|
fi
|
|
fi
|
|
|
|
supervisorctl start syncd
|
|
|
|
# Function: wait until syncd has created the socket for bcmcmd to connect to
|
|
wait_syncd() {
|
|
while true; do
|
|
if [ -e /var/run/sswsyncd/sswsyncd.socket ]; then
|
|
break
|
|
fi
|
|
sleep 1
|
|
done
|
|
}
|
|
|
|
# If this platform has an initialization file for the Broadcom LED microprocessor, load it
|
|
if [ -r ${PLATFORM_DIR}/led_proc_init.soc ]; then
|
|
wait_syncd
|
|
/usr/bin/bcmcmd -t 60 "rcload ${PLATFORM_DIR}/led_proc_init.soc"
|
|
fi
|