22 Feb, 2018

1 commit


10 Jan, 2018

1 commit


08 Nov, 2017

1 commit


16 Jun, 2017

1 commit


23 Mar, 2017

1 commit


26 Jan, 2017

1 commit

  • Currently we already have two pin configuration related callbacks
    available for GPIO chips .set_single_ended() and .set_debounce(). In
    future we expect to have even more, which does not scale well if we need
    to add yet another callback to the GPIO chip structure for each possible
    configuration parameter.

    Better solution is to reuse what we already have available in the
    generic pinconf.

    To support this, we introduce a new .set_config() callback for GPIO
    chips. The callback takes a single packed pin configuration value as
    parameter. This can then be extended easily beyond what is currently
    supported by just adding new types to the generic pinconf enum.

    If the GPIO driver is backed up by a pinctrl driver the GPIO driver can
    just assign gpiochip_generic_config() (introduced in this patch) to
    .set_config and that will take care configuration requests are directed
    to the pinctrl driver.

    We then convert the existing drivers over .set_config() and finally
    remove the .set_single_ended() and .set_debounce() callbacks.

    Suggested-by: Linus Walleij
    Signed-off-by: Mika Westerberg
    Reviewed-by: Andy Shevchenko
    Signed-off-by: Linus Walleij

    Mika Westerberg
     

07 Dec, 2016

2 commits


24 Oct, 2016

1 commit


22 Jul, 2016

2 commits

  • There is a potential race when two threads do the writes to the same register
    in parallel.

    Prevent out of order in such case by protecting I/O access by spin lock.

    Signed-off-by: Andy Shevchenko
    Signed-off-by: Linus Walleij

    Andy Shevchenko
     
  • Intel Merrifield platform has a special GPIO controller to
    drive pads when they are muxed in corresponding mode.

    Intel Merrifield GPIO IP is slightly different here and there
    in comparison to the older Intel MID platforms. These differences
    include in particular the shaked register offsets, specific
    support of level triggered interrupts and wake capable sources,
    as well as a pinctrl which is a separate IP.

    Instead of uglifying existing driver I decide to provide a new
    one slightly based on gpio-intel-mid.c. So, anyone can easily
    compare what changes are happened to be here.

    Signed-off-by: Andy Shevchenko
    Acked-by: Brian J Wood
    Reviewed-by: Mika Westerberg
    Signed-off-by: Linus Walleij

    Andy Shevchenko