ASoC: OMAP ABE: Update to release 09.56

Update ABE firmware to 09.56. This firmware has the
next update:
- Add MONO 16 bits support
- Update SRC 48->96 kHz.
- Enable 4/16/48 kHz on Voice port and BT.
- Enable DL1 path to Handsfree path
- Add new filter functions for DMIC

Change-Id: Idbc527887b8cbd97ea1882562763950c6144add2
Signed-off-by: Sebastien Guiriec <s-guiriec@ti.com>
Revert "ASoC: ABE: Use DMA at 16-bits specifically for 16-bits mono"

This reverts commit b9115fb1007f7a6c925d23330c561b3526711401.
ASoC: OMAP ABE: Use MONO_16_16 for 16-bits mono

Use MONO_16_16 format for 16-bits mono stream, which consists of two
16-bits frames in a 32-bit container. All the data formats supported
by ABE are now configured using DMA data type of 32-bits, hence DMA
parameters reset section is removed.

Change-Id: I04c8a8ac787bf04e462735e2bb68ed1a1a77c54b
Signed-off-by: Misael Lopez Cruz <misael.lopez@ti.com>
Signed-off-by: Igor Nedashkivskyi <x0153369@ti.com>
ASoC: OMAP ABE: Add 48kHz support for VX_UL and VX_DL FEs

Add 48kHz sample rate for Voice playback and capture FE ports
which is now supported natively in ABE.

Change-Id: Ia8ee1dba4e50c322a3f7201864cb36ef799993d7
Signed-off-by: Misael Lopez Cruz <misael.lopez@ti.com>
ASoc: ABE VxREC: use VxREC audio back-end

VxREC is the back-end of MM_UL and MM_UL2.
VxREC back-end represents the Vx_REC input of the ROUTE_UL.
Vx_REC can be mono or stereo input even it mixes
different inputs such as Vx_UL, Vx_DL, TONES_DL and MM_DL.
This audio BE needs to start even none of its inputs
are enable. This is to avoid any cross-dependencies between
VxREC and Vx_UL, Vx_DL, TONES_DL and MM_DL that could make
userspace code much more complex.

Change-Id: Iebe8189951b9b77944f7ff8f180c7d977ecbef00
Signed-off-by: Francois Mazard <f-mazard@ti.com>
Signed-off-by: Pierre Moos <p-moos@ti.com>

Conflicts:
	sound/soc/omap/sdp4430.c
ASoC: OMAP ABE: Add support for single downlink path

ABE 09.56 allows connecting PDM_DL2 from DL1 path, which gives
the advantage of running hands-free path on lower OPP. DL2 path
can be enabled or disabled via config option: SND_OMAP_SOC_ABE_DL2.

Change-Id: I0c82d0507249630ff36627cfdb6523655da72734
Signed-off-by: Sebastien Guiriec <s-guiriec@ti.com>
Signed-off-by: Misael Lopez Cruz <misael.lopez@ti.com>
ASoC: OMAP ABE: Remove extra OPP100 transition

There is no need of doing a OPP100 transition when AESS stream
is open, required OPP is calculated based on the active audio
routes.

Change-Id: I178058827c448aa6d300724a2baeb5f44ac9a690
Signed-off-by: Misael Lopez Cruz <misael.lopez@ti.com>
ASoC: OMAP ABE: Fix MM_UL format capability

MM_UL port supports up to 6 channels, 32-bits per sample, 16-bits
per sample is no longer supported hence removed from DAI capabilities.

Change-Id: I1c9940609e5f087f5df83b9a8c6261d2306512dd
Signed-off-by: Misael Lopez Cruz <misael.lopez@ti.com>
ASoC: TWL6040: Adding Aux audio output

Adding switch controls to enable/disable audio output
throught Aux pins in codec.

Change-Id: I329c44fe95a9157d56017ac47cb4e091e87d8710
Signed-off-by: Israel Cepeda <icepeda@ti.com>
MFD: twl6040-codec: Refactor power-on verification

Refactor power-on verification which consists of checking NCPCTL,
LDOCTL and LPPLLCTL registers against expected values of successful
automatic power-up sequences.

Change-Id: I20c0693922baa6700a117881c47cbf400716446b
Signed-off-by: Misael Lopez Cruz <misael.lopez@ti.com>
MFD: twl6040-codec: Change power-up verification policy

Automatic power-up completion result can be affected by race
conditions between the completion task itself and the READYINT
handler, leading to false power-up failures as the completion
timeout may expire before READYINT handler gets executed and
marks completion.

Instead, the first verification for a successful power-up sequence
is the expected state of NCPCTL, LDOCTL and LPPLLCTL registers.
These registers will have specific values after automatic power-up
sequence has completed.

False power-up success is still checked, this is the case where
the READYINT is received but the hardware state is not consistent
with what is known/expected after a successful sequence. Under these
circumstances, we retry automatic power-up.

Change-Id: I9f85d67a10e84564a38f7d97a78345be06ac3b16
Signed-off-by: Misael Lopez Cruz <misael.lopez@ti.com>
ASoC: OMAP PCM: Remove combined ABE/HDMI constraint

Remove buffer bytes constraint used for ABE and HDMI in favor of
individual, separate constraints applied by each driver.

Change-Id: Ic1b0aefff6504159f36eb701b91e5e3e7c78d688
Signed-off-by: Misael Lopez Cruz <misael.lopez@ti.com>
ALSA: pcm: export 'snd_interval_step' symbol

Export 'snd_interval_step' symbol so that ALSA drivers can use it
to add hw rules.

Change-Id: Ic7d38683a46d281db9b1a36a5d5eabdb92876153
Signed-off-by: Misael Lopez Cruz <misael.lopez@ti.com>
ASoC: ABE: Add hw_rule for 250us period constraint

Audio Backend requires period time in steps of 250us.

Change-Id: I9df1893ec557d883d435d77d24e019a054272c11
Signed-off-by: Misael Lopez Cruz <misael.lopez@ti.com>
OMAP4: EMIF: unify access to EMIF_PWR_MGMT_CTRL.REG_LP_MODE

Use set_lp_mode for changing EMIF_PWR_MGMT_CTRL.REG_LP_MODE.

Change-Id: Ia6410f97c8937faee6fbfc335d5d1158de41583b
Signed-off-by: Grygorii Strashko <grygorii.strashko@ti.com>
OMAP4: PM: Add errata id for handling Errata i745

The errata handler is present in kernel 3.0. The patch adds the
Errata id for simplification of search in the kernel sources

Change-Id: I251c0bd09754e5af9ec40c01c50e24e25eba9227
Signed-off-by: Eugen Mandrenko <ievgen.mandrenko@ti.com>