Re: [PATCH 06/23] ARM: OMAP: add OMAP5 DSI muxing

From
Tomi Valkeinen <hidden>
Date
2014-04-29 05:26:01
Also in
linux-arm-kernel, linux-omap
Reply to
Tony Lindgren, 2014-04-28
On 28/04/14 19:45, Tony Lindgren wrote:
* Tomi Valkeinen [off-list ref] [140427 23:53]:
quoted
On 25/04/14 18:31, Tony Lindgren wrote:
quoted
Chances are any mux register in the syscon area already works with
pinctrl-single,pins or pinctrl-single,bits option. The ones in the
padconf area should be already mapped so the driver just has to
request them.
If using the padconf (say omap4_padconf_global for omap4), doesn't that
mean we need to have platform specific bits in the driver? Isn't that
something we've been trying to remove all the time?
No, it's all done in a Linux generic way during driver probe, see
drivers/base/pinctrl.c. You just need to define the default pins
in the .dts files. If you need dynamic remuxing in the driver,
you can define other named states that the driver can then toggle
with pinctrl_select_state().
omap4_padconf_global is a syscon node, not pinctrl. As syscon just gives
a raw regmap to its memory area, the driver needs to know about the OMAP
control registers to use it.

Pinctrl-single cannot be used for CONTROL_DSIPHY register, as the
register contents are a bit funny and DSI1 and DSI2 bits are mixed
together. And CONTROL_DSIPHY is already in the memory region defined by
the omap4_padconf_global, so I guess it wouldn't be good to map parts of
the same memory region in a pinctrl node.

 Tomi

Attachments

Thread (45 messages) 45 messages, 4 authors, last reply 2014-05-02
Keyboard shortcuts
hback out one level
jnext message in thread / next series-diff position
kprevious message in thread / previous series-diff position
ldrill in
Escclose help / fold thread tree
?toggle this help