diff mbox series

Input: synaptics-rmi4 - Fix device hierarchy

Message ID 1635514971-18415-1-git-send-email-loic.poulain@linaro.org (mailing list archive)
State Mainlined
Commit 6e4860410b828f8576c0c003d412fcf8a7d433f9
Headers show
Series Input: synaptics-rmi4 - Fix device hierarchy | expand

Commit Message

Loic Poulain Oct. 29, 2021, 1:42 p.m. UTC
The created rmi device is orphan, which breaks the real device
hierarchy, and can cause some trouble, especially during suspend
and resume sequences. E.g. in case of I2C, rmi dev should be child
of the I2C client device.

Fix this, assigning the transport device as parent of the rmi device.

Signed-off-by: Loic Poulain <loic.poulain@linaro.org>
---
 drivers/input/rmi4/rmi_bus.c | 1 +
 1 file changed, 1 insertion(+)

Comments

Dmitry Torokhov Nov. 6, 2021, 2:46 a.m. UTC | #1
On Fri, Oct 29, 2021 at 03:42:51PM +0200, Loic Poulain wrote:
> The created rmi device is orphan, which breaks the real device
> hierarchy, and can cause some trouble, especially during suspend
> and resume sequences. E.g. in case of I2C, rmi dev should be child
> of the I2C client device.
> 
> Fix this, assigning the transport device as parent of the rmi device.
> 
> Signed-off-by: Loic Poulain <loic.poulain@linaro.org>

Applied, thank you.
diff mbox series

Patch

diff --git a/drivers/input/rmi4/rmi_bus.c b/drivers/input/rmi4/rmi_bus.c
index af706a58..a16c1dd 100644
--- a/drivers/input/rmi4/rmi_bus.c
+++ b/drivers/input/rmi4/rmi_bus.c
@@ -90,6 +90,7 @@  int rmi_register_transport_device(struct rmi_transport_dev *xport)
 
 	rmi_dev->dev.bus = &rmi_bus_type;
 	rmi_dev->dev.type = &rmi_device_type;
+	rmi_dev->dev.parent = xport->dev;
 
 	xport->rmi_dev = rmi_dev;