What is the reference of U19? I do not find any information about this chip in the documentation, and its marking is only “52A5”.
Looking at the schematic, it is clearly a chip controlling PWR_EN and PWR_LED according to the various standby and wake-up control signals. It could be a small microcontroller, or a dedicated chip similar to the SRC0, the STM660x, or the LTC2953. It would be interesting to have its datasheet to know exactly how it may react to its inputs, even though there does not seem to be anything fancy with it (simple on/off without button long push to force power off).
Is PWR_EN only an output of U19 that can be used as a power supply enable signal by hats through J9, or can it also be an input of U19 in some contexts, e.g. in power-off mode to trigger the power-on of the VIM from a button on a hat?
I don’t see how U19 could be used for hardware encryption with the signals connected to it, unless PWR_KEY becomes a 1-wire link at boot to transmit an encryption key to the S905X through PWR_KEY_DET or something like that. Or maybe you are referring to the same MCU on other boards (OEM/ODM as you say).
Yes, you are right, I didn’t do the correct description.
For U19, the PWR_EN is an output pin only, but PWR_EN is a control signal for whole system power, it means that you can just ignore the U19 state and pull-up PWR_EN forcibly to power-on the VIM device when in power off mode, I’ve tested here and it works.
Yes, can do hardware communication via PWR_KEY_DET.
Yes, this works, but this may also destroy the P61 pad of U19 on the long term, depending on how this pad is configured internally to disable the power:
If this pad is configured as a push-pull output set low inside U19, then forcibly setting it high from J9 could destroy it, which is an issue to continue using U19 to wake up the board from the RTC alarm, from the IR sensor, or from the power key.
If this pad is set as an input pulled low inside U19 (thanks to an internal MOSFET acting like a resistor), then it is safe to forcibly set PWR_EN high from J9.
Which of these two cases is the one corresponding to the behavior of U19?
You are quite professional!
I’ve confirmed with our hardware engineer, forcibly setting PWR_EN as high might destroy the P61 of U19, so it’s not recommended to do it like what I said above.
We might need to optimize the design at next PCB version. Thanks for all the comments!