[PATCH 3/4] ARM: tegra: Switch to new pinctrl driver
Linus Walleij
linus.walleij at linaro.org
Tue Jan 24 17:36:51 EST 2012
On Fri, Jan 20, 2012 at 7:22 PM, Stephen Warren <swarren at nvidia.com> wrote:
> * Rename old pinmux and new pinctrl platform driver and DT match table
> entries, so the new driver gets instantiated.
> * Re-write board-pinmux.c, so that it uses pinctrl APIs to configura the
> pinmux.
> * Re-write board-*-pinmux.c so that the pinmux configuration tables are
> in pinctrl format.
>
> Ventana's pin mux table needed some edits on top of the basic format
> conversion, since some mux options that were previously marked as
> reserved are now valid in the new pinctrl driver. Attempting to use the
> old reserved names will result in a failure. Specifically, groups lpw0,
> lpw2, lsc1, lsck, and lsda were changed from function rsvd4 to displaya,
> and group pta was changed from function rsvd2 to hdmi.
>
> All boards' pin mux tables needed some edits on top of the based format
> conversion, since function i2c was split into i2c1 (first general I2C
> controller) and i2cp (power I2C controller) to better align function
> definitions with HW blocks.
>
> Due to the split of mux tables into pure mux and pull/tristate tables,
> many entries in the separate Seaboard/Ventana tables could be merged
> into the common table, since the entries differed only in the portion
> in one of the tables, not both.
>
> Most pin groups allow configuration of mux, tri-state, and pull. However,
> some don't allow pull configuration, which is instead configured by new
> groups that only allow pull configuration. This is a reflection of the
> true HW capabilities, which weren't fully represented by the old pinmux
> driver. This required adding new pull table entries for those new groups,
> and setting many other entries' pull configuration to
> TEGRA_PINCONFIG_DONT_SET.
>
> Signed-off-by: Stephen Warren <swarren at nvidia.com>
> ---
> arch/arm/mach-tegra/board-harmony-pinmux.c | 362 ++++++++++++++-------
> arch/arm/mach-tegra/board-paz00-pinmux.c | 362 ++++++++++++++-------
> arch/arm/mach-tegra/board-pinmux.c | 62 ++++-
> arch/arm/mach-tegra/board-pinmux.h | 39 ++-
> arch/arm/mach-tegra/board-seaboard-pinmux.c | 442 ++++++++++++++++---------
> arch/arm/mach-tegra/board-trimslice-pinmux.c | 366 ++++++++++++++--------
> arch/arm/mach-tegra/pinmux.c | 6 +-
> drivers/pinctrl/pinctrl-tegra.c | 6 +-
> 8 files changed, 1095 insertions(+), 550 deletions(-)
Can I have Colin's or Olof's ACK on this Tegra stuff too?
Would feel better...
Acked-by: Linus Walleij <linus.walleij at linaro.org>
Thanks!
Linus Walleij
More information about the linux-arm-kernel
mailing list