Merge tag 'pinctrl-for-v3.8' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw...
Linus Torvalds [Tue, 11 Dec 2012 19:21:33 +0000 (11:21 -0800)]
Pull pinctrl changes from Linus Walleij:
 "These are the first and major pinctrl changes for the v3.8 merge
  cycle.  Some of this is used as merge base for other trees so I better
  be early on the trigger.

  As can be seen from the diffstat the major changes are:

  - A big conversion of the AT91 pinctrl driver and the associated ACKed
    platform changes under arch/arm/max-at91 and its device trees.  This
    has been coordinated with the AT91 maintainers to go in through the
    pinctrl tree.

  - A larger chunk of changes to the SPEAr drivers and the addition of
    the "plgpio" driver for the SPEAr as well.

  - The removal of the remnants of the Nomadik driver from the arch/arm
    tree and fusion of that into the Nomadik driver and platform data
    header files.

  - Some local movement in the Marvell MVEBU drivers, these now have
    their own subdirectory.

  - The addition of a chunk of code to gpiolib under drivers/gpio to
    register gpio-to-pin range mappings from the GPIO side of things.
    This has been requested by Grant Likely and is now implemented, it
    is particularly useful for device tree work.

  Then we have incremental updates all over the place, many of these are
  cleanups and fixes from Axel Lin who has done a great job of removing
  minor mistakes and compilation annoyances."

* tag 'pinctrl-for-v3.8' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-pinctrl: (114 commits)
  ARM: mmp: select PINCTRL for ARCH_MMP
  pinctrl: Drop selecting PINCONF for MMP2, PXA168 and PXA910
  pinctrl: pinctrl-single: Fix error check condition
  pinctrl: SPEAr: Update error check for unsigned variables
  gpiolib: Fix use after free in gpiochip_add_pin_range
  gpiolib: rename pin range arguments
  pinctrl: single: support gpio request and free
  pinctrl: generic: add input schmitt disable parameter
  pinctrl/u300/coh901: stop spawning pinctrl from GPIO
  pinctrl/u300/coh901: let the gpio_chip register the range
  pinctrl: add function to retrieve range from pin
  gpiolib: return any error code from range creation
  pinctrl: make range registration defer properly
  gpiolib: rename find_pinctrl_*
  gpiolib: let gpiochip_add_pin_range() specify offset
  ARM: at91: pm9g45: add mmc support
  ARM: at91: Animeo IP: add mmc support
  ARM: at91: dt: add mmc pinctrl for Atmel reference boards
  ARM: at91: dt: at91sam9: add mmc pinctrl support
  ARM: at91/dts: add nodes for atmel hsmci controllers for atmel boards
  ...

1  2 
MAINTAINERS
arch/arm/Kconfig
drivers/pinctrl/Kconfig

diff --combined MAINTAINERS
@@@ -526,17 -526,17 +526,17 @@@ F:      drivers/video/geode
  F:    arch/x86/include/asm/geode.h
  
  AMD IOMMU (AMD-VI)
 -M:    Joerg Roedel <joerg.roedel@amd.com>
 +M:    Joerg Roedel <joro@8bytes.org>
  L:    iommu@lists.linux-foundation.org
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/joro/iommu.git
 -S:    Supported
 +S:    Maintained
  F:    drivers/iommu/amd_iommu*.[ch]
  F:    include/linux/amd-iommu.h
  
  AMD MICROCODE UPDATE SUPPORT
 -M:    Andreas Herrmann <andreas.herrmann3@amd.com>
 +M:    Andreas Herrmann <herrmann.der.user@googlemail.com>
  L:    amd64-microcode@amd64.org
 -S:    Supported
 +S:    Maintained
  F:    arch/x86/kernel/microcode_amd.c
  
  AMS (Apple Motion Sensor) DRIVER
@@@ -841,14 -841,6 +841,14 @@@ T:       git git://git.kernel.org/pub/scm/lin
  F:    arch/arm/mach-sa1100/jornada720.c
  F:    arch/arm/mach-sa1100/include/mach/jornada720.h
  
 +ARM/IGEP MACHINE SUPPORT
 +M:    Enric Balletbo i Serra <eballetbo@gmail.com>
 +M:    Javier Martinez Canillas <javier@dowhile0.org>
 +L:    linux-omap@vger.kernel.org
 +L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
 +S:    Maintained
 +F:    arch/arm/mach-omap2/board-igep0020.c
 +
  ARM/INCOME PXA270 SUPPORT
  M:    Marek Vasut <marek.vasut@gmail.com>
  L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
@@@ -1237,7 -1229,6 +1237,7 @@@ F:      drivers/video/wm8505fb
  F:    drivers/video/wmt_ge_rops.*
  F:    drivers/tty/serial/vt8500_serial.c
  F:    drivers/rtc/rtc-vt8500-c
 +F:    drivers/mmc/host/wmt-sdmmc.c
  
  ARM/ZIPIT Z2 SUPPORT
  M:    Marek Vasut <marek.vasut@gmail.com>
@@@ -1369,6 -1360,14 +1369,6 @@@ S:     Maintaine
  F:    drivers/atm/
  F:    include/linux/atm*
  
 -ATMEL AT91 MCI DRIVER
 -M:    Ludovic Desroches <ludovic.desroches@atmel.com>
 -L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
 -W:    http://www.atmel.com/products/AT91/
 -W:    http://www.at91.com/
 -S:    Maintained
 -F:    drivers/mmc/host/at91_mci.c
 -
  ATMEL AT91 / AT32 MCI DRIVER
  M:    Ludovic Desroches <ludovic.desroches@atmel.com>
  S:    Maintained
@@@ -2709,10 -2708,10 +2709,10 @@@ F:   include/linux/edac.
  
  EDAC-AMD64
  M:    Doug Thompson <dougthompson@xmission.com>
 -M:    Borislav Petkov <borislav.petkov@amd.com>
 +M:    Borislav Petkov <bp@alien8.de>
  L:    linux-edac@vger.kernel.org
  W:    bluesmoke.sourceforge.net
 -S:    Supported
 +S:    Maintained
  F:    drivers/edac/amd64_edac*
  
  EDAC-E752X
@@@ -3599,49 -3598,6 +3599,49 @@@ F:    drivers/hid/hid-hyperv.
  F:    drivers/net/hyperv/
  F:    drivers/staging/hv/
  
 +I2C OVER PARALLEL PORT
 +M:    Jean Delvare <khali@linux-fr.org>
 +L:    linux-i2c@vger.kernel.org
 +S:    Maintained
 +F:    Documentation/i2c/busses/i2c-parport
 +F:    Documentation/i2c/busses/i2c-parport-light
 +F:    drivers/i2c/busses/i2c-parport.c
 +F:    drivers/i2c/busses/i2c-parport-light.c
 +
 +I2C/SMBUS CONTROLLER DRIVERS FOR PC
 +M:    Jean Delvare <khali@linux-fr.org>
 +L:    linux-i2c@vger.kernel.org
 +S:    Maintained
 +F:    Documentation/i2c/busses/i2c-ali1535
 +F:    Documentation/i2c/busses/i2c-ali1563
 +F:    Documentation/i2c/busses/i2c-ali15x3
 +F:    Documentation/i2c/busses/i2c-amd756
 +F:    Documentation/i2c/busses/i2c-amd8111
 +F:    Documentation/i2c/busses/i2c-i801
 +F:    Documentation/i2c/busses/i2c-nforce2
 +F:    Documentation/i2c/busses/i2c-piix4
 +F:    Documentation/i2c/busses/i2c-sis5595
 +F:    Documentation/i2c/busses/i2c-sis630
 +F:    Documentation/i2c/busses/i2c-sis96x
 +F:    Documentation/i2c/busses/i2c-via
 +F:    Documentation/i2c/busses/i2c-viapro
 +F:    drivers/i2c/busses/i2c-ali1535.c
 +F:    drivers/i2c/busses/i2c-ali1563.c
 +F:    drivers/i2c/busses/i2c-ali15x3.c
 +F:    drivers/i2c/busses/i2c-amd756.c
 +F:    drivers/i2c/busses/i2c-amd756-s4882.c
 +F:    drivers/i2c/busses/i2c-amd8111.c
 +F:    drivers/i2c/busses/i2c-i801.c
 +F:    drivers/i2c/busses/i2c-isch.c
 +F:    drivers/i2c/busses/i2c-nforce2.c
 +F:    drivers/i2c/busses/i2c-nforce2-s4985.c
 +F:    drivers/i2c/busses/i2c-piix4.c
 +F:    drivers/i2c/busses/i2c-sis5595.c
 +F:    drivers/i2c/busses/i2c-sis630.c
 +F:    drivers/i2c/busses/i2c-sis96x.c
 +F:    drivers/i2c/busses/i2c-via.c
 +F:    drivers/i2c/busses/i2c-viapro.c
 +
  I2C/SMBUS STUB DRIVER
  M:    "Mark M. Hoffman" <mhoffman@lightlink.com>
  L:    linux-i2c@vger.kernel.org
@@@ -3649,8 -3605,9 +3649,8 @@@ S:      Maintaine
  F:    drivers/i2c/busses/i2c-stub.c
  
  I2C SUBSYSTEM
 -M:    "Jean Delvare (PC drivers, core)" <khali@linux-fr.org>
 +M:    Wolfram Sang <w.sang@pengutronix.de>
  M:    "Ben Dooks (embedded platforms)" <ben-linux@fluff.org>
 -M:    "Wolfram Sang (embedded platforms)" <w.sang@pengutronix.de>
  L:    linux-i2c@vger.kernel.org
  W:    http://i2c.wiki.kernel.org/
  T:    quilt kernel.org/pub/linux/kernel/people/jdelvare/linux-2.6/jdelvare-i2c/
@@@ -3661,13 -3618,6 +3661,13 @@@ F:    drivers/i2c
  F:    include/linux/i2c.h
  F:    include/linux/i2c-*.h
  
 +I2C-TAOS-EVM DRIVER
 +M:    Jean Delvare <khali@linux-fr.org>
 +L:    linux-i2c@vger.kernel.org
 +S:    Maintained
 +F:    Documentation/i2c/busses/i2c-taos-evm
 +F:    drivers/i2c/busses/i2c-taos-evm.c
 +
  I2C-TINY-USB DRIVER
  M:    Till Harbaum <till@harbaum.org>
  L:    linux-i2c@vger.kernel.org
@@@ -3754,7 -3704,7 +3754,7 @@@ S:      Maintaine
  F:    drivers/platform/x86/ideapad-laptop.c
  
  IDE/ATAPI DRIVERS
 -M:    Borislav Petkov <petkovbb@gmail.com>
 +M:    Borislav Petkov <bp@alien8.de>
  L:    linux-ide@vger.kernel.org
  S:    Maintained
  F:    Documentation/cdrom/ide-cd
@@@ -4281,8 -4231,8 +4281,8 @@@ F:      include/linux/lockd
  F:    include/linux/sunrpc/
  
  KERNEL VIRTUAL MACHINE (KVM)
 -M:    Avi Kivity <avi@redhat.com>
  M:    Marcelo Tosatti <mtosatti@redhat.com>
 +M:    Gleb Natapov <gleb@redhat.com>
  L:    kvm@vger.kernel.org
  W:    http://kvm.qumranet.com
  S:    Supported
@@@ -5414,7 -5364,7 +5414,7 @@@ S:      Maintaine
  F:    sound/drivers/opl4/
  
  OPROFILE
 -M:    Robert Richter <robert.richter@amd.com>
 +M:    Robert Richter <rric@kernel.org>
  L:    oprofile-list@lists.sf.net
  S:    Maintained
  F:    arch/*/include/asm/oprofile*.h
@@@ -5689,6 -5639,12 +5689,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
@@@ -7260,14 -7216,6 +7266,14 @@@ L:    linux-xtensa@linux-xtensa.or
  S:    Maintained
  F:    arch/xtensa/
  
 +THERMAL
 +M:      Zhang Rui <rui.zhang@intel.com>
 +L:      linux-pm@vger.kernel.org
 +T:      git git://git.kernel.org/pub/scm/linux/kernel/git/rzhang/linux.git
 +S:      Supported
 +F:      drivers/thermal/
 +F:      include/linux/thermal.h
 +
  THINKPAD ACPI EXTRAS DRIVER
  M:    Henrique de Moraes Holschuh <ibm-acpi@hmh.eng.br>
  L:    ibm-acpi-devel@lists.sourceforge.net
@@@ -7945,6 -7893,13 +7951,6 @@@ M:     Roger Luethi <rl@hellgate.ch
  S:    Maintained
  F:    drivers/net/ethernet/via/via-rhine.c
  
 -VIAPRO SMBUS DRIVER
 -M:    Jean Delvare <khali@linux-fr.org>
 -L:    linux-i2c@vger.kernel.org
 -S:    Maintained
 -F:    Documentation/i2c/busses/i2c-viapro
 -F:    drivers/i2c/busses/i2c-viapro.c
 -
  VIA SD/MMC CARD CONTROLLER DRIVER
  M:    Bruce Chang <brucechang@via.com.tw>
  M:    Harald Welte <HaraldWelte@viatech.com>
@@@ -8199,7 -8154,7 +8205,7 @@@ F:      drivers/platform/x8
  
  X86 MCE INFRASTRUCTURE
  M:    Tony Luck <tony.luck@intel.com>
 -M:    Borislav Petkov <bp@amd64.org>
 +M:    Borislav Petkov <bp@alien8.de>
  L:    linux-edac@vger.kernel.org
  S:    Maintained
  F:    arch/x86/kernel/cpu/mcheck/*
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.
@@@ -547,7 -549,6 +549,7 @@@ config ARCH_KIRKWOO
        select CPU_FEROCEON
        select GENERIC_CLOCKEVENTS
        select PCI
 +      select PCI_QUIRKS
        select PLAT_ORION_LEGACY
        help
          Support for the following Marvell Kirkwood series SoCs:
@@@ -587,6 -588,7 +589,7 @@@ config ARCH_MM
        select GPIO_PXA
        select IRQ_DOMAIN
        select NEED_MACH_GPIO_H
+       select PINCTRL
        select PLAT_PXA
        select SPARSE_IRQ
        help
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
@@@ -87,21 -96,18 +96,18 @@@ config PINCTRL_MMP
        bool "MMP2 pin controller driver"
        depends on ARCH_MMP
        select PINCTRL_PXA3xx
  
  config PINCTRL_MXS
        bool
+       select PINMUX
+       select PINCONF
  
  config PINCTRL_IMX23
        bool
-       select PINMUX
-       select PINCONF
        select PINCTRL_MXS
  
  config PINCTRL_IMX28
        bool
-       select PINMUX
-       select PINCONF
        select PINCTRL_MXS
  
  config PINCTRL_NOMADIK
@@@ -126,13 -132,11 +132,11 @@@ config PINCTRL_PXA16
        bool "PXA168 pin controller driver"
        depends on ARCH_MMP
        select PINCTRL_PXA3xx
-       select PINCONF
  
  config PINCTRL_PXA910
        bool "PXA910 pin controller driver"
        depends on ARCH_MMP
        select PINCTRL_PXA3xx
-       select PINCONF
  
  config PINCTRL_SINGLE
        tristate "One-register-per-pin type device tree based pinctrl driver"
          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
        bool
+       select PINMUX
+       select PINCONF
  
  config PINCTRL_TEGRA20
        bool
-       select PINMUX
-       select PINCONF
        select PINCTRL_TEGRA
  
  config PINCTRL_TEGRA30
        bool
-       select PINMUX
-       select PINCONF
        select PINCTRL_TEGRA
  
  config PINCTRL_U300
@@@ -178,7 -180,7 +180,7 @@@ config PINCTRL_COH90
          ports of 8 GPIO pins each.
  
  config PINCTRL_SAMSUNG
 -      bool "Samsung pinctrl driver"
 +      bool
        depends on OF && GPIOLIB
        select PINMUX
        select PINCONF
@@@ -188,27 -190,7 +190,7 @@@ config PINCTRL_EXYNOS
        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"