Initial commit

This commit is contained in:
Your Name
2026-04-23 17:07:55 +08:00
commit b7e39e063b
16725 changed files with 1625565 additions and 0 deletions
@@ -0,0 +1,15 @@
[Unit]
Description=Check Host%i status after bmc reboot
After=obmc-host-reset@%i.target
After=obmc-host-reset-running@%i.target
After=mapper-wait@-xyz-openbmc_project-state-host%i.service
OnSuccess=obmc-host-already-on@%i.target
ConditionPathExists=/run/openbmc/chassis@%i-on
ConditionPathExists=/run/openbmc/host@%i-on
Conflicts=obmc-chassis-poweroff@%i.target
[Service]
Type=oneshot
ExecStart=/bin/sh -c "if [ $(busctl get-property `mapper get-service /xyz/openbmc_project/state/host0` /xyz/openbmc_project/state/host0 xyz.openbmc_project.State.Host CurrentHostState | grep -i '\.Running' | wc -l) != 0 ]; then exit 0; fi"
@@ -0,0 +1,14 @@
[Unit]
Description=Ampere Computing LLC force reset host%i
Wants=phosphor-reboot-host@%i.service
Conflicts=obmc-chassis-poweroff@%i.target
OnFailure=obmc-chassis-powerreset@%i.target
[Service]
RemainAfterExit=no
Type=oneshot
ExecStart=/bin/sh -c "sleep 3 && /usr/bin/env ampere_power_util.sh mb force_reset"
SyslogIdentifier=ampere_power_util.sh
[Install]
WantedBy=obmc-host-force-warm-reboot@%i.target
@@ -0,0 +1,13 @@
[Unit]
Description=Check Host%i status before obmc-host-startmin
After=obmc-host-started@%i.target
After=obmc-power-start-pre@%i.target
Conflicts=obmc-host-stop@%i.target
Conflicts=phosphor-reset-host-check@%i.service
OnFailure=obmc-host-quiesce@%i.target
OnSuccess=obmc-host-already-on@%i.target
OnFailureJobMode=flush
[Service]
Type=oneshot
ExecStart=/usr/sbin/ampere_host_check.sh
@@ -0,0 +1,30 @@
#!/bin/bash
# Check current Host status. Do nothing when the Host is currently ON
st=$(busctl get-property xyz.openbmc_project.State.Host \
/xyz/openbmc_project/state/host0 xyz.openbmc_project.State.Host \
CurrentHostState | cut -d"." -f6)
if [ "$st" == "Running\"" ]; then
exit 0
fi
# Time out checking for Host ON is 60s
cnt=60
while [ "$cnt" -gt 0 ];
do
cnt=$((cnt - 1))
st=$(busctl call xyz.openbmc_project.State.HostCondition.Gpio \
/xyz/openbmc_project/Gpios/host0 org.freedesktop.DBus.Properties \
Get ss xyz.openbmc_project.Condition.HostFirmware \
CurrentFirmwareCondition | cut -d"." -f6)
if [ "$st" == "Running\"" ]; then
if command -v ampere_driver_binder.sh;
then
ampere_driver_binder.sh
fi
exit 0
fi
sleep 1
done
exit 1
@@ -0,0 +1,6 @@
[Unit]
Description=Ampere Host %i already on target
Conflicts=obmc-chassis-poweroff@%i.target
Conflicts=obmc-host-quiesce@%i.target
Conflicts=ampere-host-force-reset@%i.service
Conflicts=ampere-host-shutdown-ack@%i.service
@@ -0,0 +1,5 @@
[Unit]
Description=Ampere power %i already on target
After=phosphor-wait-power-on@%i.service
Conflicts=obmc-chassis-poweroff@%i.target
Conflicts=ampere-host-shutdown-ack@%i.service