mfd: sec-core: Dump PMIC revision to find out the HW
authorKrzysztof Kozlowski <k.kozlowski@samsung.com>
Wed, 7 Oct 2015 00:44:39 +0000 (09:44 +0900)
committerLee Jones <lee.jones@linaro.org>
Fri, 30 Oct 2015 17:20:37 +0000 (17:20 +0000)
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>
drivers/mfd/sec-core.c

index 2d1137a7a0ee6662e03d3338a4cde80088899f05..589e5efc2d7fcc051402bd89c3d92d109312b518 100644 (file)
@@ -253,6 +253,15 @@ static const struct regmap_config s5m8767_regmap_config = {
        .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
 /*
  * 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;
 
        device_init_wakeup(sec_pmic->dev, sec_pmic->wakeup);
+       sec_pmic_dump_rev(sec_pmic);
 
        return ret;