diff --git a/device/mitac/x86_64-mitac_ly1200_b32h0_c3-r0/installer.conf b/device/mitac/x86_64-mitac_ly1200_b32h0_c3-r0/installer.conf index 8d4683add468..cda2e2810cbf 100644 --- a/device/mitac/x86_64-mitac_ly1200_b32h0_c3-r0/installer.conf +++ b/device/mitac/x86_64-mitac_ly1200_b32h0_c3-r0/installer.conf @@ -1,4 +1,4 @@ CONSOLE_PORT=0x3f8 CONSOLE_DEV=0 CONSOLE_SPEED=115200 -ONIE_PLATFORM_EXTRA_CMDLINE_LINUX="acpi_enforce_resources=lax pcie_aspm=off irqpoll" +ONIE_PLATFORM_EXTRA_CMDLINE_LINUX="acpi_enforce_resources=lax pcie_aspm=off irqpoll modprobe.blacklist=i2c_ismt" diff --git a/platform/broadcom/sonic-platform-modules-mitac/.gitignore b/platform/broadcom/sonic-platform-modules-mitac/.gitignore index d9b0ff48f5d9..ae5cd673e9ad 100644 --- a/platform/broadcom/sonic-platform-modules-mitac/.gitignore +++ b/platform/broadcom/sonic-platform-modules-mitac/.gitignore @@ -9,6 +9,8 @@ ly1200-32x/modules/modules.order ly1200-32x/modules/.tmp_versions ly1200-32x/opt/xcvr-serv/*.o ly1200-32x/opt/sys-serv/*.o +ly1200-32x/opt/xcvr-serv/xcvr-servd +ly1200-32x/opt/sys-serv/sys-servd debian/sonic-platform-mitac-ly1200-32x/ debian/sonic-platform-mitac-ly1200-32x.debhelper.log diff --git a/platform/broadcom/sonic-platform-modules-mitac/debian/control b/platform/broadcom/sonic-platform-modules-mitac/debian/control index dc41ba4863cb..86dc337af8d9 100644 --- a/platform/broadcom/sonic-platform-modules-mitac/debian/control +++ b/platform/broadcom/sonic-platform-modules-mitac/debian/control @@ -7,5 +7,5 @@ Standards-Version: 3.9.3 Package: sonic-platform-mitac-ly1200-32x Architecture: amd64 -Depends: linux-image-4.9.0-7-amd64 +Depends: linux-image-4.9.0-7-amd64, bc Description: kernel modules for platform devices such as fan, led, sfp \ No newline at end of file diff --git a/platform/broadcom/sonic-platform-modules-mitac/debian/sonic-platform-mitac-ly1200-32x.init b/platform/broadcom/sonic-platform-modules-mitac/debian/sonic-platform-mitac-ly1200-32x.init index 5e3fa6eb7065..ed988b683542 100644 --- a/platform/broadcom/sonic-platform-modules-mitac/debian/sonic-platform-mitac-ly1200-32x.init +++ b/platform/broadcom/sonic-platform-modules-mitac/debian/sonic-platform-mitac-ly1200-32x.init @@ -6,8 +6,8 @@ # Required-Stop: # Should-Start: # Should-Stop: -# Default-Start: S -# Default-Stop: 0 6 +# Default-Start: +# Default-Stop: # Short-Description: Setup ly1200-32x board. ### END INIT INFO @@ -16,26 +16,24 @@ start) echo -n "Setting up board... " echo 0 > /proc/sys/kernel/perf_cpu_time_max_percent - echo 0 > /sys/bus/i2c/devices/1-0031/wd_en - - /etc/init.d/gpe start /etc/init.d/i2c_init start /etc/init.d/sys_polld start - /opt/script/start_service.sh & + /etc/init.d/xcvr_servd start + /etc/init.d/sys_servd start + echo 0 > /sys/bus/i2c/devices/1-0031/wd_en + echo "done." ;; stop) echo -n "cleaning... " - /etc/init.d/gpe stop /etc/init.d/i2c_init stop /etc/init.d/xcvr_servd stop /etc/init.d/sys_servd stop /etc/init.d/sys_polld stop echo "done." - ;; force-reload|restart) @@ -43,7 +41,7 @@ force-reload|restart) ;; *) - echo "Usage: /etc/init.d/sonic-platform-mitac-ly1200-32x.init {start|stop}" + echo "Usage: /etc/init.d/sonic-platform-mitac-ly1200-32x {start|stop}" exit 1 ;; esac diff --git a/platform/broadcom/sonic-platform-modules-mitac/debian/sonic-platform-mitac-ly1200-32x.postinst b/platform/broadcom/sonic-platform-modules-mitac/debian/sonic-platform-mitac-ly1200-32x.postinst deleted file mode 100755 index 4489e72470ad..000000000000 --- a/platform/broadcom/sonic-platform-modules-mitac/debian/sonic-platform-mitac-ly1200-32x.postinst +++ /dev/null @@ -1,11 +0,0 @@ -#!/bin/sh -set -e -# Automatically added by dh_installinit -if [ "$1" = "configure" ] || [ "$1" = "abort-upgrade" ]; then - if [ -x "/etc/init.d/sonic-platform-mitac-ly1200-32x" ]; then - update-rc.d xcvr_servd defaults >/dev/null - update-rc.d sonic-platform-mitac-ly1200-32x defaults >/dev/null - invoke-rc.d sonic-platform-mitac-ly1200-32x start || exit $? - fi -fi -# End automatically added section diff --git a/platform/broadcom/sonic-platform-modules-mitac/debian/sonic-platform-mitac-ly1200-32x.postrm b/platform/broadcom/sonic-platform-modules-mitac/debian/sonic-platform-mitac-ly1200-32x.postrm deleted file mode 100755 index 494edd3bdce1..000000000000 --- a/platform/broadcom/sonic-platform-modules-mitac/debian/sonic-platform-mitac-ly1200-32x.postrm +++ /dev/null @@ -1,15 +0,0 @@ -#!/bin/sh -set -e -# Automatically added by dh_installinit -update-rc.d xcvr_servd remove >/dev/null -if [ "$1" = "purge" ] ; then - update-rc.d sonic-platform-mitac-ly1200-32x remove >/dev/null -fi - - -# In case this system is running systemd, we make systemd reload the unit files -# to pick up changes. -if [ -d /run/systemd/system ] ; then - systemctl --system daemon-reload >/dev/null || true -fi -# End automatically added section diff --git a/platform/broadcom/sonic-platform-modules-mitac/ly1200-32x/etc/init.d/fan-ctrld b/platform/broadcom/sonic-platform-modules-mitac/ly1200-32x/etc/init.d/fan-ctrld index 936f01e8b640..a7ae13ecee8b 100755 --- a/platform/broadcom/sonic-platform-modules-mitac/ly1200-32x/etc/init.d/fan-ctrld +++ b/platform/broadcom/sonic-platform-modules-mitac/ly1200-32x/etc/init.d/fan-ctrld @@ -3,7 +3,7 @@ # Provides: fan-ctrld # Required-Start: # Required-Stop: -# Default-Start: rc.local +# Default-Start: # Default-Stop: # Short-Description: Daemon fan-ctrld ### END INIT INFO diff --git a/platform/broadcom/sonic-platform-modules-mitac/ly1200-32x/etc/init.d/gpe b/platform/broadcom/sonic-platform-modules-mitac/ly1200-32x/etc/init.d/gpe deleted file mode 100755 index c326442db047..000000000000 --- a/platform/broadcom/sonic-platform-modules-mitac/ly1200-32x/etc/init.d/gpe +++ /dev/null @@ -1,39 +0,0 @@ -#! /bin/bash -### BEGIN INIT INFO -# Provides: gpe -# Required-Start: -# Required-Stop: -# Default-Start: rc.local -# Default-Stop: -# Short-Description: Daemon gpe -### END INIT INFO - -# Load kernel modules -load_module () { - if [ `lsmod | grep -c "gpe "` -eq 0 ]; then - insmod /lib/modules/`uname -r`/extra/mitac_ly1200_32x_gpe.ko - fi -} - -remove_module () { - rmmod mitac-ly1200-32x_gpe -} - -case "$1" in - start) - load_module - ;; - stop) - remove_module - ;; - reload|restart|force-reload) - remove_module - load_module - ;; - *) - echo "Usage: $N {start|stop|reload|restart|force-reload}" >&2 - exit 1 - ;; -esac - -exit 0 diff --git a/platform/broadcom/sonic-platform-modules-mitac/ly1200-32x/etc/init.d/i2c_init b/platform/broadcom/sonic-platform-modules-mitac/ly1200-32x/etc/init.d/i2c_init index 1d0a94cbb4e6..4281cc00c1e0 100755 --- a/platform/broadcom/sonic-platform-modules-mitac/ly1200-32x/etc/init.d/i2c_init +++ b/platform/broadcom/sonic-platform-modules-mitac/ly1200-32x/etc/init.d/i2c_init @@ -6,8 +6,8 @@ # Required-Stop: # Should-Start: # Should-Stop: -# Default-Start: S -# Default-Stop: 0 6 +# Default-Start: +# Default-Stop: # Short-Description: Setup ly1200-32x board. ### END INIT INFO @@ -48,105 +48,9 @@ function log_msg() { # Load kernel modules load_modules () { - while [ 1 ] - do - if [ `lsmod | grep -c "i2c_i801 "` -eq 1 ] && [ `lsmod | grep -c "i2c_ismt "` -eq 1 ]; then - log_msg "The kernel module i801 and ismt was insert." - break; - fi - if [ $I2C_BUS_RM_ALL -eq 0 ]; then - I2C_BUS_RM_ALL=1 - log_msg "Wait for i2c_i801 and i2c_ismt module insert." - fi - sleep 1 - done - if [ $I2C_BUS_RM_ALL -eq 1 ]; then - log_msg "i2c_i801 and i2c_ismt auto insert success." - fi - #----------remove i801 start--------------------- - if [ `lsmod | grep -c "i2c_i801 "` -eq 1 ]; then - rmmod i2c_i801 - while [ `lsmod | grep -c "i2c_i801 "` -eq 1 ] - do - if [ $I2C_I801_RM_PRINT -eq 0 ]; then - I2C_I801_RM_PRINT=1 - log_msg "Wait for i2c_i801 remove." - fi - if [ $I2C_I801_RM_RETRY -lt $RETRY ];then - I2C_I801_RM_RETRY=$((I2C_I801_RM_RETRY + 1)) - else - break - fi - sleep 1 - done - if [ $I2C_I801_RM_PRINT -eq 1 ]; then - log_msg "i2c_i801 remove success." - fi - fi - #----------remove i801 end------------------------ - - - #----------remove ismt start---------------------- - if [ `lsmod | grep -c "i2c_ismt "` -eq 1 ]; then - rmmod i2c_ismt - while [ `lsmod | grep -c "i2c_ismt "` -eq 1 ] - do - if [ $I2C_ISMT_RM_PRINT -eq 0 ]; then - I2C_ISMT_RM_PRINT=1 - log_msg "Wait for i2c_ismt remove." - fi - if [ $I2C_ISMT_RM_RETRY -lt $RETRY ];then - I2C_ISMT_RM_RETRY=$((I2C_ISMT_RM_RETRY + 1)) - else - break - fi - sleep 1 - done - if [ $I2C_ISMT_RM_PRINT -eq 1 ]; then - log_msg "i2c_ismt remove success." - fi - fi - #----------remove ismt end------------------------ - - #----------insert i801 start---------------------- - insmod /lib/modules/`uname -r`/kernel/drivers/i2c/busses/i2c-i801.ko - while [ `lsmod | grep -c "i2c_i801 "` -eq 0 ] - do - if [ $I2C_I801_INS_PRINT -eq 0 ]; then - I2C_I801_INS_PRINT=1 - log_msg "Wait for i2c_i801 insert." - fi - if [ $I2C_I801_INS_RETRY -lt $RETRY ];then - I2C_I801_INS_RETRY=$((I2C_I801_INS_RETRY + 1)) - else - break - fi - sleep 1 - done - if [ $I2C_I801_INS_PRINT -eq 1 ]; then - log_msg "i2c_i801 insert success." - fi - #----------insert i801 end------------------------ - - #----------insert ismt start---------------------- - insmod /lib/modules/`uname -r`/kernel/drivers/i2c/busses/i2c-ismt.ko - while [ `lsmod | grep -c "i2c_ismt "` -eq 0 ] - do - if [ $I2C_ISMT_INS_PRINT -eq 0 ]; then - I2C_ISMT_INS_PRINT=1 - log_msg "Wait for i2c_ismt insert." - fi - if [ $I2C_ISMT_INS_RETRY -lt $RETRY ];then - I2C_ISMT_INS_RETRY=$((I2C_ISMT_INS_RETRY + 1)) - else - break - fi - sleep 1 - done - if [ $I2C_ISMT_INS_PRINT -eq 1 ]; then - log_msg "i2c_ismt insert success." - fi - #----------insert ismt start------------------------ + modprobe i2c_i801 + modprobe i2c_ismt + if [ `lsmod | grep -c "at24 "` -eq 0 ]; then insmod /lib/modules/`uname -r`/kernel/drivers/misc/eeprom/at24.ko fi @@ -201,19 +105,24 @@ load_i2c_dev_modules () { fi } +# Load nvmem_core modules +load_nvmem_core_modules () { + if [ `lsmod | grep -c "nvmem_core "` -eq 0 ]; then + modprobe nvmem_core + fi +} + case "$1" in start) - echo -n "Setting up board... " - depmod -a + echo -n "Loading modules for board... " load_i2c_dev_modules + load_nvmem_core_modules load_modules echo "done." ;; stop) echo -n "cleaning... " - - echo "done." ;; diff --git a/platform/broadcom/sonic-platform-modules-mitac/ly1200-32x/etc/init.d/sys_polld b/platform/broadcom/sonic-platform-modules-mitac/ly1200-32x/etc/init.d/sys_polld index 1df43346f257..7918c836c628 100755 --- a/platform/broadcom/sonic-platform-modules-mitac/ly1200-32x/etc/init.d/sys_polld +++ b/platform/broadcom/sonic-platform-modules-mitac/ly1200-32x/etc/init.d/sys_polld @@ -3,7 +3,7 @@ # Provides: sys-polld # Required-Start: # Required-Stop: -# Default-Start: rc.local +# Default-Start: # Default-Stop: # Short-Description: Daemon sys-polld ### END INIT INFO diff --git a/platform/broadcom/sonic-platform-modules-mitac/ly1200-32x/etc/init.d/sys_servd b/platform/broadcom/sonic-platform-modules-mitac/ly1200-32x/etc/init.d/sys_servd index 09ee087d5db0..2737f8fb5507 100755 --- a/platform/broadcom/sonic-platform-modules-mitac/ly1200-32x/etc/init.d/sys_servd +++ b/platform/broadcom/sonic-platform-modules-mitac/ly1200-32x/etc/init.d/sys_servd @@ -3,8 +3,8 @@ # Provides: sys-servd # Required-Start: $remote_fs $syslog # Required-Stop: $remote_fs $syslog -# Default-Start: rc.local -# Default-Stop: 0 1 6 +# Default-Start: +# Default-Stop: # Short-Description: Daemon sys-servd ### END INIT INFO diff --git a/platform/broadcom/sonic-platform-modules-mitac/ly1200-32x/etc/init.d/xcvr_servd b/platform/broadcom/sonic-platform-modules-mitac/ly1200-32x/etc/init.d/xcvr_servd index 1558614fd43c..4eed58457a33 100755 --- a/platform/broadcom/sonic-platform-modules-mitac/ly1200-32x/etc/init.d/xcvr_servd +++ b/platform/broadcom/sonic-platform-modules-mitac/ly1200-32x/etc/init.d/xcvr_servd @@ -3,8 +3,8 @@ # Provides: xcvr-servd # Required-Start: $remote_fs $syslog # Required-Stop: $remote_fs $syslog -# Default-Start: rc.local -# Default-Stop: 0 1 6 +# Default-Start: +# Default-Stop: # Short-Description: Daemon xcvr-servd ### END INIT INFO diff --git a/platform/broadcom/sonic-platform-modules-mitac/ly1200-32x/opt/script/funcs.sh b/platform/broadcom/sonic-platform-modules-mitac/ly1200-32x/opt/script/funcs.sh deleted file mode 100755 index 4b0c4c35471f..000000000000 --- a/platform/broadcom/sonic-platform-modules-mitac/ly1200-32x/opt/script/funcs.sh +++ /dev/null @@ -1,23 +0,0 @@ -#/bin/bash - -# process name/id -DAEMON_NAME=`basename $0` -DAEMON_PID="$$" - -DEF_SEVERITY="INFO" - -#/* -#* FEATURE: -#* log_msg -#* PURPOSE: -#* log message -#* PARAMETERS: -#* msg (IN) message -#* RETURNS: -#* -#*/ -function log_msg() { - local msg=$1 - - `logger -t $DAEMON_NAME -p $DEF_SEVERITY $msg` -} diff --git a/platform/broadcom/sonic-platform-modules-mitac/ly1200-32x/opt/script/start_service.sh b/platform/broadcom/sonic-platform-modules-mitac/ly1200-32x/opt/script/start_service.sh deleted file mode 100755 index c397f597652d..000000000000 --- a/platform/broadcom/sonic-platform-modules-mitac/ly1200-32x/opt/script/start_service.sh +++ /dev/null @@ -1,166 +0,0 @@ -#/bin/bash - -DIR=$(dirname $0) - -# include files -source ${DIR}/funcs.sh - -ACPI_INSTALL_PRINT=0 -ACPID_INSTALL_PRINT=0 -ACPI_SUPPORT_BASE_INSTALL_PRINT=0 -BC_INSTALL_PRINT=0 -ACPID_SOCKET_PRINT=0 -ACPI_GPE01_PRINT=0 -ACPI_GPE02_PRINT=0 -ACPI_GPE47_PRINT=0 -ACPI_STATUS=0 - -while [ 1 ] -do - if [ `dpkg -l |grep -c "acpi "` -eq "0" ]; then - dpkg -i /opt/debs/acpi_1.7-1+b1_amd64.deb - if [ "$?" -ne "0" ]; then - if [ $ACPI_INSTALL_PRINT -eq 0 ]; then - ACPI_INSTALL_PRINT=1 - log_msg "Wait for acpi package install." - fi - sleep 1 - continue - else - log_msg "Install acpi package success." - fi - fi - break -done - -while [ 1 ] -do - if [ `dpkg -l |grep -c "acpid "` -eq "0" ]; then - dpkg -i /opt/debs/acpid_2.0.28-1+b1_amd64.deb - if [ "$?" -ne "0" ]; then - if [ $ACPID_INSTALL_PRINT -eq 0 ]; then - ACPID_INSTALL_PRINT=1 - log_msg "Wait for acpid package install." - fi - sleep 1 - systemctl enable acpid.service - systemctl start acpid.service - continue - else - log_msg "Install acpid package success." - systemctl enable acpid.service - systemctl start acpid.service - fi - fi - break -done - -while [ 1 ] -do - if [ `dpkg -l |grep -c "acpi-support-base"` -eq "0" ]; then - dpkg -i /opt/debs/acpi-support-base_0.142-8_all.deb - if [ "$?" -ne "0" ]; then - if [ $ACPI_SUPPORT_BASE_INSTALL_PRINT -eq 0 ]; then - ACPI_SUPPORT_BASE_INSTALL_PRINT=1 - log_msg "Wait for acpi-support-base package install." - fi - sleep 1 - continue - else - log_msg "Install acpi-support-base package success." - fi - fi - break -done - -while [ 1 ] -do - if [ `dpkg -l |grep -c " bc "` -eq "0" ]; then - dpkg -i /opt/debs/bc_1.06.95-9+b3_amd64.deb - if [ "$?" -ne "0" ]; then - if [ $BC_INSTALL_PRINT -eq 0 ]; then - BC_INSTALL_PRINT=1 - log_msg "Wait for bc package install." - fi - sleep 1 - continue - else - log_msg "Install bc package success." - fi - fi - break -done - -while [ 1 ] -do - if [ ! -e "/sys/firmware/acpi/interrupts/gpe01" ]; then - if [ $ACPI_GPE01_PRINT -eq 0 ]; then - ACPI_GPE01_PRINT=1 - log_msg "Wait for acpi gpe01 ready." - fi - sleep 1 - continue - fi - log_msg "The acpi gpe01 ready." - break -done - -while [ 1 ] -do - if [ ! -e "/sys/firmware/acpi/interrupts/gpe02" ]; then - if [ $ACPI_GPE02_PRINT -eq 0 ]; then - ACPI_GPE02_PRINT=1 - log_msg "Wait for acpi gpe02 ready." - fi - sleep 1 - continue - fi - log_msg "The acpi gpe02 ready." - break -done - -while [ 1 ] -do - if [ ! -e "/sys/firmware/acpi/interrupts/gpe47" ]; then - if [ $ACPI_GPE47_PRINT -eq 0 ]; then - ACPI_GPE47_PRINT=1 - log_msg "Wait for acpi gpe47 ready." - fi - sleep 1 - continue - fi - log_msg "The acpi gpe47 ready." - break -done - -while [ 1 ] -do - if [ ! -e "/var/run/acpid.socket" ]; then - if [ $ACPID_SOCKET_PRINT -eq 0 ]; then - ACPID_SOCKET_PRINT=1 - log_msg "Wait for acipd daemon start." - fi - sleep 1 - continue - fi - log_msg "The acpid daemon start." - break -done - -while [ 1 ] -do - if [ `/etc/init.d/acpid status | grep -c "active (running)"` -eq "0" ]; then - if [ $ACPI_STATUS -eq 0 ]; then - ACPI_STATUS=1 - log_msg "Wait for acpid running." - fi - sleep 1 - continue - fi - log_msg "The acpid running now." - break -done - -/etc/init.d/xcvr_servd start -/etc/init.d/sys_servd start -exit 0; diff --git a/platform/broadcom/sonic-platform-modules-mitac/ly1200-32x/opt/sys-serv/bms_irq_sysd.c b/platform/broadcom/sonic-platform-modules-mitac/ly1200-32x/opt/sys-serv/bms_irq_sysd.c index 66c6dec888b7..2f63dfa46212 100644 --- a/platform/broadcom/sonic-platform-modules-mitac/ly1200-32x/opt/sys-serv/bms_irq_sysd.c +++ b/platform/broadcom/sonic-platform-modules-mitac/ly1200-32x/opt/sys-serv/bms_irq_sysd.c @@ -35,7 +35,7 @@ #define PROC_PRIORITY 90 /* MIC_FEAT_SYS_INT : 1 means interrupt, 0 means polling */ -#define MIC_FEAT_SYS_INT 1 +#define MIC_FEAT_SYS_INT 0 diff --git a/platform/broadcom/sonic-platform-modules-mitac/ly1200-32x/opt/xcvr-serv/bms_xcvr_isrd.c b/platform/broadcom/sonic-platform-modules-mitac/ly1200-32x/opt/xcvr-serv/bms_xcvr_isrd.c index 7f769055d588..6f9a082a704d 100644 --- a/platform/broadcom/sonic-platform-modules-mitac/ly1200-32x/opt/xcvr-serv/bms_xcvr_isrd.c +++ b/platform/broadcom/sonic-platform-modules-mitac/ly1200-32x/opt/xcvr-serv/bms_xcvr_isrd.c @@ -33,7 +33,7 @@ #define SLAVE_CPLD_START_PORT 17 /* MIC_FEAT_XCVR_INT : 1 means interrupt, 0 means polling */ -#define MIC_FEAT_XCVR_INT 1 +#define MIC_FEAT_XCVR_INT 0 #if MIC_FEAT_XCVR_INT == 1 #include