]> git.kernelconcepts.de Git - karo-tx-linux.git/commitdiff
Merge branch 'imx/imx6q' into next/soc
authorArnd Bergmann <arnd@arndb.de>
Wed, 2 Nov 2011 01:46:55 +0000 (02:46 +0100)
committerArnd Bergmann <arnd@arndb.de>
Wed, 2 Nov 2011 01:46:55 +0000 (02:46 +0100)
Conflicts:
Documentation/devicetree/bindings/arm/fsl.txt
arch/arm/Kconfig
arch/arm/Kconfig.debug
arch/arm/plat-mxc/include/mach/common.h

1  2 
Documentation/devicetree/bindings/arm/fsl.txt
MAINTAINERS
arch/arm/Kconfig
arch/arm/Kconfig.debug
arch/arm/Makefile
arch/arm/mm/Kconfig
arch/arm/plat-mxc/include/mach/common.h

index e2401cd632abf991af6ed3723cb4b4fab58f2f16,345bfc036561baf3f5130c541ccae035bf93038e..c9848ad0e2e3c65967d5c047284a399987b32f33
@@@ -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 --combined MAINTAINERS
index 5066335b97decafe7010da714840f1ec56847975,33478f7bcc662512cf20c47f699001b6c71564ce..1ba8fffdd7ef1a924da1d00e2e8029a4460c63da
@@@ -688,12 -688,6 +688,12 @@@ F:       drivers/mtd/nand/bcm_umi_nand.
  F:    drivers/mtd/nand/bcm_umi_bch.c
  F:    drivers/mtd/nand/nand_bcm_umi.h
  
 +ARM/CALXEDA HIGHBANK ARCHITECTURE
 +M:    Rob Herring <rob.herring@calxeda.com>
 +L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
 +S:    Maintained
 +F:    arch/arm/mach-highbank/
 +
  ARM/CAVIUM NETWORKS CNS3XXX MACHINE SUPPORT
  M:    Anton Vorontsov <avorontsov@mvista.com>
  S:    Maintained
@@@ -793,6 -787,13 +793,13 @@@ L:       linux-arm-kernel@lists.infradead.or
  S:    Maintained
  F:    arch/arm/mach-mx5/
  
+ ARM/FREESCALE IMX6
+ M:    Shawn Guo <shawn.guo@linaro.org>
+ L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
+ S:    Maintained
+ T:    git git://git.linaro.org/people/shawnguo/linux-2.6.git
+ F:    arch/arm/mach-imx/*imx6*
  ARM/GLOMATION GESBC9312SX MACHINE SUPPORT
  M:    Lennert Buytenhek <kernel@wantstofly.org>
  L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
@@@ -2466,7 -2467,7 +2473,7 @@@ S:      Supporte
  F:    drivers/infiniband/hw/ehca/
  
  EHEA (IBM pSeries eHEA 10Gb ethernet adapter) DRIVER
 -M:    Breno Leitao <leitao@linux.vnet.ibm.com>
 +M:    Thadeu Lima de Souza Cascardo <cascardo@linux.vnet.ibm.com>
  L:    netdev@vger.kernel.org
  S:    Maintained
  F:    drivers/net/ehea/
@@@ -3319,7 -3320,7 +3326,7 @@@ M:      David Woodhouse <dwmw2@infradead.org
  L:    iommu@lists.linux-foundation.org
  T:    git git://git.infradead.org/iommu-2.6.git
  S:    Supported
 -F:    drivers/pci/intel-iommu.c
 +F:    drivers/iommu/intel-iommu.c
  F:    include/linux/intel-iommu.h
  
  INTEL IOP-ADMA DMA DRIVER
@@@ -6372,10 -6373,10 +6379,10 @@@ F:   net/ipv4/tcp_lp.
  
  TEGRA SUPPORT
  M:    Colin Cross <ccross@android.com>
 -M:    Erik Gilling <konkers@android.com>
  M:    Olof Johansson <olof@lixom.net>
 +M:    Stephen Warren <swarren@nvidia.com>
  L:    linux-tegra@vger.kernel.org
 -T:    git git://android.git.kernel.org/kernel/tegra.git
 +T:    git git://git.kernel.org/pub/scm/linux/kernel/git/olof/tegra.git
  S:    Supported
  F:    arch/arm/mach-tegra
  
diff --combined arch/arm/Kconfig
index 4fe1db171464a6f145f07b0fb4cbaf82d0c91aa2,18400a7b6ca1e932de1506a69c7c407352297b08..f41fe7a40019b4f59b4d80aac85fa0e867cb4129
@@@ -330,20 -330,6 +330,20 @@@ config ARCH_BCMRIN
        help
          Support for Broadcom's BCMRing platform.
  
 +config ARCH_HIGHBANK
 +      bool "Calxeda Highbank-based"
 +      select ARCH_WANT_OPTIONAL_GPIOLIB
 +      select ARM_AMBA
 +      select ARM_GIC
 +      select ARM_TIMER_SP804
 +      select CLKDEV_LOOKUP
 +      select CPU_V7
 +      select GENERIC_CLOCKEVENTS
 +      select HAVE_ARM_SCU
 +      select USE_OF
 +      help
 +        Support for the Calxeda Highbank SoC based boards.
 +
  config ARCH_CLPS711X
        bool "Cirrus Logic CLPS711x/EP721x-based"
        select CPU_ARM720T
@@@ -643,24 -629,6 +643,24 @@@ config ARCH_TEGR
          This enables support for NVIDIA Tegra based systems (Tegra APX,
          Tegra 6xx and Tegra 2 series).
  
 +config ARCH_PICOXCELL
 +      bool "Picochip picoXcell"
 +      select ARCH_REQUIRE_GPIOLIB
 +      select ARM_PATCH_PHYS_VIRT
 +      select ARM_VIC
 +      select CPU_V6K
 +      select DW_APB_TIMER
 +      select GENERIC_CLOCKEVENTS
 +      select GENERIC_GPIO
 +      select HAVE_SCHED_CLOCK
 +      select HAVE_TCM
 +      select NO_IOPORT
 +      select USE_OF
 +      help
 +        This enables support for systems based on the Picochip picoXcell
 +        family of Femtocell devices.  The picoxcell support requires device tree
 +        for all boards.
 +
  config ARCH_PNX4008
        bool "Philips Nexperia PNX4008 Mobile"
        select CPU_ARM926T
@@@ -894,7 -862,6 +894,7 @@@ config ARCH_U30
        select CLKDEV_LOOKUP
        select HAVE_MACH_CLKDEV
        select GENERIC_GPIO
 +      select ARCH_REQUIRE_GPIOLIB
        select NEED_MACH_MEMORY_H
        help
          Support for ST-Ericsson U300 series mobile platforms.
@@@ -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 --combined arch/arm/Kconfig.debug
index 4bb7eb90f0706797f84b47dd442ebedf4295887e,a1cb48497312393b7c1156b7390f4cc0eaa16b95..c865b927136464568904dee22f05ca586e11dced
@@@ -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
@@@ -153,18 -258,6 +265,6 @@@ config OC_ET
          buffer driver that will allow you to collect traces of the
          kernel code.
  
- config DEBUG_S3C_UART
-       depends on PLAT_SAMSUNG
-       int "S3C UART to use for low-level debug"
-       default "0"
-       help
-         Choice for UART for kernel low-level using S3C UARTS,
-         should be between zero and two. 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 ARM_KPROBES_TEST
        tristate "Kprobes test module"
        depends on KPROBES && MODULES
diff --combined arch/arm/Makefile
index e775f93844a7b7731a6f830636f16a92f4b5236f,4e98937f1b2d784a5dd52efbc380beaa2974529f..ae458aee8b68cc773db52a61a5a1d1d593c3abdf
@@@ -144,7 -144,6 +144,7 @@@ machine-$(CONFIG_ARCH_EBSA110)             := ebsa
  machine-$(CONFIG_ARCH_EP93XX)         := ep93xx
  machine-$(CONFIG_ARCH_GEMINI)         := gemini
  machine-$(CONFIG_ARCH_H720X)          := h720x
 +machine-$(CONFIG_ARCH_HIGHBANK)               := highbank
  machine-$(CONFIG_ARCH_INTEGRATOR)     := integrator
  machine-$(CONFIG_ARCH_IOP13XX)                := iop13xx
  machine-$(CONFIG_ARCH_IOP32X)         := iop32x
@@@ -159,7 -158,7 +159,7 @@@ machine-$(CONFIG_ARCH_MMP)         := mm
  machine-$(CONFIG_ARCH_MSM)            := msm
  machine-$(CONFIG_ARCH_MV78XX0)                := mv78xx0
  machine-$(CONFIG_ARCH_IMX_V4_V5)      := imx
- machine-$(CONFIG_ARCH_MX3)            := imx
+ machine-$(CONFIG_ARCH_IMX_V6_V7)      := imx
  machine-$(CONFIG_ARCH_MX5)            := mx5
  machine-$(CONFIG_ARCH_MXS)            := mxs
  machine-$(CONFIG_ARCH_NETX)           := netx
@@@ -169,7 -168,6 +169,7 @@@ machine-$(CONFIG_ARCH_OMAP2)               := omap
  machine-$(CONFIG_ARCH_OMAP3)          := omap2
  machine-$(CONFIG_ARCH_OMAP4)          := omap2
  machine-$(CONFIG_ARCH_ORION5X)                := orion5x
 +machine-$(CONFIG_ARCH_PICOXCELL)      := picoxcell
  machine-$(CONFIG_ARCH_PNX4008)                := pnx4008
  machine-$(CONFIG_ARCH_PRIMA2)         := prima2
  machine-$(CONFIG_ARCH_PXA)            := pxa
diff --combined arch/arm/mm/Kconfig
index 7d5fff7b36322ef5b8b1ff49a62737c27ec6835b,9ab5be07061a21dd6f67d7f476c3cec2c314774a..67f75a0b66d640c4ffdd44b74fc2ac37e8b0063d
@@@ -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
index c850af3650ea5754ab0c6653a9d1cd1e2893c852,6a7d993a17a695075862f50ccf9b81179d943173..83b745a5e1b724e92ee87be633dc15b00edab968
@@@ -13,6 -13,7 +13,7 @@@
  
  struct platform_device;
  struct clk;
+ enum mxc_cpu_pwr_mode;
  
  extern void mx1_map_io(void);
  extern void mx21_map_io(void);
@@@ -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);
@@@ -88,6 -88,7 +90,7 @@@ extern void imx_print_silicon_rev(cons
  
  void avic_handle_irq(struct pt_regs *);
  void tzic_handle_irq(struct pt_regs *);
+ void gic_handle_irq(struct pt_regs *);
  
  #define imx1_handle_irq avic_handle_irq
  #define imx21_handle_irq avic_handle_irq
  #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