system power control

Zhao Kun zkxz at
Fri Aug 7 16:43:42 AEST 2020


I’m new to learn how to make OpenBMC work on a X86 based system. Currently I met a problem of mapping the GPIOs about power on/off/reset/status into OpenBMC logic. I understand when user issue a power on request through any user interfaces like RESTful, IPMI, etc., some service (phosphor-state-manager?) will be triggered to check current status and roll out corresponding systemd services to do the job. (please correct me if I’m wrong)

But I’m just confused on how those services actually toggle or check the GPIOs, there seems be many choices,

  1.  Device tree?
  2.  Using Workbook gpio_defs.json?
  3.  Create some services calling platform specific scripts to operate GPIO or I2C devices?
  4.  Using x86-power-control?

So what’s the most recommended way to do it? Really appreciated If anyone can share some lights.

I thought there must be a mechanism to consume some kind of configuration file as the hardware abstraction layer. So I guess it might be gpio_defs.json or device tree.


Best regards,

Kun Zhao
  zkxz at<mailto:zkxz at>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <>

More information about the openbmc mailing list