efuse: add rockchip_process_version function
authorcl <cl@rock-chips.com>
Tue, 4 Nov 2014 08:02:14 +0000 (16:02 +0800)
committercl <cl@rock-chips.com>
Tue, 4 Nov 2014 08:02:14 +0000 (16:02 +0800)
Signed-off-by: cl <cl@rock-chips.com>
arch/arm/mach-rockchip/efuse.c
arch/arm/mach-rockchip/efuse.h

index d988b313cd1e6ae1f7fb3a0e532ba5f657cc4329..ac8509022fe59b1b861bc0f06ced4e6b6a456e1f 100644 (file)
@@ -21,6 +21,7 @@ static u8 efuse_buf[32] = {};
 struct rockchip_efuse {
        int (*get_leakage)(int ch);
        int efuse_version;
+       int process_version;
 };
 
 static struct rockchip_efuse efuse;
@@ -67,6 +68,13 @@ static int __init rk3288_get_efuse_version(void)
        return ret;
 }
 
+static int __init rk3288_get_process_version(void)
+{
+       int ret = efuse_buf[6]&0x0f;
+
+       return ret;
+}
+
 static int rk3288_get_leakage(int ch)
 {
        if ((ch < 0) || (ch > 2))
@@ -94,6 +102,11 @@ int rockchip_efuse_version(void)
        return efuse.efuse_version;
 }
 
+int rockchip_process_version(void)
+{
+       return efuse.process_version;
+}
+
 int rockchip_get_leakage(int ch)
 {
        if (efuse.get_leakage)
@@ -110,6 +123,7 @@ void __init rockchip_efuse_init(void)
                if (ret == 32) {
                        efuse.get_leakage = rk3288_get_leakage;
                        efuse.efuse_version = rk3288_get_efuse_version();
+                       efuse.process_version = rk3288_get_process_version();
                        rockchip_set_cpu_version((efuse_buf[6] >> 4) & 3);
                        rk3288_set_system_serial();
                } else {
index 77b26fb0cc5b9b29c3c8afc713be01df5bc1b11d..4f2b16cf7e92c4792d97a293a1551d50401e75ca 100644 (file)
 #define GPU_LEAKAGE_CH 1
 #define LOG_LEAKAGE_CH 2
 
+#define RK3288_PROCESS_V0      0
+#define RK3288_PROCESS_V1      1
+
 int rockchip_efuse_version(void);
+int rockchip_process_version(void);
 int rockchip_get_leakage(int ch);
 #endif