All of lore.kernel.org
 help / color / mirror / Atom feed
From: Tomasz Figa <tomasz.figa@gmail.com>
To: Thierry Reding <thierry.reding@gmail.com>
Cc: linux-arm-kernel@lists.infradead.org,
	linux-samsung-soc@vger.kernel.org, linux-pwm@vger.kernel.org,
	"Kukjin Kim" <kgene.kim@samsung.com>,
	"Arnd Bergmann" <arnd@arndb.de>,
	"Olof Johansson" <olof@lixom.net>,
	"Sylwester Nawrocki" <sylvester.nawrocki@gmail.com>,
	"Heiko Stübner" <heiko@sntech.de>,
	"Mark Brown" <broonie@kernel.org>,
	"Thomas Abraham" <thomas.abraham@linaro.org>
Subject: Re: [PATCH 08/15] pwm: Add new pwm-samsung driver
Date: Tue, 18 Jun 2013 23:42:37 +0200	[thread overview]
Message-ID: <1834122.aETH5FyPtO@flatron> (raw)
In-Reply-To: <20130618214023.GB1926@mithrandir>

On Tuesday 18 of June 2013 23:40:23 Thierry Reding wrote:
> On Tue, Jun 18, 2013 at 09:41:09PM +0200, Tomasz Figa wrote:
> > On Monday 17 of June 2013 22:29:11 Thierry Reding wrote:
> > > On Wed, Jun 05, 2013 at 11:18:13PM +0200, Tomasz Figa wrote:
> [...]
> 
> > > > +struct samsung_pwm_channel {
> > > > +	unsigned long period_ns;
> > > > +	unsigned long duty_ns;
> > > > +	unsigned long tin_ns;
> > > > +};
> > > > +
> > > > +struct samsung_pwm_chip {
> > > > +	struct pwm_chip chip;
> > > > +	struct samsung_pwm_variant variant;
> > > > +	struct samsung_pwm_channel channels[SAMSUNG_PWM_NUM];
> > > 
> > > The new driver for Renesas did something similar, but I want to
> > > discourage storing per-channel data within the chip structure.
> > > 
> > > The PWM framework provides a way to store this information along
> > > with
> > > the PWM device (see pwm_{set,get}_chip_data()).
> > 
> > OK, this looks good, but in my case is not really useful. I need to
> > access those channel data in my suspend/resume callbacks and
> > obviously I don't have access to any pwm_device there. Any
> > suggestions?
> 
> You do have access to the struct pwm_chip, and that already has an array
> of struct pwm_devices, so you could obtain the driver-specific data
> from those (see pwm_chip.pwms).

Well, if it's legal to access internals of pwm_chip from PWM drivers then 
there is no problem. Based on other subsystems, like regulators or clocks 
I have concluded that this structure should be dereferenced only inside 
PWM core.

Best regards,
Tomasz

WARNING: multiple messages have this Message-ID (diff)
From: tomasz.figa@gmail.com (Tomasz Figa)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH 08/15] pwm: Add new pwm-samsung driver
Date: Tue, 18 Jun 2013 23:42:37 +0200	[thread overview]
Message-ID: <1834122.aETH5FyPtO@flatron> (raw)
In-Reply-To: <20130618214023.GB1926@mithrandir>

On Tuesday 18 of June 2013 23:40:23 Thierry Reding wrote:
> On Tue, Jun 18, 2013 at 09:41:09PM +0200, Tomasz Figa wrote:
> > On Monday 17 of June 2013 22:29:11 Thierry Reding wrote:
> > > On Wed, Jun 05, 2013 at 11:18:13PM +0200, Tomasz Figa wrote:
> [...]
> 
> > > > +struct samsung_pwm_channel {
> > > > +	unsigned long period_ns;
> > > > +	unsigned long duty_ns;
> > > > +	unsigned long tin_ns;
> > > > +};
> > > > +
> > > > +struct samsung_pwm_chip {
> > > > +	struct pwm_chip chip;
> > > > +	struct samsung_pwm_variant variant;
> > > > +	struct samsung_pwm_channel channels[SAMSUNG_PWM_NUM];
> > > 
> > > The new driver for Renesas did something similar, but I want to
> > > discourage storing per-channel data within the chip structure.
> > > 
> > > The PWM framework provides a way to store this information along
> > > with
> > > the PWM device (see pwm_{set,get}_chip_data()).
> > 
> > OK, this looks good, but in my case is not really useful. I need to
> > access those channel data in my suspend/resume callbacks and
> > obviously I don't have access to any pwm_device there. Any
> > suggestions?
> 
> You do have access to the struct pwm_chip, and that already has an array
> of struct pwm_devices, so you could obtain the driver-specific data
> from those (see pwm_chip.pwms).

Well, if it's legal to access internals of pwm_chip from PWM drivers then 
there is no problem. Based on other subsystems, like regulators or clocks 
I have concluded that this structure should be dereferenced only inside 
PWM core.

Best regards,
Tomasz

  reply	other threads:[~2013-06-18 21:42 UTC|newest]

Thread overview: 105+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-06-05 21:18 [PATCH 00/15] Final Samsung PWM support cleanup Tomasz Figa
2013-06-05 21:18 ` Tomasz Figa
2013-06-05 21:18 ` [PATCH 01/15] ARM: SAMSUNG: Unify base address definitions of timer block Tomasz Figa
2013-06-05 21:18   ` Tomasz Figa
2013-06-05 21:18 ` [PATCH 02/15] ARM: SAMSUNG: Add new PWM platform device Tomasz Figa
2013-06-05 21:18   ` Tomasz Figa
2013-06-05 21:18 ` [PATCH 03/15] ARM: SAMSUNG: Set PWM platform data Tomasz Figa
2013-06-05 21:18   ` Tomasz Figa
2013-06-05 21:18 ` [PATCH 04/15] ARM: SAMSUNG: Move all platforms to new clocksource driver Tomasz Figa
2013-06-05 21:18   ` Tomasz Figa
2013-06-05 21:18 ` [PATCH 05/15] ARM: SAMSUNG: Remove old samsung-time driver Tomasz Figa
2013-06-05 21:18   ` Tomasz Figa
2013-06-05 21:18 ` [PATCH 06/15] ARM: SAMSUNG: Remove unused PWM timer IRQ chip code Tomasz Figa
2013-06-05 21:18   ` Tomasz Figa
2013-06-05 21:18 ` [PATCH 07/15] pwm: samsung: Rename to pwm-samsung-legacy Tomasz Figa
2013-06-05 21:18   ` Tomasz Figa
2013-06-05 21:18 ` [PATCH 08/15] pwm: Add new pwm-samsung driver Tomasz Figa
2013-06-05 21:18   ` Tomasz Figa
2013-06-13 20:14   ` Heiko Stübner
2013-06-13 20:14     ` Heiko Stübner
2013-06-13 20:18     ` Tomasz Figa
2013-06-13 20:18       ` Tomasz Figa
2013-06-16 17:19   ` Tomasz Figa
2013-06-16 17:19     ` Tomasz Figa
2013-06-16 20:45     ` Kukjin Kim
2013-06-16 20:45       ` Kukjin Kim
2013-06-17 20:29   ` Thierry Reding
2013-06-17 20:29     ` Thierry Reding
2013-06-17 20:50     ` Tomasz Figa
2013-06-17 20:50       ` Tomasz Figa
2013-06-18 22:17       ` Thierry Reding
2013-06-18 22:17         ` Thierry Reding
2013-06-18 22:45         ` Tomasz Figa
2013-06-18 22:45           ` Tomasz Figa
2013-06-19  9:43           ` Thierry Reding
2013-06-19  9:43             ` Thierry Reding
2013-06-19 10:23             ` Tomasz Figa
2013-06-19 10:23               ` Tomasz Figa
2013-06-24 17:52               ` Tomasz Figa
2013-06-24 17:52                 ` Tomasz Figa
2013-06-24 19:50                 ` Thierry Reding
2013-06-24 19:50                   ` Thierry Reding
2013-06-24 20:03                   ` Tomasz Figa
2013-06-24 20:03                     ` Tomasz Figa
2013-06-24 20:28                     ` Thierry Reding
2013-06-24 20:28                       ` Thierry Reding
2013-06-24 20:55                     ` Arnd Bergmann
2013-06-24 20:55                       ` Arnd Bergmann
2013-06-18 17:59     ` Tomasz Figa
2013-06-18 17:59       ` Tomasz Figa
2013-06-18 18:06       ` Kukjin Kim
2013-06-18 18:06         ` Kukjin Kim
2013-06-18 18:13         ` Tomasz Figa
2013-06-18 18:13           ` Tomasz Figa
2013-06-18 21:33           ` Thierry Reding
2013-06-18 21:33             ` Thierry Reding
2013-06-18 21:35             ` Tomasz Figa
2013-06-18 21:35               ` Tomasz Figa
2013-06-18 19:41     ` Tomasz Figa
2013-06-18 19:41       ` Tomasz Figa
2013-06-18 21:40       ` Thierry Reding
2013-06-18 21:40         ` Thierry Reding
2013-06-18 21:42         ` Tomasz Figa [this message]
2013-06-18 21:42           ` Tomasz Figa
2013-06-18 22:20           ` Thierry Reding
2013-06-18 22:20             ` Thierry Reding
2013-06-05 21:18 ` [PATCH 09/15] ARM: SAMSUNG: Rework private data handling in dev-backlight Tomasz Figa
2013-06-05 21:18   ` Tomasz Figa
2013-06-05 21:18 ` [PATCH 10/15] ARM: SAMSUNG: Modify board files to use new PWM platform device Tomasz Figa
2013-06-05 21:18   ` Tomasz Figa
2013-06-05 21:18 ` [PATCH 11/15] pwm: Remove superseded pwm-samsung-legacy driver Tomasz Figa
2013-06-05 21:18   ` Tomasz Figa
2013-06-05 21:18 ` [PATCH 12/15] ARM: SAMSUNG: Remove old PWM timer platform devices Tomasz Figa
2013-06-05 21:18   ` Tomasz Figa
2013-06-05 21:18 ` [PATCH 13/15] ARM: SAMSUNG: Remove pwm-clock infrastructure Tomasz Figa
2013-06-05 21:18   ` Tomasz Figa
2013-06-05 21:18 ` [PATCH 14/15] ARM: SAMSUNG: Remove remaining uses of plat/regs-timer.h header Tomasz Figa
2013-06-05 21:18   ` Tomasz Figa
2013-06-13 20:24   ` Heiko Stübner
2013-06-13 20:24     ` Heiko Stübner
2013-06-13 20:38     ` Tomasz Figa
2013-06-13 20:38       ` Tomasz Figa
2013-06-05 21:18 ` [PATCH 15/15] ARM: SAMSUNG: Remove " Tomasz Figa
2013-06-05 21:18   ` Tomasz Figa
2013-06-12 21:48 ` [PATCH 00/15] Final Samsung PWM support cleanup Tomasz Figa
2013-06-12 21:48   ` Tomasz Figa
2013-06-12 23:00   ` Olof Johansson
2013-06-12 23:00     ` Olof Johansson
2013-06-12 23:13     ` Tomasz Figa
2013-06-12 23:13       ` Tomasz Figa
2013-06-12 23:38       ` Heiko Stübner
2013-06-12 23:38         ` Heiko Stübner
2013-06-12 23:52         ` Sylwester Nawrocki
2013-06-12 23:52           ` Sylwester Nawrocki
2013-06-12 23:52           ` Sylwester Nawrocki
2013-06-13  9:07           ` Tomasz Figa
2013-06-13  9:07             ` Tomasz Figa
2013-06-13 20:17             ` Heiko Stübner
2013-06-13 20:17               ` Heiko Stübner
2013-06-13 20:17               ` Heiko Stübner
2013-06-13 22:27               ` Heiko Stübner
2013-06-13 22:27                 ` Heiko Stübner
2013-06-13 22:27                 ` Heiko Stübner
2013-06-13  0:25     ` Kukjin Kim
2013-06-13  0:25       ` Kukjin Kim

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=1834122.aETH5FyPtO@flatron \
    --to=tomasz.figa@gmail.com \
    --cc=arnd@arndb.de \
    --cc=broonie@kernel.org \
    --cc=heiko@sntech.de \
    --cc=kgene.kim@samsung.com \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-pwm@vger.kernel.org \
    --cc=linux-samsung-soc@vger.kernel.org \
    --cc=olof@lixom.net \
    --cc=sylvester.nawrocki@gmail.com \
    --cc=thierry.reding@gmail.com \
    --cc=thomas.abraham@linaro.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.