lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite for Android: free password hash cracker in your pocket
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:   Wed, 4 Oct 2023 00:09:52 +0200
From:   Maximilian Luz <luzmaximilian@...il.com>
To:     Tony Lindgren <tony@...mide.com>
Cc:     Greg Kroah-Hartman <gregkh@...uxfoundation.org>,
        Jiri Slaby <jirislaby@...nel.org>,
        Andy Shevchenko <andriy.shevchenko@...el.com>,
        Dhruva Gole <d-gole@...com>,
        Ilpo Järvinen <ilpo.jarvinen@...ux.intel.com>,
        John Ogness <john.ogness@...utronix.de>,
        Johan Hovold <johan@...nel.org>,
        Sebastian Andrzej Siewior <bigeasy@...utronix.de>,
        Vignesh Raghavendra <vigneshr@...com>,
        linux-omap@...r.kernel.org,
        Andy Shevchenko <andriy.shevchenko@...ux.intel.com>,
        linux-kernel@...r.kernel.org, linux-serial@...r.kernel.org
Subject: Re: [PATCH v12 1/1] serial: core: Start managing serial controllers
 to enable runtime PM

On 10/3/23 14:21, Tony Lindgren wrote:
> * Tony Lindgren <tony@...mide.com> [231003 12:15]:
>> Hi,
>>
>> * Maximilian Luz <luzmaximilian@...il.com> [231003 11:57]:
>>> A bad workaround is to disable runtime PM, e.g. via
>>>
>>>    echo on > /sys/bus/serial-base/devices/dw-apb-uart.4:0/dw-apb-uart.4:0.0/power/control
>>
>> If the touchscreen controller driver(s) are using serdev they are
>> children of the dw-apb-uart.4:0.0 and can use runtime PM calls to
>> block the parent device from idling as necessary. The hierarchy
>> unless changed using ignore_children.
> 
> Sorry about all the typos, I meant "the hierarchy works unless changed"
> above. The rest of the typos are easier to decipher probably :)

Unfortunately that doesn't quite line up with what I can see on v6.5.5. The
serdev controller seems to be a child of dw-apb-uart.4, a platform device. The
serial-base and serdev devices are siblings. According to sysfs:

     /sys/bus/platform/devices/dw-apb-uart.4
     ├── driver -> ../../../../bus/platform/drivers/dw-apb-uart
     ├── subsystem -> ../../../../bus/platform
     │
     ├── dw-apb-uart.4:0
     │  ├── driver -> ../../../../../bus/serial-base/drivers/ctrl
     │  ├── subsystem -> ../../../../../bus/serial-base
     │  │
     │  └── dw-apb-uart.4:0.0
     │     ├── driver -> ../../../../../../bus/serial-base/drivers/port
     │     └── subsystem -> ../../../../../../bus/serial-base
     │
     └── serial0
        ├── subsystem -> ../../../../../bus/serial
        │
        └── serial0-0
           ├── driver -> ../../../../../../bus/serial/drivers/surface_serial_hub
           └── subsystem -> ../../../../../../bus/serial

Runtime suspend on serial0-0 is disabled/not set up at all. So I assume that if
it were a descendent of dw-apb-uart.4:0.0, things should have worked
out-of-the-box.

Regards,
Max

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ