wcd9xxx: core: Fix crash while headset insert and remove

When insert and remove headset continuously observe crash.
In the interrupt table for wcd9306, there is a interrupt
number of WCD9XXX_IRQ_RESERVED_2 (value 32).
In IRQ driver, irqs will be dispatched  based on this
interrupt table. But for WCD9XXX_IRQ_RESERVED_2, this
value being 32 and BIT_BYTE will be 4 whereas number
of interrupt registers are 0 to 3 only.
Here status array used to check interrupt set, access each
entry of interrupt table and see if bit mask is set.
so, when checking for WCD9XXX_IRQ_RESERVED_2 it will
access out of bound array status[4] which will return
unexpected value.
In failed case, status[4] matches bitmask for 32nd bit
and dispatches irq for invalid entry causing crash.
Remove the entry as it is not a valid entry and causing
out of bound access for wcd9306 and wcd9320.

Change-Id: I82ed3b47a3bd7cee7a3c90a4fba4981a0528702f
CRs-Fixed: 729475
Signed-off-by: Laxminath Kasam <lkasam@codeaurora.org>
Signed-off-by: franciscofranco <franciscofranco.1990@gmail.com>
power: bq27541: Convert wakelocks to wakeup sources

Change-Id: I1a66a7494aebe87ee2ebc1fd72066a130c0e9caf
Signed-off-by: franciscofranco <franciscofranco.1990@gmail.com>
cpu-boost: if the user is underclocking choose the minimum clock from input_boost_freq and policy->max for extra power savings if the underclocked freq is < input_boost_freq

Signed-off-by: franciscofranco <franciscofranco.1990@gmail.com>