On Thu, Sep 15, 2022 at 10:54:00AM +0800, Liang He wrote: > In anx7411_typec_switch_probe(), we should call of_node_get() before > of_find_node_by_name() which will automatically decrease the 'from' > argument. Just use of_get_child_by_name() instead of of_find_node_by_name(). If you don't need recursion, then there is no point in using of_find_node_by_name(). thanks, > Fixes: fe6d8a9c8e64 ("usb: typec: anx7411: Add Analogix PD ANX7411 support") > Signed-off-by: Liang He <windhl@xxxxxxx> > --- > drivers/usb/typec/anx7411.c | 2 ++ > 1 file changed, 2 insertions(+) > > diff --git a/drivers/usb/typec/anx7411.c b/drivers/usb/typec/anx7411.c > index c0f0842d443c..fe000bbf7183 100644 > --- a/drivers/usb/typec/anx7411.c > +++ b/drivers/usb/typec/anx7411.c > @@ -1105,6 +1105,7 @@ static int anx7411_typec_switch_probe(struct anx7411_data *ctx, > int ret; > struct device_node *node; > > + of_node_get(dev->of_node); > node = of_find_node_by_name(dev->of_node, "orientation_switch"); > if (!node) > return 0; > @@ -1115,6 +1116,7 @@ static int anx7411_typec_switch_probe(struct anx7411_data *ctx, > return ret; > } > > + of_node_get(dev->of_node); > node = of_find_node_by_name(dev->of_node, "mode_switch"); > if (!node) { > dev_err(dev, "no typec mux exist"); > -- > 2.25.1 -- heikki