summaryrefslogtreecommitdiff
path: root/meta-ampere
diff options
context:
space:
mode:
authorThang Q. Nguyen <thang@os.amperecomputing.com>2024-01-26 10:22:37 +0300
committerThang Q. Nguyen <thang@os.amperecomputing.com>2024-01-28 07:02:33 +0300
commite4f1b9c46a0f49bafc4f5a4d77876a1e18663aa4 (patch)
tree7473935a4e6e764def00fb23590003ab10f59c3b /meta-ampere
parentf52e3dde8c006aa1204b4d74d64bcda47fcd061e (diff)
downloadopenbmc-e4f1b9c46a0f49bafc4f5a4d77876a1e18663aa4.tar.xz
meta-ampere: remove unused shell scripts
Remove shell scripts which are not used in core services. Tested: 1. Compile Mt.Jade and Mt.Mitchell without errors 2. Check power control still works fine Change-Id: I740b804a9e43b4826c5549a7a1e17eab745ded70 Signed-off-by: Thang Q. Nguyen <thang@os.amperecomputing.com>
Diffstat (limited to 'meta-ampere')
-rw-r--r--meta-ampere/meta-common/recipes-ampere/platform/ampere-utils.bb4
-rw-r--r--meta-ampere/meta-common/recipes-ampere/platform/ampere-utils/ampere_power_control_lock.sh99
-rwxr-xr-xmeta-ampere/meta-common/recipes-ampere/platform/ampere-utils/ampere_spi_util.sh240
-rw-r--r--meta-ampere/meta-jade/recipes-ampere/platform/ampere-utils.bbappend2
-rw-r--r--meta-ampere/meta-jade/recipes-ampere/platform/ampere-utils/gpio-lib.sh72
-rw-r--r--meta-ampere/meta-mitchell/recipes-ampere/host/ampere-hostctrl.bbappend16
-rw-r--r--meta-ampere/meta-mitchell/recipes-ampere/host/ampere-hostctrl/ampere-host-on-host-check-override.conf4
-rw-r--r--meta-ampere/meta-mitchell/recipes-ampere/host/ampere-hostctrl/ampere_power_on_failure_check.sh110
-rw-r--r--meta-ampere/meta-mitchell/recipes-ampere/platform/ampere-platform-init.bb2
-rw-r--r--meta-ampere/meta-mitchell/recipes-ampere/platform/ampere-platform-init/gpio-lib.sh69
-rw-r--r--meta-ampere/meta-mitchell/recipes-ampere/platform/ampere-utils.bbappend6
-rw-r--r--meta-ampere/meta-mitchell/recipes-ampere/platform/ampere-utils/ampere_fanctrl.sh168
-rwxr-xr-xmeta-ampere/meta-mitchell/recipes-ampere/platform/ampere-utils/ampere_firmware_upgrade.sh14
-rwxr-xr-xmeta-ampere/meta-mitchell/recipes-ampere/platform/ampere-utils/ampere_firmware_version.sh99
-rwxr-xr-xmeta-ampere/meta-mitchell/recipes-ampere/platform/ampere-utils/ampere_scandump_mode.sh94
15 files changed, 7 insertions, 992 deletions
diff --git a/meta-ampere/meta-common/recipes-ampere/platform/ampere-utils.bb b/meta-ampere/meta-common/recipes-ampere/platform/ampere-utils.bb
index 4f83acfdb9..5d308dc69e 100644
--- a/meta-ampere/meta-common/recipes-ampere/platform/ampere-utils.bb
+++ b/meta-ampere/meta-common/recipes-ampere/platform/ampere-utils.bb
@@ -6,8 +6,6 @@ LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/Apache-2.0;md5=89aea4e17d99a7ca
SRC_URI = " \
file://ampere_add_redfishevent.sh \
- file://ampere_spi_util.sh \
- file://ampere_power_control_lock.sh \
"
RDEPENDS:${PN} = "bash"
@@ -15,6 +13,4 @@ RDEPENDS:${PN} = "bash"
do_install() {
install -d ${D}/usr/sbin
install -m 0755 ${WORKDIR}/ampere_add_redfishevent.sh ${D}/${sbindir}/
- install -m 0755 ${WORKDIR}/ampere_spi_util.sh ${D}/${sbindir}/
- install -m 0755 ${WORKDIR}/ampere_power_control_lock.sh ${D}/${sbindir}/
}
diff --git a/meta-ampere/meta-common/recipes-ampere/platform/ampere-utils/ampere_power_control_lock.sh b/meta-ampere/meta-common/recipes-ampere/platform/ampere-utils/ampere_power_control_lock.sh
deleted file mode 100644
index db78c43feb..0000000000
--- a/meta-ampere/meta-common/recipes-ampere/platform/ampere-utils/ampere_power_control_lock.sh
+++ /dev/null
@@ -1,99 +0,0 @@
-#!/bin/bash
-
-declare -a power_reboot_targets=(
- obmc-host-reboot@0.target
- obmc-host-warm-reboot@0.target
- obmc-host-force-warm-reboot@0.target
- )
-
-declare -a power_off_targets=(
- obmc-chassis-hard-poweroff@0.target
- )
-
-declare -a power_on_targets=(
- obmc-host-start@0.target
- )
-
-systemd1_service="org.freedesktop.systemd1"
-systemd1_object_path="/org/freedesktop/systemd1"
-systemd1_manager_interface="org.freedesktop.systemd1.Manager"
-mask_method="MaskUnitFiles"
-unmask_method="UnmaskUnitFiles"
-
-function mask_reboot_targets()
-{
- # To prevent reboot actions, this function will mask all reboot targets
- for target in "${power_reboot_targets[@]}"
- do
- busctl call $systemd1_service $systemd1_object_path $systemd1_manager_interface \
- $mask_method asbb 1 "$target" true true
- done
-}
-
-function unmask_reboot_targets()
-{
- # Allow reboot targets work normal
- for target in "${power_reboot_targets[@]}"
- do
- busctl call $systemd1_service $systemd1_object_path $systemd1_manager_interface \
- $unmask_method asb 1 "$target" true
- done
-}
-
-function mask_off_targets()
-{
- # To prevent off actions,this function will mask all off targets
- for target in "${power_off_targets[@]}"
- do
- busctl call $systemd1_service $systemd1_object_path $systemd1_manager_interface \
- $mask_method asbb 1 "$target" true true
- done
-}
-
-function unmask_off_targets()
-{
- # Allow off targets work normal
- for target in "${power_off_targets[@]}"
- do
- busctl call $systemd1_service $systemd1_object_path $systemd1_manager_interface \
- $unmask_method asb 1 "$target" true
- done
-}
-
-function mask_on_targets()
-{
- # To prevent on actions, this function will mask all on targets
- systemctl mask "${power_on_targets[@]}" --runtime
-}
-
-function unmask_on_targets()
-{
- # Allow on targets work normal
- systemctl unmask "${power_on_targets[@]}" --runtime
-}
-
-purpose=$1
-allow=$2
-
-if [ "$purpose" == "reboot" ]; then
- if [ "$allow" == "false" ]
- then
- mask_reboot_targets
- else
- unmask_reboot_targets
- fi
-elif [ "$purpose" == "off" ]; then
- if [ "$allow" == "false" ]
- then
- mask_off_targets
- else
- unmask_off_targets
- fi
-elif [ "$purpose" == "on" ]; then
- if [ "$allow" == "false" ]
- then
- mask_on_targets
- else
- unmask_on_targets
- fi
-fi
diff --git a/meta-ampere/meta-common/recipes-ampere/platform/ampere-utils/ampere_spi_util.sh b/meta-ampere/meta-common/recipes-ampere/platform/ampere-utils/ampere_spi_util.sh
deleted file mode 100755
index 204fd86ff9..0000000000
--- a/meta-ampere/meta-common/recipes-ampere/platform/ampere-utils/ampere_spi_util.sh
+++ /dev/null
@@ -1,240 +0,0 @@
-#!/bin/bash
-
-# shellcheck disable=SC2046
-
-spi_address="1e630000.spi"
-spi_bind="/sys/bus/platform/drivers/spi-aspeed-smc/bind"
-spi_unbind="/sys/bus/platform/drivers/spi-aspeed-smc/unbind"
-spi_lock="/run/platform/spi.lock"
-spi_lock_dir="/run/platform"
-
-bind_aspeed_smc_driver() {
- if [ -f "${spi_lock}" ]; then
- pid=$1
- pid_lock=$(cat "${spi_lock}")
- if [[ "${pid}" != "${pid_lock}" ]]; then
- echo "SPI-NOR resoure is lock by process $pid_lock"
- return 1
- fi
- fi
-
- # BMC access SPI-NOR resource
- gpioset $(gpiofind spi0-program-sel)=1
- sleep 0.1
- echo "Bind the ASpeed SMC driver"
- echo "${spi_address}" > "${spi_bind}" 2>/dev/null
- # Check the HNOR partition available
- HOST_MTD=$(< /proc/mtd grep "pnor" | sed -n 's/^\(.*\):.*/\1/p')
- if [ -z "$HOST_MTD" ]; then
- echo "${spi_address}" > "${spi_unbind}"
- sleep 0.1
- echo "${spi_address}" > "${spi_bind}"
- fi
- # BMC release SPI-NOR resource
- gpioset $(gpiofind spi0-program-sel)=0
- return 0
-}
-
-unbind_aspeed_smc_driver() {
- if [ -f "${spi_lock}" ]; then
- pid=$1
- pid_lock=$(cat "${spi_lock}")
- if [[ "${pid}" != "${pid_lock}" ]]; then
- echo "SPI-NOR resoure is lock by process $pid_lock . Wait 10s"
- # Wait maximum 10 seconds for unlock SPI-NOR
- cnt=10
- while [ $cnt -gt 0 ]
- do
- if [ -f "${spi_lock}" ]; then
- sleep 1
- cnt=$((cnt - 1))
- else
- break
- fi
- done
- if [ "$cnt" -eq "0" ]; then
- echo "Timeout 10 seconds, SPI-NOR still busy. Force unlock to access SPI"
- rm -f "${spi_lock}"
- fi
- fi
- fi
-
- HOST_MTD=$(< /proc/mtd grep "pnor" | sed -n 's/^\(.*\):.*/\1/p')
- if [ -n "$HOST_MTD" ]; then
- # If the HNOR partition is available, then unbind driver
- # BMC access SPI-NOR resource
- gpioset $(gpiofind spi0-program-sel)=1
- sleep 0.1
- echo "Unbind the ASpeed SMC driver"
- echo "${spi_address}" > "${spi_unbind}"
- fi
- # BMC release SPI-NOR resource
- gpioset $(gpiofind spi0-program-sel)=0
- # Deassert BMC access SPI-NOR pin
- gpioset $(gpiofind spi-nor-access)=0
- sleep 0.5
- return 0
-}
-
-lock_spi_resource() {
- # Wait maximum 10 seconds to lock SPI-NOR
- cnt=10
- while [ $cnt -gt 0 ]
- do
- if [ -f "${spi_lock}" ]; then
- sleep 1
- cnt=$((cnt - 1))
- else
- echo "$1" > "${spi_lock}"
- break
- fi
- done
-
- if [ "$cnt" -eq "0" ]; then
- echo "Timeout 10 seconds, SPI-NOR is still locked by another process"
- return 1
- fi
- return 0
-}
-
-unlock_spi_resource() {
- if [ ! -f "${spi_lock}" ]; then
- echo "SPI-NOR is already unlocked"
- return 0
- fi
-
- pid=$1
- pid_lock=$(cat "${spi_lock}")
- if [[ "${pid}" == "${pid_lock}" ]]; then
- rm -f "${spi_lock}"
- else
- echo "Cannot unlock, SPI-NOR is locked by another process"
- return 1
- fi
- return 0
-}
-
-start_handshake_spi() {
- if [ -f "${spi_lock}" ]; then
- pid=$1
- pid_lock=$(cat "${spi_lock}")
- if [[ "${pid}" != "${pid_lock}" ]]; then
- echo "SPI-NOR resoure is lock by process $pid_lock"
- return 1
- fi
- fi
-
- # Wait maximum 10 seconds to grant access SPI
- cnt=10
- while [ $cnt -gt 0 ]
- do
- spinor_access=$(gpioget $(gpiofind soc-spi-nor-access))
- if [ "$spinor_access" == "1" ]; then
- sleep 1
- cnt=$((cnt - 1))
- else
- break
- fi
- done
-
- if [ "$cnt" -eq "0" ]; then
- echo "Timeout 10 seconds, host is still hold SPI-NOR."
- return 1
- fi
- echo "Start handshake SPI-NOR"
- # Grant BMC access SPI-NOR. The process call the scripts should only
- # claim the bus for only maximum period 500ms.
- gpioset $(gpiofind spi-nor-access)=1
- # Switch the Host SPI-NOR to BMC
- gpioset $(gpiofind spi0-program-sel)=1
-}
-
-stop_handshake_spi() {
- if [ -f "${spi_lock}" ]; then
- pid=$1
- pid_lock=$(cat "${spi_lock}")
- if [[ "${pid}" != "${pid_lock}" ]]; then
- echo "SPI-NOR resoure is lock by process $pid_lock"
- return 1
- fi
- fi
- echo "Stop handshake SPI-NOR"
- # Switch the Host SPI-NOR to HOST
- gpioset $(gpiofind spi0-program-sel)=0
- # Deassert BMC access SPI-NOR pin
- gpioset $(gpiofind spi-nor-access)=0
-}
-
-
-if [ $# -eq 0 ]; then
- echo "Usage:"
- echo " - Handshake access SPI-NOR "
- echo " $(basename "$0") cmd pid"
- echo " <cmd>:"
- echo " lock - lock the SPI-NOR resource"
- echo " unlock - unlock the SPI-NOR resource"
- echo " bind - bind the SPI-NOR resource"
- echo " unbind - unbind the SPI-NOR resource"
- echo " start_handshake - start handshake between BMC and Host"
- echo " stop_handshake - release handshake between BMC and Host"
- echo " <pid>: Optional - PID of the process call script"
- exit 0
-fi
-
-CMD=$1
-
-if [ ! -d "${spi_lock_dir}" ]; then
- mkdir -p "${spi_lock_dir}"
-fi
-
-if [ -z "$2" ]; then
- PID=$$
-else
- PID=$2
-fi
-
-if [[ "${CMD}" == "lock" ]]; then
- lock_spi_resource "${PID}"
- ret=$?
- if [[ "${ret}" == "1" ]]; then
- echo "Cannot lock SPI-NOR, the resource is busy"
- exit 1
- fi
-elif [[ "${CMD}" == "unlock" ]]; then
- unlock_spi_resource "${PID}"
- ret=$?
- if [[ "${ret}" == "1" ]]; then
- echo "Cannot unlock SPI-NOR, the resource is busy"
- exit 1
- fi
-elif [[ "${CMD}" == "bind" ]]; then
- bind_aspeed_smc_driver "${PID}"
- ret=$?
- if [[ "${ret}" == "1" ]]; then
- echo "Cannot bind SPI-NOR, the resource is busy"
- exit 1
- fi
-elif [[ "${CMD}" == "unbind" ]]; then
- unbind_aspeed_smc_driver "${PID}"
- ret=$?
- if [[ "${ret}" == "1" ]]; then
- echo "Cannot unbind SPI-NOR, the resource is busy"
- exit 1
- fi
-elif [[ "${CMD}" == "start_handshake" ]]; then
- start_handshake_spi "${PID}"
- ret=$?
- if [[ "${ret}" == "1" ]]; then
- echo "Cannot start handshake SPI-NOR"
- exit 1
- fi
-elif [[ "${CMD}" == "stop_handshake" ]]; then
- stop_handshake_spi "${PID}"
- ret=$?
- if [[ "${ret}" == "1" ]]; then
- echo "Cannot stop handshake SPI-NOR"
- exit 1
- fi
-fi
-
-exit 0
diff --git a/meta-ampere/meta-jade/recipes-ampere/platform/ampere-utils.bbappend b/meta-ampere/meta-jade/recipes-ampere/platform/ampere-utils.bbappend
index df4fdf4de8..b1bae16bf1 100644
--- a/meta-ampere/meta-jade/recipes-ampere/platform/ampere-utils.bbappend
+++ b/meta-ampere/meta-jade/recipes-ampere/platform/ampere-utils.bbappend
@@ -1,7 +1,6 @@
FILESEXTRAPATHS:append := "${THISDIR}/${PN}:"
SRC_URI:append = " \
- file://gpio-lib.sh \
file://ampere_power_util.sh \
file://ampere_firmware_upgrade.sh \
file://ampere_flash_bios.sh \
@@ -10,7 +9,6 @@ SRC_URI:append = " \
do_install:append() {
install -d ${D}/usr/sbin
- install -m 0755 ${WORKDIR}/gpio-lib.sh ${D}/${sbindir}/
install -m 0755 ${WORKDIR}/ampere_power_util.sh ${D}/${sbindir}/
install -m 0755 ${WORKDIR}/ampere_firmware_upgrade.sh ${D}/${sbindir}/
install -m 0755 ${WORKDIR}/ampere_flash_bios.sh ${D}/${sbindir}/
diff --git a/meta-ampere/meta-jade/recipes-ampere/platform/ampere-utils/gpio-lib.sh b/meta-ampere/meta-jade/recipes-ampere/platform/ampere-utils/gpio-lib.sh
deleted file mode 100644
index 06095365a5..0000000000
--- a/meta-ampere/meta-jade/recipes-ampere/platform/ampere-utils/gpio-lib.sh
+++ /dev/null
@@ -1,72 +0,0 @@
-#!/bin/bash
-
-# Base of GPIO chip in /sys/class/gpio
-GPIO_CHIP0_BASE=512
-GPIO_CHIP1_BASE=780
-
-AST2X00_GPIO_BASE=(
- "$GPIO_CHIP0_BASE"
- "$GPIO_CHIP1_BASE"
-)
-
-function gpio_configure_output() {
- echo "$1" > /sys/class/gpio/export
- echo out > /sys/class/gpio/gpio"$1"/direction
- echo "$2" > /sys/class/gpio/gpio"$1"/value
- echo "$1" > /sys/class/gpio/unexport
-}
-
-function gpio_get_val() {
- echo "$1" > /sys/class/gpio/export
- cat /sys/class/gpio/gpio"$1"/value
- echo "$1" > /sys/class/gpio/unexport
-}
-
-# Configure GPIO as input
-function gpio_configure_input() {
- echo "$1" > /sys/class/gpio/export
- echo "in" > /sys/class/gpio/gpio"$1"/direction
- echo "$1" > /sys/class/gpio/unexport
-}
-
-function gpio_name_set()
-{
- str=$(gpiofind "$1")
- #Verify error code when run gpiofind
- if [ "$?" == '1' ]; then
- echo "Invalid gpio name $1"
- else
- gpioid=$(echo "$str"|cut -c 9)
- offset=$(echo "$str"|cut -d " " -f 2)
- gpioPin=$(("$offset" + ${AST2X00_GPIO_BASE[$gpioid]}))
- gpio_configure_output "$gpioPin" "$2"
- fi
-}
-
-function gpio_name_get()
-{
- str=$(gpiofind "$1")
- #Verify error code when run gpiofind
- if [ "$?" == '1' ]; then
- echo "Invalid gpio name $1"
- else
- offset=$(echo "$str"|cut -d " " -f 2)
- gpioid=$(echo "$str"|cut -c 9)
- gpioPin=$(("$offset" + ${AST2X00_GPIO_BASE[$gpioid]}))
- gpio_get_val "$gpioPin"
- fi
-}
-
-function gpio_name_input()
-{
- str=$(gpiofind "$1")
- #Verify error code when run gpiofind
- if [ "$?" == '1' ]; then
- echo "Invalid gpio name $1"
- else
- gpioid=$(echo "$str"|cut -c 9)
- offset=$(echo "$str"|cut -d " " -f 2)
- gpioPin=$(("$offset" + ${AST2X00_GPIO_BASE[$gpioid]}))
- gpio_configure_input "$gpioPin"
- fi
-}
diff --git a/meta-ampere/meta-mitchell/recipes-ampere/host/ampere-hostctrl.bbappend b/meta-ampere/meta-mitchell/recipes-ampere/host/ampere-hostctrl.bbappend
deleted file mode 100644
index 6a3bf862d4..0000000000
--- a/meta-ampere/meta-mitchell/recipes-ampere/host/ampere-hostctrl.bbappend
+++ /dev/null
@@ -1,16 +0,0 @@
-FILESEXTRAPATHS:append := "${THISDIR}/${PN}:"
-
-SRC_URI += " \
- file://ampere_power_on_failure_check.sh \
- file://ampere-host-on-host-check-override.conf \
- "
-
-FILES:${PN} += "${systemd_system_unitdir}/ampere-host-on-host-check@0.service.d"
-
-do_install:append() {
- install -m 0755 ${WORKDIR}/ampere_power_on_failure_check.sh ${D}/${sbindir}/
-
- install -d ${D}${systemd_system_unitdir}/ampere-host-on-host-check@0.service.d
- install -m 644 ${WORKDIR}/ampere-host-on-host-check-override.conf \
- ${D}${systemd_system_unitdir}/ampere-host-on-host-check@0.service.d
-}
diff --git a/meta-ampere/meta-mitchell/recipes-ampere/host/ampere-hostctrl/ampere-host-on-host-check-override.conf b/meta-ampere/meta-mitchell/recipes-ampere/host/ampere-hostctrl/ampere-host-on-host-check-override.conf
deleted file mode 100644
index ece22f238b..0000000000
--- a/meta-ampere/meta-mitchell/recipes-ampere/host/ampere-hostctrl/ampere-host-on-host-check-override.conf
+++ /dev/null
@@ -1,4 +0,0 @@
-[Service]
-ExecStartPre=/bin/sh -c "ampere_power_on_failure_check.sh check_cpu"
-ExecStartPost=/bin/sleep 3
-ExecStopPost=/bin/sh -c "ampere_power_on_failure_check.sh check_power"
diff --git a/meta-ampere/meta-mitchell/recipes-ampere/host/ampere-hostctrl/ampere_power_on_failure_check.sh b/meta-ampere/meta-mitchell/recipes-ampere/host/ampere-hostctrl/ampere_power_on_failure_check.sh
deleted file mode 100644
index 4748706d9c..0000000000
--- a/meta-ampere/meta-mitchell/recipes-ampere/host/ampere-hostctrl/ampere_power_on_failure_check.sh
+++ /dev/null
@@ -1,110 +0,0 @@
-#!/bin/bash
-
-# shellcheck disable=SC2046
-
-function check_cpu_presence()
-{
- # Check CPU presence, identify whether it is 1P or 2P system
- s0_presence=$(gpioget $(gpiofind presence-cpu0))
- s1_presence=$(gpioget $(gpiofind presence-cpu1))
- if [ "$s0_presence" == "0" ] && [ "$s1_presence" == "0" ]; then
- ampere_add_redfishevent.sh OpenBMC.0.1.AmpereEvent.OK "Host firmware boots with 2 Processor"
- elif [ "$s0_presence" == "0" ]; then
- ampere_add_redfishevent.sh OpenBMC.0.1.AmpereEvent.OK "Host firmware boots with 1 Processor"
- else
- ampere_add_redfishevent.sh OpenBMC.0.1.AmpereEvent.OK "No Processor is present"
- fi
-}
-
-function get_dbus_property()
-{
- service=$1
- object_path=$2
- interface=$3
- property=$4
-
- value=$(busctl get-property "$service" "$object_path" "$interface" "$property" | cut -d" " -f2)
-
- echo "$value"
-}
-
-function is_ATX_power_good()
-{
- pgood_value=$(get_dbus_property org.openbmc.control.Power \
- /org/openbmc/control/power0 org.openbmc.control.Power pgood)
-
- if [ "$pgood_value" == "0" ]
- then
- echo 0
- else
- echo 1
- fi
-}
-
-function is_PCP_power_good()
-{
- pcp_value=$(get_dbus_property xyz.openbmc_project.State.HostCondition.Gpio \
- /xyz/openbmc_project/Gpios/host0 xyz.openbmc_project.Condition.HostFirmware \
- CurrentFirmwareCondition)
-
- if [[ "$pcp_value" == *".Running"* ]]
- then
- echo 1
- else
- echo 0
- fi
-}
-
-function check_power_state()
-{
- echo "ATX power good checking"
- state=$(is_ATX_power_good)
- if [ "$state" == "0" ]
- then
- echo "Error: Failed to turn on ATX Power"
- ampere_add_redfishevent.sh OpenBMC.0.1.PowerSupplyPowerGoodFailed.Critical "60000"
- exit 0
- else
- ampere_add_redfishevent.sh OpenBMC.0.1.AmpereEvent.OK "ATX Power is ON"
- fi
-
- echo "Soc power good checking"
- state=$(gpioget $(gpiofind s0-soc-pgood))
- if [ "$state" == "0" ]
- then
- echo "Error: Soc domain power failure"
- ampere_add_redfishevent.sh OpenBMC.0.1.AmpereCritical.Critical "Soc domain, power failure"
- exit 0
- else
- ampere_add_redfishevent.sh OpenBMC.0.1.AmpereEvent.OK "SoC power domain is ON"
- fi
-
- echo "PCP power good checking"
- state=$(is_PCP_power_good)
- if [ "$state" == "0" ]
- then
- echo "Error: PCP domain power failure. Power off Host"
- ampere_add_redfishevent.sh OpenBMC.0.1.AmpereCritical.Critical "PCP domain, power failure"
- busctl set-property xyz.openbmc_project.State.Chassis \
- /xyz/openbmc_project/state/chassis0 \
- xyz.openbmc_project.State.Chassis RequestedPowerTransition s \
- xyz.openbmc_project.State.Chassis.Transition.Off
- exit 0
- else
- ampere_add_redfishevent.sh OpenBMC.0.1.AmpereEvent.OK "PCP power is ON"
- fi
-}
-
-action=$1
-
-if [ "$action" == "check_cpu" ]
-then
- echo "Check CPU presence"
- check_cpu_presence
-elif [ "$action" == "check_power" ]
-then
- echo "Check Power state"
- check_power_state
-fi
-
-exit 0
diff --git a/meta-ampere/meta-mitchell/recipes-ampere/platform/ampere-platform-init.bb b/meta-ampere/meta-mitchell/recipes-ampere/platform/ampere-platform-init.bb
index d79548a012..79079174c5 100644
--- a/meta-ampere/meta-mitchell/recipes-ampere/platform/ampere-platform-init.bb
+++ b/meta-ampere/meta-mitchell/recipes-ampere/platform/ampere-platform-init.bb
@@ -16,14 +16,12 @@ SRC_URI = " \
file://ampere-platform-init.service \
file://ampere_platform_init.sh \
file://mtmitchell_platform_gpios_init.sh \
- file://gpio-lib.sh \
"
SYSTEMD_PACKAGES = "${PN}"
SYSTEMD_SERVICE:${PN} = "ampere-platform-init.service"
do_install () {
install -d ${D}${sbindir}
- install -m 0755 ${WORKDIR}/gpio-lib.sh ${D}${sbindir}/
install -m 0755 ${WORKDIR}/ampere_platform_init.sh ${D}${sbindir}/
install -m 0755 ${WORKDIR}/mtmitchell_platform_gpios_init.sh ${D}${sbindir}/platform_gpios_init.sh
install -d ${D}${systemd_unitdir}/system/
diff --git a/meta-ampere/meta-mitchell/recipes-ampere/platform/ampere-platform-init/gpio-lib.sh b/meta-ampere/meta-mitchell/recipes-ampere/platform/ampere-platform-init/gpio-lib.sh
deleted file mode 100644
index c9eb2b98fe..0000000000
--- a/meta-ampere/meta-mitchell/recipes-ampere/platform/ampere-platform-init/gpio-lib.sh
+++ /dev/null
@@ -1,69 +0,0 @@
-#!/bin/bash
-
-# Configure GPIO as output and set its value
-AST2600_GPIO_BASE=(
- 512
- 720
-)
-
-function gpio_configure_output() {
- echo "$1" > /sys/class/gpio/export
- echo out > /sys/class/gpio/gpio"$1"/direction
- echo "$2" > /sys/class/gpio/gpio"$1"/value
- echo "$1" > /sys/class/gpio/unexport
-}
-
-function gpio_get_val() {
- echo "$1" > /sys/class/gpio/export
- cat /sys/class/gpio/gpio"$1"/value
- echo "$1" > /sys/class/gpio/unexport
-}
-
-# Configure GPIO as input
-function gpio_configure_input() {
- echo "$1" > /sys/class/gpio/export
- echo "in" > /sys/class/gpio/gpio"$1"/direction
- echo "$1" > /sys/class/gpio/unexport
-}
-
-function gpio_name_set()
-{
- str=$(gpiofind "$1")
- #Verify error code when run gpiofind
- if [ "$?" == '1' ]; then
- echo "Invalid gpio name $1"
- else
- gpioid=$(echo "$str"|cut -c 9)
- offset=$(echo "$str"|cut -d " " -f 2)
- gpioPin=$(("$offset" + ${AST2600_GPIO_BASE[$gpioid]}))
- gpio_configure_output "$gpioPin" "$2"
- fi
-}
-
-function gpio_name_get()
-{
- str=$(gpiofind "$1")
- #Verify error code when run gpiofind
- if [ "$?" == '1' ]; then
- echo "Invalid gpio name $1"
- else
- offset=$(echo "$str"|cut -d " " -f 2)
- gpioid=$(echo "$str"|cut -c 9)
- gpioPin=$(("$offset" + ${AST2600_GPIO_BASE[$gpioid]}))
- gpio_get_val "$gpioPin"
- fi
-}
-
-function gpio_name_input()
-{
- str=$(gpiofind "$1")
- #Verify error code when run gpiofind
- if [ "$?" == '1' ]; then
- echo "Invalid gpio name $1"
- else
- gpioid=$(echo "$str"|cut -c 9)
- offset=$(echo "$str"|cut -d " " -f 2)
- gpioPin=$(("$offset" + ${AST2600_GPIO_BASE[$gpioid]}))
- gpio_configure_input "$gpioPin"
- fi
-}
diff --git a/meta-ampere/meta-mitchell/recipes-ampere/platform/ampere-utils.bbappend b/meta-ampere/meta-mitchell/recipes-ampere/platform/ampere-utils.bbappend
index 778ca985ba..7426c39c9e 100644
--- a/meta-ampere/meta-mitchell/recipes-ampere/platform/ampere-utils.bbappend
+++ b/meta-ampere/meta-mitchell/recipes-ampere/platform/ampere-utils.bbappend
@@ -7,9 +7,6 @@ SRC_URI:append = " \
file://ampere_firmware_upgrade.sh \
file://ampere_flash_bios.sh \
file://ampere_power_on_driver_binder.sh \
- file://ampere_firmware_version.sh \
- file://ampere_fanctrl.sh \
- file://ampere_scandump_mode.sh \
"
do_install:append() {
@@ -18,7 +15,4 @@ do_install:append() {
install -m 0755 ${WORKDIR}/ampere_firmware_upgrade.sh ${D}/${sbindir}/
install -m 0755 ${WORKDIR}/ampere_flash_bios.sh ${D}/${sbindir}/
install -m 0755 ${WORKDIR}/ampere_power_on_driver_binder.sh ${D}/${sbindir}/
- install -m 0755 ${WORKDIR}/ampere_firmware_version.sh ${D}/${sbindir}/
- install -m 0755 ${WORKDIR}/ampere_fanctrl.sh ${D}/${sbindir}/
- install -m 0755 ${WORKDIR}/ampere_scandump_mode.sh ${D}/${sbindir}/
}
diff --git a/meta-ampere/meta-mitchell/recipes-ampere/platform/ampere-utils/ampere_fanctrl.sh b/meta-ampere/meta-mitchell/recipes-ampere/platform/ampere-utils/ampere_fanctrl.sh
deleted file mode 100644
index 9dcc6d822e..0000000000
--- a/meta-ampere/meta-mitchell/recipes-ampere/platform/ampere-utils/ampere_fanctrl.sh
+++ /dev/null
@@ -1,168 +0,0 @@
-#!/bin/bash
-
-fanSensorService="xyz.openbmc_project.FanSensor"
-
-sensorPath="/xyz/openbmc_project/sensors/fan_tach/"
-pwmTargetPath="/xyz/openbmc_project/control/fanpwm/"
-
-sensorValueInterfaceName="xyz.openbmc_project.Sensor.Value"
-sensorValuePropertyName="Value"
-
-pwmTargetInterfaceName="xyz.openbmc_project.Control.FanPwm"
-pwmTargetPropertyName="Target"
-
-function stop_phosphor_fan_services() {
- systemctl stop phosphor-fan-control@0.service
- systemctl stop phosphor-fan-monitor@0.service
- systemctl stop phosphor-fan-presence-tach@0.service
-}
-
-function start_phosphor_fan_services() {
- systemctl start phosphor-fan-control@0.service
- systemctl start phosphor-fan-monitor@0.service
- systemctl start phosphor-fan-presence-tach@0.service
-}
-
-function read_speed() {
- fan_val=$(busctl get-property "$fanSensorService" "${sensorPath}$1" "$sensorValueInterfaceName" "$sensorValuePropertyName")
- busctl_error=$?
- if (( busctl_error != 0 )); then
- echo "Error: get-property $sensorValuePropertyName failed! "
- exit 1
- fi
-
- pwm_target=$(busctl get-property "$fanSensorService" "${pwmTargetPath}$2" "$pwmTargetInterfaceName" "$pwmTargetPropertyName")
- busctl_error=$?
- if (( busctl_error != 0 )); then
- echo "Error: get-property $pwmTargetPropertyName failed! "
- exit 1
- fi
-
- fan_val=$(echo "$fan_val" | cut -d " " -f 2)
- pwm_target=$(echo "$pwm_target" | cut -d " " -f 2)
-
- # Convert fan PWM to Duty cycle, adding 127 for rounding.
- pwm_duty_cyle=$(((("$pwm_target" * 100) + 127) / 255))
-
- echo "$1, PWM: $pwm_target, Duty cycle: $pwm_duty_cyle%, Speed(RPM): $fan_val"
-}
-
-function set_pwm() {
-
- # Convert Fan Duty cycle to PWM, adding 50 for rounding.
- fan_pwm=$(((($2 * 255) + 50) / 100))
-
- busctl set-property "$fanSensorService" "${pwmTargetPath}$1" "$pwmTargetInterfaceName" "$pwmTargetPropertyName" t "$fan_pwm"
- busctl_error=$?
- if (( busctl_error != 0 )); then
- echo "Error: set-property $pwmTargetPropertyName failed! "
- exit 255
- fi
-}
-
-function getstatus() {
- fan_ctl_stt=$(systemctl is-active phosphor-fan-control@0.service | grep inactive)
- fan_monitor_stt=$(systemctl is-active phosphor-fan-monitor@0.service | grep inactive)
- if [[ -z "$fan_ctl_stt" && -z "$fan_monitor_stt" ]]; then
- echo "Thermal Control operational status: Enabled"
- exit 0
- else
- echo "Thermal Control operational status: Disabled"
- exit 1
- fi
-}
-
-function setstatus() {
- if [ "$1" == 0 ]; then
- # Enable fan services
- start_phosphor_fan_services
- else
- # Disable fan services
- stop_phosphor_fan_services
- fi
-}
-
-function setspeed() {
- # Get fan_pwm value of the fan
- case "$1" in
- 0) fan_pwm=PWM7
- ;;
- 1) fan_pwm=PWM5
- ;;
- 2) fan_pwm=PWM4
- ;;
- 3) fan_pwm=PWM3
- ;;
- 4) fan_pwm=PWM1
- ;;
- 5) fan_pwm=PWM0
- ;;
- *) echo "fan $1 doesn't exit"
- exit 1
- ;;
- esac
-
- set_pwm "$fan_pwm" "$2"
- exit 0
-}
-
-function getspeed() {
-
- # Mapping fan number to fan_input and fan_pwm index
- case "$1" in
- 0) fan_input_f=FAN0_F
- fan_input_r=FAN0_R
- fan_pwm=PWM7
- ;;
- 1) fan_input_f=FAN1_F
- fan_input_r=FAN1_R
- fan_pwm=PWM5
- ;;
- 2) fan_input_f=FAN2_F
- fan_input_r=FAN2_R
- fan_pwm=PWM4
- ;;
- 3) fan_input_f=FAN3_F
- fan_input_r=FAN3_R
- fan_pwm=PWM3
- ;;
- 4) fan_input_f=FAN4_F
- fan_input_r=FAN4_R
- fan_pwm=PWM1
- ;;
- 5) fan_input_f=FAN5_F
- fan_input_r=FAN5_F
- fan_pwm=PWM0
- ;;
- *) echo "fan $1 doesn't exit"
- exit 1
- ;;
- esac
-
- # Get fan speed, each fan number has two values is front and rear
- read_speed "$fan_input_f" "$fan_pwm"
- read_speed "$fan_input_r" "$fan_pwm"
-
- exit 0
-}
-
-# Usage of this utility
-function usage() {
- echo "Usage:"
- echo " ampere_fanctrl.sh [getstatus] [setstatus <0|1>] [setspeed <fan> <duty>] [getspeed <fan>]"
- echo " fan: 0-5"
- echo " duty: 1-100"
-}
-
-if [ "$1" == "getstatus" ]; then
- getstatus
-elif [ "$1" == "setstatus" ]; then
- setstatus "$2"
-elif [ "$1" == "setspeed" ]; then
- stop_phosphor_fan_services
- setspeed "$2" "$3"
-elif [ "$1" == "getspeed" ]; then
- getspeed "$2"
-else
- usage
-fi
diff --git a/meta-ampere/meta-mitchell/recipes-ampere/platform/ampere-utils/ampere_firmware_upgrade.sh b/meta-ampere/meta-mitchell/recipes-ampere/platform/ampere-utils/ampere_firmware_upgrade.sh
index 9c187b158f..11ace16c80 100755
--- a/meta-ampere/meta-mitchell/recipes-ampere/platform/ampere-utils/ampere_firmware_upgrade.sh
+++ b/meta-ampere/meta-mitchell/recipes-ampere/platform/ampere-utils/ampere_firmware_upgrade.sh
@@ -115,7 +115,7 @@ do_mb_cpld_flash() {
gpioset $(gpiofind hpm-fw-recovery)=1
gpioset $(gpiofind jtag-program-sel)=1
sleep 2
- ampere_cpldupdate_jtag -t 1 -p "$MB_CPLD_IMAGE"
+ ampere_cpldupdate_jtag -p "$MB_CPLD_IMAGE"
gpioset $(gpiofind hpm-fw-recovery)=0
echo "Done"
}
@@ -125,7 +125,7 @@ do_bmc_cpld_flash() {
echo "Flashing BMC CPLD"
gpioset $(gpiofind jtag-program-sel)=0
sleep 2
- ampere_cpldupdate_jtag -t 1 -p "$BMC_CPLD_IMAGE"
+ ampere_cpldupdate_jtag -p "$BMC_CPLD_IMAGE"
echo "Done"
}
@@ -134,19 +134,19 @@ do_bp_cpld_flash() {
BP_TARGET=$2
if [[ $BP_TARGET == 1 ]]; then
echo "Flashing Front Backplane 1 CPLD"
- ampere_cpldupdate_i2c -b 101 -s 0x40 -t 3 -p "$BP_CPLD_IMAGE"
+ ampere_cpldupdate_i2c -b 101 -s 0x40 -p "$BP_CPLD_IMAGE"
elif [[ $BP_TARGET == 2 ]]; then
echo "Flashing Front Backplane 2 CPLD"
- ampere_cpldupdate_i2c -b 102 -s 0x40 -t 3 -p "$BP_CPLD_IMAGE"
+ ampere_cpldupdate_i2c -b 102 -s 0x40 -p "$BP_CPLD_IMAGE"
elif [[ $BP_TARGET == 3 ]]; then
echo "Flashing Front Backplane 3 CPLD"
- ampere_cpldupdate_i2c -b 100 -s 0x40 -t 3 -p "$BP_CPLD_IMAGE"
+ ampere_cpldupdate_i2c -b 100 -s 0x40 -p "$BP_CPLD_IMAGE"
elif [[ $BP_TARGET == 4 ]]; then
echo "Flashing Rear Backplane 1 CPLD"
- ampere_cpldupdate_i2c -b 103 -s 0x40 -t 3 -p "$BP_CPLD_IMAGE"
+ ampere_cpldupdate_i2c -b 103 -s 0x40 -p "$BP_CPLD_IMAGE"
elif [[ $BP_TARGET == 5 ]]; then
echo "Flashing Rear Backplane 2 CPLD"
- ampere_cpldupdate_i2c -b 104 -s 0x40 -t 3 -p "$BP_CPLD_IMAGE"
+ ampere_cpldupdate_i2c -b 104 -s 0x40 -p "$BP_CPLD_IMAGE"
fi
echo "Done"
diff --git a/meta-ampere/meta-mitchell/recipes-ampere/platform/ampere-utils/ampere_firmware_version.sh b/meta-ampere/meta-mitchell/recipes-ampere/platform/ampere-utils/ampere_firmware_version.sh
deleted file mode 100755
index adb9869242..0000000000
--- a/meta-ampere/meta-mitchell/recipes-ampere/platform/ampere-utils/ampere_firmware_version.sh
+++ /dev/null
@@ -1,99 +0,0 @@
-#!/bin/bash
-
-# Helper script to report firmware version for components on the system (MB CPLD, Backplane CPLD, …)
-# Author : Hieu Huynh (hieu.huynh@amperecomputing.com)
-#
-# Get MB CPLD firmware revision:
-# ampere_firmware_version.sh mb_cpld
-#
-# Get BMC CPLD firmware revision:
-# ampere_firmware_version.sh bmc_cpld
-#
-# Get Backplane CPLD firmware revision:
-# ampere_firmware_version.sh bp_cpld <id>
-# <id>: 1 for Front Backplane 1
-# 2 for Front Backplane 2
-# 3 for Front Backplane 3
-# 4 for Rear Backplane 1
-# 5 for Rear Backplane 2
-
-# shellcheck disable=SC2046
-
-do_mb_cpld_firmware_report() {
- echo "MB CPLD"
- gpioset $(gpiofind hpm-fw-recovery)=1
- gpioset $(gpiofind jtag-program-sel)=1
- sleep 1
- ampere_cpldupdate_jtag -v
- ampere_cpldupdate_jtag -i
-}
-
-do_bmc_cpld_firmware_report() {
- echo "BMC CPLD (Only for DC-SCM board)"
- gpioset $(gpiofind jtag-program-sel)=0
- sleep 1
- ampere_cpldupdate_jtag -v
- ampere_cpldupdate_jtag -i
-}
-
-do_bp_cpld_firmware_report() {
- BP_ID=$1
- if [[ $BP_ID == 1 ]]; then
- echo "Front Backplane 1 CPLD"
- ampere_cpldupdate_i2c -b 101 -s 0x40 -t 3 -v
- ampere_cpldupdate_i2c -b 101 -s 0x40 -t 3 -i
- elif [[ $BP_ID == 2 ]]; then
- echo "Front Backplane 2 CPLD"
- ampere_cpldupdate_i2c -b 102 -s 0x40 -t 3 -v
- ampere_cpldupdate_i2c -b 102 -s 0x40 -t 3 -i
- elif [[ $BP_ID == 3 ]]; then
- echo "Front Backplane 3 CPLD"
- ampere_cpldupdate_i2c -b 100 -s 0x40 -t 3 -v
- ampere_cpldupdate_i2c -b 100 -s 0x40 -t 3 -i
- elif [[ $BP_ID == 4 ]]; then
- echo "Rear Backplane 1 CPLD"
- ampere_cpldupdate_i2c -b 103 -s 0x40 -t 3 -v
- ampere_cpldupdate_i2c -b 103 -s 0x40 -t 3 -i
- elif [[ $BP_ID == 5 ]]; then
- echo "Rear Backplane 2 CPLD"
- ampere_cpldupdate_i2c -b 104 -s 0x40 -t 3 -v
- ampere_cpldupdate_i2c -b 104 -s 0x40 -t 3 -i
- fi
-}
-
-if [ $# -eq 0 ]; then
- echo "Usage:"
- echo " - Get MB CPLD firmware revision"
- echo " $(basename "$0") mb_cpld"
- echo " - Get BMC CPLD firmware revision"
- echo " $(basename "$0") bmc_cpld"
- echo " - Get Backplane CPLD firmware revision"
- echo " $(basename "$0") bp_cpld <id>"
- echo " <id>:"
- echo " 1 - FrontBP1"
- echo " 2 - FrontBP2"
- echo " 3 - FrontBP3"
- echo " 4 - RearBP1"
- echo " 5 - RearBP2"
- exit 0
-fi
-
-TYPE=$1
-ID=$2
-
-if [[ $TYPE == "mb_cpld" ]]; then
- do_mb_cpld_firmware_report
-elif [[ $TYPE == "bmc_cpld" ]]; then
- do_bmc_cpld_firmware_report
-elif [[ $TYPE == "bp_cpld" ]]; then
- if [ -z "$ID" ]; then
- echo "Please choose backplanes id: 1 - FrontBP1, 2 - FrontBP2, 3 - FrontBP3, 4 - FrontBP4, 5 - FrontBP5"
- exit 0
- elif [[ "$ID" -ge "1" ]] && [[ "$ID" -le "5" ]]; then
- do_bp_cpld_firmware_report "$ID"
- else
- echo "Backplanes id invalid"
- fi
-fi
-
-exit 0
diff --git a/meta-ampere/meta-mitchell/recipes-ampere/platform/ampere-utils/ampere_scandump_mode.sh b/meta-ampere/meta-mitchell/recipes-ampere/platform/ampere-utils/ampere_scandump_mode.sh
deleted file mode 100755
index f08c9686bd..0000000000
--- a/meta-ampere/meta-mitchell/recipes-ampere/platform/ampere-utils/ampere_scandump_mode.sh
+++ /dev/null
@@ -1,94 +0,0 @@
-#!/bin/bash
-
-# Helper script to support enable/disable Scandump Mode
-# Author : Hieu Huynh (hieu.huynh@amperecomputing.com)
-#
-# To enable Scandump mode:
-# ampere_scandump_mode.sh enable
-#
-# To disable Scandump mode:
-# ampere_scandump_mode.sh disable
-#
-# To get Scandump mode status:
-# ampere_scandump_mode.sh getstatus
-
-enable_scandump_mode() {
- echo "Enable Scandump mode"
- # Disable Mpro hang detection
- systemctl stop ampere-sysfw-hang-handler.service
-
- # Disable PLDM service
- systemctl stop pldmd.service
-
- # Enable scandump mode in CPLD
- # Get Port0 value
- p0_val=$(i2cget -f -y 15 0x22 0x02)
- p0_val=$(("$p0_val" | (1 << 4)))
- # Set Port0[4] value to "1" to mask all CPU’s GPIOs, set Port0[4].
- i2cset -f -y 15 0x22 0x02 $p0_val
-
- p0_IOexp_val=$(i2cget -f -y 15 0x22 0x06)
- p0_IOexp_val=$(("$p0_IOexp_val" & ~(1 << 4)))
- # Config CPLD's IOepx Port0[4] from input to output, clear IOepx Port0[4].
- i2cset -f -y 15 0x22 0x06 $p0_IOexp_val
-}
-
-diable_scandump_mode() {
- echo "Disable Scandump mode"
-
- # Disable scandump mode in CPLD
- # Get Port0 value
- p0_val=$(i2cget -f -y 15 0x22 0x02)
- p0_val=$(("$p0_val" & ~(1 << 4)))
- # Set Port0[4] value to "0" to unmask all CPU’s GPIOs, clear Port0[4].
- i2cset -f -y 15 0x22 0x02 $p0_val
-
- p0_IOexp_val=$(i2cget -f -y 15 0x22 0x06)
- p0_IOexp_val=$(("$p0_IOexp_val" | (1 << 4)))
- # Config CPLD's IOepx Port0[4] from output to input, set IOepx Port0[4].
- i2cset -f -y 15 0x22 0x06 $p0_IOexp_val
-
- # Enable Mpro hang detection
- systemctl start ampere-sysfw-hang-handler.service
-
- # Enable PLDM service
- systemctl start pldmd.service
-}
-
-getstatus() {
- # Get CPLD's IOepx Port0[4], if this bit is "0" scandump mode is enabled.
- p0_IOexp_val=$(i2cget -f -y 15 0x22 0x06)
- p0_IOexp_val=$(("$p0_IOexp_val" & (1 << 4)))
- if [[ "$p0_IOexp_val" == "0" ]]; then
- echo "Scandump mode is enabled"
- exit 1
- else
- echo "Scandump mode is disabled"
- exit 0
- fi
-}
-
-# Usage of this utility
-usage() {
- echo "Usage:"
- echo " - To enable Scandump mode"
- echo " $(basename "$0") enable"
- echo " - To disable Scandump mode"
- echo " $(basename "$0") disable"
- echo " - To get Scandump mode status"
- echo " $(basename "$0") getstatus"
- exit 0
-}
-
-if [[ $1 == "enable" ]]; then
- enable_scandump_mode
-elif [[ $1 == "disable" ]]; then
- diable_scandump_mode
-elif [[ $1 == "getstatus" ]]; then
- getstatus
-else
- echo "Invalid mode"
- usage
-fi
-
-exit 0