i.MX multi SoC patches
Sascha Hauer
s.hauer at pengutronix.de
Thu Aug 25 02:38:34 EDT 2011
Hi Héctor,
On Thu, Aug 25, 2011 at 01:03:55AM +0200, Hector Oron wrote:
> Hello Sascha,
>
> 2011/8/24 Sascha Hauer <s.hauer at pengutronix.de>:
> > This is hopefully the last iteration of the patches for compiling
> > all ARMv4/v5 based i.MXs together. CONFIG_ARM_PATCH_PHYS_VIRT
> > lost its experimental status and we can still build uImages
> > even with CONFIG_AUTO_ZRELADDR enabled. This series selects
> > these options and makes a multi SoC image the default.
> > Also, we can now build all i.MX5 SoCs into a single image.
> > This series also updates the defconfigs.
>
> Thanks very much for doing this work, it is very much appreciated.
Yeah, here too ;) I hope we can get more compile and test coverage
with less effort now.
> I have not yet been able to test this work at runtime, but I have
> attempted to compile
> your branch 'imx-features' which seems to keep all this work. I have
> noticed a name
> clashing producing the following compile time error:
>
> arch/arm/plat-mxc/devices/platform-pata_imx.c:33: error:
> ‘MX51_INT_ATA’ undeclared here (not in a function)
>
> Lurking a bit in the archive I noticed that Uwe patch
> <http://patchwork.ozlabs.org/patch/106633/> it is assumed, but not applied.
> Attached there is a refreshed patch which applies to your 'imx-features' branch.
>
Looks good. Can you resend this with correct author information and your
Signed-off-by please?
Thanks
Sascha
> With kind regards,
> --
> Héctor Orón -.. . -... .. .- -. -.. . ...- . .-.. --- .--. . .-.
> diff --git a/arch/arm/mach-mx5/clock-mx51-mx53.c b/arch/arm/mach-mx5/clock-mx51-mx53.c
> index afecd78ce..2b9bd1f 100644
> --- a/arch/arm/mach-mx5/clock-mx51-mx53.c
> +++ b/arch/arm/mach-mx5/clock-mx51-mx53.c
> @@ -1573,7 +1573,7 @@ int __init mx51_clocks_init(unsigned long ckil, unsigned long osc,
>
> /* System timer */
> mxc_timer_init(&gpt_clk, MX51_IO_ADDRESS(MX51_GPT1_BASE_ADDR),
> - MX51_MXC_INT_GPT);
> + MX51_INT_GPT);
> return 0;
> }
>
> diff --git a/arch/arm/mach-mx5/devices.c b/arch/arm/mach-mx5/devices.c
> index 371ca8c..5fd8f0c 100644
> --- a/arch/arm/mach-mx5/devices.c
> +++ b/arch/arm/mach-mx5/devices.c
> @@ -23,8 +23,8 @@ static struct resource mxc_hsi2c_resources[] = {
> .flags = IORESOURCE_MEM,
> },
> {
> - .start = MX51_MXC_INT_HS_I2C,
> - .end = MX51_MXC_INT_HS_I2C,
> + .start = MX51_INT_HS_I2C,
> + .end = MX51_INT_HS_I2C,
> .flags = IORESOURCE_IRQ,
> },
> };
> @@ -45,7 +45,7 @@ static struct resource usbotg_resources[] = {
> .flags = IORESOURCE_MEM,
> },
> {
> - .start = MX51_MXC_INT_USB_OTG,
> + .start = MX51_INT_USB_OTG,
> .flags = IORESOURCE_IRQ,
> },
> };
> @@ -80,7 +80,7 @@ static struct resource usbh1_resources[] = {
> .flags = IORESOURCE_MEM,
> },
> {
> - .start = MX51_MXC_INT_USB_H1,
> + .start = MX51_INT_USB_H1,
> .flags = IORESOURCE_IRQ,
> },
> };
> @@ -103,7 +103,7 @@ static struct resource usbh2_resources[] = {
> .flags = IORESOURCE_MEM,
> },
> {
> - .start = MX51_MXC_INT_USB_H2,
> + .start = MX51_INT_USB_H2,
> .flags = IORESOURCE_IRQ,
> },
> };
> diff --git a/arch/arm/mach-mx5/mm.c b/arch/arm/mach-mx5/mm.c
> index baea6e5..fcc5c4c 100644
> --- a/arch/arm/mach-mx5/mm.c
> +++ b/arch/arm/mach-mx5/mm.c
> @@ -141,10 +141,10 @@ static struct sdma_platform_data imx53_sdma_pdata __initdata = {
> void __init imx51_soc_init(void)
> {
> /* i.mx51 has the i.mx31 type gpio */
> - mxc_register_gpio("imx31-gpio", 0, MX51_GPIO1_BASE_ADDR, SZ_16K, MX51_MXC_INT_GPIO1_LOW, MX51_MXC_INT_GPIO1_HIGH);
> - mxc_register_gpio("imx31-gpio", 1, MX51_GPIO2_BASE_ADDR, SZ_16K, MX51_MXC_INT_GPIO2_LOW, MX51_MXC_INT_GPIO2_HIGH);
> - mxc_register_gpio("imx31-gpio", 2, MX51_GPIO3_BASE_ADDR, SZ_16K, MX51_MXC_INT_GPIO3_LOW, MX51_MXC_INT_GPIO3_HIGH);
> - mxc_register_gpio("imx31-gpio", 3, MX51_GPIO4_BASE_ADDR, SZ_16K, MX51_MXC_INT_GPIO4_LOW, MX51_MXC_INT_GPIO4_HIGH);
> + mxc_register_gpio("imx31-gpio", 0, MX51_GPIO1_BASE_ADDR, SZ_16K, MX51_INT_GPIO1_LOW, MX51_INT_GPIO1_HIGH);
> + mxc_register_gpio("imx31-gpio", 1, MX51_GPIO2_BASE_ADDR, SZ_16K, MX51_INT_GPIO2_LOW, MX51_INT_GPIO2_HIGH);
> + mxc_register_gpio("imx31-gpio", 2, MX51_GPIO3_BASE_ADDR, SZ_16K, MX51_INT_GPIO3_LOW, MX51_INT_GPIO3_HIGH);
> + mxc_register_gpio("imx31-gpio", 3, MX51_GPIO4_BASE_ADDR, SZ_16K, MX51_INT_GPIO4_LOW, MX51_INT_GPIO4_HIGH);
>
> /* i.mx51 has the i.mx35 type sdma */
> imx_add_imx_sdma("imx35-sdma", MX51_SDMA_BASE_ADDR, MX51_INT_SDMA, &imx51_sdma_pdata);
> diff --git a/arch/arm/plat-mxc/include/mach/mx51.h b/arch/arm/plat-mxc/include/mach/mx51.h
> index dede19a..d240b6f 100644
> --- a/arch/arm/plat-mxc/include/mach/mx51.h
> +++ b/arch/arm/plat-mxc/include/mach/mx51.h
> @@ -240,110 +240,110 @@
> /*
> * Interrupt numbers
> */
> -#define MX51_MXC_INT_BASE 0
> -#define MX51_MXC_INT_RESV0 0
> +#define MX51_INT_BASE 0
> +#define MX51_INT_RESV0 0
> #define MX51_INT_ESDHC1 1
> #define MX51_INT_ESDHC2 2
> #define MX51_INT_ESDHC3 3
> #define MX51_INT_ESDHC4 4
> -#define MX51_MXC_INT_RESV5 5
> +#define MX51_INT_RESV5 5
> #define MX51_INT_SDMA 6
> -#define MX51_MXC_INT_IOMUX 7
> +#define MX51_INT_IOMUX 7
> #define MX51_INT_NFC 8
> -#define MX51_MXC_INT_VPU 9
> +#define MX51_INT_VPU 9
> #define MX51_INT_IPU_ERR 10
> #define MX51_INT_IPU_SYN 11
> -#define MX51_MXC_INT_GPU 12
> -#define MX51_MXC_INT_RESV13 13
> -#define MX51_MXC_INT_USB_H1 14
> -#define MX51_MXC_INT_EMI 15
> -#define MX51_MXC_INT_USB_H2 16
> -#define MX51_MXC_INT_USB_H3 17
> -#define MX51_MXC_INT_USB_OTG 18
> -#define MX51_MXC_INT_SAHARA_H0 19
> -#define MX51_MXC_INT_SAHARA_H1 20
> -#define MX51_MXC_INT_SCC_SMN 21
> -#define MX51_MXC_INT_SCC_STZ 22
> -#define MX51_MXC_INT_SCC_SCM 23
> -#define MX51_MXC_INT_SRTC_NTZ 24
> -#define MX51_MXC_INT_SRTC_TZ 25
> -#define MX51_MXC_INT_RTIC 26
> -#define MX51_MXC_INT_CSU 27
> -#define MX51_MXC_INT_SLIM_B 28
> +#define MX51_INT_GPU 12
> +#define MX51_INT_RESV13 13
> +#define MX51_INT_USB_H1 14
> +#define MX51_INT_EMI 15
> +#define MX51_INT_USB_H2 16
> +#define MX51_INT_USB_H3 17
> +#define MX51_INT_USB_OTG 18
> +#define MX51_INT_SAHARA_H0 19
> +#define MX51_INT_SAHARA_H1 20
> +#define MX51_INT_SCC_SMN 21
> +#define MX51_INT_SCC_STZ 22
> +#define MX51_INT_SCC_SCM 23
> +#define MX51_INT_SRTC_NTZ 24
> +#define MX51_INT_SRTC_TZ 25
> +#define MX51_INT_RTIC 26
> +#define MX51_INT_CSU 27
> +#define MX51_INT_SLIM_B 28
> #define MX51_INT_SSI1 29
> #define MX51_INT_SSI2 30
> #define MX51_INT_UART1 31
> #define MX51_INT_UART2 32
> #define MX51_INT_UART3 33
> -#define MX51_MXC_INT_RESV34 34
> -#define MX51_MXC_INT_RESV35 35
> +#define MX51_INT_RESV34 34
> +#define MX51_INT_RESV35 35
> #define MX51_INT_ECSPI1 36
> #define MX51_INT_ECSPI2 37
> #define MX51_INT_CSPI 38
> -#define MX51_MXC_INT_GPT 39
> -#define MX51_MXC_INT_EPIT1 40
> -#define MX51_MXC_INT_EPIT2 41
> -#define MX51_MXC_INT_GPIO1_INT7 42
> -#define MX51_MXC_INT_GPIO1_INT6 43
> -#define MX51_MXC_INT_GPIO1_INT5 44
> -#define MX51_MXC_INT_GPIO1_INT4 45
> -#define MX51_MXC_INT_GPIO1_INT3 46
> -#define MX51_MXC_INT_GPIO1_INT2 47
> -#define MX51_MXC_INT_GPIO1_INT1 48
> -#define MX51_MXC_INT_GPIO1_INT0 49
> -#define MX51_MXC_INT_GPIO1_LOW 50
> -#define MX51_MXC_INT_GPIO1_HIGH 51
> -#define MX51_MXC_INT_GPIO2_LOW 52
> -#define MX51_MXC_INT_GPIO2_HIGH 53
> -#define MX51_MXC_INT_GPIO3_LOW 54
> -#define MX51_MXC_INT_GPIO3_HIGH 55
> -#define MX51_MXC_INT_GPIO4_LOW 56
> -#define MX51_MXC_INT_GPIO4_HIGH 57
> -#define MX51_MXC_INT_WDOG1 58
> -#define MX51_MXC_INT_WDOG2 59
> +#define MX51_INT_GPT 39
> +#define MX51_INT_EPIT1 40
> +#define MX51_INT_EPIT2 41
> +#define MX51_INT_GPIO1_INT7 42
> +#define MX51_INT_GPIO1_INT6 43
> +#define MX51_INT_GPIO1_INT5 44
> +#define MX51_INT_GPIO1_INT4 45
> +#define MX51_INT_GPIO1_INT3 46
> +#define MX51_INT_GPIO1_INT2 47
> +#define MX51_INT_GPIO1_INT1 48
> +#define MX51_INT_GPIO1_INT0 49
> +#define MX51_INT_GPIO1_LOW 50
> +#define MX51_INT_GPIO1_HIGH 51
> +#define MX51_INT_GPIO2_LOW 52
> +#define MX51_INT_GPIO2_HIGH 53
> +#define MX51_INT_GPIO3_LOW 54
> +#define MX51_INT_GPIO3_HIGH 55
> +#define MX51_INT_GPIO4_LOW 56
> +#define MX51_INT_GPIO4_HIGH 57
> +#define MX51_INT_WDOG1 58
> +#define MX51_INT_WDOG2 59
> #define MX51_INT_KPP 60
> #define MX51_INT_PWM1 61
> #define MX51_INT_I2C1 62
> #define MX51_INT_I2C2 63
> -#define MX51_MXC_INT_HS_I2C 64
> -#define MX51_MXC_INT_RESV65 65
> -#define MX51_MXC_INT_RESV66 66
> -#define MX51_MXC_INT_SIM_IPB 67
> -#define MX51_MXC_INT_SIM_DAT 68
> -#define MX51_MXC_INT_IIM 69
> -#define MX51_MXC_INT_ATA 70
> -#define MX51_MXC_INT_CCM1 71
> -#define MX51_MXC_INT_CCM2 72
> -#define MX51_MXC_INT_GPC1 73
> -#define MX51_MXC_INT_GPC2 74
> -#define MX51_MXC_INT_SRC 75
> -#define MX51_MXC_INT_NM 76
> -#define MX51_MXC_INT_PMU 77
> -#define MX51_MXC_INT_CTI_IRQ 78
> -#define MX51_MXC_INT_CTI1_TG0 79
> -#define MX51_MXC_INT_CTI1_TG1 80
> -#define MX51_MXC_INT_MCG_ERR 81
> -#define MX51_MXC_INT_MCG_TMR 82
> -#define MX51_MXC_INT_MCG_FUNC 83
> -#define MX51_MXC_INT_GPU2_IRQ 84
> -#define MX51_MXC_INT_GPU2_BUSY 85
> -#define MX51_MXC_INT_RESV86 86
> +#define MX51_INT_HS_I2C 64
> +#define MX51_INT_RESV65 65
> +#define MX51_INT_RESV66 66
> +#define MX51_INT_SIM_IPB 67
> +#define MX51_INT_SIM_DAT 68
> +#define MX51_INT_IIM 69
> +#define MX51_INT_ATA 70
> +#define MX51_INT_CCM1 71
> +#define MX51_INT_CCM2 72
> +#define MX51_INT_GPC1 73
> +#define MX51_INT_GPC2 74
> +#define MX51_INT_SRC 75
> +#define MX51_INT_NM 76
> +#define MX51_INT_PMU 77
> +#define MX51_INT_CTI_IRQ 78
> +#define MX51_INT_CTI1_TG0 79
> +#define MX51_INT_CTI1_TG1 80
> +#define MX51_INT_MCG_ERR 81
> +#define MX51_INT_MCG_TMR 82
> +#define MX51_INT_MCG_FUNC 83
> +#define MX51_INT_GPU2_IRQ 84
> +#define MX51_INT_GPU2_BUSY 85
> +#define MX51_INT_RESV86 86
> #define MX51_INT_FEC 87
> -#define MX51_MXC_INT_OWIRE 88
> -#define MX51_MXC_INT_CTI1_TG2 89
> -#define MX51_MXC_INT_SJC 90
> -#define MX51_MXC_INT_SPDIF 91
> -#define MX51_MXC_INT_TVE 92
> -#define MX51_MXC_INT_FIRI 93
> +#define MX51_INT_OWIRE 88
> +#define MX51_INT_CTI1_TG2 89
> +#define MX51_INT_SJC 90
> +#define MX51_INT_SPDIF 91
> +#define MX51_INT_TVE 92
> +#define MX51_INT_FIRI 93
> #define MX51_INT_PWM2 94
> -#define MX51_MXC_INT_SLIM_EXP 95
> +#define MX51_INT_SLIM_EXP 95
> #define MX51_INT_SSI3 96
> -#define MX51_MXC_INT_EMI_BOOT 97
> -#define MX51_MXC_INT_CTI1_TG3 98
> -#define MX51_MXC_INT_SMC_RX 99
> -#define MX51_MXC_INT_VPU_IDLE 100
> -#define MX51_MXC_INT_EMI_NFC 101
> -#define MX51_MXC_INT_GPU_IDLE 102
> +#define MX51_INT_EMI_BOOT 97
> +#define MX51_INT_CTI1_TG3 98
> +#define MX51_INT_SMC_RX 99
> +#define MX51_INT_VPU_IDLE 100
> +#define MX51_INT_EMI_NFC 101
> +#define MX51_INT_GPU_IDLE 102
>
> #if !defined(__ASSEMBLY__) && !defined(__MXC_BOOT_UNCOMPRESS)
> extern int mx51_revision(void);
--
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 |
More information about the linux-arm-kernel
mailing list