Browse Source

i2c: sh_mobile: move type detection upwards

For refactoring reasons, we will need this information before the setup
callback. Also, simplify the comment to a oneliner.

Signed-off-by: Wolfram Sang <wsa+renesas@sang-engineering.com>
Signed-off-by: Wolfram Sang <wsa@the-dreams.de>
Wolfram Sang 7 years ago
parent
commit
9e42213116
1 changed files with 4 additions and 6 deletions
  1. 4 6
      drivers/i2c/busses/i2c-sh_mobile.c

+ 4 - 6
drivers/i2c/busses/i2c-sh_mobile.c

@@ -873,6 +873,10 @@ static int sh_mobile_i2c_probe(struct platform_device *dev)
 	pd->bus_speed = ret ? STANDARD_MODE : bus_speed;
 	pd->clks_per_count = 1;
 
+	/* Newer variants come with two new bits in ICIC */
+	if (resource_size(res) > 0x17)
+		pd->flags |= IIC_FLAG_HAS_ICIC67;
+
 	config = of_device_get_match_data(&dev->dev);
 	if (config) {
 		pd->clks_per_count = config->clks_per_count;
@@ -881,12 +885,6 @@ static int sh_mobile_i2c_probe(struct platform_device *dev)
 			config->setup(pd);
 	}
 
-	/* The IIC blocks on SH-Mobile ARM processors
-	 * come with two new bits in ICIC.
-	 */
-	if (resource_size(res) > 0x17)
-		pd->flags |= IIC_FLAG_HAS_ICIC67;
-
 	ret = sh_mobile_i2c_init(pd);
 	if (ret)
 		return ret;