All of lore.kernel.org
 help / color / mirror / Atom feed
From: Tony Lindgren <tony@atomide.com>
To: linux-arm-kernel@lists.infradead.org
Subject: Re: [PATCH 06/23] ARM: OMAP: add OMAP5 DSI muxing
Date: Tue, 29 Apr 2014 15:05:30 +0000	[thread overview]
Message-ID: <20140429150529.GA27571@atomide.com> (raw)
In-Reply-To: <535F37E9.8090609@ti.com>

* Tomi Valkeinen <tomi.valkeinen@ti.com> [140428 22:26]:
> On 28/04/14 19:45, Tony Lindgren wrote:
> > * Tomi Valkeinen <tomi.valkeinen@ti.com> [140427 23:53]:
> >> On 25/04/14 18:31, Tony Lindgren wrote:
> >>
> >>> 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.

That would be probably best set up the same way we have already set up
for example omap4_padconf_global: tisyscon@4a1005a0. Then drivers can
access it using regmap, see how drivers/regulator/pbias-regulator.c
sets up the pbias regulator with regmap for MMC.
 
> 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.

If it's more than a mux, then it should not be set up as a pinctrl
register. Looks like CONTROL_DSIPHY is already available for drivers
via regmap as it falls into the *_padconf_global mappings for omap4
and omap5.

Regards,

Tony

WARNING: multiple messages have this Message-ID (diff)
From: Tony Lindgren <tony@atomide.com>
To: Tomi Valkeinen <tomi.valkeinen@ti.com>
Cc: Archit Taneja <archit@ti.com>,
	linux-fbdev@vger.kernel.org, linux-omap@vger.kernel.org,
	linux-arm-kernel@lists.infradead.org
Subject: Re: [PATCH 06/23] ARM: OMAP: add OMAP5 DSI muxing
Date: Tue, 29 Apr 2014 08:05:30 -0700	[thread overview]
Message-ID: <20140429150529.GA27571@atomide.com> (raw)
In-Reply-To: <535F37E9.8090609@ti.com>

* Tomi Valkeinen <tomi.valkeinen@ti.com> [140428 22:26]:
> On 28/04/14 19:45, Tony Lindgren wrote:
> > * Tomi Valkeinen <tomi.valkeinen@ti.com> [140427 23:53]:
> >> On 25/04/14 18:31, Tony Lindgren wrote:
> >>
> >>> 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.

That would be probably best set up the same way we have already set up
for example omap4_padconf_global: tisyscon@4a1005a0. Then drivers can
access it using regmap, see how drivers/regulator/pbias-regulator.c
sets up the pbias regulator with regmap for MMC.
 
> 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.

If it's more than a mux, then it should not be set up as a pinctrl
register. Looks like CONTROL_DSIPHY is already available for drivers
via regmap as it falls into the *_padconf_global mappings for omap4
and omap5.

Regards,

Tony

WARNING: multiple messages have this Message-ID (diff)
From: tony@atomide.com (Tony Lindgren)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH 06/23] ARM: OMAP: add OMAP5 DSI muxing
Date: Tue, 29 Apr 2014 08:05:30 -0700	[thread overview]
Message-ID: <20140429150529.GA27571@atomide.com> (raw)
In-Reply-To: <535F37E9.8090609@ti.com>

* Tomi Valkeinen <tomi.valkeinen@ti.com> [140428 22:26]:
> On 28/04/14 19:45, Tony Lindgren wrote:
> > * Tomi Valkeinen <tomi.valkeinen@ti.com> [140427 23:53]:
> >> On 25/04/14 18:31, Tony Lindgren wrote:
> >>
> >>> 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.

That would be probably best set up the same way we have already set up
for example omap4_padconf_global: tisyscon at 4a1005a0. Then drivers can
access it using regmap, see how drivers/regulator/pbias-regulator.c
sets up the pbias regulator with regmap for MMC.
 
> 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.

If it's more than a mux, then it should not be set up as a pinctrl
register. Looks like CONTROL_DSIPHY is already available for drivers
via regmap as it falls into the *_padconf_global mappings for omap4
and omap5.

Regards,

Tony

  reply	other threads:[~2014-04-29 15:05 UTC|newest]

Thread overview: 135+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-04-24 10:16 [PATCH 00/23] OMAPDSS: OMAP5 display support Tomi Valkeinen
2014-04-24 10:16 ` Tomi Valkeinen
2014-04-24 10:16 ` Tomi Valkeinen
2014-04-24 10:16 ` [PATCH 01/23] OMAPDSS: HDMI: lane config support Tomi Valkeinen
2014-04-24 10:16   ` Tomi Valkeinen
2014-04-24 10:16   ` Tomi Valkeinen
2014-04-25 10:06   ` Archit Taneja
2014-04-25 10:18     ` Archit Taneja
2014-04-25 10:06     ` Archit Taneja
2014-04-25 10:28     ` Tomi Valkeinen
2014-04-25 10:28       ` Tomi Valkeinen
2014-04-25 10:28       ` Tomi Valkeinen
2014-04-24 10:16 ` [PATCH 02/23] Doc/DT: ti,omap4-dss: hdmi lanes Tomi Valkeinen
2014-04-24 10:16   ` Tomi Valkeinen
2014-04-24 10:16   ` Tomi Valkeinen
2014-04-24 10:16 ` [PATCH 03/23] OMAPDSS: HDMI4: set regulator voltage to 1.8V Tomi Valkeinen
2014-04-24 10:16   ` Tomi Valkeinen
2014-04-24 10:16   ` Tomi Valkeinen
2014-04-24 10:17 ` [PATCH 04/23] OMAPDSS: DSI: " Tomi Valkeinen
2014-04-24 10:17   ` Tomi Valkeinen
2014-04-24 10:17   ` Tomi Valkeinen
2014-04-24 10:17 ` [PATCH 05/23] ARM: OMAP: hwmod: OMAP5 DSS hwmod data Tomi Valkeinen
2014-04-24 10:17   ` Tomi Valkeinen
2014-04-24 10:17   ` Tomi Valkeinen
2014-04-24 10:17 ` [PATCH 06/23] ARM: OMAP: add OMAP5 DSI muxing Tomi Valkeinen
2014-04-24 10:17   ` Tomi Valkeinen
2014-04-24 10:17   ` Tomi Valkeinen
2014-04-25 11:11   ` Archit Taneja
2014-04-25 11:23     ` Archit Taneja
2014-04-25 11:11     ` Archit Taneja
2014-04-25 11:18     ` Tomi Valkeinen
2014-04-25 11:18       ` Tomi Valkeinen
2014-04-25 11:18       ` Tomi Valkeinen
2014-04-25 12:58       ` Archit Taneja
2014-04-25 13:10         ` Archit Taneja
2014-04-25 12:58         ` Archit Taneja
2014-04-25 14:08         ` Tomi Valkeinen
2014-04-25 14:08           ` Tomi Valkeinen
2014-04-25 14:08           ` Tomi Valkeinen
2014-04-25 15:31           ` Tony Lindgren
2014-04-25 15:31             ` Tony Lindgren
2014-04-25 15:31             ` Tony Lindgren
2014-04-28  6:52             ` Tomi Valkeinen
2014-04-28  6:52               ` Tomi Valkeinen
2014-04-28  6:52               ` Tomi Valkeinen
2014-04-28 16:45               ` Tony Lindgren
2014-04-28 16:45                 ` Tony Lindgren
2014-04-28 16:45                 ` Tony Lindgren
2014-04-29  5:26                 ` Tomi Valkeinen
2014-04-29  5:26                   ` Tomi Valkeinen
2014-04-29  5:26                   ` Tomi Valkeinen
2014-04-29 15:05                   ` Tony Lindgren [this message]
2014-04-29 15:05                     ` Tony Lindgren
2014-04-29 15:05                     ` Tony Lindgren
2014-04-29 16:19                     ` Tomi Valkeinen
2014-04-29 16:19                       ` Tomi Valkeinen
2014-04-29 16:19                       ` Tomi Valkeinen
2014-04-29 16:32                       ` Tomi Valkeinen
2014-04-29 16:32                         ` Tomi Valkeinen
2014-04-29 16:32                         ` Tomi Valkeinen
2014-04-29 17:38                         ` Tony Lindgren
2014-04-29 17:38                           ` Tony Lindgren
2014-04-29 17:38                           ` Tony Lindgren
2014-04-30  6:13                           ` Tomi Valkeinen
2014-04-30  6:13                             ` Tomi Valkeinen
2014-04-30  6:13                             ` Tomi Valkeinen
2014-04-30 17:56                             ` Tony Lindgren
2014-04-30 17:56                               ` Tony Lindgren
2014-04-30 17:56                               ` Tony Lindgren
2014-05-02 13:06                               ` Tomi Valkeinen
2014-05-02 13:06                                 ` Tomi Valkeinen
2014-05-02 13:06                                 ` Tomi Valkeinen
2014-04-24 10:17 ` [PATCH 07/23] ARM: OMAP: add detection of omap5-dss Tomi Valkeinen
2014-04-24 10:17   ` Tomi Valkeinen
2014-04-24 10:17   ` Tomi Valkeinen
2014-04-24 10:17 ` [PATCH 08/23] ARM: dts: omap5-clocks.dtsi: add dss iclk Tomi Valkeinen
2014-04-24 10:17   ` Tomi Valkeinen
2014-04-24 10:17   ` Tomi Valkeinen
2014-04-24 10:17 ` [PATCH 09/23] ARM: dts: omap5-clocks.dtsi: add ti,set-rate-parent to dss_dss_clk Tomi Valkeinen
2014-04-24 10:17   ` [PATCH 09/23] ARM: dts: omap5-clocks.dtsi: add ti, set-rate-parent " Tomi Valkeinen
2014-04-24 10:17   ` [PATCH 09/23] ARM: dts: omap5-clocks.dtsi: add ti,set-rate-parent " Tomi Valkeinen
2014-04-24 10:17 ` [PATCH 10/23] ARM: dts: omap5.dtsi: add DSS nodes Tomi Valkeinen
2014-04-24 10:17   ` Tomi Valkeinen
2014-04-24 10:17   ` Tomi Valkeinen
2014-04-24 10:17 ` [PATCH 11/23] ARM: dts: omap5-uevm.dts: add tca6424a Tomi Valkeinen
2014-04-24 10:17   ` Tomi Valkeinen
2014-04-24 10:17   ` Tomi Valkeinen
2014-04-24 13:49   ` Sergei Shtylyov
2014-04-24 13:49     ` Sergei Shtylyov
2014-04-24 13:49     ` Sergei Shtylyov
2014-04-24 14:33     ` Tomi Valkeinen
2014-04-24 14:33       ` Tomi Valkeinen
2014-04-24 14:33       ` Tomi Valkeinen
2014-04-24 16:53       ` Sergei Shtylyov
2014-04-24 16:53         ` Sergei Shtylyov
2014-04-24 16:53         ` Sergei Shtylyov
2014-04-25 14:20         ` Tomi Valkeinen
2014-04-25 14:20           ` Tomi Valkeinen
2014-04-25 14:20           ` Tomi Valkeinen
2014-04-24 10:17 ` [PATCH 12/23] ARM: dts: omap5-uevm.dts: add display nodes Tomi Valkeinen
2014-04-24 10:17   ` Tomi Valkeinen
2014-04-24 10:17   ` Tomi Valkeinen
2014-04-24 10:17 ` [PATCH 13/23] OMAPDSS: DSS & DISPC DT support for OMAP5 Tomi Valkeinen
2014-04-24 10:17   ` Tomi Valkeinen
2014-04-24 10:17   ` Tomi Valkeinen
2014-04-24 10:17 ` [PATCH 14/23] OMAPDSS: features: fix OMAP5 features Tomi Valkeinen
2014-04-24 10:17   ` Tomi Valkeinen
2014-04-24 10:17   ` Tomi Valkeinen
2014-04-24 10:17 ` [PATCH 15/23] OMAPDSS: DPI: fix LCD3 DSI source Tomi Valkeinen
2014-04-24 10:17   ` Tomi Valkeinen
2014-04-24 10:17   ` Tomi Valkeinen
2014-04-24 10:17 ` [PATCH 16/23] OMAPDSS: DSI: Add OMAP5 DSI module IDs Tomi Valkeinen
2014-04-24 10:17   ` Tomi Valkeinen
2014-04-24 10:17   ` Tomi Valkeinen
2014-04-24 10:17 ` [PATCH 17/23] OMAPDSS: HDMI: improve Makefile Tomi Valkeinen
2014-04-24 10:17   ` Tomi Valkeinen
2014-04-24 10:17   ` Tomi Valkeinen
2014-04-24 10:17 ` [PATCH 18/23] OMAPDSS: HDMI: move irq & phy pwr handling Tomi Valkeinen
2014-04-24 10:17   ` Tomi Valkeinen
2014-04-24 10:17   ` Tomi Valkeinen
2014-04-24 10:17 ` [PATCH 19/23] OMAPDSS: HDMI: support larger register offsets for OMAP5 HDMI core Tomi Valkeinen
2014-04-24 10:17   ` Tomi Valkeinen
2014-04-24 10:17   ` Tomi Valkeinen
2014-04-24 10:17 ` [PATCH 20/23] OMAPDSS: HDMI: PHY changes for OMAP5 Tomi Valkeinen
2014-04-24 10:17   ` Tomi Valkeinen
2014-04-24 10:17   ` Tomi Valkeinen
2014-04-24 10:17 ` [PATCH 21/23] OMAPDSS: HDMI: PLL " Tomi Valkeinen
2014-04-24 10:17   ` Tomi Valkeinen
2014-04-24 10:17   ` Tomi Valkeinen
2014-04-24 10:17 ` [PATCH 22/23] OMAPDSS: HDMI: Add OMAP5 HDMI support Tomi Valkeinen
2014-04-24 10:17   ` Tomi Valkeinen
2014-04-24 10:17   ` Tomi Valkeinen
2014-04-24 10:17 ` [PATCH 23/23] Doc/DT: Add OMAP5 DSS DT bindings Tomi Valkeinen
2014-04-24 10:17   ` Tomi Valkeinen
2014-04-24 10:17   ` Tomi Valkeinen

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20140429150529.GA27571@atomide.com \
    --to=tony@atomide.com \
    --cc=linux-arm-kernel@lists.infradead.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.