Commit 95590a62 authored by zhong jiang's avatar zhong jiang Committed by Alexandre Belloni
Browse files

ARM: at91: pm: call put_device instead of of_node_put in at91_pm_config_ws



of_find_device_by_node takes a reference to the struct device when it
finds a match via get_device. but it fails to put_device in
at91_pm_config_ws, for_each_matching_node_and_match will get and put
the node properly, there is no need to call the of_put_node. Therefore,
just call put_device instead of of_node_put in at91_pm_config_ws.

Fixes: d7484f5c ("ARM: at91: pm: configure wakeup sources for ULP1 mode")
Suggested-by: default avatarClaudiu Beznea <Claudiu.Beznea@microchip.com>
Signed-off-by: default avatarzhong jiang <zhongjiang@huawei.com>
Signed-off-by: default avatarAlexandre Belloni <alexandre.belloni@bootlin.com>
parent 1e1f808f
Loading
Loading
Loading
Loading
+3 −3
Original line number Diff line number Diff line
@@ -143,15 +143,15 @@ static int at91_pm_config_ws(unsigned int pm_mode, bool set)

			/* Check if enabled on SHDWC. */
			if (wsi->shdwc_mr_bit && !(val & wsi->shdwc_mr_bit))
				goto put_node;
				goto put_device;

			mode |= wsi->pmc_fsmr_bit;
			if (wsi->set_polarity)
				polarity |= wsi->pmc_fsmr_bit;
		}

put_node:
		of_node_put(np);
put_device:
		put_device(&pdev->dev);
	}

	if (mode) {