[PATCH v2 3/4] mfd: max77686: Use the struct i2c_driver .probe_new instead of .probe

From: Javier Martinez Canillas
Date: Fri Jan 13 2017 - 08:34:45 EST


If a driver is only used in DT platforms, there's no need to get the
i2c_device_id as an argument of the probe function. Since this data
can be get from the matching of_device_id.

There's a temporary .probe_new field in struct i2c_driver that can be
used as probe callback for the case when i2c_device_id won't be used.

Signed-off-by: Javier Martinez Canillas <javier@xxxxxxxxxxxxxxx>
Acked-by: Laxman Dewangan <ldewangan@xxxxxxxxxx>
Reviewed-by: Krzysztof Kozlowski <krzk@xxxxxxxxxx>
Tested-by: Krzysztof Kozlowski <krzk@xxxxxxxxxx>

---

Changes in v2:
- Add Laxman's Acked-by tag to patch 3/4.
- Add Krzysztof's Reviewed-by and Tested-by tags to patch 3/4.

drivers/mfd/max77686.c | 5 ++---
1 file changed, 2 insertions(+), 3 deletions(-)

diff --git a/drivers/mfd/max77686.c b/drivers/mfd/max77686.c
index 33dd09493605..896c1bf85acc 100644
--- a/drivers/mfd/max77686.c
+++ b/drivers/mfd/max77686.c
@@ -172,8 +172,7 @@ static const struct of_device_id max77686_pmic_dt_match[] = {
};
MODULE_DEVICE_TABLE(of, max77686_pmic_dt_match);

-static int max77686_i2c_probe(struct i2c_client *i2c,
- const struct i2c_device_id *id)
+static int max77686_i2c_probe(struct i2c_client *i2c)
{
struct max77686_dev *max77686 = NULL;
unsigned int data;
@@ -294,7 +293,7 @@ static struct i2c_driver max77686_i2c_driver = {
.pm = &max77686_pm,
.of_match_table = of_match_ptr(max77686_pmic_dt_match),
},
- .probe = max77686_i2c_probe,
+ .probe_new = max77686_i2c_probe,
.id_table = max77686_i2c_id,
};

--
2.7.4