On Tue, Oct 10, 2023 at 02:55:31PM +0200, Oleksij Rempel wrote: > The hardware I am working with has an under-voltage sensor on the 24V > supply regulator and some backup capacitors to run SoC for 100ms. I want > to forward under-voltage events across a chain of different regulators > to a designated consumer. For instance, to the mmc driver, enabling it > to initiate shutdown before power loss occurs. Additionally, a bit can > be set in the volatile memory of a scratch pad in an RTC clock to record > sudden power loss, which can be checked on the next system start. So it sounds like the underlying need is to flag the notifications from one of the regulators as being system wide and then take action based on those notifications somewhere basically disconnected? That does seem like a good use case. The MMC doesn't specifically care that it is handling a regulator notification, it more wants to know that the system is dying and doesn't really care how we figured that out so if we can hook it into a system level notificaiton it'd be happy and would also be able to handle other critical faults. I would have thought that we should have some mechanisms for this already for RAS type stuff but I'm drawing a blank on what it actually is if there is an existing abstraction. It could potentially go through userspace though there's latency concerns there which might not be ideal, there should at least be some policy for userspace. For the regulator itself we probably want a way to identify regulators as being system critical so they start notifying. It would be tempting to just do that by default but that would likely cause some issues for example with regulators for things like SD cards which are more likely to get hardware problems that don't comprimise the entire system. We could do that with DT, either a property or some sort of runtime consumer, but it might be better to have a control in sysfs that userspace can turn on? OTOH the ability do something about this depends on specific hardware design... I've copied in Sebastian since this sounds like the sort of thing that power supplies might have some kind of handling for, or at least if we need to add something we should make it so that the power supplies can be joined up to it. I do see temperature and capacity alerts in the sysfs ABI for power supplies, but nothing for voltage. I've also coped in Naresh and Zev who've been discussing something vaugely similar with userspace notifications for the userspace consumer - it's not the same thing given that you don't specifically need userspace to be involved here but it feels like it might have something of a similar shape, or at least there might be some shared interest.
Attachment:
signature.asc
Description: PGP signature