summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBill Zhou <zhoub@marvell.com>2015-06-19 10:44:16 +0800
committerTim Wang <wangtt@marvell.com>2015-06-23 17:31:49 +0800
commit6f514d5487aef1c5293e0e9862c19269e9996076 (patch)
treed27a57b0e28e65ee358f07b059224a4b27267694
parent61dcb4d6b5f5608dd8c39a10aa41da95276ff685 (diff)
downloadmarvell-6f514d5487aef1c5293e0e9862c19269e9996076.tar.gz
clk: mmp: pxa1936: add interface to detect TSMC B0
GC team need this interface to distinguish TSMC B0 from others and use different GC3d pp table accordingly. Change-Id: I35b9a51b1d404466cd5bfc439ecd48a7bff39dc6 Signed-off-by: Bill Zhou <zhoub@marvell.com>
-rw-r--r--drivers/clk/mmp/dvfs-pxa1936.c14
-rw-r--r--include/linux/clk/mmpfuse.h1
2 files changed, 15 insertions, 0 deletions
diff --git a/drivers/clk/mmp/dvfs-pxa1936.c b/drivers/clk/mmp/dvfs-pxa1936.c
index 90907ae16a1..f3fac876cb5 100644
--- a/drivers/clk/mmp/dvfs-pxa1936.c
+++ b/drivers/clk/mmp/dvfs-pxa1936.c
@@ -318,6 +318,20 @@ char *convert_step_revision(unsigned int step_id)
return "not SEC and TSMC chip";
}
+/*
+ * This interface will be used by GC to detect whether chip
+ * stepping is TSMC_B0, and they will use it to distinguish
+ * GC3d pp table.
+ */
+int is_helan3_stepping_TSMC_B0(void)
+{
+ if (chip_stepping == TSMC_28LP_B020A || chip_stepping == TSMC_28LP_B121A)
+ return 1;
+
+ return 0;
+}
+EXPORT_SYMBOL(is_helan3_stepping_TSMC_B0);
+
static int __init __init_read_droinfo(void)
{
struct fuse_info arg;
diff --git a/include/linux/clk/mmpfuse.h b/include/linux/clk/mmpfuse.h
index 348349eba22..ac1d6107d54 100644
--- a/include/linux/clk/mmpfuse.h
+++ b/include/linux/clk/mmpfuse.h
@@ -7,6 +7,7 @@ extern unsigned int get_iddq_130(void);
extern unsigned int get_skusetting(void);
extern unsigned int get_chipfab(void);
extern int get_fuse_suspd_voltage(void); /* unit: mV */
+extern int is_helan3_stepping_TSMC_B0(void);
enum fab {
TSMC = 0,