diff options
Diffstat (limited to 'drivers/net/dsa/microchip/ksz9477_i2c.c')
| -rw-r--r-- | drivers/net/dsa/microchip/ksz9477_i2c.c | 17 | 
1 files changed, 8 insertions, 9 deletions
| diff --git a/drivers/net/dsa/microchip/ksz9477_i2c.c b/drivers/net/dsa/microchip/ksz9477_i2c.c index 3763930dc6fc..c1a633ca1e6d 100644 --- a/drivers/net/dsa/microchip/ksz9477_i2c.c +++ b/drivers/net/dsa/microchip/ksz9477_i2c.c @@ -14,8 +14,7 @@  KSZ_REGMAP_TABLE(ksz9477, not_used, 16, 0, 0); -static int ksz9477_i2c_probe(struct i2c_client *i2c, -			     const struct i2c_device_id *i2c_id) +static int ksz9477_i2c_probe(struct i2c_client *i2c)  {  	struct regmap_config rc;  	struct ksz_device *dev; @@ -30,17 +29,17 @@ static int ksz9477_i2c_probe(struct i2c_client *i2c,  		rc.lock_arg = &dev->regmap_mutex;  		dev->regmap[i] = devm_regmap_init_i2c(i2c, &rc);  		if (IS_ERR(dev->regmap[i])) { -			ret = PTR_ERR(dev->regmap[i]); -			dev_err(&i2c->dev, -				"Failed to initialize regmap%i: %d\n", -				ksz9477_regmap_config[i].val_bits, ret); -			return ret; +			return dev_err_probe(&i2c->dev, PTR_ERR(dev->regmap[i]), +					     "Failed to initialize regmap%i\n", +					     ksz9477_regmap_config[i].val_bits);  		}  	}  	if (i2c->dev.platform_data)  		dev->pdata = i2c->dev.platform_data; +	dev->irq = i2c->irq; +  	ret = ksz_switch_register(dev);  	/* Main DSA driver may not be started yet. */ @@ -101,7 +100,7 @@ static const struct of_device_id ksz9477_dt_ids[] = {  	},  	{  		.compatible = "microchip,ksz9563", -		.data = &ksz_switch_chips[KSZ9893] +		.data = &ksz_switch_chips[KSZ9563]  	},  	{  		.compatible = "microchip,ksz8563", @@ -120,7 +119,7 @@ static struct i2c_driver ksz9477_i2c_driver = {  		.name	= "ksz9477-switch",  		.of_match_table = of_match_ptr(ksz9477_dt_ids),  	}, -	.probe	= ksz9477_i2c_probe, +	.probe_new = ksz9477_i2c_probe,  	.remove	= ksz9477_i2c_remove,  	.shutdown = ksz9477_i2c_shutdown,  	.id_table = ksz9477_i2c_id, |