Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 1b09a2af authored by Wolfram Sang's avatar Wolfram Sang Committed by Mauro Carvalho Chehab
Browse files

media: ir-kbd-i2c: convert to i2c_new_dummy_device()



Convert this driver to use the new i2c_new_dummy_device() call and bail
out if the dummy device cannot be registered to make failure more
visible to the user.

Signed-off-by: default avatarWolfram Sang <wsa+renesas@sang-engineering.com>
Signed-off-by: default avatarSean Young <sean@mess.org>
Signed-off-by: default avatarMauro Carvalho Chehab <mchehab+samsung@kernel.org>
parent 92ffdb61
Loading
Loading
Loading
Loading
+6 −5
Original line number Diff line number Diff line
@@ -885,9 +885,11 @@ static int ir_probe(struct i2c_client *client, const struct i2c_device_id *id)
	INIT_DELAYED_WORK(&ir->work, ir_work);

	if (probe_tx) {
		ir->tx_c = i2c_new_dummy(client->adapter, 0x70);
		if (!ir->tx_c) {
		ir->tx_c = i2c_new_dummy_device(client->adapter, 0x70);
		if (IS_ERR(ir->tx_c)) {
			dev_err(&client->dev, "failed to setup tx i2c address");
			err = PTR_ERR(ir->tx_c);
			goto err_out_free;
		} else if (!zilog_init(ir)) {
			ir->carrier = 38000;
			ir->duty_cycle = 40;
@@ -904,7 +906,7 @@ static int ir_probe(struct i2c_client *client, const struct i2c_device_id *id)
	return 0;

 err_out_free:
	if (ir->tx_c)
	if (!IS_ERR(ir->tx_c))
		i2c_unregister_device(ir->tx_c);

	/* Only frees rc if it were allocated internally */
@@ -918,7 +920,6 @@ static int ir_remove(struct i2c_client *client)

	cancel_delayed_work_sync(&ir->work);

	if (ir->tx_c)
	i2c_unregister_device(ir->tx_c);

	rc_unregister_device(ir->rc);