[U-Boot] [PATCH v2 0/6] tegra2: Add more clock/pinmux functionality

Simon Glass sjg at chromium.org
Thu Sep 22 00:40:01 CEST 2011


This adds to the basic clock functionality already available. The concept
of a peripheral ID is introduced, and all peripheral clock access is done
using this ID.

Functions are provided to start, query and adjust peripheral clocks,
including automatic selection of the best available clock based on the
requested rate (this replaces hard-coded divisors).

On the pinmux side we can now select functions for pin groups using the
new pinmux_set_func() function.

Expanded functions are provided to adjust and query PLL clocks.

With a full compliment of clock and pinmux functions, it should no longer
be necessary for board/driver code to directly access clock registers. This
change removes all such accesses.

This functionality will be used for I2C, SPI, LCD, USB, keyboard, NAND and
other drivers for Tegra2.

At then end is a patch to enable MMC on Seaboard, to make it all worthwhile.

Note: These patches include a definition of assert() which I will happily
remove if the one sent upstream is accepted.

Changes in v2:
- Remove assert() which is now in common.h

Simon Glass (6):
  tegra2: Rename CLOCK_PLL_ID to CLOCK_ID
  tegra2: Clean up board code a little
  tegra2: Add more clock functions
  tegra2: Rename PIN_ to PINGRP_
  tegra2: Add more pinmux functions
  tegra2: Enable MMC for Seaboard

 arch/arm/cpu/armv7/tegra2/ap20.c           |    5 +-
 arch/arm/cpu/armv7/tegra2/clock.c          |  825 +++++++++++++++++++++++++++-
 arch/arm/cpu/armv7/tegra2/pinmux.c         |  528 ++++++++++++++++++-
 arch/arm/include/asm/arch-tegra2/clk_rst.h |   84 +--
 arch/arm/include/asm/arch-tegra2/clock.h   |  149 ++++-
 arch/arm/include/asm/arch-tegra2/pinmux.h  |  444 ++++++++++-----
 board/nvidia/common/board.c                |  243 +++------
 board/nvidia/common/board.h                |    4 +-
 board/nvidia/harmony/harmony.c             |   26 +
 board/nvidia/seaboard/seaboard.c           |   35 ++-
 drivers/mmc/tegra2_mmc.c                   |   94 ++--
 drivers/mmc/tegra2_mmc.h                   |    1 +
 12 files changed, 1950 insertions(+), 488 deletions(-)

-- 
1.7.3.1



More information about the U-Boot mailing list