Hi Adam, On 19-12-02 12:15, Adam Thomson wrote: > On 27 November 2019 13:23, Marco Felsch wrote: > > > There was a bug within the driver since commit f889beaaab1c ("Input: > > da9063 - report KEY_POWER instead of KEY_SLEEP during power > > key-press"). Since we fixed the bug the KEY_POWER will be reported > > always so we need to adapt the dt-bindings too. Make the description > > more precise while on it. > > > > Signed-off-by: Marco Felsch <m.felsch@xxxxxxxxxxxxxx> > > --- > > v2: > > - change description according Dmitry's suggestion. > > > > Documentation/devicetree/bindings/input/da9062-onkey.txt | 5 ++--- > > 1 file changed, 2 insertions(+), 3 deletions(-) > > > > diff --git a/Documentation/devicetree/bindings/input/da9062-onkey.txt > > b/Documentation/devicetree/bindings/input/da9062-onkey.txt > > index 0005b2bdcdd7..9f895454179d 100644 > > --- a/Documentation/devicetree/bindings/input/da9062-onkey.txt > > +++ b/Documentation/devicetree/bindings/input/da9062-onkey.txt > > @@ -15,9 +15,8 @@ Required properties: > > > > Optional properties: > > > > -- dlg,disable-key-power : Disable power-down using a long key-press. If this > > - entry exists the OnKey driver will remove support for the KEY_POWER key > > - press when triggered using a long press of the OnKey. > > +- dlg,disable-key-power : If this property is present, the host will not be > > + issuing shutdown command over I2C in response to a long key-press. > > This also changes behaviour of button press reporting as the driver will not > report a longer press (i.e. a button hold where the driver polls for release). > It will only report a short key press to user-space with this property provided. > > The question here is do we still want to support long press reporting but > without the I2C sequence for shutdown? If so the driver needs to be updated to > work this way as right now it doesn't. Good point. I checked the driver and the documentation for the da9062/3 again and it seems that we interrupt the pmic hw by doing the shutdown by itself. As the documentation says: DA9063: If the hardware reset was initiated by a (debounced) press of nONKEY (or GPIO14 and GPIO15 together) longer than SD_DELAY, the DA9063 initially only asserts control bit KEY_RESET in the fault register and signals a non-maskable interrupt allowing the host to clear the armed reset sequence within 1 s. If the host does not clear KEY_RESET then a shutdown to RESET mode is executed. KEY_SD_MODE determines if normal power sequence timing or a fast shutdown is implemented. DA9062: If the reset was initiated by a user’s long press of nONKEY, initially only KEY_RESET is set and the nIRQ port will be asserted. KEY_RESET signals the host that a shutdown sequence is started. If the host does not then clear KEY_RESET within 1 s by writing a 1 to the related bit in register FAULT_LOG, the shutdown sequence will complete. When the reset condition has disappeared, DA9062 requires a supply (VSYS > VDD_FAULT_UPPER) that provides enough power to start-up from the POWERDOWN mode. So we don't need to check for the KEY_RESET? This would cleanup the code a bit. Regards, Marco > > > > - dlg,key-opmode : Set the nONKEY behaviour. This value is initial set by the > > otp values. See nONKEY_PIN register description for more information. > > -- > > 2.20.1 > > -- Pengutronix e.K. | | Steuerwalder Str. 21 | http://www.pengutronix.de/ | 31137 Hildesheim, Germany | Phone: +49-5121-206917-0 | Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 |