On 11/4/21 10:55, François Ozog wrote:
Hi Heinrich,

On Thu, 4 Nov 2021 at 10:31, Heinrich Schuchardt <heinrich.schucha...@canonical.com <mailto:heinrich.schucha...@canonical.com>> wrote:

    The watchdog system reset driver can reboot the device but it cannot
    power
    it off. If power off is requested, the driver should not reset the
    system
    but leave powering off to one of the other system reset drivers.

    As power cycling is typically not a feature of a watchdog driver the
    reset
    types SYSRESET_POWER and SYSRESET_POWER_OFF shall both be excluded.

A candid question here. I know that IPMI can powercycle a platform.
How would we handle that should there be a way to make the power cycle happen? (for instance we could define a PSCI extension of SYSTEM_RESET2 to have a power cycle effect)

Your comment seems not to relate to the validity of the current patch.

For PSCI we have a separate sysreset driver drivers/sysreset/sysreset_psci.c. That driver currently does not support SYSRESET_POWER.

Once such an extension is offered by PSCI you should define a device-tree node property for it in Linux' Documentation/devicetree/bindings/arm/psci.yaml. Next implement a probe function in the driver code to detect that property. In psci_sysreset_request(), if type=SYSRESET_POWER, call the appropriate PSCI method if the extension is enabled or return -ENOSYS if the extension is not available.

Currently in U-Boot I see no code invoking a reset with SYSRESET_POWER. You would have to change function do_reset() in drivers/sysreset/sysreset-uclass.c to accept a new argument to select this reset type.

Best regards

Heinrich

Reply via email to