diff options
author | Olof Johansson <olof@lixom.net> | 2011-10-13 00:31:20 -0700 |
---|---|---|
committer | Olof Johansson <olof@lixom.net> | 2012-02-06 18:24:59 -0800 |
commit | 9a1086da345cea8b2d1f01b47e5bbd81d640d642 (patch) | |
tree | bab04497a4c80058b030796a68f8ff1dd39f0595 /arch/arm/mach-tegra/fuse.h | |
parent | d262f49d10554ae2908e6d1d0e93fa736c4c0d06 (diff) | |
download | blackbird-obmc-linux-9a1086da345cea8b2d1f01b47e5bbd81d640d642.tar.gz blackbird-obmc-linux-9a1086da345cea8b2d1f01b47e5bbd81d640d642.zip |
ARM: tegra: fuse: add functions to access chip revision
Add function to get chip revision, and print it out at boot time.
Restructure the fuse access to just use cached variables instead
of always reading the fuses, and export those variables directly
instead of using accessor functions.
Add a SKU ID table of currently known values.
Based on code originally by Colin Cross <ccross@android.com>.
Changes since v1:
* Add A01 minor rev support
* Don't decode for A03p on anything but T2x
Signed-off-by: Olof Johansson <olof@lixom.net>
Acked-by: Stephen Warren <swarren@nvidia.com>
Diffstat (limited to 'arch/arm/mach-tegra/fuse.h')
-rw-r--r-- | arch/arm/mach-tegra/fuse.h | 32 |
1 files changed, 27 insertions, 5 deletions
diff --git a/arch/arm/mach-tegra/fuse.h b/arch/arm/mach-tegra/fuse.h index 584b2e27dbda..7576aaf6865c 100644 --- a/arch/arm/mach-tegra/fuse.h +++ b/arch/arm/mach-tegra/fuse.h @@ -1,6 +1,4 @@ /* - * arch/arm/mach-tegra/fuse.c - * * Copyright (C) 2010 Google, Inc. * * Author: @@ -17,8 +15,32 @@ * */ +#ifndef __MACH_TEGRA_FUSE_H +#define __MACH_TEGRA_FUSE_H + +enum tegra_revision { + TEGRA_REVISION_UNKNOWN = 0, + TEGRA_REVISION_A01, + TEGRA_REVISION_A02, + TEGRA_REVISION_A03, + TEGRA_REVISION_A03p, + TEGRA_REVISION_A04, + TEGRA_REVISION_MAX, +}; + +#define SKU_ID_T20 8 +#define SKU_ID_T25SE 20 +#define SKU_ID_AP25 23 +#define SKU_ID_T25 24 +#define SKU_ID_AP25E 27 +#define SKU_ID_T25E 28 + +extern int tegra_sku_id; +extern int tegra_cpu_process_id; +extern int tegra_core_process_id; +extern enum tegra_revision tegra_revision; + unsigned long long tegra_chip_uid(void); -int tegra_sku_id(void); -int tegra_cpu_process_id(void); -int tegra_core_process_id(void); void tegra_init_fuse(void); + +#endif |