Use the kernel based circular buffer macros to implement the attention report queue. Also use memory barriers instead of a single spinlock to protect both the producer and consumer.
Fix warning related to format string.
Add a configuration option in the platform data to decide whether or not to use per function input devices or a single unified device for multiple functions.
Add sensor dimensions to the platform data allows the sensor resolution to be computed and reported by the input device.