ARM : i.MX27 : split code for allocation of ressources of camera and eMMA
Subsystems (3)
PATCH v2 1/1 ARM : i.MX27 : split code for allocation of ressources of camera and eMMA
Hi,
This is to prepare addition of m2m-emmapp driver otherwise
IMX_HAVE_PLATFORM_MX2_CAMERA must be declared even if only Post-Processor
is needed.
IMX_HAVE_PLATFORM_MX2_EMMA define has been added.
Changes since v1:
- Add "select IMX_HAVE_PLATFORM_MX2_EMMA" for MACH_IMX27_VISSTRIM_M10 platform due to pending patch in linux-media tree that will call imx27_add_mx2_emmaprp().
--- arch/arm/mach-imx/Kconfig | 1 + arch/arm/mach-imx/devices-imx27.h | 4 ++- arch/arm/plat-mxc/devices/Kconfig | 3 ++ arch/arm/plat-mxc/devices/Makefile | 1 + arch/arm/plat-mxc/devices/platform-mx2-camera.c | 17 --------- arch/arm/plat-mxc/devices/platform-mx2-emma.c | 41 +++++++++++++++++++++++ arch/arm/plat-mxc/include/mach/devices-common.h | 9 ++++- 7 files changed, 57 insertions(+), 19 deletions(-) create mode 100644 arch/arm/plat-mxc/devices/platform-mx2-emma.c
arch/arm/mach-imx/Kconfig +1 -0
@@ -322,6 +322,7 @@ config MACH_IMX27_VISSTRIM_M10 select IMX_HAVE_PLATFORM_IMX_SSI select IMX_HAVE_PLATFORM_IMX_UART select IMX_HAVE_PLATFORM_MX2_CAMERA + select IMX_HAVE_PLATFORM_MX2_EMMA select IMX_HAVE_PLATFORM_MXC_EHCI select IMX_HAVE_PLATFORM_MXC_MMC select LEDS_GPIO_REGISTER
arch/arm/mach-imx/devices-imx27.h +3 -1
@@ -54,8 +54,10 @@ extern const struct imx_imx_uart_1irq_data imx27_imx_uart_data[];extern const struct imx_mx2_camera_data imx27_mx2_camera_data;#define imx27_add_mx2_camera (pdata) \ imx_add_mx2_camera(&imx27_mx2_camera_data, pdata) + +extern const struct imx_mx2_emma_data imx27_mx2_emmaprp_data;#define imx27_add_mx2_emmaprp () \ - imx_add_mx2_emmaprp(&imx27_mx2_camera_data) + imx_add_mx2_emmaprp(&imx27_mx2_emmaprp_data)extern const struct imx_mxc_ehci_data imx27_mxc_ehci_otg_data;#define imx27_add_mxc_ehci_otg (pdata) \
arch/arm/plat-mxc/devices/Kconfig +3 -0
@@ -56,6 +56,9 @@ config IMX_HAVE_PLATFORM_MX1_CAMERA config IMX_HAVE_PLATFORM_MX2_CAMERA bool +config IMX_HAVE_PLATFORM_MX2_EMMA + bool + config IMX_HAVE_PLATFORM_MXC_EHCI bool
arch/arm/plat-mxc/devices/Makefile +1 -0
@@ -28,3 +28,4 @@ obj-$(CONFIG_IMX_HAVE_PLATFORM_MXC_W1) += platform-mxc_w1.o obj-$(CONFIG_IMX_HAVE_PLATFORM_SDHCI_ESDHC_IMX) += platform-sdhci-esdhc-imx.o obj-$(CONFIG_IMX_HAVE_PLATFORM_SPI_IMX) += platform-spi_imx.o obj-$(CONFIG_IMX_HAVE_PLATFORM_AHCI) += platform-ahci-imx.o +obj-$(CONFIG_IMX_HAVE_PLATFORM_MX2_EMMA) += platform-mx2-emma.o
arch/arm/plat-mxc/devices/platform-mx2-camera.c +0 -17
@@ -63,20 +63,3 @@ struct platform_device *__init imx_add_mx2_camera( pdata, sizeof(*pdata), DMA_BIT_MASK(32)); } -struct platform_device *__init imx_add_mx2_emmaprp ( -const struct imx_mx2_camera_data *data) -{ -struct resource res[] = { - { - .start = data->iobaseemmaprp, - .end = data->iobaseemmaprp + data->iosizeemmaprp -1 , - .flags =IORESOURCE_MEM , - }, { - .start = data->irqemmaprp, - .end = data->irqemmaprp, - .flags =IORESOURCE_IRQ , - }, - }; -return imx_add_platform_device_dmamask ("m2m-emmaprp" ,0 , - res,2 ,NULL ,0 ,DMA_BIT_MASK (32 )); -}
arch/arm/plat-mxc/devices/platform-mx2-emma.c new file +41 -0
41 lines not on this page · raw message
arch/arm/plat-mxc/include/mach/devices-common.h +8 -1
@@ -229,8 +229,15 @@ struct imx_mx2_camera_data {struct platform_device *__init imx_add_mx2_camera (const struct imx_mx2_camera_data *data,const struct mx2_camera_platform_data *pdata); + + +struct imx_mx2_emma_data { +resource_size_t iobase; +resource_size_t iosize; +resource_size_t irq; +};struct platform_device *__init imx_add_mx2_emmaprp ( -const struct imx_mx2_camera_data *data); +const struct imx_mx2_emma_data *data);#include <mach/mxc_ehci.h> struct imx_mxc_ehci_data {
Signature · 1 line
1.7.7.4
Sascha Hauer
maintainerPATCH v2 1/1 ARM : i.MX27 : split code for allocation of ressources of camera and eMMA
Hi Javier,
Since you worked in this area recently, can I have your Ack on this?
As a side note: Please be prepared that all this should be removed in the not-so-far future. It would be good if you start converting your boards to devicetree soon. You may be doing so internally already, I don't know.
Thanks
Sascha
Quoted 172 lines · Ga?tan Carlier
Hi,
This is to prepare addition of m2m-emmapp driver otherwise
IMX_HAVE_PLATFORM_MX2_CAMERAmust be declared even if only Post-Processor
is needed.
IMX_HAVE_PLATFORM_MX2_EMMAdefine has been added.Changes since v1:
- Add "selectIMX_HAVE_PLATFORM_MX2_EMMA" forMACH_IMX27_VISSTRIM_M10platform due to pending patch in linux-media tree that will callimx27_add_mx2_emmaprp().Signed-off-by Ga?tan Carlier <[email protected]>--- arch/arm/mach-imx/Kconfig | 1 + arch/arm/mach-imx/devices-imx27.h | 4 ++- arch/arm/plat-mxc/devices/Kconfig | 3 ++ arch/arm/plat-mxc/devices/Makefile | 1 + arch/arm/plat-mxc/devices/platform-mx2-camera.c | 17 --------- arch/arm/plat-mxc/devices/platform-mx2-emma.c | 41 +++++++++++++++++++++++ arch/arm/plat-mxc/include/mach/devices-common.h | 9 ++++- 7 files changed, 57 insertions(+), 19 deletions(-) create mode 100644 arch/arm/plat-mxc/devices/platform-mx2-emma.carch/arm/mach-imx/Kconfig +1
-0@@ -322,6 +322,7 @@ config MACH_IMX27_VISSTRIM_M10 select IMX_HAVE_PLATFORM_IMX_SSI select IMX_HAVE_PLATFORM_IMX_UART select IMX_HAVE_PLATFORM_MX2_CAMERA + select IMX_HAVE_PLATFORM_MX2_EMMA select IMX_HAVE_PLATFORM_MXC_EHCI select IMX_HAVE_PLATFORM_MXC_MMC select LEDS_GPIO_REGISTERarch/arm/mach-imx/devices-imx27.h +3
-1@@ -54,8 +54,10 @@ extern const struct imx_imx_uart_1irq_data imx27_imx_uart_data[];extern const struct imx_mx2_camera_data imx27_mx2_camera_data;#define imx27_add_mx2_camera (pdata) \ imx_add_mx2_camera(&imx27_mx2_camera_data, pdata) + +extern const struct imx_mx2_emma_data imx27_mx2_emmaprp_data;#define imx27_add_mx2_emmaprp () \ - imx_add_mx2_emmaprp(&imx27_mx2_camera_data) + imx_add_mx2_emmaprp(&imx27_mx2_emmaprp_data)extern const struct imx_mxc_ehci_data imx27_mxc_ehci_otg_data;#define imx27_add_mxc_ehci_otg (pdata) \arch/arm/plat-mxc/devices/Kconfig +3
-0@@ -56,6 +56,9 @@ config IMX_HAVE_PLATFORM_MX1_CAMERA config IMX_HAVE_PLATFORM_MX2_CAMERA bool +config IMX_HAVE_PLATFORM_MX2_EMMA + bool + config IMX_HAVE_PLATFORM_MXC_EHCI boolarch/arm/plat-mxc/devices/Makefile +1
-0@@ -28,3 +28,4 @@ obj-$(CONFIG_IMX_HAVE_PLATFORM_MXC_W1) += platform-mxc_w1.o obj-$(CONFIG_IMX_HAVE_PLATFORM_SDHCI_ESDHC_IMX) += platform-sdhci-esdhc-imx.o obj-$(CONFIG_IMX_HAVE_PLATFORM_SPI_IMX) += platform-spi_imx.o obj-$(CONFIG_IMX_HAVE_PLATFORM_AHCI) += platform-ahci-imx.o +obj-$(CONFIG_IMX_HAVE_PLATFORM_MX2_EMMA) += platform-mx2-emma.oarch/arm/plat-mxc/devices/platform-mx2-camera.c +0
-17@@ -63,20 +63,3 @@ struct platform_device *__init imx_add_mx2_camera( pdata, sizeof(*pdata), DMA_BIT_MASK(32)); } -struct platform_device *__init imx_add_mx2_emmaprp ( -const struct imx_mx2_camera_data *data) -{ -struct resource res[] = { - { - .start = data->iobaseemmaprp, - .end = data->iobaseemmaprp + data->iosizeemmaprp -1 , - .flags =IORESOURCE_MEM , - }, { - .start = data->irqemmaprp, - .end = data->irqemmaprp, - .flags =IORESOURCE_IRQ , - }, - }; -return imx_add_platform_device_dmamask ("m2m-emmaprp" ,0 , - res,2 ,NULL ,0 ,DMA_BIT_MASK (32 )); -}arch/arm/plat-mxc/devices/platform-mx2-emma.c new file +41
-0@@ -0,0 +1,41 @@ +/* +* Copyright (C) 2010 Pengutronix +* Uwe Kleine-Koenig <[email protected]> +* +* This program is free software; you can redistribute it and/or modify it under +* the terms of the GNU General Public License version 2 as published by the +* Free Software Foundation. +*/ +#include <mach/hardware.h> +#include <mach/devices-common.h> + +#define imx_mx2_emmaprp_data_entry_single (soc) \ + { \ + .iobase = soc ## _EMMAPRP_BASE_ADDR, \ + .iosize = SZ_32, \ + .irq = soc ## _INT_EMMAPRP, \ + } + +#ifdef CONFIG_SOC_IMX27 +const struct imx_mx2_emma_data imx27_mx2_emmaprp_data__initconst = +imx_mx2_emmaprp_data_entry_single (MX27 ); +#endif /* ifdef CONFIG_SOC_IMX27 */ + +struct platform_device *__init imx_add_mx2_emmaprp ( +const struct imx_mx2_emma_data *data) +{ +struct resource res[] = { + { + .start = data->iobase, + .end = data->iobase + data->iosize -1 , + .flags =IORESOURCE_MEM , + }, { + .start = data->irq, + .end = data->irq, + .flags =IORESOURCE_IRQ , + }, + }; +return imx_add_platform_device_dmamask ("m2m-emmaprp" ,0 , + res,2 ,NULL ,0 ,DMA_BIT_MASK (32 )); +} +arch/arm/plat-mxc/include/mach/devices-common.h +8
-1@@ -229,8 +229,15 @@ struct imx_mx2_camera_data {struct platform_device *__init imx_add_mx2_camera (const struct imx_mx2_camera_data *data,const struct mx2_camera_platform_data *pdata); + + +struct imx_mx2_emma_data { +resource_size_t iobase; +resource_size_t iosize; +resource_size_t irq; +};struct platform_device *__init imx_add_mx2_emmaprp ( -const struct imx_mx2_camera_data *data); +const struct imx_mx2_emma_data *data);#include <mach/mxc_ehci.h> struct imx_mxc_ehci_data {Signature · 1 line
1.7.7.4
Signature · 4 lines
Pengutronix e.K. | | Industrial Linux Solutions | http://www.pengutronix.de/ | Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0 | Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 |
PATCH v2 1/1 ARM : i.MX27 : split code for allocation of ressources of camera and eMMA
Hi,
Quoted 3 lines · Sascha Hauer
Hi Javier,
Since you worked in this area recently, can I have your Ack on this?
Quoted 4 lines
As a side note: Please be prepared that all this should be removed in the not-so-far future. It would be good if you start converting your boards to devicetree soon. You may be doing so internally already, I don't know.
We made some tests regarding devicetree this summer but we found that there are some things missing yet:
- pinctrl
- soc-camera and video sensor
I don't know if people from Linaro is planning to deal with pinctrl for i.MX27 or not.
Quoted 174 lines
Thanks
SaschaQuoted 170 lines · Ga?tan Carlier
Hi,
This is to prepare addition of m2m-emmapp driver otherwise
IMX_HAVE_PLATFORM_MX2_CAMERAmust be declared even if only Post-Processor
is needed.
IMX_HAVE_PLATFORM_MX2_EMMAdefine has been added.Changes since v1:
- Add "selectIMX_HAVE_PLATFORM_MX2_EMMA" forMACH_IMX27_VISSTRIM_M10platform due to pending patch in linux-media tree that will callimx27_add_mx2_emmaprp().Signed-off-by Ga?tan Carlier <[email protected]>--- arch/arm/mach-imx/Kconfig | 1 + arch/arm/mach-imx/devices-imx27.h | 4 ++- arch/arm/plat-mxc/devices/Kconfig | 3 ++ arch/arm/plat-mxc/devices/Makefile | 1 + arch/arm/plat-mxc/devices/platform-mx2-camera.c | 17 --------- arch/arm/plat-mxc/devices/platform-mx2-emma.c | 41 +++++++++++++++++++++++ arch/arm/plat-mxc/include/mach/devices-common.h | 9 ++++- 7 files changed, 57 insertions(+), 19 deletions(-) create mode 100644 arch/arm/plat-mxc/devices/platform-mx2-emma.carch/arm/mach-imx/Kconfig +1
-0@@ -322,6 +322,7 @@ config MACH_IMX27_VISSTRIM_M10 select IMX_HAVE_PLATFORM_IMX_SSI select IMX_HAVE_PLATFORM_IMX_UART select IMX_HAVE_PLATFORM_MX2_CAMERA + select IMX_HAVE_PLATFORM_MX2_EMMA select IMX_HAVE_PLATFORM_MXC_EHCI select IMX_HAVE_PLATFORM_MXC_MMC select LEDS_GPIO_REGISTERarch/arm/mach-imx/devices-imx27.h +3
-1@@ -54,8 +54,10 @@ extern const struct imx_imx_uart_1irq_data imx27_imx_uart_data[];extern const struct imx_mx2_camera_data imx27_mx2_camera_data;#define imx27_add_mx2_camera (pdata) \ imx_add_mx2_camera(&imx27_mx2_camera_data, pdata) + +extern const struct imx_mx2_emma_data imx27_mx2_emmaprp_data;#define imx27_add_mx2_emmaprp () \ - imx_add_mx2_emmaprp(&imx27_mx2_camera_data) + imx_add_mx2_emmaprp(&imx27_mx2_emmaprp_data)extern const struct imx_mxc_ehci_data imx27_mxc_ehci_otg_data;#define imx27_add_mxc_ehci_otg (pdata) \arch/arm/plat-mxc/devices/Kconfig +3
-0@@ -56,6 +56,9 @@ config IMX_HAVE_PLATFORM_MX1_CAMERA config IMX_HAVE_PLATFORM_MX2_CAMERA bool +config IMX_HAVE_PLATFORM_MX2_EMMA + bool + config IMX_HAVE_PLATFORM_MXC_EHCI boolarch/arm/plat-mxc/devices/Makefile +1
-0@@ -28,3 +28,4 @@ obj-$(CONFIG_IMX_HAVE_PLATFORM_MXC_W1) += platform-mxc_w1.o obj-$(CONFIG_IMX_HAVE_PLATFORM_SDHCI_ESDHC_IMX) += platform-sdhci-esdhc-imx.o obj-$(CONFIG_IMX_HAVE_PLATFORM_SPI_IMX) += platform-spi_imx.o obj-$(CONFIG_IMX_HAVE_PLATFORM_AHCI) += platform-ahci-imx.o +obj-$(CONFIG_IMX_HAVE_PLATFORM_MX2_EMMA) += platform-mx2-emma.oarch/arm/plat-mxc/devices/platform-mx2-camera.c +0
-17@@ -63,20 +63,3 @@ struct platform_device *__init imx_add_mx2_camera( pdata, sizeof(*pdata), DMA_BIT_MASK(32)); } -struct platform_device *__init imx_add_mx2_emmaprp ( -const struct imx_mx2_camera_data *data) -{ -struct resource res[] = { - { - .start = data->iobaseemmaprp, - .end = data->iobaseemmaprp + data->iosizeemmaprp -1 , - .flags =IORESOURCE_MEM , - }, { - .start = data->irqemmaprp, - .end = data->irqemmaprp, - .flags =IORESOURCE_IRQ , - }, - }; -return imx_add_platform_device_dmamask ("m2m-emmaprp" ,0 , - res,2 ,NULL ,0 ,DMA_BIT_MASK (32 )); -}arch/arm/plat-mxc/devices/platform-mx2-emma.c new file +41
-0@@ -0,0 +1,41 @@ +/* +* Copyright (C) 2010 Pengutronix +* Uwe Kleine-Koenig <[email protected]> +* +* This program is free software; you can redistribute it and/or modify it under +* the terms of the GNU General Public License version 2 as published by the +* Free Software Foundation. +*/ +#include <mach/hardware.h> +#include <mach/devices-common.h> + +#define imx_mx2_emmaprp_data_entry_single (soc) \ + { \ + .iobase = soc ## _EMMAPRP_BASE_ADDR, \ + .iosize = SZ_32, \ + .irq = soc ## _INT_EMMAPRP, \ + } + +#ifdef CONFIG_SOC_IMX27 +const struct imx_mx2_emma_data imx27_mx2_emmaprp_data__initconst = +imx_mx2_emmaprp_data_entry_single (MX27 ); +#endif /* ifdef CONFIG_SOC_IMX27 */ + +struct platform_device *__init imx_add_mx2_emmaprp ( +const struct imx_mx2_emma_data *data) +{ +struct resource res[] = { + { + .start = data->iobase, + .end = data->iobase + data->iosize -1 , + .flags =IORESOURCE_MEM , + }, { + .start = data->irq, + .end = data->irq, + .flags =IORESOURCE_IRQ , + }, + }; +return imx_add_platform_device_dmamask ("m2m-emmaprp" ,0 , + res,2 ,NULL ,0 ,DMA_BIT_MASK (32 )); +} +arch/arm/plat-mxc/include/mach/devices-common.h +8
-2@@ -229,8 +229,15 @@ struct imx_mx2_camera_data {struct platform_device *__init imx_add_mx2_camera (const struct imx_mx2_camera_data *data,const struct mx2_camera_platform_data *pdata); + + +struct imx_mx2_emma_data { +resource_size_t iobase; +resource_size_t iosize; +resource_size_t irq; +};struct platform_device *__init imx_add_mx2_emmaprp ( -const struct imx_mx2_camera_data *data); +const struct imx_mx2_emma_data *data);#include <mach/mxc_ehci.h> struct imx_mxc_ehci_data { --1.7.7.4
Signature · 7 lines
Javier Martin Vista Silicon S.L. CDTUC - FASE C - Oficina S-345 Avda de los Castros s/n 39005- Santander. Cantabria. Spain +34 942 25 32 60 www.vista-silicon.com
Sascha Hauer
maintainerPATCH v2 1/1 ARM : i.MX27 : split code for allocation of ressources of camera and eMMA
Quoted 8 lines · javier Martin
Hi,
Quoted 3 lines · Sascha Hauer
Hi Javier,
Since you worked in this area recently, can I have your Ack on this?
Acked-by Javier Martin <[email protected]>
Thanks
Quoted 6 lines
Quoted 5 lines
As a side note: Please be prepared that all this should be removed in the not-so-far future. It would be good if you start converting your boards to devicetree soon. You may be doing so internally already, I don't know.
Quoted 7 lines
We made some tests regarding devicetree this summer but we found that there are some things missing yet:
- pinctrl
- soc-camera and video sensorI don't know if people from Linaro is planning to deal with pinctrl for i.MX27 or not.
I don't think Linaro will do anything for the older i.MX like the i.MX27. With soc-camera I'm optimistic that someone will come up with patches soon.
Sascha
Signature · 4 lines
Pengutronix e.K. | | Industrial Linux Solutions | http://www.pengutronix.de/ | Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0 | Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 |
PATCH v2 1/1 ARM : i.MX27 : split code for allocation of ressources of camera and eMMA
Hi Sascha,
Quoted 11 lines · Sascha Hauer
Quoted 8 lines · javier Martin
Hi,
Quoted 3 lines · Sascha Hauer
Hi Javier,
Since you worked in this area recently, can I have your Ack on this?
Acked-by Javier Martin <[email protected]>Thanks
This patch is missing in next-20121008 and seems to be never committed. Is there any reason ?
Quoted 12 lines
Quoted 12 lines
Quoted 6 lines
As a side note: Please be prepared that all this should be removed in the not-so-far future. It would be good if you start converting your boards to devicetree soon. You may be doing so internally already, I don't know.
We made some tests regarding devicetree this summer but we found that there are some things missing yet:
- pinctrl
- soc-camera and video sensor
Quoted 9 lines
Quoted 2 lines
I don't know if people from Linaro is planning to deal with pinctrl for i.MX27 or not.
I don't think Linaro will do anything for the older i.MX like the i.MX27. With soc-camera I'm optimistic that someone will come up with patches soon.
Sascha
Thank you.
Best regards,
Ga?tan Carlier.
Sascha Hauer
maintainerPATCH v2 1/1 ARM : i.MX27 : split code for allocation of ressources of camera and eMMA
Quoted 8 lines · Ga?tan Carlier
Hi Sascha,
Quoted 6 lines · Sascha Hauer
Quoted 5 lines · javier Martin
Hi,
Quoted 2 lines · Sascha Hauer
Hi Javier,
Quoted 7 lines
Quoted 5 lines
Quoted 3 lines
Quoted 1 line
Since you worked in this area recently, can I have your Ack on this?
Acked-by Javier Martin <[email protected]>Thanks
This patch is missing in next-20121008 and seems to be never committed. Is there any reason ?
Sorry, I simply missed to apply it :(
Did that now.
Sascha
Quoted 25 lines
Quoted 12 lines
Quoted 12 lines
Quoted 6 lines
As a side note: Please be prepared that all this should be removed in the not-so-far future. It would be good if you start converting your boards to devicetree soon. You may be doing so internally already, I don't know.
We made some tests regarding devicetree this summer but we found that there are some things missing yet:
- pinctrl
- soc-camera and video sensorQuoted 9 lines
Quoted 2 lines
I don't know if people from Linaro is planning to deal with pinctrl for i.MX27 or not.
I don't think Linaro will do anything for the older i.MX like the i.MX27. With soc-camera I'm optimistic that someone will come up with patches soon.
Sascha
Thank you.
Best regards,
Ga?tan Carlier.
Signature · 4 lines
Pengutronix e.K. | | Industrial Linux Solutions | http://www.pengutronix.de/ | Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0 | Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 |