1. 12 11月, 2012 7 次提交
    • V
      Revert "pinctrl: remove pinctrl_remove_gpio_range" · 7e10ee68
      Viresh Kumar 提交于
      This reverts earlier commit which removed
      pinctrl_remove_gpio_range(), because at that time there
      weren't any more users of that routine. It was removed as the
      removal of ranges was done in unregister of pinctrl.
      
      But as we are now registering stuff from gpiolib, we may
      remove and insert a gpio module multiple times. So, we
      need this routine again.
      Signed-off-by: NViresh Kumar <viresh.kumar@linaro.org>
      Signed-off-by: NLinus Walleij <linus.walleij@linaro.org>
      7e10ee68
    • A
      pinctrl: exynos: Add terminating entry for of_device_id table · afa538c2
      Axel Lin 提交于
      The of_device_id table is supposed to be zero-terminated.
      Signed-off-by: NAxel Lin <axel.lin@ingics.com>
      Signed-off-by: NLinus Walleij <linus.walleij@linaro.org>
      afa538c2
    • B
      pinctrl: sirf: enable the driver support new SiRFmarco SoC · d3e26f2f
      Barry Song 提交于
      The driver supports old up SiRFprimaII SoCs, this patch makes it support
      the new SiRFmarco as well.
      SiRFmarco, as a SMP SoC, adds new SIRFSOC_GPIO_PAD_EN_CLR registers, to
      disable GPIO pad, we should write 1 to the corresponding bit in the new
      CLEAR register instead of writing 0 to SIRFSOC_GPIO_PAD_EN.
      Signed-off-by: NBarry Song <Baohua.Song@csr.com>
      Signed-off-by: NLinus Walleij <linus.walleij@linaro.org>
      d3e26f2f
    • T
      pinctrl: mvebu: move to its own directory · 06763c74
      Thomas Petazzoni 提交于
      Like the spear platform, the mvebu platform has multiple files: one
      core file, and then one file per SoC family. More files will be added
      later, as support for mach-orion5x and mach-mv78xx0 SoCs is added to
      pinctrl-mvebu. For those reasons, having a separate subdirectory,
      drivers/pinctrl/mvebu/ makes sense, and it had already been suggested
      by Linus Wallej when the driver was originally submitted.
      Signed-off-by: NThomas Petazzoni <thomas.petazzoni@free-electrons.com>
      Signed-off-by: NLinus Walleij <linus.walleij@linaro.org>
      06763c74
    • T
      pinctrl: mvebu: remove useless include · de1d7625
      Thomas Petazzoni 提交于
      Including the core.h header for the pinctrl subsystem is not
      necessary, and it is actually causing problems when moving the
      pinctrl-mvebu drivers into a separate subdirectory.
      Signed-off-by: NThomas Petazzoni <thomas.petazzoni@free-electrons.com>
      Signed-off-by: NLinus Walleij <linus.walleij@linaro.org>
      de1d7625
    • T
      pinctrl: mvebu: allow plat-orion architectures to use pinctrl-mvebu · 55d2e40d
      Thomas Petazzoni 提交于
      The mach-kirkwood and mach-dove architectures have not yet been
      integrated into the mach-mvebu directory, which should ultimately
      contain the support for all Marvell SoCs from the Engineering Business
      Unit.
      
      However, before this can happen, we need to let mach-kirkwood and
      mach-dove use the pinctrl-mvebu driver, which supports the kirkwood
      and dove SoC families. In order to do that, we make this driver
      available as soon as PLAT_ORION is selected, instead of using
      ARCH_MVEBU as a condition. In the long term, PLAT_ORION should
      disappear and be fully replaced by ARCH_MVEBU, but the plan is to make
      the migration step by step, by first having the existing mach-*
      directories for Marvell SoCs converge on several infrastructures,
      including the pinctrl one.
      
      Also, like the spear pinctrl driver, we put all pinctrl-mvebu Kconfig
      options under a if, in order to avoid having certain options
      (PINCTRL_DOVE, PINCTRL_KIRKWOOD, etc.) selecting an option
      (PINCTLR_MVEBU) which itself has a dependency (on ARCH_MVEBU). In this
      a construct, the dependency is in fact ignored due to the selects.
      Signed-off-by: NThomas Petazzoni <thomas.petazzoni@free-electrons.com>
      Signed-off-by: NLinus Walleij <linus.walleij@linaro.org>
      55d2e40d
    • L
      pinctrl: reserve pins when states are activated · 1a78958d
      Linus Walleij 提交于
      This switches the way that pins are reserved for multiplexing:
      
      We used to do this when the map was parsed, at the creation of
      the settings inside the pinctrl handle, in pinmux_map_to_setting().
      
      However this does not work for us, because we want to use the
      same set of pins with different devices at different times: the
      current code assumes that the pin groups in a pinmux state will
      only be used with one single device, albeit different groups can
      be active at different times. For example if a single I2C driver
      block is used to drive two different busses located on two
      pin groups A and B, then the pins for all possible states of a
      function are reserved when fetching the pinctrl handle: the
      I2C bus can choose either set A or set B by a mux state at
      runtime, but all pins in both group A and B (the superset) are
      effectively reserved for that I2C function and mapped to the
      device. Another device can never get in and use the pins in
      group A, even if the device/function is using group B at the
      moment.
      
      Instead: let use reserve the pins when the state is activated
      and drop them when the state is disabled, i.e. when we move to
      another state. This way different devices/functions can use the
      same pins at different times.
      
      We know that this is an odd way of doing things, but we really
      need to switch e.g. an SD-card slot to become a tracing output
      sink at runtime: we plug in a special "tracing card" then mux
      the pins that used to be an SD slot around to the tracing
      unit and push out tracing data there instead of SD-card
      traffic.
      
      As a side effect pinmux_free_setting() is unused but the stubs
      are kept for future additions of code.
      
      Cc: Patrice Chotard <patrice.chotard@st.com>
      Cc: Loic Pallardy <loic.pallardy@st.com>
      Acked-by: NStephen Warren <swarren@nvidia.com>
      Tested-by: NJean Nicolas Graux <jean-nicolas.graux@stericsson.com>
      Signed-off-by: NLinus Walleij <linus.walleij@linaro.org>
      1a78958d
  2. 10 11月, 2012 3 次提交
  3. 09 11月, 2012 8 次提交
  4. 08 11月, 2012 22 次提交