linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Michal Simek <michal.simek@xilinx.com>
To: Wolfram Sang <wsa+renesas@sang-engineering.com>,
	<linux-kernel@vger.kernel.org>
Cc: <linux-renesas-soc@vger.kernel.org>,
	<kernel-janitors@vger.kernel.org>, Hoan Tran <hotran@apm.com>,
	Linus Walleij <linus.walleij@linaro.org>,
	Grygorii Strashko <grygorii.strashko@ti.com>,
	Santosh Shilimkar <ssantosh@kernel.org>,
	Kevin Hilman <khilman@kernel.org>,
	Thierry Reding <thierry.reding@gmail.com>,
	Jonathan Hunter <jonathanh@nvidia.com>,
	Michal Simek <michal.simek@xilinx.com>,
	<linux-gpio@vger.kernel.org>, <linux-omap@vger.kernel.org>,
	<linux-tegra@vger.kernel.org>,
	<linux-arm-kernel@lists.infradead.org>
Subject: Re: [PATCH 10/61] gpio: simplify getting .drvdata
Date: Fri, 20 Apr 2018 09:20:00 +0200	[thread overview]
Message-ID: <34f4679f-d306-073b-eae0-28c9e8965780@xilinx.com> (raw)
In-Reply-To: <20180419140641.27926-11-wsa+renesas@sang-engineering.com>

Hi Wolfram,

On 19.4.2018 16:05, Wolfram Sang wrote:
> We should get drvdata from struct device directly. Going via
> platform_device is an unneeded step back and forth.
> 
> Signed-off-by: Wolfram Sang <wsa+renesas@sang-engineering.com>
> ---
> 
> Build tested only. buildbot is happy. Please apply individually.
> 
>  drivers/gpio/gpio-dwapb.c     |  6 ++----
>  drivers/gpio/gpio-lynxpoint.c |  3 +--
>  drivers/gpio/gpio-omap.c      | 12 ++++--------
>  drivers/gpio/gpio-tegra.c     |  6 ++----
>  drivers/gpio/gpio-zynq.c      |  6 ++----
>  5 files changed, 11 insertions(+), 22 deletions(-)
> 
> diff --git a/drivers/gpio/gpio-dwapb.c b/drivers/gpio/gpio-dwapb.c
> index 226977f78482..caaabb79e31f 100644
> --- a/drivers/gpio/gpio-dwapb.c
> +++ b/drivers/gpio/gpio-dwapb.c
> @@ -732,8 +732,7 @@ static int dwapb_gpio_remove(struct platform_device *pdev)
>  #ifdef CONFIG_PM_SLEEP
>  static int dwapb_gpio_suspend(struct device *dev)
>  {
> -	struct platform_device *pdev = to_platform_device(dev);
> -	struct dwapb_gpio *gpio = platform_get_drvdata(pdev);
> +	struct dwapb_gpio *gpio = dev_get_drvdata(dev);
>  	struct gpio_chip *gc	= &gpio->ports[0].gc;
>  	unsigned long flags;
>  	int i;
> @@ -777,8 +776,7 @@ static int dwapb_gpio_suspend(struct device *dev)
>  
>  static int dwapb_gpio_resume(struct device *dev)
>  {
> -	struct platform_device *pdev = to_platform_device(dev);
> -	struct dwapb_gpio *gpio = platform_get_drvdata(pdev);
> +	struct dwapb_gpio *gpio = dev_get_drvdata(dev);
>  	struct gpio_chip *gc	= &gpio->ports[0].gc;
>  	unsigned long flags;
>  	int i;
> diff --git a/drivers/gpio/gpio-lynxpoint.c b/drivers/gpio/gpio-lynxpoint.c
> index 1e557b10d73e..55fa33b7209f 100644
> --- a/drivers/gpio/gpio-lynxpoint.c
> +++ b/drivers/gpio/gpio-lynxpoint.c
> @@ -408,8 +408,7 @@ static int lp_gpio_runtime_resume(struct device *dev)
>  
>  static int lp_gpio_resume(struct device *dev)
>  {
> -	struct platform_device *pdev = to_platform_device(dev);
> -	struct lp_gpio *lg = platform_get_drvdata(pdev);
> +	struct lp_gpio *lg = dev_get_drvdata(dev);
>  	unsigned long reg;
>  	int i;
>  
> diff --git a/drivers/gpio/gpio-omap.c b/drivers/gpio/gpio-omap.c
> index 35971a341c40..b4f8a048a2a1 100644
> --- a/drivers/gpio/gpio-omap.c
> +++ b/drivers/gpio/gpio-omap.c
> @@ -856,8 +856,7 @@ static void omap_gpio_unmask_irq(struct irq_data *d)
>  
>  static int omap_mpuio_suspend_noirq(struct device *dev)
>  {
> -	struct platform_device *pdev = to_platform_device(dev);
> -	struct gpio_bank	*bank = platform_get_drvdata(pdev);
> +	struct gpio_bank	*bank = dev_get_drvdata(dev);
>  	void __iomem		*mask_reg = bank->base +
>  					OMAP_MPUIO_GPIO_MASKIT / bank->stride;
>  	unsigned long		flags;
> @@ -871,8 +870,7 @@ static int omap_mpuio_suspend_noirq(struct device *dev)
>  
>  static int omap_mpuio_resume_noirq(struct device *dev)
>  {
> -	struct platform_device *pdev = to_platform_device(dev);
> -	struct gpio_bank	*bank = platform_get_drvdata(pdev);
> +	struct gpio_bank	*bank = dev_get_drvdata(dev);
>  	void __iomem		*mask_reg = bank->base +
>  					OMAP_MPUIO_GPIO_MASKIT / bank->stride;
>  	unsigned long		flags;
> @@ -1284,8 +1282,7 @@ static void omap_gpio_restore_context(struct gpio_bank *bank);
>  
>  static int omap_gpio_runtime_suspend(struct device *dev)
>  {
> -	struct platform_device *pdev = to_platform_device(dev);
> -	struct gpio_bank *bank = platform_get_drvdata(pdev);
> +	struct gpio_bank *bank = dev_get_drvdata(dev);
>  	u32 l1 = 0, l2 = 0;
>  	unsigned long flags;
>  	u32 wake_low, wake_hi;
> @@ -1352,8 +1349,7 @@ static void omap_gpio_init_context(struct gpio_bank *p);
>  
>  static int omap_gpio_runtime_resume(struct device *dev)
>  {
> -	struct platform_device *pdev = to_platform_device(dev);
> -	struct gpio_bank *bank = platform_get_drvdata(pdev);
> +	struct gpio_bank *bank = dev_get_drvdata(dev);
>  	u32 l = 0, gen, gen0, gen1;
>  	unsigned long flags;
>  	int c;
> diff --git a/drivers/gpio/gpio-tegra.c b/drivers/gpio/gpio-tegra.c
> index 94396caaca75..04c963f03b68 100644
> --- a/drivers/gpio/gpio-tegra.c
> +++ b/drivers/gpio/gpio-tegra.c
> @@ -403,8 +403,7 @@ static void tegra_gpio_irq_handler(struct irq_desc *desc)
>  #ifdef CONFIG_PM_SLEEP
>  static int tegra_gpio_resume(struct device *dev)
>  {
> -	struct platform_device *pdev = to_platform_device(dev);
> -	struct tegra_gpio_info *tgi = platform_get_drvdata(pdev);
> +	struct tegra_gpio_info *tgi = dev_get_drvdata(dev);
>  	unsigned long flags;
>  	unsigned int b, p;
>  
> @@ -443,8 +442,7 @@ static int tegra_gpio_resume(struct device *dev)
>  
>  static int tegra_gpio_suspend(struct device *dev)
>  {
> -	struct platform_device *pdev = to_platform_device(dev);
> -	struct tegra_gpio_info *tgi = platform_get_drvdata(pdev);
> +	struct tegra_gpio_info *tgi = dev_get_drvdata(dev);
>  	unsigned long flags;
>  	unsigned int b, p;
>  
> diff --git a/drivers/gpio/gpio-zynq.c b/drivers/gpio/gpio-zynq.c
> index 75ee877e5cd5..49534241bb1e 100644
> --- a/drivers/gpio/gpio-zynq.c
> +++ b/drivers/gpio/gpio-zynq.c
> @@ -697,8 +697,7 @@ static int __maybe_unused zynq_gpio_resume(struct device *dev)
>  
>  static int __maybe_unused zynq_gpio_runtime_suspend(struct device *dev)
>  {
> -	struct platform_device *pdev = to_platform_device(dev);
> -	struct zynq_gpio *gpio = platform_get_drvdata(pdev);
> +	struct zynq_gpio *gpio = dev_get_drvdata(dev);
>  
>  	clk_disable_unprepare(gpio->clk);
>  
> @@ -707,8 +706,7 @@ static int __maybe_unused zynq_gpio_runtime_suspend(struct device *dev)
>  
>  static int __maybe_unused zynq_gpio_runtime_resume(struct device *dev)
>  {
> -	struct platform_device *pdev = to_platform_device(dev);
> -	struct zynq_gpio *gpio = platform_get_drvdata(pdev);
> +	struct zynq_gpio *gpio = dev_get_drvdata(dev);
>  
>  	return clk_prepare_enable(gpio->clk);
>  }
> 

There are two more occurences in this gpio-zynq driver.
zynq_gpio_resume, zynq_gpio_suspend. It wasn't detected because these
two lines are not together. But the same change can be applied for them too.

Thanks,
Michal

  parent reply	other threads:[~2018-04-20  7:20 UTC|newest]

Thread overview: 137+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-04-19 14:05 [greybus-dev] [PATCH 00/61] tree-wide: simplify getting .drvdata Wolfram Sang
2018-04-19 14:05 ` [PATCH 01/61] ARM: plat-samsung: " Wolfram Sang
2018-04-21 17:05   ` Krzysztof Kozlowski
2018-04-19 14:05 ` [PATCH 02/61] ata: " Wolfram Sang
2018-04-19 16:22   ` Sergei Shtylyov
2018-04-19 14:05 ` [PATCH 03/61] auxdisplay: " Wolfram Sang
2018-04-19 14:34   ` Miguel Ojeda
2018-04-27 13:30   ` Linus Walleij
2018-04-19 14:05 ` [PATCH 04/61] bus: " Wolfram Sang
2018-04-26 23:29   ` Florian Fainelli
2018-04-19 14:05 ` [PATCH 05/61] clk: samsung: " Wolfram Sang
2018-04-24  7:30   ` Chanwoo Choi
2018-04-25 12:49   ` Sylwester Nawrocki
     [not found]   ` <CGME20180515093219epcas1p28a5fa4be53b9ea0fd85e4726cf92f804@epcas1p2.samsung.com>
2018-05-15  9:32     ` Sylwester Nawrocki
2018-05-15 21:04       ` Stephen Boyd
2018-05-15 21:05   ` Stephen Boyd
2018-04-19 14:05 ` [PATCH 06/61] crypto: " Wolfram Sang
2018-04-20  6:07   ` Krzysztof Kozlowski
2018-04-28  8:24   ` Herbert Xu
2018-04-19 14:05 ` [PATCH 07/61] dma: " Wolfram Sang
2018-04-22  6:17   ` Vinod Koul
2018-04-22  9:14     ` Wolfram Sang
2018-04-19 14:05 ` [PATCH 08/61] dmaengine: dw: " Wolfram Sang
2018-04-20  4:21   ` Viresh Kumar
2018-04-22  6:22   ` Vinod Koul
2018-04-19 14:05 ` [PATCH 09/61] dmaengine: qcom: " Wolfram Sang
2018-04-19 15:16   ` Sinan Kaya
2018-04-22  6:21   ` Vinod Koul
2018-04-19 14:05 ` [PATCH 10/61] gpio: " Wolfram Sang
2018-04-19 15:14   ` Grygorii Strashko
2018-04-30  9:03     ` Linus Walleij
2018-04-30  9:12       ` Wolfram Sang
2018-04-30  9:29       ` Thierry Reding
2019-03-07 20:13         ` Adam Ford
2019-03-07 20:18           ` Wolfram Sang
2019-03-07 20:53             ` Enrico Weigelt, metux IT consult
2019-03-07 20:58               ` Wolfram Sang
2019-03-19 14:31                 ` Wolfram Sang
2018-04-20  7:20   ` Michal Simek [this message]
2018-04-21 16:23     ` Wolfram Sang
2018-04-23  6:04       ` Michal Simek
2018-04-19 14:05 ` [PATCH 11/61] gpu: drm: msm: " Wolfram Sang
2018-04-19 14:05 ` [PATCH 12/61] gpu: drm: msm: adreno: " Wolfram Sang
2018-04-19 14:05 ` [PATCH 13/61] gpu: drm: msm: disp: mdp5: " Wolfram Sang
2018-04-19 14:05 ` [PATCH 14/61] gpu: drm: msm: dsi: " Wolfram Sang
2018-04-19 14:05 ` [PATCH 15/61] gpu: drm: omapdrm: displays: " Wolfram Sang
2018-05-23  9:32   ` Tomi Valkeinen
2018-04-19 14:05 ` [PATCH 16/61] gpu: drm: vc4: " Wolfram Sang
2018-04-23 18:26   ` Eric Anholt
2018-04-19 14:05 ` [PATCH 17/61] hid: " Wolfram Sang
2018-04-19 14:05 ` [PATCH 18/61] iio: common: cros_ec_sensors: " Wolfram Sang
2018-04-21 16:07   ` Jonathan Cameron
2018-04-19 14:05 ` [PATCH 19/61] iio: common: hid-sensors: " Wolfram Sang
2018-04-21 16:09   ` Jonathan Cameron
2018-04-19 14:05 ` [PATCH 20/61] input: keyboard: " Wolfram Sang
2018-04-26 19:19   ` Dmitry Torokhov
2018-04-26 20:04     ` Wolfram Sang
2018-04-26 21:23       ` Dmitry Torokhov
2018-04-27 10:20         ` Wolfram Sang
2018-04-19 14:05 ` [PATCH 21/61] input: misc: " Wolfram Sang
2018-04-19 14:05 ` [PATCH 22/61] input: mouse: " Wolfram Sang
2018-04-19 14:05 ` [PATCH 23/61] input: touchscreen: " Wolfram Sang
2018-04-19 14:05 ` [PATCH 24/61] iommu: " Wolfram Sang
2018-05-03 13:19   ` Joerg Roedel
2018-04-19 14:05 ` [PATCH 25/61] media: platform: am437x: " Wolfram Sang
2018-04-19 14:05 ` [PATCH 26/61] media: platform: exynos4-is: " Wolfram Sang
     [not found]   ` <CGME20180515094754epcas2p2715cc9c6376ddbb5f400830ef41b514b@epcas2p2.samsung.com>
2018-05-15  9:47     ` Sylwester Nawrocki
2018-04-19 14:05 ` [PATCH 27/61] media: platform: s5p-mfc: " Wolfram Sang
     [not found]   ` <CGME20180515094647epcas1p49b3c5d47dcedd034aec9589aab473cc0@epcas1p4.samsung.com>
2018-05-15  9:46     ` Sylwester Nawrocki
2018-04-19 14:05 ` [PATCH 28/61] mmc: host: " Wolfram Sang
2018-04-20  7:10   ` Ulf Hansson
2018-04-19 14:05 ` [PATCH 29/61] mtd: devices: " Wolfram Sang
2018-04-21 19:35   ` Robert Jarzmik
2018-04-22 17:13   ` Boris Brezillon
2018-04-19 14:06 ` [PATCH 30/61] mtd: nand: onenand: " Wolfram Sang
2018-04-22 17:29   ` Boris Brezillon
2018-04-19 14:06 ` [PATCH 31/61] net: dsa: " Wolfram Sang
2018-04-27  0:22   ` Florian Fainelli
2018-04-19 14:06 ` [PATCH 32/61] net: ethernet: cadence: " Wolfram Sang
2018-04-19 14:06 ` [PATCH 33/61] net: ethernet: davicom: " Wolfram Sang
2018-04-19 14:06 ` [PATCH 34/61] net: ethernet: smsc: " Wolfram Sang
2018-04-19 14:06 ` [PATCH 35/61] net: ethernet: ti: " Wolfram Sang
2018-04-19 15:14   ` Grygorii Strashko
2018-04-19 14:06 ` [PATCH 36/61] net: ethernet: wiznet: " Wolfram Sang
2018-04-19 14:06 ` [PATCH 37/61] perf: " Wolfram Sang
2018-04-24 16:08   ` Will Deacon
2018-04-19 14:06 ` [PATCH 38/61] pinctrl: " Wolfram Sang
2018-04-19 14:06 ` [PATCH 39/61] pinctrl: intel: " Wolfram Sang
2018-04-19 14:06 ` [PATCH 40/61] platform: x86: " Wolfram Sang
2018-04-19 23:56   ` Darren Hart
2018-04-20  7:14     ` Wolfram Sang
2018-04-19 14:06 ` [PATCH 41/61] power: supply: " Wolfram Sang
2018-04-25 21:16   ` Sebastian Reichel
2018-04-19 14:06 ` [PATCH 42/61] ptp: " Wolfram Sang
2018-04-19 14:06 ` [PATCH 43/61] pwm: " Wolfram Sang
2018-04-20  8:17   ` Nicolas Ferre
2018-04-30  9:28   ` Thierry Reding
2018-04-19 14:06 ` [PATCH 44/61] rtc: " Wolfram Sang
2018-04-20  7:24   ` Michal Simek
2018-05-03 20:09   ` Alexandre Belloni
2018-04-19 14:06 ` [PATCH 45/61] slimbus: " Wolfram Sang
2018-04-19 14:06 ` [PATCH 46/61] spi: " Wolfram Sang
2018-04-20  7:24   ` Michal Simek
2018-04-20 17:05   ` Applied "spi: simplify getting .drvdata" to the spi tree Mark Brown
2018-04-19 14:06 ` [PATCH 47/61] staging: greybus: simplify getting .drvdata Wolfram Sang
2018-04-20  4:24   ` [greybus-dev] " Viresh Kumar
2018-04-20  7:23   ` Johan Hovold
2018-04-19 14:06 ` [PATCH 48/61] staging: iio: adc: " Wolfram Sang
2018-04-21 16:10   ` Jonathan Cameron
2018-04-19 14:06 ` [PATCH 49/61] staging: nvec: " Wolfram Sang
2018-04-20  8:45   ` Marc Dietrich
2018-04-19 14:06 ` [PATCH 50/61] thermal: " Wolfram Sang
2018-05-02  8:52   ` Shawn Guo
2018-05-03 12:23   ` Heiko Stuebner
2018-04-19 14:06 ` [PATCH 51/61] thermal: int340x_thermal: " Wolfram Sang
2018-04-19 14:06 ` [PATCH 52/61] thermal: st: " Wolfram Sang
2018-04-19 14:06 ` [PATCH 53/61] tty: serial: " Wolfram Sang
2018-04-19 16:23   ` Uwe Kleine-König
2018-04-20  7:23   ` Michal Simek
2018-04-20  8:46   ` Patrice CHOTARD
2018-04-19 14:06 ` [PATCH 54/61] uio: " Wolfram Sang
2018-04-19 14:06 ` [PATCH 55/61] usb: mtu3: " Wolfram Sang
2018-04-20  7:46   ` Chunfeng Yun
2018-04-19 14:06 ` [PATCH 56/61] usb: phy: " Wolfram Sang
2018-04-19 14:06 ` [PATCH 57/61] video: fbdev: " Wolfram Sang
2018-04-24 15:59   ` Bartlomiej Zolnierkiewicz
2018-04-19 14:06 ` [PATCH 58/61] video: fbdev: omap2: omapfb: displays: " Wolfram Sang
2018-04-24 16:02   ` Bartlomiej Zolnierkiewicz
2018-04-19 14:06 ` [PATCH 59/61] watchdog: " Wolfram Sang
2018-04-19 20:06   ` Guenter Roeck
2018-04-20  7:23   ` Michal Simek
2018-04-19 14:06 ` [PATCH 60/61] net: dsa: " Wolfram Sang
2018-04-19 14:06 ` [PATCH 61/61] ASoC: atmel: " Wolfram Sang
2018-04-20  8:06   ` Nicolas Ferre
2018-04-20 17:04   ` Applied "ASoC: atmel: simplify getting .drvdata" to the asoc tree Mark Brown
2018-04-19 22:23 ` [PATCH 00/61] tree-wide: simplify getting .drvdata Stephen Boyd
2018-04-20  7:15   ` Wolfram Sang

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=34f4679f-d306-073b-eae0-28c9e8965780@xilinx.com \
    --to=michal.simek@xilinx.com \
    --cc=grygorii.strashko@ti.com \
    --cc=hotran@apm.com \
    --cc=jonathanh@nvidia.com \
    --cc=kernel-janitors@vger.kernel.org \
    --cc=khilman@kernel.org \
    --cc=linus.walleij@linaro.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-gpio@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-omap@vger.kernel.org \
    --cc=linux-renesas-soc@vger.kernel.org \
    --cc=linux-tegra@vger.kernel.org \
    --cc=ssantosh@kernel.org \
    --cc=thierry.reding@gmail.com \
    --cc=wsa+renesas@sang-engineering.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).