All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 00/15] make more driver use devm_of_platform_populate()
@ 2017-05-29 15:45 ` Benjamin Gaignard
  0 siblings, 0 replies; 60+ messages in thread
From: Benjamin Gaignard @ 2017-05-29 15:45 UTC (permalink / raw)
  Cc: alsa-devel, Olivier Moysan, Sylwester Nawrocki, Fabrice Gasnier,
	dri-devel, Liam Girdwood, Lee Jones, linux-samsung-soc,
	Kyungmin Park, Krzysztof Kozlowski, Javier Martinez Canillas,
	Tony Lindgren, Kukjin Kim, linux-media, Alexandre Torgue,
	linux-arm-msm, Mauro Carvalho Chehab, Mark Brown,
	Jaroslav Kysela, linux-arm-kernel, freedreno, Takashi Iwai,
	linux-iio, linux-kernel

Number of calls to of_platform_populate() aren't unbalanced by a call to
of_platform_depopulate() that could generate issue will loading/unloading
the drivers. Make those drivers use devm_of_platform_populate() fix the problem
without need to add remove function.

In some case replacing of_platform_populate() by devm_of_platform_populate()
allow to delete driver remove function and save some lines of code.

This series of patches based on v4.12-rc3 tag.

CC: Alexandre Torgue <alexandre.torgue@st.com>
CC: David Airlie <airlied@linux.ie>
CC: Fabrice Gasnier <fabrice.gasnier@st.com>
CC: Hartmut Knaack <knaack.h@gmx.de>
CC: Jaroslav Kysela <perex@perex.cz>
CC: Javier Martinez Canillas <javier@osg.samsung.com>
CC: Jonathan Cameron <jic23@kernel.org>
CC: Krzysztof Kozlowski <krzk@kernel.org>
CC: Kukjin Kim <kgene@kernel.org>
CC: Kyungmin Park <kyungmin.park@samsung.com>
CC: Lars-Peter Clausen <lars@metafoo.de>
CC: Lee Jones <lee.jones@linaro.org>
CC: Liam Girdwood <lgirdwood@gmail.com>
CC: Mark Brown <broonie@kernel.org>
CC: Mauro Carvalho Chehab <mchehab@kernel.org>
CC: Olivier Moysan <olivier.moysan@st.com>
CC: Rob Clark <robdclark@gmail.com>
CC: Shawn Guo <shawnguo@kernel.org>
CC: Sylwester Nawrocki <s.nawrocki@samsung.com>
CC: Takashi Iwai <tiwai@suse.com>
CC: Tony Lindgren <tony@atomide.com>

CC: linux-iio@vger.kernel.org
CC: linux-arm-kernel@lists.infradead.org
CC: linux-kernel@vger.kernel.org
CC: dri-devel@lists.freedesktop.org
CC: linux-arm-msm@vger.kernel.org
CC: freedreno@lists.freedesktop.org
CC: linux-samsung-soc@vger.kernel.org
CC: alsa-devel@alsa-project.org
CC: linux-media@vger.kernel.org

Benjamin Gaignard (15):
  iio: adc: stm32: use devm_of_platform_populate()
  iio: dac: stm32: use devm_of_platform_populate()
  drm: zte: use devm_of_platform_populate()
  drm: msm: use devm_of_platform_populate()
  mfd: stm32-timers: use devm_of_platform_populate
  mfd: atmel: use devm_of_platform_populate()
  mfd: cros_ec: use devm_of_platform_populate()
  mfd: exynos: use devm_of_platform_populate()
  mfd: fsl-imx25: use devm_of_platform_populate()
  mfd: motorola-cpcap: use devm_of_platform_populate()
  mfd: palmas: use devm_of_platform_populate()
  mfd: qcom-spmi-pmic: use devm_of_platform_populate()
  mfd: smsc-ece: use devm_of_platform_populate()
  sound: stm32: use devm_of_platform_populate()
  media: exynos4-is: use devm_of_platform_populate()

 drivers/gpu/drm/msm/msm_drv.c               | 10 ++--------
 drivers/gpu/drm/zte/zx_drm_drv.c            |  2 +-
 drivers/iio/adc/stm32-adc-core.c            |  4 +---
 drivers/iio/dac/stm32-dac-core.c            |  3 +--
 drivers/media/platform/exynos4-is/fimc-is.c |  7 ++-----
 drivers/mfd/atmel-flexcom.c                 |  2 +-
 drivers/mfd/cros_ec.c                       |  2 +-
 drivers/mfd/exynos-lpass.c                  |  2 +-
 drivers/mfd/fsl-imx25-tsadc.c               |  5 +----
 drivers/mfd/motorola-cpcap.c                | 13 +------------
 drivers/mfd/palmas.c                        |  2 +-
 drivers/mfd/qcom-spmi-pmic.c                |  9 +--------
 drivers/mfd/smsc-ece1099.c                  |  3 +--
 drivers/mfd/stm32-timers.c                  | 10 +---------
 sound/soc/stm/stm32_sai.c                   | 11 +----------
 15 files changed, 17 insertions(+), 68 deletions(-)

-- 
1.9.1

_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

^ permalink raw reply	[flat|nested] 60+ messages in thread

* [PATCH 00/15] make more driver use devm_of_platform_populate()
@ 2017-05-29 15:45 ` Benjamin Gaignard
  0 siblings, 0 replies; 60+ messages in thread
From: Benjamin Gaignard @ 2017-05-29 15:45 UTC (permalink / raw)
  Cc: Benjamin Gaignard, Alexandre Torgue, David Airlie,
	Fabrice Gasnier, Hartmut Knaack, Jaroslav Kysela,
	Javier Martinez Canillas, Jonathan Cameron, Krzysztof Kozlowski,
	Kukjin Kim, Kyungmin Park, Lars-Peter Clausen, Lee Jones,
	Liam Girdwood, Mark Brown, Mauro Carvalho Chehab, Olivier Moysan,
	Rob Clark, Shawn Guo, Sylwester Nawrocki, Takashi Iwai,
	Tony Lindgren, linux-iio, linux-arm-kernel, linux-kernel,
	dri-devel, linux-arm-msm, freedreno, linux-samsung-soc,
	alsa-devel, linux-media

Number of calls to of_platform_populate() aren't unbalanced by a call to
of_platform_depopulate() that could generate issue will loading/unloading
the drivers. Make those drivers use devm_of_platform_populate() fix the problem
without need to add remove function.

In some case replacing of_platform_populate() by devm_of_platform_populate()
allow to delete driver remove function and save some lines of code.

This series of patches based on v4.12-rc3 tag.

CC: Alexandre Torgue <alexandre.torgue@st.com>
CC: David Airlie <airlied@linux.ie>
CC: Fabrice Gasnier <fabrice.gasnier@st.com>
CC: Hartmut Knaack <knaack.h@gmx.de>
CC: Jaroslav Kysela <perex@perex.cz>
CC: Javier Martinez Canillas <javier@osg.samsung.com>
CC: Jonathan Cameron <jic23@kernel.org>
CC: Krzysztof Kozlowski <krzk@kernel.org>
CC: Kukjin Kim <kgene@kernel.org>
CC: Kyungmin Park <kyungmin.park@samsung.com>
CC: Lars-Peter Clausen <lars@metafoo.de>
CC: Lee Jones <lee.jones@linaro.org>
CC: Liam Girdwood <lgirdwood@gmail.com>
CC: Mark Brown <broonie@kernel.org>
CC: Mauro Carvalho Chehab <mchehab@kernel.org>
CC: Olivier Moysan <olivier.moysan@st.com>
CC: Rob Clark <robdclark@gmail.com>
CC: Shawn Guo <shawnguo@kernel.org>
CC: Sylwester Nawrocki <s.nawrocki@samsung.com>
CC: Takashi Iwai <tiwai@suse.com>
CC: Tony Lindgren <tony@atomide.com>

CC: linux-iio@vger.kernel.org
CC: linux-arm-kernel@lists.infradead.org
CC: linux-kernel@vger.kernel.org
CC: dri-devel@lists.freedesktop.org
CC: linux-arm-msm@vger.kernel.org
CC: freedreno@lists.freedesktop.org
CC: linux-samsung-soc@vger.kernel.org
CC: alsa-devel@alsa-project.org
CC: linux-media@vger.kernel.org

Benjamin Gaignard (15):
  iio: adc: stm32: use devm_of_platform_populate()
  iio: dac: stm32: use devm_of_platform_populate()
  drm: zte: use devm_of_platform_populate()
  drm: msm: use devm_of_platform_populate()
  mfd: stm32-timers: use devm_of_platform_populate
  mfd: atmel: use devm_of_platform_populate()
  mfd: cros_ec: use devm_of_platform_populate()
  mfd: exynos: use devm_of_platform_populate()
  mfd: fsl-imx25: use devm_of_platform_populate()
  mfd: motorola-cpcap: use devm_of_platform_populate()
  mfd: palmas: use devm_of_platform_populate()
  mfd: qcom-spmi-pmic: use devm_of_platform_populate()
  mfd: smsc-ece: use devm_of_platform_populate()
  sound: stm32: use devm_of_platform_populate()
  media: exynos4-is: use devm_of_platform_populate()

 drivers/gpu/drm/msm/msm_drv.c               | 10 ++--------
 drivers/gpu/drm/zte/zx_drm_drv.c            |  2 +-
 drivers/iio/adc/stm32-adc-core.c            |  4 +---
 drivers/iio/dac/stm32-dac-core.c            |  3 +--
 drivers/media/platform/exynos4-is/fimc-is.c |  7 ++-----
 drivers/mfd/atmel-flexcom.c                 |  2 +-
 drivers/mfd/cros_ec.c                       |  2 +-
 drivers/mfd/exynos-lpass.c                  |  2 +-
 drivers/mfd/fsl-imx25-tsadc.c               |  5 +----
 drivers/mfd/motorola-cpcap.c                | 13 +------------
 drivers/mfd/palmas.c                        |  2 +-
 drivers/mfd/qcom-spmi-pmic.c                |  9 +--------
 drivers/mfd/smsc-ece1099.c                  |  3 +--
 drivers/mfd/stm32-timers.c                  | 10 +---------
 sound/soc/stm/stm32_sai.c                   | 11 +----------
 15 files changed, 17 insertions(+), 68 deletions(-)

-- 
1.9.1

^ permalink raw reply	[flat|nested] 60+ messages in thread

* [PATCH 00/15] make more driver use devm_of_platform_populate()
@ 2017-05-29 15:45 ` Benjamin Gaignard
  0 siblings, 0 replies; 60+ messages in thread
From: Benjamin Gaignard @ 2017-05-29 15:45 UTC (permalink / raw)
  Cc: Benjamin Gaignard, Alexandre Torgue, David Airlie,
	Fabrice Gasnier, Hartmut Knaack, Jaroslav Kysela,
	Javier Martinez Canillas, Jonathan Cameron, Krzysztof Kozlowski,
	Kukjin Kim, Kyungmin Park, Lars-Peter Clausen, Lee Jones,
	Liam Girdwood, Mark Brown, Mauro Carvalho Chehab, Olivier Moysan,
	Rob Clark, Shawn Guo, Sylwester Nawrocki, Takashi Iwai,
	Tony Lindgren, linux-iio, linux-arm-kernel, linux-kernel,
	dri-devel, linux-arm-msm, freedreno, linux-samsung-soc,
	alsa-devel, linux-media

Number of calls to of_platform_populate() aren't unbalanced by a call to
of_platform_depopulate() that could generate issue will loading/unloading
the drivers. Make those drivers use devm_of_platform_populate() fix the problem
without need to add remove function.

In some case replacing of_platform_populate() by devm_of_platform_populate()
allow to delete driver remove function and save some lines of code.

This series of patches based on v4.12-rc3 tag.

CC: Alexandre Torgue <alexandre.torgue@st.com>
CC: David Airlie <airlied@linux.ie>
CC: Fabrice Gasnier <fabrice.gasnier@st.com>
CC: Hartmut Knaack <knaack.h@gmx.de>
CC: Jaroslav Kysela <perex@perex.cz>
CC: Javier Martinez Canillas <javier@osg.samsung.com>
CC: Jonathan Cameron <jic23@kernel.org>
CC: Krzysztof Kozlowski <krzk@kernel.org>
CC: Kukjin Kim <kgene@kernel.org>
CC: Kyungmin Park <kyungmin.park@samsung.com>
CC: Lars-Peter Clausen <lars@metafoo.de>
CC: Lee Jones <lee.jones@linaro.org>
CC: Liam Girdwood <lgirdwood@gmail.com>
CC: Mark Brown <broonie@kernel.org>
CC: Mauro Carvalho Chehab <mchehab@kernel.org>
CC: Olivier Moysan <olivier.moysan@st.com>
CC: Rob Clark <robdclark@gmail.com>
CC: Shawn Guo <shawnguo@kernel.org>
CC: Sylwester Nawrocki <s.nawrocki@samsung.com>
CC: Takashi Iwai <tiwai@suse.com>
CC: Tony Lindgren <tony@atomide.com>

CC: linux-iio@vger.kernel.org
CC: linux-arm-kernel@lists.infradead.org
CC: linux-kernel@vger.kernel.org
CC: dri-devel@lists.freedesktop.org
CC: linux-arm-msm@vger.kernel.org
CC: freedreno@lists.freedesktop.org
CC: linux-samsung-soc@vger.kernel.org
CC: alsa-devel@alsa-project.org
CC: linux-media@vger.kernel.org

Benjamin Gaignard (15):
  iio: adc: stm32: use devm_of_platform_populate()
  iio: dac: stm32: use devm_of_platform_populate()
  drm: zte: use devm_of_platform_populate()
  drm: msm: use devm_of_platform_populate()
  mfd: stm32-timers: use devm_of_platform_populate
  mfd: atmel: use devm_of_platform_populate()
  mfd: cros_ec: use devm_of_platform_populate()
  mfd: exynos: use devm_of_platform_populate()
  mfd: fsl-imx25: use devm_of_platform_populate()
  mfd: motorola-cpcap: use devm_of_platform_populate()
  mfd: palmas: use devm_of_platform_populate()
  mfd: qcom-spmi-pmic: use devm_of_platform_populate()
  mfd: smsc-ece: use devm_of_platform_populate()
  sound: stm32: use devm_of_platform_populate()
  media: exynos4-is: use devm_of_platform_populate()

 drivers/gpu/drm/msm/msm_drv.c               | 10 ++--------
 drivers/gpu/drm/zte/zx_drm_drv.c            |  2 +-
 drivers/iio/adc/stm32-adc-core.c            |  4 +---
 drivers/iio/dac/stm32-dac-core.c            |  3 +--
 drivers/media/platform/exynos4-is/fimc-is.c |  7 ++-----
 drivers/mfd/atmel-flexcom.c                 |  2 +-
 drivers/mfd/cros_ec.c                       |  2 +-
 drivers/mfd/exynos-lpass.c                  |  2 +-
 drivers/mfd/fsl-imx25-tsadc.c               |  5 +----
 drivers/mfd/motorola-cpcap.c                | 13 +------------
 drivers/mfd/palmas.c                        |  2 +-
 drivers/mfd/qcom-spmi-pmic.c                |  9 +--------
 drivers/mfd/smsc-ece1099.c                  |  3 +--
 drivers/mfd/stm32-timers.c                  | 10 +---------
 sound/soc/stm/stm32_sai.c                   | 11 +----------
 15 files changed, 17 insertions(+), 68 deletions(-)

-- 
1.9.1

^ permalink raw reply	[flat|nested] 60+ messages in thread

* [PATCH 00/15] make more driver use devm_of_platform_populate()
@ 2017-05-29 15:45 ` Benjamin Gaignard
  0 siblings, 0 replies; 60+ messages in thread
From: Benjamin Gaignard @ 2017-05-29 15:45 UTC (permalink / raw)
  Cc: Benjamin Gaignard, Alexandre Torgue, David Airlie,
	Fabrice Gasnier, Hartmut Knaack, Jaroslav Kysela,
	Javier Martinez Canillas, Jonathan Cameron, Krzysztof Kozlowski,
	Kukjin Kim, Kyungmin Park, Lars-Peter Clausen, Lee Jones,
	Liam Girdwood, Mark Brown, Mauro Carvalho Chehab, Olivier Moysan,
	Rob Clark, Shawn Guo, Sylwester Nawrocki, Takashi Iwai,
	Tony Lindgren, linux-iio, linux-arm-kernel, linux-kernel,
	dri-devel, linux-arm-msm, freedreno, linux-samsung-soc,
	alsa-devel, linux-media

Number of calls to of_platform_populate() aren't unbalanced by a call to
of_platform_depopulate() that could generate issue will loading/unloading
the drivers. Make those drivers use devm_of_platform_populate() fix the problem
without need to add remove function.

In some case replacing of_platform_populate() by devm_of_platform_populate()
allow to delete driver remove function and save some lines of code.

This series of patches based on v4.12-rc3 tag.

CC: Alexandre Torgue <alexandre.torgue@st.com>
CC: David Airlie <airlied@linux.ie>
CC: Fabrice Gasnier <fabrice.gasnier@st.com>
CC: Hartmut Knaack <knaack.h@gmx.de>
CC: Jaroslav Kysela <perex@perex.cz>
CC: Javier Martinez Canillas <javier@osg.samsung.com>
CC: Jonathan Cameron <jic23@kernel.org>
CC: Krzysztof Kozlowski <krzk@kernel.org>
CC: Kukjin Kim <kgene@kernel.org>
CC: Kyungmin Park <kyungmin.park@samsung.com>
CC: Lars-Peter Clausen <lars@metafoo.de>
CC: Lee Jones <lee.jones@linaro.org>
CC: Liam Girdwood <lgirdwood@gmail.com>
CC: Mark Brown <broonie@kernel.org>
CC: Mauro Carvalho Chehab <mchehab@kernel.org>
CC: Olivier Moysan <olivier.moysan@st.com>
CC: Rob Clark <robdclark@gmail.com>
CC: Shawn Guo <shawnguo@kernel.org>
CC: Sylwester Nawrocki <s.nawrocki@samsung.com>
CC: Takashi Iwai <tiwai@suse.com>
CC: Tony Lindgren <tony@atomide.com>

CC: linux-iio@vger.kernel.org
CC: linux-arm-kernel@lists.infradead.org
CC: linux-kernel@vger.kernel.org
CC: dri-devel@lists.freedesktop.org
CC: linux-arm-msm@vger.kernel.org
CC: freedreno@lists.freedesktop.org
CC: linux-samsung-soc@vger.kernel.org
CC: alsa-devel@alsa-project.org
CC: linux-media@vger.kernel.org

Benjamin Gaignard (15):
  iio: adc: stm32: use devm_of_platform_populate()
  iio: dac: stm32: use devm_of_platform_populate()
  drm: zte: use devm_of_platform_populate()
  drm: msm: use devm_of_platform_populate()
  mfd: stm32-timers: use devm_of_platform_populate
  mfd: atmel: use devm_of_platform_populate()
  mfd: cros_ec: use devm_of_platform_populate()
  mfd: exynos: use devm_of_platform_populate()
  mfd: fsl-imx25: use devm_of_platform_populate()
  mfd: motorola-cpcap: use devm_of_platform_populate()
  mfd: palmas: use devm_of_platform_populate()
  mfd: qcom-spmi-pmic: use devm_of_platform_populate()
  mfd: smsc-ece: use devm_of_platform_populate()
  sound: stm32: use devm_of_platform_populate()
  media: exynos4-is: use devm_of_platform_populate()

 drivers/gpu/drm/msm/msm_drv.c               | 10 ++--------
 drivers/gpu/drm/zte/zx_drm_drv.c            |  2 +-
 drivers/iio/adc/stm32-adc-core.c            |  4 +---
 drivers/iio/dac/stm32-dac-core.c            |  3 +--
 drivers/media/platform/exynos4-is/fimc-is.c |  7 ++-----
 drivers/mfd/atmel-flexcom.c                 |  2 +-
 drivers/mfd/cros_ec.c                       |  2 +-
 drivers/mfd/exynos-lpass.c                  |  2 +-
 drivers/mfd/fsl-imx25-tsadc.c               |  5 +----
 drivers/mfd/motorola-cpcap.c                | 13 +------------
 drivers/mfd/palmas.c                        |  2 +-
 drivers/mfd/qcom-spmi-pmic.c                |  9 +--------
 drivers/mfd/smsc-ece1099.c                  |  3 +--
 drivers/mfd/stm32-timers.c                  | 10 +---------
 sound/soc/stm/stm32_sai.c                   | 11 +----------
 15 files changed, 17 insertions(+), 68 deletions(-)

-- 
1.9.1

^ permalink raw reply	[flat|nested] 60+ messages in thread

* [PATCH 00/15] make more driver use devm_of_platform_populate()
@ 2017-05-29 15:45 ` Benjamin Gaignard
  0 siblings, 0 replies; 60+ messages in thread
From: Benjamin Gaignard @ 2017-05-29 15:45 UTC (permalink / raw)
  To: linux-arm-kernel

Number of calls to of_platform_populate() aren't unbalanced by a call to
of_platform_depopulate() that could generate issue will loading/unloading
the drivers. Make those drivers use devm_of_platform_populate() fix the problem
without need to add remove function.

In some case replacing of_platform_populate() by devm_of_platform_populate()
allow to delete driver remove function and save some lines of code.

This series of patches based on v4.12-rc3 tag.

CC: Alexandre Torgue <alexandre.torgue@st.com>
CC: David Airlie <airlied@linux.ie>
CC: Fabrice Gasnier <fabrice.gasnier@st.com>
CC: Hartmut Knaack <knaack.h@gmx.de>
CC: Jaroslav Kysela <perex@perex.cz>
CC: Javier Martinez Canillas <javier@osg.samsung.com>
CC: Jonathan Cameron <jic23@kernel.org>
CC: Krzysztof Kozlowski <krzk@kernel.org>
CC: Kukjin Kim <kgene@kernel.org>
CC: Kyungmin Park <kyungmin.park@samsung.com>
CC: Lars-Peter Clausen <lars@metafoo.de>
CC: Lee Jones <lee.jones@linaro.org>
CC: Liam Girdwood <lgirdwood@gmail.com>
CC: Mark Brown <broonie@kernel.org>
CC: Mauro Carvalho Chehab <mchehab@kernel.org>
CC: Olivier Moysan <olivier.moysan@st.com>
CC: Rob Clark <robdclark@gmail.com>
CC: Shawn Guo <shawnguo@kernel.org>
CC: Sylwester Nawrocki <s.nawrocki@samsung.com>
CC: Takashi Iwai <tiwai@suse.com>
CC: Tony Lindgren <tony@atomide.com>

CC: linux-iio at vger.kernel.org
CC: linux-arm-kernel at lists.infradead.org
CC: linux-kernel at vger.kernel.org
CC: dri-devel at lists.freedesktop.org
CC: linux-arm-msm at vger.kernel.org
CC: freedreno at lists.freedesktop.org
CC: linux-samsung-soc at vger.kernel.org
CC: alsa-devel at alsa-project.org
CC: linux-media at vger.kernel.org

Benjamin Gaignard (15):
  iio: adc: stm32: use devm_of_platform_populate()
  iio: dac: stm32: use devm_of_platform_populate()
  drm: zte: use devm_of_platform_populate()
  drm: msm: use devm_of_platform_populate()
  mfd: stm32-timers: use devm_of_platform_populate
  mfd: atmel: use devm_of_platform_populate()
  mfd: cros_ec: use devm_of_platform_populate()
  mfd: exynos: use devm_of_platform_populate()
  mfd: fsl-imx25: use devm_of_platform_populate()
  mfd: motorola-cpcap: use devm_of_platform_populate()
  mfd: palmas: use devm_of_platform_populate()
  mfd: qcom-spmi-pmic: use devm_of_platform_populate()
  mfd: smsc-ece: use devm_of_platform_populate()
  sound: stm32: use devm_of_platform_populate()
  media: exynos4-is: use devm_of_platform_populate()

 drivers/gpu/drm/msm/msm_drv.c               | 10 ++--------
 drivers/gpu/drm/zte/zx_drm_drv.c            |  2 +-
 drivers/iio/adc/stm32-adc-core.c            |  4 +---
 drivers/iio/dac/stm32-dac-core.c            |  3 +--
 drivers/media/platform/exynos4-is/fimc-is.c |  7 ++-----
 drivers/mfd/atmel-flexcom.c                 |  2 +-
 drivers/mfd/cros_ec.c                       |  2 +-
 drivers/mfd/exynos-lpass.c                  |  2 +-
 drivers/mfd/fsl-imx25-tsadc.c               |  5 +----
 drivers/mfd/motorola-cpcap.c                | 13 +------------
 drivers/mfd/palmas.c                        |  2 +-
 drivers/mfd/qcom-spmi-pmic.c                |  9 +--------
 drivers/mfd/smsc-ece1099.c                  |  3 +--
 drivers/mfd/stm32-timers.c                  | 10 +---------
 sound/soc/stm/stm32_sai.c                   | 11 +----------
 15 files changed, 17 insertions(+), 68 deletions(-)

-- 
1.9.1

^ permalink raw reply	[flat|nested] 60+ messages in thread

* [PATCH 01/15] iio: adc: stm32: use devm_of_platform_populate()
  2017-05-29 15:45 ` Benjamin Gaignard
  (?)
@ 2017-05-29 15:45   ` Benjamin Gaignard
  -1 siblings, 0 replies; 60+ messages in thread
From: Benjamin Gaignard @ 2017-05-29 15:45 UTC (permalink / raw)
  Cc: Benjamin Gaignard, Jonathan Cameron, Hartmut Knaack,
	Lars-Peter Clausen, Alexandre Torgue, Fabrice Gasnier, linux-iio,
	linux-arm-kernel, linux-kernel

Use devm_of_platform_populate() instead of of_platform_populate and
of_platform_depopulate to simplify driver code

Signed-off-by: Benjamin Gaignard <benjamin.gaignard@linaro.org>

CC: Jonathan Cameron <jic23@kernel.org>
CC: Hartmut Knaack <knaack.h@gmx.de>
CC: Lars-Peter Clausen <lars@metafoo.de>
CC: Alexandre Torgue <alexandre.torgue@st.com>
CC: Fabrice Gasnier <fabrice.gasnier@st.com>
CC: linux-iio@vger.kernel.org
CC: linux-arm-kernel@lists.infradead.org
CC: linux-kernel@vger.kernel.org
---
 drivers/iio/adc/stm32-adc-core.c | 4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)

diff --git a/drivers/iio/adc/stm32-adc-core.c b/drivers/iio/adc/stm32-adc-core.c
index 22b7c93..46e41dc5 100644
--- a/drivers/iio/adc/stm32-adc-core.c
+++ b/drivers/iio/adc/stm32-adc-core.c
@@ -186,7 +186,6 @@ static void stm32_adc_irq_remove(struct platform_device *pdev,
 static int stm32_adc_probe(struct platform_device *pdev)
 {
 	struct stm32_adc_priv *priv;
-	struct device_node *np = pdev->dev.of_node;
 	struct resource *res;
 	int ret;
 
@@ -249,7 +248,7 @@ static int stm32_adc_probe(struct platform_device *pdev)
 
 	platform_set_drvdata(pdev, &priv->common);
 
-	ret = of_platform_populate(np, NULL, NULL, &pdev->dev);
+	ret = devm_of_platform_populate(&pdev->dev);
 	if (ret < 0) {
 		dev_err(&pdev->dev, "failed to populate DT children\n");
 		goto err_irq_remove;
@@ -274,7 +273,6 @@ static int stm32_adc_remove(struct platform_device *pdev)
 	struct stm32_adc_common *common = platform_get_drvdata(pdev);
 	struct stm32_adc_priv *priv = to_stm32_adc_priv(common);
 
-	of_platform_depopulate(&pdev->dev);
 	stm32_adc_irq_remove(pdev, priv);
 	clk_disable_unprepare(priv->aclk);
 	regulator_disable(priv->vref);
-- 
1.9.1

^ permalink raw reply related	[flat|nested] 60+ messages in thread

* [PATCH 01/15] iio: adc: stm32: use devm_of_platform_populate()
@ 2017-05-29 15:45   ` Benjamin Gaignard
  0 siblings, 0 replies; 60+ messages in thread
From: Benjamin Gaignard @ 2017-05-29 15:45 UTC (permalink / raw)
  Cc: Benjamin Gaignard, Jonathan Cameron, Hartmut Knaack,
	Lars-Peter Clausen, Alexandre Torgue, Fabrice Gasnier, linux-iio,
	linux-arm-kernel, linux-kernel

Use devm_of_platform_populate() instead of of_platform_populate and
of_platform_depopulate to simplify driver code

Signed-off-by: Benjamin Gaignard <benjamin.gaignard@linaro.org>

CC: Jonathan Cameron <jic23@kernel.org>
CC: Hartmut Knaack <knaack.h@gmx.de>
CC: Lars-Peter Clausen <lars@metafoo.de>
CC: Alexandre Torgue <alexandre.torgue@st.com>
CC: Fabrice Gasnier <fabrice.gasnier@st.com>
CC: linux-iio@vger.kernel.org
CC: linux-arm-kernel@lists.infradead.org
CC: linux-kernel@vger.kernel.org
---
 drivers/iio/adc/stm32-adc-core.c | 4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)

diff --git a/drivers/iio/adc/stm32-adc-core.c b/drivers/iio/adc/stm32-adc-core.c
index 22b7c93..46e41dc5 100644
--- a/drivers/iio/adc/stm32-adc-core.c
+++ b/drivers/iio/adc/stm32-adc-core.c
@@ -186,7 +186,6 @@ static void stm32_adc_irq_remove(struct platform_device *pdev,
 static int stm32_adc_probe(struct platform_device *pdev)
 {
 	struct stm32_adc_priv *priv;
-	struct device_node *np = pdev->dev.of_node;
 	struct resource *res;
 	int ret;
 
@@ -249,7 +248,7 @@ static int stm32_adc_probe(struct platform_device *pdev)
 
 	platform_set_drvdata(pdev, &priv->common);
 
-	ret = of_platform_populate(np, NULL, NULL, &pdev->dev);
+	ret = devm_of_platform_populate(&pdev->dev);
 	if (ret < 0) {
 		dev_err(&pdev->dev, "failed to populate DT children\n");
 		goto err_irq_remove;
@@ -274,7 +273,6 @@ static int stm32_adc_remove(struct platform_device *pdev)
 	struct stm32_adc_common *common = platform_get_drvdata(pdev);
 	struct stm32_adc_priv *priv = to_stm32_adc_priv(common);
 
-	of_platform_depopulate(&pdev->dev);
 	stm32_adc_irq_remove(pdev, priv);
 	clk_disable_unprepare(priv->aclk);
 	regulator_disable(priv->vref);
-- 
1.9.1

^ permalink raw reply related	[flat|nested] 60+ messages in thread

* [PATCH 01/15] iio: adc: stm32: use devm_of_platform_populate()
@ 2017-05-29 15:45   ` Benjamin Gaignard
  0 siblings, 0 replies; 60+ messages in thread
From: Benjamin Gaignard @ 2017-05-29 15:45 UTC (permalink / raw)
  To: linux-arm-kernel

Use devm_of_platform_populate() instead of of_platform_populate and
of_platform_depopulate to simplify driver code

Signed-off-by: Benjamin Gaignard <benjamin.gaignard@linaro.org>

CC: Jonathan Cameron <jic23@kernel.org>
CC: Hartmut Knaack <knaack.h@gmx.de>
CC: Lars-Peter Clausen <lars@metafoo.de>
CC: Alexandre Torgue <alexandre.torgue@st.com>
CC: Fabrice Gasnier <fabrice.gasnier@st.com>
CC: linux-iio at vger.kernel.org
CC: linux-arm-kernel at lists.infradead.org
CC: linux-kernel at vger.kernel.org
---
 drivers/iio/adc/stm32-adc-core.c | 4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)

diff --git a/drivers/iio/adc/stm32-adc-core.c b/drivers/iio/adc/stm32-adc-core.c
index 22b7c93..46e41dc5 100644
--- a/drivers/iio/adc/stm32-adc-core.c
+++ b/drivers/iio/adc/stm32-adc-core.c
@@ -186,7 +186,6 @@ static void stm32_adc_irq_remove(struct platform_device *pdev,
 static int stm32_adc_probe(struct platform_device *pdev)
 {
 	struct stm32_adc_priv *priv;
-	struct device_node *np = pdev->dev.of_node;
 	struct resource *res;
 	int ret;
 
@@ -249,7 +248,7 @@ static int stm32_adc_probe(struct platform_device *pdev)
 
 	platform_set_drvdata(pdev, &priv->common);
 
-	ret = of_platform_populate(np, NULL, NULL, &pdev->dev);
+	ret = devm_of_platform_populate(&pdev->dev);
 	if (ret < 0) {
 		dev_err(&pdev->dev, "failed to populate DT children\n");
 		goto err_irq_remove;
@@ -274,7 +273,6 @@ static int stm32_adc_remove(struct platform_device *pdev)
 	struct stm32_adc_common *common = platform_get_drvdata(pdev);
 	struct stm32_adc_priv *priv = to_stm32_adc_priv(common);
 
-	of_platform_depopulate(&pdev->dev);
 	stm32_adc_irq_remove(pdev, priv);
 	clk_disable_unprepare(priv->aclk);
 	regulator_disable(priv->vref);
-- 
1.9.1

^ permalink raw reply related	[flat|nested] 60+ messages in thread

* [PATCH 02/15] iio: dac: stm32: use devm_of_platform_populate()
  2017-05-29 15:45 ` Benjamin Gaignard
  (?)
@ 2017-05-29 15:45   ` Benjamin Gaignard
  -1 siblings, 0 replies; 60+ messages in thread
From: Benjamin Gaignard @ 2017-05-29 15:45 UTC (permalink / raw)
  Cc: Benjamin Gaignard, Jonathan Cameron, Hartmut Knaack,
	Lars-Peter Clausen, Alexandre Torgue, Fabrice Gasnier, linux-iio,
	linux-arm-kernel, linux-kernel

Use devm_of_platform_populate() instead of of_platform_populate and
of_platform_depopulate to simplify driver code

Signed-off-by: Benjamin Gaignard <benjamin.gaignard@linaro.org>

CC: Jonathan Cameron <jic23@kernel.org>
CC: Hartmut Knaack <knaack.h@gmx.de>
CC: Lars-Peter Clausen <lars@metafoo.de>
CC: Alexandre Torgue <alexandre.torgue@st.com>
CC: Fabrice Gasnier <fabrice.gasnier@st.com>
CC: linux-iio@vger.kernel.org
CC: linux-arm-kernel@lists.infradead.org
CC: linux-kernel@vger.kernel.org
---
 drivers/iio/dac/stm32-dac-core.c | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/drivers/iio/dac/stm32-dac-core.c b/drivers/iio/dac/stm32-dac-core.c
index 75e4878..9c42537 100644
--- a/drivers/iio/dac/stm32-dac-core.c
+++ b/drivers/iio/dac/stm32-dac-core.c
@@ -130,7 +130,7 @@ static int stm32_dac_probe(struct platform_device *pdev)
 
 	platform_set_drvdata(pdev, &priv->common);
 
-	ret = of_platform_populate(pdev->dev.of_node, NULL, NULL, dev);
+	ret = devm_of_platform_populate(&pdev->dev);
 	if (ret < 0) {
 		dev_err(dev, "failed to populate DT children\n");
 		goto err_pclk;
@@ -151,7 +151,6 @@ static int stm32_dac_remove(struct platform_device *pdev)
 	struct stm32_dac_common *common = platform_get_drvdata(pdev);
 	struct stm32_dac_priv *priv = to_stm32_dac_priv(common);
 
-	of_platform_depopulate(&pdev->dev);
 	clk_disable_unprepare(priv->pclk);
 	regulator_disable(priv->vref);
 
-- 
1.9.1

^ permalink raw reply related	[flat|nested] 60+ messages in thread

* [PATCH 02/15] iio: dac: stm32: use devm_of_platform_populate()
@ 2017-05-29 15:45   ` Benjamin Gaignard
  0 siblings, 0 replies; 60+ messages in thread
From: Benjamin Gaignard @ 2017-05-29 15:45 UTC (permalink / raw)
  Cc: Benjamin Gaignard, Jonathan Cameron, Hartmut Knaack,
	Lars-Peter Clausen, Alexandre Torgue, Fabrice Gasnier, linux-iio,
	linux-arm-kernel, linux-kernel

Use devm_of_platform_populate() instead of of_platform_populate and
of_platform_depopulate to simplify driver code

Signed-off-by: Benjamin Gaignard <benjamin.gaignard@linaro.org>

CC: Jonathan Cameron <jic23@kernel.org>
CC: Hartmut Knaack <knaack.h@gmx.de>
CC: Lars-Peter Clausen <lars@metafoo.de>
CC: Alexandre Torgue <alexandre.torgue@st.com>
CC: Fabrice Gasnier <fabrice.gasnier@st.com>
CC: linux-iio@vger.kernel.org
CC: linux-arm-kernel@lists.infradead.org
CC: linux-kernel@vger.kernel.org
---
 drivers/iio/dac/stm32-dac-core.c | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/drivers/iio/dac/stm32-dac-core.c b/drivers/iio/dac/stm32-dac-core.c
index 75e4878..9c42537 100644
--- a/drivers/iio/dac/stm32-dac-core.c
+++ b/drivers/iio/dac/stm32-dac-core.c
@@ -130,7 +130,7 @@ static int stm32_dac_probe(struct platform_device *pdev)
 
 	platform_set_drvdata(pdev, &priv->common);
 
-	ret = of_platform_populate(pdev->dev.of_node, NULL, NULL, dev);
+	ret = devm_of_platform_populate(&pdev->dev);
 	if (ret < 0) {
 		dev_err(dev, "failed to populate DT children\n");
 		goto err_pclk;
@@ -151,7 +151,6 @@ static int stm32_dac_remove(struct platform_device *pdev)
 	struct stm32_dac_common *common = platform_get_drvdata(pdev);
 	struct stm32_dac_priv *priv = to_stm32_dac_priv(common);
 
-	of_platform_depopulate(&pdev->dev);
 	clk_disable_unprepare(priv->pclk);
 	regulator_disable(priv->vref);
 
-- 
1.9.1

^ permalink raw reply related	[flat|nested] 60+ messages in thread

* [PATCH 02/15] iio: dac: stm32: use devm_of_platform_populate()
@ 2017-05-29 15:45   ` Benjamin Gaignard
  0 siblings, 0 replies; 60+ messages in thread
From: Benjamin Gaignard @ 2017-05-29 15:45 UTC (permalink / raw)
  To: linux-arm-kernel

Use devm_of_platform_populate() instead of of_platform_populate and
of_platform_depopulate to simplify driver code

Signed-off-by: Benjamin Gaignard <benjamin.gaignard@linaro.org>

CC: Jonathan Cameron <jic23@kernel.org>
CC: Hartmut Knaack <knaack.h@gmx.de>
CC: Lars-Peter Clausen <lars@metafoo.de>
CC: Alexandre Torgue <alexandre.torgue@st.com>
CC: Fabrice Gasnier <fabrice.gasnier@st.com>
CC: linux-iio at vger.kernel.org
CC: linux-arm-kernel at lists.infradead.org
CC: linux-kernel at vger.kernel.org
---
 drivers/iio/dac/stm32-dac-core.c | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/drivers/iio/dac/stm32-dac-core.c b/drivers/iio/dac/stm32-dac-core.c
index 75e4878..9c42537 100644
--- a/drivers/iio/dac/stm32-dac-core.c
+++ b/drivers/iio/dac/stm32-dac-core.c
@@ -130,7 +130,7 @@ static int stm32_dac_probe(struct platform_device *pdev)
 
 	platform_set_drvdata(pdev, &priv->common);
 
-	ret = of_platform_populate(pdev->dev.of_node, NULL, NULL, dev);
+	ret = devm_of_platform_populate(&pdev->dev);
 	if (ret < 0) {
 		dev_err(dev, "failed to populate DT children\n");
 		goto err_pclk;
@@ -151,7 +151,6 @@ static int stm32_dac_remove(struct platform_device *pdev)
 	struct stm32_dac_common *common = platform_get_drvdata(pdev);
 	struct stm32_dac_priv *priv = to_stm32_dac_priv(common);
 
-	of_platform_depopulate(&pdev->dev);
 	clk_disable_unprepare(priv->pclk);
 	regulator_disable(priv->vref);
 
-- 
1.9.1

^ permalink raw reply related	[flat|nested] 60+ messages in thread

* [PATCH 03/15] drm: zte: use devm_of_platform_populate()
  2017-05-29 15:45 ` Benjamin Gaignard
@ 2017-05-29 15:45   ` Benjamin Gaignard
  -1 siblings, 0 replies; 60+ messages in thread
From: Benjamin Gaignard @ 2017-05-29 15:45 UTC (permalink / raw)
  Cc: Benjamin Gaignard, Shawn Guo, David Airlie, dri-devel, linux-kernel

Use devm_of_platform_populate() to be sure that of_platform_depopulate
is called when removing the driver.

Signed-off-by: Benjamin Gaignard <benjamin.gaignard@linaro.org>

CC: Shawn Guo <shawnguo@kernel.org>
CC: David Airlie <airlied@linux.ie>
CC: dri-devel@lists.freedesktop.org
CC: linux-kernel@vger.kernel.org
---
 drivers/gpu/drm/zte/zx_drm_drv.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/zte/zx_drm_drv.c b/drivers/gpu/drm/zte/zx_drm_drv.c
index 614e854..f2b1e5f 100644
--- a/drivers/gpu/drm/zte/zx_drm_drv.c
+++ b/drivers/gpu/drm/zte/zx_drm_drv.c
@@ -196,7 +196,7 @@ static int zx_drm_probe(struct platform_device *pdev)
 	struct component_match *match = NULL;
 	int ret;
 
-	ret = of_platform_populate(parent, NULL, NULL, dev);
+	ret = devm_of_platform_populate(dev);
 	if (ret)
 		return ret;
 
-- 
1.9.1

^ permalink raw reply related	[flat|nested] 60+ messages in thread

* [PATCH 03/15] drm: zte: use devm_of_platform_populate()
@ 2017-05-29 15:45   ` Benjamin Gaignard
  0 siblings, 0 replies; 60+ messages in thread
From: Benjamin Gaignard @ 2017-05-29 15:45 UTC (permalink / raw)
  Cc: Shawn Guo, dri-devel, linux-kernel

Use devm_of_platform_populate() to be sure that of_platform_depopulate
is called when removing the driver.

Signed-off-by: Benjamin Gaignard <benjamin.gaignard@linaro.org>

CC: Shawn Guo <shawnguo@kernel.org>
CC: David Airlie <airlied@linux.ie>
CC: dri-devel@lists.freedesktop.org
CC: linux-kernel@vger.kernel.org
---
 drivers/gpu/drm/zte/zx_drm_drv.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/zte/zx_drm_drv.c b/drivers/gpu/drm/zte/zx_drm_drv.c
index 614e854..f2b1e5f 100644
--- a/drivers/gpu/drm/zte/zx_drm_drv.c
+++ b/drivers/gpu/drm/zte/zx_drm_drv.c
@@ -196,7 +196,7 @@ static int zx_drm_probe(struct platform_device *pdev)
 	struct component_match *match = NULL;
 	int ret;
 
-	ret = of_platform_populate(parent, NULL, NULL, dev);
+	ret = devm_of_platform_populate(dev);
 	if (ret)
 		return ret;
 
-- 
1.9.1

_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

^ permalink raw reply related	[flat|nested] 60+ messages in thread

* [PATCH 04/15] drm: msm: use devm_of_platform_populate()
  2017-05-29 15:45 ` Benjamin Gaignard
@ 2017-05-29 15:45   ` Benjamin Gaignard
  -1 siblings, 0 replies; 60+ messages in thread
From: Benjamin Gaignard @ 2017-05-29 15:45 UTC (permalink / raw)
  Cc: linux-arm-msm, linux-kernel, dri-devel, freedreno

Use devm_of_platform_populate() to simplify driver code.

Signed-off-by: Benjamin Gaignard <benjamin.gaignard@linaro.org>
CC: Rob Clark <robdclark@gmail.com>
CC: David Airlie <airlied@linux.ie>
CC: linux-arm-msm@vger.kernel.org
CC: dri-devel@lists.freedesktop.org
CC: freedreno@lists.freedesktop.org
CC: linux-kernel@vger.kernel.org
---
 drivers/gpu/drm/msm/msm_drv.c | 10 ++--------
 1 file changed, 2 insertions(+), 8 deletions(-)

diff --git a/drivers/gpu/drm/msm/msm_drv.c b/drivers/gpu/drm/msm/msm_drv.c
index 87b5695..545fb6f 100644
--- a/drivers/gpu/drm/msm/msm_drv.c
+++ b/drivers/gpu/drm/msm/msm_drv.c
@@ -969,7 +969,7 @@ static int add_display_components(struct device *dev,
 	 * to our components list.
 	 */
 	if (of_device_is_compatible(dev->of_node, "qcom,mdss")) {
-		ret = of_platform_populate(dev->of_node, NULL, NULL, dev);
+		ret = devm_of_platform_populate(dev);
 		if (ret) {
 			dev_err(dev, "failed to populate children devices\n");
 			return ret;
@@ -978,7 +978,6 @@ static int add_display_components(struct device *dev,
 		mdp_dev = device_find_child(dev, NULL, compare_name_mdp);
 		if (!mdp_dev) {
 			dev_err(dev, "failed to find MDSS MDP node\n");
-			of_platform_depopulate(dev);
 			return -ENODEV;
 		}
 
@@ -992,11 +991,7 @@ static int add_display_components(struct device *dev,
 		mdp_dev = dev;
 	}
 
-	ret = add_components_mdp(mdp_dev, matchptr);
-	if (ret)
-		of_platform_depopulate(dev);
-
-	return ret;
+	return add_components_mdp(mdp_dev, matchptr);
 }
 
 /*
@@ -1072,7 +1067,6 @@ static int msm_pdev_probe(struct platform_device *pdev)
 static int msm_pdev_remove(struct platform_device *pdev)
 {
 	component_master_del(&pdev->dev, &msm_drm_ops);
-	of_platform_depopulate(&pdev->dev);
 
 	return 0;
 }
-- 
1.9.1

_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

^ permalink raw reply related	[flat|nested] 60+ messages in thread

* [PATCH 04/15] drm: msm: use devm_of_platform_populate()
@ 2017-05-29 15:45   ` Benjamin Gaignard
  0 siblings, 0 replies; 60+ messages in thread
From: Benjamin Gaignard @ 2017-05-29 15:45 UTC (permalink / raw)
  Cc: Benjamin Gaignard, Rob Clark, David Airlie, linux-arm-msm,
	dri-devel, freedreno, linux-kernel

Use devm_of_platform_populate() to simplify driver code.

Signed-off-by: Benjamin Gaignard <benjamin.gaignard@linaro.org>
CC: Rob Clark <robdclark@gmail.com>
CC: David Airlie <airlied@linux.ie>
CC: linux-arm-msm@vger.kernel.org
CC: dri-devel@lists.freedesktop.org
CC: freedreno@lists.freedesktop.org
CC: linux-kernel@vger.kernel.org
---
 drivers/gpu/drm/msm/msm_drv.c | 10 ++--------
 1 file changed, 2 insertions(+), 8 deletions(-)

diff --git a/drivers/gpu/drm/msm/msm_drv.c b/drivers/gpu/drm/msm/msm_drv.c
index 87b5695..545fb6f 100644
--- a/drivers/gpu/drm/msm/msm_drv.c
+++ b/drivers/gpu/drm/msm/msm_drv.c
@@ -969,7 +969,7 @@ static int add_display_components(struct device *dev,
 	 * to our components list.
 	 */
 	if (of_device_is_compatible(dev->of_node, "qcom,mdss")) {
-		ret = of_platform_populate(dev->of_node, NULL, NULL, dev);
+		ret = devm_of_platform_populate(dev);
 		if (ret) {
 			dev_err(dev, "failed to populate children devices\n");
 			return ret;
@@ -978,7 +978,6 @@ static int add_display_components(struct device *dev,
 		mdp_dev = device_find_child(dev, NULL, compare_name_mdp);
 		if (!mdp_dev) {
 			dev_err(dev, "failed to find MDSS MDP node\n");
-			of_platform_depopulate(dev);
 			return -ENODEV;
 		}
 
@@ -992,11 +991,7 @@ static int add_display_components(struct device *dev,
 		mdp_dev = dev;
 	}
 
-	ret = add_components_mdp(mdp_dev, matchptr);
-	if (ret)
-		of_platform_depopulate(dev);
-
-	return ret;
+	return add_components_mdp(mdp_dev, matchptr);
 }
 
 /*
@@ -1072,7 +1067,6 @@ static int msm_pdev_probe(struct platform_device *pdev)
 static int msm_pdev_remove(struct platform_device *pdev)
 {
 	component_master_del(&pdev->dev, &msm_drm_ops);
-	of_platform_depopulate(&pdev->dev);
 
 	return 0;
 }
-- 
1.9.1

^ permalink raw reply related	[flat|nested] 60+ messages in thread

* [PATCH 05/15] mfd: stm32-timers: use devm_of_platform_populate
  2017-05-29 15:45 ` Benjamin Gaignard
@ 2017-05-29 15:45   ` Benjamin Gaignard
  -1 siblings, 0 replies; 60+ messages in thread
From: Benjamin Gaignard @ 2017-05-29 15:45 UTC (permalink / raw)
  Cc: Benjamin Gaignard, Lee Jones, Alexandre Torgue, linux-arm-kernel,
	linux-kernel

Use devm_of_platform_populate() instead of of_platform_populate()
and suppress stm32_timers_remove() which become useless.

Signed-off-by: Benjamin Gaignard <benjamin.gaignard@linaro.org>

CC: Lee Jones <lee.jones@linaro.org>
CC: Alexandre Torgue <alexandre.torgue@st.com>
CC: linux-arm-kernel@lists.infradead.org
CC: linux-kernel@vger.kernel.org
---
 drivers/mfd/stm32-timers.c | 10 +---------
 1 file changed, 1 insertion(+), 9 deletions(-)

diff --git a/drivers/mfd/stm32-timers.c b/drivers/mfd/stm32-timers.c
index 2182f00..a6675a4 100644
--- a/drivers/mfd/stm32-timers.c
+++ b/drivers/mfd/stm32-timers.c
@@ -58,14 +58,7 @@ static int stm32_timers_probe(struct platform_device *pdev)
 
 	platform_set_drvdata(pdev, ddata);
 
-	return of_platform_populate(pdev->dev.of_node, NULL, NULL, &pdev->dev);
-}
-
-static int stm32_timers_remove(struct platform_device *pdev)
-{
-	of_platform_depopulate(&pdev->dev);
-
-	return 0;
+	return devm_of_platform_populate(&pdev->dev);
 }
 
 static const struct of_device_id stm32_timers_of_match[] = {
@@ -76,7 +69,6 @@ static int stm32_timers_remove(struct platform_device *pdev)
 
 static struct platform_driver stm32_timers_driver = {
 	.probe = stm32_timers_probe,
-	.remove = stm32_timers_remove,
 	.driver	= {
 		.name = "stm32-timers",
 		.of_match_table = stm32_timers_of_match,
-- 
1.9.1

^ permalink raw reply related	[flat|nested] 60+ messages in thread

* [PATCH 05/15] mfd: stm32-timers: use devm_of_platform_populate
@ 2017-05-29 15:45   ` Benjamin Gaignard
  0 siblings, 0 replies; 60+ messages in thread
From: Benjamin Gaignard @ 2017-05-29 15:45 UTC (permalink / raw)
  To: linux-arm-kernel

Use devm_of_platform_populate() instead of of_platform_populate()
and suppress stm32_timers_remove() which become useless.

Signed-off-by: Benjamin Gaignard <benjamin.gaignard@linaro.org>

CC: Lee Jones <lee.jones@linaro.org>
CC: Alexandre Torgue <alexandre.torgue@st.com>
CC: linux-arm-kernel at lists.infradead.org
CC: linux-kernel at vger.kernel.org
---
 drivers/mfd/stm32-timers.c | 10 +---------
 1 file changed, 1 insertion(+), 9 deletions(-)

diff --git a/drivers/mfd/stm32-timers.c b/drivers/mfd/stm32-timers.c
index 2182f00..a6675a4 100644
--- a/drivers/mfd/stm32-timers.c
+++ b/drivers/mfd/stm32-timers.c
@@ -58,14 +58,7 @@ static int stm32_timers_probe(struct platform_device *pdev)
 
 	platform_set_drvdata(pdev, ddata);
 
-	return of_platform_populate(pdev->dev.of_node, NULL, NULL, &pdev->dev);
-}
-
-static int stm32_timers_remove(struct platform_device *pdev)
-{
-	of_platform_depopulate(&pdev->dev);
-
-	return 0;
+	return devm_of_platform_populate(&pdev->dev);
 }
 
 static const struct of_device_id stm32_timers_of_match[] = {
@@ -76,7 +69,6 @@ static int stm32_timers_remove(struct platform_device *pdev)
 
 static struct platform_driver stm32_timers_driver = {
 	.probe = stm32_timers_probe,
-	.remove = stm32_timers_remove,
 	.driver	= {
 		.name = "stm32-timers",
 		.of_match_table = stm32_timers_of_match,
-- 
1.9.1

^ permalink raw reply related	[flat|nested] 60+ messages in thread

* [PATCH 06/15] mfd: atmel: use devm_of_platform_populate()
  2017-05-29 15:45 ` Benjamin Gaignard
                   ` (8 preceding siblings ...)
  (?)
@ 2017-05-29 15:45 ` Benjamin Gaignard
  2017-05-30  9:30   ` Lee Jones
  -1 siblings, 1 reply; 60+ messages in thread
From: Benjamin Gaignard @ 2017-05-29 15:45 UTC (permalink / raw)
  Cc: Benjamin Gaignard, Lee Jones, linux-kernel

Use devm_of_platform_populate() to be sure that of_platform_depopulate
is called when removing the driver.

Signed-off-by: Benjamin Gaignard <benjamin.gaignard@linaro.org>

CC: Lee Jones <lee.jones@linaro.org>
CC: linux-kernel@vger.kernel.org
---
 drivers/mfd/atmel-flexcom.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/mfd/atmel-flexcom.c b/drivers/mfd/atmel-flexcom.c
index e8e67be..064bde9 100644
--- a/drivers/mfd/atmel-flexcom.c
+++ b/drivers/mfd/atmel-flexcom.c
@@ -80,7 +80,7 @@ static int atmel_flexcom_probe(struct platform_device *pdev)
 
 	clk_disable_unprepare(clk);
 
-	return of_platform_populate(np, NULL, NULL, &pdev->dev);
+	return devm_of_platform_populate(&pdev->dev);
 }
 
 static const struct of_device_id atmel_flexcom_of_match[] = {
-- 
1.9.1

^ permalink raw reply related	[flat|nested] 60+ messages in thread

* [PATCH 07/15] mfd: cros_ec: use devm_of_platform_populate()
  2017-05-29 15:45 ` Benjamin Gaignard
                   ` (9 preceding siblings ...)
  (?)
@ 2017-05-29 15:45 ` Benjamin Gaignard
  2017-05-30  9:30   ` Lee Jones
  -1 siblings, 1 reply; 60+ messages in thread
From: Benjamin Gaignard @ 2017-05-29 15:45 UTC (permalink / raw)
  Cc: Benjamin Gaignard, Lee Jones, linux-kernel

Use devm_of_platform_populate() to be sure that of_platform_depopulate
is called when removing the driver.

Signed-off-by: Benjamin Gaignard <benjamin.gaignard@linaro.org>

CC: Lee Jones <lee.jones@linaro.org>
CC: linux-kernel@vger.kernel.org
---
 drivers/mfd/cros_ec.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/mfd/cros_ec.c b/drivers/mfd/cros_ec.c
index d4a407e..e31ac60 100644
--- a/drivers/mfd/cros_ec.c
+++ b/drivers/mfd/cros_ec.c
@@ -147,7 +147,7 @@ int cros_ec_register(struct cros_ec_device *ec_dev)
 	}
 
 	if (IS_ENABLED(CONFIG_OF) && dev->of_node) {
-		err = of_platform_populate(dev->of_node, NULL, NULL, dev);
+		err = devm_of_platform_populate(dev);
 		if (err) {
 			mfd_remove_devices(dev);
 			dev_err(dev, "Failed to register sub-devices\n");
-- 
1.9.1

^ permalink raw reply related	[flat|nested] 60+ messages in thread

* [PATCH 08/15] mfd: exynos: use devm_of_platform_populate()
  2017-05-29 15:45 ` Benjamin Gaignard
  (?)
@ 2017-05-29 15:45   ` Benjamin Gaignard
  -1 siblings, 0 replies; 60+ messages in thread
From: Benjamin Gaignard @ 2017-05-29 15:45 UTC (permalink / raw)
  Cc: Benjamin Gaignard, Lee Jones, Kukjin Kim, Krzysztof Kozlowski,
	Javier Martinez Canillas, linux-arm-kernel, linux-samsung-soc,
	linux-kernel

Use devm_of_platform_populate() to be sure that of_platform_depopulate
is called when removing the driver.

Signed-off-by: Benjamin Gaignard <benjamin.gaignard@linaro.org>

CC: Lee Jones <lee.jones@linaro.org>
CC: Kukjin Kim <kgene@kernel.org>
CC: Krzysztof Kozlowski <krzk@kernel.org>
CC: Javier Martinez Canillas <javier@osg.samsung.com>
CC: linux-arm-kernel@lists.infradead.org
CC: linux-samsung-soc@vger.kernel.org
CC: linux-kernel@vger.kernel.org
---
 drivers/mfd/exynos-lpass.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/mfd/exynos-lpass.c b/drivers/mfd/exynos-lpass.c
index 0bf3aeb..ca829f8 100644
--- a/drivers/mfd/exynos-lpass.c
+++ b/drivers/mfd/exynos-lpass.c
@@ -138,7 +138,7 @@ static int exynos_lpass_probe(struct platform_device *pdev)
 	pm_runtime_enable(dev);
 	exynos_lpass_enable(lpass);
 
-	return of_platform_populate(dev->of_node, NULL, NULL, dev);
+	return devm_of_platform_populate(dev);
 }
 
 static int exynos_lpass_remove(struct platform_device *pdev)
-- 
1.9.1

^ permalink raw reply related	[flat|nested] 60+ messages in thread

* [PATCH 08/15] mfd: exynos: use devm_of_platform_populate()
@ 2017-05-29 15:45   ` Benjamin Gaignard
  0 siblings, 0 replies; 60+ messages in thread
From: Benjamin Gaignard @ 2017-05-29 15:45 UTC (permalink / raw)
  Cc: linux-samsung-soc, linux-kernel, Krzysztof Kozlowski,
	Javier Martinez Canillas, Kukjin Kim, Benjamin Gaignard,
	Lee Jones, linux-arm-kernel

Use devm_of_platform_populate() to be sure that of_platform_depopulate
is called when removing the driver.

Signed-off-by: Benjamin Gaignard <benjamin.gaignard@linaro.org>

CC: Lee Jones <lee.jones@linaro.org>
CC: Kukjin Kim <kgene@kernel.org>
CC: Krzysztof Kozlowski <krzk@kernel.org>
CC: Javier Martinez Canillas <javier@osg.samsung.com>
CC: linux-arm-kernel@lists.infradead.org
CC: linux-samsung-soc@vger.kernel.org
CC: linux-kernel@vger.kernel.org
---
 drivers/mfd/exynos-lpass.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/mfd/exynos-lpass.c b/drivers/mfd/exynos-lpass.c
index 0bf3aeb..ca829f8 100644
--- a/drivers/mfd/exynos-lpass.c
+++ b/drivers/mfd/exynos-lpass.c
@@ -138,7 +138,7 @@ static int exynos_lpass_probe(struct platform_device *pdev)
 	pm_runtime_enable(dev);
 	exynos_lpass_enable(lpass);
 
-	return of_platform_populate(dev->of_node, NULL, NULL, dev);
+	return devm_of_platform_populate(dev);
 }
 
 static int exynos_lpass_remove(struct platform_device *pdev)
-- 
1.9.1

^ permalink raw reply related	[flat|nested] 60+ messages in thread

* [PATCH 08/15] mfd: exynos: use devm_of_platform_populate()
@ 2017-05-29 15:45   ` Benjamin Gaignard
  0 siblings, 0 replies; 60+ messages in thread
From: Benjamin Gaignard @ 2017-05-29 15:45 UTC (permalink / raw)
  To: linux-arm-kernel

Use devm_of_platform_populate() to be sure that of_platform_depopulate
is called when removing the driver.

Signed-off-by: Benjamin Gaignard <benjamin.gaignard@linaro.org>

CC: Lee Jones <lee.jones@linaro.org>
CC: Kukjin Kim <kgene@kernel.org>
CC: Krzysztof Kozlowski <krzk@kernel.org>
CC: Javier Martinez Canillas <javier@osg.samsung.com>
CC: linux-arm-kernel at lists.infradead.org
CC: linux-samsung-soc at vger.kernel.org
CC: linux-kernel at vger.kernel.org
---
 drivers/mfd/exynos-lpass.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/mfd/exynos-lpass.c b/drivers/mfd/exynos-lpass.c
index 0bf3aeb..ca829f8 100644
--- a/drivers/mfd/exynos-lpass.c
+++ b/drivers/mfd/exynos-lpass.c
@@ -138,7 +138,7 @@ static int exynos_lpass_probe(struct platform_device *pdev)
 	pm_runtime_enable(dev);
 	exynos_lpass_enable(lpass);
 
-	return of_platform_populate(dev->of_node, NULL, NULL, dev);
+	return devm_of_platform_populate(dev);
 }
 
 static int exynos_lpass_remove(struct platform_device *pdev)
-- 
1.9.1

^ permalink raw reply related	[flat|nested] 60+ messages in thread

* [PATCH 09/15] mfd: fsl-imx25: use devm_of_platform_populate()
  2017-05-29 15:45 ` Benjamin Gaignard
                   ` (11 preceding siblings ...)
  (?)
@ 2017-05-29 15:45 ` Benjamin Gaignard
  2017-05-30  9:31   ` Lee Jones
  -1 siblings, 1 reply; 60+ messages in thread
From: Benjamin Gaignard @ 2017-05-29 15:45 UTC (permalink / raw)
  Cc: Benjamin Gaignard, Lee Jones, linux-kernel

Use devm_of_platform_populate() to be sure that of_platform_depopulate
is called when removing the driver.

Signed-off-by: Benjamin Gaignard <benjamin.gaignard@linaro.org>

CC: Lee Jones <lee.jones@linaro.org>
CC: linux-kernel@vger.kernel.org
---
 drivers/mfd/fsl-imx25-tsadc.c | 5 +----
 1 file changed, 1 insertion(+), 4 deletions(-)

diff --git a/drivers/mfd/fsl-imx25-tsadc.c b/drivers/mfd/fsl-imx25-tsadc.c
index ac430a3..4258a42 100644
--- a/drivers/mfd/fsl-imx25-tsadc.c
+++ b/drivers/mfd/fsl-imx25-tsadc.c
@@ -129,7 +129,6 @@ static void mx25_tsadc_setup_clk(struct platform_device *pdev,
 static int mx25_tsadc_probe(struct platform_device *pdev)
 {
 	struct device *dev = &pdev->dev;
-	struct device_node *np = dev->of_node;
 	struct mx25_tsadc *tsadc;
 	struct resource *res;
 	int ret;
@@ -178,9 +177,7 @@ static int mx25_tsadc_probe(struct platform_device *pdev)
 
 	platform_set_drvdata(pdev, tsadc);
 
-	of_platform_populate(np, NULL, NULL, dev);
-
-	return 0;
+	return devm_of_platform_populate(dev);
 }
 
 static const struct of_device_id mx25_tsadc_ids[] = {
-- 
1.9.1

^ permalink raw reply related	[flat|nested] 60+ messages in thread

* [PATCH 10/15] mfd: motorola-cpcap: use devm_of_platform_populate()
  2017-05-29 15:45 ` Benjamin Gaignard
                   ` (12 preceding siblings ...)
  (?)
@ 2017-05-29 15:45 ` Benjamin Gaignard
  2017-05-29 22:07   ` Andy Shevchenko
  2017-05-30 10:09   ` Lee Jones
  -1 siblings, 2 replies; 60+ messages in thread
From: Benjamin Gaignard @ 2017-05-29 15:45 UTC (permalink / raw)
  Cc: Benjamin Gaignard, Lee Jones, linux-kernel

Usage of  devm_of_platform_populate() simplify driver code
by allowing to delete cpcap_remove().

Signed-off-by: Benjamin Gaignard <benjamin.gaignard@linaro.org>

CC: Lee Jones <lee.jones@linaro.org>
CC: linux-kernel@vger.kernel.org
---
 drivers/mfd/motorola-cpcap.c | 13 +------------
 1 file changed, 1 insertion(+), 12 deletions(-)

diff --git a/drivers/mfd/motorola-cpcap.c b/drivers/mfd/motorola-cpcap.c
index 3cab58a..d2cc1ea 100644
--- a/drivers/mfd/motorola-cpcap.c
+++ b/drivers/mfd/motorola-cpcap.c
@@ -260,17 +260,7 @@ static int cpcap_probe(struct spi_device *spi)
 	if (ret)
 		return ret;
 
-	return of_platform_populate(spi->dev.of_node, NULL, NULL,
-				    &cpcap->spi->dev);
-}
-
-static int cpcap_remove(struct spi_device *pdev)
-{
-	struct cpcap_ddata *cpcap = spi_get_drvdata(pdev);
-
-	of_platform_depopulate(&cpcap->spi->dev);
-
-	return 0;
+	return devm_of_platform_populate(&cpcap->spi->dev);
 }
 
 static struct spi_driver cpcap_driver = {
@@ -279,7 +269,6 @@ static int cpcap_remove(struct spi_device *pdev)
 		.of_match_table = cpcap_of_match,
 	},
 	.probe = cpcap_probe,
-	.remove = cpcap_remove,
 };
 module_spi_driver(cpcap_driver);
 
-- 
1.9.1

^ permalink raw reply related	[flat|nested] 60+ messages in thread

* [PATCH 11/15] mfd: palmas: use devm_of_platform_populate()
  2017-05-29 15:45 ` Benjamin Gaignard
                   ` (13 preceding siblings ...)
  (?)
@ 2017-05-29 15:45 ` Benjamin Gaignard
  2017-05-30  9:31   ` Lee Jones
  -1 siblings, 1 reply; 60+ messages in thread
From: Benjamin Gaignard @ 2017-05-29 15:45 UTC (permalink / raw)
  Cc: Benjamin Gaignard, Tony Lindgren, Lee Jones, linux-kernel

Use devm_of_platform_populate() to be sure that of_platform_depopulate
is called when removing the driver.

Signed-off-by: Benjamin Gaignard <benjamin.gaignard@linaro.org>

CC: Tony Lindgren <tony@atomide.com>
CC: Lee Jones <lee.jones@linaro.org>
CC: linux-kernel@vger.kernel.org
---
 drivers/mfd/palmas.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/mfd/palmas.c b/drivers/mfd/palmas.c
index 9103aff..3922a93 100644
--- a/drivers/mfd/palmas.c
+++ b/drivers/mfd/palmas.c
@@ -676,7 +676,7 @@ static int palmas_i2c_probe(struct i2c_client *i2c,
 	 * otherwise continue and add devices using mfd helpers.
 	 */
 	if (node) {
-		ret = of_platform_populate(node, NULL, NULL, &i2c->dev);
+		ret = devm_of_platform_populate(&i2c->dev);
 		if (ret < 0) {
 			goto err_irq;
 		} else if (pdata->pm_off && !pm_power_off) {
-- 
1.9.1

^ permalink raw reply related	[flat|nested] 60+ messages in thread

* [PATCH 12/15] mfd: qcom-spmi-pmic: use devm_of_platform_populate()
  2017-05-29 15:45 ` Benjamin Gaignard
                   ` (14 preceding siblings ...)
  (?)
@ 2017-05-29 15:46 ` Benjamin Gaignard
  2017-05-30  9:32   ` Lee Jones
  -1 siblings, 1 reply; 60+ messages in thread
From: Benjamin Gaignard @ 2017-05-29 15:46 UTC (permalink / raw)
  Cc: Benjamin Gaignard, Lee Jones, linux-kernel

Usage of  devm_of_platform_populate() simplify driver code
by allowing to delete pmic_spmi_remove().

Signed-off-by: Benjamin Gaignard <benjamin.gaignard@linaro.org>

CC: Lee Jones <lee.jones@linaro.org>
CC: linux-kernel@vger.kernel.org
---
 drivers/mfd/qcom-spmi-pmic.c | 9 +--------
 1 file changed, 1 insertion(+), 8 deletions(-)

diff --git a/drivers/mfd/qcom-spmi-pmic.c b/drivers/mfd/qcom-spmi-pmic.c
index 8653e8b..2022bdf 100644
--- a/drivers/mfd/qcom-spmi-pmic.c
+++ b/drivers/mfd/qcom-spmi-pmic.c
@@ -120,7 +120,6 @@ static void pmic_spmi_show_revid(struct regmap *map, struct device *dev)
 
 static int pmic_spmi_probe(struct spmi_device *sdev)
 {
-	struct device_node *root = sdev->dev.of_node;
 	struct regmap *regmap;
 
 	regmap = devm_regmap_init_spmi_ext(sdev, &spmi_regmap_config);
@@ -131,19 +130,13 @@ static int pmic_spmi_probe(struct spmi_device *sdev)
 	if (sdev->usid % 2 == 0)
 		pmic_spmi_show_revid(regmap, &sdev->dev);
 
-	return of_platform_populate(root, NULL, NULL, &sdev->dev);
-}
-
-static void pmic_spmi_remove(struct spmi_device *sdev)
-{
-	of_platform_depopulate(&sdev->dev);
+	return devm_of_platform_populate(&sdev->dev);
 }
 
 MODULE_DEVICE_TABLE(of, pmic_spmi_id_table);
 
 static struct spmi_driver pmic_spmi_driver = {
 	.probe = pmic_spmi_probe,
-	.remove = pmic_spmi_remove,
 	.driver = {
 		.name = "pmic-spmi",
 		.of_match_table = pmic_spmi_id_table,
-- 
1.9.1

^ permalink raw reply related	[flat|nested] 60+ messages in thread

* [PATCH 13/15] mfd: smsc-ece: use devm_of_platform_populate()
  2017-05-29 15:45 ` Benjamin Gaignard
                   ` (15 preceding siblings ...)
  (?)
@ 2017-05-29 15:46 ` Benjamin Gaignard
  2017-05-30  9:32   ` Lee Jones
  -1 siblings, 1 reply; 60+ messages in thread
From: Benjamin Gaignard @ 2017-05-29 15:46 UTC (permalink / raw)
  Cc: Benjamin Gaignard, Lee Jones, linux-kernel

Use devm_of_platform_populate() to be sure that of_platform_depopulate
is called when removing the driver.

Signed-off-by: Benjamin Gaignard <benjamin.gaignard@linaro.org>

CC: Lee Jones <lee.jones@linaro.org>
CC: linux-kernel@vger.kernel.org
---
 drivers/mfd/smsc-ece1099.c | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/drivers/mfd/smsc-ece1099.c b/drivers/mfd/smsc-ece1099.c
index 1f40baf..93a8297 100644
--- a/drivers/mfd/smsc-ece1099.c
+++ b/drivers/mfd/smsc-ece1099.c
@@ -69,8 +69,7 @@ static int smsc_i2c_probe(struct i2c_client *i2c,
 
 #ifdef CONFIG_OF
 	if (i2c->dev.of_node)
-		ret = of_platform_populate(i2c->dev.of_node,
-					   NULL, NULL, &i2c->dev);
+		ret = devm_of_platform_populate(&i2c->dev);
 #endif
 
 	return ret;
-- 
1.9.1

^ permalink raw reply related	[flat|nested] 60+ messages in thread

* [PATCH 14/15] sound: stm32: use devm_of_platform_populate()
  2017-05-29 15:45 ` Benjamin Gaignard
  (?)
@ 2017-05-29 15:46   ` Benjamin Gaignard
  -1 siblings, 0 replies; 60+ messages in thread
From: Benjamin Gaignard @ 2017-05-29 15:46 UTC (permalink / raw)
  Cc: Benjamin Gaignard, Liam Girdwood, Mark Brown, Jaroslav Kysela,
	Takashi Iwai, Alexandre Torgue, Olivier Moysan, alsa-devel,
	linux-arm-kernel, linux-kernel

Usage of devm_of_platform_populate() simplify driver code
by allowing to delete stm32_sai_remove().

Signed-off-by: Benjamin Gaignard <benjamin.gaignard@linaro.org>

CC: Liam Girdwood <lgirdwood@gmail.com>
CC: Mark Brown <broonie@kernel.org>
CC: Jaroslav Kysela <perex@perex.cz>
CC: Takashi Iwai <tiwai@suse.com>
CC: Alexandre Torgue <alexandre.torgue@st.com>
CC: Olivier Moysan <olivier.moysan@st.com>
CC: alsa-devel@alsa-project.org
CC: linux-arm-kernel@lists.infradead.org
CC: linux-kernel@vger.kernel.org
---
 sound/soc/stm/stm32_sai.c | 11 +----------
 1 file changed, 1 insertion(+), 10 deletions(-)

diff --git a/sound/soc/stm/stm32_sai.c b/sound/soc/stm/stm32_sai.c
index 2a27a26..25304f8 100644
--- a/sound/soc/stm/stm32_sai.c
+++ b/sound/soc/stm/stm32_sai.c
@@ -34,7 +34,6 @@
 
 static int stm32_sai_probe(struct platform_device *pdev)
 {
-	struct device_node *np = pdev->dev.of_node;
 	struct stm32_sai_data *sai;
 	struct reset_control *rst;
 	struct resource *res;
@@ -86,14 +85,7 @@ static int stm32_sai_probe(struct platform_device *pdev)
 	sai->pdev = pdev;
 	platform_set_drvdata(pdev, sai);
 
-	return of_platform_populate(np, NULL, NULL, &pdev->dev);
-}
-
-static int stm32_sai_remove(struct platform_device *pdev)
-{
-	of_platform_depopulate(&pdev->dev);
-
-	return 0;
+	return devm_of_platform_populate(&pdev->dev);
 }
 
 MODULE_DEVICE_TABLE(of, stm32_sai_ids);
@@ -104,7 +96,6 @@ static int stm32_sai_remove(struct platform_device *pdev)
 		.of_match_table = stm32_sai_ids,
 	},
 	.probe = stm32_sai_probe,
-	.remove = stm32_sai_remove,
 };
 
 module_platform_driver(stm32_sai_driver);
-- 
1.9.1

^ permalink raw reply related	[flat|nested] 60+ messages in thread

* [PATCH 14/15] sound: stm32: use devm_of_platform_populate()
@ 2017-05-29 15:46   ` Benjamin Gaignard
  0 siblings, 0 replies; 60+ messages in thread
From: Benjamin Gaignard @ 2017-05-29 15:46 UTC (permalink / raw)
  Cc: alsa-devel, Olivier Moysan, Alexandre Torgue, linux-kernel,
	Takashi Iwai, Liam Girdwood, Mark Brown, Benjamin Gaignard,
	linux-arm-kernel

Usage of devm_of_platform_populate() simplify driver code
by allowing to delete stm32_sai_remove().

Signed-off-by: Benjamin Gaignard <benjamin.gaignard@linaro.org>

CC: Liam Girdwood <lgirdwood@gmail.com>
CC: Mark Brown <broonie@kernel.org>
CC: Jaroslav Kysela <perex@perex.cz>
CC: Takashi Iwai <tiwai@suse.com>
CC: Alexandre Torgue <alexandre.torgue@st.com>
CC: Olivier Moysan <olivier.moysan@st.com>
CC: alsa-devel@alsa-project.org
CC: linux-arm-kernel@lists.infradead.org
CC: linux-kernel@vger.kernel.org
---
 sound/soc/stm/stm32_sai.c | 11 +----------
 1 file changed, 1 insertion(+), 10 deletions(-)

diff --git a/sound/soc/stm/stm32_sai.c b/sound/soc/stm/stm32_sai.c
index 2a27a26..25304f8 100644
--- a/sound/soc/stm/stm32_sai.c
+++ b/sound/soc/stm/stm32_sai.c
@@ -34,7 +34,6 @@
 
 static int stm32_sai_probe(struct platform_device *pdev)
 {
-	struct device_node *np = pdev->dev.of_node;
 	struct stm32_sai_data *sai;
 	struct reset_control *rst;
 	struct resource *res;
@@ -86,14 +85,7 @@ static int stm32_sai_probe(struct platform_device *pdev)
 	sai->pdev = pdev;
 	platform_set_drvdata(pdev, sai);
 
-	return of_platform_populate(np, NULL, NULL, &pdev->dev);
-}
-
-static int stm32_sai_remove(struct platform_device *pdev)
-{
-	of_platform_depopulate(&pdev->dev);
-
-	return 0;
+	return devm_of_platform_populate(&pdev->dev);
 }
 
 MODULE_DEVICE_TABLE(of, stm32_sai_ids);
@@ -104,7 +96,6 @@ static int stm32_sai_remove(struct platform_device *pdev)
 		.of_match_table = stm32_sai_ids,
 	},
 	.probe = stm32_sai_probe,
-	.remove = stm32_sai_remove,
 };
 
 module_platform_driver(stm32_sai_driver);
-- 
1.9.1

^ permalink raw reply related	[flat|nested] 60+ messages in thread

* [PATCH 14/15] sound: stm32: use devm_of_platform_populate()
@ 2017-05-29 15:46   ` Benjamin Gaignard
  0 siblings, 0 replies; 60+ messages in thread
From: Benjamin Gaignard @ 2017-05-29 15:46 UTC (permalink / raw)
  To: linux-arm-kernel

Usage of devm_of_platform_populate() simplify driver code
by allowing to delete stm32_sai_remove().

Signed-off-by: Benjamin Gaignard <benjamin.gaignard@linaro.org>

CC: Liam Girdwood <lgirdwood@gmail.com>
CC: Mark Brown <broonie@kernel.org>
CC: Jaroslav Kysela <perex@perex.cz>
CC: Takashi Iwai <tiwai@suse.com>
CC: Alexandre Torgue <alexandre.torgue@st.com>
CC: Olivier Moysan <olivier.moysan@st.com>
CC: alsa-devel at alsa-project.org
CC: linux-arm-kernel at lists.infradead.org
CC: linux-kernel at vger.kernel.org
---
 sound/soc/stm/stm32_sai.c | 11 +----------
 1 file changed, 1 insertion(+), 10 deletions(-)

diff --git a/sound/soc/stm/stm32_sai.c b/sound/soc/stm/stm32_sai.c
index 2a27a26..25304f8 100644
--- a/sound/soc/stm/stm32_sai.c
+++ b/sound/soc/stm/stm32_sai.c
@@ -34,7 +34,6 @@
 
 static int stm32_sai_probe(struct platform_device *pdev)
 {
-	struct device_node *np = pdev->dev.of_node;
 	struct stm32_sai_data *sai;
 	struct reset_control *rst;
 	struct resource *res;
@@ -86,14 +85,7 @@ static int stm32_sai_probe(struct platform_device *pdev)
 	sai->pdev = pdev;
 	platform_set_drvdata(pdev, sai);
 
-	return of_platform_populate(np, NULL, NULL, &pdev->dev);
-}
-
-static int stm32_sai_remove(struct platform_device *pdev)
-{
-	of_platform_depopulate(&pdev->dev);
-
-	return 0;
+	return devm_of_platform_populate(&pdev->dev);
 }
 
 MODULE_DEVICE_TABLE(of, stm32_sai_ids);
@@ -104,7 +96,6 @@ static int stm32_sai_remove(struct platform_device *pdev)
 		.of_match_table = stm32_sai_ids,
 	},
 	.probe = stm32_sai_probe,
-	.remove = stm32_sai_remove,
 };
 
 module_platform_driver(stm32_sai_driver);
-- 
1.9.1

^ permalink raw reply related	[flat|nested] 60+ messages in thread

* [PATCH 15/15] media: exynos4-is: use devm_of_platform_populate()
  2017-05-29 15:45 ` Benjamin Gaignard
  (?)
  (?)
@ 2017-05-29 15:46   ` Benjamin Gaignard
  -1 siblings, 0 replies; 60+ messages in thread
From: Benjamin Gaignard @ 2017-05-29 15:46 UTC (permalink / raw)
  Cc: Benjamin Gaignard, Kyungmin Park, Sylwester Nawrocki,
	Mauro Carvalho Chehab, Kukjin Kim, Krzysztof Kozlowski,
	Javier Martinez Canillas, linux-media, linux-arm-kernel,
	linux-samsung-soc, linux-kernel

Usage of devm_of_platform_populate() simplify driver code
and save somes lines

Signed-off-by: Benjamin Gaignard <benjamin.gaignard@linaro.org>

CC: Kyungmin Park <kyungmin.park@samsung.com>
CC: Sylwester Nawrocki <s.nawrocki@samsung.com>
CC: Mauro Carvalho Chehab <mchehab@kernel.org>
CC: Kukjin Kim <kgene@kernel.org>
CC: Krzysztof Kozlowski <krzk@kernel.org>
CC: Javier Martinez Canillas <javier@osg.samsung.com>
CC: linux-media@vger.kernel.org
CC: linux-arm-kernel@lists.infradead.org
CC: linux-samsung-soc@vger.kernel.org
CC: linux-kernel@vger.kernel.org
---
 drivers/media/platform/exynos4-is/fimc-is.c | 7 ++-----
 1 file changed, 2 insertions(+), 5 deletions(-)

diff --git a/drivers/media/platform/exynos4-is/fimc-is.c b/drivers/media/platform/exynos4-is/fimc-is.c
index 7f92144..340d906 100644
--- a/drivers/media/platform/exynos4-is/fimc-is.c
+++ b/drivers/media/platform/exynos4-is/fimc-is.c
@@ -854,7 +854,7 @@ static int fimc_is_probe(struct platform_device *pdev)
 
 	vb2_dma_contig_set_max_seg_size(dev, DMA_BIT_MASK(32));
 
-	ret = of_platform_populate(dev->of_node, NULL, NULL, dev);
+	ret = devm_of_platform_populate(dev);
 	if (ret < 0)
 		goto err_pm;
 
@@ -864,7 +864,7 @@ static int fimc_is_probe(struct platform_device *pdev)
 	 */
 	ret = fimc_is_register_subdevs(is);
 	if (ret < 0)
-		goto err_of_dep;
+		goto err_pm;
 
 	ret = fimc_is_debugfs_create(is);
 	if (ret < 0)
@@ -883,8 +883,6 @@ static int fimc_is_probe(struct platform_device *pdev)
 	fimc_is_debugfs_remove(is);
 err_sd:
 	fimc_is_unregister_subdevs(is);
-err_of_dep:
-	of_platform_depopulate(dev);
 err_pm:
 	if (!pm_runtime_enabled(dev))
 		fimc_is_runtime_suspend(dev);
@@ -946,7 +944,6 @@ static int fimc_is_remove(struct platform_device *pdev)
 	if (!pm_runtime_status_suspended(dev))
 		fimc_is_runtime_suspend(dev);
 	free_irq(is->irq, is);
-	of_platform_depopulate(dev);
 	fimc_is_unregister_subdevs(is);
 	vb2_dma_contig_clear_max_seg_size(dev);
 	fimc_is_put_clocks(is);
-- 
1.9.1

^ permalink raw reply related	[flat|nested] 60+ messages in thread

* [PATCH 15/15] media: exynos4-is: use devm_of_platform_populate()
@ 2017-05-29 15:46   ` Benjamin Gaignard
  0 siblings, 0 replies; 60+ messages in thread
From: Benjamin Gaignard @ 2017-05-29 15:46 UTC (permalink / raw)
  Cc: Benjamin Gaignard, Kyungmin Park, Sylwester Nawrocki,
	Mauro Carvalho Chehab, Kukjin Kim, Krzysztof Kozlowski,
	Javier Martinez Canillas, linux-media, linux-arm-kernel,
	linux-samsung-soc, linux-kernel

Usage of devm_of_platform_populate() simplify driver code
and save somes lines

Signed-off-by: Benjamin Gaignard <benjamin.gaignard@linaro.org>

CC: Kyungmin Park <kyungmin.park@samsung.com>
CC: Sylwester Nawrocki <s.nawrocki@samsung.com>
CC: Mauro Carvalho Chehab <mchehab@kernel.org>
CC: Kukjin Kim <kgene@kernel.org>
CC: Krzysztof Kozlowski <krzk@kernel.org>
CC: Javier Martinez Canillas <javier@osg.samsung.com>
CC: linux-media@vger.kernel.org
CC: linux-arm-kernel@lists.infradead.org
CC: linux-samsung-soc@vger.kernel.org
CC: linux-kernel@vger.kernel.org
---
 drivers/media/platform/exynos4-is/fimc-is.c | 7 ++-----
 1 file changed, 2 insertions(+), 5 deletions(-)

diff --git a/drivers/media/platform/exynos4-is/fimc-is.c b/drivers/media/platform/exynos4-is/fimc-is.c
index 7f92144..340d906 100644
--- a/drivers/media/platform/exynos4-is/fimc-is.c
+++ b/drivers/media/platform/exynos4-is/fimc-is.c
@@ -854,7 +854,7 @@ static int fimc_is_probe(struct platform_device *pdev)
 
 	vb2_dma_contig_set_max_seg_size(dev, DMA_BIT_MASK(32));
 
-	ret = of_platform_populate(dev->of_node, NULL, NULL, dev);
+	ret = devm_of_platform_populate(dev);
 	if (ret < 0)
 		goto err_pm;
 
@@ -864,7 +864,7 @@ static int fimc_is_probe(struct platform_device *pdev)
 	 */
 	ret = fimc_is_register_subdevs(is);
 	if (ret < 0)
-		goto err_of_dep;
+		goto err_pm;
 
 	ret = fimc_is_debugfs_create(is);
 	if (ret < 0)
@@ -883,8 +883,6 @@ static int fimc_is_probe(struct platform_device *pdev)
 	fimc_is_debugfs_remove(is);
 err_sd:
 	fimc_is_unregister_subdevs(is);
-err_of_dep:
-	of_platform_depopulate(dev);
 err_pm:
 	if (!pm_runtime_enabled(dev))
 		fimc_is_runtime_suspend(dev);
@@ -946,7 +944,6 @@ static int fimc_is_remove(struct platform_device *pdev)
 	if (!pm_runtime_status_suspended(dev))
 		fimc_is_runtime_suspend(dev);
 	free_irq(is->irq, is);
-	of_platform_depopulate(dev);
 	fimc_is_unregister_subdevs(is);
 	vb2_dma_contig_clear_max_seg_size(dev);
 	fimc_is_put_clocks(is);
-- 
1.9.1

^ permalink raw reply related	[flat|nested] 60+ messages in thread

* [PATCH 15/15] media: exynos4-is: use devm_of_platform_populate()
@ 2017-05-29 15:46   ` Benjamin Gaignard
  0 siblings, 0 replies; 60+ messages in thread
From: Benjamin Gaignard @ 2017-05-29 15:46 UTC (permalink / raw)
  Cc: Benjamin Gaignard, Kyungmin Park, Sylwester Nawrocki,
	Mauro Carvalho Chehab, Kukjin Kim, Krzysztof Kozlowski,
	Javier Martinez Canillas, linux-media, linux-arm-kernel,
	linux-samsung-soc, linux-kernel

Usage of devm_of_platform_populate() simplify driver code
and save somes lines

Signed-off-by: Benjamin Gaignard <benjamin.gaignard@linaro.org>

CC: Kyungmin Park <kyungmin.park@samsung.com>
CC: Sylwester Nawrocki <s.nawrocki@samsung.com>
CC: Mauro Carvalho Chehab <mchehab@kernel.org>
CC: Kukjin Kim <kgene@kernel.org>
CC: Krzysztof Kozlowski <krzk@kernel.org>
CC: Javier Martinez Canillas <javier@osg.samsung.com>
CC: linux-media@vger.kernel.org
CC: linux-arm-kernel@lists.infradead.org
CC: linux-samsung-soc@vger.kernel.org
CC: linux-kernel@vger.kernel.org
---
 drivers/media/platform/exynos4-is/fimc-is.c | 7 ++-----
 1 file changed, 2 insertions(+), 5 deletions(-)

diff --git a/drivers/media/platform/exynos4-is/fimc-is.c b/drivers/media/platform/exynos4-is/fimc-is.c
index 7f92144..340d906 100644
--- a/drivers/media/platform/exynos4-is/fimc-is.c
+++ b/drivers/media/platform/exynos4-is/fimc-is.c
@@ -854,7 +854,7 @@ static int fimc_is_probe(struct platform_device *pdev)
 
 	vb2_dma_contig_set_max_seg_size(dev, DMA_BIT_MASK(32));
 
-	ret = of_platform_populate(dev->of_node, NULL, NULL, dev);
+	ret = devm_of_platform_populate(dev);
 	if (ret < 0)
 		goto err_pm;
 
@@ -864,7 +864,7 @@ static int fimc_is_probe(struct platform_device *pdev)
 	 */
 	ret = fimc_is_register_subdevs(is);
 	if (ret < 0)
-		goto err_of_dep;
+		goto err_pm;
 
 	ret = fimc_is_debugfs_create(is);
 	if (ret < 0)
@@ -883,8 +883,6 @@ static int fimc_is_probe(struct platform_device *pdev)
 	fimc_is_debugfs_remove(is);
 err_sd:
 	fimc_is_unregister_subdevs(is);
-err_of_dep:
-	of_platform_depopulate(dev);
 err_pm:
 	if (!pm_runtime_enabled(dev))
 		fimc_is_runtime_suspend(dev);
@@ -946,7 +944,6 @@ static int fimc_is_remove(struct platform_device *pdev)
 	if (!pm_runtime_status_suspended(dev))
 		fimc_is_runtime_suspend(dev);
 	free_irq(is->irq, is);
-	of_platform_depopulate(dev);
 	fimc_is_unregister_subdevs(is);
 	vb2_dma_contig_clear_max_seg_size(dev);
 	fimc_is_put_clocks(is);
-- 
1.9.1

^ permalink raw reply related	[flat|nested] 60+ messages in thread

* [PATCH 15/15] media: exynos4-is: use devm_of_platform_populate()
@ 2017-05-29 15:46   ` Benjamin Gaignard
  0 siblings, 0 replies; 60+ messages in thread
From: Benjamin Gaignard @ 2017-05-29 15:46 UTC (permalink / raw)
  To: linux-arm-kernel

Usage of devm_of_platform_populate() simplify driver code
and save somes lines

Signed-off-by: Benjamin Gaignard <benjamin.gaignard@linaro.org>

CC: Kyungmin Park <kyungmin.park@samsung.com>
CC: Sylwester Nawrocki <s.nawrocki@samsung.com>
CC: Mauro Carvalho Chehab <mchehab@kernel.org>
CC: Kukjin Kim <kgene@kernel.org>
CC: Krzysztof Kozlowski <krzk@kernel.org>
CC: Javier Martinez Canillas <javier@osg.samsung.com>
CC: linux-media at vger.kernel.org
CC: linux-arm-kernel at lists.infradead.org
CC: linux-samsung-soc at vger.kernel.org
CC: linux-kernel at vger.kernel.org
---
 drivers/media/platform/exynos4-is/fimc-is.c | 7 ++-----
 1 file changed, 2 insertions(+), 5 deletions(-)

diff --git a/drivers/media/platform/exynos4-is/fimc-is.c b/drivers/media/platform/exynos4-is/fimc-is.c
index 7f92144..340d906 100644
--- a/drivers/media/platform/exynos4-is/fimc-is.c
+++ b/drivers/media/platform/exynos4-is/fimc-is.c
@@ -854,7 +854,7 @@ static int fimc_is_probe(struct platform_device *pdev)
 
 	vb2_dma_contig_set_max_seg_size(dev, DMA_BIT_MASK(32));
 
-	ret = of_platform_populate(dev->of_node, NULL, NULL, dev);
+	ret = devm_of_platform_populate(dev);
 	if (ret < 0)
 		goto err_pm;
 
@@ -864,7 +864,7 @@ static int fimc_is_probe(struct platform_device *pdev)
 	 */
 	ret = fimc_is_register_subdevs(is);
 	if (ret < 0)
-		goto err_of_dep;
+		goto err_pm;
 
 	ret = fimc_is_debugfs_create(is);
 	if (ret < 0)
@@ -883,8 +883,6 @@ static int fimc_is_probe(struct platform_device *pdev)
 	fimc_is_debugfs_remove(is);
 err_sd:
 	fimc_is_unregister_subdevs(is);
-err_of_dep:
-	of_platform_depopulate(dev);
 err_pm:
 	if (!pm_runtime_enabled(dev))
 		fimc_is_runtime_suspend(dev);
@@ -946,7 +944,6 @@ static int fimc_is_remove(struct platform_device *pdev)
 	if (!pm_runtime_status_suspended(dev))
 		fimc_is_runtime_suspend(dev);
 	free_irq(is->irq, is);
-	of_platform_depopulate(dev);
 	fimc_is_unregister_subdevs(is);
 	vb2_dma_contig_clear_max_seg_size(dev);
 	fimc_is_put_clocks(is);
-- 
1.9.1

^ permalink raw reply related	[flat|nested] 60+ messages in thread

* Re: [PATCH 01/15] iio: adc: stm32: use devm_of_platform_populate()
  2017-05-29 15:45   ` Benjamin Gaignard
@ 2017-05-29 16:00     ` Jonathan Cameron
  -1 siblings, 0 replies; 60+ messages in thread
From: Jonathan Cameron @ 2017-05-29 16:00 UTC (permalink / raw)
  To: Benjamin Gaignard
  Cc: Hartmut Knaack, Lars-Peter Clausen, Alexandre Torgue,
	Fabrice Gasnier, linux-iio, linux-arm-kernel, linux-kernel

On Mon, 29 May 2017 17:45:49 +0200
Benjamin Gaignard <benjamin.gaignard@linaro.org> wrote:

> Use devm_of_platform_populate() instead of of_platform_populate and
> of_platform_depopulate to simplify driver code
> 
> Signed-off-by: Benjamin Gaignard <benjamin.gaignard@linaro.org>
My gut feeling is to dislike this particular instance.

It's changing the order of removal of elements to not
be a reverse of the order of them being set up.  That
takes it from obviously correct to something where some thought
is required.  For the trivial saving in lines of code I'm
unconvinced it is a worthwhile change..

Mind you, this particular driver isn't balancing the
probe and remove order anyway (the regulator stuff)
so I guess it's not making it much worse...

Jonathan
> 
> CC: Jonathan Cameron <jic23@kernel.org>
> CC: Hartmut Knaack <knaack.h@gmx.de>
> CC: Lars-Peter Clausen <lars@metafoo.de>
> CC: Alexandre Torgue <alexandre.torgue@st.com>
> CC: Fabrice Gasnier <fabrice.gasnier@st.com>
> CC: linux-iio@vger.kernel.org
> CC: linux-arm-kernel@lists.infradead.org
> CC: linux-kernel@vger.kernel.org
> ---
>  drivers/iio/adc/stm32-adc-core.c | 4 +---
>  1 file changed, 1 insertion(+), 3 deletions(-)
> 
> diff --git a/drivers/iio/adc/stm32-adc-core.c b/drivers/iio/adc/stm32-adc-core.c
> index 22b7c93..46e41dc5 100644
> --- a/drivers/iio/adc/stm32-adc-core.c
> +++ b/drivers/iio/adc/stm32-adc-core.c
> @@ -186,7 +186,6 @@ static void stm32_adc_irq_remove(struct platform_device *pdev,
>  static int stm32_adc_probe(struct platform_device *pdev)
>  {
>  	struct stm32_adc_priv *priv;
> -	struct device_node *np = pdev->dev.of_node;
>  	struct resource *res;
>  	int ret;
>  
> @@ -249,7 +248,7 @@ static int stm32_adc_probe(struct platform_device *pdev)
>  
>  	platform_set_drvdata(pdev, &priv->common);
>  
> -	ret = of_platform_populate(np, NULL, NULL, &pdev->dev);
> +	ret = devm_of_platform_populate(&pdev->dev);
>  	if (ret < 0) {
>  		dev_err(&pdev->dev, "failed to populate DT children\n");
>  		goto err_irq_remove;
> @@ -274,7 +273,6 @@ static int stm32_adc_remove(struct platform_device *pdev)
>  	struct stm32_adc_common *common = platform_get_drvdata(pdev);
>  	struct stm32_adc_priv *priv = to_stm32_adc_priv(common);
>  
> -	of_platform_depopulate(&pdev->dev);
>  	stm32_adc_irq_remove(pdev, priv);
>  	clk_disable_unprepare(priv->aclk);
>  	regulator_disable(priv->vref);

^ permalink raw reply	[flat|nested] 60+ messages in thread

* [PATCH 01/15] iio: adc: stm32: use devm_of_platform_populate()
@ 2017-05-29 16:00     ` Jonathan Cameron
  0 siblings, 0 replies; 60+ messages in thread
From: Jonathan Cameron @ 2017-05-29 16:00 UTC (permalink / raw)
  To: linux-arm-kernel

On Mon, 29 May 2017 17:45:49 +0200
Benjamin Gaignard <benjamin.gaignard@linaro.org> wrote:

> Use devm_of_platform_populate() instead of of_platform_populate and
> of_platform_depopulate to simplify driver code
> 
> Signed-off-by: Benjamin Gaignard <benjamin.gaignard@linaro.org>
My gut feeling is to dislike this particular instance.

It's changing the order of removal of elements to not
be a reverse of the order of them being set up.  That
takes it from obviously correct to something where some thought
is required.  For the trivial saving in lines of code I'm
unconvinced it is a worthwhile change..

Mind you, this particular driver isn't balancing the
probe and remove order anyway (the regulator stuff)
so I guess it's not making it much worse...

Jonathan
> 
> CC: Jonathan Cameron <jic23@kernel.org>
> CC: Hartmut Knaack <knaack.h@gmx.de>
> CC: Lars-Peter Clausen <lars@metafoo.de>
> CC: Alexandre Torgue <alexandre.torgue@st.com>
> CC: Fabrice Gasnier <fabrice.gasnier@st.com>
> CC: linux-iio at vger.kernel.org
> CC: linux-arm-kernel at lists.infradead.org
> CC: linux-kernel at vger.kernel.org
> ---
>  drivers/iio/adc/stm32-adc-core.c | 4 +---
>  1 file changed, 1 insertion(+), 3 deletions(-)
> 
> diff --git a/drivers/iio/adc/stm32-adc-core.c b/drivers/iio/adc/stm32-adc-core.c
> index 22b7c93..46e41dc5 100644
> --- a/drivers/iio/adc/stm32-adc-core.c
> +++ b/drivers/iio/adc/stm32-adc-core.c
> @@ -186,7 +186,6 @@ static void stm32_adc_irq_remove(struct platform_device *pdev,
>  static int stm32_adc_probe(struct platform_device *pdev)
>  {
>  	struct stm32_adc_priv *priv;
> -	struct device_node *np = pdev->dev.of_node;
>  	struct resource *res;
>  	int ret;
>  
> @@ -249,7 +248,7 @@ static int stm32_adc_probe(struct platform_device *pdev)
>  
>  	platform_set_drvdata(pdev, &priv->common);
>  
> -	ret = of_platform_populate(np, NULL, NULL, &pdev->dev);
> +	ret = devm_of_platform_populate(&pdev->dev);
>  	if (ret < 0) {
>  		dev_err(&pdev->dev, "failed to populate DT children\n");
>  		goto err_irq_remove;
> @@ -274,7 +273,6 @@ static int stm32_adc_remove(struct platform_device *pdev)
>  	struct stm32_adc_common *common = platform_get_drvdata(pdev);
>  	struct stm32_adc_priv *priv = to_stm32_adc_priv(common);
>  
> -	of_platform_depopulate(&pdev->dev);
>  	stm32_adc_irq_remove(pdev, priv);
>  	clk_disable_unprepare(priv->aclk);
>  	regulator_disable(priv->vref);

^ permalink raw reply	[flat|nested] 60+ messages in thread

* Re: [PATCH 01/15] iio: adc: stm32: use devm_of_platform_populate()
  2017-05-29 15:45   ` Benjamin Gaignard
@ 2017-05-29 16:03     ` Fabrice Gasnier
  -1 siblings, 0 replies; 60+ messages in thread
From: Fabrice Gasnier @ 2017-05-29 16:03 UTC (permalink / raw)
  To: Benjamin Gaignard
  Cc: Jonathan Cameron, Hartmut Knaack, Lars-Peter Clausen,
	Alexandre Torgue, linux-iio, linux-arm-kernel, linux-kernel

On 05/29/2017 05:45 PM, Benjamin Gaignard wrote:
> Use devm_of_platform_populate() instead of of_platform_populate and
> of_platform_depopulate to simplify driver code
> 
> Signed-off-by: Benjamin Gaignard <benjamin.gaignard@linaro.org>
> 
> CC: Jonathan Cameron <jic23@kernel.org>
> CC: Hartmut Knaack <knaack.h@gmx.de>
> CC: Lars-Peter Clausen <lars@metafoo.de>
> CC: Alexandre Torgue <alexandre.torgue@st.com>
> CC: Fabrice Gasnier <fabrice.gasnier@st.com>
> CC: linux-iio@vger.kernel.org
> CC: linux-arm-kernel@lists.infradead.org
> CC: linux-kernel@vger.kernel.org
> ---
>  drivers/iio/adc/stm32-adc-core.c | 4 +---
>  1 file changed, 1 insertion(+), 3 deletions(-)
> 
> diff --git a/drivers/iio/adc/stm32-adc-core.c b/drivers/iio/adc/stm32-adc-core.c
> index 22b7c93..46e41dc5 100644
> --- a/drivers/iio/adc/stm32-adc-core.c
> +++ b/drivers/iio/adc/stm32-adc-core.c
> @@ -186,7 +186,6 @@ static void stm32_adc_irq_remove(struct platform_device *pdev,
>  static int stm32_adc_probe(struct platform_device *pdev)
>  {
>  	struct stm32_adc_priv *priv;
> -	struct device_node *np = pdev->dev.of_node;
>  	struct resource *res;
>  	int ret;
>  
> @@ -249,7 +248,7 @@ static int stm32_adc_probe(struct platform_device *pdev)
>  
>  	platform_set_drvdata(pdev, &priv->common);
>  
> -	ret = of_platform_populate(np, NULL, NULL, &pdev->dev);
> +	ret = devm_of_platform_populate(&pdev->dev);
>  	if (ret < 0) {
>  		dev_err(&pdev->dev, "failed to populate DT children\n");
>  		goto err_irq_remove;
> @@ -274,7 +273,6 @@ static int stm32_adc_remove(struct platform_device *pdev)
>  	struct stm32_adc_common *common = platform_get_drvdata(pdev);
>  	struct stm32_adc_priv *priv = to_stm32_adc_priv(common);
>  
> -	of_platform_depopulate(&pdev->dev);

Hi Benjamin,

This is going to change order of sub devices removal. It may end-up with
bellow resources being removed while sub-device still needs them.
Not sure this is a good candidate for such a change.

Best Regards,
Fabrice

>  	stm32_adc_irq_remove(pdev, priv);
>  	clk_disable_unprepare(priv->aclk);
>  	regulator_disable(priv->vref);
> 

^ permalink raw reply	[flat|nested] 60+ messages in thread

* [PATCH 01/15] iio: adc: stm32: use devm_of_platform_populate()
@ 2017-05-29 16:03     ` Fabrice Gasnier
  0 siblings, 0 replies; 60+ messages in thread
From: Fabrice Gasnier @ 2017-05-29 16:03 UTC (permalink / raw)
  To: linux-arm-kernel

On 05/29/2017 05:45 PM, Benjamin Gaignard wrote:
> Use devm_of_platform_populate() instead of of_platform_populate and
> of_platform_depopulate to simplify driver code
> 
> Signed-off-by: Benjamin Gaignard <benjamin.gaignard@linaro.org>
> 
> CC: Jonathan Cameron <jic23@kernel.org>
> CC: Hartmut Knaack <knaack.h@gmx.de>
> CC: Lars-Peter Clausen <lars@metafoo.de>
> CC: Alexandre Torgue <alexandre.torgue@st.com>
> CC: Fabrice Gasnier <fabrice.gasnier@st.com>
> CC: linux-iio at vger.kernel.org
> CC: linux-arm-kernel at lists.infradead.org
> CC: linux-kernel at vger.kernel.org
> ---
>  drivers/iio/adc/stm32-adc-core.c | 4 +---
>  1 file changed, 1 insertion(+), 3 deletions(-)
> 
> diff --git a/drivers/iio/adc/stm32-adc-core.c b/drivers/iio/adc/stm32-adc-core.c
> index 22b7c93..46e41dc5 100644
> --- a/drivers/iio/adc/stm32-adc-core.c
> +++ b/drivers/iio/adc/stm32-adc-core.c
> @@ -186,7 +186,6 @@ static void stm32_adc_irq_remove(struct platform_device *pdev,
>  static int stm32_adc_probe(struct platform_device *pdev)
>  {
>  	struct stm32_adc_priv *priv;
> -	struct device_node *np = pdev->dev.of_node;
>  	struct resource *res;
>  	int ret;
>  
> @@ -249,7 +248,7 @@ static int stm32_adc_probe(struct platform_device *pdev)
>  
>  	platform_set_drvdata(pdev, &priv->common);
>  
> -	ret = of_platform_populate(np, NULL, NULL, &pdev->dev);
> +	ret = devm_of_platform_populate(&pdev->dev);
>  	if (ret < 0) {
>  		dev_err(&pdev->dev, "failed to populate DT children\n");
>  		goto err_irq_remove;
> @@ -274,7 +273,6 @@ static int stm32_adc_remove(struct platform_device *pdev)
>  	struct stm32_adc_common *common = platform_get_drvdata(pdev);
>  	struct stm32_adc_priv *priv = to_stm32_adc_priv(common);
>  
> -	of_platform_depopulate(&pdev->dev);

Hi Benjamin,

This is going to change order of sub devices removal. It may end-up with
bellow resources being removed while sub-device still needs them.
Not sure this is a good candidate for such a change.

Best Regards,
Fabrice

>  	stm32_adc_irq_remove(pdev, priv);
>  	clk_disable_unprepare(priv->aclk);
>  	regulator_disable(priv->vref);
> 

^ permalink raw reply	[flat|nested] 60+ messages in thread

* Re: [PATCH 02/15] iio: dac: stm32: use devm_of_platform_populate()
  2017-05-29 15:45   ` Benjamin Gaignard
@ 2017-05-29 16:10     ` Fabrice Gasnier
  -1 siblings, 0 replies; 60+ messages in thread
From: Fabrice Gasnier @ 2017-05-29 16:10 UTC (permalink / raw)
  To: Benjamin Gaignard
  Cc: Jonathan Cameron, Hartmut Knaack, Lars-Peter Clausen,
	Alexandre Torgue, linux-iio, linux-arm-kernel, linux-kernel

On 05/29/2017 05:45 PM, Benjamin Gaignard wrote:
> Use devm_of_platform_populate() instead of of_platform_populate and
> of_platform_depopulate to simplify driver code
> 
> Signed-off-by: Benjamin Gaignard <benjamin.gaignard@linaro.org>
> 
> CC: Jonathan Cameron <jic23@kernel.org>
> CC: Hartmut Knaack <knaack.h@gmx.de>
> CC: Lars-Peter Clausen <lars@metafoo.de>
> CC: Alexandre Torgue <alexandre.torgue@st.com>
> CC: Fabrice Gasnier <fabrice.gasnier@st.com>
> CC: linux-iio@vger.kernel.org
> CC: linux-arm-kernel@lists.infradead.org
> CC: linux-kernel@vger.kernel.org
> ---
>  drivers/iio/dac/stm32-dac-core.c | 3 +--
>  1 file changed, 1 insertion(+), 2 deletions(-)
> 
> diff --git a/drivers/iio/dac/stm32-dac-core.c b/drivers/iio/dac/stm32-dac-core.c
> index 75e4878..9c42537 100644
> --- a/drivers/iio/dac/stm32-dac-core.c
> +++ b/drivers/iio/dac/stm32-dac-core.c
> @@ -130,7 +130,7 @@ static int stm32_dac_probe(struct platform_device *pdev)
>  
>  	platform_set_drvdata(pdev, &priv->common);
>  
> -	ret = of_platform_populate(pdev->dev.of_node, NULL, NULL, dev);
> +	ret = devm_of_platform_populate(&pdev->dev);
>  	if (ret < 0) {
>  		dev_err(dev, "failed to populate DT children\n");
>  		goto err_pclk;
> @@ -151,7 +151,6 @@ static int stm32_dac_remove(struct platform_device *pdev)
>  	struct stm32_dac_common *common = platform_get_drvdata(pdev);
>  	struct stm32_dac_priv *priv = to_stm32_dac_priv(common);
>  
> -	of_platform_depopulate(&pdev->dev);
Hi Benjamin,

Same as patch 1, This is going to change order of sub devices removal.
It may end-up with bellow resources being removed while sub-device still
needs them.
Not sure this is a good candidate for such a change.

Best Regards,
Fabrice
>  	clk_disable_unprepare(priv->pclk);
>  	regulator_disable(priv->vref);
>  
> 

^ permalink raw reply	[flat|nested] 60+ messages in thread

* [PATCH 02/15] iio: dac: stm32: use devm_of_platform_populate()
@ 2017-05-29 16:10     ` Fabrice Gasnier
  0 siblings, 0 replies; 60+ messages in thread
From: Fabrice Gasnier @ 2017-05-29 16:10 UTC (permalink / raw)
  To: linux-arm-kernel

On 05/29/2017 05:45 PM, Benjamin Gaignard wrote:
> Use devm_of_platform_populate() instead of of_platform_populate and
> of_platform_depopulate to simplify driver code
> 
> Signed-off-by: Benjamin Gaignard <benjamin.gaignard@linaro.org>
> 
> CC: Jonathan Cameron <jic23@kernel.org>
> CC: Hartmut Knaack <knaack.h@gmx.de>
> CC: Lars-Peter Clausen <lars@metafoo.de>
> CC: Alexandre Torgue <alexandre.torgue@st.com>
> CC: Fabrice Gasnier <fabrice.gasnier@st.com>
> CC: linux-iio at vger.kernel.org
> CC: linux-arm-kernel at lists.infradead.org
> CC: linux-kernel at vger.kernel.org
> ---
>  drivers/iio/dac/stm32-dac-core.c | 3 +--
>  1 file changed, 1 insertion(+), 2 deletions(-)
> 
> diff --git a/drivers/iio/dac/stm32-dac-core.c b/drivers/iio/dac/stm32-dac-core.c
> index 75e4878..9c42537 100644
> --- a/drivers/iio/dac/stm32-dac-core.c
> +++ b/drivers/iio/dac/stm32-dac-core.c
> @@ -130,7 +130,7 @@ static int stm32_dac_probe(struct platform_device *pdev)
>  
>  	platform_set_drvdata(pdev, &priv->common);
>  
> -	ret = of_platform_populate(pdev->dev.of_node, NULL, NULL, dev);
> +	ret = devm_of_platform_populate(&pdev->dev);
>  	if (ret < 0) {
>  		dev_err(dev, "failed to populate DT children\n");
>  		goto err_pclk;
> @@ -151,7 +151,6 @@ static int stm32_dac_remove(struct platform_device *pdev)
>  	struct stm32_dac_common *common = platform_get_drvdata(pdev);
>  	struct stm32_dac_priv *priv = to_stm32_dac_priv(common);
>  
> -	of_platform_depopulate(&pdev->dev);
Hi Benjamin,

Same as patch 1, This is going to change order of sub devices removal.
It may end-up with bellow resources being removed while sub-device still
needs them.
Not sure this is a good candidate for such a change.

Best Regards,
Fabrice
>  	clk_disable_unprepare(priv->pclk);
>  	regulator_disable(priv->vref);
>  
> 

^ permalink raw reply	[flat|nested] 60+ messages in thread

* Re: [PATCH 10/15] mfd: motorola-cpcap: use devm_of_platform_populate()
  2017-05-29 15:45 ` [PATCH 10/15] mfd: motorola-cpcap: " Benjamin Gaignard
@ 2017-05-29 22:07   ` Andy Shevchenko
  2017-05-30  7:29     ` Benjamin Gaignard
  2017-05-30 10:03     ` Lee Jones
  2017-05-30 10:09   ` Lee Jones
  1 sibling, 2 replies; 60+ messages in thread
From: Andy Shevchenko @ 2017-05-29 22:07 UTC (permalink / raw)
  To: Benjamin Gaignard; +Cc: Lee Jones, linux-kernel

On Mon, May 29, 2017 at 6:45 PM, Benjamin Gaignard
<benjamin.gaignard@linaro.org> wrote:
> Usage of  devm_of_platform_populate() simplify driver code
> by allowing to delete cpcap_remove().

> -       .remove = cpcap_remove,

Can you remove module after that change?

-- 
With Best Regards,
Andy Shevchenko

^ permalink raw reply	[flat|nested] 60+ messages in thread

* Re: [PATCH 10/15] mfd: motorola-cpcap: use devm_of_platform_populate()
  2017-05-29 22:07   ` Andy Shevchenko
@ 2017-05-30  7:29     ` Benjamin Gaignard
  2017-05-30 10:03     ` Lee Jones
  1 sibling, 0 replies; 60+ messages in thread
From: Benjamin Gaignard @ 2017-05-30  7:29 UTC (permalink / raw)
  To: Andy Shevchenko; +Cc: Lee Jones, linux-kernel

2017-05-30 0:07 GMT+02:00 Andy Shevchenko <andy.shevchenko@gmail.com>:
> On Mon, May 29, 2017 at 6:45 PM, Benjamin Gaignard
> <benjamin.gaignard@linaro.org> wrote:
>> Usage of  devm_of_platform_populate() simplify driver code
>> by allowing to delete cpcap_remove().
>
>> -       .remove = cpcap_remove,
>
> Can you remove module after that change?

yes you can, it will be done by driver default function and
of_platform_depopulate() will be called after

>
> --
> With Best Regards,
> Andy Shevchenko

^ permalink raw reply	[flat|nested] 60+ messages in thread

* Re: [PATCH 14/15] sound: stm32: use devm_of_platform_populate()
  2017-05-29 15:46   ` Benjamin Gaignard
  (?)
@ 2017-05-30  9:03     ` Olivier MOYSAN
  -1 siblings, 0 replies; 60+ messages in thread
From: Olivier MOYSAN @ 2017-05-30  9:03 UTC (permalink / raw)
  To: Benjamin Gaignard
  Cc: Liam Girdwood, Mark Brown, Jaroslav Kysela, Takashi Iwai,
	Alexandre TORGUE, alsa-devel, linux-arm-kernel, linux-kernel


Acked-by: Olivier Moysan <olivier.moysan@st.com>

^ permalink raw reply	[flat|nested] 60+ messages in thread

* Re: [PATCH 14/15] sound: stm32: use devm_of_platform_populate()
@ 2017-05-30  9:03     ` Olivier MOYSAN
  0 siblings, 0 replies; 60+ messages in thread
From: Olivier MOYSAN @ 2017-05-30  9:03 UTC (permalink / raw)
  To: Benjamin Gaignard
  Cc: alsa-devel, Alexandre TORGUE, linux-kernel, Takashi Iwai,
	Liam Girdwood, Mark Brown, linux-arm-kernel


Acked-by: Olivier Moysan <olivier.moysan@st.com>

^ permalink raw reply	[flat|nested] 60+ messages in thread

* [PATCH 14/15] sound: stm32: use devm_of_platform_populate()
@ 2017-05-30  9:03     ` Olivier MOYSAN
  0 siblings, 0 replies; 60+ messages in thread
From: Olivier MOYSAN @ 2017-05-30  9:03 UTC (permalink / raw)
  To: linux-arm-kernel


Acked-by: Olivier Moysan <olivier.moysan@st.com>

^ permalink raw reply	[flat|nested] 60+ messages in thread

* Re: [PATCH 05/15] mfd: stm32-timers: use devm_of_platform_populate
  2017-05-29 15:45   ` Benjamin Gaignard
@ 2017-05-30  9:29     ` Lee Jones
  -1 siblings, 0 replies; 60+ messages in thread
From: Lee Jones @ 2017-05-30  9:29 UTC (permalink / raw)
  To: Benjamin Gaignard; +Cc: Alexandre Torgue, linux-arm-kernel, linux-kernel

On Mon, 29 May 2017, Benjamin Gaignard wrote:

> Use devm_of_platform_populate() instead of of_platform_populate()
> and suppress stm32_timers_remove() which become useless.
> 
> Signed-off-by: Benjamin Gaignard <benjamin.gaignard@linaro.org>
> 
> CC: Lee Jones <lee.jones@linaro.org>
> CC: Alexandre Torgue <alexandre.torgue@st.com>
> CC: linux-arm-kernel@lists.infradead.org
> CC: linux-kernel@vger.kernel.org
> ---
>  drivers/mfd/stm32-timers.c | 10 +---------
>  1 file changed, 1 insertion(+), 9 deletions(-)

Applied, thanks.

> diff --git a/drivers/mfd/stm32-timers.c b/drivers/mfd/stm32-timers.c
> index 2182f00..a6675a4 100644
> --- a/drivers/mfd/stm32-timers.c
> +++ b/drivers/mfd/stm32-timers.c
> @@ -58,14 +58,7 @@ static int stm32_timers_probe(struct platform_device *pdev)
>  
>  	platform_set_drvdata(pdev, ddata);
>  
> -	return of_platform_populate(pdev->dev.of_node, NULL, NULL, &pdev->dev);
> -}
> -
> -static int stm32_timers_remove(struct platform_device *pdev)
> -{
> -	of_platform_depopulate(&pdev->dev);
> -
> -	return 0;
> +	return devm_of_platform_populate(&pdev->dev);
>  }
>  
>  static const struct of_device_id stm32_timers_of_match[] = {
> @@ -76,7 +69,6 @@ static int stm32_timers_remove(struct platform_device *pdev)
>  
>  static struct platform_driver stm32_timers_driver = {
>  	.probe = stm32_timers_probe,
> -	.remove = stm32_timers_remove,
>  	.driver	= {
>  		.name = "stm32-timers",
>  		.of_match_table = stm32_timers_of_match,

-- 
Lee Jones
Linaro STMicroelectronics Landing Team Lead
Linaro.org │ Open source software for ARM SoCs
Follow Linaro: Facebook | Twitter | Blog

^ permalink raw reply	[flat|nested] 60+ messages in thread

* [PATCH 05/15] mfd: stm32-timers: use devm_of_platform_populate
@ 2017-05-30  9:29     ` Lee Jones
  0 siblings, 0 replies; 60+ messages in thread
From: Lee Jones @ 2017-05-30  9:29 UTC (permalink / raw)
  To: linux-arm-kernel

On Mon, 29 May 2017, Benjamin Gaignard wrote:

> Use devm_of_platform_populate() instead of of_platform_populate()
> and suppress stm32_timers_remove() which become useless.
> 
> Signed-off-by: Benjamin Gaignard <benjamin.gaignard@linaro.org>
> 
> CC: Lee Jones <lee.jones@linaro.org>
> CC: Alexandre Torgue <alexandre.torgue@st.com>
> CC: linux-arm-kernel at lists.infradead.org
> CC: linux-kernel at vger.kernel.org
> ---
>  drivers/mfd/stm32-timers.c | 10 +---------
>  1 file changed, 1 insertion(+), 9 deletions(-)

Applied, thanks.

> diff --git a/drivers/mfd/stm32-timers.c b/drivers/mfd/stm32-timers.c
> index 2182f00..a6675a4 100644
> --- a/drivers/mfd/stm32-timers.c
> +++ b/drivers/mfd/stm32-timers.c
> @@ -58,14 +58,7 @@ static int stm32_timers_probe(struct platform_device *pdev)
>  
>  	platform_set_drvdata(pdev, ddata);
>  
> -	return of_platform_populate(pdev->dev.of_node, NULL, NULL, &pdev->dev);
> -}
> -
> -static int stm32_timers_remove(struct platform_device *pdev)
> -{
> -	of_platform_depopulate(&pdev->dev);
> -
> -	return 0;
> +	return devm_of_platform_populate(&pdev->dev);
>  }
>  
>  static const struct of_device_id stm32_timers_of_match[] = {
> @@ -76,7 +69,6 @@ static int stm32_timers_remove(struct platform_device *pdev)
>  
>  static struct platform_driver stm32_timers_driver = {
>  	.probe = stm32_timers_probe,
> -	.remove = stm32_timers_remove,
>  	.driver	= {
>  		.name = "stm32-timers",
>  		.of_match_table = stm32_timers_of_match,

-- 
Lee Jones
Linaro STMicroelectronics Landing Team Lead
Linaro.org ? Open source software for ARM SoCs
Follow Linaro: Facebook | Twitter | Blog

^ permalink raw reply	[flat|nested] 60+ messages in thread

* Re: [PATCH 06/15] mfd: atmel: use devm_of_platform_populate()
  2017-05-29 15:45 ` [PATCH 06/15] mfd: atmel: use devm_of_platform_populate() Benjamin Gaignard
@ 2017-05-30  9:30   ` Lee Jones
  0 siblings, 0 replies; 60+ messages in thread
From: Lee Jones @ 2017-05-30  9:30 UTC (permalink / raw)
  To: Benjamin Gaignard; +Cc: linux-kernel

On Mon, 29 May 2017, Benjamin Gaignard wrote:

> Use devm_of_platform_populate() to be sure that of_platform_depopulate
> is called when removing the driver.
> 
> Signed-off-by: Benjamin Gaignard <benjamin.gaignard@linaro.org>
> 
> CC: Lee Jones <lee.jones@linaro.org>
> CC: linux-kernel@vger.kernel.org
> ---
>  drivers/mfd/atmel-flexcom.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)

Applied, thanks.

> diff --git a/drivers/mfd/atmel-flexcom.c b/drivers/mfd/atmel-flexcom.c
> index e8e67be..064bde9 100644
> --- a/drivers/mfd/atmel-flexcom.c
> +++ b/drivers/mfd/atmel-flexcom.c
> @@ -80,7 +80,7 @@ static int atmel_flexcom_probe(struct platform_device *pdev)
>  
>  	clk_disable_unprepare(clk);
>  
> -	return of_platform_populate(np, NULL, NULL, &pdev->dev);
> +	return devm_of_platform_populate(&pdev->dev);
>  }
>  
>  static const struct of_device_id atmel_flexcom_of_match[] = {

-- 
Lee Jones
Linaro STMicroelectronics Landing Team Lead
Linaro.org │ Open source software for ARM SoCs
Follow Linaro: Facebook | Twitter | Blog

^ permalink raw reply	[flat|nested] 60+ messages in thread

* Re: [PATCH 07/15] mfd: cros_ec: use devm_of_platform_populate()
  2017-05-29 15:45 ` [PATCH 07/15] mfd: cros_ec: " Benjamin Gaignard
@ 2017-05-30  9:30   ` Lee Jones
  0 siblings, 0 replies; 60+ messages in thread
From: Lee Jones @ 2017-05-30  9:30 UTC (permalink / raw)
  To: Benjamin Gaignard; +Cc: linux-kernel

On Mon, 29 May 2017, Benjamin Gaignard wrote:

> Use devm_of_platform_populate() to be sure that of_platform_depopulate
> is called when removing the driver.
> 
> Signed-off-by: Benjamin Gaignard <benjamin.gaignard@linaro.org>
> 
> CC: Lee Jones <lee.jones@linaro.org>
> CC: linux-kernel@vger.kernel.org
> ---
>  drivers/mfd/cros_ec.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)

Applied, thanks.

> diff --git a/drivers/mfd/cros_ec.c b/drivers/mfd/cros_ec.c
> index d4a407e..e31ac60 100644
> --- a/drivers/mfd/cros_ec.c
> +++ b/drivers/mfd/cros_ec.c
> @@ -147,7 +147,7 @@ int cros_ec_register(struct cros_ec_device *ec_dev)
>  	}
>  
>  	if (IS_ENABLED(CONFIG_OF) && dev->of_node) {
> -		err = of_platform_populate(dev->of_node, NULL, NULL, dev);
> +		err = devm_of_platform_populate(dev);
>  		if (err) {
>  			mfd_remove_devices(dev);
>  			dev_err(dev, "Failed to register sub-devices\n");

-- 
Lee Jones
Linaro STMicroelectronics Landing Team Lead
Linaro.org │ Open source software for ARM SoCs
Follow Linaro: Facebook | Twitter | Blog

^ permalink raw reply	[flat|nested] 60+ messages in thread

* Re: [PATCH 09/15] mfd: fsl-imx25: use devm_of_platform_populate()
  2017-05-29 15:45 ` [PATCH 09/15] mfd: fsl-imx25: " Benjamin Gaignard
@ 2017-05-30  9:31   ` Lee Jones
  0 siblings, 0 replies; 60+ messages in thread
From: Lee Jones @ 2017-05-30  9:31 UTC (permalink / raw)
  To: Benjamin Gaignard; +Cc: linux-kernel

On Mon, 29 May 2017, Benjamin Gaignard wrote:

> Use devm_of_platform_populate() to be sure that of_platform_depopulate
> is called when removing the driver.
> 
> Signed-off-by: Benjamin Gaignard <benjamin.gaignard@linaro.org>
> 
> CC: Lee Jones <lee.jones@linaro.org>
> CC: linux-kernel@vger.kernel.org
> ---
>  drivers/mfd/fsl-imx25-tsadc.c | 5 +----
>  1 file changed, 1 insertion(+), 4 deletions(-)

Applied, thanks.

> diff --git a/drivers/mfd/fsl-imx25-tsadc.c b/drivers/mfd/fsl-imx25-tsadc.c
> index ac430a3..4258a42 100644
> --- a/drivers/mfd/fsl-imx25-tsadc.c
> +++ b/drivers/mfd/fsl-imx25-tsadc.c
> @@ -129,7 +129,6 @@ static void mx25_tsadc_setup_clk(struct platform_device *pdev,
>  static int mx25_tsadc_probe(struct platform_device *pdev)
>  {
>  	struct device *dev = &pdev->dev;
> -	struct device_node *np = dev->of_node;
>  	struct mx25_tsadc *tsadc;
>  	struct resource *res;
>  	int ret;
> @@ -178,9 +177,7 @@ static int mx25_tsadc_probe(struct platform_device *pdev)
>  
>  	platform_set_drvdata(pdev, tsadc);
>  
> -	of_platform_populate(np, NULL, NULL, dev);
> -
> -	return 0;
> +	return devm_of_platform_populate(dev);
>  }
>  
>  static const struct of_device_id mx25_tsadc_ids[] = {

-- 
Lee Jones
Linaro STMicroelectronics Landing Team Lead
Linaro.org │ Open source software for ARM SoCs
Follow Linaro: Facebook | Twitter | Blog

^ permalink raw reply	[flat|nested] 60+ messages in thread

* Re: [PATCH 08/15] mfd: exynos: use devm_of_platform_populate()
  2017-05-29 15:45   ` Benjamin Gaignard
@ 2017-05-30  9:31     ` Lee Jones
  -1 siblings, 0 replies; 60+ messages in thread
From: Lee Jones @ 2017-05-30  9:31 UTC (permalink / raw)
  To: Benjamin Gaignard
  Cc: Kukjin Kim, Krzysztof Kozlowski, Javier Martinez Canillas,
	linux-arm-kernel, linux-samsung-soc, linux-kernel

On Mon, 29 May 2017, Benjamin Gaignard wrote:

> Use devm_of_platform_populate() to be sure that of_platform_depopulate
> is called when removing the driver.
> 
> Signed-off-by: Benjamin Gaignard <benjamin.gaignard@linaro.org>
> 
> CC: Lee Jones <lee.jones@linaro.org>
> CC: Kukjin Kim <kgene@kernel.org>
> CC: Krzysztof Kozlowski <krzk@kernel.org>
> CC: Javier Martinez Canillas <javier@osg.samsung.com>
> CC: linux-arm-kernel@lists.infradead.org
> CC: linux-samsung-soc@vger.kernel.org
> CC: linux-kernel@vger.kernel.org
> ---
>  drivers/mfd/exynos-lpass.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)

Applied, thanks.

> diff --git a/drivers/mfd/exynos-lpass.c b/drivers/mfd/exynos-lpass.c
> index 0bf3aeb..ca829f8 100644
> --- a/drivers/mfd/exynos-lpass.c
> +++ b/drivers/mfd/exynos-lpass.c
> @@ -138,7 +138,7 @@ static int exynos_lpass_probe(struct platform_device *pdev)
>  	pm_runtime_enable(dev);
>  	exynos_lpass_enable(lpass);
>  
> -	return of_platform_populate(dev->of_node, NULL, NULL, dev);
> +	return devm_of_platform_populate(dev);
>  }
>  
>  static int exynos_lpass_remove(struct platform_device *pdev)

-- 
Lee Jones
Linaro STMicroelectronics Landing Team Lead
Linaro.org │ Open source software for ARM SoCs
Follow Linaro: Facebook | Twitter | Blog

^ permalink raw reply	[flat|nested] 60+ messages in thread

* [PATCH 08/15] mfd: exynos: use devm_of_platform_populate()
@ 2017-05-30  9:31     ` Lee Jones
  0 siblings, 0 replies; 60+ messages in thread
From: Lee Jones @ 2017-05-30  9:31 UTC (permalink / raw)
  To: linux-arm-kernel

On Mon, 29 May 2017, Benjamin Gaignard wrote:

> Use devm_of_platform_populate() to be sure that of_platform_depopulate
> is called when removing the driver.
> 
> Signed-off-by: Benjamin Gaignard <benjamin.gaignard@linaro.org>
> 
> CC: Lee Jones <lee.jones@linaro.org>
> CC: Kukjin Kim <kgene@kernel.org>
> CC: Krzysztof Kozlowski <krzk@kernel.org>
> CC: Javier Martinez Canillas <javier@osg.samsung.com>
> CC: linux-arm-kernel at lists.infradead.org
> CC: linux-samsung-soc at vger.kernel.org
> CC: linux-kernel at vger.kernel.org
> ---
>  drivers/mfd/exynos-lpass.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)

Applied, thanks.

> diff --git a/drivers/mfd/exynos-lpass.c b/drivers/mfd/exynos-lpass.c
> index 0bf3aeb..ca829f8 100644
> --- a/drivers/mfd/exynos-lpass.c
> +++ b/drivers/mfd/exynos-lpass.c
> @@ -138,7 +138,7 @@ static int exynos_lpass_probe(struct platform_device *pdev)
>  	pm_runtime_enable(dev);
>  	exynos_lpass_enable(lpass);
>  
> -	return of_platform_populate(dev->of_node, NULL, NULL, dev);
> +	return devm_of_platform_populate(dev);
>  }
>  
>  static int exynos_lpass_remove(struct platform_device *pdev)

-- 
Lee Jones
Linaro STMicroelectronics Landing Team Lead
Linaro.org ? Open source software for ARM SoCs
Follow Linaro: Facebook | Twitter | Blog

^ permalink raw reply	[flat|nested] 60+ messages in thread

* Re: [PATCH 11/15] mfd: palmas: use devm_of_platform_populate()
  2017-05-29 15:45 ` [PATCH 11/15] mfd: palmas: " Benjamin Gaignard
@ 2017-05-30  9:31   ` Lee Jones
  0 siblings, 0 replies; 60+ messages in thread
From: Lee Jones @ 2017-05-30  9:31 UTC (permalink / raw)
  To: Benjamin Gaignard; +Cc: Tony Lindgren, linux-kernel

On Mon, 29 May 2017, Benjamin Gaignard wrote:

> Use devm_of_platform_populate() to be sure that of_platform_depopulate
> is called when removing the driver.
> 
> Signed-off-by: Benjamin Gaignard <benjamin.gaignard@linaro.org>
> 
> CC: Tony Lindgren <tony@atomide.com>
> CC: Lee Jones <lee.jones@linaro.org>
> CC: linux-kernel@vger.kernel.org
> ---
>  drivers/mfd/palmas.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)

Applied, thanks.

> diff --git a/drivers/mfd/palmas.c b/drivers/mfd/palmas.c
> index 9103aff..3922a93 100644
> --- a/drivers/mfd/palmas.c
> +++ b/drivers/mfd/palmas.c
> @@ -676,7 +676,7 @@ static int palmas_i2c_probe(struct i2c_client *i2c,
>  	 * otherwise continue and add devices using mfd helpers.
>  	 */
>  	if (node) {
> -		ret = of_platform_populate(node, NULL, NULL, &i2c->dev);
> +		ret = devm_of_platform_populate(&i2c->dev);
>  		if (ret < 0) {
>  			goto err_irq;
>  		} else if (pdata->pm_off && !pm_power_off) {

-- 
Lee Jones
Linaro STMicroelectronics Landing Team Lead
Linaro.org │ Open source software for ARM SoCs
Follow Linaro: Facebook | Twitter | Blog

^ permalink raw reply	[flat|nested] 60+ messages in thread

* Re: [PATCH 12/15] mfd: qcom-spmi-pmic: use devm_of_platform_populate()
  2017-05-29 15:46 ` [PATCH 12/15] mfd: qcom-spmi-pmic: " Benjamin Gaignard
@ 2017-05-30  9:32   ` Lee Jones
  0 siblings, 0 replies; 60+ messages in thread
From: Lee Jones @ 2017-05-30  9:32 UTC (permalink / raw)
  To: Benjamin Gaignard; +Cc: linux-kernel

On Mon, 29 May 2017, Benjamin Gaignard wrote:

> Usage of  devm_of_platform_populate() simplify driver code
> by allowing to delete pmic_spmi_remove().
> 
> Signed-off-by: Benjamin Gaignard <benjamin.gaignard@linaro.org>
> 
> CC: Lee Jones <lee.jones@linaro.org>
> CC: linux-kernel@vger.kernel.org
> ---
>  drivers/mfd/qcom-spmi-pmic.c | 9 +--------
>  1 file changed, 1 insertion(+), 8 deletions(-)

Applied, thanks.

> diff --git a/drivers/mfd/qcom-spmi-pmic.c b/drivers/mfd/qcom-spmi-pmic.c
> index 8653e8b..2022bdf 100644
> --- a/drivers/mfd/qcom-spmi-pmic.c
> +++ b/drivers/mfd/qcom-spmi-pmic.c
> @@ -120,7 +120,6 @@ static void pmic_spmi_show_revid(struct regmap *map, struct device *dev)
>  
>  static int pmic_spmi_probe(struct spmi_device *sdev)
>  {
> -	struct device_node *root = sdev->dev.of_node;
>  	struct regmap *regmap;
>  
>  	regmap = devm_regmap_init_spmi_ext(sdev, &spmi_regmap_config);
> @@ -131,19 +130,13 @@ static int pmic_spmi_probe(struct spmi_device *sdev)
>  	if (sdev->usid % 2 == 0)
>  		pmic_spmi_show_revid(regmap, &sdev->dev);
>  
> -	return of_platform_populate(root, NULL, NULL, &sdev->dev);
> -}
> -
> -static void pmic_spmi_remove(struct spmi_device *sdev)
> -{
> -	of_platform_depopulate(&sdev->dev);
> +	return devm_of_platform_populate(&sdev->dev);
>  }
>  
>  MODULE_DEVICE_TABLE(of, pmic_spmi_id_table);
>  
>  static struct spmi_driver pmic_spmi_driver = {
>  	.probe = pmic_spmi_probe,
> -	.remove = pmic_spmi_remove,
>  	.driver = {
>  		.name = "pmic-spmi",
>  		.of_match_table = pmic_spmi_id_table,

-- 
Lee Jones
Linaro STMicroelectronics Landing Team Lead
Linaro.org │ Open source software for ARM SoCs
Follow Linaro: Facebook | Twitter | Blog

^ permalink raw reply	[flat|nested] 60+ messages in thread

* Re: [PATCH 13/15] mfd: smsc-ece: use devm_of_platform_populate()
  2017-05-29 15:46 ` [PATCH 13/15] mfd: smsc-ece: " Benjamin Gaignard
@ 2017-05-30  9:32   ` Lee Jones
  0 siblings, 0 replies; 60+ messages in thread
From: Lee Jones @ 2017-05-30  9:32 UTC (permalink / raw)
  To: Benjamin Gaignard; +Cc: linux-kernel

On Mon, 29 May 2017, Benjamin Gaignard wrote:

> Use devm_of_platform_populate() to be sure that of_platform_depopulate
> is called when removing the driver.
> 
> Signed-off-by: Benjamin Gaignard <benjamin.gaignard@linaro.org>
> 
> CC: Lee Jones <lee.jones@linaro.org>
> CC: linux-kernel@vger.kernel.org
> ---
>  drivers/mfd/smsc-ece1099.c | 3 +--
>  1 file changed, 1 insertion(+), 2 deletions(-)

Applied, thanks.

> diff --git a/drivers/mfd/smsc-ece1099.c b/drivers/mfd/smsc-ece1099.c
> index 1f40baf..93a8297 100644
> --- a/drivers/mfd/smsc-ece1099.c
> +++ b/drivers/mfd/smsc-ece1099.c
> @@ -69,8 +69,7 @@ static int smsc_i2c_probe(struct i2c_client *i2c,
>  
>  #ifdef CONFIG_OF
>  	if (i2c->dev.of_node)
> -		ret = of_platform_populate(i2c->dev.of_node,
> -					   NULL, NULL, &i2c->dev);
> +		ret = devm_of_platform_populate(&i2c->dev);
>  #endif
>  
>  	return ret;

-- 
Lee Jones
Linaro STMicroelectronics Landing Team Lead
Linaro.org │ Open source software for ARM SoCs
Follow Linaro: Facebook | Twitter | Blog

^ permalink raw reply	[flat|nested] 60+ messages in thread

* Re: [PATCH 10/15] mfd: motorola-cpcap: use devm_of_platform_populate()
  2017-05-29 22:07   ` Andy Shevchenko
  2017-05-30  7:29     ` Benjamin Gaignard
@ 2017-05-30 10:03     ` Lee Jones
  2017-05-30 10:46       ` Andy Shevchenko
  1 sibling, 1 reply; 60+ messages in thread
From: Lee Jones @ 2017-05-30 10:03 UTC (permalink / raw)
  To: Andy Shevchenko; +Cc: Benjamin Gaignard, linux-kernel

On Tue, 30 May 2017, Andy Shevchenko wrote:

> On Mon, May 29, 2017 at 6:45 PM, Benjamin Gaignard
> <benjamin.gaignard@linaro.org> wrote:
> > Usage of  devm_of_platform_populate() simplify driver code
> > by allowing to delete cpcap_remove().
> 
> > -       .remove = cpcap_remove,
> 
> Can you remove module after that change?

Why wouldn't you?

-- 
Lee Jones
Linaro STMicroelectronics Landing Team Lead
Linaro.org │ Open source software for ARM SoCs
Follow Linaro: Facebook | Twitter | Blog

^ permalink raw reply	[flat|nested] 60+ messages in thread

* Re: [PATCH 10/15] mfd: motorola-cpcap: use devm_of_platform_populate()
  2017-05-29 15:45 ` [PATCH 10/15] mfd: motorola-cpcap: " Benjamin Gaignard
  2017-05-29 22:07   ` Andy Shevchenko
@ 2017-05-30 10:09   ` Lee Jones
  1 sibling, 0 replies; 60+ messages in thread
From: Lee Jones @ 2017-05-30 10:09 UTC (permalink / raw)
  To: Benjamin Gaignard; +Cc: linux-kernel

On Mon, 29 May 2017, Benjamin Gaignard wrote:

> Usage of  devm_of_platform_populate() simplify driver code
> by allowing to delete cpcap_remove().
> 
> Signed-off-by: Benjamin Gaignard <benjamin.gaignard@linaro.org>
> 
> CC: Lee Jones <lee.jones@linaro.org>
> CC: linux-kernel@vger.kernel.org
> ---
>  drivers/mfd/motorola-cpcap.c | 13 +------------
>  1 file changed, 1 insertion(+), 12 deletions(-)

Applied, thanks.

> diff --git a/drivers/mfd/motorola-cpcap.c b/drivers/mfd/motorola-cpcap.c
> index 3cab58a..d2cc1ea 100644
> --- a/drivers/mfd/motorola-cpcap.c
> +++ b/drivers/mfd/motorola-cpcap.c
> @@ -260,17 +260,7 @@ static int cpcap_probe(struct spi_device *spi)
>  	if (ret)
>  		return ret;
>  
> -	return of_platform_populate(spi->dev.of_node, NULL, NULL,
> -				    &cpcap->spi->dev);
> -}
> -
> -static int cpcap_remove(struct spi_device *pdev)
> -{
> -	struct cpcap_ddata *cpcap = spi_get_drvdata(pdev);
> -
> -	of_platform_depopulate(&cpcap->spi->dev);
> -
> -	return 0;
> +	return devm_of_platform_populate(&cpcap->spi->dev);
>  }
>  
>  static struct spi_driver cpcap_driver = {
> @@ -279,7 +269,6 @@ static int cpcap_remove(struct spi_device *pdev)
>  		.of_match_table = cpcap_of_match,
>  	},
>  	.probe = cpcap_probe,
> -	.remove = cpcap_remove,
>  };
>  module_spi_driver(cpcap_driver);
>  

-- 
Lee Jones
Linaro STMicroelectronics Landing Team Lead
Linaro.org │ Open source software for ARM SoCs
Follow Linaro: Facebook | Twitter | Blog

^ permalink raw reply	[flat|nested] 60+ messages in thread

* Re: [PATCH 10/15] mfd: motorola-cpcap: use devm_of_platform_populate()
  2017-05-30 10:03     ` Lee Jones
@ 2017-05-30 10:46       ` Andy Shevchenko
  0 siblings, 0 replies; 60+ messages in thread
From: Andy Shevchenko @ 2017-05-30 10:46 UTC (permalink / raw)
  To: Lee Jones; +Cc: Benjamin Gaignard, linux-kernel

On Tue, May 30, 2017 at 1:03 PM, Lee Jones <lee.jones@linaro.org> wrote:
> On Tue, 30 May 2017, Andy Shevchenko wrote:
>
>> On Mon, May 29, 2017 at 6:45 PM, Benjamin Gaignard
>> <benjamin.gaignard@linaro.org> wrote:
>> > Usage of  devm_of_platform_populate() simplify driver code
>> > by allowing to delete cpcap_remove().
>>
>> > -       .remove = cpcap_remove,
>>
>> Can you remove module after that change?
>
> Why wouldn't you?

Indeed.
Just checked __device_release_driver().

-- 
With Best Regards,
Andy Shevchenko

^ permalink raw reply	[flat|nested] 60+ messages in thread

* Re: [PATCH 03/15] drm: zte: use devm_of_platform_populate()
  2017-05-29 15:45   ` Benjamin Gaignard
@ 2017-06-05  1:59     ` Shawn Guo
  -1 siblings, 0 replies; 60+ messages in thread
From: Shawn Guo @ 2017-06-05  1:59 UTC (permalink / raw)
  To: Benjamin Gaignard; +Cc: David Airlie, dri-devel, linux-kernel

On Mon, May 29, 2017 at 05:45:51PM +0200, Benjamin Gaignard wrote:
> Use devm_of_platform_populate() to be sure that of_platform_depopulate
> is called when removing the driver.
> 
> Signed-off-by: Benjamin Gaignard <benjamin.gaignard@linaro.org>

Applied to drm-misc, thanks.

^ permalink raw reply	[flat|nested] 60+ messages in thread

* Re: [PATCH 03/15] drm: zte: use devm_of_platform_populate()
@ 2017-06-05  1:59     ` Shawn Guo
  0 siblings, 0 replies; 60+ messages in thread
From: Shawn Guo @ 2017-06-05  1:59 UTC (permalink / raw)
  To: Benjamin Gaignard; +Cc: linux-kernel, dri-devel

On Mon, May 29, 2017 at 05:45:51PM +0200, Benjamin Gaignard wrote:
> Use devm_of_platform_populate() to be sure that of_platform_depopulate
> is called when removing the driver.
> 
> Signed-off-by: Benjamin Gaignard <benjamin.gaignard@linaro.org>

Applied to drm-misc, thanks.
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

^ permalink raw reply	[flat|nested] 60+ messages in thread

end of thread, other threads:[~2017-06-05  1:59 UTC | newest]

Thread overview: 60+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-05-29 15:45 [PATCH 00/15] make more driver use devm_of_platform_populate() Benjamin Gaignard
2017-05-29 15:45 ` Benjamin Gaignard
2017-05-29 15:45 ` Benjamin Gaignard
2017-05-29 15:45 ` Benjamin Gaignard
2017-05-29 15:45 ` Benjamin Gaignard
2017-05-29 15:45 ` [PATCH 01/15] iio: adc: stm32: " Benjamin Gaignard
2017-05-29 15:45   ` Benjamin Gaignard
2017-05-29 15:45   ` Benjamin Gaignard
2017-05-29 16:00   ` Jonathan Cameron
2017-05-29 16:00     ` Jonathan Cameron
2017-05-29 16:03   ` Fabrice Gasnier
2017-05-29 16:03     ` Fabrice Gasnier
2017-05-29 15:45 ` [PATCH 02/15] iio: dac: " Benjamin Gaignard
2017-05-29 15:45   ` Benjamin Gaignard
2017-05-29 15:45   ` Benjamin Gaignard
2017-05-29 16:10   ` Fabrice Gasnier
2017-05-29 16:10     ` Fabrice Gasnier
2017-05-29 15:45 ` [PATCH 03/15] drm: zte: " Benjamin Gaignard
2017-05-29 15:45   ` Benjamin Gaignard
2017-06-05  1:59   ` Shawn Guo
2017-06-05  1:59     ` Shawn Guo
2017-05-29 15:45 ` [PATCH 04/15] drm: msm: " Benjamin Gaignard
2017-05-29 15:45   ` Benjamin Gaignard
2017-05-29 15:45 ` [PATCH 05/15] mfd: stm32-timers: use devm_of_platform_populate Benjamin Gaignard
2017-05-29 15:45   ` Benjamin Gaignard
2017-05-30  9:29   ` Lee Jones
2017-05-30  9:29     ` Lee Jones
2017-05-29 15:45 ` [PATCH 06/15] mfd: atmel: use devm_of_platform_populate() Benjamin Gaignard
2017-05-30  9:30   ` Lee Jones
2017-05-29 15:45 ` [PATCH 07/15] mfd: cros_ec: " Benjamin Gaignard
2017-05-30  9:30   ` Lee Jones
2017-05-29 15:45 ` [PATCH 08/15] mfd: exynos: " Benjamin Gaignard
2017-05-29 15:45   ` Benjamin Gaignard
2017-05-29 15:45   ` Benjamin Gaignard
2017-05-30  9:31   ` Lee Jones
2017-05-30  9:31     ` Lee Jones
2017-05-29 15:45 ` [PATCH 09/15] mfd: fsl-imx25: " Benjamin Gaignard
2017-05-30  9:31   ` Lee Jones
2017-05-29 15:45 ` [PATCH 10/15] mfd: motorola-cpcap: " Benjamin Gaignard
2017-05-29 22:07   ` Andy Shevchenko
2017-05-30  7:29     ` Benjamin Gaignard
2017-05-30 10:03     ` Lee Jones
2017-05-30 10:46       ` Andy Shevchenko
2017-05-30 10:09   ` Lee Jones
2017-05-29 15:45 ` [PATCH 11/15] mfd: palmas: " Benjamin Gaignard
2017-05-30  9:31   ` Lee Jones
2017-05-29 15:46 ` [PATCH 12/15] mfd: qcom-spmi-pmic: " Benjamin Gaignard
2017-05-30  9:32   ` Lee Jones
2017-05-29 15:46 ` [PATCH 13/15] mfd: smsc-ece: " Benjamin Gaignard
2017-05-30  9:32   ` Lee Jones
2017-05-29 15:46 ` [PATCH 14/15] sound: stm32: " Benjamin Gaignard
2017-05-29 15:46   ` Benjamin Gaignard
2017-05-29 15:46   ` Benjamin Gaignard
2017-05-30  9:03   ` Olivier MOYSAN
2017-05-30  9:03     ` Olivier MOYSAN
2017-05-30  9:03     ` Olivier MOYSAN
2017-05-29 15:46 ` [PATCH 15/15] media: exynos4-is: " Benjamin Gaignard
2017-05-29 15:46   ` Benjamin Gaignard
2017-05-29 15:46   ` Benjamin Gaignard
2017-05-29 15:46   ` Benjamin Gaignard

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.