forked from thesofproject/sof
-
Notifications
You must be signed in to change notification settings - Fork 15
use system cache API #27
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
Merged
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Member
nashif
commented
Apr 19, 2023
- topology1: set lower priority for DMIC task in GOOGLE_RTC_AUDIO case
- Audio: Module adapter: Pass entire cdata to clients for all controls
- Audio: TDFB: Convert to module adapter
- Audio: TDFB: Fix a mistake in sound direction updates filtering
- topology: imx: Rearrange topologies based on platform
- topology: imx: Add topology file for i.MX8QM with wm8962 codec
- topology: imx: Combine topology files for i.MX8MP with different options
- topology: imx: Add topology file for i.MX8MP with wm8962 codec
- app: remove old cavs platforms
- platform: ace: register clock using core_kcps_adjust api
- topology2: io-gateway: Fix a typo
- topology2: Rename passthrough-capture-be
- topology2: Rename passthrough-playback.conf
- topology2: Rename passthrough-capture.conf
- topology2: copier: Make node_type mandatory
- topology2: Move common_definitions.conf
- imx: sai: enable transmitter to output MCLK
- audio: mixer: Fix inactive streams handling
- xtensa-build-zephyr.py: log ALL "evil" environment differences
- module_adapter: Propagate error from module specific callback
- numbers.sh: do not (re)define ROUND_DOWN() if ZEPHYR
- smart_amp_test: fix unbind implementation
- cadence: register module logs in Zephyr
- zephyr: use system cache API
When GOOGLE_RTC_AUDIO is applied, Speaker and DMIC pipeline tasks are scheduled in the same domain. The AEC function in GOOGLE_RTC_AUDIO has the hard requirement for input sample synchronization between DMIC input and Echo reference (sourced from Speaker). At present, both pipelines are pri-0 so the task order in schedule list depends on which pipeline starts first. This commit sets DMIC as pri-1 when GOOGLE_RTC_AUDIO is applied to make sure that DMIC task will be always put after Speaker task, which guarantees the requirement for input sample synchronization. Signed-off-by: Pin-chih Lin <johnylin@google.com>
This patch unifies all the control types (bytes, enum, switch). Previously for binary control the fragment pointed to cdata->data[0].data while for other control types the cdata was passed via fragment. If fragment always points to cdata the module adapter client can reliably check the control type from cdata->cmd and handle other than binary control types. Since the client components with binary control pass the data to comp_data_blob_set() in data_blob.c the restore of pointer fragment to cdata->data[0].data can be done there. A check for SOF_CTRL_CMD_BINARY is added to comp_data_blob_set() and comp_data_blob_get_cmd() to avoid wrong usage of controls. With IPC4 in comp_data_blob_set() the use of struct sof_ipc_ctrl_data pointer step is not done but the fragment is treated as raw data payload without the header. The generic support for other than binary control will be solved later for IPC4. Signed-off-by: Seppo Ingalsuo <seppo.ingalsuo@linux.intel.com>
This patch converts the time domain fixed beamformer (TDFB) into module adapter API. Signed-off-by: Seppo Ingalsuo <seppo.ingalsuo@linux.intel.com>
Check for four least significant bits set means that four previous processes periods need to be high enough signal level over ambient. The value 0x15 is an obvious mistake and does not filter properly control events. The purpose of the filter is to prevent too frequent or unreliable control updates. Signed-off-by: Seppo Ingalsuo <seppo.ingalsuo@linux.intel.com>
Rearrange topologies based on platform type: imx8, imx8mp and imx8ulp. Signed-off-by: Iuliana Prodan <iuliana.prodan@nxp.com>
Add new topology file for i.MX8QM with wm8962 codec. While here, use CODEC variable to differentiate between wm8960 and wm8962. Signed-off-by: Iuliana Prodan <iuliana.prodan@nxp.com>
Combine topology files for i.MX8MP with different codecs and rate, by using CODEC and RATE variables. Based on CODEC use the proper DAI_CONFIG. Signed-off-by: Iuliana Prodan <iuliana.prodan@nxp.com>
Add new topology file for i.MX8MP with wm8962 codec. Signed-off-by: Iuliana Prodan <iuliana.prodan@nxp.com>
Remove old platforms from zephyr testcase file: - intel_adsp_cavs15 - intel_adsp_cavs18 - intel_adsp_cavs20 Signed-off-by: Anas Nashif <anas.nashif@intel.com>
core_kcps_adjust is an API to request clock changes indirectly, by registering KCPS per core. It should be common method for all clock change requests, to keep KCPS on track. Currently, in the platform_init, maximum clock is reqeuested. This is a workaround for missing CPC management. KCPS should be registered together with clock change. Even though FW does not request KCPS at any place (feature not ready) so far, OED driver sends these requests via LargeConfigSet. It is required to have valid initial value of KCPS in cpu-clk-manager. Signed-off-by: Przemyslaw Blaszkowski <przemyslaw.blaszkowski@intel.com>
Fix the typo in the pipeline name Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
Rename it to io-gateway-capture.conf to align with the documentation. Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
Rename it to host-gateway-playback.conf to align with the documentation. Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
Rename it to host-gateway-capture to align it with the documentation. Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
Introduce a new class for module-to-module copiers and make node_type mandatory for the copier class. Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
These are Intel-specific, so move them to the platform/intel folder Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
On i.MX8MP, the SAI MCLK is bound with TX enable bit. Therefore, in order to enable MCLK, we need to enable the transmitter. This fixes a "wm8962 2-001a: DC servo timed out" - a Linux Kernel error with wm8962 codec. Signed-off-by: Laurentiu Mihalcea <laurentiu.mihalcea@nxp.com> Signed-off-by: Iuliana Prodan <iuliana.prodan@nxp.com>
The previous patch 908876c introduced a bug where the wrong input buffer had the "consumed" field updated. This affected playing from _only_ the second input stream in weird ways (specifically, sound was slower and every other period I'd get a "no bytes to copy" message from the active host component). This patch fixes the indexing for that update. Fixes: 908876c "audio: mixer: Improve handling of inactive input streams" Signed-off-by: Paul Olaru <paul.olaru@nxp.com>
This is a typical example of why environment variables are (a sometimes necessary) evil: imagine you're trying to reproduce exactly the `west build` command run by xtensa-build-zephyr.py when building with the `xt-xcc` toolchain. So you would typically look at the logs, feel lucky that it shows the extra environment variables used and copy them: ``` XTENSA_TOOLCHAIN_PATH=/srv/home/jenkins/xcc/install/tools TOOLCHAIN_VER=RG-2017.8-linux XTENSA_SYSTEM=/home/jenkins/xcc/install/builds/RG-2017.8-linux/cavs... In dir: workspace/sof; running: west build ... ``` Except this won't work because there's one variable currently missing: `ZEPHYR_TOOLCHAIN_VARIANT`! Of course there could be more in the future. Fix this by leveraging the recent os.environ.copy() added by commit 8aab183 ("xtensa-build-zephyr: fix DEFAULT_TOOLCHAIN_VARIANT spill on next platf") compare it to the current os.environ and show the difference in a totally generic, non-hardcoded way. Signed-off-by: Marc Herbert <marc.herbert@intel.com>
When module_prepare() fails we need to return to calling module the exact specific error not just -EIO. There is no real use for Host AP to receive an error code that doesn't reflect the actual error. While at it, make the code more compact as suggested by Guennadi. Signed-off-by: Daniel Baluta <daniel.baluta@nxp.com>
Move the ROUND_DOWN() definition to the nearby #ifndef __ZEPHYR__ block. The previous `#ifndef ROUND_DOWN` logic depends on the #include order, so it fails sometimes. Fixes commit a6f8dae ("kpb: add micselection function") Fixes XCC compilation failure with ``` ./scripts/xtensa-build-zephyr.py mtl --cmake-args='-DEXTRA_CFLAGS=-Werror' - In file included from sof/src/audio/src/src_hifi4.c:22: zephyr/include/zephyr/sys/util.h:238:9: warning: 'ROUND_DOWN' macro redefined [-Wmacro-redefined] ^ sof/zephyr/../src/include/sof/math/numbers.h:33:9: note: previous definition is here ``` Signed-off-by: Marc Herbert <marc.herbert@intel.com>
Code in unbind is looking at wrong field for queue-id. This works some of the time, but in some cases leads to access to freed heap data and later to heap corruption. Link: thesofproject#7191 Signed-off-by: Kai Vehmanen <kai.vehmanen@linux.intel.com>
Use LOG_MODULE_REGISTER() to register cadence in the Zephyr logger framework. Signed-off-by: Piotr Makaruk <piotr.makaruk@intel.com>
Use zephyr cache APIs instead of xtensa specific ones. Signed-off-by: Anas Nashif <anas.nashif@intel.com>
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.