summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSuper Liu <supercjliu@google.com>2023-08-03 07:49:38 +0000
committerSuper Liu <supercjliu@google.com>2023-10-19 00:29:28 +0000
commitf27d184c33a04f575a1d79434c161305eee71518 (patch)
treee7b7aa38d72d361c3d3593a4f1ab1d5c5a48cc37
parent9c300628056906cad993af033a05a9b669e8e2c5 (diff)
downloadnovatek_touch-android-gs-pantah-5.10-android14-qpr2.tar.gz
touch/nt36xxx: support p2p test for finger and stylusandroid-u-qpr3-beta-2_r0.7android-u-qpr3-beta-2_r0.6android-u-qpr3-beta-2_r0.5android-u-qpr3-beta-2_r0.4android-u-qpr3-beta-2_r0.3android-u-qpr3-beta-2_r0.2android-u-qpr3-beta-1_r0.7android-u-qpr3-beta-1_r0.5android-u-qpr3-beta-1_r0.4android-u-qpr3-beta-1_r0.3android-u-qpr3-beta-1_r0.2android-u-qpr3-beta-1_r0.1android-u-qpr2-beta-3_r0.7android-u-qpr2-beta-3_r0.6android-u-qpr2-beta-3_r0.5android-u-qpr2-beta-3_r0.4android-u-qpr2-beta-3_r0.3android-u-qpr2-beta-3_r0.2android-u-qpr2-beta-3.1_r0.7android-u-qpr2-beta-3.1_r0.5android-u-qpr2-beta-3.1_r0.4android-u-qpr2-beta-3.1_r0.3android-u-qpr2-beta-3.1_r0.2android-u-qpr2-beta-3.1_r0.1android-u-qpr2-beta-2_r0.7android-u-qpr2-beta-2_r0.5android-u-qpr2-beta-2_r0.4android-u-qpr2-beta-2_r0.3android-u-qpr2-beta-2_r0.2android-u-qpr2-beta-2_r0.1android-15-dp-2_r0.6android-15-dp-2_r0.5android-15-dp-2_r0.4android-15-dp-2_r0.3android-15-dp-2_r0.2android-15-dp-2_r0.1android-15-dp-1_r0.7android-15-dp-1_r0.5android-15-dp-1_r0.4android-15-dp-1_r0.3android-15-dp-1_r0.2android-15-dp-1_r0.1android-14.0.0_r0.76android-14.0.0_r0.75android-14.0.0_r0.74android-14.0.0_r0.73android-14.0.0_r0.72android-14.0.0_r0.71android-14.0.0_r0.66android-14.0.0_r0.65android-14.0.0_r0.64android-14.0.0_r0.63android-14.0.0_r0.62android-14.0.0_r0.61android-14.0.0_r0.56android-14.0.0_r0.55android-14.0.0_r0.54android-14.0.0_r0.53android-14.0.0_r0.52android-14.0.0_r0.51android-gs-tangorpro-5.10-android14-qpr2-betaandroid-gs-tangorpro-5.10-android14-qpr2android-gs-raviole-5.10-android14-qpr2-betaandroid-gs-raviole-5.10-android14-qpr2android-gs-pantah-5.10-android14-qpr2-betaandroid-gs-pantah-5.10-android14-qpr2android-gs-lynx-5.10-android14-qpr2-betaandroid-gs-lynx-5.10-android14-qpr2android-gs-felix-5.10-android14-qpr2-betaandroid-gs-felix-5.10-android14-qpr2android-gs-bluejay-5.10-android14-qpr2-betaandroid-gs-bluejay-5.10-android14-qpr2
Bug: 291835037 Test: manual verify with touch selftest Change-Id: I6767d7f771379938bfdf348c14456336022e819d Signed-off-by: Super Liu <supercjliu@google.com>
-rw-r--r--nt36xxx/nt36xxx_mp_ctrlram.c235
-rw-r--r--nt36xxx/nt36xxx_mp_ctrlram.h360
2 files changed, 593 insertions, 2 deletions
diff --git a/nt36xxx/nt36xxx_mp_ctrlram.c b/nt36xxx/nt36xxx_mp_ctrlram.c
index d27b237..3e05909 100644
--- a/nt36xxx/nt36xxx_mp_ctrlram.c
+++ b/nt36xxx/nt36xxx_mp_ctrlram.c
@@ -38,18 +38,23 @@ static uint8_t *RecordResult_FW_Rawdata;
static uint8_t *RecordResult_FW_CC;
static uint8_t *RecordResult_FW_DiffMax;
static uint8_t *RecordResult_FW_DiffMin;
+static uint8_t *RecordResult_FW_DiffP2P;
static uint8_t *RecordResult_PenTipX_Raw;
static uint8_t *RecordResult_PenTipY_Raw;
static uint8_t *RecordResult_PenRingX_Raw;
static uint8_t *RecordResult_PenRingY_Raw;
static uint8_t *RecordResult_PenTipX_DiffMax;
static uint8_t *RecordResult_PenTipX_DiffMin;
+static uint8_t *RecordResult_PenTipX_DiffP2P;
static uint8_t *RecordResult_PenTipY_DiffMax;
static uint8_t *RecordResult_PenTipY_DiffMin;
+static uint8_t *RecordResult_PenTipY_DiffP2P;
static uint8_t *RecordResult_PenRingX_DiffMax;
static uint8_t *RecordResult_PenRingX_DiffMin;
+static uint8_t *RecordResult_PenRingX_DiffP2P;
static uint8_t *RecordResult_PenRingY_DiffMax;
static uint8_t *RecordResult_PenRingY_DiffMin;
+static uint8_t *RecordResult_PenRingY_DiffP2P;
static uint8_t *RecordResult_Pen_Rx_Max;
static int32_t TestResult_Short;
@@ -59,6 +64,7 @@ static int32_t TestResult_FW_CC;
static int32_t TestResult_Noise;
static int32_t TestResult_FW_DiffMax;
static int32_t TestResult_FW_DiffMin;
+static int32_t TestResult_FW_DiffP2P;
static int32_t TestResult_Pen_FW_Raw;
static int32_t TestResult_PenTipX_Raw;
static int32_t TestResult_PenTipY_Raw;
@@ -67,12 +73,16 @@ static int32_t TestResult_PenRingY_Raw;
static int32_t TestResult_Pen_Noise;
static int32_t TestResult_PenTipX_DiffMax;
static int32_t TestResult_PenTipX_DiffMin;
+static int32_t TestResult_PenTipX_DiffP2P;
static int32_t TestResult_PenTipY_DiffMax;
static int32_t TestResult_PenTipY_DiffMin;
+static int32_t TestResult_PenTipY_DiffP2P;
static int32_t TestResult_PenRingX_DiffMax;
static int32_t TestResult_PenRingX_DiffMin;
+static int32_t TestResult_PenRingX_DiffP2P;
static int32_t TestResult_PenRingY_DiffMax;
static int32_t TestResult_PenRingY_DiffMin;
+static int32_t TestResult_PenRingY_DiffP2P;
static int32_t TestResult_Pen_Rx_Max;
static int32_t *RawData_Short;
@@ -80,6 +90,7 @@ static int32_t *RawData_Open;
static int32_t *RawData_Diff;
static int32_t *RawData_Diff_Min;
static int32_t *RawData_Diff_Max;
+static int32_t *RawData_Diff_P2P;
static int32_t *RawData_FW_Rawdata;
static int32_t *RawData_FW_CC;
static int32_t *RawData_PenTipX_Raw;
@@ -88,12 +99,16 @@ static int32_t *RawData_PenRingX_Raw;
static int32_t *RawData_PenRingY_Raw;
static int32_t *RawData_PenTipX_DiffMin;
static int32_t *RawData_PenTipX_DiffMax;
+static int32_t *RawData_PenTipX_DiffP2P;
static int32_t *RawData_PenTipY_DiffMin;
static int32_t *RawData_PenTipY_DiffMax;
+static int32_t *RawData_PenTipY_DiffP2P;
static int32_t *RawData_PenRingX_DiffMin;
static int32_t *RawData_PenRingX_DiffMax;
+static int32_t *RawData_PenRingX_DiffP2P;
static int32_t *RawData_PenRingY_DiffMin;
static int32_t *RawData_PenRingY_DiffMax;
+static int32_t *RawData_PenRingY_DiffP2P;
static int32_t *RawData_Pen_Rx_Max;
static struct proc_dir_entry *NVT_proc_selftest_entry;
@@ -162,6 +177,13 @@ static int nvt_mp_buffer_init(void)
return -ENOMEM;
}
+ RecordResult_FW_DiffP2P = (uint8_t *)kzalloc(RecordResult_BufSize,
+ GFP_KERNEL);
+ if (!RecordResult_FW_DiffP2P) {
+ NVT_ERR("kzalloc for RecordResult_FW_DiffP2P failed!\n");
+ return -ENOMEM;
+ }
+
if (ts->pen_support) {
RecordResult_PenTipX_Raw = (uint8_t *)kzalloc(Pen_RecordResult_BufSize,
GFP_KERNEL);
@@ -205,6 +227,13 @@ static int nvt_mp_buffer_init(void)
return -ENOMEM;
}
+ RecordResult_PenTipX_DiffP2P = (uint8_t *)kzalloc(Pen_RecordResult_BufSize,
+ GFP_KERNEL);
+ if (!RecordResult_PenTipX_DiffP2P) {
+ NVT_ERR("kzalloc for RecordResult_PenTipX_DiffP2P failed!\n");
+ return -ENOMEM;
+ }
+
RecordResult_PenTipY_DiffMax = (uint8_t *)kzalloc(Pen_RecordResult_BufSize,
GFP_KERNEL);
if (!RecordResult_PenTipY_DiffMax) {
@@ -219,6 +248,13 @@ static int nvt_mp_buffer_init(void)
return -ENOMEM;
}
+ RecordResult_PenTipY_DiffP2P = (uint8_t *)kzalloc(Pen_RecordResult_BufSize,
+ GFP_KERNEL);
+ if (!RecordResult_PenTipY_DiffP2P) {
+ NVT_ERR("kzalloc for RecordResult_PenTipY_DiffP2P failed!\n");
+ return -ENOMEM;
+ }
+
RecordResult_PenRingX_DiffMax = (uint8_t *)kzalloc(
Pen_RecordResult_BufSize, GFP_KERNEL);
if (!RecordResult_PenRingX_DiffMax) {
@@ -233,6 +269,13 @@ static int nvt_mp_buffer_init(void)
return -ENOMEM;
}
+ RecordResult_PenRingX_DiffP2P = (uint8_t *)kzalloc(
+ Pen_RecordResult_BufSize, GFP_KERNEL);
+ if (!RecordResult_PenRingX_DiffP2P) {
+ NVT_ERR("kzalloc for RecordResult_PenRingX_DiffP2P failed!\n");
+ return -ENOMEM;
+ }
+
RecordResult_PenRingY_DiffMax = (uint8_t *)kzalloc(
Pen_RecordResult_BufSize, GFP_KERNEL);
if (!RecordResult_PenRingY_DiffMax) {
@@ -247,6 +290,13 @@ static int nvt_mp_buffer_init(void)
return -ENOMEM;
}
+ RecordResult_PenRingY_DiffP2P = (uint8_t *)kzalloc(
+ Pen_RecordResult_BufSize, GFP_KERNEL);
+ if (!RecordResult_PenRingY_DiffP2P) {
+ NVT_ERR("kzalloc for RecordResult_PenRingY_DiffP2P failed!\n");
+ return -ENOMEM;
+ }
+
RecordResult_Pen_Rx_Max = (uint8_t *)kzalloc(PEN_RX_MAX_BUFSIZE, GFP_KERNEL);
if (!RecordResult_Pen_Rx_Max) {
NVT_ERR("kzalloc for RecordResult_Pen_Rx_Max failed!\n");
@@ -284,6 +334,12 @@ static int nvt_mp_buffer_init(void)
return -ENOMEM;
}
+ RawData_Diff_P2P = (int32_t *)kzalloc(RawData_BufSize, GFP_KERNEL);
+ if (!RawData_Diff_P2P) {
+ NVT_ERR("kzalloc for RawData_Diff_P2P failed!\n");
+ return -ENOMEM;
+ }
+
RawData_FW_Rawdata = (int32_t *)kzalloc(RawData_BufSize, GFP_KERNEL);
if (!RawData_FW_Rawdata) {
NVT_ERR("kzalloc for RawData_FW_Rawdata failed!\n");
@@ -335,6 +391,13 @@ static int nvt_mp_buffer_init(void)
return -ENOMEM;
}
+ RawData_PenTipX_DiffP2P = (int32_t *)kzalloc(Pen_RawData_BufSize,
+ GFP_KERNEL);
+ if (!RawData_PenTipX_DiffP2P) {
+ NVT_ERR("kzalloc for RawData_PenTipX_DiffP2P failed!\n");
+ return -ENOMEM;
+ }
+
RawData_PenTipY_DiffMax = (int32_t *)kzalloc(Pen_RawData_BufSize,
GFP_KERNEL);
if (!RawData_PenTipY_DiffMax) {
@@ -349,6 +412,13 @@ static int nvt_mp_buffer_init(void)
return -ENOMEM;
}
+ RawData_PenTipY_DiffP2P = (int32_t *)kzalloc(Pen_RawData_BufSize,
+ GFP_KERNEL);
+ if (!RawData_PenTipY_DiffP2P) {
+ NVT_ERR("kzalloc for RawData_PenTipY_DiffP2P failed!\n");
+ return -ENOMEM;
+ }
+
RawData_PenRingX_DiffMax = (int32_t *)kzalloc(Pen_RawData_BufSize,
GFP_KERNEL);
if (!RawData_PenRingX_DiffMax) {
@@ -363,6 +433,13 @@ static int nvt_mp_buffer_init(void)
return -ENOMEM;
}
+ RawData_PenRingX_DiffP2P = (int32_t *)kzalloc(Pen_RawData_BufSize,
+ GFP_KERNEL);
+ if (!RawData_PenRingX_DiffP2P) {
+ NVT_ERR("kzalloc for RawData_PenRingX_DiffP2P failed!\n");
+ return -ENOMEM;
+ }
+
RawData_PenRingY_DiffMax = (int32_t *)kzalloc(Pen_RawData_BufSize,
GFP_KERNEL);
if (!RawData_PenRingY_DiffMax) {
@@ -377,6 +454,13 @@ static int nvt_mp_buffer_init(void)
return -ENOMEM;
}
+ RawData_PenRingY_DiffP2P = (int32_t *)kzalloc(Pen_RawData_BufSize,
+ GFP_KERNEL);
+ if (!RawData_PenRingY_DiffP2P) {
+ NVT_ERR("kzalloc for RawData_PenRingY_DiffP2P failed!\n");
+ return -ENOMEM;
+ }
+
RawData_Pen_Rx_Max = (int32_t *)kzalloc(PEN_RX_MAX_BUFSIZE, GFP_KERNEL);
if (!RawData_Pen_Rx_Max) {
NVT_ERR("kzalloc for RawData_Pen_Rx_Max failed!\n");
@@ -426,6 +510,11 @@ static void nvt_mp_buffer_deinit(void)
RecordResult_FW_DiffMin = NULL;
}
+ if (RecordResult_FW_DiffP2P) {
+ kfree(RecordResult_FW_DiffP2P);
+ RecordResult_FW_DiffP2P = NULL;
+ }
+
if (ts->pen_support) {
if (RecordResult_PenTipX_Raw) {
kfree(RecordResult_PenTipX_Raw);
@@ -457,6 +546,11 @@ static void nvt_mp_buffer_deinit(void)
RecordResult_PenTipX_DiffMin = NULL;
}
+ if (RecordResult_PenTipX_DiffP2P) {
+ kfree(RecordResult_PenTipX_DiffP2P);
+ RecordResult_PenTipX_DiffP2P = NULL;
+ }
+
if (RecordResult_PenTipY_DiffMax) {
kfree(RecordResult_PenTipY_DiffMax);
RecordResult_PenTipY_DiffMax = NULL;
@@ -467,6 +561,11 @@ static void nvt_mp_buffer_deinit(void)
RecordResult_PenTipY_DiffMin = NULL;
}
+ if (RecordResult_PenTipY_DiffP2P) {
+ kfree(RecordResult_PenTipY_DiffP2P);
+ RecordResult_PenTipY_DiffP2P = NULL;
+ }
+
if (RecordResult_PenRingX_DiffMax) {
kfree(RecordResult_PenRingX_DiffMax);
RecordResult_PenRingX_DiffMax = NULL;
@@ -477,6 +576,11 @@ static void nvt_mp_buffer_deinit(void)
RecordResult_PenRingX_DiffMin = NULL;
}
+ if (RecordResult_PenRingX_DiffP2P) {
+ kfree(RecordResult_PenRingX_DiffP2P);
+ RecordResult_PenRingX_DiffP2P = NULL;
+ }
+
if (RecordResult_PenRingY_DiffMax) {
kfree(RecordResult_PenRingY_DiffMax);
RecordResult_PenRingY_DiffMax = NULL;
@@ -487,6 +591,11 @@ static void nvt_mp_buffer_deinit(void)
RecordResult_PenRingY_DiffMin = NULL;
}
+ if (RecordResult_PenRingY_DiffP2P) {
+ kfree(RecordResult_PenRingY_DiffP2P);
+ RecordResult_PenRingY_DiffP2P = NULL;
+ }
+
if (RecordResult_Pen_Rx_Max) {
kfree(RecordResult_Pen_Rx_Max);
RecordResult_Pen_Rx_Max = NULL;
@@ -518,6 +627,11 @@ static void nvt_mp_buffer_deinit(void)
RawData_Diff_Max = NULL;
}
+ if (RawData_Diff_P2P) {
+ kfree(RawData_Diff_P2P);
+ RawData_Diff_P2P = NULL;
+ }
+
if (RawData_FW_Rawdata) {
kfree(RawData_FW_Rawdata);
RawData_FW_Rawdata = NULL;
@@ -559,6 +673,11 @@ static void nvt_mp_buffer_deinit(void)
RawData_PenTipX_DiffMin = NULL;
}
+ if (RawData_PenTipX_DiffP2P) {
+ kfree(RawData_PenTipX_DiffP2P);
+ RawData_PenTipX_DiffP2P = NULL;
+ }
+
if (RawData_PenTipY_DiffMax) {
kfree(RawData_PenTipY_DiffMax);
RawData_PenTipY_DiffMax = NULL;
@@ -569,6 +688,11 @@ static void nvt_mp_buffer_deinit(void)
RawData_PenTipY_DiffMin = NULL;
}
+ if (RawData_PenTipY_DiffP2P) {
+ kfree(RawData_PenTipY_DiffP2P);
+ RawData_PenTipY_DiffP2P = NULL;
+ }
+
if (RawData_PenRingX_DiffMax) {
kfree(RawData_PenRingX_DiffMax);
RawData_PenRingX_DiffMax = NULL;
@@ -579,6 +703,11 @@ static void nvt_mp_buffer_deinit(void)
RawData_PenRingX_DiffMin = NULL;
}
+ if (RawData_PenRingX_DiffP2P) {
+ kfree(RawData_PenRingX_DiffP2P);
+ RawData_PenRingX_DiffP2P = NULL;
+ }
+
if (RawData_PenRingY_DiffMax) {
kfree(RawData_PenRingY_DiffMax);
RawData_PenRingY_DiffMax = NULL;
@@ -589,6 +718,11 @@ static void nvt_mp_buffer_deinit(void)
RawData_PenRingY_DiffMin = NULL;
}
+ if (RawData_PenRingY_DiffP2P) {
+ kfree(RawData_PenRingY_DiffP2P);
+ RawData_PenRingY_DiffP2P = NULL;
+ }
+
if (RawData_Pen_Rx_Max) {
kfree(RawData_Pen_Rx_Max);
RawData_Pen_Rx_Max = NULL;
@@ -1012,6 +1146,7 @@ static int32_t nvt_read_fw_noise(int32_t *xdata)
#if TOUCH_KEY_NUM > 0
int32_t k = 0;
#endif /* #if TOUCH_KEY_NUM > 0 */
+ int32_t i = 0;
NVT_LOGD("++\n");
@@ -1044,6 +1179,7 @@ static int32_t nvt_read_fw_noise(int32_t *xdata)
iArrayIndex = y * x_num + x;
RawData_Diff_Max[iArrayIndex] = (int8_t)((xdata[iArrayIndex] >> 8) & 0xFF);
RawData_Diff_Min[iArrayIndex] = (int8_t)(xdata[iArrayIndex] & 0xFF);
+ RawData_Diff_P2P[iArrayIndex] = RawData_Diff_Max[iArrayIndex] - RawData_Diff_Min[iArrayIndex];
}
}
#if TOUCH_KEY_NUM > 0
@@ -1051,6 +1187,7 @@ static int32_t nvt_read_fw_noise(int32_t *xdata)
iArrayIndex = Y_Channel * X_Channel + k;
RawData_Diff_Max[iArrayIndex] = (int8_t)((xdata[iArrayIndex] >> 8) & 0xFF);
RawData_Diff_Min[iArrayIndex] = (int8_t)(xdata[iArrayIndex] & 0xFF);
+ RawData_Diff_P2P[iArrayIndex] = RawData_Diff_Max[iArrayIndex] - RawData_Diff_Min[iArrayIndex];
}
#endif /* #if TOUCH_KEY_NUM > 0 */
@@ -1074,6 +1211,14 @@ static int32_t nvt_read_fw_noise(int32_t *xdata)
RawData_PenRingY_DiffMin, ts->x_gang_num * ts->y_num);
nvt_read_get_num_mdata(ts->mmap->PEN_RX_ADDR, RawData_Pen_Rx_Max,
PEN_RX_MAX_BUFSIZE);
+ for (i = 0; i < ts->x_num * ts->y_gang_num; i++) {
+ RawData_PenTipX_DiffP2P[i] = RawData_PenTipX_DiffMax[i] - RawData_PenTipX_DiffMin[i];
+ RawData_PenRingX_DiffP2P[i] = RawData_PenRingX_DiffMax[i] - RawData_PenRingX_DiffMin[i];
+ }
+ for (i = 0; i < ts->x_gang_num * ts->y_num; i++) {
+ RawData_PenTipY_DiffP2P[i] = RawData_PenTipY_DiffMax[i] - RawData_PenTipY_DiffMin[i];
+ RawData_PenRingY_DiffP2P[i] = RawData_PenRingY_DiffMax[i] - RawData_PenRingY_DiffMin[i];
+ }
} /* if (ts->pen_support) */
//---Leave Test Mode---
@@ -1777,6 +1922,7 @@ static int32_t nvt_selftest_open(struct inode *inode, struct file *file)
TestResult_Noise = 0;
TestResult_FW_DiffMax = 0;
TestResult_FW_DiffMin = 0;
+ TestResult_FW_DiffP2P = 0;
if (ts->pen_support) {
TestResult_Pen_FW_Raw = 0;
TestResult_PenTipX_Raw = 0;
@@ -1786,12 +1932,16 @@ static int32_t nvt_selftest_open(struct inode *inode, struct file *file)
TestResult_Pen_Noise = 0;
TestResult_PenTipX_DiffMax = 0;
TestResult_PenTipX_DiffMin = 0;
+ TestResult_PenTipX_DiffP2P = 0;
TestResult_PenTipY_DiffMax = 0;
TestResult_PenTipY_DiffMin = 0;
+ TestResult_PenTipY_DiffP2P = 0;
TestResult_PenRingX_DiffMax = 0;
TestResult_PenRingX_DiffMin = 0;
+ TestResult_PenRingX_DiffP2P = 0;
TestResult_PenRingY_DiffMax = 0;
TestResult_PenRingY_DiffMin = 0;
+ TestResult_PenRingY_DiffP2P = 0;
} /* if (ts->pen_support) */
NVT_LOGD("++\n");
@@ -1934,16 +2084,21 @@ static int32_t nvt_selftest_open(struct inode *inode, struct file *file)
TestResult_Noise = 1; // 1: ERROR
TestResult_FW_DiffMax = 1;
TestResult_FW_DiffMin = 1;
+ TestResult_FW_DiffP2P = 1;
if (ts->pen_support) {
TestResult_Pen_Noise = 1;
TestResult_PenTipX_DiffMax = 1;
TestResult_PenTipX_DiffMin = 1;
+ TestResult_PenTipX_DiffP2P = 1;
TestResult_PenTipY_DiffMax = 1;
TestResult_PenTipY_DiffMin = 1;
+ TestResult_PenTipY_DiffP2P = 1;
TestResult_PenRingX_DiffMax = 1;
TestResult_PenRingX_DiffMin = 1;
+ TestResult_PenRingX_DiffP2P = 1;
TestResult_PenRingY_DiffMax = 1;
TestResult_PenRingY_DiffMin = 1;
+ TestResult_PenRingY_DiffP2P = 1;
TestResult_Pen_Rx_Max = 1;
} /* if (ts->pen_support) */
} else {
@@ -1955,7 +2110,15 @@ static int32_t nvt_selftest_open(struct inode *inode, struct file *file)
RecordResult_FW_DiffMin, X_Channel, Y_Channel,
PS_Config_Lmt_FW_Diff_P, PS_Config_Lmt_FW_Diff_N);
- if ((TestResult_FW_DiffMax == -1) || (TestResult_FW_DiffMin == -1))
+ TestResult_FW_DiffP2P = RawDataTest_SinglePoint_Sub(RawData_Diff_P2P,
+ RecordResult_FW_DiffP2P, X_Channel, Y_Channel,
+ PS_Config_Lmt_FW_Diff_P2P_P, PS_Config_Lmt_FW_Diff_P2P_N);
+
+ if (TestResult_FW_DiffP2P == -1)
+ NVT_ERR("[Touch P2P] Test Fail\n");
+
+ if ((TestResult_FW_DiffMax == -1) || (TestResult_FW_DiffMin == -1)
+ || (TestResult_FW_DiffP2P == -1))
TestResult_Noise = -1;
else
TestResult_Noise = 0;
@@ -1975,6 +2138,13 @@ static int32_t nvt_selftest_open(struct inode *inode, struct file *file)
PS_Config_Lmt_PenTipX_FW_Diff_P,
PS_Config_Lmt_PenTipX_FW_Diff_N);
+ TestResult_PenTipX_DiffP2P = RawDataTest_SinglePoint_Sub(
+ RawData_PenTipX_DiffP2P,
+ RecordResult_PenTipX_DiffP2P,
+ ts->x_num, ts->y_gang_num,
+ PS_Config_Lmt_PenTipX_FW_Diff_P2P_P,
+ PS_Config_Lmt_PenTipX_FW_Diff_P2P_N);
+
TestResult_PenTipY_DiffMax = RawDataTest_SinglePoint_Sub(
RawData_PenTipY_DiffMax,
RecordResult_PenTipY_DiffMax,
@@ -1989,6 +2159,13 @@ static int32_t nvt_selftest_open(struct inode *inode, struct file *file)
PS_Config_Lmt_PenTipY_FW_Diff_P,
PS_Config_Lmt_PenTipY_FW_Diff_N);
+ TestResult_PenTipY_DiffP2P = RawDataTest_SinglePoint_Sub(
+ RawData_PenTipY_DiffP2P,
+ RecordResult_PenTipY_DiffP2P,
+ ts->x_gang_num, ts->y_num,
+ PS_Config_Lmt_PenTipY_FW_Diff_P2P_P,
+ PS_Config_Lmt_PenTipY_FW_Diff_P2P_N);
+
TestResult_PenRingX_DiffMax = RawDataTest_SinglePoint_Sub(
RawData_PenRingX_DiffMax,
RecordResult_PenRingX_DiffMax,
@@ -2003,6 +2180,13 @@ static int32_t nvt_selftest_open(struct inode *inode, struct file *file)
PS_Config_Lmt_PenRingX_FW_Diff_P,
PS_Config_Lmt_PenRingX_FW_Diff_N);
+ TestResult_PenRingX_DiffP2P = RawDataTest_SinglePoint_Sub(
+ RawData_PenRingX_DiffP2P,
+ RecordResult_PenRingX_DiffP2P,
+ ts->x_num, ts->y_gang_num,
+ PS_Config_Lmt_PenRingX_FW_Diff_P2P_P,
+ PS_Config_Lmt_PenRingX_FW_Diff_P2P_N);
+
TestResult_PenRingY_DiffMax = RawDataTest_SinglePoint_Sub(
RawData_PenRingY_DiffMax,
RecordResult_PenRingY_DiffMax,
@@ -2017,19 +2201,39 @@ static int32_t nvt_selftest_open(struct inode *inode, struct file *file)
PS_Config_Lmt_PenRingY_FW_Diff_P,
PS_Config_Lmt_PenRingY_FW_Diff_N);
+ TestResult_PenRingY_DiffP2P = RawDataTest_SinglePoint_Sub(
+ RawData_PenRingY_DiffP2P,
+ RecordResult_PenRingY_DiffP2P,
+ ts->x_gang_num, ts->y_num,
+ PS_Config_Lmt_PenRingY_FW_Diff_P2P_P,
+ PS_Config_Lmt_PenRingY_FW_Diff_P2P_N);
+
TestResult_Pen_Rx_Max = RawDataTest_SinglePoint_Sub(
RawData_Pen_Rx_Max, RecordResult_Pen_Rx_Max,
PEN_RX_MAX_X_LEN, PEN_RX_MAX_Y_LEN,
PS_Config_Lmt_Pen_Rx_Max_P, PS_Config_Lmt_Pen_Rx_Max_N);
+ if (TestResult_PenTipX_DiffP2P == -1)
+ NVT_ERR("[Pen P2P] TipX Test Fail\n");
+ if (TestResult_PenTipY_DiffP2P == -1)
+ NVT_ERR("[Pen P2P] TipY Test Fail\n");
+ if (TestResult_PenRingX_DiffP2P == -1)
+ NVT_ERR("[Pen P2P] RingX Test Fail\n");
+ if (TestResult_PenRingY_DiffP2P == -1)
+ NVT_ERR("[Pen P2P] RingY Test Fail\n");
+
if ((TestResult_PenTipX_DiffMax == -1) ||
(TestResult_PenTipX_DiffMin == -1) ||
+ (TestResult_PenTipX_DiffP2P == -1) ||
(TestResult_PenTipY_DiffMax == -1) ||
(TestResult_PenTipY_DiffMin == -1) ||
+ (TestResult_PenTipY_DiffP2P == -1) ||
(TestResult_PenRingX_DiffMax == -1) ||
(TestResult_PenRingX_DiffMin == -1) ||
+ (TestResult_PenRingX_DiffP2P == -1) ||
(TestResult_PenRingY_DiffMax == -1) ||
- (TestResult_PenRingY_DiffMin == -1))
+ (TestResult_PenRingY_DiffMin == -1) ||
+ (TestResult_PenRingY_DiffP2P == -1))
TestResult_Pen_Noise = -1;
else
TestResult_Pen_Noise = 0;
@@ -2252,6 +2456,7 @@ int32_t nvt_mp_parse_dt(struct device_node *root,
{
struct device_node *np = root;
struct device_node *child = NULL;
+ int32_t i = 0;
NVT_LOG("Parse mp criteria for node %s\n", node_compatible);
@@ -2347,6 +2552,11 @@ int32_t nvt_mp_parse_dt(struct device_node *root,
X_Channel * Y_Channel + Key_Channel))
return -EPERM;
+ for (i = 0; i < X_Channel * Y_Channel + Key_Channel; i++) {
+ PS_Config_Lmt_FW_Diff_P2P_N[i] = P2P_N_DEFAULT;
+ PS_Config_Lmt_FW_Diff_P2P_P[i] = PS_Config_Lmt_FW_Diff_P[i] - PS_Config_Lmt_FW_Diff_N[i];
+ }
+
if (ts->pen_support) {
if (nvt_mp_parse_pen_array(np, "PS_Config_Lmt_PenTipX_FW_Raw_P",
PS_Config_Lmt_PenTipX_FW_Raw_P,
@@ -2428,6 +2638,27 @@ int32_t nvt_mp_parse_dt(struct device_node *root,
ts->x_gang_num, ts->y_num))
return -EPERM;
+ for (i = 0; i < ts->x_num * ts->y_gang_num; i++) {
+ PS_Config_Lmt_PenTipX_FW_Diff_P2P_N[i] = P2P_N_DEFAULT;
+ PS_Config_Lmt_PenTipX_FW_Diff_P2P_P[i] =
+ PS_Config_Lmt_PenTipX_FW_Diff_P[i] -
+ PS_Config_Lmt_PenTipX_FW_Diff_N[i];
+ PS_Config_Lmt_PenRingX_FW_Diff_P2P_N[i] = P2P_N_DEFAULT;
+ PS_Config_Lmt_PenRingX_FW_Diff_P2P_P[i] =
+ PS_Config_Lmt_PenRingX_FW_Diff_P[i] -
+ PS_Config_Lmt_PenRingX_FW_Diff_N[i];
+ }
+ for (i = 0; i < ts->x_gang_num * ts->y_num; i++) {
+ PS_Config_Lmt_PenTipY_FW_Diff_P2P_N[i] = P2P_N_DEFAULT;
+ PS_Config_Lmt_PenTipY_FW_Diff_P2P_P[i] =
+ PS_Config_Lmt_PenTipY_FW_Diff_P[i] -
+ PS_Config_Lmt_PenTipY_FW_Diff_N[i];
+ PS_Config_Lmt_PenRingY_FW_Diff_P2P_N[i] = P2P_N_DEFAULT;
+ PS_Config_Lmt_PenRingY_FW_Diff_P2P_P[i] =
+ PS_Config_Lmt_PenRingY_FW_Diff_P[i] -
+ PS_Config_Lmt_PenRingY_FW_Diff_N[i];
+ }
+
if (nvt_mp_parse_pen_array(np, "PS_Config_Lmt_Pen_Rx_Max_P",
PS_Config_Lmt_Pen_Rx_Max_P, PEN_RX_MAX_X_LEN, PEN_RX_MAX_Y_LEN))
return -EPERM;
diff --git a/nt36xxx/nt36xxx_mp_ctrlram.h b/nt36xxx/nt36xxx_mp_ctrlram.h
index 551690f..fa1ac56 100644
--- a/nt36xxx/nt36xxx_mp_ctrlram.h
+++ b/nt36xxx/nt36xxx_mp_ctrlram.h
@@ -37,6 +37,7 @@ static uint8_t AIN_KEY[8] = {0, 1, 2, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF};
#define PEN_RX_MAX_X_LEN (1)
#define PEN_RX_MAX_Y_LEN (1)
#define PEN_RX_MAX_BUFSIZE (1)
+#define P2P_N_DEFAULT (1)
static int32_t PS_Config_Lmt_Short_Rawdata_P[X_Y_DIMENSION_MAX] = {
14008, 14008, 14008, 14008, 14008, 14008, 14008, 14008, 14008, 14008, 14008, 14008, 14008, 14008, 14008, 14008, 14008, 14008, 14008, 14008, 14008, 14008, 14008, 14008, 14008, 14008, 14008, 14008, 14008, 14008, 14008, 14008,
@@ -598,6 +599,118 @@ static int32_t PS_Config_Lmt_FW_Diff_N[X_Y_DIMENSION_MAX] = {
#endif /* #if TOUCH_KEY_NUM > 0 */
};
+static int32_t PS_Config_Lmt_FW_Diff_P2P_P[X_Y_DIMENSION_MAX] = {
+ 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150,
+ 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150,
+ 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150,
+ 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150,
+ 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150,
+ 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150,
+ 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150,
+ 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150,
+ 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150,
+ 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150,
+ 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150,
+ 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150,
+ 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150,
+ 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150,
+ 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150,
+ 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150,
+ 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150,
+ 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150,
+ 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150,
+ 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150,
+ 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150,
+ 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150,
+ 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150,
+ 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150,
+ 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150,
+ 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150,
+ 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150,
+ 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150,
+ 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150,
+ 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150,
+ 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150,
+ 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150,
+ 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150,
+ 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150,
+ 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150,
+ 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150,
+ 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150,
+ 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150,
+ 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150,
+ 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150,
+ 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150,
+ 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150,
+ 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150,
+ 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150,
+ 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150,
+ 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150,
+ 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150,
+ 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150,
+ 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150,
+ 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150,
+#if TOUCH_KEY_NUM > 0
+ 150, 150, 150,
+#endif /* #if TOUCH_KEY_NUM > 0 */
+};
+
+static int32_t PS_Config_Lmt_FW_Diff_P2P_N[X_Y_DIMENSION_MAX] = {
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+#if TOUCH_KEY_NUM > 0
+ 1, 1, 1,
+#endif /* #if TOUCH_KEY_NUM > 0 */
+};
+
static int32_t PS_Config_Lmt_PenTipX_FW_Raw_P[PEN_X_Y_DIMENSION_MAX] = {
570, 570, 570, 570, 570, 570, 570, 570, 570, 570, 570, 570, 570, 570, 570, 570, 570, 570, 570, 570, 570, 570, 570, 570, 570, 570, 570, 570, 570, 570, 570, 570,
570, 570, 570, 570, 570, 570, 570, 570, 570, 570, 570, 570, 570, 570, 570, 570, 570, 570, 570, 570, 570, 570, 570, 570, 570, 570, 570, 570, 570, 570, 570, 570,
@@ -864,6 +977,24 @@ static int32_t PS_Config_Lmt_PenTipX_FW_Diff_N[PEN_X_Y_DIMENSION_MAX] = {
-870, -870, -870, -870, -870, -870, -870, -870, -870, -870, -870, -870, -870, -870, -870, -870, -870, -870, -870, -870, -870, -870, -870, -870, -870, -870, -870, -870, -870, -870, -870, -870,
};
+static int32_t PS_Config_Lmt_PenTipX_FW_Diff_P2P_P[PEN_X_Y_DIMENSION_MAX] = {
+ 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740,
+ 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740,
+ 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740,
+ 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740,
+ 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740,
+ 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740,
+};
+
+static int32_t PS_Config_Lmt_PenTipX_FW_Diff_P2P_N[PEN_X_Y_DIMENSION_MAX] = {
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+};
+
static int32_t PS_Config_Lmt_PenTipY_FW_Diff_P[PEN_X_Y_DIMENSION_MAX] = {
870, 870, 870, 870,
870, 870, 870, 870,
@@ -970,6 +1101,112 @@ static int32_t PS_Config_Lmt_PenTipY_FW_Diff_N[PEN_X_Y_DIMENSION_MAX] = {
-870, -870, -870, -870,
};
+static int32_t PS_Config_Lmt_PenTipY_FW_Diff_P2P_P[PEN_X_Y_DIMENSION_MAX] = {
+ 1740, 1740, 1740, 1740,
+ 1740, 1740, 1740, 1740,
+ 1740, 1740, 1740, 1740,
+ 1740, 1740, 1740, 1740,
+ 1740, 1740, 1740, 1740,
+ 1740, 1740, 1740, 1740,
+ 1740, 1740, 1740, 1740,
+ 1740, 1740, 1740, 1740,
+ 1740, 1740, 1740, 1740,
+ 1740, 1740, 1740, 1740,
+ 1740, 1740, 1740, 1740,
+ 1740, 1740, 1740, 1740,
+ 1740, 1740, 1740, 1740,
+ 1740, 1740, 1740, 1740,
+ 1740, 1740, 1740, 1740,
+ 1740, 1740, 1740, 1740,
+ 1740, 1740, 1740, 1740,
+ 1740, 1740, 1740, 1740,
+ 1740, 1740, 1740, 1740,
+ 1740, 1740, 1740, 1740,
+ 1740, 1740, 1740, 1740,
+ 1740, 1740, 1740, 1740,
+ 1740, 1740, 1740, 1740,
+ 1740, 1740, 1740, 1740,
+ 1740, 1740, 1740, 1740,
+ 1740, 1740, 1740, 1740,
+ 1740, 1740, 1740, 1740,
+ 1740, 1740, 1740, 1740,
+ 1740, 1740, 1740, 1740,
+ 1740, 1740, 1740, 1740,
+ 1740, 1740, 1740, 1740,
+ 1740, 1740, 1740, 1740,
+ 1740, 1740, 1740, 1740,
+ 1740, 1740, 1740, 1740,
+ 1740, 1740, 1740, 1740,
+ 1740, 1740, 1740, 1740,
+ 1740, 1740, 1740, 1740,
+ 1740, 1740, 1740, 1740,
+ 1740, 1740, 1740, 1740,
+ 1740, 1740, 1740, 1740,
+ 1740, 1740, 1740, 1740,
+ 1740, 1740, 1740, 1740,
+ 1740, 1740, 1740, 1740,
+ 1740, 1740, 1740, 1740,
+ 1740, 1740, 1740, 1740,
+ 1740, 1740, 1740, 1740,
+ 1740, 1740, 1740, 1740,
+ 1740, 1740, 1740, 1740,
+ 1740, 1740, 1740, 1740,
+ 1740, 1740, 1740, 1740,
+};
+
+static int32_t PS_Config_Lmt_PenTipY_FW_Diff_P2P_N[PEN_X_Y_DIMENSION_MAX] = {
+ 1, 1, 1, 1,
+ 1, 1, 1, 1,
+ 1, 1, 1, 1,
+ 1, 1, 1, 1,
+ 1, 1, 1, 1,
+ 1, 1, 1, 1,
+ 1, 1, 1, 1,
+ 1, 1, 1, 1,
+ 1, 1, 1, 1,
+ 1, 1, 1, 1,
+ 1, 1, 1, 1,
+ 1, 1, 1, 1,
+ 1, 1, 1, 1,
+ 1, 1, 1, 1,
+ 1, 1, 1, 1,
+ 1, 1, 1, 1,
+ 1, 1, 1, 1,
+ 1, 1, 1, 1,
+ 1, 1, 1, 1,
+ 1, 1, 1, 1,
+ 1, 1, 1, 1,
+ 1, 1, 1, 1,
+ 1, 1, 1, 1,
+ 1, 1, 1, 1,
+ 1, 1, 1, 1,
+ 1, 1, 1, 1,
+ 1, 1, 1, 1,
+ 1, 1, 1, 1,
+ 1, 1, 1, 1,
+ 1, 1, 1, 1,
+ 1, 1, 1, 1,
+ 1, 1, 1, 1,
+ 1, 1, 1, 1,
+ 1, 1, 1, 1,
+ 1, 1, 1, 1,
+ 1, 1, 1, 1,
+ 1, 1, 1, 1,
+ 1, 1, 1, 1,
+ 1, 1, 1, 1,
+ 1, 1, 1, 1,
+ 1, 1, 1, 1,
+ 1, 1, 1, 1,
+ 1, 1, 1, 1,
+ 1, 1, 1, 1,
+ 1, 1, 1, 1,
+ 1, 1, 1, 1,
+ 1, 1, 1, 1,
+ 1, 1, 1, 1,
+ 1, 1, 1, 1,
+ 1, 1, 1, 1,
+};
+
static int32_t PS_Config_Lmt_PenRingX_FW_Diff_P[PEN_X_Y_DIMENSION_MAX] = {
870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870,
870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870,
@@ -988,6 +1225,24 @@ static int32_t PS_Config_Lmt_PenRingX_FW_Diff_N[PEN_X_Y_DIMENSION_MAX] = {
-870, -870, -870, -870, -870, -870, -870, -870, -870, -870, -870, -870, -870, -870, -870, -870, -870, -870, -870, -870, -870, -870, -870, -870, -870, -870, -870, -870, -870, -870, -870, -870,
};
+static int32_t PS_Config_Lmt_PenRingX_FW_Diff_P2P_P[PEN_X_Y_DIMENSION_MAX] = {
+ 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740,
+ 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740,
+ 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740,
+ 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740,
+ 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740,
+ 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740,
+};
+
+static int32_t PS_Config_Lmt_PenRingX_FW_Diff_P2P_N[PEN_X_Y_DIMENSION_MAX] = {
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+};
+
static int32_t PS_Config_Lmt_PenRingY_FW_Diff_P[PEN_X_Y_DIMENSION_MAX] = {
870, 870, 870, 870,
870, 870, 870, 870,
@@ -1094,6 +1349,111 @@ static int32_t PS_Config_Lmt_PenRingY_FW_Diff_N[PEN_X_Y_DIMENSION_MAX] = {
-870, -870, -870, -870,
};
+static int32_t PS_Config_Lmt_PenRingY_FW_Diff_P2P_P[PEN_X_Y_DIMENSION_MAX] = {
+ 1740, 1740, 1740, 1740,
+ 1740, 1740, 1740, 1740,
+ 1740, 1740, 1740, 1740,
+ 1740, 1740, 1740, 1740,
+ 1740, 1740, 1740, 1740,
+ 1740, 1740, 1740, 1740,
+ 1740, 1740, 1740, 1740,
+ 1740, 1740, 1740, 1740,
+ 1740, 1740, 1740, 1740,
+ 1740, 1740, 1740, 1740,
+ 1740, 1740, 1740, 1740,
+ 1740, 1740, 1740, 1740,
+ 1740, 1740, 1740, 1740,
+ 1740, 1740, 1740, 1740,
+ 1740, 1740, 1740, 1740,
+ 1740, 1740, 1740, 1740,
+ 1740, 1740, 1740, 1740,
+ 1740, 1740, 1740, 1740,
+ 1740, 1740, 1740, 1740,
+ 1740, 1740, 1740, 1740,
+ 1740, 1740, 1740, 1740,
+ 1740, 1740, 1740, 1740,
+ 1740, 1740, 1740, 1740,
+ 1740, 1740, 1740, 1740,
+ 1740, 1740, 1740, 1740,
+ 1740, 1740, 1740, 1740,
+ 1740, 1740, 1740, 1740,
+ 1740, 1740, 1740, 1740,
+ 1740, 1740, 1740, 1740,
+ 1740, 1740, 1740, 1740,
+ 1740, 1740, 1740, 1740,
+ 1740, 1740, 1740, 1740,
+ 1740, 1740, 1740, 1740,
+ 1740, 1740, 1740, 1740,
+ 1740, 1740, 1740, 1740,
+ 1740, 1740, 1740, 1740,
+ 1740, 1740, 1740, 1740,
+ 1740, 1740, 1740, 1740,
+ 1740, 1740, 1740, 1740,
+ 1740, 1740, 1740, 1740,
+ 1740, 1740, 1740, 1740,
+ 1740, 1740, 1740, 1740,
+ 1740, 1740, 1740, 1740,
+ 1740, 1740, 1740, 1740,
+ 1740, 1740, 1740, 1740,
+ 1740, 1740, 1740, 1740,
+ 1740, 1740, 1740, 1740,
+ 1740, 1740, 1740, 1740,
+ 1740, 1740, 1740, 1740,
+ 1740, 1740, 1740, 1740,
+};
+
+static int32_t PS_Config_Lmt_PenRingY_FW_Diff_P2P_N[PEN_X_Y_DIMENSION_MAX] = {
+ 1, 1, 1, 1,
+ 1, 1, 1, 1,
+ 1, 1, 1, 1,
+ 1, 1, 1, 1,
+ 1, 1, 1, 1,
+ 1, 1, 1, 1,
+ 1, 1, 1, 1,
+ 1, 1, 1, 1,
+ 1, 1, 1, 1,
+ 1, 1, 1, 1,
+ 1, 1, 1, 1,
+ 1, 1, 1, 1,
+ 1, 1, 1, 1,
+ 1, 1, 1, 1,
+ 1, 1, 1, 1,
+ 1, 1, 1, 1,
+ 1, 1, 1, 1,
+ 1, 1, 1, 1,
+ 1, 1, 1, 1,
+ 1, 1, 1, 1,
+ 1, 1, 1, 1,
+ 1, 1, 1, 1,
+ 1, 1, 1, 1,
+ 1, 1, 1, 1,
+ 1, 1, 1, 1,
+ 1, 1, 1, 1,
+ 1, 1, 1, 1,
+ 1, 1, 1, 1,
+ 1, 1, 1, 1,
+ 1, 1, 1, 1,
+ 1, 1, 1, 1,
+ 1, 1, 1, 1,
+ 1, 1, 1, 1,
+ 1, 1, 1, 1,
+ 1, 1, 1, 1,
+ 1, 1, 1, 1,
+ 1, 1, 1, 1,
+ 1, 1, 1, 1,
+ 1, 1, 1, 1,
+ 1, 1, 1, 1,
+ 1, 1, 1, 1,
+ 1, 1, 1, 1,
+ 1, 1, 1, 1,
+ 1, 1, 1, 1,
+ 1, 1, 1, 1,
+ 1, 1, 1, 1,
+ 1, 1, 1, 1,
+ 1, 1, 1, 1,
+ 1, 1, 1, 1,
+ 1, 1, 1, 1,
+};
static int32_t PS_Config_Lmt_Pen_Rx_Max_P[1] = {300};
static int32_t PS_Config_Lmt_Pen_Rx_Max_N[1] = {100};
static int32_t PS_Config_Diff_Test_Frame = 50;