Merge branch 'at91' into devel
authorLinus Walleij <linus.walleij@linaro.org>
Sun, 11 Nov 2012 18:12:33 +0000 (19:12 +0100)
committerLinus Walleij <linus.walleij@linaro.org>
Sun, 11 Nov 2012 18:12:33 +0000 (19:12 +0100)
1  2 
MAINTAINERS
arch/arm/Kconfig
arch/arm/boot/dts/Makefile
arch/arm/boot/dts/at91sam9g20ek_common.dtsi
arch/arm/mach-at91/at91rm9200.c
arch/arm/mach-at91/at91sam9260.c
arch/arm/mach-at91/at91sam9261.c
arch/arm/mach-at91/at91sam9263.c
arch/arm/mach-at91/setup.c
drivers/pinctrl/Kconfig
drivers/pinctrl/Makefile

diff --combined MAINTAINERS
@@@ -235,7 -235,6 +235,7 @@@ F: drivers/platform/x86/acer-wmi.
  
  ACPI
  M:    Len Brown <lenb@kernel.org>
 +M:    Rafael J. Wysocki <rjw@sisk.pl>
  L:    linux-acpi@vger.kernel.org
  W:    http://www.lesswatts.org/projects/acpi/
  Q:    http://patchwork.kernel.org/project/linux-acpi/list/
@@@ -503,7 -502,7 +503,7 @@@ F: include/linux/altera_uart.
  F:    include/linux/altera_jtaguart.h
  
  AMD FAM15H PROCESSOR POWER MONITORING DRIVER
 -M:    Andreas Herrmann <andreas.herrmann3@amd.com>
 +M:    Andreas Herrmann <herrmann.der.user@googlemail.com>
  L:    lm-sensors@lm-sensors.org
  S:    Maintained
  F:    Documentation/hwmon/fam15h_power
@@@ -637,13 -636,6 +637,13 @@@ W:       http://www.arm.linux.org.uk
  S:    Maintained
  F:    arch/arm/
  
 +ARM SUB-ARCHITECTURES
 +L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
 +S:    MAINTAINED
 +F:    arch/arm/mach-*/
 +F:    arch/arm/plat-*/
 +T:    git git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc.git
 +
  ARM PRIMECELL AACI PL041 DRIVER
  M:    Russell King <linux@arm.linux.org.uk>
  S:    Maintained
@@@ -2507,7 -2499,6 +2507,7 @@@ M:      Joonyoung Shim <jy0922.shim@samsung.
  M:    Seung-Woo Kim <sw0312.kim@samsung.com>
  M:    Kyungmin Park <kyungmin.park@samsung.com>
  L:    dri-devel@lists.freedesktop.org
 +T:    git git://git.kernel.org/pub/scm/linux/kernel/git/daeinki/drm-exynos.git
  S:    Supported
  F:    drivers/gpu/drm/exynos
  F:    include/drm/exynos*
@@@ -2810,7 -2801,6 +2810,7 @@@ F:      sound/usb/misc/ua101.
  EXTENSIBLE FIRMWARE INTERFACE (EFI)
  M:    Matt Fleming <matt.fleming@intel.com>
  L:    linux-efi@vger.kernel.org
 +T:    git git://git.kernel.org/pub/scm/linux/kernel/git/mfleming/efi.git
  S:    Maintained
  F:    Documentation/x86/efi-stub.txt
  F:    arch/ia64/kernel/efi.c
@@@ -4382,7 -4372,7 +4382,7 @@@ F:      Documentation/scsi/53c700.tx
  F:    drivers/scsi/53c700*
  
  LED SUBSYSTEM
 -M:    Bryan Wu <bryan.wu@canonical.com>
 +M:    Bryan Wu <cooloney@gmail.com>
  M:    Richard Purdie <rpurdie@rpsys.net>
  L:    linux-leds@vger.kernel.org
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/cooloney/linux-leds.git
@@@ -5029,20 -5019,6 +5029,20 @@@ F:    net/ipv6
  F:    include/net/ip*
  F:    arch/x86/net/*
  
 +NETWORKING [IPSEC]
 +M:    Steffen Klassert <steffen.klassert@secunet.com>
 +M:    Herbert Xu <herbert@gondor.apana.org.au>
 +M:    "David S. Miller" <davem@davemloft.net>
 +L:    netdev@vger.kernel.org
 +T:    git git://git.kernel.org/pub/scm/linux/kernel/git/davem/net.git
 +S:    Maintained
 +F:    net/xfrm/
 +F:    net/key/
 +F:    net/ipv4/xfrm*
 +F:    net/ipv6/xfrm*
 +F:    include/uapi/linux/xfrm.h
 +F:    include/net/xfrm.h
 +
  NETWORKING [LABELED] (NetLabel, CIPSO, Labeled IPsec, SECMARK)
  M:    Paul Moore <paul@paul-moore.com>
  L:    netdev@vger.kernel.org
@@@ -5070,13 -5046,7 +5070,13 @@@ T:    git git://git.kernel.org/pub/scm/lin
  S:    Odd Fixes
  F:    drivers/net/
  F:    include/linux/if_*
 -F:    include/linux/*device.h
 +F:    include/linux/netdevice.h
 +F:    include/linux/arcdevice.h
 +F:    include/linux/etherdevice.h
 +F:    include/linux/fcdevice.h
 +F:    include/linux/fddidevice.h
 +F:    include/linux/hippidevice.h
 +F:    include/linux/inetdevice.h
  
  NETXEN (1/10) GbE SUPPORT
  M:    Sony Chacko <sony.chacko@qlogic.com>
@@@ -5639,6 -5609,12 +5639,12 @@@ S:    Maintaine
  F:    drivers/pinctrl/
  F:    include/linux/pinctrl/
  
+ PIN CONTROLLER - ATMEL AT91
+ M:    Jean-Christophe Plagniol-Villard <plagnioj@jcrosoft.com>
+ L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
+ S:    Maintained
+ F:    drivers/pinctrl/pinctrl-at91.c
  PIN CONTROLLER - ST SPEAR
  M:    Viresh Kumar <viresh.linux@gmail.com>
  L:    spear-devel@list.st.com
@@@ -5648,7 -5624,7 +5654,7 @@@ S:      Maintaine
  F:    drivers/pinctrl/spear/
  
  PKTCDVD DRIVER
 -M:    Peter Osterlund <petero2@telia.com>
 +M:    Jiri Kosina <jkosina@suse.cz>
  S:    Maintained
  F:    drivers/block/pktcdvd.c
  F:    include/linux/pktcdvd.h
@@@ -7761,13 -7737,6 +7767,13 @@@ W:    http://www.ideasonboard.org/uvc
  S:    Maintained
  F:    drivers/media/usb/uvc/
  
 +USB WEBCAM GADGET
 +M:    Laurent Pinchart <laurent.pinchart@ideasonboard.com>
 +L:    linux-usb@vger.kernel.org
 +S:    Maintained
 +F:    drivers/usb/gadget/*uvc*.c
 +F:    drivers/usb/gadget/webcam.c
 +
  USB WIRELESS RNDIS DRIVER (rndis_wlan)
  M:    Jussi Kivilinna <jussi.kivilinna@mbnet.fi>
  L:    linux-wireless@vger.kernel.org
diff --combined arch/arm/Kconfig
@@@ -330,6 -330,8 +330,8 @@@ config ARCH_AT9
        select IRQ_DOMAIN
        select NEED_MACH_GPIO_H
        select NEED_MACH_IO_H if PCCARD
+       select PINCTRL
+       select PINCTRL_AT91 if USE_OF
        help
          This enables support for systems based on Atmel
          AT91RM9200 and AT91SAM9* processors.
@@@ -1603,8 -1605,8 +1605,8 @@@ config NR_CPU
        default "4"
  
  config HOTPLUG_CPU
 -      bool "Support for hot-pluggable CPUs (EXPERIMENTAL)"
 -      depends on SMP && HOTPLUG && EXPERIMENTAL
 +      bool "Support for hot-pluggable CPUs"
 +      depends on SMP && HOTPLUG
        help
          Say Y here to experiment with turning CPUs off and on.  CPUs
          can be controlled through /sys/devices/system/cpu.
@@@ -1645,8 -1647,8 +1647,8 @@@ config H
        default 100
  
  config THUMB2_KERNEL
 -      bool "Compile the kernel in Thumb-2 mode (EXPERIMENTAL)"
 -      depends on CPU_V7 && !CPU_V6 && !CPU_V6K && EXPERIMENTAL
 +      bool "Compile the kernel in Thumb-2 mode"
 +      depends on CPU_V7 && !CPU_V6 && !CPU_V6K
        select AEABI
        select ARM_ASM_UNIFIED
        select ARM_UNWIND
@@@ -1850,7 -1852,6 +1852,7 @@@ config XEN_DOM
  config XEN
        bool "Xen guest support on ARM (EXPERIMENTAL)"
        depends on EXPERIMENTAL && ARM && OF
 +      depends on CPU_V7 && !CPU_V6
        help
          Say Y if you want to run Linux in a Virtual Machine on Xen on ARM.
  
@@@ -1,21 -1,33 +1,33 @@@
  ifeq ($(CONFIG_OF),y)
  
- dtb-$(CONFIG_ARCH_AT91) += aks-cdu.dtb \
-       at91sam9263ek.dtb \
-       at91sam9g20ek_2mmc.dtb \
-       at91sam9g20ek.dtb \
-       at91sam9g25ek.dtb \
-       at91sam9m10g45ek.dtb \
-       at91sam9n12ek.dtb \
-       ethernut5.dtb \
-       evk-pro3.dtb \
-       kizbox.dtb \
-       tny_a9260.dtb \
-       tny_a9263.dtb \
-       tny_a9g20.dtb \
-       usb_a9260.dtb \
-       usb_a9263.dtb \
-       usb_a9g20.dtb
+ # Keep at91 dtb files sorted alphabetically for each SoC
+ # sam9260
+ dtb-$(CONFIG_ARCH_AT91) += aks-cdu.dtb
+ dtb-$(CONFIG_ARCH_AT91) += ethernut5.dtb
+ dtb-$(CONFIG_ARCH_AT91) += evk-pro3.dtb
+ dtb-$(CONFIG_ARCH_AT91) += tny_a9260.dtb
+ dtb-$(CONFIG_ARCH_AT91) += usb_a9260.dtb
+ # sam9263
+ dtb-$(CONFIG_ARCH_AT91) += at91sam9263ek.dtb
+ dtb-$(CONFIG_ARCH_AT91) += tny_a9263.dtb
+ dtb-$(CONFIG_ARCH_AT91) += usb_a9263.dtb
+ # sam9g20
+ dtb-$(CONFIG_ARCH_AT91) += at91sam9g20ek.dtb
+ dtb-$(CONFIG_ARCH_AT91) += at91sam9g20ek_2mmc.dtb
+ dtb-$(CONFIG_ARCH_AT91) += kizbox.dtb
+ dtb-$(CONFIG_ARCH_AT91) += tny_a9g20.dtb
+ dtb-$(CONFIG_ARCH_AT91) += usb_a9g20.dtb
+ # sam9g45
+ dtb-$(CONFIG_ARCH_AT91) += at91sam9m10g45ek.dtb
+ # sam9n12
+ dtb-$(CONFIG_ARCH_AT91) += at91sam9n12ek.dtb
+ # sam9x5
+ dtb-$(CONFIG_ARCH_AT91) += at91sam9g15ek.dtb
+ dtb-$(CONFIG_ARCH_AT91) += at91sam9g25ek.dtb
+ dtb-$(CONFIG_ARCH_AT91) += at91sam9g35ek.dtb
+ dtb-$(CONFIG_ARCH_AT91) += at91sam9x25ek.dtb
+ dtb-$(CONFIG_ARCH_AT91) += at91sam9x35ek.dtb
  dtb-$(CONFIG_ARCH_BCM2835) += bcm2835-rpi-b.dtb
  dtb-$(CONFIG_ARCH_DOVE) += dove-cm-a510.dtb \
        dove-cubox.dtb \
@@@ -25,8 -37,6 +37,8 @@@ dtb-$(CONFIG_ARCH_EXYNOS) += exynos4210
        exynos4210-trats.dtb \
        exynos5250-smdk5250.dtb
  dtb-$(CONFIG_ARCH_HIGHBANK) += highbank.dtb
 +dtb-$(CONFIG_ARCH_INTEGRATOR) += integratorap.dtb \
 +      integratorcp.dtb
  dtb-$(CONFIG_ARCH_LPC32XX) += ea3250.dtb phy3250.dtb
  dtb-$(CONFIG_ARCH_KIRKWOOD) += kirkwood-dns320.dtb \
        kirkwood-dns325.dtb \
                        };
  
                        usart0: serial@fffb0000 {
+                               pinctrl-0 =
+                                       <&pinctrl_uart0
+                                        &pinctrl_uart0_rts_cts
+                                        &pinctrl_uart0_dtr_dsr
+                                        &pinctrl_uart0_dcd
+                                        &pinctrl_uart0_ri>;
                                status = "okay";
                        };
  
                #size-cells = <0>;
  
                btn3 {
 -                      label = "Buttin 3";
 +                      label = "Button 3";
                        gpios = <&pioA 30 1>;
                        linux,code = <0x103>;
                        gpio-key,wakeup;
                };
  
                btn4 {
 -                      label = "Buttin 4";
 +                      label = "Button 4";
                        gpios = <&pioA 31 1>;
                        linux,code = <0x104>;
                        gpio-key,wakeup;
@@@ -187,7 -187,7 +187,7 @@@ static struct clk_lookup periph_clocks_
        CLKDEV_CON_DEV_ID("pclk", "ssc.0", &ssc0_clk),
        CLKDEV_CON_DEV_ID("pclk", "ssc.1", &ssc1_clk),
        CLKDEV_CON_DEV_ID("pclk", "ssc.2", &ssc2_clk),
 -      CLKDEV_CON_DEV_ID(NULL, "i2c-at91rm9200", &twi_clk),
 +      CLKDEV_CON_DEV_ID(NULL, "i2c-at91rm9200.0", &twi_clk),
        /* fake hclk clock */
        CLKDEV_CON_DEV_ID("hclk", "at91_ohci", &ohci_clk),
        CLKDEV_CON_ID("pioA", &pioA_clk),
@@@ -361,10 -361,10 +361,10 @@@ static unsigned int at91rm9200_default_
        0       /* Advanced Interrupt Controller (IRQ6) */
  };
  
- struct at91_init_soc __initdata at91rm9200_soc = {
+ AT91_SOC_START(rm9200)
        .map_io = at91rm9200_map_io,
        .default_irq_priority = at91rm9200_default_irq_priority,
        .ioremap_registers = at91rm9200_ioremap_registers,
        .register_clocks = at91rm9200_register_clocks,
        .init = at91rm9200_initialize,
- };
+ AT91_SOC_END
@@@ -211,8 -211,8 +211,8 @@@ static struct clk_lookup periph_clocks_
        CLKDEV_CON_DEV_ID("t1_clk", "atmel_tcb.1", &tc4_clk),
        CLKDEV_CON_DEV_ID("t2_clk", "atmel_tcb.1", &tc5_clk),
        CLKDEV_CON_DEV_ID("pclk", "ssc.0", &ssc_clk),
 -      CLKDEV_CON_DEV_ID(NULL, "i2c-at91sam9260", &twi_clk),
 -      CLKDEV_CON_DEV_ID(NULL, "i2c-at91sam9g20", &twi_clk),
 +      CLKDEV_CON_DEV_ID(NULL, "i2c-at91sam9260.0", &twi_clk),
 +      CLKDEV_CON_DEV_ID(NULL, "i2c-at91sam9g20.0", &twi_clk),
        /* more usart lookup table for DT entries */
        CLKDEV_CON_DEV_ID("usart", "fffff200.serial", &mck),
        CLKDEV_CON_DEV_ID("usart", "fffb0000.serial", &usart0_clk),
        CLKDEV_CON_ID("pioA", &pioA_clk),
        CLKDEV_CON_ID("pioB", &pioB_clk),
        CLKDEV_CON_ID("pioC", &pioC_clk),
+       CLKDEV_CON_DEV_ID(NULL, "fffff400.gpio", &pioA_clk),
+       CLKDEV_CON_DEV_ID(NULL, "fffff600.gpio", &pioB_clk),
+       CLKDEV_CON_DEV_ID(NULL, "fffff800.gpio", &pioC_clk),
  };
  
  static struct clk_lookup usart_clocks_lookups[] = {
@@@ -390,10 -393,10 +393,10 @@@ static unsigned int at91sam9260_default
        0,      /* Advanced Interrupt Controller */
  };
  
- struct at91_init_soc __initdata at91sam9260_soc = {
+ AT91_SOC_START(sam9260)
        .map_io = at91sam9260_map_io,
        .default_irq_priority = at91sam9260_default_irq_priority,
        .ioremap_registers = at91sam9260_ioremap_registers,
        .register_clocks = at91sam9260_register_clocks,
        .init = at91sam9260_initialize,
- };
+ AT91_SOC_END
@@@ -178,8 -178,8 +178,8 @@@ static struct clk_lookup periph_clocks_
        CLKDEV_CON_DEV_ID("pclk", "ssc.1", &ssc1_clk),
        CLKDEV_CON_DEV_ID("pclk", "ssc.2", &ssc2_clk),
        CLKDEV_CON_DEV_ID("hclk", "at91_ohci", &hck0),
 -      CLKDEV_CON_DEV_ID(NULL, "i2c-at91sam9261", &twi_clk),
 -      CLKDEV_CON_DEV_ID(NULL, "i2c-at91sam9g10", &twi_clk),
 +      CLKDEV_CON_DEV_ID(NULL, "i2c-at91sam9261.0", &twi_clk),
 +      CLKDEV_CON_DEV_ID(NULL, "i2c-at91sam9g10.0", &twi_clk),
        CLKDEV_CON_ID("pioA", &pioA_clk),
        CLKDEV_CON_ID("pioB", &pioB_clk),
        CLKDEV_CON_ID("pioC", &pioC_clk),
@@@ -334,10 -334,10 +334,10 @@@ static unsigned int at91sam9261_default
        0,      /* Advanced Interrupt Controller */
  };
  
- struct at91_init_soc __initdata at91sam9261_soc = {
+ AT91_SOC_START(sam9261)
        .map_io = at91sam9261_map_io,
        .default_irq_priority = at91sam9261_default_irq_priority,
        .ioremap_registers = at91sam9261_ioremap_registers,
        .register_clocks = at91sam9261_register_clocks,
        .init = at91sam9261_initialize,
- };
+ AT91_SOC_END
@@@ -193,7 -193,7 +193,7 @@@ static struct clk_lookup periph_clocks_
        CLKDEV_CON_DEV_ID("spi_clk", "atmel_spi.0", &spi0_clk),
        CLKDEV_CON_DEV_ID("spi_clk", "atmel_spi.1", &spi1_clk),
        CLKDEV_CON_DEV_ID("t0_clk", "atmel_tcb.0", &tcb_clk),
 -      CLKDEV_CON_DEV_ID(NULL, "i2c-at91sam9260", &twi_clk),
 +      CLKDEV_CON_DEV_ID(NULL, "i2c-at91sam9260.0", &twi_clk),
        /* fake hclk clock */
        CLKDEV_CON_DEV_ID("hclk", "at91_ohci", &ohci_clk),
        CLKDEV_CON_ID("pioA", &pioA_clk),
        CLKDEV_CON_DEV_ID("spi_clk", "fffa4000.spi", &spi0_clk),
        CLKDEV_CON_DEV_ID("spi_clk", "fffa8000.spi", &spi1_clk),
        CLKDEV_CON_DEV_ID(NULL, "fff88000.i2c", &twi_clk),
+       CLKDEV_CON_DEV_ID(NULL, "fffff200.gpio", &pioA_clk),
+       CLKDEV_CON_DEV_ID(NULL, "fffff400.gpio", &pioB_clk),
+       CLKDEV_CON_DEV_ID(NULL, "fffff600.gpio", &pioCDE_clk),
+       CLKDEV_CON_DEV_ID(NULL, "fffff800.gpio", &pioCDE_clk),
+       CLKDEV_CON_DEV_ID(NULL, "fffffa00.gpio", &pioCDE_clk),
  };
  
  static struct clk_lookup usart_clocks_lookups[] = {
@@@ -365,10 -370,10 +370,10 @@@ static unsigned int at91sam9263_default
        0,      /* Advanced Interrupt Controller (IRQ1) */
  };
  
- struct at91_init_soc __initdata at91sam9263_soc = {
+ AT91_SOC_START(sam9263)
        .map_io = at91sam9263_map_io,
        .default_irq_priority = at91sam9263_default_irq_priority,
        .ioremap_registers = at91sam9263_ioremap_registers,
        .register_clocks = at91sam9263_register_clocks,
        .init = at91sam9263_initialize,
- };
+ AT91_SOC_END
@@@ -10,6 -10,7 +10,7 @@@
  #include <linux/mm.h>
  #include <linux/pm.h>
  #include <linux/of_address.h>
+ #include <linux/pinctrl/machine.h>
  
  #include <asm/system_misc.h>
  #include <asm/mach/map.h>
@@@ -47,7 -48,7 +48,7 @@@ void __init at91_init_irq_default(void
  void __init at91_init_interrupts(unsigned int *priority)
  {
        /* Initialize the AIC interrupt controller */
 -      at91_aic_init(priority);
 +      at91_aic_init(priority, at91_extern_irq);
  
        /* Enable GPIO interrupts */
        at91_gpio_irq_setup();
@@@ -151,7 -152,7 +152,7 @@@ static void __init soc_detect(u32 dbgu_
        }
  
        /* at91sam9g10 */
 -      if ((cidr & ~AT91_CIDR_EXT) == ARCH_ID_AT91SAM9G10) {
 +      if ((socid & ~AT91_CIDR_EXT) == ARCH_ID_AT91SAM9G10) {
                at91_soc_initdata.type = AT91_SOC_SAM9G10;
                at91_boot_soc = at91sam9261_soc;
        }
@@@ -448,7 -449,8 +449,8 @@@ void __init at91_dt_initialize(void
        /* Register the processor-specific clocks */
        at91_boot_soc.register_clocks();
  
-       at91_boot_soc.init();
+       if (at91_boot_soc.init)
+               at91_boot_soc.init();
  }
  #endif
  
@@@ -463,4 -465,6 +465,6 @@@ void __init at91_initialize(unsigned lo
        at91_boot_soc.register_clocks();
  
        at91_boot_soc.init();
+       pinctrl_provide_dummies();
  }
diff --combined drivers/pinctrl/Kconfig
@@@ -26,6 -26,15 +26,15 @@@ config DEBUG_PINCTR
        help
          Say Y here to add some extra checks and diagnostics to PINCTRL calls.
  
+ config PINCTRL_AT91
+       bool "AT91 pinctrl driver"
+       depends on OF
+       depends on ARCH_AT91
+       select PINMUX
+       select PINCONF
+       help
+         Say Y here to enable the at91 pinctrl driver
  config PINCTRL_BCM2835
        bool
        select PINMUX
@@@ -143,8 -152,8 +152,8 @@@ config PINCTRL_SINGL
          This selects the device tree based generic pinctrl driver.
  
  config PINCTRL_SIRF
 -      bool "CSR SiRFprimaII pin controller driver"
 -      depends on ARCH_PRIMA2
 +      bool "CSR SiRFprimaII/SiRFmarco pin controller driver"
 +      depends on ARCH_SIRF
        select PINMUX
  
  config PINCTRL_TEGRA
@@@ -179,16 -188,34 +188,16 @@@ config PINCTRL_COH90
  
  config PINCTRL_SAMSUNG
        bool "Samsung pinctrl driver"
 +      depends on OF && GPIOLIB
        select PINMUX
        select PINCONF
  
  config PINCTRL_EXYNOS4
        bool "Pinctrl driver data for Exynos4 SoC"
 +      depends on OF && GPIOLIB
        select PINCTRL_SAMSUNG
  
 -config PINCTRL_MVEBU
 -      bool
 -      depends on ARCH_MVEBU
 -      select PINMUX
 -      select PINCONF
 -
 -config PINCTRL_DOVE
 -      bool
 -      select PINCTRL_MVEBU
 -
 -config PINCTRL_KIRKWOOD
 -      bool
 -      select PINCTRL_MVEBU
 -
 -config PINCTRL_ARMADA_370
 -      bool
 -      select PINCTRL_MVEBU
 -
 -config PINCTRL_ARMADA_XP
 -      bool
 -      select PINCTRL_MVEBU
 +source "drivers/pinctrl/mvebu/Kconfig"
  
  source "drivers/pinctrl/spear/Kconfig"
  
diff --combined drivers/pinctrl/Makefile
@@@ -9,6 -9,7 +9,7 @@@ ifeq ($(CONFIG_OF),y
  obj-$(CONFIG_PINCTRL)         += devicetree.o
  endif
  obj-$(CONFIG_GENERIC_PINCONF) += pinconf-generic.o
+ obj-$(CONFIG_PINCTRL_AT91)    += pinctrl-at91.o
  obj-$(CONFIG_PINCTRL_BCM2835) += pinctrl-bcm2835.o
  obj-$(CONFIG_PINCTRL_IMX)     += pinctrl-imx.o
  obj-$(CONFIG_PINCTRL_IMX35)   += pinctrl-imx35.o
@@@ -36,8 -37,12 +37,8 @@@ obj-$(CONFIG_PINCTRL_U300)   += pinctrl-u
  obj-$(CONFIG_PINCTRL_COH901)  += pinctrl-coh901.o
  obj-$(CONFIG_PINCTRL_SAMSUNG) += pinctrl-samsung.o
  obj-$(CONFIG_PINCTRL_EXYNOS4) += pinctrl-exynos.o
 -obj-$(CONFIG_PINCTRL_MVEBU)   += pinctrl-mvebu.o
 -obj-$(CONFIG_PINCTRL_DOVE)    += pinctrl-dove.o
 -obj-$(CONFIG_PINCTRL_KIRKWOOD)        += pinctrl-kirkwood.o
 -obj-$(CONFIG_PINCTRL_ARMADA_370) += pinctrl-armada-370.o
 -obj-$(CONFIG_PINCTRL_ARMADA_XP)  += pinctrl-armada-xp.o
  obj-$(CONFIG_PINCTRL_XWAY)    += pinctrl-xway.o
  obj-$(CONFIG_PINCTRL_LANTIQ)  += pinctrl-lantiq.o
  
 +obj-$(CONFIG_PLAT_ORION)        += mvebu/
  obj-$(CONFIG_PLAT_SPEAR)      += spear/