Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1399986 > unrolled thread

[PATCH v4 00/18] Cleanup for populate default bus

Started byKefeng Wang <wangkefeng.wang@huawei.com>
First post2016-05-12 14:10 +0200
Last post2016-05-12 14:10 +0200
Articles 15 — 7 participants

Back to article view | Back to linux.kernel


Contents

  [PATCH v4 00/18] Cleanup for populate default bus Kefeng Wang <wangkefeng.wang@huawei.com> - 2016-05-12 14:10 +0200
    [PATCH v4 02/18] arc: Remove unnecessary of_platform_populate with default match table Kefeng Wang <wangkefeng.wang@huawei.com> - 2016-05-12 14:10 +0200
      Re: [PATCH v4 02/18] arc: Remove unnecessary of_platform_populate  with default match table Vineet Gupta <Vineet.Gupta1@synopsys.com> - 2016-05-13 05:10 +0200
    [PATCH v4 17/18] of: unittest: use of_platform_default_populate() to populate default bus Kefeng Wang <wangkefeng.wang@huawei.com> - 2016-05-12 14:10 +0200
    [PATCH v4 06/18] cris: Remove unnecessary of_platform_populate with default match table Kefeng Wang <wangkefeng.wang@huawei.com> - 2016-05-12 14:10 +0200
      Re: [PATCH v4 06/18] cris: Remove unnecessary of_platform_populate  with default match table Jesper Nilsson <jesper.nilsson@axis.com> - 2016-05-16 10:10 +0200
    [PATCH v4 12/18] arm: use of_platform_default_populate() to populate Kefeng Wang <wangkefeng.wang@huawei.com> - 2016-05-12 14:10 +0200
      Re: [PATCH v4 12/18] arm: use of_platform_default_populate() to  populate Viresh Kumar <viresh.kumar@linaro.org> - 2016-05-13 05:00 +0200
      Re: [PATCH v4 12/18] arm: use of_platform_default_populate() to  populate Sekhar Nori <nsekhar@ti.com> - 2016-05-17 10:10 +0200
      Re: [PATCH v4 12/18] arm: use of_platform_default_populate() to  populate Nicolas Ferre <nicolas.ferre@atmel.com> - 2016-05-17 11:20 +0200
    [PATCH v4 05/18] c6x: Remove unnecessary of_platform_populate with default match table Kefeng Wang <wangkefeng.wang@huawei.com> - 2016-05-12 14:10 +0200
    [PATCH v4 10/18] sh: Remove unnecessary of_platform_populate with default match table Kefeng Wang <wangkefeng.wang@huawei.com> - 2016-05-12 14:10 +0200
      Re: [PATCH v4 10/18] sh: Remove unnecessary of_platform_populate  with default match table Rich Felker <dalias@libc.org> - 2016-05-12 20:50 +0200
        Re: [PATCH v4 10/18] sh: Remove unnecessary of_platform_populate with  default match table Kefeng Wang <wangkefeng.wang@huawei.com> - 2016-05-13 03:50 +0200
    [PATCH v4 07/18] metag: Remove unnecessary of_platform_populate with default match table Kefeng Wang <wangkefeng.wang@huawei.com> - 2016-05-12 14:10 +0200

#1399986 — [PATCH v4 00/18] Cleanup for populate default bus

FromKefeng Wang <wangkefeng.wang@huawei.com>
Date2016-05-12 14:10 +0200
Subject[PATCH v4 00/18] Cleanup for populate default bus
Message-ID<rxXBg-5wX-9@gated-at.bofh.it>
This cleanup patchset cantains two parts.

Firstly, introduce a new way to populate the default bus, then, we can
drop unnecessary calls from the arch code, and do the same thing for
of_iommu_init() in [1].

Secondly, use helper of_platform_default_populate() in linux/of_platform
when possible, instead of calling of_platform_populate() with default
match table, After that, it is possible for driver code build as a module,
and no need to export of_default_bus_match_table anymore.

This patchset is based on Linux 4.6-rc5, and only test in arm/arm64 qemu
with defconfig.

Changes since v3:
- Get rid of by making of_platform_populate callable multiple times,
  sugguested by Rob Herring

Changes since v2:
- Add more acks
- Update based on v4.6-rc2, of-generic.c in sh and board-artpec6.c in arm
  are considered

Changes since v1:
- Add ack, test and review
- Remove v1 patch 14/15, the similar patch has posted and applied,
  see https://patchwork.kernel.org/patch/8096991/

v1:
- https://lkml.org/lkml/2016/1/26/1123

[1]: https://lkml.org/lkml/2016/4/23/31

Kefeng Wang (18):
  of/platform: Add common method to populate default bus
  arc: Remove unnecessary of_platform_populate with default match table
  arm: Remove unnecessary of_platform_populate with default match table
  arm64: Remove unnecessary of_platform_populate with default match
    table
  c6x: Remove unnecessary of_platform_populate with default match table
  cris: Remove unnecessary of_platform_populate with default match
    table
  metag: Remove unnecessary of_platform_populate with default match
    table
  mips: Remove unnecessary of_platform_populate with default match
    table
  nios2: Remove unnecessary of_platform_populate with default match
    table
  sh: Remove unnecessary of_platform_populate with default match table
  xtensa: Remove unnecessary of_platform_populate with default match
    table
  arm: use of_platform_default_populate() to populate
  mips: use of_platform_default_populate() to populate default bus
  bus: imx-weim: use of_platform_default_populate() to populate default
    bus
  bus: uniphier-system-bus: use of_platform_default_populate() to
    populate default bus
  memory: omap-gpmc: use of_platform_default_populate() to populate
    default bus
  of: unittest: use of_platform_default_populate() to populate default
    bus
  Revert "of/platform: export of_default_bus_match_table"

 arch/arc/kernel/setup.c                  |  6 ------
 arch/arm/kernel/setup.c                  |  6 +-----
 arch/arm/mach-artpec/board-artpec6.c     |  3 ---
 arch/arm/mach-at91/at91rm9200.c          |  2 +-
 arch/arm/mach-at91/at91sam9.c            |  2 +-
 arch/arm/mach-at91/sama5.c               |  2 +-
 arch/arm/mach-bcm/board_bcm21664.c       |  2 --
 arch/arm/mach-bcm/board_bcm281xx.c       |  2 --
 arch/arm/mach-bcm/board_bcm2835.c        | 10 ----------
 arch/arm/mach-cns3xxx/core.c             |  3 +--
 arch/arm/mach-davinci/da8xx-dt.c         |  3 +--
 arch/arm/mach-exynos/exynos.c            |  3 ---
 arch/arm/mach-highbank/highbank.c        |  3 ---
 arch/arm/mach-imx/imx27-dt.c             |  2 --
 arch/arm/mach-imx/mach-imx51.c           |  2 --
 arch/arm/mach-imx/mach-imx53.c           |  2 --
 arch/arm/mach-imx/mach-imx6q.c           |  2 +-
 arch/arm/mach-imx/mach-imx6sl.c          |  2 +-
 arch/arm/mach-imx/mach-imx6sx.c          |  2 +-
 arch/arm/mach-imx/mach-imx6ul.c          |  1 -
 arch/arm/mach-imx/mach-imx7d.c           |  1 -
 arch/arm/mach-integrator/integrator_ap.c |  3 +--
 arch/arm/mach-integrator/integrator_cp.c |  3 +--
 arch/arm/mach-keystone/keystone.c        |  1 -
 arch/arm/mach-lpc32xx/phy3250.c          |  3 +--
 arch/arm/mach-mvebu/board-v7.c           |  3 ---
 arch/arm/mach-mvebu/dove.c               |  2 --
 arch/arm/mach-mvebu/kirkwood.c           |  2 +-
 arch/arm/mach-mxs/mach-mxs.c             |  3 +--
 arch/arm/mach-nspire/nspire.c            |  3 +--
 arch/arm/mach-orion5x/board-dt.c         |  3 +--
 arch/arm/mach-picoxcell/common.c         |  2 --
 arch/arm/mach-rockchip/rockchip.c        |  1 -
 arch/arm/mach-s3c24xx/mach-s3c2416-dt.c  |  2 --
 arch/arm/mach-s3c64xx/mach-s3c64xx-dt.c  |  3 ---
 arch/arm/mach-shmobile/setup-r8a7740.c   |  3 ---
 arch/arm/mach-shmobile/setup-sh73a0.c    |  2 --
 arch/arm/mach-spear/spear1310.c          |  2 --
 arch/arm/mach-spear/spear1340.c          |  1 -
 arch/arm/mach-spear/spear300.c           |  3 +--
 arch/arm/mach-spear/spear310.c           |  3 +--
 arch/arm/mach-spear/spear320.c           |  3 +--
 arch/arm/mach-spear/spear6xx.c           |  3 +--
 arch/arm/mach-tegra/tegra.c              |  2 +-
 arch/arm/mach-u300/core.c                |  3 +--
 arch/arm/mach-versatile/versatile_dt.c   |  3 +--
 arch/arm/mach-vt8500/vt8500.c            |  3 ---
 arch/arm/mach-zynq/common.c              |  2 +-
 arch/arm64/kernel/setup.c                | 13 -------------
 arch/c6x/platforms/Makefile              |  2 +-
 arch/c6x/platforms/platform.c            | 17 -----------------
 arch/cris/kernel/setup.c                 |  8 --------
 arch/metag/kernel/setup.c                |  5 +----
 arch/mips/ath79/setup.c                  |  2 --
 arch/mips/jz4740/setup.c                 |  8 --------
 arch/mips/mti-sead3/sead3-setup.c        |  8 --------
 arch/mips/pic32/pic32mzda/init.c         |  3 +--
 arch/mips/pistachio/init.c               | 13 -------------
 arch/mips/xilfpga/init.c                 | 13 -------------
 arch/nios2/platform/platform.c           |  4 +---
 arch/sh/boards/of-generic.c              | 14 --------------
 arch/xtensa/kernel/setup.c               | 11 -----------
 arch/xtensa/kernel/time.c                |  2 ++
 drivers/bus/imx-weim.c                   |  5 ++---
 drivers/bus/uniphier-system-bus.c        |  3 +--
 drivers/memory/omap-gpmc.c               |  3 +--
 drivers/of/platform.c                    | 24 ++++++++++++++++++++++--
 drivers/of/unittest.c                    |  5 ++---
 68 files changed, 58 insertions(+), 233 deletions(-)
 delete mode 100644 arch/c6x/platforms/platform.c

-- 
1.7.12.4

[toc] | [next] | [standalone]


#1399987 — [PATCH v4 02/18] arc: Remove unnecessary of_platform_populate with default match table

FromKefeng Wang <wangkefeng.wang@huawei.com>
Date2016-05-12 14:10 +0200
Subject[PATCH v4 02/18] arc: Remove unnecessary of_platform_populate with default match table
Message-ID<rxXBh-5wX-41@gated-at.bofh.it>
In reply to#1399986
After patch "of/platform: Add common method to populate default bus",
it is possible for arch code to remove unnecessary callers about the
of_platform_populate with default match table.

Cc: Vineet Gupta <vgupta@synopsys.com>
Signed-off-by: Kefeng Wang <wangkefeng.wang@huawei.com>
---
 arch/arc/kernel/setup.c | 6 ------
 1 file changed, 6 deletions(-)

diff --git a/arch/arc/kernel/setup.c b/arch/arc/kernel/setup.c
index 151acf0..27d25baa 100644
--- a/arch/arc/kernel/setup.c
+++ b/arch/arc/kernel/setup.c
@@ -15,7 +15,6 @@
 #include <linux/cpu.h>
 #include <linux/clk-provider.h>
 #include <linux/of_fdt.h>
-#include <linux/of_platform.h>
 #include <linux/cache.h>
 #include <asm/sections.h>
 #include <asm/arcregs.h>
@@ -445,11 +444,6 @@ void __init setup_arch(char **cmdline_p)
 static int __init customize_machine(void)
 {
 	of_clk_init(NULL);
-	/*
-	 * Traverses flattened DeviceTree - registering platform devices
-	 * (if any) complete with their resources
-	 */
-	of_platform_default_populate(NULL, NULL, NULL);
 
 	if (machine_desc->init_machine)
 		machine_desc->init_machine();
-- 
1.7.12.4

[toc] | [prev] | [next] | [standalone]


#1400466 — Re: [PATCH v4 02/18] arc: Remove unnecessary of_platform_populate with default match table

FromVineet Gupta <Vineet.Gupta1@synopsys.com>
Date2016-05-13 05:10 +0200
SubjectRe: [PATCH v4 02/18] arc: Remove unnecessary of_platform_populate with default match table
Message-ID<rybEd-2Qe-1@gated-at.bofh.it>
In reply to#1399987
On Thursday 12 May 2016 05:32 PM, Kefeng Wang wrote:
> After patch "of/platform: Add common method to populate default bus",
> it is possible for arch code to remove unnecessary callers about the
> of_platform_populate with default match table.
>
> Cc: Vineet Gupta <vgupta@synopsys.com>
> Signed-off-by: Kefeng Wang <wangkefeng.wang@huawei.com>

Acked-by: Vineet Gupta <vgupta@synopsys.com>

[toc] | [prev] | [next] | [standalone]


#1399989 — [PATCH v4 17/18] of: unittest: use of_platform_default_populate() to populate default bus

FromKefeng Wang <wangkefeng.wang@huawei.com>
Date2016-05-12 14:10 +0200
Subject[PATCH v4 17/18] of: unittest: use of_platform_default_populate() to populate default bus
Message-ID<rxXBh-5wX-55@gated-at.bofh.it>
In reply to#1399986
Use helper of_platform_default_populate() in linux/of_platform
when possible, instead of calling of_platform_populate() with
the default match table.

Cc: Rob Herring <robh+dt@kernel.org>
Cc: Frank Rowand <frowand.list@gmail.com>
Cc: Grant Likely <grant.likely@linaro.org>
Signed-off-by: Kefeng Wang <wangkefeng.wang@huawei.com>
---
 drivers/of/unittest.c | 5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)

diff --git a/drivers/of/unittest.c b/drivers/of/unittest.c
index e986e6e..e72cee3 100644
--- a/drivers/of/unittest.c
+++ b/drivers/of/unittest.c
@@ -772,7 +772,7 @@ static void __init of_unittest_platform_populate(void)
 	};
 
 	np = of_find_node_by_path("/testcase-data");
-	of_platform_populate(np, of_default_bus_match_table, NULL, NULL);
+	of_platform_default_populate(np, NULL, NULL);
 
 	/* Test that a missing irq domain returns -EPROBE_DEFER */
 	np = of_find_node_by_path("/testcase-data/testcase-device1");
@@ -1885,8 +1885,7 @@ static void __init of_unittest_overlay(void)
 		goto out;
 	}
 
-	ret = of_platform_populate(bus_np, of_default_bus_match_table,
-			NULL, NULL);
+	ret = of_platform_default_populate(bus_np, NULL, NULL);
 	if (ret != 0) {
 		unittest(0, "could not populate bus @ \"%s\"\n", bus_path);
 		goto out;
-- 
1.7.12.4

[toc] | [prev] | [next] | [standalone]


#1399990 — [PATCH v4 06/18] cris: Remove unnecessary of_platform_populate with default match table

FromKefeng Wang <wangkefeng.wang@huawei.com>
Date2016-05-12 14:10 +0200
Subject[PATCH v4 06/18] cris: Remove unnecessary of_platform_populate with default match table
Message-ID<rxXBh-5wX-51@gated-at.bofh.it>
In reply to#1399986
After patch "of/platform: Add common method to populate default bus",
it is possible for arch code to remove unnecessary callers about the
of_platform_populate with default match table.

Cc: Mikael Starvik <starvik@axis.com>
Cc: Jesper Nilsson <jesper.nilsson@axis.com>
Signed-off-by: Kefeng Wang <wangkefeng.wang@huawei.com>
---
 arch/cris/kernel/setup.c | 8 --------
 1 file changed, 8 deletions(-)

diff --git a/arch/cris/kernel/setup.c b/arch/cris/kernel/setup.c
index bb12aa9..4b4853d 100644
--- a/arch/cris/kernel/setup.c
+++ b/arch/cris/kernel/setup.c
@@ -21,7 +21,6 @@
 #include <linux/cpu.h>
 #include <linux/of.h>
 #include <linux/of_fdt.h>
-#include <linux/of_platform.h>
 #include <asm/setup.h>
 #include <arch/system.h>
 
@@ -212,10 +211,3 @@ static int __init topology_init(void)
 }
 
 subsys_initcall(topology_init);
-
-static int __init cris_of_init(void)
-{
-	of_platform_populate(NULL, of_default_bus_match_table, NULL, NULL);
-	return 0;
-}
-core_initcall(cris_of_init);
-- 
1.7.12.4

[toc] | [prev] | [next] | [standalone]


#1401351 — Re: [PATCH v4 06/18] cris: Remove unnecessary of_platform_populate with default match table

FromJesper Nilsson <jesper.nilsson@axis.com>
Date2016-05-16 10:10 +0200
SubjectRe: [PATCH v4 06/18] cris: Remove unnecessary of_platform_populate with default match table
Message-ID<rzlLc-4sk-15@gated-at.bofh.it>
In reply to#1399990
On Thu, May 12, 2016 at 08:06:03PM +0800, Kefeng Wang wrote:
> After patch "of/platform: Add common method to populate default bus",
> it is possible for arch code to remove unnecessary callers about the
> of_platform_populate with default match table.
> 
> Cc: Mikael Starvik <starvik@axis.com>

Acked-by: Jesper Nilsson <jesper.nilsson@axis.com>

> Signed-off-by: Kefeng Wang <wangkefeng.wang@huawei.com>
> ---
>  arch/cris/kernel/setup.c | 8 --------
>  1 file changed, 8 deletions(-)

/^JN - Jesper Nilsson
-- 
               Jesper Nilsson -- jesper.nilsson@axis.com

[toc] | [prev] | [next] | [standalone]


#1399991 — [PATCH v4 12/18] arm: use of_platform_default_populate() to populate

FromKefeng Wang <wangkefeng.wang@huawei.com>
Date2016-05-12 14:10 +0200
Subject[PATCH v4 12/18] arm: use of_platform_default_populate() to populate
Message-ID<rxXBh-5wX-45@gated-at.bofh.it>
In reply to#1399986
Use helper of_platform_default_populate() in linux/of_platform
when possible, instead of calling of_platform_populate() with
the default match table.

Cc: Nicolas Ferre <nicolas.ferre@atmel.com>
Cc: Krzysztof Halasa <khalasa@piap.pl>
Cc: Sekhar Nori <nsekhar@ti.com>
Cc: Shawn Guo <shawnguo@kernel.org>
Cc: Russell King <linux@arm.linux.org.uk>
Cc: Roland Stigge <stigge@antcom.de>
Cc: Jason Cooper <jason@lakedaemon.net>
Cc: Ray Jui <rjui@broadcom.com>
Cc: Viresh Kumar <vireshk@kernel.org>
Cc: Stephen Warren <swarren@wwwdotorg.org>
Cc: Rob Herring <robh@kernel.org>
Cc: Michal Simek <michal.simek@xilinx.com>
Signed-off-by: Kefeng Wang <wangkefeng.wang@huawei.com>
---
 arch/arm/mach-at91/at91rm9200.c          | 2 +-
 arch/arm/mach-at91/at91sam9.c            | 2 +-
 arch/arm/mach-at91/sama5.c               | 2 +-
 arch/arm/mach-cns3xxx/core.c             | 3 +--
 arch/arm/mach-davinci/da8xx-dt.c         | 3 +--
 arch/arm/mach-imx/mach-imx6q.c           | 2 +-
 arch/arm/mach-imx/mach-imx6sl.c          | 2 +-
 arch/arm/mach-imx/mach-imx6sx.c          | 2 +-
 arch/arm/mach-integrator/integrator_ap.c | 3 +--
 arch/arm/mach-integrator/integrator_cp.c | 3 +--
 arch/arm/mach-lpc32xx/phy3250.c          | 3 +--
 arch/arm/mach-mvebu/kirkwood.c           | 2 +-
 arch/arm/mach-mxs/mach-mxs.c             | 3 +--
 arch/arm/mach-nspire/nspire.c            | 3 +--
 arch/arm/mach-orion5x/board-dt.c         | 3 +--
 arch/arm/mach-spear/spear300.c           | 3 +--
 arch/arm/mach-spear/spear310.c           | 3 +--
 arch/arm/mach-spear/spear320.c           | 3 +--
 arch/arm/mach-spear/spear6xx.c           | 3 +--
 arch/arm/mach-tegra/tegra.c              | 2 +-
 arch/arm/mach-u300/core.c                | 3 +--
 arch/arm/mach-versatile/versatile_dt.c   | 3 +--
 arch/arm/mach-zynq/common.c              | 2 +-
 23 files changed, 23 insertions(+), 37 deletions(-)

diff --git a/arch/arm/mach-at91/at91rm9200.c b/arch/arm/mach-at91/at91rm9200.c
index 63b4fa2..d068ec3 100644
--- a/arch/arm/mach-at91/at91rm9200.c
+++ b/arch/arm/mach-at91/at91rm9200.c
@@ -30,7 +30,7 @@ static void __init at91rm9200_dt_device_init(void)
 	if (soc != NULL)
 		soc_dev = soc_device_to_device(soc);
 
-	of_platform_populate(NULL, of_default_bus_match_table, NULL, soc_dev);
+	of_platform_default_populate(NULL, NULL, soc_dev);
 
 	at91rm9200_pm_init();
 }
diff --git a/arch/arm/mach-at91/at91sam9.c b/arch/arm/mach-at91/at91sam9.c
index cada2a6..ba28e9c 100644
--- a/arch/arm/mach-at91/at91sam9.c
+++ b/arch/arm/mach-at91/at91sam9.c
@@ -61,7 +61,7 @@ static void __init at91sam9_common_init(void)
 	if (soc != NULL)
 		soc_dev = soc_device_to_device(soc);
 
-	of_platform_populate(NULL, of_default_bus_match_table, NULL, soc_dev);
+	of_platform_default_populate(NULL, NULL, soc_dev);
 }
 
 static void __init at91sam9_dt_device_init(void)
diff --git a/arch/arm/mach-at91/sama5.c b/arch/arm/mach-at91/sama5.c
index df8fdf1..c7d17df 100644
--- a/arch/arm/mach-at91/sama5.c
+++ b/arch/arm/mach-at91/sama5.c
@@ -50,7 +50,7 @@ static void __init sama5_dt_device_init(void)
 	if (soc != NULL)
 		soc_dev = soc_device_to_device(soc);
 
-	of_platform_populate(NULL, of_default_bus_match_table, NULL, soc_dev);
+	of_platform_default_populate(NULL, NULL, soc_dev);
 	sama5_pm_init();
 }
 
diff --git a/arch/arm/mach-cns3xxx/core.c b/arch/arm/mach-cns3xxx/core.c
index 9b1dc22..03da381 100644
--- a/arch/arm/mach-cns3xxx/core.c
+++ b/arch/arm/mach-cns3xxx/core.c
@@ -395,8 +395,7 @@ static void __init cns3xxx_init(void)
 
 	pm_power_off = cns3xxx_power_off;
 
-	of_platform_populate(NULL, of_default_bus_match_table,
-                        cns3xxx_auxdata, NULL);
+	of_platform_default_populate(NULL, cns3xxx_auxdata, NULL);
 }
 
 static const char *const cns3xxx_dt_compat[] __initconst = {
diff --git a/arch/arm/mach-davinci/da8xx-dt.c b/arch/arm/mach-davinci/da8xx-dt.c
index c4b5808..da46dc7 100644
--- a/arch/arm/mach-davinci/da8xx-dt.c
+++ b/arch/arm/mach-davinci/da8xx-dt.c
@@ -54,8 +54,7 @@ static struct of_dev_auxdata da850_auxdata_lookup[] __initdata = {
 
 static void __init da850_init_machine(void)
 {
-	of_platform_populate(NULL, of_default_bus_match_table,
-			     da850_auxdata_lookup, NULL);
+	of_platform_default_populate(NULL, da850_auxdata_lookup, NULL);
 
 }
 
diff --git a/arch/arm/mach-imx/mach-imx6q.c b/arch/arm/mach-imx/mach-imx6q.c
index cb27d56..e394070 100644
--- a/arch/arm/mach-imx/mach-imx6q.c
+++ b/arch/arm/mach-imx/mach-imx6q.c
@@ -278,7 +278,7 @@ static void __init imx6q_init_machine(void)
 
 	imx6q_enet_phy_init();
 
-	of_platform_populate(NULL, of_default_bus_match_table, NULL, parent);
+	of_platform_default_populate(NULL, NULL, parent);
 
 	imx_anatop_init();
 	cpu_is_imx6q() ?  imx6q_pm_init() : imx6dl_pm_init();
diff --git a/arch/arm/mach-imx/mach-imx6sl.c b/arch/arm/mach-imx/mach-imx6sl.c
index 3003263..37ae87d 100644
--- a/arch/arm/mach-imx/mach-imx6sl.c
+++ b/arch/arm/mach-imx/mach-imx6sl.c
@@ -52,7 +52,7 @@ static void __init imx6sl_init_machine(void)
 	if (parent == NULL)
 		pr_warn("failed to initialize soc device\n");
 
-	of_platform_populate(NULL, of_default_bus_match_table, NULL, parent);
+	of_platform_default_populate(NULL, NULL, parent);
 
 	imx6sl_fec_init();
 	imx_anatop_init();
diff --git a/arch/arm/mach-imx/mach-imx6sx.c b/arch/arm/mach-imx/mach-imx6sx.c
index 6a0b061..107cfc1 100644
--- a/arch/arm/mach-imx/mach-imx6sx.c
+++ b/arch/arm/mach-imx/mach-imx6sx.c
@@ -72,7 +72,7 @@ static void __init imx6sx_init_machine(void)
 	if (parent == NULL)
 		pr_warn("failed to initialize soc device\n");
 
-	of_platform_populate(NULL, of_default_bus_match_table, NULL, parent);
+	of_platform_default_populate(NULL, NULL, parent);
 
 	imx6sx_enet_init();
 	imx_anatop_init();
diff --git a/arch/arm/mach-integrator/integrator_ap.c b/arch/arm/mach-integrator/integrator_ap.c
index 5b0e363..4c2facd 100644
--- a/arch/arm/mach-integrator/integrator_ap.c
+++ b/arch/arm/mach-integrator/integrator_ap.c
@@ -302,8 +302,7 @@ static void __init ap_init_of(void)
 	if (!ebi_base)
 		return;
 
-	of_platform_populate(NULL, of_default_bus_match_table,
-			ap_auxdata_lookup, NULL);
+	of_platform_default_populate(NULL, ap_auxdata_lookup, NULL);
 
 	sc_dec = readl(ap_syscon_base + INTEGRATOR_SC_DEC_OFFSET);
 	for (i = 0; i < 4; i++) {
diff --git a/arch/arm/mach-integrator/integrator_cp.c b/arch/arm/mach-integrator/integrator_cp.c
index b5fb71a..31d893e 100644
--- a/arch/arm/mach-integrator/integrator_cp.c
+++ b/arch/arm/mach-integrator/integrator_cp.c
@@ -282,8 +282,7 @@ static void __init intcp_init_of(void)
 	if (!intcp_con_base)
 		return;
 
-	of_platform_populate(NULL, of_default_bus_match_table,
-			     intcp_auxdata_lookup, NULL);
+	of_platform_default_populate(NULL, intcp_auxdata_lookup, NULL);
 }
 
 static const char * intcp_dt_board_compat[] = {
diff --git a/arch/arm/mach-lpc32xx/phy3250.c b/arch/arm/mach-lpc32xx/phy3250.c
index b2f9e22..c6ec7ba 100644
--- a/arch/arm/mach-lpc32xx/phy3250.c
+++ b/arch/arm/mach-lpc32xx/phy3250.c
@@ -191,8 +191,7 @@ static void __init lpc3250_machine_init(void)
 		LPC32XX_CLKPWR_TESTCLK_TESTCLK2_EN,
 		LPC32XX_CLKPWR_TEST_CLK_SEL);
 
-	of_platform_populate(NULL, of_default_bus_match_table,
-			     lpc32xx_auxdata_lookup, NULL);
+	of_platform_default_populate(NULL, lpc32xx_auxdata_lookup, NULL);
 }
 
 static const char *const lpc32xx_dt_compat[] __initconst = {
diff --git a/arch/arm/mach-mvebu/kirkwood.c b/arch/arm/mach-mvebu/kirkwood.c
index f9d8e1e..8f459ee 100644
--- a/arch/arm/mach-mvebu/kirkwood.c
+++ b/arch/arm/mach-mvebu/kirkwood.c
@@ -179,7 +179,7 @@ static void __init kirkwood_dt_init(void)
 	kirkwood_pm_init();
 	kirkwood_dt_eth_fixup();
 
-	of_platform_populate(NULL, of_default_bus_match_table, auxdata, NULL);
+	of_platform_default_populate(NULL, auxdata, NULL);
 }
 
 static const char * const kirkwood_dt_board_compat[] __initconst = {
diff --git a/arch/arm/mach-mxs/mach-mxs.c b/arch/arm/mach-mxs/mach-mxs.c
index f1ea470..0b7fe74 100644
--- a/arch/arm/mach-mxs/mach-mxs.c
+++ b/arch/arm/mach-mxs/mach-mxs.c
@@ -498,8 +498,7 @@ static void __init mxs_machine_init(void)
 	else if (of_machine_is_compatible("msr,m28cu3"))
 		m28cu3_init();
 
-	of_platform_populate(NULL, of_default_bus_match_table,
-			     NULL, parent);
+	of_platform_default_populate(NULL, NULL, parent);
 
 	mxs_restart_init();
 
diff --git a/arch/arm/mach-nspire/nspire.c b/arch/arm/mach-nspire/nspire.c
index 34c2a1b3..f0808fc 100644
--- a/arch/arm/mach-nspire/nspire.c
+++ b/arch/arm/mach-nspire/nspire.c
@@ -57,8 +57,7 @@ static struct of_dev_auxdata nspire_auxdata[] __initdata = {
 
 static void __init nspire_init(void)
 {
-	of_platform_populate(NULL, of_default_bus_match_table,
-			nspire_auxdata, NULL);
+	of_platform_default_populate(NULL, nspire_auxdata, NULL);
 }
 
 static void nspire_restart(enum reboot_mode mode, const char *cmd)
diff --git a/arch/arm/mach-orion5x/board-dt.c b/arch/arm/mach-orion5x/board-dt.c
index 6f4c2c4..3d36f1d 100644
--- a/arch/arm/mach-orion5x/board-dt.c
+++ b/arch/arm/mach-orion5x/board-dt.c
@@ -63,8 +63,7 @@ static void __init orion5x_dt_init(void)
 	if (of_machine_is_compatible("maxtor,shared-storage-2"))
 		mss2_init();
 
-	of_platform_populate(NULL, of_default_bus_match_table,
-			     orion5x_auxdata_lookup, NULL);
+	of_platform_default_populate(NULL, orion5x_auxdata_lookup, NULL);
 }
 
 static const char *orion5x_dt_compat[] = {
diff --git a/arch/arm/mach-spear/spear300.c b/arch/arm/mach-spear/spear300.c
index 5b32edd..325b895 100644
--- a/arch/arm/mach-spear/spear300.c
+++ b/arch/arm/mach-spear/spear300.c
@@ -194,8 +194,7 @@ static void __init spear300_dt_init(void)
 	pl080_plat_data.slave_channels = spear300_dma_info;
 	pl080_plat_data.num_slave_channels = ARRAY_SIZE(spear300_dma_info);
 
-	of_platform_populate(NULL, of_default_bus_match_table,
-			spear300_auxdata_lookup, NULL);
+	of_platform_default_populate(NULL, spear300_auxdata_lookup, NULL);
 }
 
 static const char * const spear300_dt_board_compat[] = {
diff --git a/arch/arm/mach-spear/spear310.c b/arch/arm/mach-spear/spear310.c
index 86a44ac..59e173d 100644
--- a/arch/arm/mach-spear/spear310.c
+++ b/arch/arm/mach-spear/spear310.c
@@ -236,8 +236,7 @@ static void __init spear310_dt_init(void)
 	pl080_plat_data.slave_channels = spear310_dma_info;
 	pl080_plat_data.num_slave_channels = ARRAY_SIZE(spear310_dma_info);
 
-	of_platform_populate(NULL, of_default_bus_match_table,
-			spear310_auxdata_lookup, NULL);
+	of_platform_default_populate(NULL, spear310_auxdata_lookup, NULL);
 }
 
 static const char * const spear310_dt_board_compat[] = {
diff --git a/arch/arm/mach-spear/spear320.c b/arch/arm/mach-spear/spear320.c
index d45d751..0958f68 100644
--- a/arch/arm/mach-spear/spear320.c
+++ b/arch/arm/mach-spear/spear320.c
@@ -240,8 +240,7 @@ static void __init spear320_dt_init(void)
 	pl080_plat_data.slave_channels = spear320_dma_info;
 	pl080_plat_data.num_slave_channels = ARRAY_SIZE(spear320_dma_info);
 
-	of_platform_populate(NULL, of_default_bus_match_table,
-			spear320_auxdata_lookup, NULL);
+	of_platform_default_populate(NULL, spear320_auxdata_lookup, NULL);
 }
 
 static const char * const spear320_dt_board_compat[] = {
diff --git a/arch/arm/mach-spear/spear6xx.c b/arch/arm/mach-spear/spear6xx.c
index da26fa5b..ccf3573 100644
--- a/arch/arm/mach-spear/spear6xx.c
+++ b/arch/arm/mach-spear/spear6xx.c
@@ -411,8 +411,7 @@ struct of_dev_auxdata spear6xx_auxdata_lookup[] __initdata = {
 
 static void __init spear600_dt_init(void)
 {
-	of_platform_populate(NULL, of_default_bus_match_table,
-			spear6xx_auxdata_lookup, NULL);
+	of_platform_default_populate(NULL, spear6xx_auxdata_lookup, NULL);
 }
 
 static const char *spear600_dt_board_compat[] = {
diff --git a/arch/arm/mach-tegra/tegra.c b/arch/arm/mach-tegra/tegra.c
index 2378fa56..6745a65 100644
--- a/arch/arm/mach-tegra/tegra.c
+++ b/arch/arm/mach-tegra/tegra.c
@@ -115,7 +115,7 @@ static void __init tegra_dt_init(void)
 	 * devices
 	 */
 out:
-	of_platform_populate(NULL, of_default_bus_match_table, NULL, parent);
+	of_platform_default_populate(NULL, NULL, parent);
 }
 
 static void __init paz00_init(void)
diff --git a/arch/arm/mach-u300/core.c b/arch/arm/mach-u300/core.c
index 546338b..a4910ea 100644
--- a/arch/arm/mach-u300/core.c
+++ b/arch/arm/mach-u300/core.c
@@ -391,8 +391,7 @@ static void __init u300_init_machine_dt(void)
 	pinctrl_register_mappings(u300_pinmux_map,
 				  ARRAY_SIZE(u300_pinmux_map));
 
-	of_platform_populate(NULL, of_default_bus_match_table,
-			u300_auxdata_lookup, NULL);
+	of_platform_default_populate(NULL, u300_auxdata_lookup, NULL);
 
 	/* Enable SEMI self refresh */
 	val = readw(syscon_base + U300_SYSCON_SMCR) |
diff --git a/arch/arm/mach-versatile/versatile_dt.c b/arch/arm/mach-versatile/versatile_dt.c
index dff1c05..efcf7b9 100644
--- a/arch/arm/mach-versatile/versatile_dt.c
+++ b/arch/arm/mach-versatile/versatile_dt.c
@@ -391,8 +391,7 @@ static void __init versatile_dt_init(void)
 	versatile_dt_pci_init();
 
 	platform_device_register(&versatile_flash_device);
-	of_platform_populate(NULL, of_default_bus_match_table,
-			     versatile_auxdata_lookup, NULL);
+	of_platform_default_populate(NULL, versatile_auxdata_lookup, NULL);
 }
 
 static const char *const versatile_dt_match[] __initconst = {
diff --git a/arch/arm/mach-zynq/common.c b/arch/arm/mach-zynq/common.c
index 860ffb6..06abe29 100644
--- a/arch/arm/mach-zynq/common.c
+++ b/arch/arm/mach-zynq/common.c
@@ -142,7 +142,7 @@ out:
 	 * Finished with the static registrations now; fill in the missing
 	 * devices
 	 */
-	of_platform_populate(NULL, of_default_bus_match_table, NULL, parent);
+	of_platform_default_populate(NULL, NULL, parent);
 
 	platform_device_register(&zynq_cpuidle_device);
 	platform_device_register_full(&devinfo);
-- 
1.7.12.4

[toc] | [prev] | [next] | [standalone]


#1400465 — Re: [PATCH v4 12/18] arm: use of_platform_default_populate() to populate

FromViresh Kumar <viresh.kumar@linaro.org>
Date2016-05-13 05:00 +0200
SubjectRe: [PATCH v4 12/18] arm: use of_platform_default_populate() to populate
Message-ID<rybuy-2om-13@gated-at.bofh.it>
In reply to#1399991
On 12-05-16, 20:06, Kefeng Wang wrote:
> Use helper of_platform_default_populate() in linux/of_platform
> when possible, instead of calling of_platform_populate() with
> the default match table.
> 
> Cc: Nicolas Ferre <nicolas.ferre@atmel.com>
> Cc: Krzysztof Halasa <khalasa@piap.pl>
> Cc: Sekhar Nori <nsekhar@ti.com>
> Cc: Shawn Guo <shawnguo@kernel.org>
> Cc: Russell King <linux@arm.linux.org.uk>
> Cc: Roland Stigge <stigge@antcom.de>
> Cc: Jason Cooper <jason@lakedaemon.net>
> Cc: Ray Jui <rjui@broadcom.com>
> Cc: Viresh Kumar <vireshk@kernel.org>
> Cc: Stephen Warren <swarren@wwwdotorg.org>
> Cc: Rob Herring <robh@kernel.org>
> Cc: Michal Simek <michal.simek@xilinx.com>
> Signed-off-by: Kefeng Wang <wangkefeng.wang@huawei.com>
> ---
>  arch/arm/mach-spear/spear300.c           | 3 +--
>  arch/arm/mach-spear/spear310.c           | 3 +--
>  arch/arm/mach-spear/spear320.c           | 3 +--
>  arch/arm/mach-spear/spear6xx.c           | 3 +--

Acked-by: Viresh Kumar <viresh.kumar@linaro.org>

-- 
viresh

[toc] | [prev] | [next] | [standalone]


#1402182 — Re: [PATCH v4 12/18] arm: use of_platform_default_populate() to populate

FromSekhar Nori <nsekhar@ti.com>
Date2016-05-17 10:10 +0200
SubjectRe: [PATCH v4 12/18] arm: use of_platform_default_populate() to populate
Message-ID<rzIeK-21W-21@gated-at.bofh.it>
In reply to#1399991
On Thursday 12 May 2016 05:36 PM, Kefeng Wang wrote:
> Use helper of_platform_default_populate() in linux/of_platform
> when possible, instead of calling of_platform_populate() with
> the default match table.
> 
> Cc: Nicolas Ferre <nicolas.ferre@atmel.com>
> Cc: Krzysztof Halasa <khalasa@piap.pl>
> Cc: Sekhar Nori <nsekhar@ti.com>
> Cc: Shawn Guo <shawnguo@kernel.org>
> Cc: Russell King <linux@arm.linux.org.uk>
> Cc: Roland Stigge <stigge@antcom.de>
> Cc: Jason Cooper <jason@lakedaemon.net>
> Cc: Ray Jui <rjui@broadcom.com>
> Cc: Viresh Kumar <vireshk@kernel.org>
> Cc: Stephen Warren <swarren@wwwdotorg.org>
> Cc: Rob Herring <robh@kernel.org>
> Cc: Michal Simek <michal.simek@xilinx.com>
> Signed-off-by: Kefeng Wang <wangkefeng.wang@huawei.com>
> ---

> diff --git a/arch/arm/mach-davinci/da8xx-dt.c b/arch/arm/mach-davinci/da8xx-dt.c
> index c4b5808..da46dc7 100644
> --- a/arch/arm/mach-davinci/da8xx-dt.c
> +++ b/arch/arm/mach-davinci/da8xx-dt.c
> @@ -54,8 +54,7 @@ static struct of_dev_auxdata da850_auxdata_lookup[] __initdata = {
>  
>  static void __init da850_init_machine(void)
>  {
> -	of_platform_populate(NULL, of_default_bus_match_table,
> -			     da850_auxdata_lookup, NULL);
> +	of_platform_default_populate(NULL, da850_auxdata_lookup, NULL);
>  
>  }

The mach-davinci change is already queued for v4.7

Thanks,
Sekhar

[toc] | [prev] | [next] | [standalone]


#1402214 — Re: [PATCH v4 12/18] arm: use of_platform_default_populate() to populate

FromNicolas Ferre <nicolas.ferre@atmel.com>
Date2016-05-17 11:20 +0200
SubjectRe: [PATCH v4 12/18] arm: use of_platform_default_populate() to populate
Message-ID<rzJkt-2Fq-5@gated-at.bofh.it>
In reply to#1399991
Le 12/05/2016 14:06, Kefeng Wang a écrit :
> Use helper of_platform_default_populate() in linux/of_platform
> when possible, instead of calling of_platform_populate() with
> the default match table.
> 
> Cc: Nicolas Ferre <nicolas.ferre@atmel.com>
> Cc: Krzysztof Halasa <khalasa@piap.pl>
> Cc: Sekhar Nori <nsekhar@ti.com>
> Cc: Shawn Guo <shawnguo@kernel.org>
> Cc: Russell King <linux@arm.linux.org.uk>
> Cc: Roland Stigge <stigge@antcom.de>
> Cc: Jason Cooper <jason@lakedaemon.net>
> Cc: Ray Jui <rjui@broadcom.com>
> Cc: Viresh Kumar <vireshk@kernel.org>
> Cc: Stephen Warren <swarren@wwwdotorg.org>
> Cc: Rob Herring <robh@kernel.org>
> Cc: Michal Simek <michal.simek@xilinx.com>
> Signed-off-by: Kefeng Wang <wangkefeng.wang@huawei.com>
> ---
>  arch/arm/mach-at91/at91rm9200.c          | 2 +-
>  arch/arm/mach-at91/at91sam9.c            | 2 +-
>  arch/arm/mach-at91/sama5.c               | 2 +-

Acked-by: Nicolas Ferre <nicolas.ferre@atmel.com>

Best regards,
-- 
Nicolas Ferre

[toc] | [prev] | [next] | [standalone]


#1399992 — [PATCH v4 05/18] c6x: Remove unnecessary of_platform_populate with default match table

FromKefeng Wang <wangkefeng.wang@huawei.com>
Date2016-05-12 14:10 +0200
Subject[PATCH v4 05/18] c6x: Remove unnecessary of_platform_populate with default match table
Message-ID<rxXBh-5wX-49@gated-at.bofh.it>
In reply to#1399986
After patch "of/platform: Add common method to populate default bus",
it is possible for arch code to remove unnecessary callers about the
of_platform_populate with default match table.

Cc: Mikael Starvik <starvik@axis.com>
Cc: Jesper Nilsson <jesper.nilsson@axis.com>
Signed-off-by: Kefeng Wang <wangkefeng.wang@huawei.com>
---
 arch/c6x/platforms/Makefile   |  2 +-
 arch/c6x/platforms/platform.c | 17 -----------------
 2 files changed, 1 insertion(+), 18 deletions(-)
 delete mode 100644 arch/c6x/platforms/platform.c

diff --git a/arch/c6x/platforms/Makefile b/arch/c6x/platforms/Makefile
index 9a95b9b..5f7d934 100644
--- a/arch/c6x/platforms/Makefile
+++ b/arch/c6x/platforms/Makefile
@@ -4,7 +4,7 @@
 # Copyright 2010, 2011 Texas Instruments Incorporated
 #
 
-obj-y = platform.o cache.o megamod-pic.o pll.o plldata.o timer64.o
+obj-y = cache.o megamod-pic.o pll.o plldata.o timer64.o
 obj-y += dscr.o
 
 # SoC objects
diff --git a/arch/c6x/platforms/platform.c b/arch/c6x/platforms/platform.c
deleted file mode 100644
index 26c1a35..0000000
--- a/arch/c6x/platforms/platform.c
+++ /dev/null
@@ -1,17 +0,0 @@
-/*
- * Copyright 2011 Texas Instruments Incorporated
- *
- * This file is licensed under the terms of the GNU General Public License
- * version 2. This program is licensed "as is" without any warranty of any
- * kind, whether express or implied.
- */
-
-#include <linux/init.h>
-#include <linux/of_platform.h>
-
-static int __init c6x_device_probe(void)
-{
-	of_platform_populate(NULL, of_default_bus_match_table, NULL, NULL);
-	return 0;
-}
-core_initcall(c6x_device_probe);
-- 
1.7.12.4

[toc] | [prev] | [next] | [standalone]


#1399993 — [PATCH v4 10/18] sh: Remove unnecessary of_platform_populate with default match table

FromKefeng Wang <wangkefeng.wang@huawei.com>
Date2016-05-12 14:10 +0200
Subject[PATCH v4 10/18] sh: Remove unnecessary of_platform_populate with default match table
Message-ID<rxXBh-5wX-53@gated-at.bofh.it>
In reply to#1399986
After patch "of/platform: Add common method to populate default bus",
it is possible for arch code to remove unnecessary callers about the
of_platform_populate with default match table.

Cc: Yoshinori Sato <ysato@users.sourceforge.jp>
Cc: Rich Felker <dalias@libc.org>
Signed-off-by: Kefeng Wang <wangkefeng.wang@huawei.com>
---
 arch/sh/boards/of-generic.c | 14 --------------
 1 file changed, 14 deletions(-)

diff --git a/arch/sh/boards/of-generic.c b/arch/sh/boards/of-generic.c
index b4d4313..911ffb9 100644
--- a/arch/sh/boards/of-generic.c
+++ b/arch/sh/boards/of-generic.c
@@ -9,7 +9,6 @@
  */
 
 #include <linux/of.h>
-#include <linux/of_platform.h>
 #include <linux/of_fdt.h>
 #include <linux/clocksource.h>
 #include <linux/irqchip.h>
@@ -179,16 +178,3 @@ void __init arch_init_clk_ops(struct sh_clk_ops **ops, int idx)
 void __init plat_irq_setup(void)
 {
 }
-
-static int __init sh_of_device_init(void)
-{
-	pr_info("SH generic board support: populating platform devices\n");
-	if (of_have_populated_dt()) {
-		of_platform_populate(NULL, of_default_bus_match_table,
-				     NULL, NULL);
-	} else {
-		pr_crit("Device tree not populated\n");
-	}
-	return 0;
-}
-arch_initcall_sync(sh_of_device_init);
-- 
1.7.12.4

[toc] | [prev] | [next] | [standalone]


#1400285 — Re: [PATCH v4 10/18] sh: Remove unnecessary of_platform_populate with default match table

FromRich Felker <dalias@libc.org>
Date2016-05-12 20:50 +0200
SubjectRe: [PATCH v4 10/18] sh: Remove unnecessary of_platform_populate with default match table
Message-ID<ry3Qm-2Xu-3@gated-at.bofh.it>
In reply to#1399993
On Thu, May 12, 2016 at 08:06:07PM +0800, Kefeng Wang wrote:
> After patch "of/platform: Add common method to populate default bus",
> it is possible for arch code to remove unnecessary callers about the
> of_platform_populate with default match table.

s/about the/of/ ?

> Cc: Yoshinori Sato <ysato@users.sourceforge.jp>
> Cc: Rich Felker <dalias@libc.org>
> Signed-off-by: Kefeng Wang <wangkefeng.wang@huawei.com>
> ---
>  arch/sh/boards/of-generic.c | 14 --------------
>  1 file changed, 14 deletions(-)
> 
> diff --git a/arch/sh/boards/of-generic.c b/arch/sh/boards/of-generic.c
> index b4d4313..911ffb9 100644
> --- a/arch/sh/boards/of-generic.c
> +++ b/arch/sh/boards/of-generic.c
> @@ -9,7 +9,6 @@
>   */
>  
>  #include <linux/of.h>
> -#include <linux/of_platform.h>
>  #include <linux/of_fdt.h>
>  #include <linux/clocksource.h>
>  #include <linux/irqchip.h>
> @@ -179,16 +178,3 @@ void __init arch_init_clk_ops(struct sh_clk_ops **ops, int idx)
>  void __init plat_irq_setup(void)
>  {
>  }
> -
> -static int __init sh_of_device_init(void)
> -{
> -	pr_info("SH generic board support: populating platform devices\n");
> -	if (of_have_populated_dt()) {
> -		of_platform_populate(NULL, of_default_bus_match_table,
> -				     NULL, NULL);
> -	} else {
> -		pr_crit("Device tree not populated\n");
> -	}
> -	return 0;
> -}
> -arch_initcall_sync(sh_of_device_init);
> -- 
> 1.7.12.4

I have not tested this, but as long as the new arch-generic code takes
place at the same point in the init sequence (arch_initcall_sync), as
it seems to, I don't expect any sh-specific breakage. In general I'm
happy to see this kind of change.

Rich

[toc] | [prev] | [next] | [standalone]


#1400444 — Re: [PATCH v4 10/18] sh: Remove unnecessary of_platform_populate with default match table

FromKefeng Wang <wangkefeng.wang@huawei.com>
Date2016-05-13 03:50 +0200
SubjectRe: [PATCH v4 10/18] sh: Remove unnecessary of_platform_populate with default match table
Message-ID<ryaoN-1kb-5@gated-at.bofh.it>
In reply to#1400285

On 2016/5/13 2:38, Rich Felker wrote:
> On Thu, May 12, 2016 at 08:06:07PM +0800, Kefeng Wang wrote:
>> After patch "of/platform: Add common method to populate default bus",
>> it is possible for arch code to remove unnecessary callers about the
>> of_platform_populate with default match table.
> 
> s/about the/of/ ?

Ok, will update.

> 
>> Cc: Yoshinori Sato <ysato@users.sourceforge.jp>
>> Cc: Rich Felker <dalias@libc.org>
>> Signed-off-by: Kefeng Wang <wangkefeng.wang@huawei.com>
>> ---
>>  arch/sh/boards/of-generic.c | 14 --------------
>>  1 file changed, 14 deletions(-)
>>
>> diff --git a/arch/sh/boards/of-generic.c b/arch/sh/boards/of-generic.c
>> index b4d4313..911ffb9 100644
>> --- a/arch/sh/boards/of-generic.c
>> +++ b/arch/sh/boards/of-generic.c
>> @@ -9,7 +9,6 @@
>>   */
>>  
>>  #include <linux/of.h>
>> -#include <linux/of_platform.h>
>>  #include <linux/of_fdt.h>
>>  #include <linux/clocksource.h>
>>  #include <linux/irqchip.h>
>> @@ -179,16 +178,3 @@ void __init arch_init_clk_ops(struct sh_clk_ops **ops, int idx)
>>  void __init plat_irq_setup(void)
>>  {
>>  }
>> -
>> -static int __init sh_of_device_init(void)
>> -{
>> -	pr_info("SH generic board support: populating platform devices\n");
>> -	if (of_have_populated_dt()) {
>> -		of_platform_populate(NULL, of_default_bus_match_table,
>> -				     NULL, NULL);
>> -	} else {
>> -		pr_crit("Device tree not populated\n");
>> -	}
>> -	return 0;
>> -}
>> -arch_initcall_sync(sh_of_device_init);
>> -- 
>> 1.7.12.4
> 
> I have not tested this, but as long as the new arch-generic code takes
> place at the same point in the init sequence (arch_initcall_sync), as
> it seems to, I don't expect any sh-specific breakage. In general I'm
> happy to see this kind of change.

Hope no breakage in all archs, but I can only test this in few arm/arm64 boards :(

Thanks,
Kefeng

> 
> Rich
> 
> .
> 

[toc] | [prev] | [next] | [standalone]


#1399995 — [PATCH v4 07/18] metag: Remove unnecessary of_platform_populate with default match table

FromKefeng Wang <wangkefeng.wang@huawei.com>
Date2016-05-12 14:10 +0200
Subject[PATCH v4 07/18] metag: Remove unnecessary of_platform_populate with default match table
Message-ID<rxXBi-5wX-61@gated-at.bofh.it>
In reply to#1399986
After patch "of/platform: Add common method to populate default bus",
it is possible for arch code to remove unnecessary callers about the
of_platform_populate with default match table.

Cc: James Hogan <james.hogan@imgtec.com>
Signed-off-by: Kefeng Wang <wangkefeng.wang@huawei.com>
---
 arch/metag/kernel/setup.c | 5 +----
 1 file changed, 1 insertion(+), 4 deletions(-)

diff --git a/arch/metag/kernel/setup.c b/arch/metag/kernel/setup.c
index 31cf53d..1166f1f 100644
--- a/arch/metag/kernel/setup.c
+++ b/arch/metag/kernel/setup.c
@@ -20,7 +20,6 @@
 #include <linux/memblock.h>
 #include <linux/mm.h>
 #include <linux/of_fdt.h>
-#include <linux/of_platform.h>
 #include <linux/pfn.h>
 #include <linux/root_dev.h>
 #include <linux/sched.h>
@@ -414,9 +413,7 @@ static int __init customize_machine(void)
 	/* customizes platform devices, or adds new ones */
 	if (machine_desc->init_machine)
 		machine_desc->init_machine();
-	else
-		of_platform_populate(NULL, of_default_bus_match_table, NULL,
-				     NULL);
+
 	return 0;
 }
 arch_initcall(customize_machine);
-- 
1.7.12.4

[toc] | [prev] | [standalone]


Back to top | Article view | linux.kernel


csiph-web