The following series replaces the current busy loop touchscreen implementation by a fully interrupt driven implementation. Since i.MX23 and i.Mx28 silicon is different, the existing implementation can be used for the i.MX28 SoC only. So, the first two patches of this series move the i.MX28 specific definitions out of the way. Then the i.MX23 specific definitions are added, also the code to distinguish both SoCs at run-time. Up to here the existing driver will also run on an i.MX23 Soc now. When the i.MX23 SoC is running from battery it seems not to be a good idea to run a busy loop to detect touches and their location. The fourth patch adds a fully interrupt driven implementation which makes use of the built-in delay and multiple sample features of the touchscreen controller. This will reduce the interrupt load to a minimum. The last patch in this series just removes the existing busy loop implementation. Some restrictions: - yet tested on i.MX23 SoC only - touchscreen parametrisation ability is provided (with fixed values for now) but should be done via device tree. Some recommendations how to define the bindings would be helpful Comments are welcome. Juergen -- To unsubscribe from this list: send the line "unsubscribe linux-iio" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html