Pan Xiuli and Mark Brown
a9a9cbf081
ASoC: SOF: make sof_ipc_cc_version to fixed length
...
Align struct sof_ipc_cc_version to firmware definition in SOF ABI 3.15.0.
The struct definition was changed due to errors in FW build.
The Cadence XCC compiler produces incorrect linkage section sizes, when a
variable length array is used in the compiler version struct. The firmware
definition was changed to a fixed 32 byte compiler description string.
This length covers all released firmware binaries and thus only a minor
ABI change is needed.
As the same structure is used in IPC messages between driver and firmware,
the kernel needs to be aligned to firmware change.
Signed-off-by: Pan Xiuli <xiuli.pan@linux.intel.com >
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com >
Reviewed-by: Kai Vehmanen <kai.vehmanen@linux.intel.com >
Link: https://lore.kernel.org/r/20200415202816.934-15-pierre-louis.bossart@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org >
2020-04-16 00:23:10 +01:00
Pan Xiuli and Mark Brown
60829341aa
ASoC: SOF: change type char to uint8_t in topology.h
...
Use uint8_t to replace char in packed ABI structs
to have fixed length for struct.
Signed-off-by: Pan Xiuli <xiuli.pan@linux.intel.com >
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com >
Reviewed-by: Kai Vehmanen <kai.vehmanen@linux.intel.com >
Link: https://lore.kernel.org/r/20200415202816.934-14-pierre-louis.bossart@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org >
2020-04-16 00:23:09 +01:00
Pan Xiuli and Mark Brown
f480f804f2
ASoC: SOF: change type char to uint8_t in trace.h
...
Use uint8_t to replace char in packed ABI structs
to have fixed length for struct.
Signed-off-by: Pan Xiuli <xiuli.pan@linux.intel.com >
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com >
Reviewed-by: Kai Vehmanen <kai.vehmanen@linux.intel.com >
Link: https://lore.kernel.org/r/20200415202816.934-13-pierre-louis.bossart@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org >
2020-04-16 00:23:08 +01:00
Pan Xiuli and Mark Brown
e622448445
ASoC: SOF: change type char to uint8_t in info.h
...
Use uint8_t to replace char in packed ABI structs
to have fixed length for struct.
Signed-off-by: Pan Xiuli <xiuli.pan@linux.intel.com >
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com >
Reviewed-by: Kai Vehmanen <kai.vehmanen@linux.intel.com >
Link: https://lore.kernel.org/r/20200415202816.934-12-pierre-louis.bossart@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org >
2020-04-16 00:23:07 +01:00
Pan Xiuli and Mark Brown
2014185eba
ASoC: SOF: add debug ABI version
...
Add new debug ABI version to be increased when changing user space debug
interfaces while the the main FW ABI is not affected.
The abi_dbg_version share same definition with SOF_ABI_VER
This change main ABI to 3.14.0
Signed-off-by: Pan Xiuli <xiuli.pan@linux.intel.com >
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com >
Reviewed-by: Kai Vehmanen <kai.vehmanen@linux.intel.com >
Link: https://lore.kernel.org/r/20200415202816.934-11-pierre-louis.bossart@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org >
2020-04-16 00:23:06 +01:00
Pan Xiuli and Mark Brown
786d651687
ASoC: SOF: add probe support extend data
...
Share how many injection probe DMAs and how many probe points
driver can request from FW.
injection_dmas_max 0 means injection is not supported
probe_points_max 0 means whole probes subsystem in FW is not enabled
and not compiled in.
ABI version change to 3.14.0
Signed-off-by: Pan Xiuli <xiuli.pan@linux.intel.com >
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com >
Reviewed-by: Kai Vehmanen <kai.vehmanen@linux.intel.com >
Reviewed-by: Guennadi Liakhovetski <guennadi.liakhovetski@linux.intel.com >
Link: https://lore.kernel.org/r/20200415202816.934-10-pierre-louis.bossart@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org >
2020-04-16 00:23:05 +01:00
Sebastiano Carlucci and Mark Brown
542adb2a46
ASoC: SOF: topology: Add support for DC Blocker
...
This commit adds the enumerations to support the dc blocker component
from SOF.
Signed-off-by: Sebastiano Carlucci <scarlucci@google.com >
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com >
Reviewed-by: Curtis Malainey <curtis@malainey.com >
Reviewed-by: Seppo Ingalsuo <seppo.ingalsuo@intel.com >
Reviewed-by: Kai Vehmanen <kai.vehmanen@linux.intel.com >
Link: https://lore.kernel.org/r/20200415202816.934-9-pierre-louis.bossart@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org >
2020-04-16 00:23:05 +01:00
Pierre-Louis Bossart and Mark Brown
f8e2501880
ASoC: SOF: IPC: dai-intel: move ALH declarations in header file
...
ALH was inserted in the wrong place during integration, add after DMIC
to mirror the file used by SOF firmware.
No functional change, just text move in the same file to better track
changes, if any.
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com >
Link: https://lore.kernel.org/r/20200325215027.28716-4-pierre-louis.bossart@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org >
2020-03-27 15:16:30 +00:00
Karol Trzcinski and Mark Brown
a6096f88a0
ASoC: SOF: Remove SOF_IPC_EXT_DMA_BUFFER
...
This enum code, and what's more important, related structures is
unused in whole source code, so it shouldn't be kept.
Signed-off-by: Karol Trzcinski <karolx.trzcinski@linux.intel.com >
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com >
Link: https://lore.kernel.org/r/20200312200622.24477-4-pierre-louis.bossart@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org >
2020-03-13 15:13:23 +00:00
Karol Trzcinski and Mark Brown
4ea2578525
ASoC: SOF: Make sof_ipc_ext_data enum more rigid
...
It's a part of ABI interface, so enum value shouldn't change
for example after removing some old enum code.
Signed-off-by: Karol Trzcinski <karolx.trzcinski@linux.intel.com >
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com >
Link: https://lore.kernel.org/r/20200312200622.24477-3-pierre-louis.bossart@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org >
2020-03-13 15:13:23 +00:00
Tomasz Lauda and Mark Brown
1a2289fdf6
ASoC: SOF: add core id to sof_ipc_comp
...
Adds core id to sof_ipc_comp. The intention of this change
is to inform FW on which core that particular component
should run. Right now core id is only passed when pipeline
is created, which is not flexible enough and doesn't allow
for FW to handle this the right way.
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com >
Signed-off-by: Tomasz Lauda <tomasz.lauda@linux.intel.com >
Link: https://lore.kernel.org/r/20200228231850.9226-5-pierre-louis.bossart@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org >
2020-03-02 14:13:50 +00:00
Cezary Rojewski and Mark Brown
f3b433e469
ASoC: SOF: Implement Probe IPC API
...
Add all required types and methods to support each and every request
that driver could sent to firmware. Probe is one of SOF firmware
features which allows for data extraction and injection directly from
or to DMA stream.
Exposes eight IPCs:
- addition and removal of injection DMAs
- addition and removal of probe points
- info retrieval of injection DMAs and probe points
- probe initialization and cleanup
Signed-off-by: Cezary Rojewski <cezary.rojewski@intel.com >
Acked-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com >
Link: https://lore.kernel.org/r/20200218143924.10565-5-cezary.rojewski@intel.com
Signed-off-by: Mark Brown <broonie@kernel.org >
2020-02-18 21:52:06 +00:00
Guido Roncarolo and Mark Brown
9c1d4cf6ac
ASoC: SOF: imx: Describe SAI parameters to be sent to DSP
...
Introduce sof_ipc_dai_sai_params to keep information that
we get from topology and we send to DSP FW.
For the moment it is identical to ESAI one but it will
evolve shortly independently
Signed-off-by: Guido Roncarolo <guido.roncarolo@nxp.com >
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com >
Link: https://lore.kernel.org/r/20191218002616.7652-8-pierre-louis.bossart@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org >
2019-12-18 19:54:07 +00:00
Karol Trzcinski and Mark Brown
e8b7cab8ce
ASoC: SOF: define struct with compiler name and version
...
Add compiler information structure sof_ipc_cc_version.
Add new enum value in sof_ipc_ext_data for new structure.
This struct will be used to show more information about firmware
in host system. It will be helpful during debugging.
Signed-off-by: Karol Trzcinski <karolx.trzcinski@linux.intel.com >
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com >
Link: https://lore.kernel.org/r/20191218002616.7652-3-pierre-louis.bossart@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org >
2019-12-18 19:52:39 +00:00
Slawomir Blauciak and Mark Brown
b7c5986489
ASoC: SOF: ipc: channel map structures
...
This change adds stream map and channel map structures
used for channel re-routing and stream aggregation.
Signed-off-by: Slawomir Blauciak <slawomir.blauciak@linux.intel.com >
Signed-off-by: Kai Vehmanen <kai.vehmanen@linux.intel.com >
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com >
Link: https://lore.kernel.org/r/20191210004854.16845-5-pierre-louis.bossart@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org >
2019-12-10 13:13:30 +00:00
Seppo Ingalsuo and Mark Brown
433363e779
ASoC: SOF: Add asynchronous sample rate converter topology support
...
This patch adds into SOF topology the handling of ASRC DAPM type,
adds the tokens to configure the ASRC, and implement component IPC
into the driver.
Signed-off-by: Seppo Ingalsuo <seppo.ingalsuo@linux.intel.com >
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com >
Link: https://lore.kernel.org/r/20191210004854.16845-2-pierre-louis.bossart@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org >
2019-12-10 13:13:11 +00:00
Keyon Jie and Mark Brown
10992004e1
ASoC: SOF: ipc: introduce message for DSP power gating
...
Add new ipc messages which will be sent from driver to FW, to ask FW to
enter specific power saving state.
Signed-off-by: Keyon Jie <yang.jie@linux.intel.com >
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com >
Link: https://lore.kernel.org/r/20191025224122.7718-14-pierre-louis.bossart@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org >
2019-10-28 14:43:31 +00:00
Kuninori Morimoto and Mark Brown
0304821762
ASoC: sof: include types.h at header.h
...
Content-Transfer-Encoding: 8bit
Without <types.h> we will get these error
linux/include/sound/sof/header.h:125:2: error: unknown type name ‘uint32_t’uint32_t size;
linux/include/sound/sof/header.h:136:2: error: unknown type name ‘uint32_t’uint32_t size;
linux/include/sound/sof/header.h:137:2: error: unknown type name ‘uint32_t’uint32_t cmd;
...
linux/include/sound/sof/dai-imx.h:18:2: error: unknown type name ‘uint16_t’uint16_t reserved1;
linux/include/sound/sof/dai-imx.h:30:2: error: unknown type name ‘uint16_t’uint16_t tdm_slot_width;
linux/include/sound/sof/dai-imx.h:31:2: error: unknown type name ‘uint16_t’uint16_t reserved2;
Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com >
Link: https://lore.kernel.org/r/87a7a24l7r.wl-kuninori.morimoto.gx@renesas.com
Signed-off-by: Mark Brown <broonie@kernel.org >
2019-10-15 10:13:11 +01:00
Daniel Baluta and Mark Brown
b4be427683
ASoC: SOF: imx: Describe ESAI parameters to be sent to DSP
...
Introduce sof_ipc_dai_esai_params to keep information that
we get from topology and we send to DSP FW.
Also bump the ABI minor to reflect the changes on DSP FW.
Signed-off-by: Daniel Baluta <daniel.baluta@nxp.com >
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com >
Link: https://lore.kernel.org/r/20191008164443.1358-6-pierre-louis.bossart@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org >
2019-10-10 15:15:44 +01:00
Marcin Rajwa and Mark Brown
e3ebfd0ab5
ASoC: SOF: ipc: introduce no_stream_position in sof_ipc_stream_params struct
...
The host period bytes value needs to be passed to firmware.
However current implementation uses this field for different
purpose - to indicate whether FW should send stream position
to the host. Therefore this patch introduces another field
"no_stream_position", a boolean value aimed to store information
about position tracking. This way host_period_bytes preserves its
original value.
Signed-off-by: Marcin Rajwa <marcin.rajwa@linux.intel.com >
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com >
Link: https://lore.kernel.org/r/20190927200538.660-9-pierre-louis.bossart@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org >
2019-10-01 18:35:09 +01:00
Mark Brown
bb83178611
Merge branch 'asoc-5.4' into asoc-next
2019-09-09 14:55:20 +01:00
Bard liao and Mark Brown
8207a1c491
ASoC: SOF: rename SOUNDWIRE to ALH
...
Rename SOUNDWIRE to ALH.
Signed-off-by: Bard liao <yung-chuan.liao@linux.intel.com >
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com >
Link: https://lore.kernel.org/r/20190815192018.30570-3-pierre-louis.bossart@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org >
2019-08-16 13:13:21 +01:00
Daniel Baluta and Mark Brown
f59b16ef4c
ASoC: SOF: topology: Add dummy support for i.MX8 DAIs
...
Add dummy support for SAI/ESAI digital audio interface
IPs found on i.MX8 boards.
Signed-off-by: Daniel Baluta <daniel.baluta@nxp.com >
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com >
Link: https://lore.kernel.org/r/20190815192018.30570-2-pierre-louis.bossart@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org >
2019-08-16 13:13:02 +01:00
Pierre-Louis Bossart and Mark Brown
3a9477a06c
ASoC: SOF: ipc: add ALH parameters
...
The only configuration parameter is the ALH stream ID. No range
checking is done by the driver, the firmware should check that the
stream is valid for a specific hardware.
Bump the ABI Minor number to keep the alignment with SOF firmware
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com >
Link: https://lore.kernel.org/r/20190815155032.29181-3-pierre-louis.bossart@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org >
2019-08-15 17:55:02 +01:00
Masahiro Yamada and Greg Kroah-Hartman
dc3bf49ea3
treewide: remove SPDX "WITH Linux-syscall-note" from kernel-space headers again
...
The "WITH Linux-syscall-note" exception exists for headers exported to
user space. It is strange to add it to non-exported headers.
Commit 687a3e4d8e ("treewide: remove SPDX "WITH Linux-syscall-note"
from kernel-space headers") did cleanups some months ago, but it looks
like we need to do this periodically.
This patch was generated by the following script:
git grep -l -e Linux-syscall-note \
-- :*.h :^arch/*/include/uapi/asm/*.h :^include/uapi/ :^tools |
while read file
do
sed -i -e 's/(\(GPL-[^[:space:]]*\) WITH Linux-syscall-note)/\1/g' \
-e 's/ WITH Linux-syscall-note//g' $file
done
I did not commit drivers/staging/android/uapi/ion.h . This header is
not currently exported, but somebody may plan to move it to include/uapi/
when the time comes. I am not sure. Anyway, it will be better to check
the license inconsistency in drivers/staging/android/uapi/.
Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com >
Reviewed-by: Thomas Gleixner <tglx@linutronix.de >
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org >
2019-07-25 11:05:10 +02:00