• Linus Torvalds's avatar
    Merge tag 'gpio-v3.15-1' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-gpio · 154d6f18
    Linus Torvalds authored
    Pull bulk of gpio updates from Linus Walleij:
     "A pretty big chunk of changes this time, but it has all been on
      rotation in linux-next and had some testing.  Of course there will be
      some amount of fixes on top...
    
       - Merged in a branch of irqchip changes from Thomas Gleixner: we need
         to have new callbacks from the irqchip to determine if the GPIO
         line will be eligible for IRQs, and this callback must be able to
         say "no".  After some thinking I got the branch from tglx and have
         switched all current users over to use this.
    
       - Based on tglx patches, we have added some generic irqchip helpers
         in the gpiolib core.  These will help centralize code when GPIO
         drivers have simple chained/cascaded IRQs.  Drivers will still
         define their irqchip vtables, but the gpiolib core will take care
         of irqdomain set-up, mapping from local offsets to Linux irqs, and
         reserve resources by marking the GPIO lines for IRQs.
    
       - Initially the PL061 and Nomadik GPIO/pin control drivers have been
         switched over to use the new gpiochip-to-irqchip infrastructure
         with more drivers expected for the next kernel cycle.  The
         factoring of just two drivers still makes it worth it so it is
         already a win.
    
       - A new driver for the Synopsys DesignWare APB GPIO block.
    
       - Modify the DaVinci GPIO driver to be reusable also for the new TI
         Keystone architecture.
    
       - A new driver for the LSI ZEVIO SoCs.
    
       - Delete the obsolte tnetv107x driver.
    
       - Some incremental work on GPIO descriptors: have
         gpiod_direction_output() use a logical level, respecting assertion
         polarity through ACTIVE_LOW flags, adding gpiod_direction_output_raw()
         for the case where you want to set that very value.  Add
         gpiochip_get_desc() to fetch a GPIO descriptor from a specific
         offset on a certain chip inside driver code.
    
       - Switch ACPI GPIO code over to using gpiochip_get_desc() and get rid
         of gpio_to_desc().
    
       - The ACPI GPIO event handling code has been reworked after
         encountering an actual real life implementation.
    
       - Support for ACPI GPIO operation regions.
    
       - Generic GPIO chips can now be assigned labels/names from platform
         data.
    
       - We now clamp values returned from GPIO drivers to the boolean [0,1]
         range.
    
       - Some improved documentation on how to use the polarity flag was
         added.
    
       - a large slew of incremental driver updates and non-critical fixes.
         Some targeted for stable"
    
    * tag 'gpio-v3.15-1' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-gpio: (80 commits)
      gpio: rcar: Add helper variable dev = &pdev->dev
      gpio-lynxpoint: force gpio_get() to return "1" and "0" only
      gpio: unmap gpio irqs properly
      pch_gpio: set value before enabling output direction
      gpio: moxart: Actually set output state in moxart_gpio_direction_output()
      gpio: moxart: Avoid forward declaration
      gpio: mxs: Allow for recursive enable_irq_wake() call
      gpio: samsung: Add missing "break" statement
      gpio: twl4030: Remove redundant assignment
      gpio: dwapb: correct gpio-cells in binding document
      gpio: iop: fix devm_ioremap_resource() return value checking
      pinctrl: coh901: convert driver to use gpiolib irqchip
      pinctrl: nomadik: convert driver to use gpiolib irqchip
      gpio: pl061: convert driver to use gpiolib irqchip
      gpio: add IRQ chip helpers in gpiolib
      pinctrl: nomadik: factor in platform data container
      pinctrl: nomadik: rename secondary to latent
      gpio: Driver for SYSCON-based GPIOs
      gpio: generic: Use platform_device_id->driver_data field for driver flags
      pinctrl: coh901: move irq line locking to resource callbacks
      ...
    154d6f18
pinctrl-msm.c 24.3 KB