* Tomi Valkeinen tomi.valkeinen@ti.com [170512 00:32]:
On 11/05/17 17:16, Tony Lindgren wrote:
pinctrl-single doesn't allow to freely set the bits, but requires the pins to have similar bit structure (function-mask). In CONTROL_DSIPHY, DSI1 and DSI2 have different bit structures.
OK if the register mixes different types of controllers that can't be partitioned into separate 8 or 16 bit instances then you're out of luck with pinctrl-single. If it does not fit, no point trying to force it, then you need a custom pinctrl driver.
Writing a driver for a single register on a legacy SoC feels like an overkill... But I guess a generic pinctrl driver which allows free writes to registers would do the trick, but, then again, if so far we have a single register in a single SoC that needs this, maybe it's not worth the effort.
Yeah..
I don't understand why pinctrl-single tries so hard to fit things into one mold...
Basically on many SoCs pinctrl is just the same exact control register repeated for each pin on the SoC:
Right, I was just wondering why it forces one to have a function mask, versus allowing it to be left out and thus making it possible to handle also cases where the pins require different kinds of bit masks.
Some of the bits are not usable typically. I think what you're describing could probably be done with a custom compatible plus struct pcs_soc_data.
Regards,
Tony