mmc: host: create a specific workqueue for clk gate

mmc host clock gate work was scheduled on system_wq,
which is created without flag WQ_MEM_RECLAIM. Because
mmcqd thread was created with flag PF_MEMALLOC set, it
would break forward-progress guarantee leading to a
deadlock when clock gate work is cancelled. Fix it by
creating a specific work queue for clock gate work.

Change-Id: I4be5d629c712d8c48049f1e2df2c14ac6024b837
Signed-off-by: Can Guo <cang@codeaurora.org>
2 files changed