Thread (20 messages) 20 messages, 7 authors, 2014-11-12

Re: [PATCH] mfd: qcom-spmi-pmic: Add support for more chips versions

From: Ivan T. Ivanov <hidden>
Date: 2014-11-05 18:31:20
Also in: linux-arm-msm, lkml

On Wed, 2014-11-05 at 10:11 -0800, Bjorn Andersson wrote:
On Tue, Nov 4, 2014 at 5:33 AM, Ivan T. Ivanov [off-list ref] 
wrote:
[..]
quoted
@@ -28,11 +144,27 @@ static int pmic_spmi_probe(struct spmi_device 
*sdev)
 {
        struct device_node *root = sdev->dev.of_node;
        struct regmap *regmap;
+       struct property *prop;
+       int major, minor, ret;
+       char *name, compatible[32];

        regmap = devm_regmap_init_spmi_ext(sdev, 
&spmi_regmap_config);
        if (IS_ERR(regmap))
                return PTR_ERR(regmap);

+       ret = pmic_spmi_read_revid(regmap, &name, &major, &minor);
+       if (!ret) {
+               snprintf(compatible, ARRAY_SIZE(compatible), 
"qcom,%s-v%d.%d",
+                        name, major, minor);
+               prop = kzalloc(sizeof(*prop), GFP_KERNEL);
+               if (prop) {
+                       prop->name = kstrdup("compatible", 
GFP_KERNEL);
+                       prop->value = kstrdup(compatible, 
GFP_KERNEL);
+                       prop->length = strlen(prop->value);
+                       of_update_property(root, prop);
+               }
+       }
+
Why would you do this?
What benefit does it give to patch the of_node to have a more 
specific
compatible?
Some of the child device drivers have to know PMIC chip revision.

Regards,
Ivan
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help