On Tue, Aug 27, 2013 at 04:55:22PM +0900, Nguyen Viet Dung wrote:This patch modify I2C driver of rcar-H1 to usable on both rcar-H1 and rcar-H2.Yes, this is much better. Only minor things...
Signed-off-by: Nguyen Viet Dung <nv-dung@xxxxxxxxxxx>
+ switch (priv->devtype) {Please put the default case block at the end.
+ default:
+ case I2C_RCAR_H1:
+ cdf_width = 2;
+ break;
+ case I2C_RCAR_H2:
+ cdf_width = 3;
+ break;
+ }
+
@@ -632,6 +649,13 @@ static int rcar_i2c_probe(struct platform_device *pdev)This cannot happen. Since you have 'i2c-rcar' in the id_table, the
bus_speed = 100000; /* default 100 kHz */
if (pdata && pdata->bus_speed)
bus_speed = pdata->bus_speed;
+
+ if (!pdev->id_entry) {
+ dev_err(&pdev->dev, "no entry\n");
+ return -ENODEV;
+ }
driver core will always match against the id_table and there is always a
driver_data defined.
+ priv->devtype = pdev->id_entry->driver_data;Basically the same, but please use
platform_get_device_id(pdev)->driver_data;
Otherwise good!
Thanks,
Wolfram