rq_stats: set rq_info.init after initializing rq_info attributes

It is possible the kobj not initialized before def_work_fn called.
Fix this by setting rq_info as initialized only after initializing
rq_info attributes.

Change-Id: Iff8c5c653b51c711a7ddc5bbeae8684fcbf2a742
Signed-off-by: Jin Hong <jinh@codeaurora.org>
modified for Tuna Hybrid from CAF

Signed-off-by: Paul Reioux <reioux@gmail.com>
rq_stats: changing the show function for sysfs entry def_timer_ms

The computation done in sysfs show function show_def_timer_ms is
already happening in function def_work_fn. Since there can be a
time gap between when the computation is done in def_work_fn to
when it is done in show_def_timer_ms; the correct computation
is the one done in def_work_fn. Therefore removing the extra
computation from show_def_timer_ms.

Change-Id: I91f7d3f48d7c22282a5709432775a63e448c2fe3
Signed-off-by: Amar Singhal <asinghal@codeaurora.org>
modified for Tuna hybrid from CAF

Signed-off-by: Paul Reioux <reioux@gmail.com>
block: urgent request: Update dispatch_urgent in case of requeue/reinsert

The block layer implements a mechanism for verifying that the device
driver won't be notified of an URGENT request if there is already an
URGENT request in flight. This is due to the fact that interrupting an
URGENT request isn't efficient.
This patch fixes the above described mechanism in case the URGENT request
was returned back to the block layer from some reason: by requeue or
reinsert.

CRs-fixed: 473376, 473036, 471736
Change-Id: Ie8b8208230a302d4526068531616984825f1050d
Signed-off-by: Tatyana Brokhman <tlinder@codeaurora.org>
block: urgent: Fix dispatching of URGENT mechanism

There are cases when blk_peek_request is called not from blk_fetch_request
thus the URGENT request may be started but the flag q->dispatched_urgent is
not updated.

Change-Id: I4fb588823f1b2949160cbd3907f4729767932e12
CRs-fixed: 471736
CRs-fixed: 473036
Signed-off-by: Tatyana Brokhman <tlinder@codeaurora.org>

Conflicts:
	block/blk-core.c
fastchg: change fast charge to override the high current GPIO, not the USB cable mode
fastchg: Remove vestigial fsa9480 "force AC" switch.
fastchg: Only enable fast charge GPIO as long as we actually have some charging to do.
Kernel Version: AK.013.EXP