From: pawel.moll@arm.com (Pawel Moll)
To: linux-arm-kernel@lists.infradead.org
Subject: [RFC 06/18] regmap: Formalise use of non-bus context
Date: Thu, 16 Jan 2014 17:20:13 +0000 [thread overview]
Message-ID: <1389892813.3496.82.camel@hornet> (raw)
In-Reply-To: <20140116170954.C3CBCC40973@trevor.secretlab.ca>
On Thu, 2014-01-16 at 17:09 +0000, Grant Likely wrote:
> > First of all, it's just a generalization of the free_context already
> > existing in regmap_bus (and used by regmap-mmio). And in case of this
> > series it is being used to release extra resource added allocated for a
> > "busless" regmap_config. Briefly, I'm using devm_regmap_init() to
> > "attach" a custom regmap configuration to a device when it is being
> > created (which is then dev_get_regmap()-ed in the driver, as you saw in
> > the regulator patch) and its context is a pointer to kzallocated data.
> > free_context is used to release it when devm resource is being removed.
>
> Have you thought through all the implications here? What you've
> described effectively changes the devm model. devm operates under the
> assumption that devm data only exists between probe() and remove() time.
> If you 'preload' devm data then the preloaded data will get discarded at
> remove() time which breaks if the driver is remove and probed again at
> runtime.
Uh. Right, you're correct, I've missed that (obvious) fact :-(
I will get the drivers back to "vexpress_regmap_init()" model or try to
find a way of "attaching" a regmap pointer(s?) to a struct device. If it
makes sense at all...
Pawe?
WARNING: multiple messages have this Message-ID (diff)
From: Pawel Moll <pawel.moll@arm.com>
To: Grant Likely <grant.likely@secretlab.ca>
Cc: Mark Brown <broonie@kernel.org>,
"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
"linux-arm-kernel@lists.infradead.org"
<linux-arm-kernel@lists.infradead.org>,
Samuel Ortiz <sameo@linux.intel.com>,
Arnd Bergmann <arnd@arndb.de>, Jon Medhurst <tixy@linaro.org>,
"arm@kernel.org" <arm@kernel.org>,
Olof Johansson <olof@lixom.net>,
Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Subject: Re: [RFC 06/18] regmap: Formalise use of non-bus context
Date: Thu, 16 Jan 2014 17:20:13 +0000 [thread overview]
Message-ID: <1389892813.3496.82.camel@hornet> (raw)
In-Reply-To: <20140116170954.C3CBCC40973@trevor.secretlab.ca>
On Thu, 2014-01-16 at 17:09 +0000, Grant Likely wrote:
> > First of all, it's just a generalization of the free_context already
> > existing in regmap_bus (and used by regmap-mmio). And in case of this
> > series it is being used to release extra resource added allocated for a
> > "busless" regmap_config. Briefly, I'm using devm_regmap_init() to
> > "attach" a custom regmap configuration to a device when it is being
> > created (which is then dev_get_regmap()-ed in the driver, as you saw in
> > the regulator patch) and its context is a pointer to kzallocated data.
> > free_context is used to release it when devm resource is being removed.
>
> Have you thought through all the implications here? What you've
> described effectively changes the devm model. devm operates under the
> assumption that devm data only exists between probe() and remove() time.
> If you 'preload' devm data then the preloaded data will get discarded at
> remove() time which breaks if the driver is remove and probed again at
> runtime.
Uh. Right, you're correct, I've missed that (obvious) fact :-(
I will get the drivers back to "vexpress_regmap_init()" model or try to
find a way of "attaching" a regmap pointer(s?) to a struct device. If it
makes sense at all...
Paweł
next prev parent reply other threads:[~2014-01-16 17:20 UTC|newest]
Thread overview: 82+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-12-23 16:23 [RFC 00/18] Versatile Express config rework Pawel Moll
2013-12-23 16:23 ` Pawel Moll
[not found] ` < 1387815830-8794-7-git-send-email-pawel.moll@arm.com>
[not found] ` < 1387815830-8794-5-git-send-email-pawel.moll@arm.com>
2013-12-23 16:23 ` [RFC 01/18] mfd: syscon: Consider platform data a regmap config name Pawel Moll
2014-01-06 9:48 ` Lee Jones
2014-01-06 9:48 ` Lee Jones
2014-01-06 10:20 ` Lee Jones
2014-01-06 10:20 ` Lee Jones
2013-12-23 16:23 ` [RFC 02/18] power/reset: vexpress: Use sched_clock as the time source Pawel Moll
2013-12-23 19:28 ` John Stultz
2013-12-23 19:28 ` John Stultz
2014-01-08 16:01 ` Pawel Moll
2014-01-08 16:01 ` Pawel Moll
2013-12-23 16:23 ` [RFC 03/18] GPIO: gpio-generic: Add label to platform data Pawel Moll
2013-12-23 17:26 ` Linus Walleij
2013-12-23 17:26 ` Linus Walleij
2014-01-08 15:57 ` Pawel Moll
2014-01-08 15:57 ` Pawel Moll
2014-01-14 10:30 ` Linus Walleij
2014-01-14 10:30 ` Linus Walleij
2014-01-14 10:44 ` Pawel Moll
2014-01-14 10:44 ` Pawel Moll
[not found] ` <1387815830-8794-1-git-send-email-pawel.moll-5wv7dgnIgG8@public.gmane.org>
2013-12-23 16:23 ` [RFC 04/18] driver core & of: Mark of_nodes of added device as populated Pawel Moll
2013-12-23 16:23 ` Pawel Moll
2014-01-08 17:28 ` Rob Herring
2014-01-08 17:28 ` Rob Herring
2014-01-16 17:03 ` Grant Likely
2014-01-16 17:03 ` Grant Likely
2014-01-16 17:03 ` Grant Likely
2013-12-23 16:23 ` [RFC 05/18] driver core: Do not WARN when devres list is not empty at probe time Pawel Moll
2013-12-23 16:23 ` Pawel Moll
2013-12-23 16:23 ` [RFC 06/18] regmap: Formalise use of non-bus context Pawel Moll
2013-12-24 12:45 ` Mark Brown
2013-12-24 12:45 ` Mark Brown
2014-01-09 13:08 ` Pawel Moll
2014-01-09 13:08 ` Pawel Moll
2014-01-09 13:34 ` Mark Brown
2014-01-09 13:34 ` Mark Brown
2014-01-09 15:47 ` Pawel Moll
2014-01-09 15:47 ` Pawel Moll
2014-01-16 17:09 ` Grant Likely
2014-01-16 17:09 ` Grant Likely
2014-01-16 17:20 ` Pawel Moll [this message]
2014-01-16 17:20 ` Pawel Moll
2013-12-23 16:23 ` [RFC 07/18] regmap: debugfs: Always create "registers" & "access" files Pawel Moll
2013-12-24 12:19 ` Mark Brown
2013-12-24 12:19 ` Mark Brown
2014-01-08 17:31 ` Pawel Moll
2014-01-08 17:31 ` Pawel Moll
2014-01-08 18:00 ` Mark Brown
2014-01-08 18:00 ` Mark Brown
2013-12-23 16:23 ` [lm-sensors] [RFC 08/18] hwmon: vexpress: Use regmap instead of custom interface Pawel Moll
2013-12-23 16:23 ` Pawel Moll
2013-12-23 17:31 ` [lm-sensors] " Guenter Roeck
2013-12-23 17:31 ` Guenter Roeck
2013-12-23 17:31 ` Guenter Roeck
2014-01-08 15:57 ` [lm-sensors] " Pawel Moll
2014-01-08 15:57 ` Pawel Moll
2014-01-08 15:57 ` Pawel Moll
2013-12-23 16:23 ` [RFC 09/18] power/reset: " Pawel Moll
2013-12-23 16:23 ` [RFC 10/18] regulator: " Pawel Moll
2013-12-24 12:24 ` Mark Brown
2013-12-24 12:24 ` Mark Brown
2014-01-08 18:25 ` Pawel Moll
2014-01-08 18:25 ` Pawel Moll
2014-01-09 13:35 ` Mark Brown
2014-01-09 13:35 ` Mark Brown
2013-12-23 16:23 ` [RFC 11/18] clocksource: Sched clock source for Versatile Express Pawel Moll
2013-12-23 16:23 ` [RFC 12/18] clk: versatile: Split config options for sp810 and vexpress_osc Pawel Moll
2013-12-23 20:05 ` Mike Turquette
2013-12-23 20:05 ` Mike Turquette
2014-01-08 16:06 ` Pawel Moll
2014-01-08 16:06 ` Pawel Moll
2013-12-23 16:23 ` [RFC 13/18] clk: versatile: Use regmap instead of custom interface Pawel Moll
2013-12-23 16:23 ` [RFC 14/18] ARM: vexpress: remove redundant vexpress_dt_cpus_num to get cpu count Pawel Moll
2013-12-23 16:23 ` [RFC 15/18] ARM: vexpress: Simplify SMP operations for DT-powered system Pawel Moll
2013-12-23 16:23 ` [RFC 16/18] bus: Versatile Express configuration bus Pawel Moll
2013-12-23 16:23 ` [RFC 17/18] misc: Versatile Express System Config interface driver Pawel Moll
2013-12-23 16:23 ` [RFC 18/18] mfd: vexpress: Split sysreg functions into MFD cells Pawel Moll
2014-01-06 10:40 ` Lee Jones
2014-01-06 10:40 ` Lee Jones
2014-01-08 16:17 ` Pawel Moll
2014-01-08 16:17 ` Pawel Moll
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=1389892813.3496.82.camel@hornet \
--to=pawel.moll@arm.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.