Commit ca0d9997 authored by Krzysztof Kozlowski's avatar Krzysztof Kozlowski Committed by Dmitry Torokhov
Browse files

Input: raydium_i2c_ts - simplify with dev_err_probe()



Common pattern of handling deferred probe can be simplified with
dev_err_probe().  Less code and also it prints the error value.

Signed-off-by: default avatarKrzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Reviewed-by: default avatarHans de Goede <hdegoede@redhat.com>
Reviewed-by: default avatarAndy Shevchenko <andy.shevchenko@gmail.com>
Link: https://lore.kernel.org/r/20230625162817.100397-17-krzysztof.kozlowski@linaro.org


Signed-off-by: default avatarDmitry Torokhov <dmitry.torokhov@gmail.com>
parent e32825c4
Loading
Loading
Loading
Loading
+9 −21
Original line number Diff line number Diff line
@@ -1087,32 +1087,20 @@ static int raydium_i2c_probe(struct i2c_client *client)
	i2c_set_clientdata(client, ts);

	ts->avdd = devm_regulator_get(&client->dev, "avdd");
	if (IS_ERR(ts->avdd)) {
		error = PTR_ERR(ts->avdd);
		if (error != -EPROBE_DEFER)
			dev_err(&client->dev,
				"Failed to get 'avdd' regulator: %d\n", error);
		return error;
	}
	if (IS_ERR(ts->avdd))
		return dev_err_probe(&client->dev, PTR_ERR(ts->avdd),
				     "Failed to get 'avdd' regulator\n");

	ts->vccio = devm_regulator_get(&client->dev, "vccio");
	if (IS_ERR(ts->vccio)) {
		error = PTR_ERR(ts->vccio);
		if (error != -EPROBE_DEFER)
			dev_err(&client->dev,
				"Failed to get 'vccio' regulator: %d\n", error);
		return error;
	}
	if (IS_ERR(ts->vccio))
		return dev_err_probe(&client->dev, PTR_ERR(ts->vccio),
				     "Failed to get 'vccio' regulator\n");

	ts->reset_gpio = devm_gpiod_get_optional(&client->dev, "reset",
						 GPIOD_OUT_LOW);
	if (IS_ERR(ts->reset_gpio)) {
		error = PTR_ERR(ts->reset_gpio);
		if (error != -EPROBE_DEFER)
			dev_err(&client->dev,
				"failed to get reset gpio: %d\n", error);
		return error;
	}
	if (IS_ERR(ts->reset_gpio))
		return dev_err_probe(&client->dev, PTR_ERR(ts->reset_gpio),
				     "Failed to get reset gpio\n");

	error = raydium_i2c_power_on(ts);
	if (error)