Make sure to drop the OF node reference taken when creating the aux
bridge device when the device is later released.

Fixes: 6914968a0b52 ("drm/bridge: properly refcount DT nodes in aux bridge 
drivers")
Cc: Dmitry Baryshkov <[email protected]>
Signed-off-by: Johan Hovold <[email protected]>
---
 drivers/gpu/drm/bridge/aux-bridge.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/drivers/gpu/drm/bridge/aux-bridge.c 
b/drivers/gpu/drm/bridge/aux-bridge.c
index c179b86d208f..6642ac6819a0 100644
--- a/drivers/gpu/drm/bridge/aux-bridge.c
+++ b/drivers/gpu/drm/bridge/aux-bridge.c
@@ -17,6 +17,7 @@ static void drm_aux_bridge_release(struct device *dev)
 {
        struct auxiliary_device *adev = to_auxiliary_dev(dev);
 
+       of_node_put(dev->of_node);
        ida_free(&drm_aux_bridge_ida, adev->id);
 
        kfree(adev);
@@ -64,6 +65,7 @@ int drm_aux_bridge_register(struct device *parent)
 
        ret = auxiliary_device_init(adev);
        if (ret) {
+               of_node_put(adev->dev.of_node);
                ida_free(&drm_aux_bridge_ida, adev->id);
                kfree(adev);
                return ret;
-- 
2.49.0

Reply via email to