All of lore.kernel.org
 help / color / mirror / Atom feed
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, 09 Jan 2014 13:08:31 +0000	[thread overview]
Message-ID: <1389272911.23721.49.camel@hornet> (raw)
In-Reply-To: <20131224124538.GZ30815@sirena.org.uk>

On Tue, 2013-12-24 at 12:45 +0000, Mark Brown wrote:
> I'd note that I wasn't CCed on most of this series so I'm not entirely
> sure what it's trying to do.

Apologies. The series is quite long and I didn't want to bother too many
people with mostly irrelevant changes. Will copy you on the whole thing
next time.

> > Bus-less maps (ones with reg_read and reg_write functions
> > defined in regmap_config) were given the context passed
> > in regmap_init(), but it was still called "bus_context".
> > 
> > This patch formalises this aspect by renaming it to simple
> > "context" and adds the missing link, free_context function
> > in regmap_config, which allows bus-less maps to use the
> > context in classic way.
> 
> This should be two patches, one patch to do the rename and one to add
> the operation.  

Sure, will do.

> The obvious question here is why is this callback useful
> - what is being allocated in a regmap specific context that needs to be
> lifetime managed separately to the thing doing the creation?  I can't
> see any obvious reason why this would ever get used.

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.

Does it make any sense?

Pawe?

WARNING: multiple messages have this Message-ID (diff)
From: Pawel Moll <pawel.moll@arm.com>
To: Mark Brown <broonie@kernel.org>
Cc: "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, 09 Jan 2014 13:08:31 +0000	[thread overview]
Message-ID: <1389272911.23721.49.camel@hornet> (raw)
In-Reply-To: <20131224124538.GZ30815@sirena.org.uk>

On Tue, 2013-12-24 at 12:45 +0000, Mark Brown wrote:
> I'd note that I wasn't CCed on most of this series so I'm not entirely
> sure what it's trying to do.

Apologies. The series is quite long and I didn't want to bother too many
people with mostly irrelevant changes. Will copy you on the whole thing
next time.

> > Bus-less maps (ones with reg_read and reg_write functions
> > defined in regmap_config) were given the context passed
> > in regmap_init(), but it was still called "bus_context".
> > 
> > This patch formalises this aspect by renaming it to simple
> > "context" and adds the missing link, free_context function
> > in regmap_config, which allows bus-less maps to use the
> > context in classic way.
> 
> This should be two patches, one patch to do the rename and one to add
> the operation.  

Sure, will do.

> The obvious question here is why is this callback useful
> - what is being allocated in a regmap specific context that needs to be
> lifetime managed separately to the thing doing the creation?  I can't
> see any obvious reason why this would ever get used.

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.

Does it make any sense?

Paweł


  reply	other threads:[~2014-01-09 13:08 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-5-git-send-email-pawel.moll@arm.com>
     [not found] ` < 1387815830-8794-7-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 [this message]
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
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=1389272911.23721.49.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.