Re: [PATCH v6] pinctrl: add a pin config interface

From: Linus Walleij
Date: Tue Dec 13 2011 - 17:56:54 EST


On Tue, Dec 13, 2011 at 10:49 PM, Stephen Warren <swarren@xxxxxxxxxx> wrote:
> Haojian Zhuang wrote at Tuesday, December 13, 2011 12:22 AM:

>> Excuse me that I didn't find that patch. Did you merge it into your
>> git tree? The latest patch on pinconf.c is updating pdev->dev to
>> &pdev->dev.
>
> I just hit the same problem. This isn't what my patch addresses.
>
> My patch prevents the pinctrl core from creating a struct device for the
> pin controller, since it already has one.
>
> The problem that Haojian mentions is regarding struct pinctrl_dev, not
> plain device.

Aha, sorry guys I got it all wrong :-/

Yes as it stands now it can only be used from within the pin
control drivers and frameworks themselves, what good is
that...

> I'd suggest modifying all the pin_config_* APIs to take a device name
> rather than a "struct pinctrl_dev *". I'll work on a patch to do this,
> since I'm hitting the same problem.

It can use the struct device * for the pin controller or a device name,
either works fine I guess. But strings are nice, you tend to understand
them.

> An alternative may be to either:
>
> * Add function pinctrl_get_dev_by_name(name)
>
> Or:
>
> * Use dev = bus_find_device_by_name(name) to get the plain device, and
> add a pinctrl_find_dev_by_dev(dev).
>
> Either of those sound more complex though, but I suppose do allow
> direct operation if you somehow do already have the struct pinctrl_dev.

Nah, seems like opening a can of worms, let's keep
that stuff internal. A string is nice.

Thanks,
Linus Walleij
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/