#!/bin/bash # This script load/unload centec kernel modules ### BEGIN INIT INFO # Provides: platform-modules-e530-24x2c # Required-Start: # Required-Stop: # Should-Start: # Should-Stop: # Default-Start: S # Default-Stop: 0 6 # Short-Description: Load Centec kernel modules ### END INIT INFO function install_python_api_package() { device="/usr/share/sonic/device" platform=$(/usr/local/bin/sonic-cfggen -H -v DEVICE_METADATA.localhost.platform) rv=$(pip3 show sonic-platform > /dev/null 2>/dev/null) if [ $? -ne 0 ]; then rv=$(pip3 install $device/$platform/sonic_platform-1.0-py3-none-any.whl) fi } function load_kernel_modules() { hwaddr=`fw_printenv ethaddr | awk -F = '{print $2}'` if [ "$hwaddr" != "" ]; then ifconfig eth0 hw ether $hwaddr fi depmod -a modprobe ctc-i2c-mux-pca954x modprobe centec_e530_24x2c_platform modprobe fan-ctc5236 modprobe dal modprobe tun modprobe tap } function remove_kernel_modules() { modprobe -r tap modprobe -r tun modprobe -r dal modprobe -r fan-ctc5236 modprobe -r centec_e530_24x2c_platform modprobe -r ctc-i2c-mux-pca954x } case "$1" in start) echo -n "Load Centec kernel modules... " load_kernel_modules install_python_api_package echo "done." ;; stop) echo -n "Unload Centec kernel modules... " remove_kernel_modules echo "done." ;; force-reload|restart) echo "Not supported" ;; *) echo "Usage: /etc/init.d/platform-modules-e530-24x2c {start|stop}" exit 1 ;; esac exit 0