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
next prev 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).