diff options
Diffstat (limited to 'arch/arm/mach-imx/mach-kzm_arm11_01.c')
-rw-r--r-- | arch/arm/mach-imx/mach-kzm_arm11_01.c | 20 |
1 files changed, 15 insertions, 5 deletions
diff --git a/arch/arm/mach-imx/mach-kzm_arm11_01.c b/arch/arm/mach-imx/mach-kzm_arm11_01.c index 15a26e908260..5d08533ab2c7 100644 --- a/arch/arm/mach-imx/mach-kzm_arm11_01.c +++ b/arch/arm/mach-imx/mach-kzm_arm11_01.c | |||
@@ -73,7 +73,7 @@ static struct plat_serial8250_port serial_platform_data[] = { | |||
73 | { | 73 | { |
74 | .membase = KZM_ARM11_IO_ADDRESS(KZM_ARM11_16550), | 74 | .membase = KZM_ARM11_IO_ADDRESS(KZM_ARM11_16550), |
75 | .mapbase = KZM_ARM11_16550, | 75 | .mapbase = KZM_ARM11_16550, |
76 | .irq = IOMUX_TO_IRQ(MX31_PIN_GPIO1_1), | 76 | /* irq number is run-time assigned */ |
77 | .irqflags = IRQ_TYPE_EDGE_RISING, | 77 | .irqflags = IRQ_TYPE_EDGE_RISING, |
78 | .uartclk = 14745600, | 78 | .uartclk = 14745600, |
79 | .regshift = 0, | 79 | .regshift = 0, |
@@ -91,8 +91,7 @@ static struct resource serial8250_resources[] = { | |||
91 | .flags = IORESOURCE_MEM, | 91 | .flags = IORESOURCE_MEM, |
92 | }, | 92 | }, |
93 | { | 93 | { |
94 | .start = IOMUX_TO_IRQ(MX31_PIN_GPIO1_1), | 94 | /* irq number is run-time assigned */ |
95 | .end = IOMUX_TO_IRQ(MX31_PIN_GPIO1_1), | ||
96 | .flags = IORESOURCE_IRQ, | 95 | .flags = IORESOURCE_IRQ, |
97 | }, | 96 | }, |
98 | }; | 97 | }; |
@@ -125,6 +124,13 @@ static int __init kzm_init_ext_uart(void) | |||
125 | tmp |= 0x2; | 124 | tmp |= 0x2; |
126 | __raw_writeb(tmp, KZM_ARM11_IO_ADDRESS(KZM_ARM11_CTL1)); | 125 | __raw_writeb(tmp, KZM_ARM11_IO_ADDRESS(KZM_ARM11_CTL1)); |
127 | 126 | ||
127 | serial_platform_data[0].irq = | ||
128 | gpio_to_irq(IOMUX_TO_GPIO(MX31_PIN_GPIO1_1)); | ||
129 | serial8250_resources[1].start = | ||
130 | gpio_to_irq(IOMUX_TO_GPIO(MX31_PIN_GPIO1_1)); | ||
131 | serial8250_resources[1].end = | ||
132 | gpio_to_irq(IOMUX_TO_GPIO(MX31_PIN_GPIO1_1)); | ||
133 | |||
128 | return platform_device_register(&serial_device); | 134 | return platform_device_register(&serial_device); |
129 | } | 135 | } |
130 | #else | 136 | #else |
@@ -152,8 +158,7 @@ static struct resource kzm_smsc9118_resources[] = { | |||
152 | .flags = IORESOURCE_MEM, | 158 | .flags = IORESOURCE_MEM, |
153 | }, | 159 | }, |
154 | { | 160 | { |
155 | .start = IOMUX_TO_IRQ(MX31_PIN_GPIO1_2), | 161 | /* irq number is run-time assigned */ |
156 | .end = IOMUX_TO_IRQ(MX31_PIN_GPIO1_2), | ||
157 | .flags = IORESOURCE_IRQ | IORESOURCE_IRQ_HIGHEDGE, | 162 | .flags = IORESOURCE_IRQ | IORESOURCE_IRQ_HIGHEDGE, |
158 | }, | 163 | }, |
159 | }; | 164 | }; |
@@ -184,6 +189,11 @@ static int __init kzm_init_smsc9118(void) | |||
184 | 189 | ||
185 | regulator_register_fixed(0, dummy_supplies, ARRAY_SIZE(dummy_supplies)); | 190 | regulator_register_fixed(0, dummy_supplies, ARRAY_SIZE(dummy_supplies)); |
186 | 191 | ||
192 | kzm_smsc9118_resources[1].start = | ||
193 | gpio_to_irq(IOMUX_TO_GPIO(MX31_PIN_GPIO1_2)); | ||
194 | kzm_smsc9118_resources[1].end = | ||
195 | gpio_to_irq(IOMUX_TO_GPIO(MX31_PIN_GPIO1_2)); | ||
196 | |||
187 | return platform_device_register(&kzm_smsc9118_device); | 197 | return platform_device_register(&kzm_smsc9118_device); |
188 | } | 198 | } |
189 | #else | 199 | #else |