sound: SoC: WolfsonMicro WM5110 sound control [AndreiLux]

Ref: https://github.com/AndreiLux/ref-3.10

9. Cleanup and correct the speaker output hook

commit: 4fc5f802bcc41c8ce1288181f31f98f69d27c331

8. Adapt configuration for Florida-based platform

On the Florida platform the speaker changes from OUT4 to OUT2 and in the default sound settings is chained with the DSP4 of the digital core which seems to be doing some live DRC via microphone input.

We add the proper pathing to serve this new mixer layout for the speaker.

Because there are issues with the equalizers on the WM5110 which seemingly are very differently configured than on the WM5102, we cascade EQ3 and EQ4 in the speaker path to be able to achieve somewhat acceptable audio quality without fine-tuning the frequencies and gains.

We add a switch to be able to avoid the DSP processing in the speaker path as it seems to be very deteriorating to audio quality and shows no benefit.

commit: 0981d872811e059e59b091b7eb54f4cebca9b7fb

7. Fix mutex lock rename in regmap driver

commit: 56b4d7c14a2812e3c04cc7c57a5a081065208b37

6. Add SP mono mode and SP privacy mode

commit: b53bcfed966fc959d381957cc497695d1f3ef1bb

5. Add speaker EQ and EQ freq controls

commit: 367d8411641c770b5680fe04f4cee6ae892a3c6c

4. Misc fixes and HP power control for EQ and DRC

commit: 87de03355ca16c9571647e36b8e3370caa9d8fd7

3. Add dynamic range compression

commit: 78131e4b887e5049c8e4d2440c7eb2b464d28ae2

2. sound-control: Headphone equalizer

commit: 97fbe61a4a8d9acbee70fff0e0c36dcd4eb3af7f

1. sound: SoC: WolfsonMicro WM5110 sound control

This first iteration creates the base skeleton for the upcoming controls.

Already included are volume controls for various outputs.

Conflicts:

        drivers/base/regmap/regmap.c
        sound/soc/codecs/Makefile
        sound/soc/codecs/wm5102.c
commit: 65315712c233e51be39bedce65b2e3ac62e293eb