]> git.kernelconcepts.de Git - karo-tx-linux.git/commitdiff
Merge remote-tracking branch 'arm-soc/for-next'
authorStephen Rothwell <sfr@canb.auug.org.au>
Wed, 10 Oct 2012 03:25:01 +0000 (14:25 +1100)
committerStephen Rothwell <sfr@canb.auug.org.au>
Wed, 10 Oct 2012 03:25:01 +0000 (14:25 +1100)
1  2 
arch/arm/Kconfig
arch/arm/mach-davinci/da850.c
drivers/mmc/host/sdhci-tegra.c

diff --combined arch/arm/Kconfig
index cc42eca45487941ef0697ab040154aebbd5028c5,f3342d439af04cf85292d5f91005adbe09ac2fca..2cfaf3aacd8e3af757e95172d4ae54c167ea6616
@@@ -25,7 -25,6 +25,7 @@@ config AR
        select HAVE_FUNCTION_GRAPH_TRACER if (!THUMB2_KERNEL)
        select ARCH_BINFMT_ELF_RANDOMIZE_PIE
        select HAVE_GENERIC_DMA_COHERENT
 +      select HAVE_DEBUG_KMEMLEAK
        select HAVE_KERNEL_GZIP
        select HAVE_KERNEL_LZO
        select HAVE_KERNEL_LZMA
@@@ -40,7 -39,6 +40,7 @@@
        select HARDIRQS_SW_RESEND
        select GENERIC_IRQ_PROBE
        select GENERIC_IRQ_SHOW
 +      select HAVE_UID16
        select ARCH_WANT_IPC_PARSE_VERSION
        select HARDIRQS_SW_RESEND
        select CPU_PM if (SUSPEND || CPU_IDLE)
@@@ -52,8 -50,6 +52,8 @@@
        select GENERIC_STRNCPY_FROM_USER
        select GENERIC_STRNLEN_USER
        select DCACHE_WORD_ACCESS if (CPU_V6 || CPU_V6K || CPU_V7) && !CPU_BIG_ENDIAN
 +      select HAVE_MOD_ARCH_SPECIFIC if ARM_UNWIND
 +      select MODULES_USE_ELF_REL
        help
          The ARM series is a line of low-power-consumption RISC chip designs
          licensed by ARM Ltd and targeted at embedded applications and
@@@ -495,7 -491,6 +495,6 @@@ config ARCH_IOP32
        depends on MMU
        select CPU_XSCALE
        select NEED_MACH_GPIO_H
-       select NEED_MACH_IO_H
        select NEED_RET_TO_USER
        select PLAT_IOP
        select PCI
@@@ -509,7 -504,6 +508,6 @@@ config ARCH_IOP33
        depends on MMU
        select CPU_XSCALE
        select NEED_MACH_GPIO_H
-       select NEED_MACH_IO_H
        select NEED_RET_TO_USER
        select PLAT_IOP
        select PCI
index 28d7898fc19793de7b6105de088c7957b592c5c8,e517e1036b093562269dc8301448eea0aae9573d..b90c172d55413dc6e301ba15afff70f721d3c704
@@@ -347,13 -347,6 +347,13 @@@ static struct clk spi1_clk = 
        .flags          = DA850_CLK_ASYNC3,
  };
  
 +static struct clk vpif_clk = {
 +      .name           = "vpif",
 +      .parent         = &pll0_sysclk2,
 +      .lpsc           = DA850_LPSC1_VPIF,
 +      .gpsc           = 1,
 +};
 +
  static struct clk sata_clk = {
        .name           = "sata",
        .parent         = &pll0_sysclk2,
@@@ -404,7 -397,6 +404,7 @@@ static struct clk_lookup da850_clks[] 
        CLK(NULL,               "usb20",        &usb20_clk),
        CLK("spi_davinci.0",    NULL,           &spi0_clk),
        CLK("spi_davinci.1",    NULL,           &spi1_clk),
 +      CLK("vpif",             NULL,           &vpif_clk),
        CLK("ahci",             NULL,           &sata_clk),
        CLK(NULL,               NULL,           NULL),
  };
@@@ -581,46 -573,6 +581,46 @@@ static const struct mux_config da850_pi
        MUX_CFG(DA850, GPIO6_10,        13,     20,     15,     8,      false)
        MUX_CFG(DA850, GPIO6_13,        13,     8,      15,     8,      false)
        MUX_CFG(DA850, RTC_ALARM,       0,      28,     15,     2,      false)
 +      /* VPIF Capture */
 +      MUX_CFG(DA850, VPIF_DIN0,       15,     4,      15,     1,      false)
 +      MUX_CFG(DA850, VPIF_DIN1,       15,     0,      15,     1,      false)
 +      MUX_CFG(DA850, VPIF_DIN2,       14,     28,     15,     1,      false)
 +      MUX_CFG(DA850, VPIF_DIN3,       14,     24,     15,     1,      false)
 +      MUX_CFG(DA850, VPIF_DIN4,       14,     20,     15,     1,      false)
 +      MUX_CFG(DA850, VPIF_DIN5,       14,     16,     15,     1,      false)
 +      MUX_CFG(DA850, VPIF_DIN6,       14,     12,     15,     1,      false)
 +      MUX_CFG(DA850, VPIF_DIN7,       14,     8,      15,     1,      false)
 +      MUX_CFG(DA850, VPIF_DIN8,       16,     4,      15,     1,      false)
 +      MUX_CFG(DA850, VPIF_DIN9,       16,     0,      15,     1,      false)
 +      MUX_CFG(DA850, VPIF_DIN10,      15,     28,     15,     1,      false)
 +      MUX_CFG(DA850, VPIF_DIN11,      15,     24,     15,     1,      false)
 +      MUX_CFG(DA850, VPIF_DIN12,      15,     20,     15,     1,      false)
 +      MUX_CFG(DA850, VPIF_DIN13,      15,     16,     15,     1,      false)
 +      MUX_CFG(DA850, VPIF_DIN14,      15,     12,     15,     1,      false)
 +      MUX_CFG(DA850, VPIF_DIN15,      15,     8,      15,     1,      false)
 +      MUX_CFG(DA850, VPIF_CLKIN0,     14,     0,      15,     1,      false)
 +      MUX_CFG(DA850, VPIF_CLKIN1,     14,     4,      15,     1,      false)
 +      MUX_CFG(DA850, VPIF_CLKIN2,     19,     8,      15,     1,      false)
 +      MUX_CFG(DA850, VPIF_CLKIN3,     19,     16,     15,     1,      false)
 +      /* VPIF Display */
 +      MUX_CFG(DA850, VPIF_DOUT0,      17,     4,      15,     1,      false)
 +      MUX_CFG(DA850, VPIF_DOUT1,      17,     0,      15,     1,      false)
 +      MUX_CFG(DA850, VPIF_DOUT2,      16,     28,     15,     1,      false)
 +      MUX_CFG(DA850, VPIF_DOUT3,      16,     24,     15,     1,      false)
 +      MUX_CFG(DA850, VPIF_DOUT4,      16,     20,     15,     1,      false)
 +      MUX_CFG(DA850, VPIF_DOUT5,      16,     16,     15,     1,      false)
 +      MUX_CFG(DA850, VPIF_DOUT6,      16,     12,     15,     1,      false)
 +      MUX_CFG(DA850, VPIF_DOUT7,      16,     8,      15,     1,      false)
 +      MUX_CFG(DA850, VPIF_DOUT8,      18,     4,      15,     1,      false)
 +      MUX_CFG(DA850, VPIF_DOUT9,      18,     0,      15,     1,      false)
 +      MUX_CFG(DA850, VPIF_DOUT10,     17,     28,     15,     1,      false)
 +      MUX_CFG(DA850, VPIF_DOUT11,     17,     24,     15,     1,      false)
 +      MUX_CFG(DA850, VPIF_DOUT12,     17,     20,     15,     1,      false)
 +      MUX_CFG(DA850, VPIF_DOUT13,     17,     16,     15,     1,      false)
 +      MUX_CFG(DA850, VPIF_DOUT14,     17,     12,     15,     1,      false)
 +      MUX_CFG(DA850, VPIF_DOUT15,     17,     8,      15,     1,      false)
 +      MUX_CFG(DA850, VPIF_CLKO2,      19,     12,     15,     1,      false)
 +      MUX_CFG(DA850, VPIF_CLKO3,      19,     20,     15,     1,      false)
  #endif
  };
  
@@@ -643,26 -595,6 +643,26 @@@ const short da850_lcdcntl_pins[] __init
        -1
  };
  
 +const short da850_vpif_capture_pins[] __initdata = {
 +      DA850_VPIF_DIN0, DA850_VPIF_DIN1, DA850_VPIF_DIN2, DA850_VPIF_DIN3,
 +      DA850_VPIF_DIN4, DA850_VPIF_DIN5, DA850_VPIF_DIN6, DA850_VPIF_DIN7,
 +      DA850_VPIF_DIN8, DA850_VPIF_DIN9, DA850_VPIF_DIN10, DA850_VPIF_DIN11,
 +      DA850_VPIF_DIN12, DA850_VPIF_DIN13, DA850_VPIF_DIN14, DA850_VPIF_DIN15,
 +      DA850_VPIF_CLKIN0, DA850_VPIF_CLKIN1, DA850_VPIF_CLKIN2,
 +      DA850_VPIF_CLKIN3,
 +      -1
 +};
 +
 +const short da850_vpif_display_pins[] __initdata = {
 +      DA850_VPIF_DOUT0, DA850_VPIF_DOUT1, DA850_VPIF_DOUT2, DA850_VPIF_DOUT3,
 +      DA850_VPIF_DOUT4, DA850_VPIF_DOUT5, DA850_VPIF_DOUT6, DA850_VPIF_DOUT7,
 +      DA850_VPIF_DOUT8, DA850_VPIF_DOUT9, DA850_VPIF_DOUT10,
 +      DA850_VPIF_DOUT11, DA850_VPIF_DOUT12, DA850_VPIF_DOUT13,
 +      DA850_VPIF_DOUT14, DA850_VPIF_DOUT15, DA850_VPIF_CLKO2,
 +      DA850_VPIF_CLKO3,
 +      -1
 +};
 +
  /* FIQ are pri 0-1; otherwise 2-7, with 7 lowest priority */
  static u8 da850_default_priorities[DA850_N_CP_INTC_IRQ] = {
        [IRQ_DA8XX_COMMTX]              = 7,
@@@ -1007,7 -939,7 +1007,7 @@@ static struct platform_device da850_cpu
  
  unsigned int da850_max_speed = 300000;
  
- int __init da850_register_cpufreq(char *async_clk)
+ int da850_register_cpufreq(char *async_clk)
  {
        int i;
  
@@@ -1132,90 -1064,6 +1132,90 @@@ no_ddrpll_mem
        return ret;
  }
  
 +/* VPIF resource, platform data */
 +static u64 da850_vpif_dma_mask = DMA_BIT_MASK(32);
 +
 +static struct resource da850_vpif_resource[] = {
 +      {
 +              .start = DA8XX_VPIF_BASE,
 +              .end   = DA8XX_VPIF_BASE + 0xfff,
 +              .flags = IORESOURCE_MEM,
 +      }
 +};
 +
 +static struct platform_device da850_vpif_dev = {
 +      .name           = "vpif",
 +      .id             = -1,
 +      .dev            = {
 +              .dma_mask               = &da850_vpif_dma_mask,
 +              .coherent_dma_mask      = DMA_BIT_MASK(32),
 +      },
 +      .resource       = da850_vpif_resource,
 +      .num_resources  = ARRAY_SIZE(da850_vpif_resource),
 +};
 +
 +static struct resource da850_vpif_display_resource[] = {
 +      {
 +              .start = IRQ_DA850_VPIFINT,
 +              .end   = IRQ_DA850_VPIFINT,
 +              .flags = IORESOURCE_IRQ,
 +      },
 +};
 +
 +static struct platform_device da850_vpif_display_dev = {
 +      .name           = "vpif_display",
 +      .id             = -1,
 +      .dev            = {
 +              .dma_mask               = &da850_vpif_dma_mask,
 +              .coherent_dma_mask      = DMA_BIT_MASK(32),
 +      },
 +      .resource       = da850_vpif_display_resource,
 +      .num_resources  = ARRAY_SIZE(da850_vpif_display_resource),
 +};
 +
 +static struct resource da850_vpif_capture_resource[] = {
 +      {
 +              .start = IRQ_DA850_VPIFINT,
 +              .end   = IRQ_DA850_VPIFINT,
 +              .flags = IORESOURCE_IRQ,
 +      },
 +      {
 +              .start = IRQ_DA850_VPIFINT,
 +              .end   = IRQ_DA850_VPIFINT,
 +              .flags = IORESOURCE_IRQ,
 +      },
 +};
 +
 +static struct platform_device da850_vpif_capture_dev = {
 +      .name           = "vpif_capture",
 +      .id             = -1,
 +      .dev            = {
 +              .dma_mask               = &da850_vpif_dma_mask,
 +              .coherent_dma_mask      = DMA_BIT_MASK(32),
 +      },
 +      .resource       = da850_vpif_capture_resource,
 +      .num_resources  = ARRAY_SIZE(da850_vpif_capture_resource),
 +};
 +
 +int __init da850_register_vpif(void)
 +{
 +      return platform_device_register(&da850_vpif_dev);
 +}
 +
 +int __init da850_register_vpif_display(struct vpif_display_config
 +                                              *display_config)
 +{
 +      da850_vpif_display_dev.dev.platform_data = display_config;
 +      return platform_device_register(&da850_vpif_display_dev);
 +}
 +
 +int __init da850_register_vpif_capture(struct vpif_capture_config
 +                                                      *capture_config)
 +{
 +      da850_vpif_capture_dev.dev.platform_data = capture_config;
 +      return platform_device_register(&da850_vpif_capture_dev);
 +}
 +
  static struct davinci_soc_info davinci_soc_info_da850 = {
        .io_desc                = da850_io_desc,
        .io_desc_num            = ARRAY_SIZE(da850_io_desc),
index 84e8d0c59ee5673721d5637c49b81c4742fab5d1,aa8c4dec356e585e69b5489dcc3f234364e51bbc..f9eb9162370178793c804917aa57042f594757a5
@@@ -27,7 -27,6 +27,6 @@@
  
  #include <asm/gpio.h>
  
- #include <mach/gpio-tegra.h>
  #include <linux/platform_data/mmc-sdhci-tegra.h>
  
  #include "sdhci-pltfm.h"
@@@ -257,9 -256,10 +256,9 @@@ static int __devinit sdhci_tegra_probe(
        int rc;
  
        match = of_match_device(sdhci_tegra_dt_match, &pdev->dev);
 -      if (match)
 -              soc_data = match->data;
 -      else
 -              soc_data = &soc_data_tegra20;
 +      if (!match)
 +              return -EINVAL;
 +      soc_data = match->data;
  
        host = sdhci_pltfm_init(pdev, soc_data->pdata);
        if (IS_ERR(host))