Unverified Commit 4ac17043 authored by Théo Lebrun's avatar Théo Lebrun Committed by Stephen Boyd
Browse files

reset: eyeq: drop device_set_of_node_from_dev() done by parent



Our parent driver (clk-eyeq) now does the
	device_set_of_node_from_dev(dev, dev->parent)
call through the newly introduced devm_auxiliary_device_create() helper.

Doing it again in the reset-eyeq probe would be redundant.
Drop both the WARN_ON() and the device_set_of_node_from_dev() call.
Also fix the following comment that talks about "our newfound OF node".

Signed-off-by: default avatarJerome Brunet <jbrunet@baylibre.com>
Reviewed-by: default avatarPhilipp Zabel <p.zabel@pengutronix.de>
Acked-by: default avatarPhilipp Zabel <p.zabel@pengutronix.de>
Signed-off-by: default avatarThéo Lebrun <theo.lebrun@bootlin.com>
Signed-off-by: default avatarStephen Boyd <sboyd@kernel.org>
parent a25ab518
Loading
Loading
Loading
Loading
+2 −22
Original line number Diff line number Diff line
@@ -422,13 +422,6 @@ static int eqr_of_xlate_twocells(struct reset_controller_dev *rcdev,
	return eqr_of_xlate_internal(rcdev, reset_spec->args[0], reset_spec->args[1]);
}

static void eqr_of_node_put(void *_dev)
{
	struct device *dev = _dev;

	of_node_put(dev->of_node);
}

static int eqr_probe(struct auxiliary_device *adev,
		     const struct auxiliary_device_id *id)
{
@@ -439,21 +432,8 @@ static int eqr_probe(struct auxiliary_device *adev,
	int ret;

	/*
	 * We are an auxiliary device of clk-eyeq. We do not have an OF node by
	 * default; let's reuse our parent's OF node.
	 */
	WARN_ON(dev->of_node);
	device_set_of_node_from_dev(dev, dev->parent);
	if (!dev->of_node)
		return -ENODEV;

	ret = devm_add_action_or_reset(dev, eqr_of_node_put, dev);
	if (ret)
		return ret;

	/*
	 * Using our newfound OF node, we can get match data. We cannot use
	 * device_get_match_data() because it does not match reused OF nodes.
	 * Get match data. We cannot use device_get_match_data() because it does
	 * not accept reused OF nodes; see device_set_of_node_from_dev().
	 */
	match = of_match_node(dev->driver->of_match_table, dev->of_node);
	if (!match || !match->data)