[PATCH v2 00/29] Remove the omapdrm and omapdss devices from platform code

Tony Lindgren tony at atomide.com
Thu May 11 14:16:33 UTC 2017


* Tomi Valkeinen <tomi.valkeinen at ti.com> [170511 01:37]:
> On 10/05/17 21:29, Tony Lindgren wrote:
> > * Tomi Valkeinen <tomi.valkeinen at ti.com> [170510 10:44]:
> >>
> >>
> >> On 10/05/17 19:46, Tony Lindgren wrote:
> >>> * Tomi Valkeinen <tomi.valkeinen at ti.com> [170510 00:26]:
> >>>> On 09/05/17 18:05, Sebastian Reichel wrote:
> >>>>
> >>>>> patch 10:
> >>>>> I think dsi pin muxing should be done by providing pinmux
> >>>>> info via DT.
> >>>>
> >>>> Unfortunately there's no pinmux driver for the kind of register we have
> >>>> for DSI. At least this was the case not that long ago.
> >>>
> >>> What are the TRM names for the registers you need to mux?
> >>
> >> CONTROL_DSIPHY
> > 
> > Oh just one register with few bits? That should be doable in
> > dts with pinctrl-single,bit-per-mux and pinctrl-single,bits.
> 
> No, I don't think it works. Or at least I can't figure out how.
> 
> 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.

> 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:

$ git grep '"pinctrl-single"' arch/arm*/boot/dts | sort | uniq | wc -l
20

Regards,

Tony




More information about the dri-devel mailing list