summaryrefslogtreecommitdiff
path: root/meta-ampere/meta-common/recipes-ac01/host/ampere-hostctrl
AgeCommit message (Collapse)AuthorFilesLines
2021-08-04meta-ampere: power control: refactor host power controlThuBaNguyen7-49/+22
Refactor the Mt.Jade Host power control operations to support Altra CPU following the Altra SoC BMC Interface specification which still satisfying the OpenBMC power control framework. Tested: check the below cases and ensure Host state report correctly: 1. Run "reboot" from Host Linux. Check the Host is graceful shutdown, then SYS_RESET is asserted and the Host is booted. 2. Run "shutdown" from Host Linux. Check the Host is graceful shutdown then the chassis power is turned OFF. 3. Run "ipmitool chassis power soft". Check the Host is graceful shutdown 4. Execute Redfish GracefulShutdown. Check the Host is graceful shutdown then the chassis power is turned OFF. 5. Execute Redfish GracefulRestart. Check the Host is graceful shutdown then turned ON. 6. Check other IPMI chassis power and Redfish Reset actions work. Signed-off-by: ThuBaNguyen <thu@os.amperecomputing.com> Change-Id: I3a9716f37d7e80bdc1a1d0422e561c8fc51ad040
2021-08-04meta-ampere: power control: refactor power soft/off functionsThuBaNguyen2-21/+0
The current ampere-hostctl package removes the power off/on services of phosphor-state-manager and uses Ampere services. This solution is not correct. Ampere platform should use power control functions of phosphor-state-manager. And only appends or overides the default services by Ampere's services if need. By default, to handle power soft action, phosphor-state-manager will trigger obmc-host-shutdown@0.target. This target then call xyz.openbmc_project.Ipmi.Internal.SoftPowerOff.service to request OS shutdown. When the host OS shutdown is already done, the target will trigger obmc-chassis-poweroff@0.target to turn off the chassis. The default xyz.openbmc_project.Ipmi.Internal.SoftPowerOff.service uses Ipmi inband to communicate with the host. It is different with Ampere Mt.Jade platform. We use the GPIO pin SHD_REQ to request shutdown the host OS. The host will trigger SHD_ACK when shutdown is done. So *.Ipmi.Internal.SoftPowerOff.service will be overide by Ampere service named ampere.*.Ipmi.Internal.SoftPowerOff.service. This service will trigger SHD_REQ pin and wait for SHD_ACK before start obmc-chassis-poweroff@0.target. This commit removes ampere-chassis-poweroff, ampere-host-shutdown serives which handle power off/soft actions and restore phosphor-state-manager's services. It also supports ampere.xyz.openbmc_project.Ipmi.Internal.SoftPowerOff.service which will overide xyz.openbmc_project.Ipmi.Internal.SoftPowerOff.service. Tested: 1. Create "power soft" actions use ipmitool, redfish and BMC web. 2. Make sure the power order will be shutdown the host then power of the chassis. 3. Create "power off" actions use ipmitool, redfish and BMC web. 4. Make sure the power action will be power off the chassis. Signed-off-by: ThuBaNguyen <thu@os.amperecomputing.com> Change-Id: Ibc0dc8c62408e8282520c9b70e41ab75c10137f6
2021-02-01meta-ampere: Support Ampere power controlTung Nguyen7-0/+70
Implement the Ampere power control requirements for Altra system. Tested: - Check the ipmi commands: ipmi power on/off/soft/reset/cycle - Check the redfish commands: On, Off, ForceOn, ForceOff, GracefulShutdown, GracefulRestart, ForceRestart, PowerCycle Signed-off-by: Tung Nguyen <tungnguyen@os.amperecomputing.com> Change-Id: Id0c64c1284a6338ce47ca720d0ef75e99d21aa3c