17 Nov
2017
17 Nov
'17
8:11 a.m.
On Wed, Nov 15, 2017 at 02:10:35PM +0000, srinivas.kandagatla@linaro.org wrote:
- for_each_child_of_node(ctrl->dev->of_node, node) {
struct slim_device *sbdev;
struct slim_eaddr e_addr;
const char *compat = NULL;
int reg[2], ret;
int manf_id, prod_code;
compat = of_get_property(node, "compatible", NULL);
if (!compat)
continue;
ret = sscanf(compat, "slim%x,%x", &manf_id, &prod_code);
if (ret != 2) {
dev_err(dev, "Manf ID & Product code not found %s\n",
compat);
continue;
}
can we do xxx_property_read_u32() on compat and then use bit manupliations to get ids rather than scanf.
ret = of_property_read_u32_array(node, "reg", reg, 2);
I typically prefer using device_property_read_u32() but then this is of_ code so I will leave this upto you...
--
~Vinod