Update MSB of sample interval in the frame shape
to avoid misconfiguration.
Change-Id: I05e99bc563f6cdc71c7caf424441c4caa44ec4c6
Signed-off-by: Sudheer Papothi <spapothi@codeaurora.org>
Add support to disable dynamic port map via device tree
property.
Do not update master clock when dynamic port map
is disabled for a sound wire master.
Change-Id: I9f9344866faa4d1c342787e014102d9182ed56ae
Signed-off-by: Vignesh Kulothungan <vigneshk@codeaurora.org>
Some usecases need soundwire bus clock frequency to run at
lower clock rate for better power and performance. Update
soundwire bus clock frequency based on usecase.
Change-Id: I2e786d9f5d5d2ec3841daa934802eeafa79a8f6c
Signed-off-by: Sudheer Papothi <spapothi@codeaurora.org>
Update regmap support for soundwire interface. This change
adds init function to initialize soundwire register map.
Change-Id: I9a6eee5c0ca507cafdf6416a4adea4e60b714eba
Signed-off-by: Sudheer Papothi <spapothi@codeaurora.org>
Add support to enable PCM data transfer through soundwire interface.
Change-Id: I9b162beb7fcdc6bbb90303acb77c350dbcf8c490
Signed-off-by: Sudheer Papothi <spapothi@codeaurora.org>
Update kernel version references from 4.19 to 5.4.
Update symbolic links to new kernel version files.
Change-Id: I38baa52218b16e0b0c86ad898912d29ec4d3d516
Signed-off-by: Vignesh Kulothungan <vigneshk@codeaurora.org>
for 32bit arch based builds, soundwire logical address
fails when compare with dtsi value (64bit). Update addr
type of soundwire slave addr to u64.
Change-Id: Ifda388ca66350a2bc898484cddecbbcab4d3ece4
Signed-off-by: Laxminath Kasam <lkasam@codeaurora.org>
Add support to register/deregister for event listener to listen to
headset interrupt events during low power island mode.
Change-Id: I9d05261003ef9e4783e03b3acb529c864c07cbec
Signed-off-by: Sudheer Papothi <spapothi@codeaurora.org>
Unlock mutex for soundwire bank switch to process the
interrupt before clock pause and request for clock switch
to switch the soundwire clock source.
Change-Id: Idea4306a0e326864431e7cf956044383bf1790db
Signed-off-by: Sudheer Papothi <spapothi@codeaurora.org>
Add inline keyword to stub functions to compile them
inline when the corresponding feature config is disabled.
Change-Id: I933d508fc0fd5c2ad8daa26be7d39eea2a3434b9
Signed-off-by: Karthikeyan Mani <kmani@codeaurora.org>
Add driver to perform WCD SPI bus arbitration between two
masters. The two masters could reside on two different
processors and QMI is used to arbitrate the bus access.
This driver also exposes character driver interface to
userspace to indicate use case start/stop, etc.
Change-Id: I4f6fe6bb0bca524f10a34cf89149c6b2055b00e1
Signed-off-by: Bhalchandra Gajare <gajare@codeaurora.org>
Update symbolic link for internal.h, core.h and pinctrl-utils.h for kona.
Change-Id: I3bb585700a531e97a0b1b163b191105628f3d22c
Signed-off-by: Meng Wang <mengw@codeaurora.org>
Different platforms have different configuration for soundwire
ports. Add support to get the port configuration information
from the machine driver.
Change-Id: If2c006c4d4a43e2a8dc67c076f6d1c0f36eae16b
Signed-off-by: Sudheer Papothi <spapothi@codeaurora.org>
Add soundwire API to wakeup soundwire master and slave devices.
These APIs will be used by slave driver to vote and unvote for
master wakeup, when it requires master for register access
operations. Master will be aware of the slave usage with the
vote for device wakeup.
Change-Id: Ifa93f35ab2cffba778cd2fd9a2461e5a58445b75
Signed-off-by: Sudheer Papothi <spapothi@codeaurora.org>
Signed-off-by: Ramprasad Katkam <katkam@codeaurora.org>
Switch audio drivers to SPDX identifier on msm-4.19.
Change-Id: Ic3f0230a516db251b8d81e8a7e73dbc04d66fe1b
Signed-off-by: Meng Wang <mengw@codeaurora.org>
Add changes to register hardware wake up interrupt
from soundwire data line or ipc wake up interrupt
from LPASS.
Change-Id: Ibe4277db79aa62f34e9b325ae656b3f3fa7a2bcb
Signed-off-by: Aditya Bavanari <abavanar@codeaurora.org>
Modify snd_event stub functions prototype as static inline
to make sure that there are no multiple definition errors
in the case of static compilation.
Change-Id: I0848be946b332df22c045b8e5fed4c39b7ee0fda
Signed-off-by: Vidyakumar Athota <vathota@codeaurora.org>
Soundwire slave interrupt is only edge type, so any pending slave
side interrupts could not cause a new slave interrupt, if
they are triggered before clearing of existing interrupts.
Recursively trigger slave irq until there are no pending slave
interrupts to handle this issue.
Change-Id: I254f2467f09172490796114b48f1f0feb604ad17
Signed-off-by: Ramprasad Katkam <katkam@codeaurora.org>
Add changes to recover audio during SSR and PDR
in swr master controller driver.
Change-Id: Ibe3ae097b5f9d59b135d861c5f50f6bbc1c05af6
Signed-off-by: Rohit kumar <rohitkr@codeaurora.org>
Signed-off-by: Laxminath Kasam <lkasam@codeaurora.org>
For MCLK frequency switching to 11.2896 for native
playback support, frameshape also needs to be changed
accordingly. Add changes to support frameshape switch
based on mclk frequency for given master.
Change-Id: I0c4dd69b743f83b45eeed73f27ad10e878b9244b
Signed-off-by: Laxminath Kasam <lkasam@codeaurora.org>
Add support for SND event framework for helping with
notifications among different audio modules/drivers.
The SND event framework functions with a master/client
mechanism, where each client and the master register
with the framework, and then notifies its own status
(UP/DOWN). Each master will share a list of clients it
is interested in, and once all the clients are registered
and notified UP, the framework's state will be UP. On the
other hand, as and when any one of the client, or the master
reports its state as DOWN while the framework is UP, the
framework state would be changed to DOWN, and all clients
and the master would be let know about the change.
Change-Id: Ief6f26c5d5626c29246472ad71c247d71ee9e92f
Signed-off-by: Banajit Goswami <bgoswami@codeaurora.org>
Add wcd937x swr slave and codec driver.
This adds only basic support for codec registration.
Change-Id: I87519a234f14d34a019c8f66652b7224759e639c
Signed-off-by: Rohit kumar <rohitkr@codeaurora.org>
Interrupts will be handled by slave driver. This
needs slave pointer to store virtual interrupt and
pass it as a parameter to handle_nested_irq.
Change-Id: I356102a04b4fda7e5863f809cd848d7a82b82f36
Signed-off-by: Vatsal Bucha <vbucha@codeaurora.org>
soundwire bus driver changes to support new soundwire
master driver for Talos/vipertooth.
Change-Id: I70e52a72edd80abc72ccb99b29b1a642debec257
Signed-off-by: Ramprasad Katkam <katkam@codeaurora.org>
update softlink for internal.h, core.h and pinctrl-utils.h for sdm855
Change-Id: I3e92e8da1ab1bbfce7fbb92c6997af22777925dc
Signed-off-by: Meng Wang <mwang@codeaurora.org>
Switch to DLKM for all audio kernel modules.
Change-Id: I6a96023a21f655f873531af9ace81f2b01eb0f58
Signed-off-by: Laxminath Kasam <lkasam@codeaurora.org>
Add dummy function for swrm_wcd_notify to avoid
compilation errors when configuration options
'CONFIG_SOUNDWIRE' and 'CONFIG_SOUNDWIRE_WCD_CTRL'
are not selected for a target.
Change-Id: Ie12d2df8777934494f0f8607d846e2d1ec49f2a6
Signed-off-by: Xiaoyu Ye <benyxy@codeaurora.org>