From: Tony Lindgren <tony@atomide.com>
To: Balaji T K <balajitk@ti.com>
Cc: "Roger Quadros" <rogerq@ti.com>,
"Linus Walleij" <linus.walleij@linaro.org>,
"linux-arm-kernel@lists.infradead.org"
<linux-arm-kernel@lists.infradead.org>,
"devicetree@vger.kernel.org" <devicetree@vger.kernel.org>,
"Grygorii Strashko" <grygorii.strashko@ti.com>,
"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
"Peter Ujfalusi" <peter.ujfalusi@ti.com>,
"Haojian Zhuang" <haojian.zhuang@linaro.org>,
"Benoît Cousson" <bcousson@baylibre.com>,
Linux-OMAP <linux-omap@vger.kernel.org>
Subject: Re: [PATCH 4/6] pinctrl: single: Add support for wake-up interrupts
Date: Fri, 11 Oct 2013 08:48:05 -0700 [thread overview]
Message-ID: <20131011154804.GP29913@atomide.com> (raw)
In-Reply-To: <52581CA7.20606@ti.com>
* Balaji T K <balajitk@ti.com> [131011 08:51]:
> On Friday 11 October 2013 09:06 PM, Tony Lindgren wrote:
> >>>What the pin control driver should do is control the pins. Whether the registers
> >>>are spread out in the entire IO-memory does not matter. We did have one system
> >>>which placed the IO-muxing together with each peripheral (!) and I did
> >>>still want
> >>>that to be handled by a single pinctrl driver picking out windows to all these
> >>>IO-ranges.
> >>>
> >>>Things like the PRM which has (my guess) a gazillion registers related to its
> >>>deep-core SoC stuff should be handled by things like
> >>>drivers/mfd/syscon.c, which means it is dead simple for some other driver
> >>>using "just this one register" in that range to get a handle at it and poke it
> >>>using syscon_node_to_regmap() (just derference an ampersand ref)
> >>>syscon_regmap_lookup_by_compatible() (use a compatible string)
> >>>all returning a regmap * that you can use to poke these registers.
> >>
> >>The register handling is fine. But how do we deal with resource handling?
> >>e.g. the block that has the deep-core registers might need to be clocked or powered
> >>before the registers can be accessed.
> >
> >Right, that's the key issue here. The register access would have to be conditional
> >based on the hardware modules PM state. Otherwise we'll have hard to trace hangs
> >and oopses.
> >
> Hi Tony,
>
> How are the clocks/power state currently handled in case of omap4_pmx_core,
> omap4_pmx_wkup register access via pinctrl-single ?
It's currently always on during runtime and managed in for the whole SCM
by mach-omap2/control.c. Then there's a separate SCM register that triggers
the save and restore of the padconf registers in hardware for off-idle
along with other SCM related things, see the *_control_save/restore_context()
functions.
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 4/6] pinctrl: single: Add support for wake-up interrupts
Date: Fri, 11 Oct 2013 08:48:05 -0700 [thread overview]
Message-ID: <20131011154804.GP29913@atomide.com> (raw)
In-Reply-To: <52581CA7.20606@ti.com>
* Balaji T K <balajitk@ti.com> [131011 08:51]:
> On Friday 11 October 2013 09:06 PM, Tony Lindgren wrote:
> >>>What the pin control driver should do is control the pins. Whether the registers
> >>>are spread out in the entire IO-memory does not matter. We did have one system
> >>>which placed the IO-muxing together with each peripheral (!) and I did
> >>>still want
> >>>that to be handled by a single pinctrl driver picking out windows to all these
> >>>IO-ranges.
> >>>
> >>>Things like the PRM which has (my guess) a gazillion registers related to its
> >>>deep-core SoC stuff should be handled by things like
> >>>drivers/mfd/syscon.c, which means it is dead simple for some other driver
> >>>using "just this one register" in that range to get a handle at it and poke it
> >>>using syscon_node_to_regmap() (just derference an ampersand ref)
> >>>syscon_regmap_lookup_by_compatible() (use a compatible string)
> >>>all returning a regmap * that you can use to poke these registers.
> >>
> >>The register handling is fine. But how do we deal with resource handling?
> >>e.g. the block that has the deep-core registers might need to be clocked or powered
> >>before the registers can be accessed.
> >
> >Right, that's the key issue here. The register access would have to be conditional
> >based on the hardware modules PM state. Otherwise we'll have hard to trace hangs
> >and oopses.
> >
> Hi Tony,
>
> How are the clocks/power state currently handled in case of omap4_pmx_core,
> omap4_pmx_wkup register access via pinctrl-single ?
It's currently always on during runtime and managed in for the whole SCM
by mach-omap2/control.c. Then there's a separate SCM register that triggers
the save and restore of the padconf registers in hardware for off-idle
along with other SCM related things, see the *_control_save/restore_context()
functions.
Regards,
Tony
next prev parent reply other threads:[~2013-10-11 15:48 UTC|newest]
Thread overview: 105+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-10-03 5:42 [PATCH 0/6] add support for omap wake-up interrupts via pinctrl-single, take2 Tony Lindgren
2013-10-03 5:42 ` Tony Lindgren
2013-10-03 5:42 ` [PATCH 1/6] ARM: dts: Fix pinctrl mask for omap3 Tony Lindgren
2013-10-03 5:42 ` Tony Lindgren
2013-10-03 5:42 ` [PATCH 2/6] ARM: OMAP2+: Add support for auxdata Tony Lindgren
2013-10-03 5:42 ` Tony Lindgren
2013-10-03 5:42 ` [PATCH 3/6] pinctrl: single: Prepare for supporting SoC specific features Tony Lindgren
2013-10-03 5:42 ` Tony Lindgren
2013-10-07 17:35 ` Tony Lindgren
2013-10-07 17:35 ` Tony Lindgren
2013-10-08 11:55 ` Linus Walleij
2013-10-08 11:55 ` Linus Walleij
2013-10-08 16:21 ` Tony Lindgren
2013-10-08 16:21 ` Tony Lindgren
2013-10-09 5:03 ` Haojian Zhuang
2013-10-09 5:03 ` Haojian Zhuang
2013-10-09 13:43 ` Linus Walleij
2013-10-09 13:43 ` Linus Walleij
2013-10-09 15:10 ` Tony Lindgren
2013-10-09 15:10 ` Tony Lindgren
2013-10-10 15:35 ` Linus Walleij
2013-10-10 15:35 ` Linus Walleij
2013-10-10 22:41 ` Tony Lindgren
2013-10-10 22:41 ` Tony Lindgren
2013-10-03 5:42 ` [PATCH 4/6] pinctrl: single: Add support for wake-up interrupts Tony Lindgren
2013-10-03 5:42 ` Tony Lindgren
2013-10-03 5:42 ` Tony Lindgren
2013-10-03 17:50 ` Tony Lindgren
2013-10-03 17:50 ` Tony Lindgren
2013-10-03 17:50 ` Tony Lindgren
2013-10-08 12:10 ` Linus Walleij
2013-10-08 12:10 ` Linus Walleij
2013-10-08 16:05 ` Tony Lindgren
2013-10-08 16:05 ` Tony Lindgren
2013-10-10 13:24 ` Roger Quadros
2013-10-10 13:24 ` Roger Quadros
2013-10-10 13:24 ` Roger Quadros
[not found] ` <5256AA7F.8030005-l0cyMroinI0@public.gmane.org>
2013-10-10 14:04 ` Linus Walleij
2013-10-10 14:04 ` Linus Walleij
2013-10-10 14:04 ` Linus Walleij
[not found] ` <CACRpkdZx5+OCcQytkpjd7_nz4hw6VXoXOS0LByKgJ8_cQjbA4g-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2013-10-10 14:35 ` Roger Quadros
2013-10-10 14:35 ` Roger Quadros
2013-10-10 14:35 ` Roger Quadros
2013-10-10 15:32 ` Linus Walleij
2013-10-10 15:32 ` Linus Walleij
[not found] ` <CACRpkdY6NSR7gSc6=_nEr_BdTiEM0Mt9t4GoBSoP26ceVphDhA-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2013-10-10 16:15 ` Tony Lindgren
2013-10-10 16:15 ` Tony Lindgren
2013-10-10 16:15 ` Tony Lindgren
2013-10-10 16:00 ` Tony Lindgren
2013-10-10 16:00 ` Tony Lindgren
2013-10-10 16:11 ` Linus Walleij
2013-10-10 16:11 ` Linus Walleij
2013-10-10 16:20 ` Tony Lindgren
2013-10-10 16:20 ` Tony Lindgren
2013-10-11 8:00 ` Linus Walleij
2013-10-11 8:00 ` Linus Walleij
2013-10-11 8:56 ` Roger Quadros
2013-10-11 8:56 ` Roger Quadros
2013-10-11 8:56 ` Roger Quadros
2013-10-11 10:32 ` Linus Walleij
2013-10-11 10:32 ` Linus Walleij
2013-10-11 15:43 ` Tony Lindgren
2013-10-11 15:43 ` Tony Lindgren
2013-10-11 15:56 ` Linus Walleij
2013-10-11 15:56 ` Linus Walleij
2013-10-11 16:01 ` Tony Lindgren
2013-10-11 16:01 ` Tony Lindgren
2013-10-18 7:40 ` Balaji T K
2013-10-18 7:40 ` Balaji T K
2013-10-18 15:35 ` Tony Lindgren
2013-10-18 15:35 ` Tony Lindgren
2013-10-18 15:59 ` Balaji T K
2013-10-18 15:59 ` Balaji T K
2013-10-18 15:59 ` Balaji T K
[not found] ` <52615AD4.7040306-l0cyMroinI0@public.gmane.org>
2013-10-18 16:06 ` Tony Lindgren
2013-10-18 16:06 ` Tony Lindgren
2013-10-18 16:06 ` Tony Lindgren
2013-10-11 15:36 ` Tony Lindgren
2013-10-11 15:36 ` Tony Lindgren
2013-10-11 15:43 ` Balaji T K
2013-10-11 15:43 ` Balaji T K
2013-10-11 15:43 ` Balaji T K
2013-10-11 15:48 ` Tony Lindgren [this message]
2013-10-11 15:48 ` Tony Lindgren
2013-10-10 16:23 ` Tony Lindgren
2013-10-10 16:23 ` Tony Lindgren
2013-10-11 8:45 ` Roger Quadros
2013-10-11 8:45 ` Roger Quadros
2013-10-11 8:49 ` Roger Quadros
2013-10-11 8:49 ` Roger Quadros
2013-10-11 8:49 ` Roger Quadros
[not found] ` <5257BB8C.5080001-l0cyMroinI0@public.gmane.org>
2013-10-11 13:59 ` Roger Quadros
2013-10-11 13:59 ` Roger Quadros
2013-10-11 13:59 ` Roger Quadros
[not found] ` <52580438.4040002-l0cyMroinI0@public.gmane.org>
2013-10-11 15:18 ` Tony Lindgren
2013-10-11 15:18 ` Tony Lindgren
2013-10-11 15:18 ` Tony Lindgren
2013-10-03 5:42 ` [PATCH 5/6] pinctrl: single: Add support for auxdata Tony Lindgren
2013-10-03 5:42 ` Tony Lindgren
2013-10-03 5:42 ` [PATCH 6/6] ARM: OMAP: Move DT wake-up event handling over to use pinctrl-single-omap Tony Lindgren
2013-10-03 5:42 ` Tony Lindgren
2013-10-10 21:47 ` [PATCH 0/6] add support for omap wake-up interrupts via pinctrl-single, take2 Kevin Hilman
2013-10-10 21:47 ` Kevin Hilman
2013-10-10 22:47 ` Tony Lindgren
2013-10-10 22:47 ` Tony Lindgren
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=20131011154804.GP29913@atomide.com \
--to=tony@atomide.com \
--cc=balajitk@ti.com \
--cc=bcousson@baylibre.com \
--cc=devicetree@vger.kernel.org \
--cc=grygorii.strashko@ti.com \
--cc=haojian.zhuang@linaro.org \
--cc=linus.walleij@linaro.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-omap@vger.kernel.org \
--cc=peter.ujfalusi@ti.com \
--cc=rogerq@ti.com \
/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.