The current driver expected touchscreen input wires(XP,XN,YP,YN) to be connected in a particular order. Making changes to accept this as platform data. Sebastian reworked the original patch and removed a lot of the not required pieces.
Showing the changes to include/linux/input (1 of 3 files). Show all
Unified · Split
| @@ -12,12 +12,24 @@ · 11 unmodified lines | ||
| 12 | 12 | * A step configured to read a single |
| 13 | 13 | * co-ordinate value, can be applied |
| 14 | 14 | * more number of times for better results. |
| 15 | + * @wire_config: Different EVM's could have a different order | |
| 16 | + * for connecting wires on touchscreen. | |
| 17 | + * We need to provide an 8 bit number where in | |
| 18 | + * the 1st four bits represent the analog lines | |
| 19 | + * and the next 4 bits represent positive/ | |
| 20 | + * negative terminal on that input line. | |
| 21 | + * Notations to represent the input lines and | |
| 22 | + * terminals resoectively is as follows: | |
| 23 | + * AIN0 = 0, AIN1 = 1 and so on till AIN7 = 7. | |
| 24 | + * XP = 0, XN = 1, YP = 2, YN = 3. | |
| 25 | + * | |
| 15 | 26 | */ |
| 16 | 27 | |
| 17 | 28 | struct tsc_data { |
| 18 | 29 | int wires; |
| 19 | 30 | int x_plate_resistance; |
| 20 | 31 | int steps_to_configure; |
| 32 | + int wire_config[10]; | |
| 21 | 33 | }; |
| 22 | 34 | |
| 23 | 35 | #endif |