15 Aug, 2018

1 commit

  • Pull pin control updates from Linus Walleij:
    "This is the bulk of pin control changes for v4.19:

    Core changes:

    - Augment pinctrl_generic_add_group() and pinmux_generic_add_function()
    to return the selector for the added group/function to the caller
    and augment (hopefully) all drivers to handle this

    New subdrivers:

    - Qualcomm PM8998 and PM8005 are supported in the SPMI pin control
    and GPIO driver

    - Intel Ice Lake PCH (platform controller hub) support

    - NXP (ex Freescale) i.MX8MQ support

    - Berlin AS370 support

    Improvements to drivers:

    - Support interrupts on the Ocelot pin controller

    - Add SPI pins to the Uniphier driver

    - Define a GPIO compatible per SoC in the Tegra driver

    - Push Tegra initialization down in the initlevels

    - Support external wakeup interrupts on the Exynos

    - Add generic clocks pins to the meson driver

    - Add USB and HSCIF pins for some Renesas PFC chips

    - Suspend/resume support in the armada-37xx

    - Interrupt support for the Actions Semiconductor S900 also known as
    "owl"

    - Correct the pin ordering in Cedarfork

    - Debugfs output for INTF in the mcp23s08 driver

    - Avoid divisions in context save/restore in pinctrl-single

    The rest is minor bug fixes or cleanups"

    * tag 'pinctrl-v4.19-1' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-pinctrl: (69 commits)
    pinctrl: nomadik: silence uninitialized variable warning
    pinctrl: axp209: Fix NULL pointer dereference after allocation
    pinctrl: samsung: Remove duplicated "wakeup" in printk
    pinctrl: ocelot: add support for interrupt controller
    pinctrl: intel: Don't shadow error code of gpiochip_lock_as_irq()
    pinctrl: berlin: fix 'pctrl->functions' allocation in berlin_pinctrl_build_state
    gpio: tegra: Move driver registration to subsys_init level
    pinctrl: tegra: Move drivers registration to arch_init level
    pinctrl: baytrail: actually print the apparently misconfigured pin
    MAINTAINERS: Replace Heikki as maintainer of Intel pinctrl
    pinctrl: freescale: off by one in imx1_pinconf_group_dbg_show()
    pinctrl: uniphier: add spi pin-mux settings
    pinctrl: cannonlake: Fix community ordering for H variant
    pinctrl: tegra: define GPIO compatible node per SoC
    pinctrl: intel: Do pin translation when lock IRQ
    pinctrl: imx: off by one in imx_pinconf_group_dbg_show()
    pinctrl: mediatek: include chained_irq.h header
    pinctrl/amd: only handle irq if it is pending and unmasked
    pinctrl/amd: fix gpio irq level in debugfs
    pinctrl: stm32: add syscfg mask parameter
    ...

    Linus Torvalds
     

02 Jul, 2018

1 commit

  • The check to see if platform_get_irq failed is performed on the
    unsigned value of pctrl->irq[i] and the check is never true because
    an unsigned cannot be less than zero. Fix this by assinging the
    signed int ret to the return of platform_get_irq and checking ret
    instead.

    Detected by CoverityScan, CID#1470247 ("Unsigned comparison against 0")

    Fixes: 6c5d0736e9c0 ("pinctrl: actions: Add interrupt support for OWL S900 SoC")
    Signed-off-by: Colin Ian King
    Acked-by: Manivannan Sadhasivam
    Signed-off-by: Linus Walleij

    Colin Ian King
     

29 Jun, 2018

1 commit


18 Jun, 2018

1 commit

  • With gcc 4.1.2:

    drivers/pinctrl/actions/pinctrl-owl.c: In function ‘owl_pin_config_set’:
    drivers/pinctrl/actions/pinctrl-owl.c:336: warning: ‘ret’ may be used uninitialized in this function

    Indeed, if num_configs is zero, the uninitialized value will be returned
    as an error code.

    Fix this by preinitializing it to zero.

    Fixes: 2242ddfbf4d699b5 ("pinctrl: actions: Add Actions S900 pinctrl driver")
    Signed-off-by: Geert Uytterhoeven
    Acked-by: Manivannan Sadhasivam
    Signed-off-by: Linus Walleij

    Geert Uytterhoeven
     

23 May, 2018

1 commit


02 May, 2018

4 commits

  • 1. Fix Kconfig dependency for Actions Semi S900 pinctrl driver which
    generates below warning in x86:

    WARNING: unmet direct dependencies detected for PINCTRL_OWL
    Depends on [n]: PINCTRL [=y] && (ARCH_ACTIONS || COMPILE_TEST [=n]) && OF [=n]
    Selected by [y]:
    - PINCTRL_S900 [=y] && PINCTRL [=y]

    2. Add help text for OWL pinctrl driver

    Signed-off-by: Manivannan Sadhasivam
    Reported-by: Randy Dunlap
    Tested-by: Randy Dunlap
    Acked-by: Randy Dunlap
    Signed-off-by: Linus Walleij

    Manivannan Sadhasivam
     
  • There is a missing break in case PIN_CONFIG_DRIVE_STRENGTH leading to
    a fall-through to the PIN_CONFIG_SLEW_RATE case that performs different
    checks against *arg. This looks like an unintentional missing break so
    add in the break.

    Detected by CoverityScan, CID#1468456, 1468459 ("Missing break in switch")

    Fixes: 513d7a2f7e0f ("pinctrl: actions: Add Actions S900 pinctrl driver")
    Signed-off-by: Colin Ian King
    Acked-by: Manivannan Sadhasivam
    Signed-off-by: Linus Walleij

    Colin Ian King
     
  • s900_functions, s900_padinfo and s900_pads are local to the source and do
    not need to be in global scope, so make them static.

    Cleans up sparse warnings:
    drivers/pinctrl/actions/pinctrl-s900.c:1445:30: warning: symbol
    's900_functions' was not declared. Should it be static?
    drivers/pinctrl/actions/pinctrl-s900.c:1664:20: warning: symbol
    's900_padinfo' was not declared. Should it be static?
    drivers/pinctrl/actions/pinctrl-s900.c:207:31: warning: symbol
    's900_pads' was not declared. Should it be static?

    Signed-off-by: Colin Ian King
    Acked-by: Manivannan Sadhasivam
    Signed-off-by: Linus Walleij

    Colin Ian King
     
  • Add pinctrl driver for Actions Semi S900 SoC. The driver supports
    pinctrl, pinmux and pinconf functionalities through a range of registers
    common to both gpio driver and pinctrl driver.

    Pinmux functionality is available only for the pin groups while the
    pinconf functionality is available for both pin groups and individual
    pins.

    Signed-off-by: Manivannan Sadhasivam
    Signed-off-by: Linus Walleij

    Manivannan Sadhasivam