~canonical-hwe-team/hwe-next/+git/sof:amd-rn-nondts

Last commit made on 2022-05-05
Get this branch:
git clone -b amd-rn-nondts https://git.launchpad.net/~canonical-hwe-team/hwe-next/+git/sof

Branch merges

Branch information

Name:
amd-rn-nondts
Repository:
lp:~canonical-hwe-team/hwe-next/+git/sof

Recent commits

dac8754... by Pin-chih Lin <email address hidden>

perf_cnt: add the tracing of window-based average calculation

The average number of cpu cycles/ticks spent could be provided per 1024
scheduled tasks by the performance counter. It would be more accurate for
MCPS measurement than the peak number. Even so, the tracing macro will log
both of them to provide more insights.

This is enabled by CONFIG_PERFORMANCE_COUNTERS_RUN_AVERAGE, which depends
on CONFIG_PERFORMANCE_COUNTERS.

Signed-off-by: Pin-chih Lin <email address hidden>

dbb6307... by Pin-chih Lin <email address hidden>

component: fix comp_perf_info unsigned format

Use %u instead of %d in printf for uint32_t variable.

Signed-off-by: Pin-chih Lin <email address hidden>

bd4f0e1... by Guennadi Liakhovetski <email address hidden>

coherence: convert buffer and audio-stream APIs to use __sparse_cache

To properly use buffer-locking functions many buffer and
audio-stream API functions have to use the __sparse_cache annotation too.
Note, that we don't convert comp_update_buffer_consume() and
comp_update_buffer_produce() yet. They will be converted together
with all the buffer API users to also move buffer acquisition out of
those functions into the caller scope.

Signed-off-by: Guennadi Liakhovetski <email address hidden>

559266e... by Guennadi Liakhovetski <email address hidden>

common: add an attribute-preserving version of container_of()

With some compiler versions container_of() loses any type attributes
which then leads to compilation issues. Add an attribute-preserving
version of the macro.

Signed-off-by: Guennadi Liakhovetski <email address hidden>

a85dbaf... by Guennadi Liakhovetski <email address hidden>

sparse: add __sparse_cache annotations to buffer locking functions

buffer_acquire() and buffer_release() convert between cached and
uncached addresses. Add the sparse __sparse_cache annotation to them to
track down any API misuses.

Signed-off-by: Guennadi Liakhovetski <email address hidden>

aba5f9a... by Guennadi Liakhovetski <email address hidden>

sparse: use __sparse_cache for cache-uncache conversion functions

cache_to_uncache() and uncache_to_cache() functions take a cached
memory alias or return one respectively. Add the __sparse_cache annotation
to them.

Signed-off-by: Guennadi Liakhovetski <email address hidden>

e7da88d... by Guennadi Liakhovetski <email address hidden>

coherent: use sparse annotations

Add the '__sparse_cache' annotation to coherent API functions.

Signed-off-by: Guennadi Liakhovetski <email address hidden>

8f7f94a... by Guennadi Liakhovetski <email address hidden>

sparse: make dcache_{writeback,invalidate} functions use __sparse_cache

Data-cache flushing functions can only be used on cached aliases.
Using them on uncached aliases generates exceptions. At the moment we
have to cast all uses of those functions to use the __sparse_cache sparse
attribute. We should convert respective variables to the correct tyoe
one by one.

Signed-off-by: Guennadi Liakhovetski <email address hidden>

5dffea9... by Guennadi Liakhovetski <email address hidden>

sparse: add attributes for cached memory

We want to separate access to memory via cached and uncached aliases.
To enforce this use sparse's address-space attributes.

Signed-off-by: Guennadi Liakhovetski <email address hidden>

6016286... by Guennadi Liakhovetski <email address hidden>

sparse: fix all errors

Fix errors, reported by sparse. Some of them really seem to be sparse
limitations, since they don't show up in normal builds, e.g. the
missing __GLIBC_USE definition or some __builtin_* support.

Signed-off-by: Guennadi Liakhovetski <email address hidden>