ARM: imx: use .init_early to initialize cpu type and reset address
This used to be done in .map_io which is supposed to only setup the memory mapping. Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
This commit is contained in:
parent
5836372e8a
commit
3dac219615
|
@ -304,9 +304,10 @@ static struct sys_timer eukrea_cpuimx27_timer = {
|
|||
};
|
||||
|
||||
MACHINE_START(CPUIMX27, "EUKREA CPUIMX27")
|
||||
.boot_params = MX27_PHYS_OFFSET + 0x100,
|
||||
.map_io = mx27_map_io,
|
||||
.init_irq = mx27_init_irq,
|
||||
.init_machine = eukrea_cpuimx27_init,
|
||||
.timer = &eukrea_cpuimx27_timer,
|
||||
.boot_params = MX27_PHYS_OFFSET + 0x100,
|
||||
.map_io = mx27_map_io,
|
||||
.init_early = imx27_init_early,
|
||||
.init_irq = mx27_init_irq,
|
||||
.timer = &eukrea_cpuimx27_timer,
|
||||
.init_machine = eukrea_cpuimx27_init,
|
||||
MACHINE_END
|
||||
|
|
|
@ -153,9 +153,10 @@ static struct sys_timer eukrea_cpuimx25_timer = {
|
|||
|
||||
MACHINE_START(EUKREA_CPUIMX25, "Eukrea CPUIMX25")
|
||||
/* Maintainer: Eukrea Electromatique */
|
||||
.boot_params = MX25_PHYS_OFFSET + 0x100,
|
||||
.map_io = mx25_map_io,
|
||||
.init_irq = mx25_init_irq,
|
||||
.init_machine = eukrea_cpuimx25_init,
|
||||
.timer = &eukrea_cpuimx25_timer,
|
||||
.boot_params = MX25_PHYS_OFFSET + 0x100,
|
||||
.map_io = mx25_map_io,
|
||||
.init_early = imx25_init_early,
|
||||
.init_irq = mx25_init_irq,
|
||||
.timer = &eukrea_cpuimx25_timer,
|
||||
.init_machine = eukrea_cpuimx25_init,
|
||||
MACHINE_END
|
||||
|
|
|
@ -251,9 +251,10 @@ static struct sys_timer visstrim_m10_timer = {
|
|||
};
|
||||
|
||||
MACHINE_START(IMX27_VISSTRIM_M10, "Vista Silicon Visstrim_M10")
|
||||
.boot_params = MX27_PHYS_OFFSET + 0x100,
|
||||
.map_io = mx27_map_io,
|
||||
.init_irq = mx27_init_irq,
|
||||
.init_machine = visstrim_m10_board_init,
|
||||
.timer = &visstrim_m10_timer,
|
||||
.boot_params = MX27_PHYS_OFFSET + 0x100,
|
||||
.map_io = mx27_map_io,
|
||||
.init_early = imx27_init_early,
|
||||
.init_irq = mx27_init_irq,
|
||||
.timer = &visstrim_m10_timer,
|
||||
.init_machine = visstrim_m10_board_init,
|
||||
MACHINE_END
|
||||
|
|
|
@ -69,9 +69,10 @@ static struct sys_timer mx27ipcam_timer = {
|
|||
|
||||
MACHINE_START(IMX27IPCAM, "Freescale IMX27IPCAM")
|
||||
/* maintainer: Freescale Semiconductor, Inc. */
|
||||
.boot_params = MX27_PHYS_OFFSET + 0x100,
|
||||
.map_io = mx27_map_io,
|
||||
.init_irq = mx27_init_irq,
|
||||
.init_machine = mx27ipcam_init,
|
||||
.timer = &mx27ipcam_timer,
|
||||
.boot_params = MX27_PHYS_OFFSET + 0x100,
|
||||
.map_io = mx27_map_io,
|
||||
.init_early = imx27_init_early,
|
||||
.init_irq = mx27_init_irq,
|
||||
.timer = &mx27ipcam_timer,
|
||||
.init_machine = mx27ipcam_init,
|
||||
MACHINE_END
|
||||
|
|
|
@ -75,9 +75,10 @@ static struct sys_timer mx27lite_timer = {
|
|||
};
|
||||
|
||||
MACHINE_START(IMX27LITE, "LogicPD i.MX27LITE")
|
||||
.boot_params = MX27_PHYS_OFFSET + 0x100,
|
||||
.map_io = mx27_map_io,
|
||||
.init_irq = mx27_init_irq,
|
||||
.init_machine = mx27lite_init,
|
||||
.timer = &mx27lite_timer,
|
||||
.boot_params = MX27_PHYS_OFFSET + 0x100,
|
||||
.map_io = mx27_map_io,
|
||||
.init_early = imx27_init_early,
|
||||
.init_irq = mx27_init_irq,
|
||||
.timer = &mx27lite_timer,
|
||||
.init_machine = mx27lite_init,
|
||||
MACHINE_END
|
||||
|
|
|
@ -144,17 +144,19 @@ struct sys_timer mx1ads_timer = {
|
|||
|
||||
MACHINE_START(MX1ADS, "Freescale MX1ADS")
|
||||
/* Maintainer: Sascha Hauer, Pengutronix */
|
||||
.boot_params = MX1_PHYS_OFFSET + 0x100,
|
||||
.map_io = mx1_map_io,
|
||||
.init_irq = mx1_init_irq,
|
||||
.timer = &mx1ads_timer,
|
||||
.init_machine = mx1ads_init,
|
||||
.boot_params = MX1_PHYS_OFFSET + 0x100,
|
||||
.map_io = mx1_map_io,
|
||||
.init_early = imx1_init_early,
|
||||
.init_irq = mx1_init_irq,
|
||||
.timer = &mx1ads_timer,
|
||||
.init_machine = mx1ads_init,
|
||||
MACHINE_END
|
||||
|
||||
MACHINE_START(MXLADS, "Freescale MXLADS")
|
||||
.boot_params = MX1_PHYS_OFFSET + 0x100,
|
||||
.map_io = mx1_map_io,
|
||||
.init_irq = mx1_init_irq,
|
||||
.timer = &mx1ads_timer,
|
||||
.init_machine = mx1ads_init,
|
||||
.boot_params = MX1_PHYS_OFFSET + 0x100,
|
||||
.map_io = mx1_map_io,
|
||||
.init_early = imx1_init_early,
|
||||
.init_irq = mx1_init_irq,
|
||||
.timer = &mx1ads_timer,
|
||||
.init_machine = mx1ads_init,
|
||||
MACHINE_END
|
||||
|
|
|
@ -304,9 +304,10 @@ static struct sys_timer mx21ads_timer = {
|
|||
|
||||
MACHINE_START(MX21ADS, "Freescale i.MX21ADS")
|
||||
/* maintainer: Freescale Semiconductor, Inc. */
|
||||
.boot_params = MX21_PHYS_OFFSET + 0x100,
|
||||
.map_io = mx21ads_map_io,
|
||||
.init_irq = mx21_init_irq,
|
||||
.init_machine = mx21ads_board_init,
|
||||
.timer = &mx21ads_timer,
|
||||
.boot_params = MX21_PHYS_OFFSET + 0x100,
|
||||
.map_io = mx21ads_map_io,
|
||||
.init_early = imx21_init_early,
|
||||
.init_irq = mx21_init_irq,
|
||||
.timer = &mx21ads_timer,
|
||||
.init_machine = mx21ads_board_init,
|
||||
MACHINE_END
|
||||
|
|
|
@ -226,10 +226,10 @@ static struct sys_timer mx25pdk_timer = {
|
|||
|
||||
MACHINE_START(MX25_3DS, "Freescale MX25PDK (3DS)")
|
||||
/* Maintainer: Freescale Semiconductor, Inc. */
|
||||
.boot_params = MX25_PHYS_OFFSET + 0x100,
|
||||
.map_io = mx25_map_io,
|
||||
.init_irq = mx25_init_irq,
|
||||
.init_machine = mx25pdk_init,
|
||||
.timer = &mx25pdk_timer,
|
||||
.boot_params = MX25_PHYS_OFFSET + 0x100,
|
||||
.map_io = mx25_map_io,
|
||||
.init_early = imx25_init_early,
|
||||
.init_irq = mx25_init_irq,
|
||||
.timer = &mx25pdk_timer,
|
||||
.init_machine = mx25pdk_init,
|
||||
MACHINE_END
|
||||
|
||||
|
|
|
@ -295,9 +295,10 @@ static struct sys_timer mx27pdk_timer = {
|
|||
|
||||
MACHINE_START(MX27_3DS, "Freescale MX27PDK")
|
||||
/* maintainer: Freescale Semiconductor, Inc. */
|
||||
.boot_params = MX27_PHYS_OFFSET + 0x100,
|
||||
.map_io = mx27_map_io,
|
||||
.init_irq = mx27_init_irq,
|
||||
.init_machine = mx27pdk_init,
|
||||
.timer = &mx27pdk_timer,
|
||||
.boot_params = MX27_PHYS_OFFSET + 0x100,
|
||||
.map_io = mx27_map_io,
|
||||
.init_early = imx27_init_early,
|
||||
.init_irq = mx27_init_irq,
|
||||
.timer = &mx27pdk_timer,
|
||||
.init_machine = mx27pdk_init,
|
||||
MACHINE_END
|
||||
|
|
|
@ -344,9 +344,10 @@ static void __init mx27ads_map_io(void)
|
|||
|
||||
MACHINE_START(MX27ADS, "Freescale i.MX27ADS")
|
||||
/* maintainer: Freescale Semiconductor, Inc. */
|
||||
.boot_params = MX27_PHYS_OFFSET + 0x100,
|
||||
.map_io = mx27ads_map_io,
|
||||
.init_irq = mx27_init_irq,
|
||||
.init_machine = mx27ads_board_init,
|
||||
.timer = &mx27ads_timer,
|
||||
.boot_params = MX27_PHYS_OFFSET + 0x100,
|
||||
.map_io = mx27ads_map_io,
|
||||
.init_early = imx27_init_early,
|
||||
.init_irq = mx27_init_irq,
|
||||
.timer = &mx27ads_timer,
|
||||
.init_machine = mx27ads_board_init,
|
||||
MACHINE_END
|
||||
|
|
|
@ -266,10 +266,10 @@ static struct sys_timer mxt_td60_timer = {
|
|||
|
||||
MACHINE_START(MXT_TD60, "Maxtrack i-MXT TD60")
|
||||
/* maintainer: Maxtrack Industrial */
|
||||
.boot_params = MX27_PHYS_OFFSET + 0x100,
|
||||
.map_io = mx27_map_io,
|
||||
.init_irq = mx27_init_irq,
|
||||
.init_machine = mxt_td60_board_init,
|
||||
.timer = &mxt_td60_timer,
|
||||
.boot_params = MX27_PHYS_OFFSET + 0x100,
|
||||
.map_io = mx27_map_io,
|
||||
.init_early = imx27_init_early,
|
||||
.init_irq = mx27_init_irq,
|
||||
.timer = &mxt_td60_timer,
|
||||
.init_machine = mxt_td60_board_init,
|
||||
MACHINE_END
|
||||
|
||||
|
|
|
@ -433,10 +433,10 @@ static struct sys_timer pca100_timer = {
|
|||
};
|
||||
|
||||
MACHINE_START(PCA100, "phyCARD-i.MX27")
|
||||
.boot_params = MX27_PHYS_OFFSET + 0x100,
|
||||
.map_io = mx27_map_io,
|
||||
.init_irq = mx27_init_irq,
|
||||
.init_machine = pca100_init,
|
||||
.timer = &pca100_timer,
|
||||
.boot_params = MX27_PHYS_OFFSET + 0x100,
|
||||
.map_io = mx27_map_io,
|
||||
.init_early = imx27_init_early,
|
||||
.init_irq = mx27_init_irq,
|
||||
.init_machine = pca100_init,
|
||||
.timer = &pca100_timer,
|
||||
MACHINE_END
|
||||
|
||||
|
|
|
@ -340,9 +340,10 @@ static struct sys_timer pcm038_timer = {
|
|||
};
|
||||
|
||||
MACHINE_START(PCM038, "phyCORE-i.MX27")
|
||||
.boot_params = MX27_PHYS_OFFSET + 0x100,
|
||||
.map_io = mx27_map_io,
|
||||
.init_irq = mx27_init_irq,
|
||||
.init_machine = pcm038_init,
|
||||
.timer = &pcm038_timer,
|
||||
.boot_params = MX27_PHYS_OFFSET + 0x100,
|
||||
.map_io = mx27_map_io,
|
||||
.init_early = imx27_init_early,
|
||||
.init_irq = mx27_init_irq,
|
||||
.timer = &pcm038_timer,
|
||||
.init_machine = pcm038_init,
|
||||
MACHINE_END
|
||||
|
|
|
@ -145,10 +145,11 @@ static struct sys_timer scb9328_timer = {
|
|||
};
|
||||
|
||||
MACHINE_START(SCB9328, "Synertronixx scb9328")
|
||||
/* Sascha Hauer */
|
||||
.boot_params = 0x08000100,
|
||||
.map_io = mx1_map_io,
|
||||
.init_irq = mx1_init_irq,
|
||||
.timer = &scb9328_timer,
|
||||
.init_machine = scb9328_init,
|
||||
/* Sascha Hauer */
|
||||
.boot_params = 0x08000100,
|
||||
.map_io = mx1_map_io,
|
||||
.init_early = imx1_init_early,
|
||||
.init_irq = mx1_init_irq,
|
||||
.timer = &scb9328_timer,
|
||||
.init_machine = scb9328_init,
|
||||
MACHINE_END
|
||||
|
|
|
@ -29,11 +29,14 @@ static struct map_desc imx_io_desc[] __initdata = {
|
|||
};
|
||||
|
||||
void __init mx1_map_io(void)
|
||||
{
|
||||
iotable_init(imx_io_desc, ARRAY_SIZE(imx_io_desc));
|
||||
}
|
||||
|
||||
void __init imx1_init_early(void)
|
||||
{
|
||||
mxc_set_cpu_type(MXC_CPU_MX1);
|
||||
mxc_arch_reset_init(MX1_IO_ADDRESS(MX1_WDT_BASE_ADDR));
|
||||
|
||||
iotable_init(imx_io_desc, ARRAY_SIZE(imx_io_desc));
|
||||
}
|
||||
|
||||
int imx1_register_gpios(void);
|
||||
|
|
|
@ -55,11 +55,14 @@ static struct map_desc imx21_io_desc[] __initdata = {
|
|||
* memory map for the IO modules.
|
||||
*/
|
||||
void __init mx21_map_io(void)
|
||||
{
|
||||
iotable_init(imx21_io_desc, ARRAY_SIZE(imx21_io_desc));
|
||||
}
|
||||
|
||||
void __init imx21_init_early(void)
|
||||
{
|
||||
mxc_set_cpu_type(MXC_CPU_MX21);
|
||||
mxc_arch_reset_init(MX21_IO_ADDRESS(MX21_WDOG_BASE_ADDR));
|
||||
|
||||
iotable_init(imx21_io_desc, ARRAY_SIZE(imx21_io_desc));
|
||||
}
|
||||
|
||||
int imx21_register_gpios(void);
|
||||
|
|
|
@ -44,12 +44,15 @@ static struct map_desc mx25_io_desc[] __initdata = {
|
|||
* for the IO modules.
|
||||
*/
|
||||
void __init mx25_map_io(void)
|
||||
{
|
||||
iotable_init(mx25_io_desc, ARRAY_SIZE(mx25_io_desc));
|
||||
}
|
||||
|
||||
void __init imx25_init_early(void)
|
||||
{
|
||||
mxc_set_cpu_type(MXC_CPU_MX25);
|
||||
mxc_iomux_v3_init(MX25_IO_ADDRESS(MX25_IOMUXC_BASE_ADDR));
|
||||
mxc_arch_reset_init(MX25_IO_ADDRESS(MX25_WDOG_BASE_ADDR));
|
||||
|
||||
iotable_init(mx25_io_desc, ARRAY_SIZE(mx25_io_desc));
|
||||
}
|
||||
|
||||
int imx25_register_gpios(void);
|
||||
|
|
|
@ -55,11 +55,14 @@ static struct map_desc imx27_io_desc[] __initdata = {
|
|||
* memory map for the IO modules.
|
||||
*/
|
||||
void __init mx27_map_io(void)
|
||||
{
|
||||
iotable_init(imx27_io_desc, ARRAY_SIZE(imx27_io_desc));
|
||||
}
|
||||
|
||||
void __init imx27_init_early(void)
|
||||
{
|
||||
mxc_set_cpu_type(MXC_CPU_MX27);
|
||||
mxc_arch_reset_init(MX27_IO_ADDRESS(MX27_WDOG_BASE_ADDR));
|
||||
|
||||
iotable_init(imx27_io_desc, ARRAY_SIZE(imx27_io_desc));
|
||||
}
|
||||
|
||||
int imx27_register_gpios(void);
|
||||
|
|
|
@ -24,6 +24,10 @@ extern void mx50_map_io(void);
|
|||
extern void mx51_map_io(void);
|
||||
extern void mx53_map_io(void);
|
||||
extern void mxc91231_map_io(void);
|
||||
extern void imx1_init_early(void);
|
||||
extern void imx21_init_early(void);
|
||||
extern void imx25_init_early(void);
|
||||
extern void imx27_init_early(void);
|
||||
extern void mxc_init_irq(void __iomem *);
|
||||
extern void tzic_init_irq(void __iomem *);
|
||||
extern void mx1_init_irq(void);
|
||||
|
|
Loading…
Reference in New Issue