]> Gitweb @ Texas Instruments - Open Source Git Repositories - git.TI.com/gitweb - sitara-epos/sitara-epos-kernel.git/commitdiff
Merge for-next omap-testing cbus
authorTony Lindgren <tony@atomide.com>
Fri, 28 Jan 2011 01:36:25 +0000 (17:36 -0800)
committerTony Lindgren <tony@atomide.com>
Fri, 28 Jan 2011 01:36:25 +0000 (17:36 -0800)
1  2  3 
arch/arm/Kconfig
arch/arm/mach-omap1/board-nokia770.c
arch/arm/mach-omap2/board-n8x0.c
arch/arm/plat-omap/sram.c
drivers/Makefile

index 5cff165b7eb04ef092e09957cf05cf6b8eddfcee,ba304a3b053dca5312afed697d6d437f963438ad,e51b96e9ae52b3a8f985ca175fa6a8518e8e26ed..e5d620071a0a9d19cfc8734399c68c686d5ea0fd
@@@@ -7,15 -7,15 -13,12 +7,15 @@@@ config AR
        select HAVE_MEMBLOCK
        select RTC_LIB
        select SYS_SUPPORTS_APM_EMULATION
-       select GENERIC_ATOMIC64 if (!CPU_32v6K || !AEABI)
  -     select GENERIC_ATOMIC64 if (!CPU_32v6K)
+ +     select GENERIC_ATOMIC64 if (CPU_V6 || !CPU_32v6K || !AEABI)
        select HAVE_OPROFILE if (HAVE_PERF_EVENTS)
        select HAVE_ARCH_KGDB
  -     select HAVE_KPROBES if (!XIP_KERNEL)
  +     select HAVE_KPROBES if (!XIP_KERNEL && !THUMB2_KERNEL)
        select HAVE_KRETPROBES if (HAVE_KPROBES)
        select HAVE_FUNCTION_TRACER if (!XIP_KERNEL)
  +     select HAVE_FTRACE_MCOUNT_RECORD if (!XIP_KERNEL)
  +     select HAVE_DYNAMIC_FTRACE if (!XIP_KERNEL)
  +     select HAVE_FUNCTION_GRAPH_TRACER if (!THUMB2_KERNEL)
        select HAVE_GENERIC_DMA_COHERENT
        select HAVE_KERNEL_GZIP
        select HAVE_KERNEL_LZO
        select HAVE_PERF_EVENTS
        select PERF_USE_VMALLOC
        select HAVE_REGS_AND_STACK_ACCESS_API
-       select HAVE_HW_BREAKPOINT if (PERF_EVENTS && (CPU_V6 || CPU_V7))
+ +     select HAVE_HW_BREAKPOINT if (PERF_EVENTS && (CPU_V6 || CPU_V6K || CPU_V7))
  +     select HAVE_C_RECORDMCOUNT
  +     select HAVE_GENERIC_HARDIRQS
  +     select HAVE_SPARSE_IRQ
        help
          The ARM series is a line of low-power-consumption RISC chip designs
          licensed by ARM Ltd and targeted at embedded applications and
@@@@ -1064,7 -1064,7 -1003,7 +1064,7 @@@@ endi
   
   config ARM_ERRATA_411920
        bool "ARM errata: Invalidation of the Instruction Cache operation can fail"
-       depends on CPU_V6
  -     depends on CPU_V6 && !SMP
+ +     depends on CPU_V6 || CPU_V6K
        help
          Invalidation of the Instruction Cache operation can
          fail. This erratum is present in 1136 (before r1p4), 1156 and 1176.
@@@@ -1249,14 -1249,15 -1142,13 +1249,15 @@@@ source "kernel/time/Kconfig
   
   config SMP
        bool "Symmetric Multi-Processing (EXPERIMENTAL)"
  -     depends on EXPERIMENTAL && (REALVIEW_EB_ARM11MP || REALVIEW_EB_A9MP ||\
  -              MACH_REALVIEW_PB11MP || MACH_REALVIEW_PBX || ARCH_OMAP4 ||\
  -              ARCH_S5PV310 || ARCH_TEGRA || ARCH_U8500 || ARCH_VEXPRESS_CA9X4)
  +     depends on EXPERIMENTAL
+ +     depends on CPU_V6K || CPU_V7
        depends on GENERIC_CLOCKEVENTS
  +     depends on REALVIEW_EB_ARM11MP || REALVIEW_EB_A9MP || \
  +              MACH_REALVIEW_PB11MP || MACH_REALVIEW_PBX || ARCH_OMAP4 || \
  +              ARCH_S5PV310 || ARCH_TEGRA || ARCH_U8500 || ARCH_VEXPRESS_CA9X4 || \
  +              ARCH_MSM_SCORPIONMP || ARCH_SHMOBILE
        select USE_GENERIC_SMP_HELPERS
  -     select HAVE_ARM_SCU if ARCH_REALVIEW || ARCH_OMAP4 || ARCH_S5PV310 ||\
  -              ARCH_TEGRA || ARCH_U8500 || ARCH_VEXPRESS_CA9X4
  +     select HAVE_ARM_SCU if !ARCH_MSM_SCORPIONMP
        help
          This enables support for systems with more than one CPU. If you have
          a system with only one CPU, like most personal computers, say N. If
@@@@ -1360,8 -1361,8 -1240,8 +1361,8 @@@@ config H
        default 100
   
   config THUMB2_KERNEL
  -     bool "Compile the kernel in Thumb-2 mode"
  -     depends on CPU_V7 && EXPERIMENTAL
  +     bool "Compile the kernel in Thumb-2 mode (EXPERIMENTAL)"
-       depends on CPU_V7 && !CPU_V6 && EXPERIMENTAL
+ +     depends on CPU_V7 && !CPU_V6 && !CPU_V6K && EXPERIMENTAL
        select AEABI
        select ARM_ASM_UNIFIED
        help
Simple merge
index f396756872b7e474d565feb6bb22f2213451bde5,f396756872b7e474d565feb6bb22f2213451bde5,c4f9e18463f6a1584057d5805328536746441f14..1cb53bcab94845f97e7a1fef32fd380c86d04ba4
@@@@ -183,17 -183,17 -187,124 +186,116 @@@@ static struct mtd_partition onenand_par
        },
   };
   
  -static struct omap_onenand_platform_data board_onenand_data = {
  -     .cs             = 0,
  -     .gpio_irq       = 26,
  -     .parts          = onenand_partitions,
  -     .nr_parts       = ARRAY_SIZE(onenand_partitions),
  -     .flags          = ONENAND_SYNC_READ,
  +static struct omap_onenand_platform_data board_onenand_data[] = {
  +     {
  +             .cs             = 0,
  +             .gpio_irq       = 26,
  +             .parts          = onenand_partitions,
  +             .nr_parts       = ARRAY_SIZE(onenand_partitions),
  +             .flags          = ONENAND_SYNC_READ,
  +     }
   };
  -
  -static void __init n8x0_onenand_init(void)
  -{
  -     gpmc_onenand_init(&board_onenand_data);
  -}
  -
  -#else
  -
  -static void __init n8x0_onenand_init(void) {}
  -
   #endif
   
++ #if defined(CONFIG_CBUS) || defined(CONFIG_CBUS_MODULE)
++ 
++ static struct cbus_host_platform_data n8x0_cbus_data = {
++      .clk_gpio       = 66,
++      .dat_gpio       = 65,
++      .sel_gpio       = 64,
++ };
++ 
++ static struct platform_device n8x0_cbus_device = {
++      .name           = "cbus",
++      .id             = -1,
++      .dev            = {
++              .platform_data = &n8x0_cbus_data,
++      },
++ };
++ 
++ static struct resource retu_resource[] = {
++      {
++              .start  = -EINVAL, /* set later */
++              .flags  = IORESOURCE_IRQ,
++      },
++ };
++ 
++ static struct platform_device retu_device = {
++      .name           = "retu",
++      .id             = -1,
++      .resource       = retu_resource,
++      .num_resources  = ARRAY_SIZE(retu_resource),
++ };
++ 
++ static struct resource tahvo_resource[] = {
++      {
++              .start  = -EINVAL, /* set later */
++              .flags  = IORESOURCE_IRQ,
++      }
++ };
++ 
++ static struct platform_device tahvo_device = {
++      .name           = "tahvo",
++      .id             = -1,
++      .resource       = tahvo_resource,
++      .num_resources  = ARRAY_SIZE(tahvo_resource),
++ };
++ 
++ static struct platform_device tahvo_usb_device = {
++      .name           = "tahvo-usb",
++      .id             = -1,
++ };
++ 
++ static void __init n8x0_cbus_init(void)
++ {
++      int             ret;
++ 
++      platform_device_register(&n8x0_cbus_device);
++ 
++      ret = gpio_request(108, "RETU irq");
++      if (ret < 0) {
++              pr_err("retu: Unable to reserve IRQ GPIO\n");
++              return;
++      }
++ 
++      ret = gpio_direction_input(108);
++      if (ret < 0) {
++              pr_err("retu: Unable to change gpio direction\n");
++              gpio_free(108);
++              return;
++      }
++ 
++      set_irq_type(gpio_to_irq(108), IRQ_TYPE_EDGE_RISING);
++      retu_resource[0].start = gpio_to_irq(108);
++      platform_device_register(&retu_device);
++ 
++      ret = gpio_request(111, "TAHVO irq");
++      if (ret) {
++              pr_err("tahvo: Unable to reserve IRQ GPIO\n");
++              gpio_free(108);
++              return;
++      }
++ 
++      /* Set the pin as input */
++      ret = gpio_direction_input(111);
++      if (ret) {
++              pr_err("tahvo: Unable to change direction\n");
++              gpio_free(108);
++              gpio_free(111);
++              return;
++      }
++ 
++      tahvo_resource[0].start = gpio_to_irq(111);
++      platform_device_register(&tahvo_device);
++      platform_device_register(&tahvo_usb_device);
++ }
++ 
++ #else
++ static inline void __init n8x0_cbus_init(void)
++ {
++ }
++ #endif
++ 
   #if defined(CONFIG_MENELAUS) &&                                              \
        (defined(CONFIG_MMC_OMAP) || defined(CONFIG_MMC_OMAP_MODULE))
   
index aedcb3be4e6666832b6833d92eb0a5b38374ca6e,68fcc7dc56e7a4b4acf849f392e3320211822ba9,98c86ff172059e51ab75998da1431f33b32510b7..916c662ae410ed10919de1175deb14659240484f
@@@@ -312,8 -316,8 -335,8 +316,8 @@@@ u32 omap2_set_prcm(u32 dpll_ctrl_val, u
   }
   #endif
   
 --#ifdef CONFIG_ARCH_OMAP2420
  -int __init omap242x_sram_init(void)
 ++#ifdef CONFIG_SOC_OMAP2420
  +static int __init omap242x_sram_init(void)
   {
        _omap2_sram_ddr_init = omap_sram_push(omap242x_sram_ddr_init,
                                        omap242x_sram_ddr_init_sz);
@@@@ -333,8 -337,8 -356,8 +337,8 @@@@ static inline int omap242x_sram_init(vo
   }
   #endif
   
 --#ifdef CONFIG_ARCH_OMAP2430
  -int __init omap243x_sram_init(void)
 ++#ifdef CONFIG_SOC_OMAP2430
  +static int __init omap243x_sram_init(void)
   {
        _omap2_sram_ddr_init = omap_sram_push(omap243x_sram_ddr_init,
                                        omap243x_sram_ddr_init_sz);
Simple merge