Loading arch/arm/boot/dts/qti/apq8084-liquid.dtsi +171 −48 Original line number Diff line number Diff line Loading @@ -531,6 +531,7 @@ atmel,i2c-pull-up; atmel,no-force-update; atmel,no-lpm-support; atmel,bl-addr = <0x26>; atmel,cfg_1 { atmel,family-id = <0xa2>; atmel,variant-id = <0x00>; Loading @@ -540,27 +541,41 @@ /* Object 6, Instance = 0 */ 00 00 00 00 00 00 /* Object 38, Instance = 0 */ 21 01 00 19 09 0D 00 00 00 00 21 02 00 18 0A 0D 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 /* Object 7, Instance = 0 */ FF FF FF 00 /* Object 8, Instance = 0 */ 64 00 14 00 00 00 00 00 00 00 /* Object 9, Instance = 0 */ 83 00 00 20 34 00 A5 3C 08 07 00 00 00 00 0A 00 00 00 A0 05 00 0A 03 07 0A 00 08 14 1A 0D 00 0A 00 00 0A 00 /* Object 9, Instance = 1 */ /* Object 71, Instance = 0 */ 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 /* Object 7, Instance = 0 */ 21 08 32 42 /* Object 8, Instance = 0 */ 46 00 14 00 00 00 00 0A 32 19 /* Object 9, Instance = 0 */ 83 00 00 20 34 00 AF 4B 01 07 0A 14 07 00 0A 05 0A 00 A0 05 00 0A 03 07 04 00 08 14 1A 0D 05 06 00 00 01 00 00 00 00 00 00 00 00 00 00 00 00 /* Object 15, Instance = 0 */ 00 00 00 00 00 00 00 00 00 00 00 Loading @@ -571,65 +586,162 @@ /* Object 24, Instance = 0 */ 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 /* Object 24, Instance = 1 */ 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 /* Object 25, Instance = 0 */ 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 00 00 C8 00 00 00 00 00 00 /* Object 27, Instance = 0 */ 00 00 00 00 00 00 00 /* Object 27, Instance = 1 */ 00 00 00 00 00 00 00 /* Object 40, Instance = 0 */ 00 00 00 00 00 /* Object 40, Instance = 1 */ 00 00 00 00 00 /* Object 42, Instance = 0 */ 00 00 00 00 00 00 00 00 00 00 /* Object 42, Instance = 1 */ 00 00 00 00 00 00 00 00 00 00 21 14 26 1C 80 00 00 00 00 00 00 04 00 /* Object 43, Instance = 0 */ 00 00 00 00 00 00 00 00 00 00 08 00 91 00 01 01 80 00 00 00 00 00 /* Object 46, Instance = 0 */ 00 00 10 10 00 00 00 00 00 00 04 00 00 18 1C 00 00 01 00 00 1F 05 /* Object 47, Instance = 0 */ 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 /* Object 47, Instance = 1 */ 00 00 00 00 00 00 00 00 /* Object 55, Instance = 0 */ 01 40 14 0A 10 00 00 /* Object 56, Instance = 0 */ 01 00 01 19 0D 0D 0D 0D 0D 0D 0D 0D 0E 0E 0E 0E 0E 0E 0E 0E 0F 0F 0F 0F 0F 0F 0F 0F 0F 0F 0F 0F 0F 0F 0F 0F 00 00 01 02 06 04 00 00 00 00 00 00 00 00 00 /* Object 57, Instance = 0 */ 00 00 00 /* Object 61, Instance = 0 */ 00 00 00 00 00 /* Object 62, Instance = 0 */ 7D 22 40 1A 00 07 00 00 00 00 02 03 05 07 05 00 0A 05 05 AF 1E 1E 34 02 64 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 /* Object 55, Instance = 0 */ 00 00 00 00 00 00 00 /* Object 55, Instance = 1 */ 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 /* Object 63, Instance = 0 */ 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 /* Object 65, Instance = 0 */ 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 /* Object 56, Instance = 0 */ /* Object 66, Instance = 0 */ 00 00 00 /* Object 70, Instance = 0 */ 00 00 00 00 00 00 00 00 00 00 /* Object 73, Instance = 0 */ 00 00 00 00 00 00 /* Object 77, Instance = 0 */ 00 00 00 00 /* Object 79, Instance = 0 */ 00 00 00 ]; }; atmel,cfg_2 { atmel,fw-name = "atmel_8084_liquid_v2_0_AB.hex"; atmel,bootldr-id = <0x14>; atmel,family-id = <0xa2>; atmel,variant-id = <0x00>; atmel,version = <0x20>; atmel,build = <0xaa>; atmel,config = [ /* Object 6, Instance = 0 */ 00 00 00 00 00 00 /* Object 38, Instance = 0 */ 21 02 00 18 0A 0D 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 /* Object 71, Instance = 0 */ 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 /* Object 7, Instance = 0 */ 21 08 32 42 /* Object 8, Instance = 0 */ 46 00 14 00 00 00 00 0A 32 19 /* Object 9, Instance = 0 */ 83 00 00 20 34 00 AF 4B 01 07 0A 14 07 00 0A 05 0A 00 A0 05 00 0A 03 07 04 00 08 14 1A 0D 05 06 00 00 01 00 00 00 00 00 00 00 00 00 00 00 00 /* Object 15, Instance = 0 */ 00 00 00 00 00 00 00 00 00 00 00 /* Object 18, Instance = 0 */ 00 00 /* Object 19, Instance = 0 */ 00 00 00 00 00 00 /* Object 24, Instance = 0 */ 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 /* Object 25, Instance = 0 */ 01 00 00 00 00 00 00 00 00 00 00 00 00 00 C8 00 00 00 00 00 00 /* Object 27, Instance = 0 */ 00 00 00 00 00 00 00 /* Object 40, Instance = 0 */ 00 00 00 00 00 /* Object 42, Instance = 0 */ 21 14 26 1C 80 00 00 00 00 00 00 04 00 /* Object 43, Instance = 0 */ 08 00 91 00 01 01 80 00 00 00 00 00 /* Object 46, Instance = 0 */ 00 00 18 1C 00 00 01 00 00 1F 05 /* Object 47, Instance = 0 */ 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 /* Object 55, Instance = 0 */ 01 40 14 0A 10 00 00 /* Object 56, Instance = 0 */ 01 00 01 19 0D 0D 0D 0D 0D 0D 0D 0D 0E 0E 0E 0E 0E 0E 0E 0E 0F 0F 0F 0F 0F 0F 0F 0F 0F 0F 0F 0F 0F 0F 0F 0F 00 00 01 02 06 04 00 00 00 00 00 00 00 00 00 /* Object 57, Instance = 0 */ 00 00 00 /* Object 57, Instance = 1 */ 00 00 00 /* Object 61, Instance = 0 */ 00 00 00 00 00 /* Object 61, Instance = 1 */ 00 00 00 00 00 /* Object 61, Instance = 2 */ 00 00 00 00 00 /* Object 61, Instance = 3 */ 00 00 00 00 00 /* Object 62, Instance = 0 */ 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 7D 22 40 1A 00 07 00 00 00 00 02 03 05 07 05 00 0A 05 05 AF 1E 1E 34 02 64 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 Loading @@ -637,10 +749,21 @@ 00 00 00 00 /* Object 63, Instance = 0 */ 00 00 00 00 00 00 00 00 00 00 00 00 /* Object 63, Instance = 1 */ 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 /* Object 65, Instance = 0 */ 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 /* Object 66, Instance = 0 */ 00 00 00 /* Object 70, Instance = 0 */ 00 00 00 00 00 00 00 00 00 00 /* Object 73, Instance = 0 */ 00 00 00 00 00 00 /* Object 77, Instance = 0 */ 00 00 00 00 /* Object 79, Instance = 0 */ 00 00 00 ]; }; }; Loading drivers/input/touchscreen/atmel_mxt_ts.c +36 −7 Original line number Diff line number Diff line Loading @@ -110,7 +110,6 @@ enum mxt_device_state { INIT, APPMODE, BOOTLOADER }; #define MXT_TOUCH_PROXKEY_T52 52 #define MXT_PROCI_GRIPFACE_T20 20 #define MXT_PROCG_NOISE_T22 22 #define MXT_PROCG_NOISE_T62 62 #define MXT_PROCI_ONETOUCH_T24 24 #define MXT_PROCI_TWOTOUCH_T27 27 #define MXT_PROCI_GRIP_T40 40 Loading @@ -121,6 +120,10 @@ enum mxt_device_state { INIT, APPMODE, BOOTLOADER }; #define MXT_PROCI_SHIELDLESS_T56 56 #define MXT_PROCI_EXTRATSDATA_T57 57 #define MXT_PROCG_NOISESUPPRESSION_T48 48 #define MXT_PROCG_NOISE_T62 62 #define MXT_PROCI_ACTIVESTYLUS_T63 63 #define MXT_PROCI_LENSBENDING_T65 65 #define MXT_PROCI_ZONEINDICATION_T73 73 #define MXT_SPT_COMMSCONFIG_T18 18 #define MXT_SPT_GPIOPWM_T19 19 #define MXT_SPT_SELFTEST_T25 25 Loading @@ -131,6 +134,11 @@ enum mxt_device_state { INIT, APPMODE, BOOTLOADER }; #define MXT_SPT_CTECONFIG_T46 46 #define MXT_SPT_EXTRANOISESUPCTRLS_T58 58 #define MXT_SPT_TIMER_T61 61 #define MXT_SPT_GOLDENREFERENCES_T66 66 #define MXT_SPT_DYNAMICCONFIGURATIONCONTROLLER_T70 70 #define MXT_SPT_DYNAMICCONFIGURATIONCONTAINER_T71 71 #define MXT_SPT_CTESCANCONFIG_T77 77 #define MXT_SPT_TOUCHEVENTTRIGGER_T79 79 /* MXT_GEN_COMMAND_T6 field */ #define MXT_COMMAND_RESET 0 Loading Loading @@ -421,16 +429,20 @@ static bool mxt_object_readable(unsigned int type) case MXT_TOUCH_PROXKEY_T52: case MXT_PROCI_GRIPFACE_T20: case MXT_PROCG_NOISE_T22: case MXT_PROCG_NOISE_T62: case MXT_PROCI_ONETOUCH_T24: case MXT_PROCI_TWOTOUCH_T27: case MXT_PROCI_GRIP_T40: case MXT_PROCI_PALM_T41: case MXT_PROCI_TOUCHSUPPRESSION_T42: case MXT_PROCI_STYLUS_T47: case MXT_PROCG_NOISESUPPRESSION_T48: case MXT_PROCI_ADAPTIVETHRESHOLD_T55: case MXT_PROCI_SHIELDLESS_T56: case MXT_PROCI_EXTRATSDATA_T57: case MXT_PROCG_NOISESUPPRESSION_T48: case MXT_PROCG_NOISE_T62: case MXT_PROCI_ACTIVESTYLUS_T63: case MXT_PROCI_LENSBENDING_T65: case MXT_PROCI_ZONEINDICATION_T73: case MXT_SPT_COMMSCONFIG_T18: case MXT_SPT_GPIOPWM_T19: case MXT_SPT_SELFTEST_T25: Loading @@ -440,7 +452,11 @@ static bool mxt_object_readable(unsigned int type) case MXT_SPT_CTECONFIG_T46: case MXT_SPT_EXTRANOISESUPCTRLS_T58: case MXT_SPT_TIMER_T61: case MXT_PROCI_ADAPTIVETHRESHOLD_T55: case MXT_SPT_GOLDENREFERENCES_T66: case MXT_SPT_DYNAMICCONFIGURATIONCONTROLLER_T70: case MXT_SPT_DYNAMICCONFIGURATIONCONTAINER_T71: case MXT_SPT_CTESCANCONFIG_T77: case MXT_SPT_TOUCHEVENTTRIGGER_T79: return true; default: return false; Loading @@ -459,16 +475,20 @@ static bool mxt_object_writable(unsigned int type) case MXT_TOUCH_PROXKEY_T52: case MXT_PROCI_GRIPFACE_T20: case MXT_PROCG_NOISE_T22: case MXT_PROCG_NOISE_T62: case MXT_PROCI_ONETOUCH_T24: case MXT_PROCI_TWOTOUCH_T27: case MXT_PROCI_GRIP_T40: case MXT_PROCI_PALM_T41: case MXT_PROCI_TOUCHSUPPRESSION_T42: case MXT_PROCI_STYLUS_T47: case MXT_PROCG_NOISESUPPRESSION_T48: case MXT_PROCI_ADAPTIVETHRESHOLD_T55: case MXT_PROCI_SHIELDLESS_T56: case MXT_PROCI_EXTRATSDATA_T57: case MXT_PROCG_NOISESUPPRESSION_T48: case MXT_PROCG_NOISE_T62: case MXT_PROCI_ACTIVESTYLUS_T63: case MXT_PROCI_LENSBENDING_T65: case MXT_PROCI_ZONEINDICATION_T73: case MXT_SPT_COMMSCONFIG_T18: case MXT_SPT_GPIOPWM_T19: case MXT_SPT_SELFTEST_T25: Loading @@ -478,7 +498,11 @@ static bool mxt_object_writable(unsigned int type) case MXT_SPT_CTECONFIG_T46: case MXT_SPT_EXTRANOISESUPCTRLS_T58: case MXT_SPT_TIMER_T61: case MXT_PROCI_ADAPTIVETHRESHOLD_T55: case MXT_SPT_GOLDENREFERENCES_T66: case MXT_SPT_DYNAMICCONFIGURATIONCONTROLLER_T70: case MXT_SPT_DYNAMICCONFIGURATIONCONTAINER_T71: case MXT_SPT_CTESCANCONFIG_T77: case MXT_SPT_TOUCHEVENTTRIGGER_T79: return true; default: return false; Loading Loading @@ -1104,6 +1128,11 @@ static int mxt_check_reg_init(struct mxt_data *data) index += object->size + 1; } if (index != config_info->config_length) { dev_err(dev, "Config length does not match fw\n"); return -EINVAL; } return 0; } Loading Loading
arch/arm/boot/dts/qti/apq8084-liquid.dtsi +171 −48 Original line number Diff line number Diff line Loading @@ -531,6 +531,7 @@ atmel,i2c-pull-up; atmel,no-force-update; atmel,no-lpm-support; atmel,bl-addr = <0x26>; atmel,cfg_1 { atmel,family-id = <0xa2>; atmel,variant-id = <0x00>; Loading @@ -540,27 +541,41 @@ /* Object 6, Instance = 0 */ 00 00 00 00 00 00 /* Object 38, Instance = 0 */ 21 01 00 19 09 0D 00 00 00 00 21 02 00 18 0A 0D 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 /* Object 7, Instance = 0 */ FF FF FF 00 /* Object 8, Instance = 0 */ 64 00 14 00 00 00 00 00 00 00 /* Object 9, Instance = 0 */ 83 00 00 20 34 00 A5 3C 08 07 00 00 00 00 0A 00 00 00 A0 05 00 0A 03 07 0A 00 08 14 1A 0D 00 0A 00 00 0A 00 /* Object 9, Instance = 1 */ /* Object 71, Instance = 0 */ 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 /* Object 7, Instance = 0 */ 21 08 32 42 /* Object 8, Instance = 0 */ 46 00 14 00 00 00 00 0A 32 19 /* Object 9, Instance = 0 */ 83 00 00 20 34 00 AF 4B 01 07 0A 14 07 00 0A 05 0A 00 A0 05 00 0A 03 07 04 00 08 14 1A 0D 05 06 00 00 01 00 00 00 00 00 00 00 00 00 00 00 00 /* Object 15, Instance = 0 */ 00 00 00 00 00 00 00 00 00 00 00 Loading @@ -571,65 +586,162 @@ /* Object 24, Instance = 0 */ 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 /* Object 24, Instance = 1 */ 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 /* Object 25, Instance = 0 */ 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 00 00 C8 00 00 00 00 00 00 /* Object 27, Instance = 0 */ 00 00 00 00 00 00 00 /* Object 27, Instance = 1 */ 00 00 00 00 00 00 00 /* Object 40, Instance = 0 */ 00 00 00 00 00 /* Object 40, Instance = 1 */ 00 00 00 00 00 /* Object 42, Instance = 0 */ 00 00 00 00 00 00 00 00 00 00 /* Object 42, Instance = 1 */ 00 00 00 00 00 00 00 00 00 00 21 14 26 1C 80 00 00 00 00 00 00 04 00 /* Object 43, Instance = 0 */ 00 00 00 00 00 00 00 00 00 00 08 00 91 00 01 01 80 00 00 00 00 00 /* Object 46, Instance = 0 */ 00 00 10 10 00 00 00 00 00 00 04 00 00 18 1C 00 00 01 00 00 1F 05 /* Object 47, Instance = 0 */ 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 /* Object 47, Instance = 1 */ 00 00 00 00 00 00 00 00 /* Object 55, Instance = 0 */ 01 40 14 0A 10 00 00 /* Object 56, Instance = 0 */ 01 00 01 19 0D 0D 0D 0D 0D 0D 0D 0D 0E 0E 0E 0E 0E 0E 0E 0E 0F 0F 0F 0F 0F 0F 0F 0F 0F 0F 0F 0F 0F 0F 0F 0F 00 00 01 02 06 04 00 00 00 00 00 00 00 00 00 /* Object 57, Instance = 0 */ 00 00 00 /* Object 61, Instance = 0 */ 00 00 00 00 00 /* Object 62, Instance = 0 */ 7D 22 40 1A 00 07 00 00 00 00 02 03 05 07 05 00 0A 05 05 AF 1E 1E 34 02 64 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 /* Object 55, Instance = 0 */ 00 00 00 00 00 00 00 /* Object 55, Instance = 1 */ 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 /* Object 63, Instance = 0 */ 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 /* Object 65, Instance = 0 */ 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 /* Object 56, Instance = 0 */ /* Object 66, Instance = 0 */ 00 00 00 /* Object 70, Instance = 0 */ 00 00 00 00 00 00 00 00 00 00 /* Object 73, Instance = 0 */ 00 00 00 00 00 00 /* Object 77, Instance = 0 */ 00 00 00 00 /* Object 79, Instance = 0 */ 00 00 00 ]; }; atmel,cfg_2 { atmel,fw-name = "atmel_8084_liquid_v2_0_AB.hex"; atmel,bootldr-id = <0x14>; atmel,family-id = <0xa2>; atmel,variant-id = <0x00>; atmel,version = <0x20>; atmel,build = <0xaa>; atmel,config = [ /* Object 6, Instance = 0 */ 00 00 00 00 00 00 /* Object 38, Instance = 0 */ 21 02 00 18 0A 0D 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 /* Object 71, Instance = 0 */ 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 /* Object 7, Instance = 0 */ 21 08 32 42 /* Object 8, Instance = 0 */ 46 00 14 00 00 00 00 0A 32 19 /* Object 9, Instance = 0 */ 83 00 00 20 34 00 AF 4B 01 07 0A 14 07 00 0A 05 0A 00 A0 05 00 0A 03 07 04 00 08 14 1A 0D 05 06 00 00 01 00 00 00 00 00 00 00 00 00 00 00 00 /* Object 15, Instance = 0 */ 00 00 00 00 00 00 00 00 00 00 00 /* Object 18, Instance = 0 */ 00 00 /* Object 19, Instance = 0 */ 00 00 00 00 00 00 /* Object 24, Instance = 0 */ 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 /* Object 25, Instance = 0 */ 01 00 00 00 00 00 00 00 00 00 00 00 00 00 C8 00 00 00 00 00 00 /* Object 27, Instance = 0 */ 00 00 00 00 00 00 00 /* Object 40, Instance = 0 */ 00 00 00 00 00 /* Object 42, Instance = 0 */ 21 14 26 1C 80 00 00 00 00 00 00 04 00 /* Object 43, Instance = 0 */ 08 00 91 00 01 01 80 00 00 00 00 00 /* Object 46, Instance = 0 */ 00 00 18 1C 00 00 01 00 00 1F 05 /* Object 47, Instance = 0 */ 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 /* Object 55, Instance = 0 */ 01 40 14 0A 10 00 00 /* Object 56, Instance = 0 */ 01 00 01 19 0D 0D 0D 0D 0D 0D 0D 0D 0E 0E 0E 0E 0E 0E 0E 0E 0F 0F 0F 0F 0F 0F 0F 0F 0F 0F 0F 0F 0F 0F 0F 0F 00 00 01 02 06 04 00 00 00 00 00 00 00 00 00 /* Object 57, Instance = 0 */ 00 00 00 /* Object 57, Instance = 1 */ 00 00 00 /* Object 61, Instance = 0 */ 00 00 00 00 00 /* Object 61, Instance = 1 */ 00 00 00 00 00 /* Object 61, Instance = 2 */ 00 00 00 00 00 /* Object 61, Instance = 3 */ 00 00 00 00 00 /* Object 62, Instance = 0 */ 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 7D 22 40 1A 00 07 00 00 00 00 02 03 05 07 05 00 0A 05 05 AF 1E 1E 34 02 64 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 Loading @@ -637,10 +749,21 @@ 00 00 00 00 /* Object 63, Instance = 0 */ 00 00 00 00 00 00 00 00 00 00 00 00 /* Object 63, Instance = 1 */ 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 /* Object 65, Instance = 0 */ 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 /* Object 66, Instance = 0 */ 00 00 00 /* Object 70, Instance = 0 */ 00 00 00 00 00 00 00 00 00 00 /* Object 73, Instance = 0 */ 00 00 00 00 00 00 /* Object 77, Instance = 0 */ 00 00 00 00 /* Object 79, Instance = 0 */ 00 00 00 ]; }; }; Loading
drivers/input/touchscreen/atmel_mxt_ts.c +36 −7 Original line number Diff line number Diff line Loading @@ -110,7 +110,6 @@ enum mxt_device_state { INIT, APPMODE, BOOTLOADER }; #define MXT_TOUCH_PROXKEY_T52 52 #define MXT_PROCI_GRIPFACE_T20 20 #define MXT_PROCG_NOISE_T22 22 #define MXT_PROCG_NOISE_T62 62 #define MXT_PROCI_ONETOUCH_T24 24 #define MXT_PROCI_TWOTOUCH_T27 27 #define MXT_PROCI_GRIP_T40 40 Loading @@ -121,6 +120,10 @@ enum mxt_device_state { INIT, APPMODE, BOOTLOADER }; #define MXT_PROCI_SHIELDLESS_T56 56 #define MXT_PROCI_EXTRATSDATA_T57 57 #define MXT_PROCG_NOISESUPPRESSION_T48 48 #define MXT_PROCG_NOISE_T62 62 #define MXT_PROCI_ACTIVESTYLUS_T63 63 #define MXT_PROCI_LENSBENDING_T65 65 #define MXT_PROCI_ZONEINDICATION_T73 73 #define MXT_SPT_COMMSCONFIG_T18 18 #define MXT_SPT_GPIOPWM_T19 19 #define MXT_SPT_SELFTEST_T25 25 Loading @@ -131,6 +134,11 @@ enum mxt_device_state { INIT, APPMODE, BOOTLOADER }; #define MXT_SPT_CTECONFIG_T46 46 #define MXT_SPT_EXTRANOISESUPCTRLS_T58 58 #define MXT_SPT_TIMER_T61 61 #define MXT_SPT_GOLDENREFERENCES_T66 66 #define MXT_SPT_DYNAMICCONFIGURATIONCONTROLLER_T70 70 #define MXT_SPT_DYNAMICCONFIGURATIONCONTAINER_T71 71 #define MXT_SPT_CTESCANCONFIG_T77 77 #define MXT_SPT_TOUCHEVENTTRIGGER_T79 79 /* MXT_GEN_COMMAND_T6 field */ #define MXT_COMMAND_RESET 0 Loading Loading @@ -421,16 +429,20 @@ static bool mxt_object_readable(unsigned int type) case MXT_TOUCH_PROXKEY_T52: case MXT_PROCI_GRIPFACE_T20: case MXT_PROCG_NOISE_T22: case MXT_PROCG_NOISE_T62: case MXT_PROCI_ONETOUCH_T24: case MXT_PROCI_TWOTOUCH_T27: case MXT_PROCI_GRIP_T40: case MXT_PROCI_PALM_T41: case MXT_PROCI_TOUCHSUPPRESSION_T42: case MXT_PROCI_STYLUS_T47: case MXT_PROCG_NOISESUPPRESSION_T48: case MXT_PROCI_ADAPTIVETHRESHOLD_T55: case MXT_PROCI_SHIELDLESS_T56: case MXT_PROCI_EXTRATSDATA_T57: case MXT_PROCG_NOISESUPPRESSION_T48: case MXT_PROCG_NOISE_T62: case MXT_PROCI_ACTIVESTYLUS_T63: case MXT_PROCI_LENSBENDING_T65: case MXT_PROCI_ZONEINDICATION_T73: case MXT_SPT_COMMSCONFIG_T18: case MXT_SPT_GPIOPWM_T19: case MXT_SPT_SELFTEST_T25: Loading @@ -440,7 +452,11 @@ static bool mxt_object_readable(unsigned int type) case MXT_SPT_CTECONFIG_T46: case MXT_SPT_EXTRANOISESUPCTRLS_T58: case MXT_SPT_TIMER_T61: case MXT_PROCI_ADAPTIVETHRESHOLD_T55: case MXT_SPT_GOLDENREFERENCES_T66: case MXT_SPT_DYNAMICCONFIGURATIONCONTROLLER_T70: case MXT_SPT_DYNAMICCONFIGURATIONCONTAINER_T71: case MXT_SPT_CTESCANCONFIG_T77: case MXT_SPT_TOUCHEVENTTRIGGER_T79: return true; default: return false; Loading @@ -459,16 +475,20 @@ static bool mxt_object_writable(unsigned int type) case MXT_TOUCH_PROXKEY_T52: case MXT_PROCI_GRIPFACE_T20: case MXT_PROCG_NOISE_T22: case MXT_PROCG_NOISE_T62: case MXT_PROCI_ONETOUCH_T24: case MXT_PROCI_TWOTOUCH_T27: case MXT_PROCI_GRIP_T40: case MXT_PROCI_PALM_T41: case MXT_PROCI_TOUCHSUPPRESSION_T42: case MXT_PROCI_STYLUS_T47: case MXT_PROCG_NOISESUPPRESSION_T48: case MXT_PROCI_ADAPTIVETHRESHOLD_T55: case MXT_PROCI_SHIELDLESS_T56: case MXT_PROCI_EXTRATSDATA_T57: case MXT_PROCG_NOISESUPPRESSION_T48: case MXT_PROCG_NOISE_T62: case MXT_PROCI_ACTIVESTYLUS_T63: case MXT_PROCI_LENSBENDING_T65: case MXT_PROCI_ZONEINDICATION_T73: case MXT_SPT_COMMSCONFIG_T18: case MXT_SPT_GPIOPWM_T19: case MXT_SPT_SELFTEST_T25: Loading @@ -478,7 +498,11 @@ static bool mxt_object_writable(unsigned int type) case MXT_SPT_CTECONFIG_T46: case MXT_SPT_EXTRANOISESUPCTRLS_T58: case MXT_SPT_TIMER_T61: case MXT_PROCI_ADAPTIVETHRESHOLD_T55: case MXT_SPT_GOLDENREFERENCES_T66: case MXT_SPT_DYNAMICCONFIGURATIONCONTROLLER_T70: case MXT_SPT_DYNAMICCONFIGURATIONCONTAINER_T71: case MXT_SPT_CTESCANCONFIG_T77: case MXT_SPT_TOUCHEVENTTRIGGER_T79: return true; default: return false; Loading Loading @@ -1104,6 +1128,11 @@ static int mxt_check_reg_init(struct mxt_data *data) index += object->size + 1; } if (index != config_info->config_length) { dev_err(dev, "Config length does not match fw\n"); return -EINVAL; } return 0; } Loading