Browse Source

mfd: sec-core: Dump PMIC revision to find out the HW

There are different revisions of the same chipset. For example S2MPS13 has
more than 2 revisions. They differ slightly in regulator constraints.
Print the revision number to easily find which PMIC is used on the board.

Signed-off-by: Krzysztof Kozlowski <k.kozlowski@samsung.com>
Signed-off-by: Lee Jones <lee.jones@linaro.org>
Krzysztof Kozlowski 10 years ago
parent
commit
c2c9f1fe4b
1 changed files with 10 additions and 0 deletions
  1. 10 0
      drivers/mfd/sec-core.c

+ 10 - 0
drivers/mfd/sec-core.c

@@ -253,6 +253,15 @@ static const struct regmap_config s5m8767_regmap_config = {
 	.cache_type = REGCACHE_FLAT,
 	.cache_type = REGCACHE_FLAT,
 };
 };
 
 
+static void sec_pmic_dump_rev(struct sec_pmic_dev *sec_pmic)
+{
+	unsigned int val;
+
+	/* For each device type, the REG_ID is always the first register */
+	if (!regmap_read(sec_pmic->regmap_pmic, S2MPS11_REG_ID, &val))
+		dev_dbg(sec_pmic->dev, "Revision: 0x%x\n", val);
+}
+
 #ifdef CONFIG_OF
 #ifdef CONFIG_OF
 /*
 /*
  * Only the common platform data elements for s5m8767 are parsed here from the
  * Only the common platform data elements for s5m8767 are parsed here from the
@@ -425,6 +434,7 @@ static int sec_pmic_probe(struct i2c_client *i2c,
 		goto err_mfd;
 		goto err_mfd;
 
 
 	device_init_wakeup(sec_pmic->dev, sec_pmic->wakeup);
 	device_init_wakeup(sec_pmic->dev, sec_pmic->wakeup);
+	sec_pmic_dump_rev(sec_pmic);
 
 
 	return ret;
 	return ret;