From mboxrd@z Thu Jan 1 00:00:00 1970 From: Stephen Warren Date: Mon, 03 Dec 2012 17:22:58 -0700 Subject: [U-Boot] [PATCH v2 1/7] Tegra30: Add arch-tegra30 include files In-Reply-To: <1354578322-1834-2-git-send-email-twarren@nvidia.com> References: <1354578322-1834-1-git-send-email-twarren@nvidia.com> <1354578322-1834-2-git-send-email-twarren@nvidia.com> Message-ID: <50BD4262.9050505@wwwdotorg.org> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de On 12/03/2012 04:45 PM, Tom Warren wrote: > Common Tegra files are in arch-tegra, shared between T20 and T30. > Tegra30-specific headers are in arch-tegra30. Note that some of > these will be filled in as more T30 support is added (drivers, > WB/LP0 support, etc.). A couple of Tegra20 files were changed > to support common headers in arch-tegra, also. > diff --git a/arch/arm/include/asm/arch-tegra/tegra.h b/arch/arm/include/asm/arch-tegra/tegra.h > +/* > + * These are used to distinguish SOC types for setting up clocks. Mostly > + * we can tell the clocking required by looking at the SOC sku_id, but > + * for T30 it is a user option as to whether to run PLLP in fast or slow > + * mode, so we have two options there. > + */ > enum { > TEGRA_SOC_T20, > TEGRA_SOC_T25, > + TEGRA_SOC_T30, > + TEGRA_SOC_T30_408MHZ, /* A T30 with faster PLLP */ > + TEGRA_SOC2_SLOW, /* T2x needs to run at slow clock initially */ > > - TEGRA_SOC_COUNT, > + TEGRA_SOC_CNT, > TEGRA_SOC_UNKNOWN = -1, > }; Can you remind me why TEGRA_SOC_T30_408MHZ exists; isn't it a SW thing whereas this enum is meant to be identifying the HW? > diff --git a/arch/arm/include/asm/arch-tegra30/funcmux.h b/arch/arm/include/asm/arch-tegra30/funcmux.h > +/* Configs supported by the func mux */ > +enum { > + FUNCMUX_DEFAULT = 0, /* default config */ > + > + /* UART configs */ > + FUNCMUX_UART1_ULPI = 0, funcmux isn't going to be remotely useful for Tegra30. There are something like 460 possible ways of muxing out (IIRC) just a 4-pin UART A on Tegra30. That's why when I was defining the proposed ODMDATA2 representation of UART pinmux for the Tegra30 BCT, I didn't have a single enum covering the entire UART configuration, but rather a 4-bit field per signal (RXD, TXD, RTS, CTS) that indicated which of the possible pins to route it to. Still, I guess having the initial port use funcmux is fine since we only need to support 1 option for now. We'll hopefully just convert it to use the BCT ODMDATA2 format rather quickly. A similar comment will probably apply to any other peripheral on Tegra30.