1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34
|
diff kernel/drivers/input/touchscreen/gt9xx/gt9xx.c @@ -60,6 +60,7 @@ static u8 m89or101 = TRUE; static u8 bgt911 = FALSE; static u8 bgt970 = FALSE; static u8 bgt910 = FALSE; +static u8 bgt927 = FALSE; static u8 gtp_change_x2y = TRUE; static u8 gtp_x_reverse = FALSE; static u8 gtp_y_reverse = TRUE; @@ -1453,6 +1454,11 @@ static s32 gtp_init_panel(struct goodix_ts_data *ts) cfg_info_len[0] = CFG_GROUP_LEN(gtp_dat_7); }
+ if (bgt927) { + send_cfg_buf[0] = gtp_dat_8_9_1; + cfg_info_len[0] = CFG_GROUP_LEN(gtp_dat_8_9_1); + } + GTP_DEBUG_FUNC(); GTP_DEBUG("Config Groups\' Lengths: %d, %d, %d, %d, %d, %d", cfg_info_len[0], cfg_info_len[1], cfg_info_len[2], cfg_info_len[3], @@ -2657,6 +2663,12 @@ static int goodix_ts_probe(struct i2c_client *client, const struct i2c_device_id gtp_change_x2y = TRUE; gtp_x_reverse = FALSE; gtp_y_reverse = TRUE; + } else if (val == 9271) { + m89or101 = FALSE; + bgt927 = TRUE; + gtp_change_x2y = FALSE; + gtp_x_reverse = FALSE; + gtp_y_reverse = FALSE; }
ts->tp_regulator = devm_regulator_get(&client->dev, "tp");
|