Renesas ARM-based SoC board updates for v3.12
cover Renesas ARM-based SoC board updates for v3.12
Hi Olof, Hi Arnd,
please consider these Renesas ARM-based SoC board updates for v3.12. This pull-request is based on renesas-soc-for-v3.12 which I have previously sent a pull-request for.
The following changes since commit 81b9d5351fa96caad4accc6711bc1b9342927d4a:
ARM: shmobile: Setup r8a7790 arch timer based on MD pins (2013-07-17 14:26:56 +0900)
are available in the git repository at:
git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas.git boards
for you to fetch changes up to f79d68da510bf1b95beff4d556b78d06801f11dc:
ARM: shmobile: ape6evm: add SDHI interfaces (2013-07-25 14:46:38 +0900)
----------------------------------------------------------------
Renesas ARM-based SoC board updates for v3.12
* ape6evm: Add SDHI and MMCIF support
* lager: Add MMCIF support
* armadillo800eva: Add DMA support for MMCIF
----------------------------------------------------------------
Guennadi Liakhovetski (4):
ARM: shmobile: armadillo800eva: add DMA support to MMCIF
ARM: shmobile: lager: add MMCIF support
ARM: shmobile: ape6evm: add MMCIF support
ARM: shmobile: ape6evm: add SDHI interfaces
Kuninori Morimoto (1):
ARM: shmobile: select the fixed regulator driver on BockW
arch/arm/mach-shmobile/Kconfig | 1 + arch/arm/mach-shmobile/board-ape6evm.c | 79 ++++++++++++++++++++++++++ arch/arm/mach-shmobile/board-armadillo800eva.c | 2 + arch/arm/mach-shmobile/board-lager.c | 31 ++++++++++ 4 files changed, 113 insertions(+)
PATCH 1/5 ARM: shmobile: armadillo800eva: add DMA support to MMCIF
From: Guennadi Liakhovetski <[email protected]>
Add DMA slave IDs to MMCIF Tx and Rx channels.
--- arch/arm/mach-shmobile/board-armadillo800eva.c | 2 ++ 1 file changed, 2 insertions(+)
arch/arm/mach-shmobile/board-armadillo800eva.c +2 -0
@@ -779,6 +779,8 @@ static struct sh_mmcif_plat_data sh_mmcif_plat = { .caps = MMC_CAP_4_BIT_DATA | MMC_CAP_8_BIT_DATA | MMC_CAP_NONREMOVABLE, + .slave_id_tx = SHDMA_SLAVE_MMCIF_TX, + .slave_id_rx = SHDMA_SLAVE_MMCIF_RX, };static struct resource sh_mmcif_resources[] = {
Signature · 1 line
1.8.3.2
PATCH 2/5 ARM: shmobile: lager: add MMCIF support
In reply to Simon HormanFrom: Guennadi Liakhovetski <[email protected]>
Add support for the MMCIF1 interface on Lager.
--- arch/arm/mach-shmobile/board-lager.c | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+)
arch/arm/mach-shmobile/board-lager.c +31 -0
@@ -24,10 +24,15 @@#include <linux/interrupt.h> #include <linux/kernel.h> #include <linux/leds.h> +#include <linux/mmc/host.h> +#include <linux/mmc/sh_mmcif.h> #include <linux/pinctrl/machine.h> #include <linux/platform_data/gpio-rcar.h> #include <linux/platform_device.h> +#include <linux/regulator/fixed.h> +#include <linux/regulator/machine.h> #include <mach/common.h> +#include <mach/irqs.h> #include <mach/r8a7790.h> #include <asm/mach-types.h> #include <asm/mach/arch.h>
@@ -70,6 +75,22 @@ static __initdata struct gpio_keys_platform_data lager_keys_pdata = { .nbuttons = ARRAY_SIZE(gpio_buttons), }; +/* Fixed 3.3V regulator to be used by MMCIF */ +static struct regulator_consumer_supply fixed3v3_power_consumers[] = +{ +REGULATOR_SUPPLY ("vmmc" ,"sh_mmcif.1" ), +}; + +/* MMCIF */ +static struct sh_mmcif_plat_data mmcif1_pdata = { + .caps =MMC_CAP_8_BIT_DATA |MMC_CAP_NONREMOVABLE , +}; + +static struct resource mmcif1_resources[] = { +DEFINE_RES_MEM_NAMED (0xee220000 ,0x80 ,"MMCIF1" ), +DEFINE_RES_IRQ (gic_spi (170 )), +}; +static const struct pinctrl_map lager_pinctrl_map[] = {/* SCIF0 (CN19: DEBUG SERIAL0) */ PIN_MAP_MUX_GROUP_DEFAULT("sh-sci.6", "pfc-r8a7790",
@@ -77,6 +98,11 @@ static const struct pinctrl_map lager_pinctrl_map[] = {/* SCIF1 (CN20: DEBUG SERIAL1) */ PIN_MAP_MUX_GROUP_DEFAULT ("sh-sci.7" ,"pfc-r8a7790" ,"scif1_data" ,"scif1" ), +/* MMCIF1 */ +PIN_MAP_MUX_GROUP_DEFAULT ("sh_mmcif.1" ,"pfc-r8a7790" , +"mmc1_data8" ,"mmc1" ), +PIN_MAP_MUX_GROUP_DEFAULT ("sh_mmcif.1" ,"pfc-r8a7790" , + "mmc1_ctrl", "mmc1"), };static void __init lager_add_standard_devices (void )
@@ -94,6 +120,11 @@ static void __init lager_add_standard_devices(void)platform_device_register_data (&platform_bus,"gpio-keys" ,-1 , &lager_keys_pdata,sizeof (lager_keys_pdata)); +regulator_register_always_on (0 ,"fixed-3.3V" , fixed3v3_power_consumers, +ARRAY_SIZE (fixed3v3_power_consumers),3300000 ); +platform_device_register_resndata (&platform_bus,"sh_mmcif" ,1 , + mmcif1_resources,ARRAY_SIZE (mmcif1_resources), + &mmcif1_pdata,sizeof (mmcif1_pdata)); }static const char *lager_boards_compat_dt[]__initdata = {
Signature · 1 line
1.8.3.2
PATCH 3/5 ARM: shmobile: select the fixed regulator driver on BockW
In reply to Simon HormanFrom: Kuninori Morimoto <[email protected]>
34767f8dccc326026f97cd63f759dd36bd83502d
(ARM: mach-shmobile: select the fixed regulator driver on several boards) decided to select fixed regulator driver on Kconfig.
BockW follows same style.
--- arch/arm/mach-shmobile/Kconfig | 1 + 1 file changed, 1 insertion(+)
arch/arm/mach-shmobile/Kconfig +1 -0
@@ -124,6 +124,7 @@ config MACH_BOCKW depends on ARCH_R8A7778 select ARCH_REQUIRE_GPIOLIB select RENESAS_INTC_IRQPIN + select REGULATOR_FIXED_VOLTAGE if REGULATOR select USE_OF config MACH_MARZEN
Signature · 1 line
1.8.3.2
PATCH 4/5 ARM: shmobile: ape6evm: add MMCIF support
In reply to Simon HormanFrom: Guennadi Liakhovetski <[email protected]>
Add MMCIF support to the APE6EVM board in PIO mode only. Power supply is fixed for now, eventually support for the tps80032 regulator, also supplying both VDD and VccQ to the MMCIF slot should be added to APE6EVM.
--- arch/arm/mach-shmobile/board-ape6evm.c | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+)
arch/arm/mach-shmobile/board-ape6evm.c +31 -0
@@ -21,6 +21,8 @@#include <linux/gpio.h> #include <linux/interrupt.h> #include <linux/kernel.h> +#include <linux/mmc/host.h> +#include <linux/mmc/sh_mmcif.h> #include <linux/pinctrl/machine.h> #include <linux/platform_device.h> #include <linux/regulator/fixed.h>
@@ -54,6 +56,25 @@ static const struct smsc911x_platform_config lan9220_data = { .irq_polarity = SMSC911X_IRQ_POLARITY_ACTIVE_HIGH, }; +/* +* On APE6EVM power is supplied to MMCIF by a tps80032 regulator. For now we +* model a VDD supply to MMCIF, using a fixed 3.3V regulator. +*/ +static struct regulator_consumer_supply fixed3v3_power_consumers[] = +{ +REGULATOR_SUPPLY ("vmmc" ,"sh_mmcif.0" ), +}; + +/* MMCIF */ +static struct sh_mmcif_plat_data mmcif0_pdata = { + .caps =MMC_CAP_8_BIT_DATA |MMC_CAP_NONREMOVABLE , +}; + +static struct resource mmcif0_resources[] = { +DEFINE_RES_MEM_NAMED (0xee200000 ,0x100 ,"MMCIF0" ), +DEFINE_RES_IRQ (gic_spi (169 )), +}; +static const struct pinctrl_map ape6evm_pinctrl_map[] = {/* SCIFA0 console */ PIN_MAP_MUX_GROUP_DEFAULT("sh-sci.0", "pfc-r8a73a4",
@@ -61,6 +82,11 @@ static const struct pinctrl_map ape6evm_pinctrl_map[] = {/* SMSC */ PIN_MAP_MUX_GROUP_DEFAULT ("smsc911x" ,"pfc-r8a73a4" ,"irqc_irq40" ,"irqc" ), +/* MMCIF0 */ +PIN_MAP_MUX_GROUP_DEFAULT ("sh_mmcif.0" ,"pfc-r8a73a4" , +"mmc0_data8" ,"mmc0" ), +PIN_MAP_MUX_GROUP_DEFAULT ("sh_mmcif.0" ,"pfc-r8a73a4" , + "mmc0_ctrl", "mmc0"), };static void __init ape6evm_add_standard_devices (void )
@@ -93,6 +119,11 @@ static void __init ape6evm_add_standard_devices(void)platform_device_register_resndata (&platform_bus,"smsc911x" ,-1 , lan9220_res,ARRAY_SIZE (lan9220_res), &lan9220_data,sizeof (lan9220_data)); +regulator_register_always_on (1 ,"fixed-3.3V" , fixed3v3_power_consumers, +ARRAY_SIZE (fixed3v3_power_consumers),3300000 ); +platform_device_register_resndata (&platform_bus,"sh_mmcif" ,0 , + mmcif0_resources,ARRAY_SIZE (mmcif0_resources), + &mmcif0_pdata,sizeof (mmcif0_pdata)); }static const char *ape6evm_boards_compat_dt[]__initdata = {
Signature · 1 line
1.8.3.2
PATCH 4/5 ARM: shmobile: ape6evm: add MMCIF support
Hello.
Quoted 17 lines · Simon Horman
From: Guennadi Liakhovetski <[email protected]>
Add MMCIF support to the APE6EVM board in PIO mode only. Power supply is fixed for now, eventually support for the tps80032 regulator, also supplying both VDD and VccQ to the MMCIF slot should be added to APE6EVM.
Signed-off-by Guennadi Liakhovetski <[email protected]>Acked-by Magnus Damm <[email protected]>Signed-off-by Simon Horman <[email protected]>--- arch/arm/mach-shmobile/board-ape6evm.c | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+)arch/arm/mach-shmobile/board-ape6evm.c +0
-0
[...]
Quoted 1 line
arch/arm/mach-shmobile/board-ape6evm.c +0
-0@@ -54,6 +56,25 @@ static const struct smsc911x_platform_config lan9220_data = {
[...]
arch/arm/mach-shmobile/board-ape6evm.c static const struct smsc911x_platform_config lan9220_data = { · line 77
Quoted 10 lines
arch/arm/mach-shmobile/board-ape6evm.c +10
-0+/* MMCIF */ +static struct sh_mmcif_plat_data mmcif0_pdata = { + .caps =MMC_CAP_8_BIT_DATA |MMC_CAP_NONREMOVABLE , +}; + +static struct resource mmcif0_resources[] = { +DEFINE_RES_MEM_NAMED (0xee200000 ,0x100 ,"MMCIF0" ), +DEFINE_RES_IRQ (gic_spi (169 )), +}; +
The above needed '__initdata' too. And I have only noticed...
Quoted 3 lines
static const struct pinctrl_map ape6evm_pinctrl_map[] = {
/* SCIFA0 console */
PIN_MAP_MUX_GROUP_DEFAULT("sh-sci.0", "pfc-r8a73a4",[...]
arch/arm/mach-shmobile/board-ape6evm.c static void __init ape6evm_add_standard_devices(void) · line 127
Quoted 10 lines
arch/arm/mach-shmobile/board-ape6evm.c +5
-0@@ -93,6 +119,11 @@ static void __init ape6evm_add_standard_devices(void)platform_device_register_resndata (&platform_bus,"smsc911x" ,-1 , lan9220_res,ARRAY_SIZE (lan9220_res), &lan9220_data,sizeof (lan9220_data)); +regulator_register_always_on (1 ,"fixed-3.3V" , fixed3v3_power_consumers, +ARRAY_SIZE (fixed3v3_power_consumers),3300000 ); +platform_device_register_resndata (&platform_bus,"sh_mmcif" ,0 , + mmcif0_resources,ARRAY_SIZE (mmcif0_resources), + &mmcif0_pdata,sizeof (mmcif0_pdata)); }
WBR, Sergei
PATCH 4/5 ARM: shmobile: ape6evm: add MMCIF support
Quoted 24 lines · Sergei Shtylyov
Hello.
Quoted 17 lines · Simon Horman
From: Guennadi Liakhovetski <[email protected]>
Add MMCIF support to the APE6EVM board in PIO mode only. Power supply is fixed for now, eventually support for the tps80032 regulator, also supplying both VDD and VccQ to the MMCIF slot should be added to APE6EVM.
Signed-off-by Guennadi Liakhovetski <[email protected]>Acked-by Magnus Damm <[email protected]>Signed-off-by Simon Horman <[email protected]>--- arch/arm/mach-shmobile/board-ape6evm.c | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+)arch/arm/mach-shmobile/board-ape6evm.c +0
-0[...]
Quoted 1 line
arch/arm/mach-shmobile/board-ape6evm.c +0
-0@@ -54,6 +56,25 @@ static const struct smsc911x_platform_config lan9220_data = {[...]
Quoted 12 lines
arch/arm/mach-shmobile/board-ape6evm.c static const struct smsc911x_platform_config lan9220_data = { · line 77
Quoted 10 lines
arch/arm/mach-shmobile/board-ape6evm.c +10
-0+/* MMCIF */ +static struct sh_mmcif_plat_data mmcif0_pdata = { + .caps =MMC_CAP_8_BIT_DATA |MMC_CAP_NONREMOVABLE , +}; + +static struct resource mmcif0_resources[] = { +DEFINE_RES_MEM_NAMED (0xee200000 ,0x100 ,"MMCIF0" ), +DEFINE_RES_IRQ (gic_spi (169 )), +}; +The above needed '
__initdata' too. And I have only noticed...
Thanks again Sergei.
Guennadi,
as I have already queued-up this patch could you please
make an incremental patch that adds __initdata to the above structures?
Quoted 22 lines
Quoted 3 lines
static const struct
pinctrl_mapape6evm_pinctrl_map[] = {arch/arm/mach-shmobile/board-ape6evm.c +0
-0/* SCIFA0 console */ PIN_MAP_MUX_GROUP_DEFAULT("sh-sci.0", "pfc-r8a73a4",[...]
arch/arm/mach-shmobile/board-ape6evm.c static void __init ape6evm_add_standard_devices(void) · line 127
Quoted 10 lines
arch/arm/mach-shmobile/board-ape6evm.c +5
-0@@ -93,6 +119,11 @@ static void __init ape6evm_add_standard_devices(void)platform_device_register_resndata (&platform_bus,"smsc911x" ,-1 , lan9220_res,ARRAY_SIZE (lan9220_res), &lan9220_data,sizeof (lan9220_data)); +regulator_register_always_on (1 ,"fixed-3.3V" , fixed3v3_power_consumers, +ARRAY_SIZE (fixed3v3_power_consumers),3300000 ); +platform_device_register_resndata (&platform_bus,"sh_mmcif" ,0 , + mmcif0_resources,ARRAY_SIZE (mmcif0_resources), + &mmcif0_pdata,sizeof (mmcif0_pdata)); }WBR, Sergei
--
To unsubscribe from this list: send the line "unsubscribe linux-sh" in the body of a message to majordomo at vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
PATCH 5/5 ARM: shmobile: ape6evm: add SDHI interfaces
In reply to Simon HormanFrom: Guennadi Liakhovetski <[email protected]>
Add support for SDHI0 and SDHI1 on APE6EVM in PIO mode only.
--- arch/arm/mach-shmobile/board-ape6evm.c | 50 +++++++++++++++++++++++++++++++++- 1 file changed, 49 insertions(+), 1 deletion(-)
arch/arm/mach-shmobile/board-ape6evm.c +49 -1
@@ -21,8 +21,10 @@#include <linux/gpio.h> #include <linux/interrupt.h> #include <linux/kernel.h> +#include <linux/mfd/tmio.h> #include <linux/mmc/host.h> #include <linux/mmc/sh_mmcif.h> +#include <linux/mmc/sh_mobile_sdhi.h> #include <linux/pinctrl/machine.h> #include <linux/platform_device.h> #include <linux/regulator/fixed.h>
@@ -58,11 +60,16 @@ static const struct smsc911x_platform_config lan9220_data = {/* * On APE6EVM power is supplied to MMCIF by a tps80032 regulator. For now we -* model a VDD supply to MMCIF, using a fixed 3.3V regulator. +* model a VDD supply to MMCIF, using a fixed 3.3V regulator. Also use the +* static power supply for SDHI0 and SDHI1, whereas SDHI0's VccQ is also +* supplied by the same tps80032 regulator and thus can also be adjusted +* dynamically. */ static struct regulator_consumer_supply fixed3v3_power_consumers[] = {REGULATOR_SUPPLY ("vmmc" ,"sh_mmcif.0" ), +REGULATOR_SUPPLY ("vmmc" ,"sh_mobile_sdhi.0" ), +REGULATOR_SUPPLY ("vmmc" ,"sh_mobile_sdhi.1" ), };/* MMCIF */
@@ -75,6 +82,29 @@ static struct resource mmcif0_resources[] = { DEFINE_RES_IRQ(gic_spi(169)), }; +/* SDHI0 */ +static struct sh_mobile_sdhi_info sdhi0_pdata = { + .tmio_flags =TMIO_MMC_HAS_IDLE_WAIT |TMIO_MMC_WRPROTECT_DISABLE , + .tmio_caps =MMC_CAP_SD_HIGHSPEED |MMC_CAP_SDIO_IRQ , +}; + +static struct resource sdhi0_resources[] = { +DEFINE_RES_MEM_NAMED (0xee100000 ,0x100 ,"SDHI0" ), +DEFINE_RES_IRQ (gic_spi (165 )), +}; + +/* SDHI1 */ +static struct sh_mobile_sdhi_info sdhi1_pdata = { + .tmio_flags =TMIO_MMC_HAS_IDLE_WAIT |TMIO_MMC_WRPROTECT_DISABLE , + .tmio_caps =MMC_CAP_SD_HIGHSPEED |MMC_CAP_SDIO_IRQ | +MMC_CAP_NEEDS_POLL , +}; + +static struct resource sdhi1_resources[] = { +DEFINE_RES_MEM_NAMED (0xee120000 ,0x100 ,"SDHI1" ), +DEFINE_RES_IRQ (gic_spi (166 )), +}; +static const struct pinctrl_map ape6evm_pinctrl_map[] = {/* SCIFA0 console */ PIN_MAP_MUX_GROUP_DEFAULT("sh-sci.0", "pfc-r8a73a4",
@@ -87,6 +117,18 @@ static const struct pinctrl_map ape6evm_pinctrl_map[] = { "mmc0_data8", "mmc0"),PIN_MAP_MUX_GROUP_DEFAULT ("sh_mmcif.0" ,"pfc-r8a73a4" ,"mmc0_ctrl" ,"mmc0" ), +/* SDHI0: uSD: no WP */ +PIN_MAP_MUX_GROUP_DEFAULT ("sh_mobile_sdhi.0" ,"pfc-r8a73a4" , +"sdhi0_data4" ,"sdhi0" ), +PIN_MAP_MUX_GROUP_DEFAULT ("sh_mobile_sdhi.0" ,"pfc-r8a73a4" , +"sdhi0_ctrl" ,"sdhi0" ), +PIN_MAP_MUX_GROUP_DEFAULT ("sh_mobile_sdhi.0" ,"pfc-r8a73a4" , +"sdhi0_cd" ,"sdhi0" ), +/* SDHI1 */ +PIN_MAP_MUX_GROUP_DEFAULT ("sh_mobile_sdhi.1" ,"pfc-r8a73a4" , +"sdhi1_data4" ,"sdhi1" ), +PIN_MAP_MUX_GROUP_DEFAULT ("sh_mobile_sdhi.1" ,"pfc-r8a73a4" , + "sdhi1_ctrl", "sdhi1"), };static void __init ape6evm_add_standard_devices (void )
@@ -124,6 +166,12 @@ static void __init ape6evm_add_standard_devices(void)platform_device_register_resndata (&platform_bus,"sh_mmcif" ,0 , mmcif0_resources,ARRAY_SIZE (mmcif0_resources), &mmcif0_pdata,sizeof (mmcif0_pdata)); +platform_device_register_resndata (&platform_bus,"sh_mobile_sdhi" ,0 , + sdhi0_resources,ARRAY_SIZE (sdhi0_resources), + &sdhi0_pdata,sizeof (sdhi0_pdata)); +platform_device_register_resndata (&platform_bus,"sh_mobile_sdhi" ,1 , + sdhi1_resources,ARRAY_SIZE (sdhi1_resources), + &sdhi1_pdata,sizeof (sdhi1_pdata)); }static const char *ape6evm_boards_compat_dt[]__initdata = {
Signature · 1 line
1.8.3.2
PATCH 5/5 ARM: shmobile: ape6evm: add SDHI interfaces
Hello.
Quoted 14 lines · Simon Horman
From: Guennadi Liakhovetski <[email protected]>
Add support for SDHI0 and SDHI1 on APE6EVM in PIO mode only.
Signed-off-by Guennadi Liakhovetski <[email protected]>Signed-off-by Simon Horman <[email protected]>--- arch/arm/mach-shmobile/board-ape6evm.c | 50 +++++++++++++++++++++++++++++++++- 1 file changed, 49 insertions(+), 1 deletion(-)arch/arm/mach-shmobile/board-ape6evm.c +0
-0
[...]
Quoted 17 lines
arch/arm/mach-shmobile/board-ape6evm.c +13
-0@@ -75,6 +82,29 @@ static struct resource mmcif0_resources[] = { DEFINE_RES_IRQ(gic_spi(169)), }; +/* SDHI0 */ +static struct sh_mobile_sdhi_info sdhi0_pdata = { + .tmio_flags =TMIO_MMC_HAS_IDLE_WAIT |TMIO_MMC_WRPROTECT_DISABLE , + .tmio_caps =MMC_CAP_SD_HIGHSPEED |MMC_CAP_SDIO_IRQ , +}; + +static struct resource sdhi0_resources[] = { +DEFINE_RES_MEM_NAMED (0xee100000 ,0x100 ,"SDHI0" ), +DEFINE_RES_IRQ (gic_spi (165 )), +}; + +/* SDHI1 */ +static struct sh_mobile_sdhi_info sdhi1_pdata = {
arch/arm/mach-shmobile/board-ape6evm.c static struct resource mmcif0_resources[] = { · line 107
Quoted 10 lines
arch/arm/mach-shmobile/board-ape6evm.c +10
-0+ .tmio_flags = TMIO_MMC_HAS_IDLE_WAIT | TMIO_MMC_WRPROTECT_DISABLE, + .tmio_caps = MMC_CAP_SD_HIGHSPEED | MMC_CAP_SDIO_IRQ | + MMC_CAP_NEEDS_POLL, +}; + +static struct resource sdhi1_resources[] = { +DEFINE_RES_MEM_NAMED (0xee120000 ,0x100 ,"SDHI1" ), +DEFINE_RES_IRQ (gic_spi (166 )), +}; +
All of the above are lacking '__initdata' annothation (the resources and
platform data will be kmemdup()'ed when registering the platform devices). Too bad I've noticed this too late...
arch/arm/mach-shmobile/board-ape6evm.c static void __init ape6evm_add_standard_devices(void) · line 175
Quoted 11 lines
arch/arm/mach-shmobile/board-ape6evm.c +6
-0@@ -124,6 +166,12 @@ static void __init ape6evm_add_standard_devices(void)platform_device_register_resndata (&platform_bus,"sh_mmcif" ,0 , mmcif0_resources,ARRAY_SIZE (mmcif0_resources), &mmcif0_pdata,sizeof (mmcif0_pdata)); +platform_device_register_resndata (&platform_bus,"sh_mobile_sdhi" ,0 , + sdhi0_resources,ARRAY_SIZE (sdhi0_resources), + &sdhi0_pdata,sizeof (sdhi0_pdata)); +platform_device_register_resndata (&platform_bus,"sh_mobile_sdhi" ,1 , + sdhi1_resources,ARRAY_SIZE (sdhi1_resources), + &sdhi1_pdata,sizeof (sdhi1_pdata)); }
WBR, Sergei
PATCH 5/5 ARM: shmobile: ape6evm: add SDHI interfaces
Quoted 42 lines · Sergei Shtylyov
Hello.
Quoted 14 lines · Simon Horman
From: Guennadi Liakhovetski <[email protected]>
Add support for SDHI0 and SDHI1 on APE6EVM in PIO mode only.
Signed-off-by Guennadi Liakhovetski <[email protected]>Signed-off-by Simon Horman <[email protected]>--- arch/arm/mach-shmobile/board-ape6evm.c | 50 +++++++++++++++++++++++++++++++++- 1 file changed, 49 insertions(+), 1 deletion(-)arch/arm/mach-shmobile/board-ape6evm.c +0
-0[...]
Quoted 23 lines
arch/arm/mach-shmobile/board-ape6evm.c +19
-0@@ -75,6 +82,29 @@ static struct resource mmcif0_resources[] = { DEFINE_RES_IRQ(gic_spi(169)), }; +/* SDHI0 */ +static struct sh_mobile_sdhi_info sdhi0_pdata = { + .tmio_flags =TMIO_MMC_HAS_IDLE_WAIT |TMIO_MMC_WRPROTECT_DISABLE , + .tmio_caps =MMC_CAP_SD_HIGHSPEED |MMC_CAP_SDIO_IRQ , +}; + +static struct resource sdhi0_resources[] = { +DEFINE_RES_MEM_NAMED (0xee100000 ,0x100 ,"SDHI0" ), +DEFINE_RES_IRQ (gic_spi (165 )), +}; + +/* SDHI1 */ +static struct sh_mobile_sdhi_info sdhi1_pdata = { + .tmio_flags =TMIO_MMC_HAS_IDLE_WAIT |TMIO_MMC_WRPROTECT_DISABLE , + .tmio_caps =MMC_CAP_SD_HIGHSPEED |MMC_CAP_SDIO_IRQ | +MMC_CAP_NEEDS_POLL , +}; + +static struct resource sdhi1_resources[] = {
Quoted 8 lines
arch/arm/mach-shmobile/board-ape6evm.c static struct resource mmcif0_resources[] = { · line 107
Quoted 4 lines
arch/arm/mach-shmobile/board-ape6evm.c +4
-0+DEFINE_RES_MEM_NAMED (0xee120000 ,0x100 ,"SDHI1" ), + DEFINE_RES_IRQ(gic_spi(166)), +}; +All of the above are lacking '
__initdata' annothation (the
resources and platform data will be kmemdup()'ed when registering the platform devices). Too bad I've noticed this too late...
Thanks Sergei.
Guennadi,
as I have already queued-up this patch could you please
make an incremental patch that adds __initdata to the above structures?
Quoted 20 lines
arch/arm/mach-shmobile/board-ape6evm.c static void __init ape6evm_add_standard_devices(void) · line 175
Quoted 12 lines
arch/arm/mach-shmobile/board-ape6evm.c +6
-0@@ -124,6 +166,12 @@ static void __init ape6evm_add_standard_devices(void)platform_device_register_resndata (&platform_bus,"sh_mmcif" ,0 , mmcif0_resources,ARRAY_SIZE (mmcif0_resources), &mmcif0_pdata,sizeof (mmcif0_pdata)); +platform_device_register_resndata (&platform_bus,"sh_mobile_sdhi" ,0 , + sdhi0_resources,ARRAY_SIZE (sdhi0_resources), + &sdhi0_pdata,sizeof (sdhi0_pdata)); +platform_device_register_resndata (&platform_bus,"sh_mobile_sdhi" ,1 , + sdhi1_resources,ARRAY_SIZE (sdhi1_resources), + &sdhi1_pdata,sizeof (sdhi1_pdata)); }WBR, Sergei
--
To unsubscribe from this list: send the line "unsubscribe linux-sh" in the body of a message to majordomo at vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
cover Renesas ARM-based SoC board updates for v3.12
In reply to Simon HormanQuoted 6 lines · Simon Horman
Hi Olof, Hi Arnd,
please consider these Renesas ARM-based SoC board updates for v3.12. This pull-request is based on renesas-soc-for-v3.12 which I have previously sent a pull-request for.
Quoted 7 lines
The following changes since commit
81b9d5351fa96caad4accc6711bc1b9342927d4a:ARM: shmobile: Setup r8a7790 arch timer based on MD pins (2013-07-17 14:26:56 +0900)
are available in the git repository at:
git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas.gitboards
Hi, can I get a tag for this please?
Also, your subject says [PATCH 0/5], which might make me miss it. Please label it [GIT PULL] if you don't mind?
-Olof
cover Renesas ARM-based SoC board updates for v3.12
Quoted 9 lines · Olof Johansson
Quoted 8 lines · Simon Horman
Hi Olof, Hi Arnd,
please consider these Renesas ARM-based SoC board updates for v3.12. This pull-request is based on renesas-soc-for-v3.12 which I have previously sent a pull-request for.
The following changes since commit
81b9d5351fa96caad4accc6711bc1b9342927d4a:
Quoted 7 lines
Quoted 5 lines
ARM: shmobile: Setup r8a7790 arch timer based on MD pins (2013-07-17 14:26:56 +0900)
are available in the git repository at:
git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas.gitboardsHi, can I get a tag for this please?
Sorry for not posing that the first time around.
It is renesas-boards-for-v3.12.
Quoted 2 lines
Also, your subject says [PATCH 0/5], which might make me miss it. Please label it [GIT PULL] if you don't mind?
Sure, will do.
cover Renesas ARM-based SoC board updates for v3.12
Quoted 12 lines · Simon Horman
Quoted 11 lines · Olof Johansson
Quoted 10 lines · Simon Horman
Hi Olof, Hi Arnd,
please consider these Renesas ARM-based SoC board updates for v3.12. This pull-request is based on renesas-soc-for-v3.12 which I have previously sent a pull-request for.
The following changes since commit
81b9d5351fa96caad4accc6711bc1b9342927d4a:ARM: shmobile: Setup r8a7790 arch timer based on MD pins (2013-07-17 14:26:56 +0900)
Quoted 8 lines
Quoted 5 lines
Quoted 3 lines
are available in the git repository at:
git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas.gitboardsHi, can I get a tag for this please?
Sorry for not posing that the first time around.
It is renesas-boards-for-v3.12.
Pulled.
-Olof