mfd: wcd9xxx: Introduce wcd9xxx interrupt controller driver

The wcd9xxx codec hardwares have multiple interrupt sources that share
one phycial interrupt line which is usually a gpio.
Convert the current wcd9xxx interrupt controller implementation to a driver
that registers itself to irq domain so codec drivers can utilize
interrupts without worrying about gpio source and system interrupt number.

Change-Id: I35381b90f0db49dbdcd70811d4adc16e40dd7ba2
Signed-off-by: Joonwoo Park <joonwoop@codeaurora.org>
ASoC: wcd9310: Update compander gain implementation

When compander is enabled, PA has no impact on the playback
path. In order to keep the output audio level consistently during
compander enabling and disabling so we have to apply the same
gain/attention in PA to digital gain to compensate the PA gain.

CRs-fixed: 456565
Change-Id: Idf760bac35b25aab419a23ce5803c68831850856
Signed-off-by: Kuirong Wang <kuirongw@codeaurora.org>
ASoC: wcd9xxx: Re-order codec DAIs definition

AIF3_PB and AIF3_CAP codec DAIs order and enum
definitions order are different. Reorder DAI
definitions to match with enum definitions

Change-Id: I0d16355b1b0997177e138c4fcf669365dc942baa
Signed-off-by: Vidyakumar Athota <vathota@codeaurora.org>
ASoC: msm: Remove unused function

Remove RX regulator configuration function as it is not used

Change-Id: Idbdc8053130303074fee454a45fd6e025b836843
Signed-off-by: Jay Wang <jaywang@codeaurora.org>