linux-arm-kernel.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
From: lee.jones@linaro.org (Lee Jones)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH 18/32] ARM: ux500: Fork MSP platform registration for step-by-step DT enablement
Date: Thu, 20 Sep 2012 14:12:36 +0200	[thread overview]
Message-ID: <1348143170-2130-19-git-send-email-lee.jones@linaro.org> (raw)
In-Reply-To: <1348143170-2130-1-git-send-email-lee.jones@linaro.org>

We've done this before and it worked well last time. Here we're
duplicating a complex registration function to ease the process
of enabling it for Device Tree. As there are quite a few steps
taken during the registration process, it makes sense to break
them up into more manageable chunks. This patch will aid us.

Acked-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Lee Jones <lee.jones@linaro.org>
---
 arch/arm/mach-ux500/board-mop500-msp.c |   20 ++++++++++++++++++++
 arch/arm/mach-ux500/board-mop500.c     |    2 +-
 arch/arm/mach-ux500/board-mop500.h     |    2 ++
 3 files changed, 23 insertions(+), 1 deletion(-)

diff --git a/arch/arm/mach-ux500/board-mop500-msp.c b/arch/arm/mach-ux500/board-mop500-msp.c
index dcf5ea9..bfd4851 100644
--- a/arch/arm/mach-ux500/board-mop500-msp.c
+++ b/arch/arm/mach-ux500/board-mop500-msp.c
@@ -171,6 +171,26 @@ static struct msp_i2s_platform_data msp3_platform_data = {
 	.msp_i2s_dma_tx	= NULL,
 };
 
+/* Due for removal once the MSP driver has been fully DT:ed. */
+void mop500_of_msp_init(struct device *parent)
+{
+	pr_info("%s: Register platform-device 'snd-soc-u8500'.\n", __func__);
+	platform_device_register(&snd_soc_mop500);
+
+	pr_info("Initialize MSP I2S-devices.\n");
+	db8500_add_msp_i2s(parent, 0, U8500_MSP0_BASE, IRQ_DB8500_MSP0,
+			   &msp0_platform_data);
+	db8500_add_msp_i2s(parent, 1, U8500_MSP1_BASE, IRQ_DB8500_MSP1,
+			   &msp1_platform_data);
+	db8500_add_msp_i2s(parent, 2, U8500_MSP2_BASE, IRQ_DB8500_MSP2,
+			   &msp2_platform_data);
+	db8500_add_msp_i2s(parent, 3, U8500_MSP3_BASE, IRQ_DB8500_MSP1,
+			   &msp3_platform_data);
+
+	pr_info("%s: Register platform-device 'ux500-pcm'\n", __func__);
+	platform_device_register(&ux500_pcm);
+}
+
 void mop500_msp_init(struct device *parent)
 {
 	pr_info("%s: Register platform-device 'snd-soc-mop500'.\n", __func__);
diff --git a/arch/arm/mach-ux500/board-mop500.c b/arch/arm/mach-ux500/board-mop500.c
index a799477..e7593b0 100644
--- a/arch/arm/mach-ux500/board-mop500.c
+++ b/arch/arm/mach-ux500/board-mop500.c
@@ -804,7 +804,7 @@ static void __init u8500_init_machine(void)
 		mop500_uib_init();
 
 	} else if (of_machine_is_compatible("calaosystems,snowball-a9500")) {
-		mop500_msp_init(parent);
+		mop500_of_msp_init(parent);
 	} else if (of_machine_is_compatible("st-ericsson,hrefv60+")) {
 		/*
 		 * The HREFv60 board removed a GPIO expander and routed
diff --git a/arch/arm/mach-ux500/board-mop500.h b/arch/arm/mach-ux500/board-mop500.h
index bdae9b0..c6daea2 100644
--- a/arch/arm/mach-ux500/board-mop500.h
+++ b/arch/arm/mach-ux500/board-mop500.h
@@ -95,6 +95,8 @@ void __init mop500_pinmaps_init(void);
 void __init snowball_pinmaps_init(void);
 void __init hrefv60_pinmaps_init(void);
 void mop500_msp_init(struct device *parent);
+/* Due for removal once the MSP driver has been fully DT:ed. */
+void mop500_of_msp_init(struct device *parent);
 
 int __init mop500_uib_init(void);
 void mop500_uib_i2c_add(int busnum, struct i2c_board_info *info,
-- 
1.7.9.5

  parent reply	other threads:[~2012-09-20 12:12 UTC|newest]

Thread overview: 33+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-09-20 12:12 [GIT PULL] Patches surrounding DT development due for ARM-SoC Lee Jones
2012-09-20 12:12 ` [PATCH 01/32] ARM: ux500: Rename db8500.dtsi to dbx5x0.dtsi to encompass the u9500, u8540 and u9540 Lee Jones
2012-09-20 12:12 ` [PATCH 02/32] ARM: ux500: Clean-up temporary Device Tree enablement helpers Lee Jones
2012-09-20 12:12 ` [PATCH 03/32] ARM: ux500: Pass PMU platform data due for Perf though AUXDATA Lee Jones
2012-09-20 12:12 ` [PATCH 04/32] Documentation: Add the AB8500 CODEC device to the MFD AB8500 doc Lee Jones
2012-09-20 12:12 ` [PATCH 05/32] of/irq: Create stub for of_irq_find_parent when !CONFIG_OF Lee Jones
2012-09-20 12:12 ` [PATCH 06/32] ARM: ux500: Identify the PRCMU as an interrupt controller Lee Jones
2012-09-20 12:12 ` [PATCH 07/32] ARM: ux500: Force AB8500 to use the GIC as its " Lee Jones
2012-09-20 12:12 ` [PATCH 08/32] Revert "input: ab8500-ponkey: Create AB8500 domain IRQ mapping" Lee Jones
2012-09-20 12:12 ` [PATCH 09/32] ARM: ux500: Remove unused snowball_of_platform_devs struct Lee Jones
2012-09-20 12:12 ` [PATCH 10/32] ARM: ux500: Match Power-On-Key MFD and DTS compatible strings Lee Jones
2012-09-20 12:12 ` [PATCH 11/32] drivers/rtc/rtc-ab8500.c: Revoke Device Tree enablement Lee Jones
2012-09-20 12:12 ` [PATCH 12/32] ARM: ux500: Add i2c configurations to the Device Tree for DB8500 based devices Lee Jones
2012-09-20 12:12 ` [PATCH 13/32] ARM: ux500: Add skeleton Device Tree for the HREF reference board Lee Jones
2012-09-20 12:12 ` [PATCH 14/32] ARM: ux500: Add UART support to the HREF Device Tree Lee Jones
2012-09-20 12:12 ` [PATCH 15/32] ARM: ux500: Pass SDI DMA information though AUX_DATA to MMCI Lee Jones
2012-09-20 12:12 ` [PATCH 16/32] ARM: ux500: Clean-up MSP platform code Lee Jones
2012-09-20 12:12 ` [PATCH 17/32] ARM: ux500: Add AB8500 CODEC node to DB8500 Device Tree Lee Jones
2012-09-20 12:12 ` Lee Jones [this message]
2012-09-20 12:12 ` [PATCH 19/32] ARM: ux500: Pass MSP DMA platform data though AUXDATA Lee Jones
2012-09-20 12:12 ` [PATCH 20/32] ARM: ux500: Stop registering the MOP500 Audio driver from platform code Lee Jones
2012-09-20 12:12 ` [PATCH 21/32] ARM: ux500: Remove platform registration of MSP devices Lee Jones
2012-09-20 12:12 ` [PATCH 22/32] ARM: ux500: Rename MSP board file to something more meaningful Lee Jones
2012-09-20 12:12 ` [PATCH 23/32] ARM: ux500: Add nodes for the MSP into Device Tree Lee Jones
2012-09-20 12:12 ` [PATCH 24/32] ARM: ux500: Add all encompassing sound node to the Snowball " Lee Jones
2012-09-20 12:12 ` [PATCH 25/32] ARM: ux500: Stop registering Audio devices for HREF when DT is enabled Lee Jones
2012-09-20 12:12 ` [PATCH 26/32] ARM: ux500: Stop registering I2C sub-devices " Lee Jones
2012-09-20 12:12 ` [PATCH 27/32] ARM: ux500: Add all known I2C sub-device nodes to the HREF DT Lee Jones
2012-09-20 12:12 ` [PATCH 28/32] ARM: ux500: Add nodes for the MSP into the HREF Device Tree Lee Jones
2012-09-20 12:12 ` [PATCH 29/32] ARM: ux500: Add all encompassing sound node to " Lee Jones
2012-09-20 12:12 ` [PATCH 30/32] ARM: ux500: Remove redundant #gpio-cell properties from Snowball DT Lee Jones
2012-09-20 12:12 ` [PATCH 31/32] ARM: ux500: Apply tc3589x's GPIO/IRQ properties to HREF's DT Lee Jones
2012-09-20 12:12 ` [PATCH 32/32] ARM: ux500: Fix SSP register address format Lee Jones

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1348143170-2130-19-git-send-email-lee.jones@linaro.org \
    --to=lee.jones@linaro.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).