21 Apr, 2016

1 commit


01 Apr, 2016

1 commit


10 Jun, 2015

1 commit

  • Currently, pinctrl_register() just returns NULL on error, so the
    callers can not know the exact reason of the failure.

    Some of the pinctrl drivers return -EINVAL, some -ENODEV, and some
    -ENOMEM on error of pinctrl_register(), although the error code
    might be different from the real cause of the error.

    This commit reworks pinctrl_register() to return the appropriate
    error code and modifies all of the pinctrl drivers to use IS_ERR()
    for the error checking and PTR_ERR() for getting the error code.

    Signed-off-by: Masahiro Yamada
    Acked-by: Patrice Chotard
    Acked-by: Thierry Reding
    Acked-by: Heiko Stuebner
    Tested-by: Mika Westerberg
    Acked-by: Mika Westerberg
    Acked-by: Lee Jones
    Acked-by: Sören Brinkmann
    Acked-by: Laurent Pinchart
    Acked-by: Ray Jui
    Acked-by: Antoine Tenart
    Acked-by: Hongzhou Yang
    Acked-by: Wei Chen
    Signed-off-by: Linus Walleij

    Masahiro Yamada
     

27 Mar, 2015

1 commit

  • of_device_id is always used as const.
    (See driver.of_match_table and open firmware functions)

    Signed-off-by: Fabian Frederick
    Acked-by: Jean-Christophe PLAGNIOL-VILLARD
    Acked-by: Patrice Chotard
    Acked-by: Maxime Coquelin
    Acked-by: Hongzhou Yang
    Acked-by: Lee Jones
    Signed-off-by: Linus Walleij

    Fabian Frederick
     

20 Oct, 2014

1 commit


04 Sep, 2014

1 commit

  • commit 2243a87d90b42eb38bc281957df3e57c712b5e56
    "pinctrl: avoid duplicated calling enable_pinmux_setting for a pin"
    removed the .disable callback from the struct pinmux_ops,
    making the .enable() callback the only remaining callback.

    However .enable() is a bad name as it seems to imply that a
    muxing can also be disabled. Rename the callback to .set_mux()
    and also take this opportunity to clean out any remaining
    mentions of .disable() from the documentation.

    Acked-by: Stephen Warren
    Acked-by: Bjorn Andersson
    Acked-by: Fan Wu
    Signed-off-by: Linus Walleij

    Linus Walleij
     

08 Oct, 2013

2 commits


27 Sep, 2013

2 commits

  • Recent movement of all configurations of pin in the single call of
    pin_config_set(), it is aborting configuration if BIAS_PULL_PIN_DEFAULT
    is selected as return of configuration.

    The original idea was to just avoid any update on register for pull up/down
    configuration if this option is selected.

    Fixing this by just bypassing any register update for BIAS_PULL_PIN_DEFAULT
    and continuing the remaining configuration.

    Signed-off-by: Laxman Dewangan
    Signed-off-by: Linus Walleij

    Laxman Dewangan
     
  • Palmas pinmux and pin configuration support the single pin level
    configuration in place of pin group.

    Hence it is only require to pin_config_{set|get} and do not require
    pin_config_group_{set|get}. As core framework already check for
    require APIs availability, it is not require to implement as dummy
    for non-require ops and so removing it.

    Signed-off-by: Laxman Dewangan
    Signed-off-by: Linus Walleij

    Laxman Dewangan
     

28 Aug, 2013

1 commit

  • When setting pin configuration in the pinctrl framework, pin_config_set() or
    pin_config_group_set() is called in a loop to set one configuration at a time
    for the specified pin or group.

    This patch 1) removes the loop and 2) changes the API to pass the whole pin
    config array to the driver. It is now up to the driver to loop through the
    configs. This allows the driver to potentially combine configs and reduce the
    number of writes to pin config registers.

    All c files changed have been build-tested to verify the change compiles and
    that the corresponding .o is successfully generated.

    Signed-off-by: Sherman Yin
    Reviewed-by: Christian Daudt
    Reviewed-by: Matt Porter
    Tested-by: Stephen Warren
    Acked-by: Laurent Pinchart
    Signed-off-by: Linus Walleij

    Sherman Yin
     

23 Aug, 2013

1 commit

  • Add support to pass the config type like GROUP or PIN when using
    the utils or generic pin configuration APIs. This will make the
    APIs more generic.

    Added additional inline APIs such that it can be use directly as
    callback for the pinctrl_ops.

    Changes from V1:
    - Remove separate implementation for pins and group for
    pinctrl_utils_dt_free_map and improve this function
    to support both i.e. PINS and GROUPs.

    Signed-off-by: Laxman Dewangan
    Reviewed-by: Stephen Warren
    Tested-by: Stephen Warren
    Signed-off-by: Linus Walleij

    Laxman Dewangan
     

15 Aug, 2013

1 commit

  • TI Palmas series Power Management IC have multiple pins which can be
    configured for different functionality. This pins can be configured
    for different function. Also their properties like pull up/down,
    open drain enable/disable are configurable.

    Add support for pincontrol driver Palmas series device like TPS65913,
    TPS80036. The driver supports to be register from DT only.

    Changes from V1:
    - Add generic property for pins and functions in pinconf-generic.
    - Add APIs to map the DT and subnode.
    - Move common utils APIs to the pinctrl-utils from this file.
    - Update the binding document accordingly.
    Changes from V2:
    - Add ack by Lee.
    - Correct the binding docs.

    Signed-off-by: Laxman Dewangan
    Acked-by: Lee Jones
    Reviewed-by: Stephen Warren
    Signed-off-by: Linus Walleij

    Laxman Dewangan