ACPI: thinkpad-acpi: refactor hotkey_get and hotkey_set
This patch:
1. Splits hotkey_get/set into hotkey_status_get/set and hotkey_mask_get/set;
2. Caches the status of hot key mask for later driver use;
3. Makes sure the cache of hot key mask is refreshed when needed;
4. logs a printk notice when the firmware doesn't set the hot key
mask to exactly what we asked it to;
5. Do the proper locking on the data structures.
Only (4) is user-noticeable, unless (5) fixes some corner-case races.
Signed-off-by: Henrique de Moraes Holschuh <hmh@hmh.eng.br>