]> rtime.felk.cvut.cz Git - sojka/nv-tegra/linux-3.10.git/commitdiff
misc: tegra-fuse: add api to read fuse opt subrevision
authorR Raj Kumar <rrajk@nvidia.com>
Wed, 19 Nov 2014 09:08:23 +0000 (14:38 +0530)
committerR Raj Kumar <rrajk@nvidia.com>
Fri, 28 Nov 2014 06:30:27 +0000 (22:30 -0800)
- Added a API in tegra fuse driver to read the fuse
opt subrevision of the device.
- Set tegra_chip_get_revision() api as public

Bug 200056821

Change-Id: I5d4008e27d828e1060d4ffbdd2cdc7f8bff80648
Signed-off-by: R Raj Kumar <rrajk@nvidia.com>
Reviewed-on: http://git-master/r/655176
Reviewed-by: Venu Byravarasu <vbyravarasu@nvidia.com>
drivers/misc/tegra-fuse/tegra21x_fuse_offsets.h
drivers/misc/tegra-fuse/tegra_fuse.c
include/linux/platform/tegra/common.h

index 5b6166102443a212d59be70e7f4886a60c129a9a..87597846d32f8cec4843992cc9565b72b92ff73f 100644 (file)
@@ -89,6 +89,8 @@
 #define FUSE_X_COORDINATE_MASK         0x1ff
 #define FUSE_Y_COORDINATE              0x218
 #define FUSE_Y_COORDINATE_MASK         0x1ff
+#define FUSE_OPT_SUBREVISION           0x248
+#define FUSE_OPT_SUBREVISION_MASK      0xF
 #define FUSE_RESERVED_CALIB            0x304
 #define FUSE_GPU_INFO                  0x390
 #define FUSE_GPU_INFO_MASK             (1<<2)
index 82971f5ceb7d81afe0b49878f47fb7a44bff1c36..53937bfb2c4a0747a6f5a8c1cbd657dcdeaf80e8 100644 (file)
@@ -1404,6 +1404,19 @@ static void tegra_set_bct_strapping(void)
        tegra_chip_bct_strapping = (reg & RAM_ID_MASK) >> RAM_CODE_SHIFT;
 }
 
+u32 tegra_get_fuse_opt_subrevision(void)
+{
+       u8 ret = 0;
+#ifdef CONFIG_ARCH_TEGRA_21x_SOC
+       u32 reg;
+
+       reg = tegra_fuse_readl(FUSE_OPT_SUBREVISION);
+
+       ret = reg & FUSE_OPT_SUBREVISION_MASK;
+#endif
+       return ret;
+}
+
 u32 tegra_get_sku_id(void)
 {
        return tegra_chip_sku_id;
index 3a91f6dd7726627222b1e60d54d5d2f8bc7fe0ee..f3ef7139ef7d4c82ad227b7eff985e8030659ccd 100644 (file)
@@ -46,6 +46,8 @@ extern struct dma_resize_notifier_ops vpr_dev_ops;
 u32 tegra_get_sku_id(void);
 u32 tegra_get_chip_id(void);
 u32 tegra_get_bct_strapping(void);
+u32 tegra_get_fuse_opt_subrevision(void);
+enum tegra_revision tegra_chip_get_revision(void);
 void __init display_tegra_dt_info(void);
 
 static inline int tegra_cpu_is_secure(void)