Patchwork [v2] ARM: remove name from machine_desc for DT platforms

login
register
mail settings
Submitter Rob Herring
Date Nov. 3, 2013, 8:50 p.m.
Message ID <1383511801-31682-1-git-send-email-robherring2@gmail.com>
Download mbox | patch
Permalink /patch/288079/
State New
Headers show

Comments

Rob Herring - Nov. 3, 2013, 8:50 p.m.
From: Rob Herring <rob.herring@calxeda.com>

As part of the effort to ultimately remove struct machine_desc, the
machine name is not really needed. It is only used for /proc/cpuinfo
"Hardware" field. Get this information from the DT instead and remove
the name string in the machine descriptor for DT machine descriptors. The
model or machine compatible property from the DT is used instead.

This likely changes the name reported by /proc/cpuinfo. There could be
some userspace dependencies on the old name. Debian libdebian-installer
used to use this to determine kernel flavour, but now uses the DT
directly. It is not really a good idea for userspace to depend on this
anyway.

Signed-off-by: Rob Herring <rob.herring@calxeda.com>
---
Kevin, Olof,

Here is updated patch based on arm-soc for-next and my DT for-next 
branches. I plan to get the DT changes in early in the merge window.

The patch is also available here: 

git://git.kernel.org/pub/scm/linux/kernel/git/robh/linux.git dt-rm-mach-name

Rob

 arch/arm/include/asm/mach/arch.h                     |  3 +--
 arch/arm/kernel/devtree.c                            |  2 +-
 arch/arm/kernel/setup.c                              |  4 ++--
 arch/arm/mach-at91/board-dt-rm9200.c                 |  2 +-
 arch/arm/mach-at91/board-dt-sam9.c                   |  2 +-
 arch/arm/mach-at91/board-dt-sama5.c                  |  2 +-
 arch/arm/mach-bcm/board_bcm281xx.c                   |  2 +-
 arch/arm/mach-bcm2835/bcm2835.c                      |  2 +-
 arch/arm/mach-cns3xxx/core.c                         |  2 +-
 arch/arm/mach-davinci/da8xx-dt.c                     |  2 +-
 arch/arm/mach-dove/board-dt.c                        |  2 +-
 arch/arm/mach-exynos/mach-exynos4-dt.c               |  2 +-
 arch/arm/mach-exynos/mach-exynos5-dt.c               |  2 +-
 arch/arm/mach-highbank/highbank.c                    |  2 +-
 arch/arm/mach-imx/imx25-dt.c                         |  2 +-
 arch/arm/mach-imx/imx27-dt.c                         |  2 +-
 arch/arm/mach-imx/imx31-dt.c                         |  2 +-
 arch/arm/mach-imx/imx51-dt.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-vf610.c                       |  2 +-
 arch/arm/mach-integrator/integrator_ap.c             |  2 +-
 arch/arm/mach-integrator/integrator_cp.c             |  2 +-
 arch/arm/mach-keystone/keystone.c                    |  2 +-
 arch/arm/mach-kirkwood/board-dt.c                    |  2 +-
 arch/arm/mach-lpc32xx/phy3250.c                      |  2 +-
 arch/arm/mach-mmp/mmp-dt.c                           |  4 ++--
 arch/arm/mach-mmp/mmp2-dt.c                          |  2 +-
 arch/arm/mach-msm/board-dt.c                         |  2 +-
 arch/arm/mach-mvebu/armada-370-xp.c                  |  2 +-
 arch/arm/mach-mxs/mach-mxs.c                         |  2 +-
 arch/arm/mach-nomadik/cpu-8815.c                     |  2 +-
 arch/arm/mach-nspire/nspire.c                        |  2 +-
 arch/arm/mach-omap2/board-generic.c                  | 20 ++++++++++----------
 arch/arm/mach-orion5x/board-dt.c                     |  2 +-
 arch/arm/mach-picoxcell/common.c                     |  2 +-
 arch/arm/mach-prima2/common.c                        |  6 +++---
 arch/arm/mach-pxa/pxa-dt.c                           |  2 +-
 arch/arm/mach-rockchip/rockchip.c                    |  2 +-
 arch/arm/mach-s3c24xx/mach-s3c2416-dt.c              |  2 +-
 arch/arm/mach-s3c64xx/mach-s3c64xx-dt.c              |  2 +-
 arch/arm/mach-shmobile/board-ape6evm-reference.c     |  2 +-
 arch/arm/mach-shmobile/board-ape6evm.c               |  2 +-
 .../mach-shmobile/board-armadillo800eva-reference.c  |  2 +-
 arch/arm/mach-shmobile/board-armadillo800eva.c       |  2 +-
 arch/arm/mach-shmobile/board-bockw-reference.c       |  2 +-
 arch/arm/mach-shmobile/board-bockw.c                 |  2 +-
 arch/arm/mach-shmobile/board-genmai.c                |  2 +-
 arch/arm/mach-shmobile/board-koelsch.c               |  2 +-
 arch/arm/mach-shmobile/board-kzm9d-reference.c       |  2 +-
 arch/arm/mach-shmobile/board-kzm9d.c                 |  2 +-
 arch/arm/mach-shmobile/board-kzm9g-reference.c       |  2 +-
 arch/arm/mach-shmobile/board-kzm9g.c                 |  2 +-
 arch/arm/mach-shmobile/board-lager-reference.c       |  2 +-
 arch/arm/mach-shmobile/board-lager.c                 |  2 +-
 arch/arm/mach-shmobile/board-mackerel.c              |  2 +-
 arch/arm/mach-shmobile/board-marzen-reference.c      |  2 +-
 arch/arm/mach-shmobile/board-marzen.c                |  2 +-
 arch/arm/mach-shmobile/setup-emev2.c                 |  2 +-
 arch/arm/mach-shmobile/setup-r7s72100.c              |  2 +-
 arch/arm/mach-shmobile/setup-r8a73a4.c               |  2 +-
 arch/arm/mach-shmobile/setup-r8a7740.c               |  2 +-
 arch/arm/mach-shmobile/setup-r8a7778.c               |  2 +-
 arch/arm/mach-shmobile/setup-r8a7779.c               |  2 +-
 arch/arm/mach-shmobile/setup-r8a7790.c               |  2 +-
 arch/arm/mach-shmobile/setup-r8a7791.c               |  2 +-
 arch/arm/mach-shmobile/setup-sh7372.c                |  2 +-
 arch/arm/mach-shmobile/setup-sh73a0.c                |  2 +-
 arch/arm/mach-socfpga/socfpga.c                      |  2 +-
 arch/arm/mach-spear/spear1310.c                      |  2 +-
 arch/arm/mach-spear/spear1340.c                      |  2 +-
 arch/arm/mach-spear/spear300.c                       |  2 +-
 arch/arm/mach-spear/spear310.c                       |  2 +-
 arch/arm/mach-spear/spear320.c                       |  2 +-
 arch/arm/mach-spear/spear6xx.c                       |  2 +-
 arch/arm/mach-sti/board-dt.c                         |  2 +-
 arch/arm/mach-sunxi/sunxi.c                          |  6 +++---
 arch/arm/mach-tegra/tegra.c                          |  2 +-
 arch/arm/mach-u300/core.c                            |  2 +-
 arch/arm/mach-ux500/cpu-db8500.c                     |  2 +-
 arch/arm/mach-versatile/versatile_dt.c               |  2 +-
 arch/arm/mach-vexpress/v2m.c                         |  2 +-
 arch/arm/mach-virt/virt.c                            |  2 +-
 arch/arm/mach-vt8500/vt8500.c                        |  2 +-
 arch/arm/mach-zynq/common.c                          |  2 +-
 86 files changed, 101 insertions(+), 102 deletions(-)
Grant Likely - Nov. 4, 2013, 11:36 a.m.
On Sun, Nov 3, 2013 at 8:50 PM, Rob Herring <robherring2@gmail.com> wrote:
> From: Rob Herring <rob.herring@calxeda.com>
>
> As part of the effort to ultimately remove struct machine_desc, the
> machine name is not really needed. It is only used for /proc/cpuinfo
> "Hardware" field. Get this information from the DT instead and remove
> the name string in the machine descriptor for DT machine descriptors. The
> model or machine compatible property from the DT is used instead.

I've obviously missed some discussions because I wasn't aware of the
plan to remove machine_desc. That's neither here not there, but for as
long as the structure still exists it is really useful to discover
which machine_desc the kernel chooses at boot time. If you're going to
remove this, then at the very least I would embed the filename or
something similar into the machine desc so it is available for
debugging. It can go away when the structure is removed.

g.

>
> This likely changes the name reported by /proc/cpuinfo. There could be
> some userspace dependencies on the old name. Debian libdebian-installer
> used to use this to determine kernel flavour, but now uses the DT
> directly. It is not really a good idea for userspace to depend on this
> anyway.
>
> Signed-off-by: Rob Herring <rob.herring@calxeda.com>
> ---
> Kevin, Olof,
>
> Here is updated patch based on arm-soc for-next and my DT for-next
> branches. I plan to get the DT changes in early in the merge window.
>
> The patch is also available here:
>
> git://git.kernel.org/pub/scm/linux/kernel/git/robh/linux.git dt-rm-mach-name
>
> Rob
>
>  arch/arm/include/asm/mach/arch.h                     |  3 +--
>  arch/arm/kernel/devtree.c                            |  2 +-
>  arch/arm/kernel/setup.c                              |  4 ++--
>  arch/arm/mach-at91/board-dt-rm9200.c                 |  2 +-
>  arch/arm/mach-at91/board-dt-sam9.c                   |  2 +-
>  arch/arm/mach-at91/board-dt-sama5.c                  |  2 +-
>  arch/arm/mach-bcm/board_bcm281xx.c                   |  2 +-
>  arch/arm/mach-bcm2835/bcm2835.c                      |  2 +-
>  arch/arm/mach-cns3xxx/core.c                         |  2 +-
>  arch/arm/mach-davinci/da8xx-dt.c                     |  2 +-
>  arch/arm/mach-dove/board-dt.c                        |  2 +-
>  arch/arm/mach-exynos/mach-exynos4-dt.c               |  2 +-
>  arch/arm/mach-exynos/mach-exynos5-dt.c               |  2 +-
>  arch/arm/mach-highbank/highbank.c                    |  2 +-
>  arch/arm/mach-imx/imx25-dt.c                         |  2 +-
>  arch/arm/mach-imx/imx27-dt.c                         |  2 +-
>  arch/arm/mach-imx/imx31-dt.c                         |  2 +-
>  arch/arm/mach-imx/imx51-dt.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-vf610.c                       |  2 +-
>  arch/arm/mach-integrator/integrator_ap.c             |  2 +-
>  arch/arm/mach-integrator/integrator_cp.c             |  2 +-
>  arch/arm/mach-keystone/keystone.c                    |  2 +-
>  arch/arm/mach-kirkwood/board-dt.c                    |  2 +-
>  arch/arm/mach-lpc32xx/phy3250.c                      |  2 +-
>  arch/arm/mach-mmp/mmp-dt.c                           |  4 ++--
>  arch/arm/mach-mmp/mmp2-dt.c                          |  2 +-
>  arch/arm/mach-msm/board-dt.c                         |  2 +-
>  arch/arm/mach-mvebu/armada-370-xp.c                  |  2 +-
>  arch/arm/mach-mxs/mach-mxs.c                         |  2 +-
>  arch/arm/mach-nomadik/cpu-8815.c                     |  2 +-
>  arch/arm/mach-nspire/nspire.c                        |  2 +-
>  arch/arm/mach-omap2/board-generic.c                  | 20 ++++++++++----------
>  arch/arm/mach-orion5x/board-dt.c                     |  2 +-
>  arch/arm/mach-picoxcell/common.c                     |  2 +-
>  arch/arm/mach-prima2/common.c                        |  6 +++---
>  arch/arm/mach-pxa/pxa-dt.c                           |  2 +-
>  arch/arm/mach-rockchip/rockchip.c                    |  2 +-
>  arch/arm/mach-s3c24xx/mach-s3c2416-dt.c              |  2 +-
>  arch/arm/mach-s3c64xx/mach-s3c64xx-dt.c              |  2 +-
>  arch/arm/mach-shmobile/board-ape6evm-reference.c     |  2 +-
>  arch/arm/mach-shmobile/board-ape6evm.c               |  2 +-
>  .../mach-shmobile/board-armadillo800eva-reference.c  |  2 +-
>  arch/arm/mach-shmobile/board-armadillo800eva.c       |  2 +-
>  arch/arm/mach-shmobile/board-bockw-reference.c       |  2 +-
>  arch/arm/mach-shmobile/board-bockw.c                 |  2 +-
>  arch/arm/mach-shmobile/board-genmai.c                |  2 +-
>  arch/arm/mach-shmobile/board-koelsch.c               |  2 +-
>  arch/arm/mach-shmobile/board-kzm9d-reference.c       |  2 +-
>  arch/arm/mach-shmobile/board-kzm9d.c                 |  2 +-
>  arch/arm/mach-shmobile/board-kzm9g-reference.c       |  2 +-
>  arch/arm/mach-shmobile/board-kzm9g.c                 |  2 +-
>  arch/arm/mach-shmobile/board-lager-reference.c       |  2 +-
>  arch/arm/mach-shmobile/board-lager.c                 |  2 +-
>  arch/arm/mach-shmobile/board-mackerel.c              |  2 +-
>  arch/arm/mach-shmobile/board-marzen-reference.c      |  2 +-
>  arch/arm/mach-shmobile/board-marzen.c                |  2 +-
>  arch/arm/mach-shmobile/setup-emev2.c                 |  2 +-
>  arch/arm/mach-shmobile/setup-r7s72100.c              |  2 +-
>  arch/arm/mach-shmobile/setup-r8a73a4.c               |  2 +-
>  arch/arm/mach-shmobile/setup-r8a7740.c               |  2 +-
>  arch/arm/mach-shmobile/setup-r8a7778.c               |  2 +-
>  arch/arm/mach-shmobile/setup-r8a7779.c               |  2 +-
>  arch/arm/mach-shmobile/setup-r8a7790.c               |  2 +-
>  arch/arm/mach-shmobile/setup-r8a7791.c               |  2 +-
>  arch/arm/mach-shmobile/setup-sh7372.c                |  2 +-
>  arch/arm/mach-shmobile/setup-sh73a0.c                |  2 +-
>  arch/arm/mach-socfpga/socfpga.c                      |  2 +-
>  arch/arm/mach-spear/spear1310.c                      |  2 +-
>  arch/arm/mach-spear/spear1340.c                      |  2 +-
>  arch/arm/mach-spear/spear300.c                       |  2 +-
>  arch/arm/mach-spear/spear310.c                       |  2 +-
>  arch/arm/mach-spear/spear320.c                       |  2 +-
>  arch/arm/mach-spear/spear6xx.c                       |  2 +-
>  arch/arm/mach-sti/board-dt.c                         |  2 +-
>  arch/arm/mach-sunxi/sunxi.c                          |  6 +++---
>  arch/arm/mach-tegra/tegra.c                          |  2 +-
>  arch/arm/mach-u300/core.c                            |  2 +-
>  arch/arm/mach-ux500/cpu-db8500.c                     |  2 +-
>  arch/arm/mach-versatile/versatile_dt.c               |  2 +-
>  arch/arm/mach-vexpress/v2m.c                         |  2 +-
>  arch/arm/mach-virt/virt.c                            |  2 +-
>  arch/arm/mach-vt8500/vt8500.c                        |  2 +-
>  arch/arm/mach-zynq/common.c                          |  2 +-
>  86 files changed, 101 insertions(+), 102 deletions(-)
>
> diff --git a/arch/arm/include/asm/mach/arch.h b/arch/arm/include/asm/mach/arch.h
> index 402a2bc..3c82227 100644
> --- a/arch/arm/include/asm/mach/arch.h
> +++ b/arch/arm/include/asm/mach/arch.h
> @@ -88,11 +88,10 @@ static const struct machine_desc __mach_desc_##_type        \
>  #define MACHINE_END                            \
>  };
>
> -#define DT_MACHINE_START(_name, _namestr)              \
> +#define DT_MACHINE_START(_name)                \
>  static const struct machine_desc __mach_desc_##_name   \
>   __used                                                        \
>   __attribute__((__section__(".arch.info.init"))) = {   \
>         .nr             = ~0,                           \
> -       .name           = _namestr,
>
>  #endif
> diff --git a/arch/arm/kernel/devtree.c b/arch/arm/kernel/devtree.c
> index 739c3df..46e3aff 100644
> --- a/arch/arm/kernel/devtree.c
> +++ b/arch/arm/kernel/devtree.c
> @@ -199,7 +199,7 @@ const struct machine_desc * __init setup_machine_fdt(unsigned int dt_phys)
>         const struct machine_desc *mdesc, *mdesc_best = NULL;
>
>  #ifdef CONFIG_ARCH_MULTIPLATFORM
> -       DT_MACHINE_START(GENERIC_DT, "Generic DT based system")
> +       DT_MACHINE_START(GENERIC_DT)
>         MACHINE_END
>
>         mdesc_best = &__mach_desc_GENERIC_DT;
> diff --git a/arch/arm/kernel/setup.c b/arch/arm/kernel/setup.c
> index 0e1e2b3..b0747bb 100644
> --- a/arch/arm/kernel/setup.c
> +++ b/arch/arm/kernel/setup.c
> @@ -611,7 +611,7 @@ void __init dump_machine_table(void)
>
>         early_print("Available machine support:\n\nID (hex)\tNAME\n");
>         for_each_machine_desc(p)
> -               early_print("%08x\t%s\n", p->nr, p->name);
> +               early_print("%08x\t%s\n", p->nr, p->name ? p->name : *p->dt_compat);
>
>         early_print("\nPlease check your kernel config and/or bootloader.\n");
>
> @@ -859,7 +859,7 @@ void __init setup_arch(char **cmdline_p)
>         if (!mdesc)
>                 mdesc = setup_machine_tags(__atags_pointer, __machine_arch_type);
>         machine_desc = mdesc;
> -       machine_name = mdesc->name;
> +       machine_name = mdesc->name ? mdesc->name : of_flat_dt_get_machine_name();
>
>         setup_dma_zone(mdesc);
>
> diff --git a/arch/arm/mach-at91/board-dt-rm9200.c b/arch/arm/mach-at91/board-dt-rm9200.c
> index 3a185fa..afe079e 100644
> --- a/arch/arm/mach-at91/board-dt-rm9200.c
> +++ b/arch/arm/mach-at91/board-dt-rm9200.c
> @@ -40,7 +40,7 @@ static const char *at91rm9200_dt_board_compat[] __initdata = {
>         NULL
>  };
>
> -DT_MACHINE_START(at91rm9200_dt, "Atmel AT91RM9200 (Device Tree)")
> +DT_MACHINE_START(at91rm9200_dt)
>         .init_time      = at91rm9200_timer_init,
>         .map_io         = at91_map_io,
>         .handle_irq     = at91_aic_handle_irq,
> diff --git a/arch/arm/mach-at91/board-dt-sam9.c b/arch/arm/mach-at91/board-dt-sam9.c
> index 3dab868..0465a74 100644
> --- a/arch/arm/mach-at91/board-dt-sam9.c
> +++ b/arch/arm/mach-at91/board-dt-sam9.c
> @@ -41,7 +41,7 @@ static const char *at91_dt_board_compat[] __initdata = {
>         NULL
>  };
>
> -DT_MACHINE_START(at91sam_dt, "Atmel AT91SAM (Device Tree)")
> +DT_MACHINE_START(at91sam_dt)
>         /* Maintainer: Atmel */
>         .init_time      = at91sam926x_pit_init,
>         .map_io         = at91_map_io,
> diff --git a/arch/arm/mach-at91/board-dt-sama5.c b/arch/arm/mach-at91/board-dt-sama5.c
> index bf00d15..2e2699d 100644
> --- a/arch/arm/mach-at91/board-dt-sama5.c
> +++ b/arch/arm/mach-at91/board-dt-sama5.c
> @@ -70,7 +70,7 @@ static const char *sama5_dt_board_compat[] __initdata = {
>         NULL
>  };
>
> -DT_MACHINE_START(sama5_dt, "Atmel SAMA5 (Device Tree)")
> +DT_MACHINE_START(sama5_dt)
>         /* Maintainer: Atmel */
>         .init_time      = at91sam926x_pit_init,
>         .map_io         = at91_map_io,
> diff --git a/arch/arm/mach-bcm/board_bcm281xx.c b/arch/arm/mach-bcm/board_bcm281xx.c
> index cb3dc36..5b59e8a 100644
> --- a/arch/arm/mach-bcm/board_bcm281xx.c
> +++ b/arch/arm/mach-bcm/board_bcm281xx.c
> @@ -67,7 +67,7 @@ static void __init board_init(void)
>
>  static const char * const bcm11351_dt_compat[] = { "brcm,bcm11351", NULL, };
>
> -DT_MACHINE_START(BCM11351_DT, "BCM281xx Broadcom Application Processor")
> +DT_MACHINE_START(BCM11351_DT)
>         .init_machine = board_init,
>         .restart = bcm_kona_restart,
>         .dt_compat = bcm11351_dt_compat,
> diff --git a/arch/arm/mach-bcm2835/bcm2835.c b/arch/arm/mach-bcm2835/bcm2835.c
> index d50135b..a810e61 100644
> --- a/arch/arm/mach-bcm2835/bcm2835.c
> +++ b/arch/arm/mach-bcm2835/bcm2835.c
> @@ -128,7 +128,7 @@ static const char * const bcm2835_compat[] = {
>         NULL
>  };
>
> -DT_MACHINE_START(BCM2835, "BCM2835")
> +DT_MACHINE_START(BCM2835)
>         .map_io = bcm2835_map_io,
>         .init_irq = bcm2835_init_irq,
>         .handle_irq = bcm2835_handle_irq,
> diff --git a/arch/arm/mach-cns3xxx/core.c b/arch/arm/mach-cns3xxx/core.c
> index e38b279..8bf66ac 100644
> --- a/arch/arm/mach-cns3xxx/core.c
> +++ b/arch/arm/mach-cns3xxx/core.c
> @@ -366,7 +366,7 @@ static const char *cns3xxx_dt_compat[] __initdata = {
>         NULL,
>  };
>
> -DT_MACHINE_START(CNS3XXX_DT, "Cavium Networks CNS3xxx")
> +DT_MACHINE_START(CNS3XXX_DT)
>         .dt_compat      = cns3xxx_dt_compat,
>         .nr_irqs        = NR_IRQS_CNS3XXX,
>         .map_io         = cns3xxx_map_io,
> diff --git a/arch/arm/mach-davinci/da8xx-dt.c b/arch/arm/mach-davinci/da8xx-dt.c
> index d2bc574..974afaf 100644
> --- a/arch/arm/mach-davinci/da8xx-dt.c
> +++ b/arch/arm/mach-davinci/da8xx-dt.c
> @@ -65,7 +65,7 @@ static const char *da850_boards_compat[] __initdata = {
>         NULL,
>  };
>
> -DT_MACHINE_START(DA850_DT, "Generic DA850/OMAP-L138/AM18x")
> +DT_MACHINE_START(DA850_DT)
>         .map_io         = da850_init,
>         .init_irq       = da8xx_init_irq,
>         .init_time      = davinci_timer_init,
> diff --git a/arch/arm/mach-dove/board-dt.c b/arch/arm/mach-dove/board-dt.c
> index 49fa9ab..4797e5b 100644
> --- a/arch/arm/mach-dove/board-dt.c
> +++ b/arch/arm/mach-dove/board-dt.c
> @@ -35,7 +35,7 @@ static const char * const dove_dt_board_compat[] = {
>         NULL
>  };
>
> -DT_MACHINE_START(DOVE_DT, "Marvell Dove (Flattened Device Tree)")
> +DT_MACHINE_START(DOVE_DT)
>         .map_io         = dove_map_io,
>         .init_machine   = dove_dt_init,
>         .restart        = dove_restart,
> diff --git a/arch/arm/mach-exynos/mach-exynos4-dt.c b/arch/arm/mach-exynos/mach-exynos4-dt.c
> index 4b8f6e2..44d0b23 100644
> --- a/arch/arm/mach-exynos/mach-exynos4-dt.c
> +++ b/arch/arm/mach-exynos/mach-exynos4-dt.c
> @@ -43,7 +43,7 @@ static void __init exynos4_reserve(void)
>                                 mfc_mem.lsize);
>  #endif
>  }
> -DT_MACHINE_START(EXYNOS4210_DT, "Samsung Exynos4 (Flattened Device Tree)")
> +DT_MACHINE_START(EXYNOS4210_DT)
>         /* Maintainer: Thomas Abraham <thomas.abraham@linaro.org> */
>         .smp            = smp_ops(exynos_smp_ops),
>         .map_io         = exynos_init_io,
> diff --git a/arch/arm/mach-exynos/mach-exynos5-dt.c b/arch/arm/mach-exynos/mach-exynos5-dt.c
> index 7976ab3..d2ba907 100644
> --- a/arch/arm/mach-exynos/mach-exynos5-dt.c
> +++ b/arch/arm/mach-exynos/mach-exynos5-dt.c
> @@ -66,7 +66,7 @@ static void __init exynos5_reserve(void)
>  #endif
>  }
>
> -DT_MACHINE_START(EXYNOS5_DT, "SAMSUNG EXYNOS5 (Flattened Device Tree)")
> +DT_MACHINE_START(EXYNOS5_DT)
>         /* Maintainer: Kukjin Kim <kgene.kim@samsung.com> */
>         .smp            = smp_ops(exynos_smp_ops),
>         .map_io         = exynos_init_io,
> diff --git a/arch/arm/mach-highbank/highbank.c b/arch/arm/mach-highbank/highbank.c
> index b3d7e56..f0a26bb 100644
> --- a/arch/arm/mach-highbank/highbank.c
> +++ b/arch/arm/mach-highbank/highbank.c
> @@ -157,7 +157,7 @@ static const char *highbank_match[] __initconst = {
>         NULL,
>  };
>
> -DT_MACHINE_START(HIGHBANK, "Highbank")
> +DT_MACHINE_START(HIGHBANK)
>  #if defined(CONFIG_ZONE_DMA) && defined(CONFIG_ARM_LPAE)
>         .dma_zone_size  = (4ULL * SZ_1G),
>  #endif
> diff --git a/arch/arm/mach-imx/imx25-dt.c b/arch/arm/mach-imx/imx25-dt.c
> index 3e1ec5f..25401d9 100644
> --- a/arch/arm/mach-imx/imx25-dt.c
> +++ b/arch/arm/mach-imx/imx25-dt.c
> @@ -34,7 +34,7 @@ static void __init imx25_timer_init(void)
>         mx25_clocks_init_dt();
>  }
>
> -DT_MACHINE_START(IMX25_DT, "Freescale i.MX25 (Device Tree Support)")
> +DT_MACHINE_START(IMX25_DT)
>         .map_io         = mx25_map_io,
>         .init_early     = imx25_init_early,
>         .init_irq       = mx25_init_irq,
> diff --git a/arch/arm/mach-imx/imx27-dt.c b/arch/arm/mach-imx/imx27-dt.c
> index 4e235ec..3d35369 100644
> --- a/arch/arm/mach-imx/imx27-dt.c
> +++ b/arch/arm/mach-imx/imx27-dt.c
> @@ -39,7 +39,7 @@ static void __init imx27_timer_init(void)
>         mx27_clocks_init_dt();
>  }
>
> -DT_MACHINE_START(IMX27_DT, "Freescale i.MX27 (Device Tree Support)")
> +DT_MACHINE_START(IMX27_DT)
>         .map_io         = mx27_map_io,
>         .init_early     = imx27_init_early,
>         .init_irq       = mx27_init_irq,
> diff --git a/arch/arm/mach-imx/imx31-dt.c b/arch/arm/mach-imx/imx31-dt.c
> index 818a1cc..6c60dfa 100644
> --- a/arch/arm/mach-imx/imx31-dt.c
> +++ b/arch/arm/mach-imx/imx31-dt.c
> @@ -35,7 +35,7 @@ static void __init imx31_dt_timer_init(void)
>         mx31_clocks_init_dt();
>  }
>
> -DT_MACHINE_START(IMX31_DT, "Freescale i.MX31 (Device Tree Support)")
> +DT_MACHINE_START(IMX31_DT)
>         .map_io         = mx31_map_io,
>         .init_early     = imx31_init_early,
>         .init_irq       = mx31_init_irq,
> diff --git a/arch/arm/mach-imx/imx51-dt.c b/arch/arm/mach-imx/imx51-dt.c
> index bece8a6..0c4f758 100644
> --- a/arch/arm/mach-imx/imx51-dt.c
> +++ b/arch/arm/mach-imx/imx51-dt.c
> @@ -34,7 +34,7 @@ static const char *imx51_dt_board_compat[] __initdata = {
>         NULL
>  };
>
> -DT_MACHINE_START(IMX51_DT, "Freescale i.MX51 (Device Tree Support)")
> +DT_MACHINE_START(IMX51_DT)
>         .map_io         = mx51_map_io,
>         .init_early     = imx51_init_early,
>         .init_irq       = mx51_init_irq,
> diff --git a/arch/arm/mach-imx/mach-imx53.c b/arch/arm/mach-imx/mach-imx53.c
> index c9c4d8d..ba3d370 100644
> --- a/arch/arm/mach-imx/mach-imx53.c
> +++ b/arch/arm/mach-imx/mach-imx53.c
> @@ -36,7 +36,7 @@ static const char *imx53_dt_board_compat[] __initdata = {
>         NULL
>  };
>
> -DT_MACHINE_START(IMX53_DT, "Freescale i.MX53 (Device Tree Support)")
> +DT_MACHINE_START(IMX53_DT)
>         .map_io         = mx53_map_io,
>         .init_early     = imx53_init_early,
>         .init_irq       = mx53_init_irq,
> diff --git a/arch/arm/mach-imx/mach-imx6q.c b/arch/arm/mach-imx/mach-imx6q.c
> index 0f9f241..4c38229 100644
> --- a/arch/arm/mach-imx/mach-imx6q.c
> +++ b/arch/arm/mach-imx/mach-imx6q.c
> @@ -249,7 +249,7 @@ static const char *imx6q_dt_compat[] __initdata = {
>         NULL,
>  };
>
> -DT_MACHINE_START(IMX6Q, "Freescale i.MX6 Quad/DualLite (Device Tree)")
> +DT_MACHINE_START(IMX6Q)
>         .smp            = smp_ops(imx_smp_ops),
>         .map_io         = imx6q_map_io,
>         .init_irq       = imx6q_init_irq,
> diff --git a/arch/arm/mach-imx/mach-imx6sl.c b/arch/arm/mach-imx/mach-imx6sl.c
> index 2f952e3..0391857 100644
> --- a/arch/arm/mach-imx/mach-imx6sl.c
> +++ b/arch/arm/mach-imx/mach-imx6sl.c
> @@ -66,7 +66,7 @@ static const char *imx6sl_dt_compat[] __initdata = {
>         NULL,
>  };
>
> -DT_MACHINE_START(IMX6SL, "Freescale i.MX6 SoloLite (Device Tree)")
> +DT_MACHINE_START(IMX6SL)
>         .map_io         = debug_ll_io_init,
>         .init_irq       = imx6sl_init_irq,
>         .init_machine   = imx6sl_init_machine,
> diff --git a/arch/arm/mach-imx/mach-vf610.c b/arch/arm/mach-imx/mach-vf610.c
> index af0cb8a..646f412 100644
> --- a/arch/arm/mach-imx/mach-vf610.c
> +++ b/arch/arm/mach-imx/mach-vf610.c
> @@ -31,7 +31,7 @@ static const char *vf610_dt_compat[] __initdata = {
>         NULL,
>  };
>
> -DT_MACHINE_START(VYBRID_VF610, "Freescale Vybrid VF610 (Device Tree)")
> +DT_MACHINE_START(VYBRID_VF610)
>         .init_irq       = vf610_init_irq,
>         .init_machine   = vf610_init_machine,
>         .dt_compat      = vf610_dt_compat,
> diff --git a/arch/arm/mach-integrator/integrator_ap.c b/arch/arm/mach-integrator/integrator_ap.c
> index d50dc2d..5cb38c5 100644
> --- a/arch/arm/mach-integrator/integrator_ap.c
> +++ b/arch/arm/mach-integrator/integrator_ap.c
> @@ -556,7 +556,7 @@ static const char * ap_dt_board_compat[] = {
>         NULL,
>  };
>
> -DT_MACHINE_START(INTEGRATOR_AP_DT, "ARM Integrator/AP (Device Tree)")
> +DT_MACHINE_START(INTEGRATOR_AP_DT)
>         .reserve        = integrator_reserve,
>         .map_io         = ap_map_io,
>         .init_early     = ap_init_early,
> diff --git a/arch/arm/mach-integrator/integrator_cp.c b/arch/arm/mach-integrator/integrator_cp.c
> index 1df6e76..04d8609 100644
> --- a/arch/arm/mach-integrator/integrator_cp.c
> +++ b/arch/arm/mach-integrator/integrator_cp.c
> @@ -349,7 +349,7 @@ static const char * intcp_dt_board_compat[] = {
>         NULL,
>  };
>
> -DT_MACHINE_START(INTEGRATOR_CP_DT, "ARM Integrator/CP (Device Tree)")
> +DT_MACHINE_START(INTEGRATOR_CP_DT)
>         .reserve        = integrator_reserve,
>         .map_io         = intcp_map_io,
>         .init_early     = intcp_init_early,
> diff --git a/arch/arm/mach-keystone/keystone.c b/arch/arm/mach-keystone/keystone.c
> index b661c5c..a22b3e6 100644
> --- a/arch/arm/mach-keystone/keystone.c
> +++ b/arch/arm/mach-keystone/keystone.c
> @@ -67,7 +67,7 @@ void keystone_restart(enum reboot_mode mode, const char *cmd)
>         writel(val, keystone_rstctrl);
>  }
>
> -DT_MACHINE_START(KEYSTONE, "Keystone")
> +DT_MACHINE_START(KEYSTONE)
>         .smp            = smp_ops(keystone_smp_ops),
>         .init_machine   = keystone_init,
>         .dt_compat      = keystone_match,
> diff --git a/arch/arm/mach-kirkwood/board-dt.c b/arch/arm/mach-kirkwood/board-dt.c
> index 9caa4fe..a3a098b 100644
> --- a/arch/arm/mach-kirkwood/board-dt.c
> +++ b/arch/arm/mach-kirkwood/board-dt.c
> @@ -177,7 +177,7 @@ static const char * const kirkwood_dt_board_compat[] = {
>         NULL
>  };
>
> -DT_MACHINE_START(KIRKWOOD_DT, "Marvell Kirkwood (Flattened Device Tree)")
> +DT_MACHINE_START(KIRKWOOD_DT)
>         /* Maintainer: Jason Cooper <jason@lakedaemon.net> */
>         .map_io         = kirkwood_map_io,
>         .init_machine   = kirkwood_dt_init,
> diff --git a/arch/arm/mach-lpc32xx/phy3250.c b/arch/arm/mach-lpc32xx/phy3250.c
> index e54f87e..b5e58f7 100644
> --- a/arch/arm/mach-lpc32xx/phy3250.c
> +++ b/arch/arm/mach-lpc32xx/phy3250.c
> @@ -259,7 +259,7 @@ static char const *lpc32xx_dt_compat[] __initdata = {
>         NULL
>  };
>
> -DT_MACHINE_START(LPC32XX_DT, "LPC32XX SoC (Flattened Device Tree)")
> +DT_MACHINE_START(LPC32XX_DT)
>         .atag_offset    = 0x100,
>         .map_io         = lpc32xx_map_io,
>         .init_irq       = lpc32xx_init_irq,
> diff --git a/arch/arm/mach-mmp/mmp-dt.c b/arch/arm/mach-mmp/mmp-dt.c
> index cca529c..f528529 100644
> --- a/arch/arm/mach-mmp/mmp-dt.c
> +++ b/arch/arm/mach-mmp/mmp-dt.c
> @@ -58,14 +58,14 @@ static const char *mmp_dt_board_compat[] __initdata = {
>         NULL,
>  };
>
> -DT_MACHINE_START(PXA168_DT, "Marvell PXA168 (Device Tree Support)")
> +DT_MACHINE_START(PXA168_DT)
>         .map_io         = mmp_map_io,
>         .init_time      = mmp_dt_init_timer,
>         .init_machine   = pxa168_dt_init,
>         .dt_compat      = mmp_dt_board_compat,
>  MACHINE_END
>
> -DT_MACHINE_START(PXA910_DT, "Marvell PXA910 (Device Tree Support)")
> +DT_MACHINE_START(PXA910_DT)
>         .map_io         = mmp_map_io,
>         .init_time      = mmp_dt_init_timer,
>         .init_machine   = pxa910_dt_init,
> diff --git a/arch/arm/mach-mmp/mmp2-dt.c b/arch/arm/mach-mmp/mmp2-dt.c
> index 023cb45..6bb0144 100644
> --- a/arch/arm/mach-mmp/mmp2-dt.c
> +++ b/arch/arm/mach-mmp/mmp2-dt.c
> @@ -42,7 +42,7 @@ static const char *mmp2_dt_board_compat[] __initdata = {
>         NULL,
>  };
>
> -DT_MACHINE_START(MMP2_DT, "Marvell MMP2 (Device Tree Support)")
> +DT_MACHINE_START(MMP2_DT)
>         .map_io         = mmp_map_io,
>         .init_time      = mmp_dt_init_timer,
>         .init_machine   = mmp2_dt_init,
> diff --git a/arch/arm/mach-msm/board-dt.c b/arch/arm/mach-msm/board-dt.c
> index 16e6183..bb6caf5 100644
> --- a/arch/arm/mach-msm/board-dt.c
> +++ b/arch/arm/mach-msm/board-dt.c
> @@ -26,7 +26,7 @@ static const char * const msm_dt_match[] __initconst = {
>         NULL
>  };
>
> -DT_MACHINE_START(MSM_DT, "Qualcomm MSM (Flattened Device Tree)")
> +DT_MACHINE_START(MSM_DT)
>         .smp = smp_ops(msm_smp_ops),
>         .dt_compat = msm_dt_match,
>  MACHINE_END
> diff --git a/arch/arm/mach-mvebu/armada-370-xp.c b/arch/arm/mach-mvebu/armada-370-xp.c
> index e2acff9..168a963 100644
> --- a/arch/arm/mach-mvebu/armada-370-xp.c
> +++ b/arch/arm/mach-mvebu/armada-370-xp.c
> @@ -55,7 +55,7 @@ static const char * const armada_370_xp_dt_compat[] = {
>         NULL,
>  };
>
> -DT_MACHINE_START(ARMADA_XP_DT, "Marvell Armada 370/XP (Device Tree)")
> +DT_MACHINE_START(ARMADA_XP_DT)
>         .smp            = smp_ops(armada_xp_smp_ops),
>         .init_machine   = armada_370_xp_dt_init,
>         .map_io         = armada_370_xp_map_io,
> diff --git a/arch/arm/mach-mxs/mach-mxs.c b/arch/arm/mach-mxs/mach-mxs.c
> index 1dc5acd..26bbc0f 100644
> --- a/arch/arm/mach-mxs/mach-mxs.c
> +++ b/arch/arm/mach-mxs/mach-mxs.c
> @@ -501,7 +501,7 @@ static const char *mxs_dt_compat[] __initdata = {
>         NULL,
>  };
>
> -DT_MACHINE_START(MXS, "Freescale MXS (Device Tree)")
> +DT_MACHINE_START(MXS)
>         .handle_irq     = icoll_handle_irq,
>         .init_machine   = mxs_machine_init,
>         .init_late      = mxs_pm_init,
> diff --git a/arch/arm/mach-nomadik/cpu-8815.c b/arch/arm/mach-nomadik/cpu-8815.c
> index cce2c9d..4ab4f0e 100644
> --- a/arch/arm/mach-nomadik/cpu-8815.c
> +++ b/arch/arm/mach-nomadik/cpu-8815.c
> @@ -189,7 +189,7 @@ static const char * cpu8815_board_compat[] = {
>         NULL,
>  };
>
> -DT_MACHINE_START(NOMADIK_DT, "Nomadik STn8815")
> +DT_MACHINE_START(NOMADIK_DT)
>         .map_io         = cpu8815_map_io,
>         .init_machine   = cpu8815_init_of,
>         .restart        = cpu8815_restart,
> diff --git a/arch/arm/mach-nspire/nspire.c b/arch/arm/mach-nspire/nspire.c
> index 4b2ed2e..26bceb9 100644
> --- a/arch/arm/mach-nspire/nspire.c
> +++ b/arch/arm/mach-nspire/nspire.c
> @@ -72,7 +72,7 @@ static void nspire_restart(char mode, const char *cmd)
>         writel(2, base + NSPIRE_MISC_HWRESET);
>  }
>
> -DT_MACHINE_START(NSPIRE, "TI-NSPIRE")
> +DT_MACHINE_START(NSPIRE)
>         .dt_compat      = nspire_dt_match,
>         .map_io         = nspire_map_io,
>         .init_machine   = nspire_init,
> diff --git a/arch/arm/mach-omap2/board-generic.c b/arch/arm/mach-omap2/board-generic.c
> index 19f1652..89d5bdd 100644
> --- a/arch/arm/mach-omap2/board-generic.c
> +++ b/arch/arm/mach-omap2/board-generic.c
> @@ -44,7 +44,7 @@ static const char *omap242x_boards_compat[] __initdata = {
>         NULL,
>  };
>
> -DT_MACHINE_START(OMAP242X_DT, "Generic OMAP2420 (Flattened Device Tree)")
> +DT_MACHINE_START(OMAP242X_DT)
>         .reserve        = omap_reserve,
>         .map_io         = omap242x_map_io,
>         .init_early     = omap2420_init_early,
> @@ -63,7 +63,7 @@ static const char *omap243x_boards_compat[] __initdata = {
>         NULL,
>  };
>
> -DT_MACHINE_START(OMAP243X_DT, "Generic OMAP2430 (Flattened Device Tree)")
> +DT_MACHINE_START(OMAP243X_DT)
>         .reserve        = omap_reserve,
>         .map_io         = omap243x_map_io,
>         .init_early     = omap2430_init_early,
> @@ -82,7 +82,7 @@ static const char *omap3_boards_compat[] __initdata = {
>         NULL,
>  };
>
> -DT_MACHINE_START(OMAP3_DT, "Generic OMAP3 (Flattened Device Tree)")
> +DT_MACHINE_START(OMAP3_DT)
>         .reserve        = omap_reserve,
>         .map_io         = omap3_map_io,
>         .init_early     = omap3430_init_early,
> @@ -100,7 +100,7 @@ static const char *omap36xx_boards_compat[] __initdata = {
>         NULL,
>  };
>
> -DT_MACHINE_START(OMAP36XX_DT, "Generic OMAP36xx (Flattened Device Tree)")
> +DT_MACHINE_START(OMAP36XX_DT)
>         .reserve        = omap_reserve,
>         .map_io         = omap3_map_io,
>         .init_early     = omap3630_init_early,
> @@ -119,7 +119,7 @@ static const char *omap3_gp_boards_compat[] __initdata = {
>         NULL,
>  };
>
> -DT_MACHINE_START(OMAP3_GP_DT, "Generic OMAP3-GP (Flattened Device Tree)")
> +DT_MACHINE_START(OMAP3_GP_DT)
>         .reserve        = omap_reserve,
>         .map_io         = omap3_map_io,
>         .init_early     = omap3430_init_early,
> @@ -139,7 +139,7 @@ static const char *am33xx_boards_compat[] __initdata = {
>         NULL,
>  };
>
> -DT_MACHINE_START(AM33XX_DT, "Generic AM33XX (Flattened Device Tree)")
> +DT_MACHINE_START(AM33XX_DT)
>         .reserve        = omap_reserve,
>         .map_io         = am33xx_map_io,
>         .init_early     = am33xx_init_early,
> @@ -159,7 +159,7 @@ static const char *omap4_boards_compat[] __initdata = {
>         NULL,
>  };
>
> -DT_MACHINE_START(OMAP4_DT, "Generic OMAP4 (Flattened Device Tree)")
> +DT_MACHINE_START(OMAP4_DT)
>         .reserve        = omap_reserve,
>         .smp            = smp_ops(omap4_smp_ops),
>         .map_io         = omap4_map_io,
> @@ -179,7 +179,7 @@ static const char *omap5_boards_compat[] __initdata = {
>         NULL,
>  };
>
> -DT_MACHINE_START(OMAP5_DT, "Generic OMAP5 (Flattened Device Tree)")
> +DT_MACHINE_START(OMAP5_DT)
>         .reserve        = omap_reserve,
>         .smp            = smp_ops(omap4_smp_ops),
>         .map_io         = omap5_map_io,
> @@ -199,7 +199,7 @@ static const char *am43_boards_compat[] __initdata = {
>         NULL,
>  };
>
> -DT_MACHINE_START(AM43_DT, "Generic AM43 (Flattened Device Tree)")
> +DT_MACHINE_START(AM43_DT)
>         .map_io         = am33xx_map_io,
>         .init_early     = am43xx_init_early,
>         .init_late      = am43xx_init_late,
> @@ -216,7 +216,7 @@ static const char *dra7xx_boards_compat[] __initdata = {
>         NULL,
>  };
>
> -DT_MACHINE_START(DRA7XX_DT, "Generic DRA7XX (Flattened Device Tree)")
> +DT_MACHINE_START(DRA7XX_DT)
>         .reserve        = omap_reserve,
>         .smp            = smp_ops(omap4_smp_ops),
>         .map_io         = omap5_map_io,
> diff --git a/arch/arm/mach-orion5x/board-dt.c b/arch/arm/mach-orion5x/board-dt.c
> index b91002c..ee2d6e9 100644
> --- a/arch/arm/mach-orion5x/board-dt.c
> +++ b/arch/arm/mach-orion5x/board-dt.c
> @@ -68,7 +68,7 @@ static const char *orion5x_dt_compat[] = {
>         NULL,
>  };
>
> -DT_MACHINE_START(ORION5X_DT, "Marvell Orion5x (Flattened Device Tree)")
> +DT_MACHINE_START(ORION5X_DT)
>         /* Maintainer: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> */
>         .map_io         = orion5x_map_io,
>         .init_early     = orion5x_init_early,
> diff --git a/arch/arm/mach-picoxcell/common.c b/arch/arm/mach-picoxcell/common.c
> index ec79fea..ffe1270 100644
> --- a/arch/arm/mach-picoxcell/common.c
> +++ b/arch/arm/mach-picoxcell/common.c
> @@ -78,7 +78,7 @@ static void picoxcell_wdt_restart(enum reboot_mode mode, const char *cmd)
>         }
>  }
>
> -DT_MACHINE_START(PICOXCELL, "Picochip picoXcell")
> +DT_MACHINE_START(PICOXCELL)
>         .map_io         = picoxcell_map_io,
>         .init_machine   = picoxcell_init_machine,
>         .dt_compat      = picoxcell_dt_match,
> diff --git a/arch/arm/mach-prima2/common.c b/arch/arm/mach-prima2/common.c
> index d49aff7..2ca30d5 100644
> --- a/arch/arm/mach-prima2/common.c
> +++ b/arch/arm/mach-prima2/common.c
> @@ -32,7 +32,7 @@ static const char *atlas6_dt_match[] __initdata = {
>         NULL
>  };
>
> -DT_MACHINE_START(ATLAS6_DT, "Generic ATLAS6 (Flattened Device Tree)")
> +DT_MACHINE_START(ATLAS6_DT)
>         /* Maintainer: Barry Song <baohua.song@csr.com> */
>         .map_io         = sirfsoc_map_io,
>         .init_late      = sirfsoc_init_late,
> @@ -47,7 +47,7 @@ static const char *prima2_dt_match[] __initdata = {
>         NULL
>  };
>
> -DT_MACHINE_START(PRIMA2_DT, "Generic PRIMA2 (Flattened Device Tree)")
> +DT_MACHINE_START(PRIMA2_DT)
>         /* Maintainer: Barry Song <baohua.song@csr.com> */
>         .map_io         = sirfsoc_map_io,
>         .dma_zone_size  = SZ_256M,
> @@ -63,7 +63,7 @@ static const char *marco_dt_match[] __initdata = {
>         NULL
>  };
>
> -DT_MACHINE_START(MARCO_DT, "Generic MARCO (Flattened Device Tree)")
> +DT_MACHINE_START(MARCO_DT)
>         /* Maintainer: Barry Song <baohua.song@csr.com> */
>         .smp            = smp_ops(sirfsoc_smp_ops),
>         .map_io         = sirfsoc_map_io,
> diff --git a/arch/arm/mach-pxa/pxa-dt.c b/arch/arm/mach-pxa/pxa-dt.c
> index f6a2c4b..b7fcb0c 100644
> --- a/arch/arm/mach-pxa/pxa-dt.c
> +++ b/arch/arm/mach-pxa/pxa-dt.c
> @@ -51,7 +51,7 @@ static const char *pxa3xx_dt_board_compat[] __initdata = {
>  #endif
>
>  #ifdef CONFIG_PXA3xx
> -DT_MACHINE_START(PXA_DT, "Marvell PXA3xx (Device Tree Support)")
> +DT_MACHINE_START(PXA_DT)
>         .map_io         = pxa3xx_map_io,
>         .init_irq       = pxa3xx_dt_init_irq,
>         .handle_irq     = pxa3xx_handle_irq,
> diff --git a/arch/arm/mach-rockchip/rockchip.c b/arch/arm/mach-rockchip/rockchip.c
> index 82c0b07..c14c517 100644
> --- a/arch/arm/mach-rockchip/rockchip.c
> +++ b/arch/arm/mach-rockchip/rockchip.c
> @@ -37,7 +37,7 @@ static const char * const rockchip_board_dt_compat[] = {
>         NULL,
>  };
>
> -DT_MACHINE_START(ROCKCHIP_DT, "Rockchip Cortex-A9 (Device Tree)")
> +DT_MACHINE_START(ROCKCHIP_DT)
>         .init_machine   = rockchip_dt_init,
>         .dt_compat      = rockchip_board_dt_compat,
>  MACHINE_END
> diff --git a/arch/arm/mach-s3c24xx/mach-s3c2416-dt.c b/arch/arm/mach-s3c24xx/mach-s3c2416-dt.c
> index f50454a..a6ae5d7 100644
> --- a/arch/arm/mach-s3c24xx/mach-s3c2416-dt.c
> +++ b/arch/arm/mach-s3c24xx/mach-s3c2416-dt.c
> @@ -80,7 +80,7 @@ static char const *s3c2416_dt_compat[] __initdata = {
>         NULL
>  };
>
> -DT_MACHINE_START(S3C2416_DT, "Samsung S3C2416 (Flattened Device Tree)")
> +DT_MACHINE_START(S3C2416_DT)
>         /* Maintainer: Heiko Stuebner <heiko@sntech.de> */
>         .dt_compat      = s3c2416_dt_compat,
>         .map_io         = s3c2416_dt_map_io,
> diff --git a/arch/arm/mach-s3c64xx/mach-s3c64xx-dt.c b/arch/arm/mach-s3c64xx/mach-s3c64xx-dt.c
> index 7eb9a10..7becf1a 100644
> --- a/arch/arm/mach-s3c64xx/mach-s3c64xx-dt.c
> +++ b/arch/arm/mach-s3c64xx/mach-s3c64xx-dt.c
> @@ -75,7 +75,7 @@ static char const *s3c64xx_dt_compat[] __initdata = {
>         NULL
>  };
>
> -DT_MACHINE_START(S3C6400_DT, "Samsung S3C64xx (Flattened Device Tree)")
> +DT_MACHINE_START(S3C6400_DT)
>         /* Maintainer: Tomasz Figa <tomasz.figa@gmail.com> */
>         .dt_compat      = s3c64xx_dt_compat,
>         .map_io         = s3c64xx_dt_map_io,
> diff --git a/arch/arm/mach-shmobile/board-ape6evm-reference.c b/arch/arm/mach-shmobile/board-ape6evm-reference.c
> index 3276afc..fffe53c 100644
> --- a/arch/arm/mach-shmobile/board-ape6evm-reference.c
> +++ b/arch/arm/mach-shmobile/board-ape6evm-reference.c
> @@ -56,7 +56,7 @@ static const char *ape6evm_boards_compat_dt[] __initdata = {
>         NULL,
>  };
>
> -DT_MACHINE_START(APE6EVM_DT, "ape6evm")
> +DT_MACHINE_START(APE6EVM_DT)
>         .init_early     = r8a73a4_init_early,
>         .init_machine   = ape6evm_add_standard_devices,
>         .dt_compat      = ape6evm_boards_compat_dt,
> diff --git a/arch/arm/mach-shmobile/board-ape6evm.c b/arch/arm/mach-shmobile/board-ape6evm.c
> index 0fa068e..a2df979 100644
> --- a/arch/arm/mach-shmobile/board-ape6evm.c
> +++ b/arch/arm/mach-shmobile/board-ape6evm.c
> @@ -280,7 +280,7 @@ static const char *ape6evm_boards_compat_dt[] __initdata = {
>         NULL,
>  };
>
> -DT_MACHINE_START(APE6EVM_DT, "ape6evm")
> +DT_MACHINE_START(APE6EVM_DT)
>         .init_early     = r8a73a4_init_early,
>         .init_machine   = ape6evm_add_standard_devices,
>         .dt_compat      = ape6evm_boards_compat_dt,
> diff --git a/arch/arm/mach-shmobile/board-armadillo800eva-reference.c b/arch/arm/mach-shmobile/board-armadillo800eva-reference.c
> index 57d1a78..ea3b1e1 100644
> --- a/arch/arm/mach-shmobile/board-armadillo800eva-reference.c
> +++ b/arch/arm/mach-shmobile/board-armadillo800eva-reference.c
> @@ -185,7 +185,7 @@ static const char *eva_boards_compat_dt[] __initdata = {
>         NULL,
>  };
>
> -DT_MACHINE_START(ARMADILLO800EVA_DT, "armadillo800eva-reference")
> +DT_MACHINE_START(ARMADILLO800EVA_DT)
>         .map_io         = r8a7740_map_io,
>         .init_early     = r8a7740_init_delay,
>         .init_irq       = r8a7740_init_irq_of,
> diff --git a/arch/arm/mach-shmobile/board-armadillo800eva.c b/arch/arm/mach-shmobile/board-armadillo800eva.c
> index 8bc8e4c..e8f1e74 100644
> --- a/arch/arm/mach-shmobile/board-armadillo800eva.c
> +++ b/arch/arm/mach-shmobile/board-armadillo800eva.c
> @@ -1311,7 +1311,7 @@ static const char *eva_boards_compat_dt[] __initdata = {
>         NULL,
>  };
>
> -DT_MACHINE_START(ARMADILLO800EVA_DT, "armadillo800eva")
> +DT_MACHINE_START(ARMADILLO800EVA_DT)
>         .map_io         = r8a7740_map_io,
>         .init_early     = eva_add_early_devices,
>         .init_irq       = r8a7740_init_irq_of,
> diff --git a/arch/arm/mach-shmobile/board-bockw-reference.c b/arch/arm/mach-shmobile/board-bockw-reference.c
> index ae88fda..60bd5df 100644
> --- a/arch/arm/mach-shmobile/board-bockw-reference.c
> +++ b/arch/arm/mach-shmobile/board-bockw-reference.c
> @@ -73,7 +73,7 @@ static const char *bockw_boards_compat_dt[] __initdata = {
>         NULL,
>  };
>
> -DT_MACHINE_START(BOCKW_DT, "bockw")
> +DT_MACHINE_START(BOCKW_DT)
>         .init_early     = r8a7778_init_delay,
>         .init_irq       = r8a7778_init_irq_dt,
>         .init_machine   = bockw_init,
> diff --git a/arch/arm/mach-shmobile/board-bockw.c b/arch/arm/mach-shmobile/board-bockw.c
> index 6163fb1..8ff74db 100644
> --- a/arch/arm/mach-shmobile/board-bockw.c
> +++ b/arch/arm/mach-shmobile/board-bockw.c
> @@ -697,7 +697,7 @@ static const char *bockw_boards_compat_dt[] __initdata = {
>         NULL,
>  };
>
> -DT_MACHINE_START(BOCKW_DT, "bockw")
> +DT_MACHINE_START(BOCKW_DT)
>         .init_early     = r8a7778_init_delay,
>         .init_irq       = r8a7778_init_irq_dt,
>         .init_machine   = bockw_init,
> diff --git a/arch/arm/mach-shmobile/board-genmai.c b/arch/arm/mach-shmobile/board-genmai.c
> index 3e92e3c..1117ad8 100644
> --- a/arch/arm/mach-shmobile/board-genmai.c
> +++ b/arch/arm/mach-shmobile/board-genmai.c
> @@ -36,7 +36,7 @@ static const char * const genmai_boards_compat_dt[] __initconst = {
>         NULL,
>  };
>
> -DT_MACHINE_START(GENMAI_DT, "genmai")
> +DT_MACHINE_START(GENMAI_DT)
>         .init_early     = r7s72100_init_early,
>         .init_machine   = genmai_add_standard_devices,
>         .dt_compat      = genmai_boards_compat_dt,
> diff --git a/arch/arm/mach-shmobile/board-koelsch.c b/arch/arm/mach-shmobile/board-koelsch.c
> index ace1711..d923206 100644
> --- a/arch/arm/mach-shmobile/board-koelsch.c
> +++ b/arch/arm/mach-shmobile/board-koelsch.c
> @@ -38,7 +38,7 @@ static const char * const koelsch_boards_compat_dt[] __initconst = {
>         NULL,
>  };
>
> -DT_MACHINE_START(KOELSCH_DT, "koelsch")
> +DT_MACHINE_START(KOELSCH_DT)
>         .smp            = smp_ops(r8a7791_smp_ops),
>         .init_early     = r8a7791_init_early,
>         .init_machine   = koelsch_add_standard_devices,
> diff --git a/arch/arm/mach-shmobile/board-kzm9d-reference.c b/arch/arm/mach-shmobile/board-kzm9d-reference.c
> index 054d8d5..7d4d8d6 100644
> --- a/arch/arm/mach-shmobile/board-kzm9d-reference.c
> +++ b/arch/arm/mach-shmobile/board-kzm9d-reference.c
> @@ -38,7 +38,7 @@ static const char *kzm9d_boards_compat_dt[] __initdata = {
>         NULL,
>  };
>
> -DT_MACHINE_START(KZM9D_DT, "kzm9d")
> +DT_MACHINE_START(KZM9D_DT)
>         .smp            = smp_ops(emev2_smp_ops),
>         .map_io         = emev2_map_io,
>         .init_early     = emev2_init_delay,
> diff --git a/arch/arm/mach-shmobile/board-kzm9d.c b/arch/arm/mach-shmobile/board-kzm9d.c
> index 30c2cc6..a6ed124 100644
> --- a/arch/arm/mach-shmobile/board-kzm9d.c
> +++ b/arch/arm/mach-shmobile/board-kzm9d.c
> @@ -82,7 +82,7 @@ static const char *kzm9d_boards_compat_dt[] __initdata = {
>         NULL,
>  };
>
> -DT_MACHINE_START(KZM9D_DT, "kzm9d")
> +DT_MACHINE_START(KZM9D_DT)
>         .smp            = smp_ops(emev2_smp_ops),
>         .map_io         = emev2_map_io,
>         .init_early     = emev2_init_delay,
> diff --git a/arch/arm/mach-shmobile/board-kzm9g-reference.c b/arch/arm/mach-shmobile/board-kzm9g-reference.c
> index 598e324..c345976 100644
> --- a/arch/arm/mach-shmobile/board-kzm9g-reference.c
> +++ b/arch/arm/mach-shmobile/board-kzm9g-reference.c
> @@ -46,7 +46,7 @@ static const char *kzm9g_boards_compat_dt[] __initdata = {
>         NULL,
>  };
>
> -DT_MACHINE_START(KZM9G_DT, "kzm9g-reference")
> +DT_MACHINE_START(KZM9G_DT)
>         .smp            = smp_ops(sh73a0_smp_ops),
>         .map_io         = sh73a0_map_io,
>         .init_early     = sh73a0_init_delay,
> diff --git a/arch/arm/mach-shmobile/board-kzm9g.c b/arch/arm/mach-shmobile/board-kzm9g.c
> index fe689b7..6fd22ee 100644
> --- a/arch/arm/mach-shmobile/board-kzm9g.c
> +++ b/arch/arm/mach-shmobile/board-kzm9g.c
> @@ -904,7 +904,7 @@ static const char *kzm9g_boards_compat_dt[] __initdata = {
>         NULL,
>  };
>
> -DT_MACHINE_START(KZM9G_DT, "kzm9g")
> +DT_MACHINE_START(KZM9G_DT)
>         .smp            = smp_ops(sh73a0_smp_ops),
>         .map_io         = sh73a0_map_io,
>         .init_early     = sh73a0_add_early_devices,
> diff --git a/arch/arm/mach-shmobile/board-lager-reference.c b/arch/arm/mach-shmobile/board-lager-reference.c
> index 1a1a4a8..624356d 100644
> --- a/arch/arm/mach-shmobile/board-lager-reference.c
> +++ b/arch/arm/mach-shmobile/board-lager-reference.c
> @@ -37,7 +37,7 @@ static const char *lager_boards_compat_dt[] __initdata = {
>         NULL,
>  };
>
> -DT_MACHINE_START(LAGER_DT, "lager")
> +DT_MACHINE_START(LAGER_DT)
>         .smp            = smp_ops(r8a7790_smp_ops),
>         .init_early     = r8a7790_init_early,
>         .init_time      = rcar_gen2_timer_init,
> diff --git a/arch/arm/mach-shmobile/board-lager.c b/arch/arm/mach-shmobile/board-lager.c
> index a8d3ce6..7ff9ae4 100644
> --- a/arch/arm/mach-shmobile/board-lager.c
> +++ b/arch/arm/mach-shmobile/board-lager.c
> @@ -253,7 +253,7 @@ static const char * const lager_boards_compat_dt[] __initconst = {
>         NULL,
>  };
>
> -DT_MACHINE_START(LAGER_DT, "lager")
> +DT_MACHINE_START(LAGER_DT)
>         .smp            = smp_ops(r8a7790_smp_ops),
>         .init_early     = r8a7790_init_early,
>         .init_time      = rcar_gen2_timer_init,
> diff --git a/arch/arm/mach-shmobile/board-mackerel.c b/arch/arm/mach-shmobile/board-mackerel.c
> index af06753..e033b93 100644
> --- a/arch/arm/mach-shmobile/board-mackerel.c
> +++ b/arch/arm/mach-shmobile/board-mackerel.c
> @@ -1510,7 +1510,7 @@ static const char *mackerel_boards_compat_dt[] __initdata = {
>         NULL,
>  };
>
> -DT_MACHINE_START(MACKEREL_DT, "mackerel")
> +DT_MACHINE_START(MACKEREL_DT)
>         .map_io         = sh7372_map_io,
>         .init_early     = sh7372_add_early_devices,
>         .init_irq       = sh7372_init_irq,
> diff --git a/arch/arm/mach-shmobile/board-marzen-reference.c b/arch/arm/mach-shmobile/board-marzen-reference.c
> index 2773936..a00256b 100644
> --- a/arch/arm/mach-shmobile/board-marzen-reference.c
> +++ b/arch/arm/mach-shmobile/board-marzen-reference.c
> @@ -36,7 +36,7 @@ static const char *marzen_boards_compat_dt[] __initdata = {
>         NULL,
>  };
>
> -DT_MACHINE_START(MARZEN, "marzen")
> +DT_MACHINE_START(MARZEN)
>         .smp            = smp_ops(r8a7779_smp_ops),
>         .map_io         = r8a7779_map_io,
>         .init_early     = r8a7779_init_delay,
> diff --git a/arch/arm/mach-shmobile/board-marzen.c b/arch/arm/mach-shmobile/board-marzen.c
> index da1352f..9eac68d 100644
> --- a/arch/arm/mach-shmobile/board-marzen.c
> +++ b/arch/arm/mach-shmobile/board-marzen.c
> @@ -378,7 +378,7 @@ static const char *marzen_boards_compat_dt[] __initdata = {
>          NULL,
>  };
>
> -DT_MACHINE_START(MARZEN, "marzen")
> +DT_MACHINE_START(MARZEN)
>         .smp            = smp_ops(r8a7779_smp_ops),
>         .map_io         = r8a7779_map_io,
>         .init_early     = r8a7779_add_early_devices,
> diff --git a/arch/arm/mach-shmobile/setup-emev2.c b/arch/arm/mach-shmobile/setup-emev2.c
> index 3ad531c..5ede34d 100644
> --- a/arch/arm/mach-shmobile/setup-emev2.c
> +++ b/arch/arm/mach-shmobile/setup-emev2.c
> @@ -202,7 +202,7 @@ static const char *emev2_boards_compat_dt[] __initdata = {
>         NULL,
>  };
>
> -DT_MACHINE_START(EMEV2_DT, "Generic Emma Mobile EV2 (Flattened Device Tree)")
> +DT_MACHINE_START(EMEV2_DT)
>         .smp            = smp_ops(emev2_smp_ops),
>         .map_io         = emev2_map_io,
>         .init_early     = emev2_init_delay,
> diff --git a/arch/arm/mach-shmobile/setup-r7s72100.c b/arch/arm/mach-shmobile/setup-r7s72100.c
> index d4eb509..78ed46a 100644
> --- a/arch/arm/mach-shmobile/setup-r7s72100.c
> +++ b/arch/arm/mach-shmobile/setup-r7s72100.c
> @@ -81,7 +81,7 @@ static const char *r7s72100_boards_compat_dt[] __initdata = {
>         NULL,
>  };
>
> -DT_MACHINE_START(R7S72100_DT, "Generic R7S72100 (Flattened Device Tree)")
> +DT_MACHINE_START(R7S72100_DT)
>         .init_early     = r7s72100_init_early,
>         .dt_compat      = r7s72100_boards_compat_dt,
>  MACHINE_END
> diff --git a/arch/arm/mach-shmobile/setup-r8a73a4.c b/arch/arm/mach-shmobile/setup-r8a73a4.c
> index b0f2749..6027b92 100644
> --- a/arch/arm/mach-shmobile/setup-r8a73a4.c
> +++ b/arch/arm/mach-shmobile/setup-r8a73a4.c
> @@ -312,7 +312,7 @@ static const char *r8a73a4_boards_compat_dt[] __initdata = {
>         NULL,
>  };
>
> -DT_MACHINE_START(R8A73A4_DT, "Generic R8A73A4 (Flattened Device Tree)")
> +DT_MACHINE_START(R8A73A4_DT)
>         .init_early     = r8a73a4_init_early,
>         .dt_compat      = r8a73a4_boards_compat_dt,
>  MACHINE_END
> diff --git a/arch/arm/mach-shmobile/setup-r8a7740.c b/arch/arm/mach-shmobile/setup-r8a7740.c
> index b7d4b2c..c18f2a0e 100644
> --- a/arch/arm/mach-shmobile/setup-r8a7740.c
> +++ b/arch/arm/mach-shmobile/setup-r8a7740.c
> @@ -1062,7 +1062,7 @@ static const char *r8a7740_boards_compat_dt[] __initdata = {
>         NULL,
>  };
>
> -DT_MACHINE_START(R8A7740_DT, "Generic R8A7740 (Flattened Device Tree)")
> +DT_MACHINE_START(R8A7740_DT)
>         .map_io         = r8a7740_map_io,
>         .init_early     = r8a7740_init_delay,
>         .init_irq       = r8a7740_init_irq_of,
> diff --git a/arch/arm/mach-shmobile/setup-r8a7778.c b/arch/arm/mach-shmobile/setup-r8a7778.c
> index 03fcc59..f86e80f 100644
> --- a/arch/arm/mach-shmobile/setup-r8a7778.c
> +++ b/arch/arm/mach-shmobile/setup-r8a7778.c
> @@ -493,7 +493,7 @@ static const char *r8a7778_compat_dt[] __initdata = {
>         NULL,
>  };
>
> -DT_MACHINE_START(R8A7778_DT, "Generic R8A7778 (Flattened Device Tree)")
> +DT_MACHINE_START(R8A7778_DT)
>         .init_early     = r8a7778_init_delay,
>         .init_irq       = r8a7778_init_irq_dt,
>         .dt_compat      = r8a7778_compat_dt,
> diff --git a/arch/arm/mach-shmobile/setup-r8a7779.c b/arch/arm/mach-shmobile/setup-r8a7779.c
> index 13049e9..0b8c6d4 100644
> --- a/arch/arm/mach-shmobile/setup-r8a7779.c
> +++ b/arch/arm/mach-shmobile/setup-r8a7779.c
> @@ -936,7 +936,7 @@ static const char *r8a7779_compat_dt[] __initdata = {
>         NULL,
>  };
>
> -DT_MACHINE_START(R8A7779_DT, "Generic R8A7779 (Flattened Device Tree)")
> +DT_MACHINE_START(R8A7779_DT)
>         .map_io         = r8a7779_map_io,
>         .init_early     = r8a7779_init_delay,
>         .nr_irqs        = NR_IRQS_LEGACY,
> diff --git a/arch/arm/mach-shmobile/setup-r8a7790.c b/arch/arm/mach-shmobile/setup-r8a7790.c
> index c47bceb..3dcbdb2 100644
> --- a/arch/arm/mach-shmobile/setup-r8a7790.c
> +++ b/arch/arm/mach-shmobile/setup-r8a7790.c
> @@ -216,7 +216,7 @@ static const char * const r8a7790_boards_compat_dt[] __initconst = {
>         NULL,
>  };
>
> -DT_MACHINE_START(R8A7790_DT, "Generic R8A7790 (Flattened Device Tree)")
> +DT_MACHINE_START(R8A7790_DT)
>         .smp            = smp_ops(r8a7790_smp_ops),
>         .init_early     = r8a7790_init_early,
>         .init_time      = rcar_gen2_timer_init,
> diff --git a/arch/arm/mach-shmobile/setup-r8a7791.c b/arch/arm/mach-shmobile/setup-r8a7791.c
> index d9393d6..ec49e9e 100644
> --- a/arch/arm/mach-shmobile/setup-r8a7791.c
> +++ b/arch/arm/mach-shmobile/setup-r8a7791.c
> @@ -175,7 +175,7 @@ static const char *r8a7791_boards_compat_dt[] __initdata = {
>         NULL,
>  };
>
> -DT_MACHINE_START(R8A7791_DT, "Generic R8A7791 (Flattened Device Tree)")
> +DT_MACHINE_START(R8A7791_DT)
>         .smp            = smp_ops(r8a7791_smp_ops),
>         .init_early     = r8a7791_init_early,
>         .init_time      = rcar_gen2_timer_init,
> diff --git a/arch/arm/mach-shmobile/setup-sh7372.c b/arch/arm/mach-shmobile/setup-sh7372.c
> index 3118783..6c22b68 100644
> --- a/arch/arm/mach-shmobile/setup-sh7372.c
> +++ b/arch/arm/mach-shmobile/setup-sh7372.c
> @@ -1162,7 +1162,7 @@ static const char *sh7372_boards_compat_dt[] __initdata = {
>         NULL,
>  };
>
> -DT_MACHINE_START(SH7372_DT, "Generic SH7372 (Flattened Device Tree)")
> +DT_MACHINE_START(SH7372_DT)
>         .map_io         = sh7372_map_io,
>         .init_early     = sh7372_add_early_devices_dt,
>         .nr_irqs        = NR_IRQS_LEGACY,
> diff --git a/arch/arm/mach-shmobile/setup-sh73a0.c b/arch/arm/mach-shmobile/setup-sh73a0.c
> index 22de174..f49279e 100644
> --- a/arch/arm/mach-shmobile/setup-sh73a0.c
> +++ b/arch/arm/mach-shmobile/setup-sh73a0.c
> @@ -963,7 +963,7 @@ static const char *sh73a0_boards_compat_dt[] __initdata = {
>         NULL,
>  };
>
> -DT_MACHINE_START(SH73A0_DT, "Generic SH73A0 (Flattened Device Tree)")
> +DT_MACHINE_START(SH73A0_DT)
>         .smp            = smp_ops(sh73a0_smp_ops),
>         .map_io         = sh73a0_map_io,
>         .init_early     = sh73a0_init_delay,
> diff --git a/arch/arm/mach-socfpga/socfpga.c b/arch/arm/mach-socfpga/socfpga.c
> index dd0d49c..1c47025 100644
> --- a/arch/arm/mach-socfpga/socfpga.c
> +++ b/arch/arm/mach-socfpga/socfpga.c
> @@ -114,7 +114,7 @@ static const char *altera_dt_match[] = {
>         NULL
>  };
>
> -DT_MACHINE_START(SOCFPGA, "Altera SOCFPGA")
> +DT_MACHINE_START(SOCFPGA)
>         .smp            = smp_ops(socfpga_smp_ops),
>         .map_io         = socfpga_map_io,
>         .init_irq       = socfpga_init_irq,
> diff --git a/arch/arm/mach-spear/spear1310.c b/arch/arm/mach-spear/spear1310.c
> index 7ad0030..388b055 100644
> --- a/arch/arm/mach-spear/spear1310.c
> +++ b/arch/arm/mach-spear/spear1310.c
> @@ -56,7 +56,7 @@ static void __init spear1310_map_io(void)
>         spear13xx_map_io();
>  }
>
> -DT_MACHINE_START(SPEAR1310_DT, "ST SPEAr1310 SoC with Flattened Device Tree")
> +DT_MACHINE_START(SPEAR1310_DT)
>         .smp            =       smp_ops(spear13xx_smp_ops),
>         .map_io         =       spear1310_map_io,
>         .init_time      =       spear13xx_timer_init,
> diff --git a/arch/arm/mach-spear/spear1340.c b/arch/arm/mach-spear/spear1340.c
> index 3fb6834..009815e 100644
> --- a/arch/arm/mach-spear/spear1340.c
> +++ b/arch/arm/mach-spear/spear1340.c
> @@ -151,7 +151,7 @@ static const char * const spear1340_dt_board_compat[] = {
>         NULL,
>  };
>
> -DT_MACHINE_START(SPEAR1340_DT, "ST SPEAr1340 SoC with Flattened Device Tree")
> +DT_MACHINE_START(SPEAR1340_DT)
>         .smp            =       smp_ops(spear13xx_smp_ops),
>         .map_io         =       spear13xx_map_io,
>         .init_time      =       spear13xx_timer_init,
> diff --git a/arch/arm/mach-spear/spear300.c b/arch/arm/mach-spear/spear300.c
> index b52e48f..bd094b3 100644
> --- a/arch/arm/mach-spear/spear300.c
> +++ b/arch/arm/mach-spear/spear300.c
> @@ -209,7 +209,7 @@ static void __init spear300_map_io(void)
>         spear3xx_map_io();
>  }
>
> -DT_MACHINE_START(SPEAR300_DT, "ST SPEAr300 SoC with Flattened Device Tree")
> +DT_MACHINE_START(SPEAR300_DT)
>         .map_io         =       spear300_map_io,
>         .init_time      =       spear3xx_timer_init,
>         .init_machine   =       spear300_dt_init,
> diff --git a/arch/arm/mach-spear/spear310.c b/arch/arm/mach-spear/spear310.c
> index ed2029d..465e916 100644
> --- a/arch/arm/mach-spear/spear310.c
> +++ b/arch/arm/mach-spear/spear310.c
> @@ -251,7 +251,7 @@ static void __init spear310_map_io(void)
>         spear3xx_map_io();
>  }
>
> -DT_MACHINE_START(SPEAR310_DT, "ST SPEAr310 SoC with Flattened Device Tree")
> +DT_MACHINE_START(SPEAR310_DT)
>         .map_io         =       spear310_map_io,
>         .init_time      =       spear3xx_timer_init,
>         .init_machine   =       spear310_dt_init,
> diff --git a/arch/arm/mach-spear/spear320.c b/arch/arm/mach-spear/spear320.c
> index bf634b3..6b6b381 100644
> --- a/arch/arm/mach-spear/spear320.c
> +++ b/arch/arm/mach-spear/spear320.c
> @@ -266,7 +266,7 @@ static void __init spear320_map_io(void)
>         spear3xx_map_io();
>  }
>
> -DT_MACHINE_START(SPEAR320_DT, "ST SPEAr320 SoC with Flattened Device Tree")
> +DT_MACHINE_START(SPEAR320_DT)
>         .map_io         =       spear320_map_io,
>         .init_time      =       spear3xx_timer_init,
>         .init_machine   =       spear320_dt_init,
> diff --git a/arch/arm/mach-spear/spear6xx.c b/arch/arm/mach-spear/spear6xx.c
> index da26fa5..a69fc83 100644
> --- a/arch/arm/mach-spear/spear6xx.c
> +++ b/arch/arm/mach-spear/spear6xx.c
> @@ -420,7 +420,7 @@ static const char *spear600_dt_board_compat[] = {
>         NULL
>  };
>
> -DT_MACHINE_START(SPEAR600_DT, "ST SPEAr600 (Flattened Device Tree)")
> +DT_MACHINE_START(SPEAR600_DT)
>         .map_io         =       spear6xx_map_io,
>         .init_time      =       spear6xx_timer_init,
>         .init_machine   =       spear600_dt_init,
> diff --git a/arch/arm/mach-sti/board-dt.c b/arch/arm/mach-sti/board-dt.c
> index 1217fb5..6cd60cb 100644
> --- a/arch/arm/mach-sti/board-dt.c
> +++ b/arch/arm/mach-sti/board-dt.c
> @@ -39,7 +39,7 @@ static const char *stih41x_dt_match[] __initdata = {
>         NULL
>  };
>
> -DT_MACHINE_START(STM, "STiH415/416 SoC with Flattened Device Tree")
> +DT_MACHINE_START(STM)
>         .init_machine   = stih41x_machine_init,
>         .smp            = smp_ops(sti_smp_ops),
>         .dt_compat      = stih41x_dt_match,
> diff --git a/arch/arm/mach-sunxi/sunxi.c b/arch/arm/mach-sunxi/sunxi.c
> index 61d3a38..fb307fa 100644
> --- a/arch/arm/mach-sunxi/sunxi.c
> +++ b/arch/arm/mach-sunxi/sunxi.c
> @@ -121,7 +121,7 @@ static const char * const sunxi_board_dt_compat[] = {
>         NULL,
>  };
>
> -DT_MACHINE_START(SUNXI_DT, "Allwinner A1X (Device Tree)")
> +DT_MACHINE_START(SUNXI_DT)
>         .init_machine   = sunxi_dt_init,
>         .dt_compat      = sunxi_board_dt_compat,
>         .restart        = sun4i_restart,
> @@ -132,7 +132,7 @@ static const char * const sun6i_board_dt_compat[] = {
>         NULL,
>  };
>
> -DT_MACHINE_START(SUN6I_DT, "Allwinner sun6i (A31) Family")
> +DT_MACHINE_START(SUN6I_DT)
>         .init_machine   = sunxi_dt_init,
>         .dt_compat      = sun6i_board_dt_compat,
>         .restart        = sun6i_restart,
> @@ -143,7 +143,7 @@ static const char * const sun7i_board_dt_compat[] = {
>         NULL,
>  };
>
> -DT_MACHINE_START(SUN7I_DT, "Allwinner sun7i (A20) Family")
> +DT_MACHINE_START(SUN7I_DT)
>         .init_machine   = sunxi_dt_init,
>         .dt_compat      = sun7i_board_dt_compat,
>         .restart        = sun4i_restart,
> diff --git a/arch/arm/mach-tegra/tegra.c b/arch/arm/mach-tegra/tegra.c
> index ce553d5..90bff68 100644
> --- a/arch/arm/mach-tegra/tegra.c
> +++ b/arch/arm/mach-tegra/tegra.c
> @@ -180,7 +180,7 @@ static const char * const tegra_dt_board_compat[] = {
>         NULL
>  };
>
> -DT_MACHINE_START(TEGRA_DT, "NVIDIA Tegra SoC (Flattened Device Tree)")
> +DT_MACHINE_START(TEGRA_DT)
>         .map_io         = tegra_map_common_io,
>         .smp            = smp_ops(tegra_smp_ops),
>         .init_early     = tegra_init_early,
> diff --git a/arch/arm/mach-u300/core.c b/arch/arm/mach-u300/core.c
> index 35670b1..8bac5c8 100644
> --- a/arch/arm/mach-u300/core.c
> +++ b/arch/arm/mach-u300/core.c
> @@ -405,7 +405,7 @@ static const char * u300_board_compat[] = {
>         NULL,
>  };
>
> -DT_MACHINE_START(U300_DT, "U300 S335/B335 (Device Tree)")
> +DT_MACHINE_START(U300_DT)
>         .map_io         = u300_map_io,
>         .init_irq       = u300_init_irq_dt,
>         .init_time      = clocksource_of_init,
> diff --git a/arch/arm/mach-ux500/cpu-db8500.c b/arch/arm/mach-ux500/cpu-db8500.c
> index 2e85c1e..8506568 100644
> --- a/arch/arm/mach-ux500/cpu-db8500.c
> +++ b/arch/arm/mach-ux500/cpu-db8500.c
> @@ -210,7 +210,7 @@ static const char * stericsson_dt_platform_compat[] = {
>         NULL,
>  };
>
> -DT_MACHINE_START(U8500_DT, "ST-Ericsson Ux5x0 platform (Device Tree Support)")
> +DT_MACHINE_START(U8500_DT)
>         .smp            = smp_ops(ux500_smp_ops),
>         .map_io         = u8500_map_io,
>         .init_irq       = ux500_init_irq,
> diff --git a/arch/arm/mach-versatile/versatile_dt.c b/arch/arm/mach-versatile/versatile_dt.c
> index 3621b00..4940da8 100644
> --- a/arch/arm/mach-versatile/versatile_dt.c
> +++ b/arch/arm/mach-versatile/versatile_dt.c
> @@ -41,7 +41,7 @@ static const char *versatile_dt_match[] __initconst = {
>         NULL,
>  };
>
> -DT_MACHINE_START(VERSATILE_PB, "ARM-Versatile (Device Tree Support)")
> +DT_MACHINE_START(VERSATILE_PB)
>         .map_io         = versatile_map_io,
>         .init_early     = versatile_init_early,
>         .init_irq       = versatile_init_irq,
> diff --git a/arch/arm/mach-vexpress/v2m.c b/arch/arm/mach-vexpress/v2m.c
> index 4f8b8cb..868c40c 100644
> --- a/arch/arm/mach-vexpress/v2m.c
> +++ b/arch/arm/mach-vexpress/v2m.c
> @@ -441,7 +441,7 @@ static const char * const v2m_dt_match[] __initconst = {
>         NULL,
>  };
>
> -DT_MACHINE_START(VEXPRESS_DT, "ARM-Versatile Express")
> +DT_MACHINE_START(VEXPRESS_DT)
>         .dt_compat      = v2m_dt_match,
>         .smp            = smp_ops(vexpress_smp_ops),
>         .smp_init       = smp_init_ops(vexpress_smp_init_ops),
> diff --git a/arch/arm/mach-virt/virt.c b/arch/arm/mach-virt/virt.c
> index b184e57..d1495fd 100644
> --- a/arch/arm/mach-virt/virt.c
> +++ b/arch/arm/mach-virt/virt.c
> @@ -35,7 +35,7 @@ static const char *virt_dt_match[] = {
>         NULL
>  };
>
> -DT_MACHINE_START(VIRT, "Dummy Virtual Machine")
> +DT_MACHINE_START(VIRT)
>         .init_machine   = virt_init,
>         .dt_compat      = virt_dt_match,
>  MACHINE_END
> diff --git a/arch/arm/mach-vt8500/vt8500.c b/arch/arm/mach-vt8500/vt8500.c
> index 4a73464..373b4a6 100644
> --- a/arch/arm/mach-vt8500/vt8500.c
> +++ b/arch/arm/mach-vt8500/vt8500.c
> @@ -171,7 +171,7 @@ static const char * const vt8500_dt_compat[] = {
>         NULL
>  };
>
> -DT_MACHINE_START(WMT_DT, "VIA/Wondermedia SoC (Device Tree Support)")
> +DT_MACHINE_START(WMT_DT)
>         .dt_compat      = vt8500_dt_compat,
>         .map_io         = vt8500_map_io,
>         .init_machine   = vt8500_init,
> diff --git a/arch/arm/mach-zynq/common.c b/arch/arm/mach-zynq/common.c
> index 5f25256..f36211c 100644
> --- a/arch/arm/mach-zynq/common.c
> +++ b/arch/arm/mach-zynq/common.c
> @@ -101,7 +101,7 @@ static const char * const zynq_dt_match[] = {
>         NULL
>  };
>
> -DT_MACHINE_START(XILINX_EP107, "Xilinx Zynq Platform")
> +DT_MACHINE_START(XILINX_EP107)
>         .smp            = smp_ops(zynq_smp_ops),
>         .map_io         = zynq_map_io,
>         .init_machine   = zynq_init_machine,
> --
> 1.8.1.2
>
>
> _______________________________________________
> linux-arm-kernel mailing list
> linux-arm-kernel@lists.infradead.org
> http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
Rob Herring - Nov. 5, 2013, 2:34 p.m.
On Mon, Nov 4, 2013 at 5:36 AM, Grant Likely <grant.likely@secretlab.ca> wrote:
> On Sun, Nov 3, 2013 at 8:50 PM, Rob Herring <robherring2@gmail.com> wrote:
>> From: Rob Herring <rob.herring@calxeda.com>
>>
>> As part of the effort to ultimately remove struct machine_desc, the
>> machine name is not really needed. It is only used for /proc/cpuinfo
>> "Hardware" field. Get this information from the DT instead and remove
>> the name string in the machine descriptor for DT machine descriptors. The
>> model or machine compatible property from the DT is used instead.
>
> I've obviously missed some discussions because I wasn't aware of the
> plan to remove machine_desc. That's neither here not there, but for as
> long as the structure still exists it is really useful to discover
> which machine_desc the kernel chooses at boot time. If you're going to
> remove this, then at the very least I would embed the filename or
> something similar into the machine desc so it is available for
> debugging. It can go away when the structure is removed.

It's a very long term goal to remove it completely, but it is now
optional for "simple" platforms with the default machine_desc and
default init ptrs. You might want to look at the patches and the WIP
branch I posted[1] which removes the machine_desc for highbank.
There's some core boilerplate I'd like your opinion on. Also, I'm sure
you are aware of the resistance to add a machine_desc to arm64, so I'm
looking at this from that perspective as well. I'm sure there will be
platforms which look very similar across arm and arm64.

On boot, the model or compatible string from the DTB is printed out
(that change is actually in my DT arch clean-up series, not this
patch). This has made what is printed out on boot consistent across
arches using DT. There is no good reason for this to be arch specific.
Presumably the compatible string is unique and just as easily grepped
for in the kernel source as the machine_desc name is. Adding a
filename string here seems like useless bloat to me.

Rob

[1] https://lkml.org/lkml/2013/10/30/27
Matt Sealey - Nov. 5, 2013, 5:44 p.m.
On Tue, Nov 5, 2013 at 8:34 AM, Rob Herring <robherring2@gmail.com> wrote:
> On Mon, Nov 4, 2013 at 5:36 AM, Grant Likely <grant.likely@secretlab.ca> wrote:
>> On Sun, Nov 3, 2013 at 8:50 PM, Rob Herring <robherring2@gmail.com> wrote:
>>> From: Rob Herring <rob.herring@calxeda.com>
>>>
>>> As part of the effort to ultimately remove struct machine_desc, the
>>> machine name is not really needed. It is only used for /proc/cpuinfo
>>> "Hardware" field. Get this information from the DT instead and remove
>>> the name string in the machine descriptor for DT machine descriptors. The
>>> model or machine compatible property from the DT is used instead.
>>
>> I've obviously missed some discussions because I wasn't aware of the
>> plan to remove machine_desc. That's neither here not there, but for as
>> long as the structure still exists it is really useful to discover
>> which machine_desc the kernel chooses at boot time. If you're going to
>> remove this, then at the very least I would embed the filename or
>> something similar into the machine desc so it is available for
>> debugging. It can go away when the structure is removed.
>
> It's a very long term goal to remove it completely, but it is now
> optional for "simple" platforms with the default machine_desc and
> default init ptrs. You might want to look at the patches and the WIP
> branch I posted[1] which removes the machine_desc for highbank.
> There's some core boilerplate I'd like your opinion on. Also, I'm sure
> you are aware of the resistance to add a machine_desc to arm64, so I'm
> looking at this from that perspective as well. I'm sure there will be
> platforms which look very similar across arm and arm64.
>
> On boot, the model or compatible string from the DTB is printed out

So in the case of a DTS for a generic, get-started-here board with no
"external" features, you might see "fsl,imx53" as your board name?

> (that change is actually in my DT arch clean-up series, not this
> patch). This has made what is printed out on boot consistent across
> arches using DT. There is no good reason for this to be arch specific.
> Presumably the compatible string is unique

Not necessarily. Most compatible strings in the root node have more
than one string (fsl,imx51-babbage, fsl,imx51) - which do you print?
First? Both/All? Without the model property it's not completely
deterministic (since it's externally provided data, no matter what)
and I don't see code that brings out more than one.

Essentially meaning for anything that never had or never will have a
true model property, something a little more relevant (and entirely
deterministic per-SoC) ends up in the device property.

I really like the idea of ditching machine_desc, but this is one place
where probably init code for the board is the place to parse (and
stuff in) the board name to some global structure.

BTW with the of matching patch, what REALLY guarantees ordering of
these calls, for instance how does it replace map_io, init_irq, etc.?
Highbank seems a special case where it basically didn't need or do any
of this so it's not affected by it going away. What I'm trying to
understand is what replaces those hooks, because I'd like to throw
this into i.MX and see what happens, but I'm not sure what the
eventual goal is. Nonetheless I like the theme;

Acked-by: Matt Sealey <neko@bakuhatsu.net>
Olof Johansson - Nov. 11, 2013, 5:38 p.m.
On Tue, Nov 05, 2013 at 08:34:56AM -0600, Rob Herring wrote:
> On Mon, Nov 4, 2013 at 5:36 AM, Grant Likely <grant.likely@secretlab.ca> wrote:
> > On Sun, Nov 3, 2013 at 8:50 PM, Rob Herring <robherring2@gmail.com> wrote:
> >> From: Rob Herring <rob.herring@calxeda.com>
> >>
> >> As part of the effort to ultimately remove struct machine_desc, the
> >> machine name is not really needed. It is only used for /proc/cpuinfo
> >> "Hardware" field. Get this information from the DT instead and remove
> >> the name string in the machine descriptor for DT machine descriptors. The
> >> model or machine compatible property from the DT is used instead.
> >
> > I've obviously missed some discussions because I wasn't aware of the
> > plan to remove machine_desc. That's neither here not there, but for as
> > long as the structure still exists it is really useful to discover
> > which machine_desc the kernel chooses at boot time. If you're going to
> > remove this, then at the very least I would embed the filename or
> > something similar into the machine desc so it is available for
> > debugging. It can go away when the structure is removed.
> 
> It's a very long term goal to remove it completely, but it is now
> optional for "simple" platforms with the default machine_desc and
> default init ptrs. You might want to look at the patches and the WIP
> branch I posted[1] which removes the machine_desc for highbank.
> There's some core boilerplate I'd like your opinion on. Also, I'm sure
> you are aware of the resistance to add a machine_desc to arm64, so I'm
> looking at this from that perspective as well. I'm sure there will be
> platforms which look very similar across arm and arm64.
> 
> On boot, the model or compatible string from the DTB is printed out
> (that change is actually in my DT arch clean-up series, not this
> patch). This has made what is printed out on boot consistent across
> arches using DT. There is no good reason for this to be arch specific.
> Presumably the compatible string is unique and just as easily grepped
> for in the kernel source as the machine_desc name is. Adding a
> filename string here seems like useless bloat to me.

I think I agree a bit with Grant's concern here.

The compatible string is unique, but the machine descriptors might not
be -- a given device tree might match two of them (one more generic,
one more specific) -- it would be useful to know which one was used. Or,
if you missed to enable the platform support for your board so it booted
with the generic descriptor, but you still needed your own.

Matching it back to which devicetree the kernel was booted with shouldn't be
hard, I agree -- but knowing which machine entry was picked at boot time
is still useful information.

-Olof
Olof Johansson - Nov. 13, 2013, 7:21 p.m.
On Wed, Nov 13, 2013 at 11:00 AM, Rob Herring <robherring2@gmail.com> wrote:
> On 11/11/2013 11:38 AM, Olof Johansson wrote:
>> On Tue, Nov 05, 2013 at 08:34:56AM -0600, Rob Herring wrote:
>>> On Mon, Nov 4, 2013 at 5:36 AM, Grant Likely <grant.likely@secretlab.ca> wrote:
>>>> On Sun, Nov 3, 2013 at 8:50 PM, Rob Herring <robherring2@gmail.com> wrote:
>>>>> From: Rob Herring <rob.herring@calxeda.com>
>>>>>
>>>>> As part of the effort to ultimately remove struct machine_desc, the
>>>>> machine name is not really needed. It is only used for /proc/cpuinfo
>>>>> "Hardware" field. Get this information from the DT instead and remove
>>>>> the name string in the machine descriptor for DT machine descriptors. The
>>>>> model or machine compatible property from the DT is used instead.
>>>>
>>>> I've obviously missed some discussions because I wasn't aware of the
>>>> plan to remove machine_desc. That's neither here not there, but for as
>>>> long as the structure still exists it is really useful to discover
>>>> which machine_desc the kernel chooses at boot time. If you're going to
>>>> remove this, then at the very least I would embed the filename or
>>>> something similar into the machine desc so it is available for
>>>> debugging. It can go away when the structure is removed.
>>>
>>> It's a very long term goal to remove it completely, but it is now
>>> optional for "simple" platforms with the default machine_desc and
>>> default init ptrs. You might want to look at the patches and the WIP
>>> branch I posted[1] which removes the machine_desc for highbank.
>>> There's some core boilerplate I'd like your opinion on. Also, I'm sure
>>> you are aware of the resistance to add a machine_desc to arm64, so I'm
>>> looking at this from that perspective as well. I'm sure there will be
>>> platforms which look very similar across arm and arm64.
>>>
>>> On boot, the model or compatible string from the DTB is printed out
>>> (that change is actually in my DT arch clean-up series, not this
>>> patch). This has made what is printed out on boot consistent across
>>> arches using DT. There is no good reason for this to be arch specific.
>>> Presumably the compatible string is unique and just as easily grepped
>>> for in the kernel source as the machine_desc name is. Adding a
>>> filename string here seems like useless bloat to me.
>>
>> I think I agree a bit with Grant's concern here.
>>
>> The compatible string is unique, but the machine descriptors might not
>> be -- a given device tree might match two of them (one more generic,
>> one more specific) -- it would be useful to know which one was used. Or,
>> if you missed to enable the platform support for your board so it booted
>> with the generic descriptor, but you still needed your own.
>
> I would push back on anyone having multiple machine descriptors for that
> purpose.
>
>> Matching it back to which devicetree the kernel was booted with shouldn't be
>> hard, I agree -- but knowing which machine entry was picked at boot time
>> is still useful information.
>
> We need to separate what we print on boot vs. what is in /proc/cpuinfo.
>
> One issue I'm trying to solve here is customers complain that Midway
> systems print "Calxeda Highbank" in /proc/cpuinfo. I don't think adding
> a machine desc only for adding a string for Midway would be right. Also,
> I'm close to removing the highbank machine descriptor altogether and
> printing out "Generic DT" from the default machine desc is not
> particularly useful. Do we at least have agreement that the "right"
> thing to print in cpuinfo is the model or compatible from DT?
>
> What is printed on boot is already changed to be based on DT, but that
> seems to be what you and Grant care about. Does something like this work
> for you? This will print either "Machine model: model string (matched
> compat)" or "Machine model: 1st compat str (matched compat)"


PowerPC prints both platform (which is the equivalent to machine
descriptor name on ARM), _and_ the /model property from the device
tree:


chitra:~# cat /proc/cpuinfo
processor : 0
cpu : PA6T, altivec supported
clock : 500.000000MHz
revision : 1.2 (pvr 0090 0102)

processor : 1
cpu : PA6T, altivec supported
clock : 500.000000MHz
revision : 1.2 (pvr 0090 0102)

timebase : 66666666
platform : PA Semi PWRficient
model : pasemi,chitra
chitra:~#

(Not sure why we chose "pasemi,chitra" instead of a clear-text model
name in this case :-)

Maybe that's the best of both worlds, to add a Model-equivalent entry
in /proc/cpuinfo? Ideally we'd like to rename the "Hardware" one to
"Platform", but since that's an ABI it'll be hard.

Perhaps it's better to use the /model string for Hardware:, and add a
"Machine type" under it? In your case the machine type would
(eventually) be "Generic DT", which should be acceptable.


-Olof
Rob Herring - Nov. 13, 2013, 8:04 p.m.
On 11/13/2013 01:21 PM, Olof Johansson wrote:
> On Wed, Nov 13, 2013 at 11:00 AM, Rob Herring <robherring2@gmail.com> wrote:
>> On 11/11/2013 11:38 AM, Olof Johansson wrote:
>>> On Tue, Nov 05, 2013 at 08:34:56AM -0600, Rob Herring wrote:
>>>> On Mon, Nov 4, 2013 at 5:36 AM, Grant Likely <grant.likely@secretlab.ca> wrote:
>>>>> On Sun, Nov 3, 2013 at 8:50 PM, Rob Herring <robherring2@gmail.com> wrote:
>>>>>> From: Rob Herring <rob.herring@calxeda.com>
>>>>>>
>>>>>> As part of the effort to ultimately remove struct machine_desc, the
>>>>>> machine name is not really needed. It is only used for /proc/cpuinfo
>>>>>> "Hardware" field. Get this information from the DT instead and remove
>>>>>> the name string in the machine descriptor for DT machine descriptors. The
>>>>>> model or machine compatible property from the DT is used instead.
>>>>>
>>>>> I've obviously missed some discussions because I wasn't aware of the
>>>>> plan to remove machine_desc. That's neither here not there, but for as
>>>>> long as the structure still exists it is really useful to discover
>>>>> which machine_desc the kernel chooses at boot time. If you're going to
>>>>> remove this, then at the very least I would embed the filename or
>>>>> something similar into the machine desc so it is available for
>>>>> debugging. It can go away when the structure is removed.
>>>>
>>>> It's a very long term goal to remove it completely, but it is now
>>>> optional for "simple" platforms with the default machine_desc and
>>>> default init ptrs. You might want to look at the patches and the WIP
>>>> branch I posted[1] which removes the machine_desc for highbank.
>>>> There's some core boilerplate I'd like your opinion on. Also, I'm sure
>>>> you are aware of the resistance to add a machine_desc to arm64, so I'm
>>>> looking at this from that perspective as well. I'm sure there will be
>>>> platforms which look very similar across arm and arm64.
>>>>
>>>> On boot, the model or compatible string from the DTB is printed out
>>>> (that change is actually in my DT arch clean-up series, not this
>>>> patch). This has made what is printed out on boot consistent across
>>>> arches using DT. There is no good reason for this to be arch specific.
>>>> Presumably the compatible string is unique and just as easily grepped
>>>> for in the kernel source as the machine_desc name is. Adding a
>>>> filename string here seems like useless bloat to me.
>>>
>>> I think I agree a bit with Grant's concern here.
>>>
>>> The compatible string is unique, but the machine descriptors might not
>>> be -- a given device tree might match two of them (one more generic,
>>> one more specific) -- it would be useful to know which one was used. Or,
>>> if you missed to enable the platform support for your board so it booted
>>> with the generic descriptor, but you still needed your own.
>>
>> I would push back on anyone having multiple machine descriptors for that
>> purpose.
>>
>>> Matching it back to which devicetree the kernel was booted with shouldn't be
>>> hard, I agree -- but knowing which machine entry was picked at boot time
>>> is still useful information.
>>
>> We need to separate what we print on boot vs. what is in /proc/cpuinfo.
>>
>> One issue I'm trying to solve here is customers complain that Midway
>> systems print "Calxeda Highbank" in /proc/cpuinfo. I don't think adding
>> a machine desc only for adding a string for Midway would be right. Also,
>> I'm close to removing the highbank machine descriptor altogether and
>> printing out "Generic DT" from the default machine desc is not
>> particularly useful. Do we at least have agreement that the "right"
>> thing to print in cpuinfo is the model or compatible from DT?
>>
>> What is printed on boot is already changed to be based on DT, but that
>> seems to be what you and Grant care about. Does something like this work
>> for you? This will print either "Machine model: model string (matched
>> compat)" or "Machine model: 1st compat str (matched compat)"
> 
> 
> PowerPC prints both platform (which is the equivalent to machine
> descriptor name on ARM), _and_ the /model property from the device
> tree:

IMHO, pointless architectural variation.

> chitra:~# cat /proc/cpuinfo
> processor : 0
> cpu : PA6T, altivec supported
> clock : 500.000000MHz
> revision : 1.2 (pvr 0090 0102)
> 
> processor : 1
> cpu : PA6T, altivec supported
> clock : 500.000000MHz
> revision : 1.2 (pvr 0090 0102)
> 
> timebase : 66666666
> platform : PA Semi PWRficient
> model : pasemi,chitra
> chitra:~#
> 
> (Not sure why we chose "pasemi,chitra" instead of a clear-text model
> name in this case :-)
> 
> Maybe that's the best of both worlds, to add a Model-equivalent entry
> in /proc/cpuinfo? Ideally we'd like to rename the "Hardware" one to
> "Platform", but since that's an ABI it'll be hard.
> 
> Perhaps it's better to use the /model string for Hardware:, and add a
> "Machine type" under it? In your case the machine type would
> (eventually) be "Generic DT", which should be acceptable.

I'm not inclined to expand cpuinfo and prior attempts to add more info
to cpuinfo like SoC name have failed. The differences between x86 and
arm cpuinfo already cause issues for arm. lscpu does not really work on arm.

I'd actually prefer If you really want more system info, then go read
/proc/device-tree.

Rob
Arnd Bergmann - Nov. 14, 2013, 12:32 p.m.
On Wednesday 13 November 2013, Rob Herring wrote:
> I'm not inclined to expand cpuinfo and prior attempts to add more info
> to cpuinfo like SoC name have failed. The differences between x86 and
> arm cpuinfo already cause issues for arm. lscpu does not really work on arm.

Well, they turned into drivers/base/soc.c, which adds the information in
a structured way in sysfs, but is only used on a couple of platforms.

> I'd actually prefer If you really want more system info, then go read
> /proc/device-tree.

Good point.

	Arnd
Grant Likely - Nov. 14, 2013, 1:33 p.m.
On Thu, Nov 14, 2013 at 9:32 PM, Arnd Bergmann <arnd@arndb.de> wrote:
> On Wednesday 13 November 2013, Rob Herring wrote:
>> I'm not inclined to expand cpuinfo and prior attempts to add more info
>> to cpuinfo like SoC name have failed. The differences between x86 and
>> arm cpuinfo already cause issues for arm. lscpu does not really work on arm.
>
> Well, they turned into drivers/base/soc.c, which adds the information in
> a structured way in sysfs, but is only used on a couple of platforms.
>
>> I'd actually prefer If you really want more system info, then go read
>> /proc/device-tree.

I really don't mind pulling that information out of /proc/cpuinfo. My
point is merely that it is incredibly useful to be able to easily find
out exactly which machine_desc got chosen on any given platform. I
don't think I should have to grep the source tree to figure that out.

The kernel log is useful, but it is also helpful to have it in a /proc
or /sysfs file for when the kernel log overflows. /proc/device-tree
doesn't give that information.

g.
Rob Herring - Nov. 14, 2013, 2:46 p.m.
On 11/14/2013 07:33 AM, Grant Likely wrote:
> On Thu, Nov 14, 2013 at 9:32 PM, Arnd Bergmann <arnd@arndb.de> wrote:
>> On Wednesday 13 November 2013, Rob Herring wrote:
>>> I'm not inclined to expand cpuinfo and prior attempts to add more info
>>> to cpuinfo like SoC name have failed. The differences between x86 and
>>> arm cpuinfo already cause issues for arm. lscpu does not really work on arm.
>>
>> Well, they turned into drivers/base/soc.c, which adds the information in
>> a structured way in sysfs, but is only used on a couple of platforms.
>>
>>> I'd actually prefer If you really want more system info, then go read
>>> /proc/device-tree.
> 
> I really don't mind pulling that information out of /proc/cpuinfo. My
> point is merely that it is incredibly useful to be able to easily find
> out exactly which machine_desc got chosen on any given platform. I
> don't think I should have to grep the source tree to figure that out.
> 
> The kernel log is useful, but it is also helpful to have it in a /proc
> or /sysfs file for when the kernel log overflows. /proc/device-tree
> doesn't give that information.

Either we want to shrink/remove machine_desc or we don't. If we do, then
the name has to go at some point. So what is the reason to remove it
later rather than sooner? Later means we will have "Generic DT based
system" in cpuinfo as platforms transition. Perhaps that is useful to
know in the short term, but once all platforms print the same thing the
information becomes useless. Then we either remove Hardware field from
cpuinfo or change to use DT info. That's changing the string twice
rather than once.

We probably have at least a dozen machine_desc's we are close to being
able to remove (sunxi, picoxcell, highbank, dove, rockchip, virt,
several sh-mobile). There's also more that probably can be combined
together which will change the string in /proc/cpuinfo.

If this is a required feature then we should make machine_desc common
(or at least part of it) with the other arches that have copied arm and
then add it to arm64 as well. Then I could do further consolidation of
the FDT machine matching code. Otherwise this is all just pointless
architecture variation that really has nothing to do with the architecture.

Rob
Grant Likely - Nov. 14, 2013, 5:16 p.m.
On Thu, Nov 14, 2013 at 11:46 PM, Rob Herring <robherring2@gmail.com> wrote:
> On 11/14/2013 07:33 AM, Grant Likely wrote:
>> On Thu, Nov 14, 2013 at 9:32 PM, Arnd Bergmann <arnd@arndb.de> wrote:
>>> On Wednesday 13 November 2013, Rob Herring wrote:
>>>> I'm not inclined to expand cpuinfo and prior attempts to add more info
>>>> to cpuinfo like SoC name have failed. The differences between x86 and
>>>> arm cpuinfo already cause issues for arm. lscpu does not really work on arm.
>>>
>>> Well, they turned into drivers/base/soc.c, which adds the information in
>>> a structured way in sysfs, but is only used on a couple of platforms.
>>>
>>>> I'd actually prefer If you really want more system info, then go read
>>>> /proc/device-tree.
>>
>> I really don't mind pulling that information out of /proc/cpuinfo. My
>> point is merely that it is incredibly useful to be able to easily find
>> out exactly which machine_desc got chosen on any given platform. I
>> don't think I should have to grep the source tree to figure that out.
>>
>> The kernel log is useful, but it is also helpful to have it in a /proc
>> or /sysfs file for when the kernel log overflows. /proc/device-tree
>> doesn't give that information.
>
> Either we want to shrink/remove machine_desc or we don't. If we do, then
> the name has to go at some point. So what is the reason to remove it
> later rather than sooner? Later means we will have "Generic DT based
> system" in cpuinfo as platforms transition. Perhaps that is useful to
> know in the short term, but once all platforms print the same thing the
> information becomes useless. Then we either remove Hardware field from
> cpuinfo or change to use DT info. That's changing the string twice
> rather than once.
>
> We probably have at least a dozen machine_desc's we are close to being
> able to remove (sunxi, picoxcell, highbank, dove, rockchip, virt,
> several sh-mobile). There's also more that probably can be combined
> together which will change the string in /proc/cpuinfo.
>
> If this is a required feature then we should make machine_desc common
> (or at least part of it) with the other arches that have copied arm and
> then add it to arm64 as well. Then I could do further consolidation of
> the FDT machine matching code. Otherwise this is all just pointless
> architecture variation that really has nothing to do with the architecture.

I think you are missing my point. go ahead, take it out of
/proc/cpuinfo. That's not the issue.

However, as long as there is more than one machine desc, the kernel
really needs to report which one was chosen because it reflects the
initialization path. Whether it's done with the .name field or some
other mechanism also doesn't matter either, but I really don't see a
reason to even bother removing .name. It is zero practical cost to
keep it. Removing it in an effort to shrink machine_desc is just silly
because it doesn't have any meaning outside of machine desc. It's the
other fields in that structure that require engineering work to
remove. .name can simply disappear naturally at the same time time
structure is deleted.

g.

>
> Rob
Matt Sealey - Nov. 14, 2013, 8:33 p.m.
On Sun, Nov 3, 2013 at 2:50 PM, Rob Herring <robherring2@gmail.com> wrote:
> From: Rob Herring <rob.herring@calxeda.com>

Snip.. I actually reviewed what you're doing since I was
understandably curious as to what the "plan" is for removing
machine_desc and how you'd potentially avoid end up stashing global
variables all over the place for early init code..

> --- a/arch/arm/kernel/devtree.c
> +++ b/arch/arm/kernel/devtree.c
> @@ -199,7 +199,7 @@ const struct machine_desc * __init setup_machine_fdt(unsigned int dt_phys)
>         const struct machine_desc *mdesc, *mdesc_best = NULL;
>
>  #ifdef CONFIG_ARCH_MULTIPLATFORM
> -       DT_MACHINE_START(GENERIC_DT, "Generic DT based system")
> +       DT_MACHINE_START(GENERIC_DT)
>         MACHINE_END

This machine doesn't have a .dt_compat so...

> +               early_print("%08x\t%s\n", p->nr, p->name ? p->name : *p->dt_compat);

In your case here, isn't this going to print "calxeda,highbank" for
you right now, with a broken tree, since it's the first in your
dt_compat list?

In the generic case, as noted above, the compatibility list usually comes out as

                         ID (hex)       NAME
                         :
                         0xffffffff        Highbank
                         0xffffffff        Generic DT based system

But you've made it say:

                         ID (hex)        NAME
                         :
                         0xffffffff         calxeda,highbank
                         0xffffffff

You didn't fix your customer issue there, at least, if they're messing
with their DT and break it ;)

> @@ -859,7 +859,7 @@ void __init setup_arch(char **cmdline_p)
>         if (!mdesc)
>                 mdesc = setup_machine_tags(__atags_pointer, __machine_arch_type);
>         machine_desc = mdesc;
> -       machine_name = mdesc->name;
> +       machine_name = mdesc->name ? mdesc->name : of_flat_dt_get_machine_name();

Also you missed around line 242 of kernel/devtree.c which prints
mdesc_best->name;

        model = of_get_flat_dt_prop(dt_root, "model", NULL);
        if (!model)
                model = of_get_flat_dt_prop(dt_root, "compatible", NULL);
        if (!model)
                model = "<unknown>";
        pr_info("Machine: %s, model: %s\n", mdesc_best->name, model);

Which is now going to say "Machine: , model: Calxeda Foo Board", isn't it?

Should just use machine_name, if mdesc_best->name isn't set, shouldn't it?

I think there's a bunch of weirdness here.. I just checked the PAPR
and ePAPR specs, and the original IEEE1275 and ARM bindings and
finding board information like you want from the DT is an unholy
crapshoot.

In this case I think we need more information, and to only print it
once per boot if that's the goal here. Why not make machine_name an
argument to setup_machine_fdt (or just don't have it be static in
setup.c) and have that function fill in the right thing rather than
having a DT parsing function in setup_arch where before it was totally
boot-method agnostic?

Ta,
Matt Sealey <neko@bakuhatsu.net>
Rob Herring - Nov. 14, 2013, 11:17 p.m.
On 11/14/2013 11:16 AM, Grant Likely wrote:
> On Thu, Nov 14, 2013 at 11:46 PM, Rob Herring <robherring2@gmail.com> wrote:
>> On 11/14/2013 07:33 AM, Grant Likely wrote:
>>> On Thu, Nov 14, 2013 at 9:32 PM, Arnd Bergmann <arnd@arndb.de> wrote:
>>>> On Wednesday 13 November 2013, Rob Herring wrote:
>>>>> I'm not inclined to expand cpuinfo and prior attempts to add more info
>>>>> to cpuinfo like SoC name have failed. The differences between x86 and
>>>>> arm cpuinfo already cause issues for arm. lscpu does not really work on arm.
>>>>
>>>> Well, they turned into drivers/base/soc.c, which adds the information in
>>>> a structured way in sysfs, but is only used on a couple of platforms.
>>>>
>>>>> I'd actually prefer If you really want more system info, then go read
>>>>> /proc/device-tree.
>>>
>>> I really don't mind pulling that information out of /proc/cpuinfo. My
>>> point is merely that it is incredibly useful to be able to easily find
>>> out exactly which machine_desc got chosen on any given platform. I
>>> don't think I should have to grep the source tree to figure that out.
>>>
>>> The kernel log is useful, but it is also helpful to have it in a /proc
>>> or /sysfs file for when the kernel log overflows. /proc/device-tree
>>> doesn't give that information.
>>
>> Either we want to shrink/remove machine_desc or we don't. If we do, then
>> the name has to go at some point. So what is the reason to remove it
>> later rather than sooner? Later means we will have "Generic DT based
>> system" in cpuinfo as platforms transition. Perhaps that is useful to
>> know in the short term, but once all platforms print the same thing the
>> information becomes useless. Then we either remove Hardware field from
>> cpuinfo or change to use DT info. That's changing the string twice
>> rather than once.
>>
>> We probably have at least a dozen machine_desc's we are close to being
>> able to remove (sunxi, picoxcell, highbank, dove, rockchip, virt,
>> several sh-mobile). There's also more that probably can be combined
>> together which will change the string in /proc/cpuinfo.
>>
>> If this is a required feature then we should make machine_desc common
>> (or at least part of it) with the other arches that have copied arm and
>> then add it to arm64 as well. Then I could do further consolidation of
>> the FDT machine matching code. Otherwise this is all just pointless
>> architecture variation that really has nothing to do with the architecture.
> 
> I think you are missing my point. go ahead, take it out of
> /proc/cpuinfo. That's not the issue.

I understand what you want. I just don't see a solution that satisfies
you, Olof, and me. I don't see an easy way to add both strings in a way
that is not an ABI, but yet is persistently available. I'm not sure I
understand a scenario where you boot successfully enough to read
/proc/cpuinfo, /sys or something, but cannot get the kernel log.

> However, as long as there is more than one machine desc, the kernel
> really needs to report which one was chosen because it reflects the
> initialization path. Whether it's done with the .name field or some
> other mechanism also doesn't matter either, but I really don't see a
> reason to even bother removing .name. It is zero practical cost to
> keep it. Removing it in an effort to shrink machine_desc is just silly
> because it doesn't have any meaning outside of machine desc. It's the
> other fields in that structure that require engineering work to
> remove. .name can simply disappear naturally at the same time time
> structure is deleted.

There is a real problem as I explained with people asking me why Midway
systems report "Calxeda Highbank". My choices were:

1) Change the machine_desc name to be more generic like "Calxeda based"
or something
2) Change the string to accurately reflect Midway vs. Highbank based on
DT and avoid reporting "Generic DT based system" when internal kernel
refactoring occurs.
3) Ignore the question and tell people to go away.

I went with a solution that works with future plans and avoids the same
issue on other platforms (see the BCM name change going into 3.13)
rather than a simple 2 line patch. At this point, I'm going with 3.

BTW, I have done initial engineering work for the other areas which has
seen little feedback[1][2].

Rob

[1] http://www.kernelhub.org/?msg=353670&p=2
[2]
https://git.kernel.org/cgit/linux/kernel/git/robh/linux.git/log/?h=highbank-rm-mach-desc
Rob Herring - Nov. 15, 2013, 4:08 p.m.
On 11/14/2013 02:33 PM, Matt Sealey wrote:
> On Sun, Nov 3, 2013 at 2:50 PM, Rob Herring <robherring2@gmail.com> wrote:
>> From: Rob Herring <rob.herring@calxeda.com>
> 
> Snip.. I actually reviewed what you're doing since I was
> understandably curious as to what the "plan" is for removing
> machine_desc and how you'd potentially avoid end up stashing global
> variables all over the place for early init code..
> 
>> --- a/arch/arm/kernel/devtree.c
>> +++ b/arch/arm/kernel/devtree.c
>> @@ -199,7 +199,7 @@ const struct machine_desc * __init setup_machine_fdt(unsigned int dt_phys)
>>         const struct machine_desc *mdesc, *mdesc_best = NULL;
>>
>>  #ifdef CONFIG_ARCH_MULTIPLATFORM
>> -       DT_MACHINE_START(GENERIC_DT, "Generic DT based system")
>> +       DT_MACHINE_START(GENERIC_DT)
>>         MACHINE_END
> 
> This machine doesn't have a .dt_compat so...
> 
>> +               early_print("%08x\t%s\n", p->nr, p->name ? p->name : *p->dt_compat);
> 
> In your case here, isn't this going to print "calxeda,highbank" for
> you right now, with a broken tree, since it's the first in your
> dt_compat list?
> 
> In the generic case, as noted above, the compatibility list usually comes out as
> 
>                          ID (hex)       NAME
>                          :
>                          0xffffffff        Highbank
>                          0xffffffff        Generic DT based system
> 
> But you've made it say:
> 
>                          ID (hex)        NAME
>                          :
>                          0xffffffff         calxeda,highbank
>                          0xffffffff
> 
> You didn't fix your customer issue there, at least, if they're messing
> with their DT and break it ;)

This is not the issue I'm trying to fix as this is a debug early print.
It is what /proc/cpuinfo displays.

I don't think your example is even possible. If we have the default
descriptor enabled (i.e. all multi-platform builds), then we will always
match a machine descriptor and try to continue to boot never reaching
this code path.

>> @@ -859,7 +859,7 @@ void __init setup_arch(char **cmdline_p)
>>         if (!mdesc)
>>                 mdesc = setup_machine_tags(__atags_pointer, __machine_arch_type);
>>         machine_desc = mdesc;
>> -       machine_name = mdesc->name;
>> +       machine_name = mdesc->name ? mdesc->name : of_flat_dt_get_machine_name();
> 
> Also you missed around line 242 of kernel/devtree.c which prints
> mdesc_best->name;

You are looking at the wrong version. See the DT clean-up that I did
which is in mainline now. This patch is dependent on that.

> 
>         model = of_get_flat_dt_prop(dt_root, "model", NULL);
>         if (!model)
>                 model = of_get_flat_dt_prop(dt_root, "compatible", NULL);
>         if (!model)
>                 model = "<unknown>";
>         pr_info("Machine: %s, model: %s\n", mdesc_best->name, model);
> 
> Which is now going to say "Machine: , model: Calxeda Foo Board", isn't it?
> 
> Should just use machine_name, if mdesc_best->name isn't set, shouldn't it?
> 
> I think there's a bunch of weirdness here.. I just checked the PAPR
> and ePAPR specs, and the original IEEE1275 and ARM bindings and
> finding board information like you want from the DT is an unholy
> crapshoot.

Maybe in the past, but we require a root compatible string. If there is
no model property, then the compatible string is the machine name.

> In this case I think we need more information, and to only print it
> once per boot if that's the goal here. Why not make machine_name an
> argument to setup_machine_fdt (or just don't have it be static in
> setup.c) and have that function fill in the right thing rather than
> having a DT parsing function in setup_arch where before it was totally
> boot-method agnostic?

Well, that's an implementation detail. First we have to agree on which
string gets used and where.

Rob
Russell King - ARM Linux - Nov. 15, 2013, 7:13 p.m.
On Thu, Nov 14, 2013 at 08:46:14AM -0600, Rob Herring wrote:
> We probably have at least a dozen machine_desc's we are close to being
> able to remove (sunxi, picoxcell, highbank, dove, rockchip, virt,
> several sh-mobile). There's also more that probably can be combined
> together which will change the string in /proc/cpuinfo.

I hope not (for dove) because it's one of the few ARM platforms I have
here which run a "modern" distribution.  That's rather important,
because I seem to find things that no one else finds, not even Olof's
wonderful build system when running against distro stuff.

It also means that work on sorting out the componentising of DRM stuff
loses a test platform.

Yes, I boot non-DT kernels on the Cubox because its the only way to get
full support there.  Yes, I maintain a separate kernel tree for doing
this but removing non-DT support for Dove will cripple my efforts to
keep that up to date, and continue pushing forward on getting the various
drivers into shape.

However, maybe the whole point _is_ to keep all the fun stuff on these
platforms out of the kernel tree...
Rob Herring - Nov. 15, 2013, 8:16 p.m.
On Fri, Nov 15, 2013 at 1:13 PM, Russell King - ARM Linux
<linux@arm.linux.org.uk> wrote:
> On Thu, Nov 14, 2013 at 08:46:14AM -0600, Rob Herring wrote:
>> We probably have at least a dozen machine_desc's we are close to being
>> able to remove (sunxi, picoxcell, highbank, dove, rockchip, virt,
>> several sh-mobile). There's also more that probably can be combined
>> together which will change the string in /proc/cpuinfo.
>
> I hope not (for dove) because it's one of the few ARM platforms I have
> here which run a "modern" distribution.  That's rather important,
> because I seem to find things that no one else finds, not even Olof's
> wonderful build system when running against distro stuff.
>
> It also means that work on sorting out the componentising of DRM stuff
> loses a test platform.
>
> Yes, I boot non-DT kernels on the Cubox because its the only way to get
> full support there.  Yes, I maintain a separate kernel tree for doing
> this but removing non-DT support for Dove will cripple my efforts to
> keep that up to date, and continue pushing forward on getting the various
> drivers into shape.
>
> However, maybe the whole point _is_ to keep all the fun stuff on these
> platforms out of the kernel tree...

I was referring only to DT enabled machine_desc's. I don't think we'll
touch non-DT machine_desc's. An example is combining several per SoC
DT based machine_desc's into a single SoC family machine_desc.
Ideally, we'd get rid of the machine_desc altogether, but that may not
be possible.

Rob
Arnd Bergmann - Nov. 15, 2013, 9:05 p.m.
On Friday 15 November 2013, Rob Herring wrote:
> I was referring only to DT enabled machine_desc's. I don't think we'll
> touch non-DT machine_desc's. An example is combining several per SoC
> DT based machine_desc's into a single SoC family machine_desc.
> Ideally, we'd get rid of the machine_desc altogether, but that may not
> be possible.

Right. We may be able to make some fields of the machine_desc
#ifdef CONFIG_ATAGS at some point, but I think we will have legacy
platforms needing machine_desc callbacks for a very long time.

A different question is what to do about new hardware support.
I'm somewhat optimistic that at some point we can mandate that
new machines should no longer require a machine_desc, just
as we already require for ARM64.

	Arnd
Grant Likely - Nov. 18, 2013, 12:59 p.m.
On Thu, 14 Nov 2013 17:17:55 -0600, Rob Herring <robherring2@gmail.com> wrote:
> On 11/14/2013 11:16 AM, Grant Likely wrote:
> > On Thu, Nov 14, 2013 at 11:46 PM, Rob Herring <robherring2@gmail.com> wrote:
> >> On 11/14/2013 07:33 AM, Grant Likely wrote:
> >>> On Thu, Nov 14, 2013 at 9:32 PM, Arnd Bergmann <arnd@arndb.de> wrote:
> >>>> On Wednesday 13 November 2013, Rob Herring wrote:
> >>>>> I'm not inclined to expand cpuinfo and prior attempts to add more info
> >>>>> to cpuinfo like SoC name have failed. The differences between x86 and
> >>>>> arm cpuinfo already cause issues for arm. lscpu does not really work on arm.
> >>>>
> >>>> Well, they turned into drivers/base/soc.c, which adds the information in
> >>>> a structured way in sysfs, but is only used on a couple of platforms.
> >>>>
> >>>>> I'd actually prefer If you really want more system info, then go read
> >>>>> /proc/device-tree.
> >>>
> >>> I really don't mind pulling that information out of /proc/cpuinfo. My
> >>> point is merely that it is incredibly useful to be able to easily find
> >>> out exactly which machine_desc got chosen on any given platform. I
> >>> don't think I should have to grep the source tree to figure that out.
> >>>
> >>> The kernel log is useful, but it is also helpful to have it in a /proc
> >>> or /sysfs file for when the kernel log overflows. /proc/device-tree
> >>> doesn't give that information.
> >>
> >> Either we want to shrink/remove machine_desc or we don't. If we do, then
> >> the name has to go at some point. So what is the reason to remove it
> >> later rather than sooner? Later means we will have "Generic DT based
> >> system" in cpuinfo as platforms transition. Perhaps that is useful to
> >> know in the short term, but once all platforms print the same thing the
> >> information becomes useless. Then we either remove Hardware field from
> >> cpuinfo or change to use DT info. That's changing the string twice
> >> rather than once.
> >>
> >> We probably have at least a dozen machine_desc's we are close to being
> >> able to remove (sunxi, picoxcell, highbank, dove, rockchip, virt,
> >> several sh-mobile). There's also more that probably can be combined
> >> together which will change the string in /proc/cpuinfo.
> >>
> >> If this is a required feature then we should make machine_desc common
> >> (or at least part of it) with the other arches that have copied arm and
> >> then add it to arm64 as well. Then I could do further consolidation of
> >> the FDT machine matching code. Otherwise this is all just pointless
> >> architecture variation that really has nothing to do with the architecture.
> > 
> > I think you are missing my point. go ahead, take it out of
> > /proc/cpuinfo. That's not the issue.
> 
> I understand what you want. I just don't see a solution that satisfies
> you, Olof, and me. I don't see an easy way to add both strings in a way
> that is not an ABI, but yet is persistently available. I'm not sure I
> understand a scenario where you boot successfully enough to read
> /proc/cpuinfo, /sys or something, but cannot get the kernel log.

Okay, I'm being selfish. When the kernel output overflows the log buf
then I don't get the machine_desc structure. I won't make a big fuss
about this if it causes a lot of pain. As long as it shows up in the
boot log then I'm happy.

g.
Russell King - ARM Linux - Nov. 18, 2013, 1:54 p.m.
On Fri, Nov 15, 2013 at 02:16:29AM +0900, Grant Likely wrote:
> On Thu, Nov 14, 2013 at 11:46 PM, Rob Herring <robherring2@gmail.com> wrote:
> > If this is a required feature then we should make machine_desc common
> > (or at least part of it) with the other arches that have copied arm and
> > then add it to arm64 as well. Then I could do further consolidation of
> > the FDT machine matching code. Otherwise this is all just pointless
> > architecture variation that really has nothing to do with the architecture.
> 
> I think you are missing my point. go ahead, take it out of
> /proc/cpuinfo. That's not the issue.

You do realise this is a user API issue, right?

http://fossies.org/dox/glibc-2.18/ports_2sysdeps_2unix_2sysv_2linux_2arm_2ioperm_8c_source.html

Right, it only has four strings which it matches against, but this is
evidence that /proc/cpuinfo is a user API, and the strings therein are
used by userspace in ways you don't expect.

We can't just go around removing things.
Grant Likely - Nov. 19, 2013, 1:43 p.m.
On Mon, Nov 18, 2013 at 1:54 PM, Russell King - ARM Linux
<linux@arm.linux.org.uk> wrote:
> On Fri, Nov 15, 2013 at 02:16:29AM +0900, Grant Likely wrote:
>> On Thu, Nov 14, 2013 at 11:46 PM, Rob Herring <robherring2@gmail.com> wrote:
>> > If this is a required feature then we should make machine_desc common
>> > (or at least part of it) with the other arches that have copied arm and
>> > then add it to arm64 as well. Then I could do further consolidation of
>> > the FDT machine matching code. Otherwise this is all just pointless
>> > architecture variation that really has nothing to do with the architecture.
>>
>> I think you are missing my point. go ahead, take it out of
>> /proc/cpuinfo. That's not the issue.
>
> You do realise this is a user API issue, right?
>
> http://fossies.org/dox/glibc-2.18/ports_2sysdeps_2unix_2sysv_2linux_2arm_2ioperm_8c_source.html
>
> Right, it only has four strings which it matches against, but this is
> evidence that /proc/cpuinfo is a user API, and the strings therein are
> used by userspace in ways you don't expect.
>
> We can't just go around removing things.

Not everything we end up exporting ends up being an ABI. If nobody
uses it (or complains when we remove it in the obscure cases) then
there is no problem :-)

You're absolutely right here though. I strongly doubt the string
matters for the DT platforms, but you're right that it should not be
changed for the old board support.

g.
Rob Herring - Nov. 21, 2013, 11:53 p.m.
On Mon, Nov 18, 2013 at 7:54 AM, Russell King - ARM Linux
<linux@arm.linux.org.uk> wrote:
> On Fri, Nov 15, 2013 at 02:16:29AM +0900, Grant Likely wrote:
>> On Thu, Nov 14, 2013 at 11:46 PM, Rob Herring <robherring2@gmail.com> wrote:
>> > If this is a required feature then we should make machine_desc common
>> > (or at least part of it) with the other arches that have copied arm and
>> > then add it to arm64 as well. Then I could do further consolidation of
>> > the FDT machine matching code. Otherwise this is all just pointless
>> > architecture variation that really has nothing to do with the architecture.
>>
>> I think you are missing my point. go ahead, take it out of
>> /proc/cpuinfo. That's not the issue.
>
> You do realise this is a user API issue, right?
>
> http://fossies.org/dox/glibc-2.18/ports_2sysdeps_2unix_2sysv_2linux_2arm_2ioperm_8c_source.html
>
> Right, it only has four strings which it matches against, but this is
> evidence that /proc/cpuinfo is a user API, and the strings therein are
> used by userspace in ways you don't expect.
>
> We can't just go around removing things.

I mentioned the string changes in the commit message. If we take the
hard line here, then we can never change these strings and are stuck
with them forever. And in turn, we can never consolidate several board
machine_descs into an SoC machine_desc. However, in the DT case we've
already been changing this string as platforms have been converted to
DT and I don't think anyone has complained. I think we should fix this
sooner rather than later as more DT platforms become entrenched.

Stepping back, where should this information come from in the DT case?
This is an easy thing to have in the DT and not in the kernel. It
seems like a no-brainer to me. Or perhaps we say the Hardware field is
deprecated and remove it on DT? It is already available in
/proc/device-tree.

Rob

Patch

diff --git a/arch/arm/include/asm/mach/arch.h b/arch/arm/include/asm/mach/arch.h
index 402a2bc..3c82227 100644
--- a/arch/arm/include/asm/mach/arch.h
+++ b/arch/arm/include/asm/mach/arch.h
@@ -88,11 +88,10 @@  static const struct machine_desc __mach_desc_##_type	\
 #define MACHINE_END				\
 };
 
-#define DT_MACHINE_START(_name, _namestr)		\
+#define DT_MACHINE_START(_name)		\
 static const struct machine_desc __mach_desc_##_name	\
  __used							\
  __attribute__((__section__(".arch.info.init"))) = {	\
 	.nr		= ~0,				\
-	.name		= _namestr,
 
 #endif
diff --git a/arch/arm/kernel/devtree.c b/arch/arm/kernel/devtree.c
index 739c3df..46e3aff 100644
--- a/arch/arm/kernel/devtree.c
+++ b/arch/arm/kernel/devtree.c
@@ -199,7 +199,7 @@  const struct machine_desc * __init setup_machine_fdt(unsigned int dt_phys)
 	const struct machine_desc *mdesc, *mdesc_best = NULL;
 
 #ifdef CONFIG_ARCH_MULTIPLATFORM
-	DT_MACHINE_START(GENERIC_DT, "Generic DT based system")
+	DT_MACHINE_START(GENERIC_DT)
 	MACHINE_END
 
 	mdesc_best = &__mach_desc_GENERIC_DT;
diff --git a/arch/arm/kernel/setup.c b/arch/arm/kernel/setup.c
index 0e1e2b3..b0747bb 100644
--- a/arch/arm/kernel/setup.c
+++ b/arch/arm/kernel/setup.c
@@ -611,7 +611,7 @@  void __init dump_machine_table(void)
 
 	early_print("Available machine support:\n\nID (hex)\tNAME\n");
 	for_each_machine_desc(p)
-		early_print("%08x\t%s\n", p->nr, p->name);
+		early_print("%08x\t%s\n", p->nr, p->name ? p->name : *p->dt_compat);
 
 	early_print("\nPlease check your kernel config and/or bootloader.\n");
 
@@ -859,7 +859,7 @@  void __init setup_arch(char **cmdline_p)
 	if (!mdesc)
 		mdesc = setup_machine_tags(__atags_pointer, __machine_arch_type);
 	machine_desc = mdesc;
-	machine_name = mdesc->name;
+	machine_name = mdesc->name ? mdesc->name : of_flat_dt_get_machine_name();
 
 	setup_dma_zone(mdesc);
 
diff --git a/arch/arm/mach-at91/board-dt-rm9200.c b/arch/arm/mach-at91/board-dt-rm9200.c
index 3a185fa..afe079e 100644
--- a/arch/arm/mach-at91/board-dt-rm9200.c
+++ b/arch/arm/mach-at91/board-dt-rm9200.c
@@ -40,7 +40,7 @@  static const char *at91rm9200_dt_board_compat[] __initdata = {
 	NULL
 };
 
-DT_MACHINE_START(at91rm9200_dt, "Atmel AT91RM9200 (Device Tree)")
+DT_MACHINE_START(at91rm9200_dt)
 	.init_time      = at91rm9200_timer_init,
 	.map_io		= at91_map_io,
 	.handle_irq	= at91_aic_handle_irq,
diff --git a/arch/arm/mach-at91/board-dt-sam9.c b/arch/arm/mach-at91/board-dt-sam9.c
index 3dab868..0465a74 100644
--- a/arch/arm/mach-at91/board-dt-sam9.c
+++ b/arch/arm/mach-at91/board-dt-sam9.c
@@ -41,7 +41,7 @@  static const char *at91_dt_board_compat[] __initdata = {
 	NULL
 };
 
-DT_MACHINE_START(at91sam_dt, "Atmel AT91SAM (Device Tree)")
+DT_MACHINE_START(at91sam_dt)
 	/* Maintainer: Atmel */
 	.init_time	= at91sam926x_pit_init,
 	.map_io		= at91_map_io,
diff --git a/arch/arm/mach-at91/board-dt-sama5.c b/arch/arm/mach-at91/board-dt-sama5.c
index bf00d15..2e2699d 100644
--- a/arch/arm/mach-at91/board-dt-sama5.c
+++ b/arch/arm/mach-at91/board-dt-sama5.c
@@ -70,7 +70,7 @@  static const char *sama5_dt_board_compat[] __initdata = {
 	NULL
 };
 
-DT_MACHINE_START(sama5_dt, "Atmel SAMA5 (Device Tree)")
+DT_MACHINE_START(sama5_dt)
 	/* Maintainer: Atmel */
 	.init_time	= at91sam926x_pit_init,
 	.map_io		= at91_map_io,
diff --git a/arch/arm/mach-bcm/board_bcm281xx.c b/arch/arm/mach-bcm/board_bcm281xx.c
index cb3dc36..5b59e8a 100644
--- a/arch/arm/mach-bcm/board_bcm281xx.c
+++ b/arch/arm/mach-bcm/board_bcm281xx.c
@@ -67,7 +67,7 @@  static void __init board_init(void)
 
 static const char * const bcm11351_dt_compat[] = { "brcm,bcm11351", NULL, };
 
-DT_MACHINE_START(BCM11351_DT, "BCM281xx Broadcom Application Processor")
+DT_MACHINE_START(BCM11351_DT)
 	.init_machine = board_init,
 	.restart = bcm_kona_restart,
 	.dt_compat = bcm11351_dt_compat,
diff --git a/arch/arm/mach-bcm2835/bcm2835.c b/arch/arm/mach-bcm2835/bcm2835.c
index d50135b..a810e61 100644
--- a/arch/arm/mach-bcm2835/bcm2835.c
+++ b/arch/arm/mach-bcm2835/bcm2835.c
@@ -128,7 +128,7 @@  static const char * const bcm2835_compat[] = {
 	NULL
 };
 
-DT_MACHINE_START(BCM2835, "BCM2835")
+DT_MACHINE_START(BCM2835)
 	.map_io = bcm2835_map_io,
 	.init_irq = bcm2835_init_irq,
 	.handle_irq = bcm2835_handle_irq,
diff --git a/arch/arm/mach-cns3xxx/core.c b/arch/arm/mach-cns3xxx/core.c
index e38b279..8bf66ac 100644
--- a/arch/arm/mach-cns3xxx/core.c
+++ b/arch/arm/mach-cns3xxx/core.c
@@ -366,7 +366,7 @@  static const char *cns3xxx_dt_compat[] __initdata = {
 	NULL,
 };
 
-DT_MACHINE_START(CNS3XXX_DT, "Cavium Networks CNS3xxx")
+DT_MACHINE_START(CNS3XXX_DT)
 	.dt_compat	= cns3xxx_dt_compat,
 	.nr_irqs	= NR_IRQS_CNS3XXX,
 	.map_io		= cns3xxx_map_io,
diff --git a/arch/arm/mach-davinci/da8xx-dt.c b/arch/arm/mach-davinci/da8xx-dt.c
index d2bc574..974afaf 100644
--- a/arch/arm/mach-davinci/da8xx-dt.c
+++ b/arch/arm/mach-davinci/da8xx-dt.c
@@ -65,7 +65,7 @@  static const char *da850_boards_compat[] __initdata = {
 	NULL,
 };
 
-DT_MACHINE_START(DA850_DT, "Generic DA850/OMAP-L138/AM18x")
+DT_MACHINE_START(DA850_DT)
 	.map_io		= da850_init,
 	.init_irq	= da8xx_init_irq,
 	.init_time	= davinci_timer_init,
diff --git a/arch/arm/mach-dove/board-dt.c b/arch/arm/mach-dove/board-dt.c
index 49fa9ab..4797e5b 100644
--- a/arch/arm/mach-dove/board-dt.c
+++ b/arch/arm/mach-dove/board-dt.c
@@ -35,7 +35,7 @@  static const char * const dove_dt_board_compat[] = {
 	NULL
 };
 
-DT_MACHINE_START(DOVE_DT, "Marvell Dove (Flattened Device Tree)")
+DT_MACHINE_START(DOVE_DT)
 	.map_io		= dove_map_io,
 	.init_machine	= dove_dt_init,
 	.restart	= dove_restart,
diff --git a/arch/arm/mach-exynos/mach-exynos4-dt.c b/arch/arm/mach-exynos/mach-exynos4-dt.c
index 4b8f6e2..44d0b23 100644
--- a/arch/arm/mach-exynos/mach-exynos4-dt.c
+++ b/arch/arm/mach-exynos/mach-exynos4-dt.c
@@ -43,7 +43,7 @@  static void __init exynos4_reserve(void)
 				mfc_mem.lsize);
 #endif
 }
-DT_MACHINE_START(EXYNOS4210_DT, "Samsung Exynos4 (Flattened Device Tree)")
+DT_MACHINE_START(EXYNOS4210_DT)
 	/* Maintainer: Thomas Abraham <thomas.abraham@linaro.org> */
 	.smp		= smp_ops(exynos_smp_ops),
 	.map_io		= exynos_init_io,
diff --git a/arch/arm/mach-exynos/mach-exynos5-dt.c b/arch/arm/mach-exynos/mach-exynos5-dt.c
index 7976ab3..d2ba907 100644
--- a/arch/arm/mach-exynos/mach-exynos5-dt.c
+++ b/arch/arm/mach-exynos/mach-exynos5-dt.c
@@ -66,7 +66,7 @@  static void __init exynos5_reserve(void)
 #endif
 }
 
-DT_MACHINE_START(EXYNOS5_DT, "SAMSUNG EXYNOS5 (Flattened Device Tree)")
+DT_MACHINE_START(EXYNOS5_DT)
 	/* Maintainer: Kukjin Kim <kgene.kim@samsung.com> */
 	.smp		= smp_ops(exynos_smp_ops),
 	.map_io		= exynos_init_io,
diff --git a/arch/arm/mach-highbank/highbank.c b/arch/arm/mach-highbank/highbank.c
index b3d7e56..f0a26bb 100644
--- a/arch/arm/mach-highbank/highbank.c
+++ b/arch/arm/mach-highbank/highbank.c
@@ -157,7 +157,7 @@  static const char *highbank_match[] __initconst = {
 	NULL,
 };
 
-DT_MACHINE_START(HIGHBANK, "Highbank")
+DT_MACHINE_START(HIGHBANK)
 #if defined(CONFIG_ZONE_DMA) && defined(CONFIG_ARM_LPAE)
 	.dma_zone_size	= (4ULL * SZ_1G),
 #endif
diff --git a/arch/arm/mach-imx/imx25-dt.c b/arch/arm/mach-imx/imx25-dt.c
index 3e1ec5f..25401d9 100644
--- a/arch/arm/mach-imx/imx25-dt.c
+++ b/arch/arm/mach-imx/imx25-dt.c
@@ -34,7 +34,7 @@  static void __init imx25_timer_init(void)
 	mx25_clocks_init_dt();
 }
 
-DT_MACHINE_START(IMX25_DT, "Freescale i.MX25 (Device Tree Support)")
+DT_MACHINE_START(IMX25_DT)
 	.map_io		= mx25_map_io,
 	.init_early	= imx25_init_early,
 	.init_irq	= mx25_init_irq,
diff --git a/arch/arm/mach-imx/imx27-dt.c b/arch/arm/mach-imx/imx27-dt.c
index 4e235ec..3d35369 100644
--- a/arch/arm/mach-imx/imx27-dt.c
+++ b/arch/arm/mach-imx/imx27-dt.c
@@ -39,7 +39,7 @@  static void __init imx27_timer_init(void)
 	mx27_clocks_init_dt();
 }
 
-DT_MACHINE_START(IMX27_DT, "Freescale i.MX27 (Device Tree Support)")
+DT_MACHINE_START(IMX27_DT)
 	.map_io		= mx27_map_io,
 	.init_early	= imx27_init_early,
 	.init_irq	= mx27_init_irq,
diff --git a/arch/arm/mach-imx/imx31-dt.c b/arch/arm/mach-imx/imx31-dt.c
index 818a1cc..6c60dfa 100644
--- a/arch/arm/mach-imx/imx31-dt.c
+++ b/arch/arm/mach-imx/imx31-dt.c
@@ -35,7 +35,7 @@  static void __init imx31_dt_timer_init(void)
 	mx31_clocks_init_dt();
 }
 
-DT_MACHINE_START(IMX31_DT, "Freescale i.MX31 (Device Tree Support)")
+DT_MACHINE_START(IMX31_DT)
 	.map_io		= mx31_map_io,
 	.init_early	= imx31_init_early,
 	.init_irq	= mx31_init_irq,
diff --git a/arch/arm/mach-imx/imx51-dt.c b/arch/arm/mach-imx/imx51-dt.c
index bece8a6..0c4f758 100644
--- a/arch/arm/mach-imx/imx51-dt.c
+++ b/arch/arm/mach-imx/imx51-dt.c
@@ -34,7 +34,7 @@  static const char *imx51_dt_board_compat[] __initdata = {
 	NULL
 };
 
-DT_MACHINE_START(IMX51_DT, "Freescale i.MX51 (Device Tree Support)")
+DT_MACHINE_START(IMX51_DT)
 	.map_io		= mx51_map_io,
 	.init_early	= imx51_init_early,
 	.init_irq	= mx51_init_irq,
diff --git a/arch/arm/mach-imx/mach-imx53.c b/arch/arm/mach-imx/mach-imx53.c
index c9c4d8d..ba3d370 100644
--- a/arch/arm/mach-imx/mach-imx53.c
+++ b/arch/arm/mach-imx/mach-imx53.c
@@ -36,7 +36,7 @@  static const char *imx53_dt_board_compat[] __initdata = {
 	NULL
 };
 
-DT_MACHINE_START(IMX53_DT, "Freescale i.MX53 (Device Tree Support)")
+DT_MACHINE_START(IMX53_DT)
 	.map_io		= mx53_map_io,
 	.init_early	= imx53_init_early,
 	.init_irq	= mx53_init_irq,
diff --git a/arch/arm/mach-imx/mach-imx6q.c b/arch/arm/mach-imx/mach-imx6q.c
index 0f9f241..4c38229 100644
--- a/arch/arm/mach-imx/mach-imx6q.c
+++ b/arch/arm/mach-imx/mach-imx6q.c
@@ -249,7 +249,7 @@  static const char *imx6q_dt_compat[] __initdata = {
 	NULL,
 };
 
-DT_MACHINE_START(IMX6Q, "Freescale i.MX6 Quad/DualLite (Device Tree)")
+DT_MACHINE_START(IMX6Q)
 	.smp		= smp_ops(imx_smp_ops),
 	.map_io		= imx6q_map_io,
 	.init_irq	= imx6q_init_irq,
diff --git a/arch/arm/mach-imx/mach-imx6sl.c b/arch/arm/mach-imx/mach-imx6sl.c
index 2f952e3..0391857 100644
--- a/arch/arm/mach-imx/mach-imx6sl.c
+++ b/arch/arm/mach-imx/mach-imx6sl.c
@@ -66,7 +66,7 @@  static const char *imx6sl_dt_compat[] __initdata = {
 	NULL,
 };
 
-DT_MACHINE_START(IMX6SL, "Freescale i.MX6 SoloLite (Device Tree)")
+DT_MACHINE_START(IMX6SL)
 	.map_io		= debug_ll_io_init,
 	.init_irq	= imx6sl_init_irq,
 	.init_machine	= imx6sl_init_machine,
diff --git a/arch/arm/mach-imx/mach-vf610.c b/arch/arm/mach-imx/mach-vf610.c
index af0cb8a..646f412 100644
--- a/arch/arm/mach-imx/mach-vf610.c
+++ b/arch/arm/mach-imx/mach-vf610.c
@@ -31,7 +31,7 @@  static const char *vf610_dt_compat[] __initdata = {
 	NULL,
 };
 
-DT_MACHINE_START(VYBRID_VF610, "Freescale Vybrid VF610 (Device Tree)")
+DT_MACHINE_START(VYBRID_VF610)
 	.init_irq	= vf610_init_irq,
 	.init_machine   = vf610_init_machine,
 	.dt_compat	= vf610_dt_compat,
diff --git a/arch/arm/mach-integrator/integrator_ap.c b/arch/arm/mach-integrator/integrator_ap.c
index d50dc2d..5cb38c5 100644
--- a/arch/arm/mach-integrator/integrator_ap.c
+++ b/arch/arm/mach-integrator/integrator_ap.c
@@ -556,7 +556,7 @@  static const char * ap_dt_board_compat[] = {
 	NULL,
 };
 
-DT_MACHINE_START(INTEGRATOR_AP_DT, "ARM Integrator/AP (Device Tree)")
+DT_MACHINE_START(INTEGRATOR_AP_DT)
 	.reserve	= integrator_reserve,
 	.map_io		= ap_map_io,
 	.init_early	= ap_init_early,
diff --git a/arch/arm/mach-integrator/integrator_cp.c b/arch/arm/mach-integrator/integrator_cp.c
index 1df6e76..04d8609 100644
--- a/arch/arm/mach-integrator/integrator_cp.c
+++ b/arch/arm/mach-integrator/integrator_cp.c
@@ -349,7 +349,7 @@  static const char * intcp_dt_board_compat[] = {
 	NULL,
 };
 
-DT_MACHINE_START(INTEGRATOR_CP_DT, "ARM Integrator/CP (Device Tree)")
+DT_MACHINE_START(INTEGRATOR_CP_DT)
 	.reserve	= integrator_reserve,
 	.map_io		= intcp_map_io,
 	.init_early	= intcp_init_early,
diff --git a/arch/arm/mach-keystone/keystone.c b/arch/arm/mach-keystone/keystone.c
index b661c5c..a22b3e6 100644
--- a/arch/arm/mach-keystone/keystone.c
+++ b/arch/arm/mach-keystone/keystone.c
@@ -67,7 +67,7 @@  void keystone_restart(enum reboot_mode mode, const char *cmd)
 	writel(val, keystone_rstctrl);
 }
 
-DT_MACHINE_START(KEYSTONE, "Keystone")
+DT_MACHINE_START(KEYSTONE)
 	.smp		= smp_ops(keystone_smp_ops),
 	.init_machine	= keystone_init,
 	.dt_compat	= keystone_match,
diff --git a/arch/arm/mach-kirkwood/board-dt.c b/arch/arm/mach-kirkwood/board-dt.c
index 9caa4fe..a3a098b 100644
--- a/arch/arm/mach-kirkwood/board-dt.c
+++ b/arch/arm/mach-kirkwood/board-dt.c
@@ -177,7 +177,7 @@  static const char * const kirkwood_dt_board_compat[] = {
 	NULL
 };
 
-DT_MACHINE_START(KIRKWOOD_DT, "Marvell Kirkwood (Flattened Device Tree)")
+DT_MACHINE_START(KIRKWOOD_DT)
 	/* Maintainer: Jason Cooper <jason@lakedaemon.net> */
 	.map_io		= kirkwood_map_io,
 	.init_machine	= kirkwood_dt_init,
diff --git a/arch/arm/mach-lpc32xx/phy3250.c b/arch/arm/mach-lpc32xx/phy3250.c
index e54f87e..b5e58f7 100644
--- a/arch/arm/mach-lpc32xx/phy3250.c
+++ b/arch/arm/mach-lpc32xx/phy3250.c
@@ -259,7 +259,7 @@  static char const *lpc32xx_dt_compat[] __initdata = {
 	NULL
 };
 
-DT_MACHINE_START(LPC32XX_DT, "LPC32XX SoC (Flattened Device Tree)")
+DT_MACHINE_START(LPC32XX_DT)
 	.atag_offset	= 0x100,
 	.map_io		= lpc32xx_map_io,
 	.init_irq	= lpc32xx_init_irq,
diff --git a/arch/arm/mach-mmp/mmp-dt.c b/arch/arm/mach-mmp/mmp-dt.c
index cca529c..f528529 100644
--- a/arch/arm/mach-mmp/mmp-dt.c
+++ b/arch/arm/mach-mmp/mmp-dt.c
@@ -58,14 +58,14 @@  static const char *mmp_dt_board_compat[] __initdata = {
 	NULL,
 };
 
-DT_MACHINE_START(PXA168_DT, "Marvell PXA168 (Device Tree Support)")
+DT_MACHINE_START(PXA168_DT)
 	.map_io		= mmp_map_io,
 	.init_time	= mmp_dt_init_timer,
 	.init_machine	= pxa168_dt_init,
 	.dt_compat	= mmp_dt_board_compat,
 MACHINE_END
 
-DT_MACHINE_START(PXA910_DT, "Marvell PXA910 (Device Tree Support)")
+DT_MACHINE_START(PXA910_DT)
 	.map_io		= mmp_map_io,
 	.init_time	= mmp_dt_init_timer,
 	.init_machine	= pxa910_dt_init,
diff --git a/arch/arm/mach-mmp/mmp2-dt.c b/arch/arm/mach-mmp/mmp2-dt.c
index 023cb45..6bb0144 100644
--- a/arch/arm/mach-mmp/mmp2-dt.c
+++ b/arch/arm/mach-mmp/mmp2-dt.c
@@ -42,7 +42,7 @@  static const char *mmp2_dt_board_compat[] __initdata = {
 	NULL,
 };
 
-DT_MACHINE_START(MMP2_DT, "Marvell MMP2 (Device Tree Support)")
+DT_MACHINE_START(MMP2_DT)
 	.map_io		= mmp_map_io,
 	.init_time	= mmp_dt_init_timer,
 	.init_machine	= mmp2_dt_init,
diff --git a/arch/arm/mach-msm/board-dt.c b/arch/arm/mach-msm/board-dt.c
index 16e6183..bb6caf5 100644
--- a/arch/arm/mach-msm/board-dt.c
+++ b/arch/arm/mach-msm/board-dt.c
@@ -26,7 +26,7 @@  static const char * const msm_dt_match[] __initconst = {
 	NULL
 };
 
-DT_MACHINE_START(MSM_DT, "Qualcomm MSM (Flattened Device Tree)")
+DT_MACHINE_START(MSM_DT)
 	.smp = smp_ops(msm_smp_ops),
 	.dt_compat = msm_dt_match,
 MACHINE_END
diff --git a/arch/arm/mach-mvebu/armada-370-xp.c b/arch/arm/mach-mvebu/armada-370-xp.c
index e2acff9..168a963 100644
--- a/arch/arm/mach-mvebu/armada-370-xp.c
+++ b/arch/arm/mach-mvebu/armada-370-xp.c
@@ -55,7 +55,7 @@  static const char * const armada_370_xp_dt_compat[] = {
 	NULL,
 };
 
-DT_MACHINE_START(ARMADA_XP_DT, "Marvell Armada 370/XP (Device Tree)")
+DT_MACHINE_START(ARMADA_XP_DT)
 	.smp		= smp_ops(armada_xp_smp_ops),
 	.init_machine	= armada_370_xp_dt_init,
 	.map_io		= armada_370_xp_map_io,
diff --git a/arch/arm/mach-mxs/mach-mxs.c b/arch/arm/mach-mxs/mach-mxs.c
index 1dc5acd..26bbc0f 100644
--- a/arch/arm/mach-mxs/mach-mxs.c
+++ b/arch/arm/mach-mxs/mach-mxs.c
@@ -501,7 +501,7 @@  static const char *mxs_dt_compat[] __initdata = {
 	NULL,
 };
 
-DT_MACHINE_START(MXS, "Freescale MXS (Device Tree)")
+DT_MACHINE_START(MXS)
 	.handle_irq	= icoll_handle_irq,
 	.init_machine	= mxs_machine_init,
 	.init_late      = mxs_pm_init,
diff --git a/arch/arm/mach-nomadik/cpu-8815.c b/arch/arm/mach-nomadik/cpu-8815.c
index cce2c9d..4ab4f0e 100644
--- a/arch/arm/mach-nomadik/cpu-8815.c
+++ b/arch/arm/mach-nomadik/cpu-8815.c
@@ -189,7 +189,7 @@  static const char * cpu8815_board_compat[] = {
 	NULL,
 };
 
-DT_MACHINE_START(NOMADIK_DT, "Nomadik STn8815")
+DT_MACHINE_START(NOMADIK_DT)
 	.map_io		= cpu8815_map_io,
 	.init_machine	= cpu8815_init_of,
 	.restart	= cpu8815_restart,
diff --git a/arch/arm/mach-nspire/nspire.c b/arch/arm/mach-nspire/nspire.c
index 4b2ed2e..26bceb9 100644
--- a/arch/arm/mach-nspire/nspire.c
+++ b/arch/arm/mach-nspire/nspire.c
@@ -72,7 +72,7 @@  static void nspire_restart(char mode, const char *cmd)
 	writel(2, base + NSPIRE_MISC_HWRESET);
 }
 
-DT_MACHINE_START(NSPIRE, "TI-NSPIRE")
+DT_MACHINE_START(NSPIRE)
 	.dt_compat	= nspire_dt_match,
 	.map_io		= nspire_map_io,
 	.init_machine	= nspire_init,
diff --git a/arch/arm/mach-omap2/board-generic.c b/arch/arm/mach-omap2/board-generic.c
index 19f1652..89d5bdd 100644
--- a/arch/arm/mach-omap2/board-generic.c
+++ b/arch/arm/mach-omap2/board-generic.c
@@ -44,7 +44,7 @@  static const char *omap242x_boards_compat[] __initdata = {
 	NULL,
 };
 
-DT_MACHINE_START(OMAP242X_DT, "Generic OMAP2420 (Flattened Device Tree)")
+DT_MACHINE_START(OMAP242X_DT)
 	.reserve	= omap_reserve,
 	.map_io		= omap242x_map_io,
 	.init_early	= omap2420_init_early,
@@ -63,7 +63,7 @@  static const char *omap243x_boards_compat[] __initdata = {
 	NULL,
 };
 
-DT_MACHINE_START(OMAP243X_DT, "Generic OMAP2430 (Flattened Device Tree)")
+DT_MACHINE_START(OMAP243X_DT)
 	.reserve	= omap_reserve,
 	.map_io		= omap243x_map_io,
 	.init_early	= omap2430_init_early,
@@ -82,7 +82,7 @@  static const char *omap3_boards_compat[] __initdata = {
 	NULL,
 };
 
-DT_MACHINE_START(OMAP3_DT, "Generic OMAP3 (Flattened Device Tree)")
+DT_MACHINE_START(OMAP3_DT)
 	.reserve	= omap_reserve,
 	.map_io		= omap3_map_io,
 	.init_early	= omap3430_init_early,
@@ -100,7 +100,7 @@  static const char *omap36xx_boards_compat[] __initdata = {
 	NULL,
 };
 
-DT_MACHINE_START(OMAP36XX_DT, "Generic OMAP36xx (Flattened Device Tree)")
+DT_MACHINE_START(OMAP36XX_DT)
 	.reserve	= omap_reserve,
 	.map_io		= omap3_map_io,
 	.init_early	= omap3630_init_early,
@@ -119,7 +119,7 @@  static const char *omap3_gp_boards_compat[] __initdata = {
 	NULL,
 };
 
-DT_MACHINE_START(OMAP3_GP_DT, "Generic OMAP3-GP (Flattened Device Tree)")
+DT_MACHINE_START(OMAP3_GP_DT)
 	.reserve	= omap_reserve,
 	.map_io		= omap3_map_io,
 	.init_early	= omap3430_init_early,
@@ -139,7 +139,7 @@  static const char *am33xx_boards_compat[] __initdata = {
 	NULL,
 };
 
-DT_MACHINE_START(AM33XX_DT, "Generic AM33XX (Flattened Device Tree)")
+DT_MACHINE_START(AM33XX_DT)
 	.reserve	= omap_reserve,
 	.map_io		= am33xx_map_io,
 	.init_early	= am33xx_init_early,
@@ -159,7 +159,7 @@  static const char *omap4_boards_compat[] __initdata = {
 	NULL,
 };
 
-DT_MACHINE_START(OMAP4_DT, "Generic OMAP4 (Flattened Device Tree)")
+DT_MACHINE_START(OMAP4_DT)
 	.reserve	= omap_reserve,
 	.smp		= smp_ops(omap4_smp_ops),
 	.map_io		= omap4_map_io,
@@ -179,7 +179,7 @@  static const char *omap5_boards_compat[] __initdata = {
 	NULL,
 };
 
-DT_MACHINE_START(OMAP5_DT, "Generic OMAP5 (Flattened Device Tree)")
+DT_MACHINE_START(OMAP5_DT)
 	.reserve	= omap_reserve,
 	.smp		= smp_ops(omap4_smp_ops),
 	.map_io		= omap5_map_io,
@@ -199,7 +199,7 @@  static const char *am43_boards_compat[] __initdata = {
 	NULL,
 };
 
-DT_MACHINE_START(AM43_DT, "Generic AM43 (Flattened Device Tree)")
+DT_MACHINE_START(AM43_DT)
 	.map_io		= am33xx_map_io,
 	.init_early	= am43xx_init_early,
 	.init_late	= am43xx_init_late,
@@ -216,7 +216,7 @@  static const char *dra7xx_boards_compat[] __initdata = {
 	NULL,
 };
 
-DT_MACHINE_START(DRA7XX_DT, "Generic DRA7XX (Flattened Device Tree)")
+DT_MACHINE_START(DRA7XX_DT)
 	.reserve	= omap_reserve,
 	.smp		= smp_ops(omap4_smp_ops),
 	.map_io		= omap5_map_io,
diff --git a/arch/arm/mach-orion5x/board-dt.c b/arch/arm/mach-orion5x/board-dt.c
index b91002c..ee2d6e9 100644
--- a/arch/arm/mach-orion5x/board-dt.c
+++ b/arch/arm/mach-orion5x/board-dt.c
@@ -68,7 +68,7 @@  static const char *orion5x_dt_compat[] = {
 	NULL,
 };
 
-DT_MACHINE_START(ORION5X_DT, "Marvell Orion5x (Flattened Device Tree)")
+DT_MACHINE_START(ORION5X_DT)
 	/* Maintainer: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> */
 	.map_io		= orion5x_map_io,
 	.init_early	= orion5x_init_early,
diff --git a/arch/arm/mach-picoxcell/common.c b/arch/arm/mach-picoxcell/common.c
index ec79fea..ffe1270 100644
--- a/arch/arm/mach-picoxcell/common.c
+++ b/arch/arm/mach-picoxcell/common.c
@@ -78,7 +78,7 @@  static void picoxcell_wdt_restart(enum reboot_mode mode, const char *cmd)
 	}
 }
 
-DT_MACHINE_START(PICOXCELL, "Picochip picoXcell")
+DT_MACHINE_START(PICOXCELL)
 	.map_io		= picoxcell_map_io,
 	.init_machine	= picoxcell_init_machine,
 	.dt_compat	= picoxcell_dt_match,
diff --git a/arch/arm/mach-prima2/common.c b/arch/arm/mach-prima2/common.c
index d49aff7..2ca30d5 100644
--- a/arch/arm/mach-prima2/common.c
+++ b/arch/arm/mach-prima2/common.c
@@ -32,7 +32,7 @@  static const char *atlas6_dt_match[] __initdata = {
 	NULL
 };
 
-DT_MACHINE_START(ATLAS6_DT, "Generic ATLAS6 (Flattened Device Tree)")
+DT_MACHINE_START(ATLAS6_DT)
 	/* Maintainer: Barry Song <baohua.song@csr.com> */
 	.map_io         = sirfsoc_map_io,
 	.init_late	= sirfsoc_init_late,
@@ -47,7 +47,7 @@  static const char *prima2_dt_match[] __initdata = {
 	NULL
 };
 
-DT_MACHINE_START(PRIMA2_DT, "Generic PRIMA2 (Flattened Device Tree)")
+DT_MACHINE_START(PRIMA2_DT)
 	/* Maintainer: Barry Song <baohua.song@csr.com> */
 	.map_io         = sirfsoc_map_io,
 	.dma_zone_size	= SZ_256M,
@@ -63,7 +63,7 @@  static const char *marco_dt_match[] __initdata = {
 	NULL
 };
 
-DT_MACHINE_START(MARCO_DT, "Generic MARCO (Flattened Device Tree)")
+DT_MACHINE_START(MARCO_DT)
 	/* Maintainer: Barry Song <baohua.song@csr.com> */
 	.smp            = smp_ops(sirfsoc_smp_ops),
 	.map_io         = sirfsoc_map_io,
diff --git a/arch/arm/mach-pxa/pxa-dt.c b/arch/arm/mach-pxa/pxa-dt.c
index f6a2c4b..b7fcb0c 100644
--- a/arch/arm/mach-pxa/pxa-dt.c
+++ b/arch/arm/mach-pxa/pxa-dt.c
@@ -51,7 +51,7 @@  static const char *pxa3xx_dt_board_compat[] __initdata = {
 #endif
 
 #ifdef CONFIG_PXA3xx
-DT_MACHINE_START(PXA_DT, "Marvell PXA3xx (Device Tree Support)")
+DT_MACHINE_START(PXA_DT)
 	.map_io		= pxa3xx_map_io,
 	.init_irq	= pxa3xx_dt_init_irq,
 	.handle_irq	= pxa3xx_handle_irq,
diff --git a/arch/arm/mach-rockchip/rockchip.c b/arch/arm/mach-rockchip/rockchip.c
index 82c0b07..c14c517 100644
--- a/arch/arm/mach-rockchip/rockchip.c
+++ b/arch/arm/mach-rockchip/rockchip.c
@@ -37,7 +37,7 @@  static const char * const rockchip_board_dt_compat[] = {
 	NULL,
 };
 
-DT_MACHINE_START(ROCKCHIP_DT, "Rockchip Cortex-A9 (Device Tree)")
+DT_MACHINE_START(ROCKCHIP_DT)
 	.init_machine	= rockchip_dt_init,
 	.dt_compat	= rockchip_board_dt_compat,
 MACHINE_END
diff --git a/arch/arm/mach-s3c24xx/mach-s3c2416-dt.c b/arch/arm/mach-s3c24xx/mach-s3c2416-dt.c
index f50454a..a6ae5d7 100644
--- a/arch/arm/mach-s3c24xx/mach-s3c2416-dt.c
+++ b/arch/arm/mach-s3c24xx/mach-s3c2416-dt.c
@@ -80,7 +80,7 @@  static char const *s3c2416_dt_compat[] __initdata = {
 	NULL
 };
 
-DT_MACHINE_START(S3C2416_DT, "Samsung S3C2416 (Flattened Device Tree)")
+DT_MACHINE_START(S3C2416_DT)
 	/* Maintainer: Heiko Stuebner <heiko@sntech.de> */
 	.dt_compat	= s3c2416_dt_compat,
 	.map_io		= s3c2416_dt_map_io,
diff --git a/arch/arm/mach-s3c64xx/mach-s3c64xx-dt.c b/arch/arm/mach-s3c64xx/mach-s3c64xx-dt.c
index 7eb9a10..7becf1a 100644
--- a/arch/arm/mach-s3c64xx/mach-s3c64xx-dt.c
+++ b/arch/arm/mach-s3c64xx/mach-s3c64xx-dt.c
@@ -75,7 +75,7 @@  static char const *s3c64xx_dt_compat[] __initdata = {
 	NULL
 };
 
-DT_MACHINE_START(S3C6400_DT, "Samsung S3C64xx (Flattened Device Tree)")
+DT_MACHINE_START(S3C6400_DT)
 	/* Maintainer: Tomasz Figa <tomasz.figa@gmail.com> */
 	.dt_compat	= s3c64xx_dt_compat,
 	.map_io		= s3c64xx_dt_map_io,
diff --git a/arch/arm/mach-shmobile/board-ape6evm-reference.c b/arch/arm/mach-shmobile/board-ape6evm-reference.c
index 3276afc..fffe53c 100644
--- a/arch/arm/mach-shmobile/board-ape6evm-reference.c
+++ b/arch/arm/mach-shmobile/board-ape6evm-reference.c
@@ -56,7 +56,7 @@  static const char *ape6evm_boards_compat_dt[] __initdata = {
 	NULL,
 };
 
-DT_MACHINE_START(APE6EVM_DT, "ape6evm")
+DT_MACHINE_START(APE6EVM_DT)
 	.init_early	= r8a73a4_init_early,
 	.init_machine	= ape6evm_add_standard_devices,
 	.dt_compat	= ape6evm_boards_compat_dt,
diff --git a/arch/arm/mach-shmobile/board-ape6evm.c b/arch/arm/mach-shmobile/board-ape6evm.c
index 0fa068e..a2df979 100644
--- a/arch/arm/mach-shmobile/board-ape6evm.c
+++ b/arch/arm/mach-shmobile/board-ape6evm.c
@@ -280,7 +280,7 @@  static const char *ape6evm_boards_compat_dt[] __initdata = {
 	NULL,
 };
 
-DT_MACHINE_START(APE6EVM_DT, "ape6evm")
+DT_MACHINE_START(APE6EVM_DT)
 	.init_early	= r8a73a4_init_early,
 	.init_machine	= ape6evm_add_standard_devices,
 	.dt_compat	= ape6evm_boards_compat_dt,
diff --git a/arch/arm/mach-shmobile/board-armadillo800eva-reference.c b/arch/arm/mach-shmobile/board-armadillo800eva-reference.c
index 57d1a78..ea3b1e1 100644
--- a/arch/arm/mach-shmobile/board-armadillo800eva-reference.c
+++ b/arch/arm/mach-shmobile/board-armadillo800eva-reference.c
@@ -185,7 +185,7 @@  static const char *eva_boards_compat_dt[] __initdata = {
 	NULL,
 };
 
-DT_MACHINE_START(ARMADILLO800EVA_DT, "armadillo800eva-reference")
+DT_MACHINE_START(ARMADILLO800EVA_DT)
 	.map_io		= r8a7740_map_io,
 	.init_early	= r8a7740_init_delay,
 	.init_irq	= r8a7740_init_irq_of,
diff --git a/arch/arm/mach-shmobile/board-armadillo800eva.c b/arch/arm/mach-shmobile/board-armadillo800eva.c
index 8bc8e4c..e8f1e74 100644
--- a/arch/arm/mach-shmobile/board-armadillo800eva.c
+++ b/arch/arm/mach-shmobile/board-armadillo800eva.c
@@ -1311,7 +1311,7 @@  static const char *eva_boards_compat_dt[] __initdata = {
 	NULL,
 };
 
-DT_MACHINE_START(ARMADILLO800EVA_DT, "armadillo800eva")
+DT_MACHINE_START(ARMADILLO800EVA_DT)
 	.map_io		= r8a7740_map_io,
 	.init_early	= eva_add_early_devices,
 	.init_irq	= r8a7740_init_irq_of,
diff --git a/arch/arm/mach-shmobile/board-bockw-reference.c b/arch/arm/mach-shmobile/board-bockw-reference.c
index ae88fda..60bd5df 100644
--- a/arch/arm/mach-shmobile/board-bockw-reference.c
+++ b/arch/arm/mach-shmobile/board-bockw-reference.c
@@ -73,7 +73,7 @@  static const char *bockw_boards_compat_dt[] __initdata = {
 	NULL,
 };
 
-DT_MACHINE_START(BOCKW_DT, "bockw")
+DT_MACHINE_START(BOCKW_DT)
 	.init_early	= r8a7778_init_delay,
 	.init_irq	= r8a7778_init_irq_dt,
 	.init_machine	= bockw_init,
diff --git a/arch/arm/mach-shmobile/board-bockw.c b/arch/arm/mach-shmobile/board-bockw.c
index 6163fb1..8ff74db 100644
--- a/arch/arm/mach-shmobile/board-bockw.c
+++ b/arch/arm/mach-shmobile/board-bockw.c
@@ -697,7 +697,7 @@  static const char *bockw_boards_compat_dt[] __initdata = {
 	NULL,
 };
 
-DT_MACHINE_START(BOCKW_DT, "bockw")
+DT_MACHINE_START(BOCKW_DT)
 	.init_early	= r8a7778_init_delay,
 	.init_irq	= r8a7778_init_irq_dt,
 	.init_machine	= bockw_init,
diff --git a/arch/arm/mach-shmobile/board-genmai.c b/arch/arm/mach-shmobile/board-genmai.c
index 3e92e3c..1117ad8 100644
--- a/arch/arm/mach-shmobile/board-genmai.c
+++ b/arch/arm/mach-shmobile/board-genmai.c
@@ -36,7 +36,7 @@  static const char * const genmai_boards_compat_dt[] __initconst = {
 	NULL,
 };
 
-DT_MACHINE_START(GENMAI_DT, "genmai")
+DT_MACHINE_START(GENMAI_DT)
 	.init_early	= r7s72100_init_early,
 	.init_machine	= genmai_add_standard_devices,
 	.dt_compat	= genmai_boards_compat_dt,
diff --git a/arch/arm/mach-shmobile/board-koelsch.c b/arch/arm/mach-shmobile/board-koelsch.c
index ace1711..d923206 100644
--- a/arch/arm/mach-shmobile/board-koelsch.c
+++ b/arch/arm/mach-shmobile/board-koelsch.c
@@ -38,7 +38,7 @@  static const char * const koelsch_boards_compat_dt[] __initconst = {
 	NULL,
 };
 
-DT_MACHINE_START(KOELSCH_DT, "koelsch")
+DT_MACHINE_START(KOELSCH_DT)
 	.smp		= smp_ops(r8a7791_smp_ops),
 	.init_early	= r8a7791_init_early,
 	.init_machine	= koelsch_add_standard_devices,
diff --git a/arch/arm/mach-shmobile/board-kzm9d-reference.c b/arch/arm/mach-shmobile/board-kzm9d-reference.c
index 054d8d5..7d4d8d6 100644
--- a/arch/arm/mach-shmobile/board-kzm9d-reference.c
+++ b/arch/arm/mach-shmobile/board-kzm9d-reference.c
@@ -38,7 +38,7 @@  static const char *kzm9d_boards_compat_dt[] __initdata = {
 	NULL,
 };
 
-DT_MACHINE_START(KZM9D_DT, "kzm9d")
+DT_MACHINE_START(KZM9D_DT)
 	.smp		= smp_ops(emev2_smp_ops),
 	.map_io		= emev2_map_io,
 	.init_early	= emev2_init_delay,
diff --git a/arch/arm/mach-shmobile/board-kzm9d.c b/arch/arm/mach-shmobile/board-kzm9d.c
index 30c2cc6..a6ed124 100644
--- a/arch/arm/mach-shmobile/board-kzm9d.c
+++ b/arch/arm/mach-shmobile/board-kzm9d.c
@@ -82,7 +82,7 @@  static const char *kzm9d_boards_compat_dt[] __initdata = {
 	NULL,
 };
 
-DT_MACHINE_START(KZM9D_DT, "kzm9d")
+DT_MACHINE_START(KZM9D_DT)
 	.smp		= smp_ops(emev2_smp_ops),
 	.map_io		= emev2_map_io,
 	.init_early	= emev2_init_delay,
diff --git a/arch/arm/mach-shmobile/board-kzm9g-reference.c b/arch/arm/mach-shmobile/board-kzm9g-reference.c
index 598e324..c345976 100644
--- a/arch/arm/mach-shmobile/board-kzm9g-reference.c
+++ b/arch/arm/mach-shmobile/board-kzm9g-reference.c
@@ -46,7 +46,7 @@  static const char *kzm9g_boards_compat_dt[] __initdata = {
 	NULL,
 };
 
-DT_MACHINE_START(KZM9G_DT, "kzm9g-reference")
+DT_MACHINE_START(KZM9G_DT)
 	.smp		= smp_ops(sh73a0_smp_ops),
 	.map_io		= sh73a0_map_io,
 	.init_early	= sh73a0_init_delay,
diff --git a/arch/arm/mach-shmobile/board-kzm9g.c b/arch/arm/mach-shmobile/board-kzm9g.c
index fe689b7..6fd22ee 100644
--- a/arch/arm/mach-shmobile/board-kzm9g.c
+++ b/arch/arm/mach-shmobile/board-kzm9g.c
@@ -904,7 +904,7 @@  static const char *kzm9g_boards_compat_dt[] __initdata = {
 	NULL,
 };
 
-DT_MACHINE_START(KZM9G_DT, "kzm9g")
+DT_MACHINE_START(KZM9G_DT)
 	.smp		= smp_ops(sh73a0_smp_ops),
 	.map_io		= sh73a0_map_io,
 	.init_early	= sh73a0_add_early_devices,
diff --git a/arch/arm/mach-shmobile/board-lager-reference.c b/arch/arm/mach-shmobile/board-lager-reference.c
index 1a1a4a8..624356d 100644
--- a/arch/arm/mach-shmobile/board-lager-reference.c
+++ b/arch/arm/mach-shmobile/board-lager-reference.c
@@ -37,7 +37,7 @@  static const char *lager_boards_compat_dt[] __initdata = {
 	NULL,
 };
 
-DT_MACHINE_START(LAGER_DT, "lager")
+DT_MACHINE_START(LAGER_DT)
 	.smp		= smp_ops(r8a7790_smp_ops),
 	.init_early	= r8a7790_init_early,
 	.init_time	= rcar_gen2_timer_init,
diff --git a/arch/arm/mach-shmobile/board-lager.c b/arch/arm/mach-shmobile/board-lager.c
index a8d3ce6..7ff9ae4 100644
--- a/arch/arm/mach-shmobile/board-lager.c
+++ b/arch/arm/mach-shmobile/board-lager.c
@@ -253,7 +253,7 @@  static const char * const lager_boards_compat_dt[] __initconst = {
 	NULL,
 };
 
-DT_MACHINE_START(LAGER_DT, "lager")
+DT_MACHINE_START(LAGER_DT)
 	.smp		= smp_ops(r8a7790_smp_ops),
 	.init_early	= r8a7790_init_early,
 	.init_time	= rcar_gen2_timer_init,
diff --git a/arch/arm/mach-shmobile/board-mackerel.c b/arch/arm/mach-shmobile/board-mackerel.c
index af06753..e033b93 100644
--- a/arch/arm/mach-shmobile/board-mackerel.c
+++ b/arch/arm/mach-shmobile/board-mackerel.c
@@ -1510,7 +1510,7 @@  static const char *mackerel_boards_compat_dt[] __initdata = {
 	NULL,
 };
 
-DT_MACHINE_START(MACKEREL_DT, "mackerel")
+DT_MACHINE_START(MACKEREL_DT)
 	.map_io		= sh7372_map_io,
 	.init_early	= sh7372_add_early_devices,
 	.init_irq	= sh7372_init_irq,
diff --git a/arch/arm/mach-shmobile/board-marzen-reference.c b/arch/arm/mach-shmobile/board-marzen-reference.c
index 2773936..a00256b 100644
--- a/arch/arm/mach-shmobile/board-marzen-reference.c
+++ b/arch/arm/mach-shmobile/board-marzen-reference.c
@@ -36,7 +36,7 @@  static const char *marzen_boards_compat_dt[] __initdata = {
 	NULL,
 };
 
-DT_MACHINE_START(MARZEN, "marzen")
+DT_MACHINE_START(MARZEN)
 	.smp		= smp_ops(r8a7779_smp_ops),
 	.map_io		= r8a7779_map_io,
 	.init_early	= r8a7779_init_delay,
diff --git a/arch/arm/mach-shmobile/board-marzen.c b/arch/arm/mach-shmobile/board-marzen.c
index da1352f..9eac68d 100644
--- a/arch/arm/mach-shmobile/board-marzen.c
+++ b/arch/arm/mach-shmobile/board-marzen.c
@@ -378,7 +378,7 @@  static const char *marzen_boards_compat_dt[] __initdata = {
         NULL,
 };
 
-DT_MACHINE_START(MARZEN, "marzen")
+DT_MACHINE_START(MARZEN)
 	.smp		= smp_ops(r8a7779_smp_ops),
 	.map_io		= r8a7779_map_io,
 	.init_early	= r8a7779_add_early_devices,
diff --git a/arch/arm/mach-shmobile/setup-emev2.c b/arch/arm/mach-shmobile/setup-emev2.c
index 3ad531c..5ede34d 100644
--- a/arch/arm/mach-shmobile/setup-emev2.c
+++ b/arch/arm/mach-shmobile/setup-emev2.c
@@ -202,7 +202,7 @@  static const char *emev2_boards_compat_dt[] __initdata = {
 	NULL,
 };
 
-DT_MACHINE_START(EMEV2_DT, "Generic Emma Mobile EV2 (Flattened Device Tree)")
+DT_MACHINE_START(EMEV2_DT)
 	.smp		= smp_ops(emev2_smp_ops),
 	.map_io		= emev2_map_io,
 	.init_early	= emev2_init_delay,
diff --git a/arch/arm/mach-shmobile/setup-r7s72100.c b/arch/arm/mach-shmobile/setup-r7s72100.c
index d4eb509..78ed46a 100644
--- a/arch/arm/mach-shmobile/setup-r7s72100.c
+++ b/arch/arm/mach-shmobile/setup-r7s72100.c
@@ -81,7 +81,7 @@  static const char *r7s72100_boards_compat_dt[] __initdata = {
 	NULL,
 };
 
-DT_MACHINE_START(R7S72100_DT, "Generic R7S72100 (Flattened Device Tree)")
+DT_MACHINE_START(R7S72100_DT)
 	.init_early	= r7s72100_init_early,
 	.dt_compat	= r7s72100_boards_compat_dt,
 MACHINE_END
diff --git a/arch/arm/mach-shmobile/setup-r8a73a4.c b/arch/arm/mach-shmobile/setup-r8a73a4.c
index b0f2749..6027b92 100644
--- a/arch/arm/mach-shmobile/setup-r8a73a4.c
+++ b/arch/arm/mach-shmobile/setup-r8a73a4.c
@@ -312,7 +312,7 @@  static const char *r8a73a4_boards_compat_dt[] __initdata = {
 	NULL,
 };
 
-DT_MACHINE_START(R8A73A4_DT, "Generic R8A73A4 (Flattened Device Tree)")
+DT_MACHINE_START(R8A73A4_DT)
 	.init_early	= r8a73a4_init_early,
 	.dt_compat	= r8a73a4_boards_compat_dt,
 MACHINE_END
diff --git a/arch/arm/mach-shmobile/setup-r8a7740.c b/arch/arm/mach-shmobile/setup-r8a7740.c
index b7d4b2c..c18f2a0e 100644
--- a/arch/arm/mach-shmobile/setup-r8a7740.c
+++ b/arch/arm/mach-shmobile/setup-r8a7740.c
@@ -1062,7 +1062,7 @@  static const char *r8a7740_boards_compat_dt[] __initdata = {
 	NULL,
 };
 
-DT_MACHINE_START(R8A7740_DT, "Generic R8A7740 (Flattened Device Tree)")
+DT_MACHINE_START(R8A7740_DT)
 	.map_io		= r8a7740_map_io,
 	.init_early	= r8a7740_init_delay,
 	.init_irq	= r8a7740_init_irq_of,
diff --git a/arch/arm/mach-shmobile/setup-r8a7778.c b/arch/arm/mach-shmobile/setup-r8a7778.c
index 03fcc59..f86e80f 100644
--- a/arch/arm/mach-shmobile/setup-r8a7778.c
+++ b/arch/arm/mach-shmobile/setup-r8a7778.c
@@ -493,7 +493,7 @@  static const char *r8a7778_compat_dt[] __initdata = {
 	NULL,
 };
 
-DT_MACHINE_START(R8A7778_DT, "Generic R8A7778 (Flattened Device Tree)")
+DT_MACHINE_START(R8A7778_DT)
 	.init_early	= r8a7778_init_delay,
 	.init_irq	= r8a7778_init_irq_dt,
 	.dt_compat	= r8a7778_compat_dt,
diff --git a/arch/arm/mach-shmobile/setup-r8a7779.c b/arch/arm/mach-shmobile/setup-r8a7779.c
index 13049e9..0b8c6d4 100644
--- a/arch/arm/mach-shmobile/setup-r8a7779.c
+++ b/arch/arm/mach-shmobile/setup-r8a7779.c
@@ -936,7 +936,7 @@  static const char *r8a7779_compat_dt[] __initdata = {
 	NULL,
 };
 
-DT_MACHINE_START(R8A7779_DT, "Generic R8A7779 (Flattened Device Tree)")
+DT_MACHINE_START(R8A7779_DT)
 	.map_io		= r8a7779_map_io,
 	.init_early	= r8a7779_init_delay,
 	.nr_irqs	= NR_IRQS_LEGACY,
diff --git a/arch/arm/mach-shmobile/setup-r8a7790.c b/arch/arm/mach-shmobile/setup-r8a7790.c
index c47bceb..3dcbdb2 100644
--- a/arch/arm/mach-shmobile/setup-r8a7790.c
+++ b/arch/arm/mach-shmobile/setup-r8a7790.c
@@ -216,7 +216,7 @@  static const char * const r8a7790_boards_compat_dt[] __initconst = {
 	NULL,
 };
 
-DT_MACHINE_START(R8A7790_DT, "Generic R8A7790 (Flattened Device Tree)")
+DT_MACHINE_START(R8A7790_DT)
 	.smp		= smp_ops(r8a7790_smp_ops),
 	.init_early	= r8a7790_init_early,
 	.init_time	= rcar_gen2_timer_init,
diff --git a/arch/arm/mach-shmobile/setup-r8a7791.c b/arch/arm/mach-shmobile/setup-r8a7791.c
index d9393d6..ec49e9e 100644
--- a/arch/arm/mach-shmobile/setup-r8a7791.c
+++ b/arch/arm/mach-shmobile/setup-r8a7791.c
@@ -175,7 +175,7 @@  static const char *r8a7791_boards_compat_dt[] __initdata = {
 	NULL,
 };
 
-DT_MACHINE_START(R8A7791_DT, "Generic R8A7791 (Flattened Device Tree)")
+DT_MACHINE_START(R8A7791_DT)
 	.smp		= smp_ops(r8a7791_smp_ops),
 	.init_early	= r8a7791_init_early,
 	.init_time	= rcar_gen2_timer_init,
diff --git a/arch/arm/mach-shmobile/setup-sh7372.c b/arch/arm/mach-shmobile/setup-sh7372.c
index 3118783..6c22b68 100644
--- a/arch/arm/mach-shmobile/setup-sh7372.c
+++ b/arch/arm/mach-shmobile/setup-sh7372.c
@@ -1162,7 +1162,7 @@  static const char *sh7372_boards_compat_dt[] __initdata = {
 	NULL,
 };
 
-DT_MACHINE_START(SH7372_DT, "Generic SH7372 (Flattened Device Tree)")
+DT_MACHINE_START(SH7372_DT)
 	.map_io		= sh7372_map_io,
 	.init_early	= sh7372_add_early_devices_dt,
 	.nr_irqs	= NR_IRQS_LEGACY,
diff --git a/arch/arm/mach-shmobile/setup-sh73a0.c b/arch/arm/mach-shmobile/setup-sh73a0.c
index 22de174..f49279e 100644
--- a/arch/arm/mach-shmobile/setup-sh73a0.c
+++ b/arch/arm/mach-shmobile/setup-sh73a0.c
@@ -963,7 +963,7 @@  static const char *sh73a0_boards_compat_dt[] __initdata = {
 	NULL,
 };
 
-DT_MACHINE_START(SH73A0_DT, "Generic SH73A0 (Flattened Device Tree)")
+DT_MACHINE_START(SH73A0_DT)
 	.smp		= smp_ops(sh73a0_smp_ops),
 	.map_io		= sh73a0_map_io,
 	.init_early	= sh73a0_init_delay,
diff --git a/arch/arm/mach-socfpga/socfpga.c b/arch/arm/mach-socfpga/socfpga.c
index dd0d49c..1c47025 100644
--- a/arch/arm/mach-socfpga/socfpga.c
+++ b/arch/arm/mach-socfpga/socfpga.c
@@ -114,7 +114,7 @@  static const char *altera_dt_match[] = {
 	NULL
 };
 
-DT_MACHINE_START(SOCFPGA, "Altera SOCFPGA")
+DT_MACHINE_START(SOCFPGA)
 	.smp		= smp_ops(socfpga_smp_ops),
 	.map_io		= socfpga_map_io,
 	.init_irq	= socfpga_init_irq,
diff --git a/arch/arm/mach-spear/spear1310.c b/arch/arm/mach-spear/spear1310.c
index 7ad0030..388b055 100644
--- a/arch/arm/mach-spear/spear1310.c
+++ b/arch/arm/mach-spear/spear1310.c
@@ -56,7 +56,7 @@  static void __init spear1310_map_io(void)
 	spear13xx_map_io();
 }
 
-DT_MACHINE_START(SPEAR1310_DT, "ST SPEAr1310 SoC with Flattened Device Tree")
+DT_MACHINE_START(SPEAR1310_DT)
 	.smp		=	smp_ops(spear13xx_smp_ops),
 	.map_io		=	spear1310_map_io,
 	.init_time	=	spear13xx_timer_init,
diff --git a/arch/arm/mach-spear/spear1340.c b/arch/arm/mach-spear/spear1340.c
index 3fb6834..009815e 100644
--- a/arch/arm/mach-spear/spear1340.c
+++ b/arch/arm/mach-spear/spear1340.c
@@ -151,7 +151,7 @@  static const char * const spear1340_dt_board_compat[] = {
 	NULL,
 };
 
-DT_MACHINE_START(SPEAR1340_DT, "ST SPEAr1340 SoC with Flattened Device Tree")
+DT_MACHINE_START(SPEAR1340_DT)
 	.smp		=	smp_ops(spear13xx_smp_ops),
 	.map_io		=	spear13xx_map_io,
 	.init_time	=	spear13xx_timer_init,
diff --git a/arch/arm/mach-spear/spear300.c b/arch/arm/mach-spear/spear300.c
index b52e48f..bd094b3 100644
--- a/arch/arm/mach-spear/spear300.c
+++ b/arch/arm/mach-spear/spear300.c
@@ -209,7 +209,7 @@  static void __init spear300_map_io(void)
 	spear3xx_map_io();
 }
 
-DT_MACHINE_START(SPEAR300_DT, "ST SPEAr300 SoC with Flattened Device Tree")
+DT_MACHINE_START(SPEAR300_DT)
 	.map_io		=	spear300_map_io,
 	.init_time	=	spear3xx_timer_init,
 	.init_machine	=	spear300_dt_init,
diff --git a/arch/arm/mach-spear/spear310.c b/arch/arm/mach-spear/spear310.c
index ed2029d..465e916 100644
--- a/arch/arm/mach-spear/spear310.c
+++ b/arch/arm/mach-spear/spear310.c
@@ -251,7 +251,7 @@  static void __init spear310_map_io(void)
 	spear3xx_map_io();
 }
 
-DT_MACHINE_START(SPEAR310_DT, "ST SPEAr310 SoC with Flattened Device Tree")
+DT_MACHINE_START(SPEAR310_DT)
 	.map_io		=	spear310_map_io,
 	.init_time	=	spear3xx_timer_init,
 	.init_machine	=	spear310_dt_init,
diff --git a/arch/arm/mach-spear/spear320.c b/arch/arm/mach-spear/spear320.c
index bf634b3..6b6b381 100644
--- a/arch/arm/mach-spear/spear320.c
+++ b/arch/arm/mach-spear/spear320.c
@@ -266,7 +266,7 @@  static void __init spear320_map_io(void)
 	spear3xx_map_io();
 }
 
-DT_MACHINE_START(SPEAR320_DT, "ST SPEAr320 SoC with Flattened Device Tree")
+DT_MACHINE_START(SPEAR320_DT)
 	.map_io		=	spear320_map_io,
 	.init_time	=	spear3xx_timer_init,
 	.init_machine	=	spear320_dt_init,
diff --git a/arch/arm/mach-spear/spear6xx.c b/arch/arm/mach-spear/spear6xx.c
index da26fa5..a69fc83 100644
--- a/arch/arm/mach-spear/spear6xx.c
+++ b/arch/arm/mach-spear/spear6xx.c
@@ -420,7 +420,7 @@  static const char *spear600_dt_board_compat[] = {
 	NULL
 };
 
-DT_MACHINE_START(SPEAR600_DT, "ST SPEAr600 (Flattened Device Tree)")
+DT_MACHINE_START(SPEAR600_DT)
 	.map_io		=	spear6xx_map_io,
 	.init_time	=	spear6xx_timer_init,
 	.init_machine	=	spear600_dt_init,
diff --git a/arch/arm/mach-sti/board-dt.c b/arch/arm/mach-sti/board-dt.c
index 1217fb5..6cd60cb 100644
--- a/arch/arm/mach-sti/board-dt.c
+++ b/arch/arm/mach-sti/board-dt.c
@@ -39,7 +39,7 @@  static const char *stih41x_dt_match[] __initdata = {
 	NULL
 };
 
-DT_MACHINE_START(STM, "STiH415/416 SoC with Flattened Device Tree")
+DT_MACHINE_START(STM)
 	.init_machine	= stih41x_machine_init,
 	.smp		= smp_ops(sti_smp_ops),
 	.dt_compat	= stih41x_dt_match,
diff --git a/arch/arm/mach-sunxi/sunxi.c b/arch/arm/mach-sunxi/sunxi.c
index 61d3a38..fb307fa 100644
--- a/arch/arm/mach-sunxi/sunxi.c
+++ b/arch/arm/mach-sunxi/sunxi.c
@@ -121,7 +121,7 @@  static const char * const sunxi_board_dt_compat[] = {
 	NULL,
 };
 
-DT_MACHINE_START(SUNXI_DT, "Allwinner A1X (Device Tree)")
+DT_MACHINE_START(SUNXI_DT)
 	.init_machine	= sunxi_dt_init,
 	.dt_compat	= sunxi_board_dt_compat,
 	.restart	= sun4i_restart,
@@ -132,7 +132,7 @@  static const char * const sun6i_board_dt_compat[] = {
 	NULL,
 };
 
-DT_MACHINE_START(SUN6I_DT, "Allwinner sun6i (A31) Family")
+DT_MACHINE_START(SUN6I_DT)
 	.init_machine	= sunxi_dt_init,
 	.dt_compat	= sun6i_board_dt_compat,
 	.restart	= sun6i_restart,
@@ -143,7 +143,7 @@  static const char * const sun7i_board_dt_compat[] = {
 	NULL,
 };
 
-DT_MACHINE_START(SUN7I_DT, "Allwinner sun7i (A20) Family")
+DT_MACHINE_START(SUN7I_DT)
 	.init_machine	= sunxi_dt_init,
 	.dt_compat	= sun7i_board_dt_compat,
 	.restart	= sun4i_restart,
diff --git a/arch/arm/mach-tegra/tegra.c b/arch/arm/mach-tegra/tegra.c
index ce553d5..90bff68 100644
--- a/arch/arm/mach-tegra/tegra.c
+++ b/arch/arm/mach-tegra/tegra.c
@@ -180,7 +180,7 @@  static const char * const tegra_dt_board_compat[] = {
 	NULL
 };
 
-DT_MACHINE_START(TEGRA_DT, "NVIDIA Tegra SoC (Flattened Device Tree)")
+DT_MACHINE_START(TEGRA_DT)
 	.map_io		= tegra_map_common_io,
 	.smp		= smp_ops(tegra_smp_ops),
 	.init_early	= tegra_init_early,
diff --git a/arch/arm/mach-u300/core.c b/arch/arm/mach-u300/core.c
index 35670b1..8bac5c8 100644
--- a/arch/arm/mach-u300/core.c
+++ b/arch/arm/mach-u300/core.c
@@ -405,7 +405,7 @@  static const char * u300_board_compat[] = {
 	NULL,
 };
 
-DT_MACHINE_START(U300_DT, "U300 S335/B335 (Device Tree)")
+DT_MACHINE_START(U300_DT)
 	.map_io		= u300_map_io,
 	.init_irq	= u300_init_irq_dt,
 	.init_time	= clocksource_of_init,
diff --git a/arch/arm/mach-ux500/cpu-db8500.c b/arch/arm/mach-ux500/cpu-db8500.c
index 2e85c1e..8506568 100644
--- a/arch/arm/mach-ux500/cpu-db8500.c
+++ b/arch/arm/mach-ux500/cpu-db8500.c
@@ -210,7 +210,7 @@  static const char * stericsson_dt_platform_compat[] = {
 	NULL,
 };
 
-DT_MACHINE_START(U8500_DT, "ST-Ericsson Ux5x0 platform (Device Tree Support)")
+DT_MACHINE_START(U8500_DT)
 	.smp            = smp_ops(ux500_smp_ops),
 	.map_io		= u8500_map_io,
 	.init_irq	= ux500_init_irq,
diff --git a/arch/arm/mach-versatile/versatile_dt.c b/arch/arm/mach-versatile/versatile_dt.c
index 3621b00..4940da8 100644
--- a/arch/arm/mach-versatile/versatile_dt.c
+++ b/arch/arm/mach-versatile/versatile_dt.c
@@ -41,7 +41,7 @@  static const char *versatile_dt_match[] __initconst = {
 	NULL,
 };
 
-DT_MACHINE_START(VERSATILE_PB, "ARM-Versatile (Device Tree Support)")
+DT_MACHINE_START(VERSATILE_PB)
 	.map_io		= versatile_map_io,
 	.init_early	= versatile_init_early,
 	.init_irq	= versatile_init_irq,
diff --git a/arch/arm/mach-vexpress/v2m.c b/arch/arm/mach-vexpress/v2m.c
index 4f8b8cb..868c40c 100644
--- a/arch/arm/mach-vexpress/v2m.c
+++ b/arch/arm/mach-vexpress/v2m.c
@@ -441,7 +441,7 @@  static const char * const v2m_dt_match[] __initconst = {
 	NULL,
 };
 
-DT_MACHINE_START(VEXPRESS_DT, "ARM-Versatile Express")
+DT_MACHINE_START(VEXPRESS_DT)
 	.dt_compat	= v2m_dt_match,
 	.smp		= smp_ops(vexpress_smp_ops),
 	.smp_init	= smp_init_ops(vexpress_smp_init_ops),
diff --git a/arch/arm/mach-virt/virt.c b/arch/arm/mach-virt/virt.c
index b184e57..d1495fd 100644
--- a/arch/arm/mach-virt/virt.c
+++ b/arch/arm/mach-virt/virt.c
@@ -35,7 +35,7 @@  static const char *virt_dt_match[] = {
 	NULL
 };
 
-DT_MACHINE_START(VIRT, "Dummy Virtual Machine")
+DT_MACHINE_START(VIRT)
 	.init_machine	= virt_init,
 	.dt_compat	= virt_dt_match,
 MACHINE_END
diff --git a/arch/arm/mach-vt8500/vt8500.c b/arch/arm/mach-vt8500/vt8500.c
index 4a73464..373b4a6 100644
--- a/arch/arm/mach-vt8500/vt8500.c
+++ b/arch/arm/mach-vt8500/vt8500.c
@@ -171,7 +171,7 @@  static const char * const vt8500_dt_compat[] = {
 	NULL
 };
 
-DT_MACHINE_START(WMT_DT, "VIA/Wondermedia SoC (Device Tree Support)")
+DT_MACHINE_START(WMT_DT)
 	.dt_compat	= vt8500_dt_compat,
 	.map_io		= vt8500_map_io,
 	.init_machine	= vt8500_init,
diff --git a/arch/arm/mach-zynq/common.c b/arch/arm/mach-zynq/common.c
index 5f25256..f36211c 100644
--- a/arch/arm/mach-zynq/common.c
+++ b/arch/arm/mach-zynq/common.c
@@ -101,7 +101,7 @@  static const char * const zynq_dt_match[] = {
 	NULL
 };
 
-DT_MACHINE_START(XILINX_EP107, "Xilinx Zynq Platform")
+DT_MACHINE_START(XILINX_EP107)
 	.smp		= smp_ops(zynq_smp_ops),
 	.map_io		= zynq_map_io,
 	.init_machine	= zynq_init_machine,