Rouleur has different hph settings for different foundry
id. Read foundry id and update hph settings so as to
provide same settings to end user.
Change-Id: I114047226462ab95e0c93271c3d6099f15af2343
Signed-off-by: Vatsal Bucha <vbucha@codeaurora.org>
Register to power supply framework to get soc capacity.
Reduce ear and hph gain for reduced voltage to optimize
power consumption. Also set LD22 voltage to lower value
for low SoC.
Change-Id: I94de9341b8c7307128d3cd41c7398c31d57fa685
Signed-off-by: Vatsal Bucha <vbucha@codeaurora.org>
Disable rx swr gpio as wakeup capable to avoid waking up system
during power collapse.
Change-Id: Idd76f8304e61b97e53ca82e407bedbdc9b0f5a7f
Signed-off-by: Sudheer Papothi <spapothi@codeaurora.org>
As va-macro has fs_clk gen, ensure va-macro
is registered before other macros.
Change-Id: I8283dc11817caf0c208fe231132951a7a79b7d51
Signed-off-by: Laxminath Kasam <lkasam@codeaurora.org>
This reverts commit d02c7efb35.
and commit 61f235e5bd to avoid AOP
related issues.
Change-Id: I0b8b44bc5cca6bef6bc18c228f08a9c585c79c1c
Signed-off-by: Laxminath Kasam <lkasam@codeaurora.org>
Restore change to retain audio_hm voting and
ensure AOP hang issue not seen by masking interrupt
wakeup of swr pinctrl pins.
Change-Id: I51bf36d6d6b0999abf10a4bc94cce900d1adf1d5
Signed-off-by: Laxminath Kasam <lkasam@codeaurora.org>
Add a pre ssr up event in all macros ,where GFMUX reset
to done before set the dev_up flag to true.
Change-Id: I77229ccd0ed68aac841146a89fe7f76961260aea
Signed-off-by: Prasad Kumpatla <nkumpat@codeaurora.org>
Update SOC_SINGLE_SX_TLV to SOC_SINGLE_S8_TLV to make codec
driver compatiable with upstream driver.
Change-Id: I4061b015d715978f3b294ad630f53b64bf66c2b7
Signed-off-by: Meng Wang <mengw@codeaurora.org>
For RX DC droop setting, ensure update proper
value during powerup/powerdown based on
sample rate.
Change-Id: I269d41452911e1999b2dbdf4fa22e383aa973848
Signed-off-by: Laxminath Kasam <lkasam@codeaurora.org>
There is noise on ear path during hph and ear concurrency.
Set proper HPH_V_PA voltage when both hph PA is in
class-H mode to resolve noise.
Change-Id: Ifbbfb5691687dcb2202358c1e387252954d58db2
Signed-off-by: Vatsal Bucha <vbucha@codeaurora.org>
During multiple PDR usecases, due to sync issues
port collision interrupt is observed.
set wsa state to device down before cancelling the ocp
workqueue and bail out from the workqueue when wsa state
is set to device down.
Change-Id: Ibefb338c1d6d2901b8773928fa2c0c48b51ac6f7
Signed-off-by: Prasad Kumpatla <nkumpat@codeaurora.org>
Add system sleep ops and invoke force runtime suspend for all
the macro drivers in bolero in order to synchronize
system suspend and runtime suspend callbacks.
Use freezable delayed work queues instead of normal
delayed workqueues in order to avoid contention with
pm suspend callflow.
Change-Id: Ibb0d35ad80c09e7f2a7032b4daef53c359056dfd
Signed-off-by: Aditya Bavanari <abavanar@codeaurora.org>
Add codec DAI to support PCM interface to soundwire master on
RX macro in bolero codec driver.
Change-Id: Iaf5a9d9cf78ec9dc29b60ebd7736504ec6470e57
Signed-off-by: Sudheer Papothi <spapothi@codeaurora.org>
Update the clock sequence for native audio playback to avoid
any distortion or change in gain during native audio playback
usecase.
Change-Id: Ia9aaa63f3e476b49a07d49b794f4120ed55bac47
Signed-off-by: Sudheer Papothi <spapothi@codeaurora.org>
Update rx droop based on sampling rate to avoid change in
gains between different sampling rates.
Change-Id: Icb2b0bc51a61395c2ee96f63c29555614fe9e505
Signed-off-by: Sudheer Papothi <spapothi@codeaurora.org>
In event handler for soft reset, do not perform
soft resetting of the compander as this is not
the recommended sequence. Compander config
needs to be done only in interpolator enable
function.
Change-Id: I9bb1d493860adc924252827594219618f16309b0
Signed-off-by: Karthikeyan Mani <kmani@codeaurora.org>
Allow bolero macro's child devices to pm enable
irrespective of state of their parents.
Change-Id: Ie615ea2db097760de75682b5881f71a37a735fa2
Signed-off-by: Karthikeyan Mani <kmani@codeaurora.org>
Update init registers for tx and rx paths in an array.
Change-Id: I2738af7639ffec05b5c93e86a2a3f4cf7ccb36fe
Signed-off-by: Sudheer Papothi <spapothi@codeaurora.org>
Add a mixer control which can allow for aux hpf
to be either enabled or disabled based on its switch
settings.
Change-Id: Ie300c89e1e2f3669846d6bab250b7f4da4a7632a
Signed-off-by: Karthikeyan Mani <kmani@codeaurora.org>
Add callback to vote for core votes that the
soundwire master can use while doing a clock request.
Check for pinctrl function errors and in case of any
failures return from clock enable with an error.
Change-Id: Ic5c200d7179a1e3a9695955d8711358cd7618bd1
Signed-off-by: Karthikeyan Mani <kmani@codeaurora.org>
If soundwire gpio is not used, then no need to return
error if not able to get gpio data.
Change-Id: I97705b49d3b01f99b7a4e91190a15ffb211d32f2
Signed-off-by: Karthikeyan Mani <kmani@codeaurora.org>
RX_CDC_DMA_RX0/1/2/3 ports drives RX0/RX1, RX2/RX3, RX4 and RX5
channels on bolero rx-macro. Update channel mask
as per these mapping and return to channel map
accordingly.
Change-Id: I2e66e601b5137ebc513527827332bbb7cde0acb3
Signed-off-by: Laxminath Kasam <lkasam@codeaurora.org>
Left and right channel content can get swapped
in new cdc_dma interface.
DMA interfaces underrun results in Channels being swapped.
This issue is a side effect current SW setup for RX path:
1. HLOS Setup WCD Analog Path, Bolero CODEC.
CODEC would drive Fs to LPASS DMAs requesting for PCM samples.
2. DSP setup RX Buffers in Memory :
3. DSP Configures RD DMAs and DMA RXTX CODEC interface
(Enable CODEC DMA interface buffer and
Enable DMA LPASS_RXTX_LPAIF_RDDMA_CTL0.ENABLE
and LPASS_RXTX_LPAIF_RDDMA_CODEC_INTF0.ENABLE
If CODEC Fs, aligns with DMA interface being enabled
there is an underrun as DMA interface pingpong buffer is empty.
This results in channels being swapped.
Proposed work around while keeping current SW setup order.
Provide a workaround to Keep Fs disabled until DMAs and
CODEC DMA interface are enabled and HW could prefetch all buffers.
SW would keep existing setup order:
1. HLOS Setup WCD Analog Path, Bolero CODEC.
CODEC would drive Fs to LPASS DMAs requesting for PCM samples.
2. DSP setup RX Buffers in Memory :
3. DSP Configures DMAs and DMA CODEC interface
(Enable CODEC DMA interface buffer and
Enable DMA LPASS_RXTX_LPAIF_RDDMA_CTL0.ENABLE
and LPASS_RXTX_LPAIF_RDDMA_CODEC_INTF0.ENABLE)
4. Enable Fs Set #LPASS_RX_CDC_RX0_RX_PATH_CTL. CLK_EN to ONE
Change-Id: I7916667f5d857464cc7d77b51da307ab234cc7bb
Signed-off-by: Laxminath Kasam <lkasam@codeaurora.org>
On hph playback usecase with compander enabled, load
hph filter coefficients to better center gain errors.
Change-Id: I3ce50d6e7b9a10255df8084adb0566d8bf9b47c7
Signed-off-by: Karthikeyan Mani <kmani@codeaurora.org>
Check for valid port before mux configuration.
Change-Id: Iaa32925f0c23305a2a3cedd0e476372aac380e0c
Signed-off-by: Sudheer Papothi <spapothi@codeaurora.org>
Avoid SSR state, and do only clock-stop-resume to reset master when
switching between 44.1 and 48k to avoid redundant re-enumeration.
Change-Id: Iaa955c4ceb75f30c68106468676ddb2551537de4
Signed-off-by: Ramprasad Katkam <katkam@codeaurora.org>