1. 31 10月, 2017 1 次提交
    • M
      pinctrl: sunxi: Introduce the strict flag · aae842a3
      Maxime Ripard 提交于
      Our pinctrl device should have had strict set all along. However, it wasn't
      the case, and most of our old device trees also have a pinctrl group in
      addition to the GPIOs properties, which mean that we can't really turn it
      on now.
      
      All our new SoCs don't have that group, so we should still enable that mode
      on the newer one though.
      
      In order to enable it by default, add a flag that will allow to disable
      that mode that should be set by pinctrl drivers that cannot be migrated.
      Signed-off-by: NMaxime Ripard <maxime.ripard@free-electrons.com>
      Signed-off-by: NLinus Walleij <linus.walleij@linaro.org>
      aae842a3
  2. 20 10月, 2017 15 次提交
  3. 19 10月, 2017 3 次提交
    • P
      gpio: mcp23s08: add support for mcp23018 · ff0f2ce7
      Phil Reid 提交于
      This adds the required definitions for the mcp23018 which is the i2c
      variant of the mcp23s18.
      Signed-off-by: NPhil Reid <preid@electromag.com.au>
      Reviewed-by: NSebastian Reichel <sebastian.reichel@collabora.co.uk>
      Signed-off-by: NLinus Walleij <linus.walleij@linaro.org>
      ff0f2ce7
    • L
      blackfin: Fix local <asm/gpio.h> includes · 350bdb84
      Linus Walleij 提交于
      When making the pin control submenu globally visible, all kinds
      of oddities appear, in blackfin a few files were #including
      <linux/gpio.h> and relying on that to pull in <asm/gpio.h>.
      
      This was not working when pin control but not GPIOLIB was
      selected resulting in a breakage in allmodconfig. The code these
      files were using was still there and defined in <asm/gpio.h>
      just not pulle in from just including <linux/gpio.h>
      
      Simply add the required includes explicitly in the blackfin
      kernel core and everything compiles fine.
      
      Delete the use of the incorrect <linux/gpio.h> where possible.
      
      Add stubs to <asm/gpio.h> for the functions called from PM:
      these should probably also depend on !PINCTRL but since the
      global CONFIG_PM symbol is used to compile PM support,
      we need some more intrusive thing here, to be tested by
      Blackfin maintainers.
      
      Cc: Steven Miao <realmz6@gmail.com>
      Cc: Huanhuan Feng <huanhuan.feng@analog.com>
      Signed-off-by: NLinus Walleij <linus.walleij@linaro.org>
      350bdb84
    • L
      pinctrl: adi2: Fix Kconfig build problem · 1c363531
      Linus Walleij 提交于
      The build robot is complaining on Blackfin:
      
      drivers/pinctrl/pinctrl-adi2.c: In function 'port_setup':
      >> drivers/pinctrl/pinctrl-adi2.c:221:21: error: dereferencing
         pointer to incomplete type 'struct gpio_port_t'
            writew(readw(&regs->port_fer) & ~BIT(offset),
                              ^~
      drivers/pinctrl/pinctrl-adi2.c: In function 'adi_gpio_ack_irq':
      >> drivers/pinctrl/pinctrl-adi2.c:266:18: error: dereferencing
      pointer to incomplete type 'struct bfin_pint_regs'
            if (readl(&regs->invert_set) & pintbit)
                           ^~
      It seems the driver need to include <asm/gpio.h> and <asm/irq.h>
      to compile.
      
      The Blackfin architecture was re-defining the Kconfig
      PINCTRL symbol which is not OK, so replaced this with
      PINCTRL_BLACKFIN_ADI2 which selects PINCTRL and PINCTRL_ADI2
      just like most arches do.
      
      Further, the old GPIO driver symbol GPIO_ADI was possible to
      select at the same time as selecting PINCTRL. This was not
      working because the arch-local <asm/gpio.h> header contains
      an explicit #ifndef PINCTRL clause making compilation break
      if you combine them. The same is true for DEBUG_MMRS.
      
      Make sure the ADI2 pinctrl driver is not selected at the same
      time as the old GPIO implementation. (This should be converted
      to use gpiolib or pincontrol and move to drivers/...) Also make
      sure the old GPIO_ADI driver or DEBUG_MMRS is not selected at
      the same time as the new PINCTRL implementation, and only make
      PINCTRL_ADI2 selectable for the Blackfin families that actually
      have it.
      
      This way it is still possible to add e.g. I2C-based pin
      control expanders on the Blackfin.
      
      Cc: Steven Miao <realmz6@gmail.com>
      Cc: Huanhuan Feng <huanhuan.feng@analog.com>
      Signed-off-by: NLinus Walleij <linus.walleij@linaro.org>
      1c363531
  4. 17 10月, 2017 4 次提交
  5. 16 10月, 2017 2 次提交
  6. 15 10月, 2017 1 次提交
  7. 12 10月, 2017 1 次提交
  8. 11 10月, 2017 13 次提交