From: Arnd Bergmann Date: Wed, 2 Nov 2011 01:46:55 +0000 (+0100) Subject: Merge branch 'imx/imx6q' into next/soc X-Git-Url: https://git.karo-electronics.de/?a=commitdiff_plain;h=abc3f126ac736280c68db6472eb0040ddf6e1b1f;p=linux-beck.git Merge branch 'imx/imx6q' into next/soc Conflicts: Documentation/devicetree/bindings/arm/fsl.txt arch/arm/Kconfig arch/arm/Kconfig.debug arch/arm/plat-mxc/include/mach/common.h --- abc3f126ac736280c68db6472eb0040ddf6e1b1f diff --cc Documentation/devicetree/bindings/arm/fsl.txt index e2401cd632ab,345bfc036561..c9848ad0e2e3 --- a/Documentation/devicetree/bindings/arm/fsl.txt +++ b/Documentation/devicetree/bindings/arm/fsl.txt @@@ -1,19 -1,6 +1,26 @@@ + Freescale i.MX Platforms Device Tree Bindings + ----------------------------------------------- + +i.MX51 Babbage Board +Required root node properties: + - compatible = "fsl,imx51-babbage", "fsl,imx51"; + +i.MX53 Automotive Reference Design Board +Required root node properties: + - compatible = "fsl,imx53-ard", "fsl,imx53"; + +i.MX53 Evaluation Kit +Required root node properties: + - compatible = "fsl,imx53-evk", "fsl,imx53"; + +i.MX53 Quick Start Board +Required root node properties: + - compatible = "fsl,imx53-qsb", "fsl,imx53"; + +i.MX53 Smart Mobile Reference Design Board +Required root node properties: + - compatible = "fsl,imx53-smd", "fsl,imx53"; ++ + i.MX6 Quad SABRE Automotive Board + Required root node properties: + - compatible = "fsl,imx6q-sabreauto", "fsl,imx6q"; diff --cc arch/arm/Kconfig index 4fe1db171464,18400a7b6ca1..f41fe7a40019 --- a/arch/arm/Kconfig +++ b/arch/arm/Kconfig @@@ -1435,7 -1402,7 +1435,7 @@@ config SM depends on REALVIEW_EB_ARM11MP || REALVIEW_EB_A9MP || \ MACH_REALVIEW_PB11MP || MACH_REALVIEW_PBX || ARCH_OMAP4 || \ ARCH_EXYNOS4 || ARCH_TEGRA || ARCH_U8500 || ARCH_VEXPRESS_CA9X4 || \ - ARCH_MSM_SCORPIONMP || ARCH_SHMOBILE || ARCH_HIGHBANK - ARCH_MSM_SCORPIONMP || ARCH_SHMOBILE || SOC_IMX6Q ++ ARCH_MSM_SCORPIONMP || ARCH_SHMOBILE || ARCH_HIGHBANK || SOC_IMX6Q select USE_GENERIC_SMP_HELPERS select HAVE_ARM_SCU if !ARCH_MSM_SCORPIONMP help diff --cc arch/arm/Kconfig.debug index 4bb7eb90f070,a1cb48497312..c865b9271364 --- a/arch/arm/Kconfig.debug +++ b/arch/arm/Kconfig.debug @@@ -128,13 -128,118 +128,125 @@@ choic Say Y here if you want the debug print routines to direct their output to the second serial port on these devices. + config DEBUG_HIGHBANK_UART + bool "Kernel low-level debugging messages via Highbank UART" + depends on ARCH_HIGHBANK + help + Say Y here if you want the debug print routines to direct + their output to the UART on Highbank based devices. + + config DEBUG_IMX1_UART + bool "i.MX1 Debug UART" + depends on SOC_IMX1 + help + Say Y here if you want kernel low-level debugging support + on i.MX1. + + config DEBUG_IMX23_UART + bool "i.MX23 Debug UART" + depends on SOC_IMX23 + help + Say Y here if you want kernel low-level debugging support + on i.MX23. + + config DEBUG_IMX25_UART + bool "i.MX25 Debug UART" + depends on SOC_IMX25 + help + Say Y here if you want kernel low-level debugging support + on i.MX25. + + config DEBUG_IMX21_IMX27_UART + bool "i.MX21 and i.MX27 Debug UART" + depends on SOC_IMX21 || SOC_IMX27 + help + Say Y here if you want kernel low-level debugging support + on i.MX21 or i.MX27. + + config DEBUG_IMX28_UART + bool "i.MX28 Debug UART" + depends on SOC_IMX28 + help + Say Y here if you want kernel low-level debugging support + on i.MX28. + + config DEBUG_IMX31_IMX35_UART + bool "i.MX31 and i.MX35 Debug UART" + depends on SOC_IMX31 || SOC_IMX35 + help + Say Y here if you want kernel low-level debugging support + on i.MX31 or i.MX35. + + config DEBUG_IMX51_UART + bool "i.MX51 Debug UART" + depends on SOC_IMX51 + help + Say Y here if you want kernel low-level debugging support + on i.MX51. + + config DEBUG_IMX50_IMX53_UART + bool "i.MX50 and i.MX53 Debug UART" + depends on SOC_IMX50 || SOC_IMX53 + help + Say Y here if you want kernel low-level debugging support + on i.MX50 or i.MX53. + + config DEBUG_IMX6Q_UART + bool "i.MX6Q Debug UART" + depends on SOC_IMX6Q + help + Say Y here if you want kernel low-level debugging support + on i.MX6Q. + + config DEBUG_S3C_UART0 + depends on PLAT_SAMSUNG + bool "Use S3C UART 0 for low-level debug" + help + Say Y here if you want the debug print routines to direct + their output to UART 0. The port must have been initialised + by the boot-loader before use. + + The uncompressor code port configuration is now handled + by CONFIG_S3C_LOWLEVEL_UART_PORT. + + config DEBUG_S3C_UART1 + depends on PLAT_SAMSUNG + bool "Use S3C UART 1 for low-level debug" + help + Say Y here if you want the debug print routines to direct + their output to UART 1. The port must have been initialised + by the boot-loader before use. + + The uncompressor code port configuration is now handled + by CONFIG_S3C_LOWLEVEL_UART_PORT. + + config DEBUG_S3C_UART2 + depends on PLAT_SAMSUNG + bool "Use S3C UART 2 for low-level debug" + help + Say Y here if you want the debug print routines to direct + their output to UART 2. The port must have been initialised + by the boot-loader before use. + + The uncompressor code port configuration is now handled + by CONFIG_S3C_LOWLEVEL_UART_PORT. + + config DEBUG_REALVIEW_STD_PORT + bool "RealView Default UART" + depends on ARCH_REALVIEW + help + Say Y here if you want the debug print routines to direct + their output to the serial port on RealView EB, PB11MP, PBA8 + and PBX platforms. + + config DEBUG_REALVIEW_PB1176_PORT + bool "RealView PB1176 UART" + depends on MACH_REALVIEW_PB1176 + help + Say Y here if you want the debug print routines to direct + their output to the standard serial port on the RealView + PB1176 platform. + endchoice config EARLY_PRINTK diff --cc arch/arm/mm/Kconfig index 7d5fff7b3632,9ab5be07061a..67f75a0b66d6 --- a/arch/arm/mm/Kconfig +++ b/arch/arm/mm/Kconfig @@@ -819,10 -819,10 +819,10 @@@ config CACHE_FEROCEON_L2_WRITETHROUG config CACHE_L2X0 bool "Enable the L2x0 outer cache controller" depends on REALVIEW_EB_ARM11MP || MACH_REALVIEW_PB11MP || MACH_REALVIEW_PB1176 || \ - REALVIEW_EB_A9MP || SOC_IMX35 || SOC_IMX31 || MACH_REALVIEW_PBX || \ + REALVIEW_EB_A9MP || ARCH_IMX_V6_V7 || MACH_REALVIEW_PBX || \ ARCH_NOMADIK || ARCH_OMAP4 || ARCH_EXYNOS4 || ARCH_TEGRA || \ ARCH_U8500 || ARCH_VEXPRESS_CA9X4 || ARCH_SHMOBILE || \ - ARCH_PRIMA2 || ARCH_ZYNQ || ARCH_CNS3XXX + ARCH_PRIMA2 || ARCH_ZYNQ || ARCH_CNS3XXX || ARCH_HIGHBANK default y select OUTER_CACHE select OUTER_CACHE_SYNC diff --cc arch/arm/plat-mxc/include/mach/common.h index c850af3650ea,6a7d993a17a6..83b745a5e1b7 --- a/arch/arm/plat-mxc/include/mach/common.h +++ b/arch/arm/plat-mxc/include/mach/common.h @@@ -64,8 -65,7 +65,9 @@@ extern int mx51_clocks_init(unsigned lo unsigned long ckih1, unsigned long ckih2); extern int mx53_clocks_init(unsigned long ckil, unsigned long osc, unsigned long ckih1, unsigned long ckih2); +extern int mx51_clocks_init_dt(void); +extern int mx53_clocks_init_dt(void); + extern int mx6q_clocks_init(void); extern struct platform_device *mxc_register_gpio(char *name, int id, resource_size_t iobase, resource_size_t iosize, int irq, int irq_high); extern void mxc_set_cpu_type(unsigned int type); @@@ -98,10 -99,31 +101,36 @@@ void gic_handle_irq(struct pt_regs *) #define imx50_handle_irq tzic_handle_irq #define imx51_handle_irq tzic_handle_irq #define imx53_handle_irq tzic_handle_irq + #define imx6q_handle_irq gic_handle_irq + extern void imx_enable_cpu(int cpu, bool enable); + extern void imx_set_cpu_jump(int cpu, void *jump_addr); + #ifdef CONFIG_DEBUG_LL + extern void imx_lluart_map_io(void); + #else + static inline void imx_lluart_map_io(void) {} + #endif + extern void v7_cpu_resume(void); + extern u32 *pl310_get_save_ptr(void); + #ifdef CONFIG_SMP + extern void v7_secondary_startup(void); + extern void imx_scu_map_io(void); + extern void imx_smp_prepare(void); + #else + static inline void imx_scu_map_io(void) {} + static inline void imx_smp_prepare(void) {} + #endif + extern void imx_enable_cpu(int cpu, bool enable); + extern void imx_set_cpu_jump(int cpu, void *jump_addr); + extern void imx_src_init(void); + extern void imx_gpc_init(void); + extern void imx_gpc_pre_suspend(void); + extern void imx_gpc_post_resume(void); +extern void imx51_babbage_common_init(void); +extern void imx53_ard_common_init(void); +extern void imx53_evk_common_init(void); +extern void imx53_qsb_common_init(void); +extern void imx53_smd_common_init(void); + extern int imx6q_set_lpm(enum mxc_cpu_pwr_mode mode); + extern void imx6q_pm_init(void); #endif