blob: 7347c88189370d3e3d7dbdf77e6150e0dceaa31e [file] [log] [blame]
Colin Cross73625e32010-06-23 15:49:17 -07001/*
Colin Cross73625e32010-06-23 15:49:17 -07002 * Copyright (C) 2010 Google, Inc.
3 *
4 * Author:
5 * Colin Cross <ccross@android.com>
6 *
7 * This software is licensed under the terms of the GNU General Public
8 * License version 2, as published by the Free Software Foundation, and
9 * may be copied, distributed, and modified under those terms.
10 *
11 * This program is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 * GNU General Public License for more details.
15 *
16 */
17
Olof Johansson9a1086d2011-10-13 00:31:20 -070018#ifndef __MACH_TEGRA_FUSE_H
19#define __MACH_TEGRA_FUSE_H
20
21enum tegra_revision {
22 TEGRA_REVISION_UNKNOWN = 0,
23 TEGRA_REVISION_A01,
24 TEGRA_REVISION_A02,
25 TEGRA_REVISION_A03,
26 TEGRA_REVISION_A03p,
27 TEGRA_REVISION_A04,
28 TEGRA_REVISION_MAX,
29};
30
31#define SKU_ID_T20 8
32#define SKU_ID_T25SE 20
33#define SKU_ID_AP25 23
34#define SKU_ID_T25 24
35#define SKU_ID_AP25E 27
36#define SKU_ID_T25E 28
37
Peter De Schrijver35b14982012-02-10 01:47:41 +020038#define TEGRA20 0x20
39#define TEGRA30 0x30
40
Olof Johansson9a1086d2011-10-13 00:31:20 -070041extern int tegra_sku_id;
42extern int tegra_cpu_process_id;
43extern int tegra_core_process_id;
Peter De Schrijver4c4ad662012-02-10 01:47:42 +020044extern int tegra_chip_id;
Danny Huang25cd5a32012-11-15 15:42:33 +080045extern int tegra_soc_speedo_id;
Olof Johansson9a1086d2011-10-13 00:31:20 -070046extern enum tegra_revision tegra_revision;
47
Olof Johanssondee47182011-10-17 16:39:24 -070048extern int tegra_bct_strapping;
49
Colin Cross73625e32010-06-23 15:49:17 -070050unsigned long long tegra_chip_uid(void);
Colin Cross73625e32010-06-23 15:49:17 -070051void tegra_init_fuse(void);
Danny Huang1f851a22012-11-15 15:42:32 +080052bool tegra_spare_fuse(int bit);
53u32 tegra_fuse_readl(unsigned long offset);
Olof Johansson9a1086d2011-10-13 00:31:20 -070054
Danny Huang25cd5a32012-11-15 15:42:33 +080055#ifdef CONFIG_ARCH_TEGRA_2x_SOC
56void tegra20_init_speedo_data(void);
57#else
58static inline void tegra20_init_speedo_data(void) {}
59#endif
60
Olof Johansson9a1086d2011-10-13 00:31:20 -070061#endif