diff options
author | Bitan Biswas <bbiswas@nvidia.com> | 2011-07-21 17:32:53 +0530 |
---|---|---|
committer | Dan Willemsen <dwillemsen@nvidia.com> | 2011-11-30 21:47:55 -0800 |
commit | b51228481e6105e24c42ff30470ad31efa4e0279 (patch) | |
tree | 6df130e29ac95d0e88f31c0cba2eb3108ad64029 /arch/arm/mach-tegra/tegra3_tsensor.c | |
parent | 858bfc00630c812916b4d905b07a445d487d0f15 (diff) |
arm: tegra: fuse: tsensor specific fuse public API added
Defined public fuse API to extract tegra3 tsensor configuration
parameters.
bug 851791
Original-Change-Id: Ia14e2d515ee1d695556492464e8ceaf4b0d13477
Reviewed-on: http://git-master/r/42367
Reviewed-by: Bitan Biswas <bbiswas@nvidia.com>
Tested-by: Bitan Biswas <bbiswas@nvidia.com>
Reviewed-by: Varun Wadekar <vwadekar@nvidia.com>
Reviewed-by: Laxman Dewangan <ldewangan@nvidia.com>
Reviewed-by: Scott Williams <scwilliams@nvidia.com>
Rebase-Id: R1090e6ad78bcef23670ff647de86e695780f5b76
Diffstat (limited to 'arch/arm/mach-tegra/tegra3_tsensor.c')
-rw-r--r-- | arch/arm/mach-tegra/tegra3_tsensor.c | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/arch/arm/mach-tegra/tegra3_tsensor.c b/arch/arm/mach-tegra/tegra3_tsensor.c index cbf5c5ab2522..019513218939 100644 --- a/arch/arm/mach-tegra/tegra3_tsensor.c +++ b/arch/arm/mach-tegra/tegra3_tsensor.c @@ -20,6 +20,8 @@ #ifdef CONFIG_SENSORS_TEGRA_TSENSOR #include <mach/tsensor.h> +#include <mach/tegra_fuse.h> + #include "devices.h" #include "fuse.h" @@ -31,15 +33,17 @@ static struct tegra_tsensor_platform_data tsensor_data = { }; /* fuse revision constants used for tsensor */ -#define FUSE_TEST_PROGRAM_REVISION_0 0x128 #define TSENSOR_FUSE_REVISION_DECIMAL 8 #define TSENSOR_FUSE_REVISION_INTEGER 0 void __init tegra_tsensor_init(void) { unsigned int reg, fuse_rev_integer, fuse_rev_decimal; + int err; /* tsensor driver is instantiated based on fuse revision */ - reg = tegra_fuse_readl(FUSE_TEST_PROGRAM_REVISION_0); + err = tegra_fuse_get_revision(®); + if (err) + goto errLabel; fuse_rev_decimal = (reg & 0xf); fuse_rev_integer = ((reg >> 4) & 0x7); pr_info("\nTegra3 fuse revision %d.%d \n", fuse_rev_integer, @@ -50,7 +54,10 @@ void __init tegra_tsensor_init(void) tegra_tsensor_device.dev.platform_data = &tsensor_data; platform_device_register(&tegra_tsensor_device); } +errLabel: + return; } + #else void __init tegra_tsensor_init(void) { } #endif |