diff options
| author | Sanjay Chitroda <sanjayembeddedse@gmail.com> | 2026-07-02 21:48:02 +0530 |
|---|---|---|
| committer | Jonathan Cameron <jic23@kernel.org> | 2026-07-02 18:26:39 +0100 |
| commit | d9290c908d6f31bcdf79c1fec9b7287cf65df19b (patch) | |
| tree | 718f3135f63a8d95fc61d26731cf71be971eb267 | |
| parent | cff496bda5128dd9cf7a38fc2933440ee58b8ad1 (diff) | |
| download | linux-d9290c908d6f31bcdf79c1fec9b7287cf65df19b.tar.gz linux-d9290c908d6f31bcdf79c1fec9b7287cf65df19b.zip | |
iio: position: hid-sensor-custom-intel-hinge: use common device for devres
kmemdup() is used for memory that is logically tied to the HID
platform device, even though the driver binds into the IIO framework.
Using &indio_dev->dev for devres allocations works functionally, but it
results in two separate devres ownership trees—one for the HID
platform device (pdev) and another for the IIO device (indio_dev).
The devres framework is intended to have a single, well-defined parent
device. Since the memory originates from HID sensor probing and is not
IIO-specific, &pdev->dev is the correct and logical owner.
Switch to using the platform device for devm_kmemdup() so that all
resources are released deterministically and consistently.
Signed-off-by: Sanjay Chitroda <sanjayembeddedse@gmail.com>
Reviewed-by: Maxwell Doose <m32285159@gmail.com>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
| -rw-r--r-- | drivers/iio/position/hid-sensor-custom-intel-hinge.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/iio/position/hid-sensor-custom-intel-hinge.c b/drivers/iio/position/hid-sensor-custom-intel-hinge.c index 2139ddb670c4..7d3f4907e083 100644 --- a/drivers/iio/position/hid-sensor-custom-intel-hinge.c +++ b/drivers/iio/position/hid-sensor-custom-intel-hinge.c @@ -292,7 +292,7 @@ static int hid_hinge_probe(struct platform_device *pdev) } indio_dev->num_channels = ARRAY_SIZE(hinge_channels); - indio_dev->channels = devm_kmemdup(&indio_dev->dev, hinge_channels, + indio_dev->channels = devm_kmemdup(&pdev->dev, hinge_channels, sizeof(hinge_channels), GFP_KERNEL); if (!indio_dev->channels) return -ENOMEM; |
