Commit Graph

1410 Commits

Author SHA1 Message Date
Liam Girdwood 36166d2c23
Merge pull request #435 from akloniex/debugability
debugability: optimization: change declaration of buffer allocation on stack
2018-09-28 15:17:10 +01:00
Tomasz Lauda 04ad28136d arch: remove debug write from xtos
Removes debug write from low lvl irq dispatcher in xtos.
It overwrites our FW status in memory window.

Signed-off-by: Tomasz Lauda <tomasz.lauda@linux.intel.com>
2018-09-28 16:15:47 +02:00
Tomasz Lauda e55d5be5ef memory: apl: extend system heap
Extends system heap for core 0 to match other platforms.
Needed as total size of objects allocated on system heap
constantly changes and causes out of memory during slave
core enablement.

Signed-off-by: Tomasz Lauda <tomasz.lauda@linux.intel.com>
2018-09-28 16:09:05 +02:00
ArturX Kloniecki dc74c6cb34 debugability: optimization: change declaration of buffer allocation on stack
Due to compiler inability to determine compile-time constant value
of a variable, that was used to determine buffer array size,
compiler dynamically allocated memory on stack, which is far from optimal.

Signed-off-by: ArturX Kloniecki <arturx.kloniecki@linux.intel.com>
2018-09-28 15:17:40 +02:00
Tomasz Lauda 547824b54e ipc: fix position notifications (overwritten by merge)
Fixes notification data for position and xrun notifications.
Data sent to host was invalid.

Signed-off-by: Tomasz Lauda <tomasz.lauda@linux.intel.com>
2018-09-28 14:37:34 +02:00
Marcin Maka a6c8c25438 dma: simple i/f to control flow between platform and lib
Less globals.
Path to dynamic dma discovery enabled on platforms that support it.
Avoid linker issues as platform lib still keeps refs to dma
array once probing is deferred (patch is coming).

Signed-off-by: Marcin Maka <marcin.maka@linux.intel.com>
2018-09-28 13:07:18 +02:00
Liam Girdwood 996335743d
Merge pull request #434 from singalsu/eq_fir_cleanup_init_cache_proposal
EQ FIR: Updates for component initialization and cache functions
2018-09-28 11:54:35 +01:00
Liam Girdwood 44c6402cb4
Merge pull request #419 from bkokoszx/debugability-avoid-null-dereference
debugability: avoid potential nullpointer dereference
2018-09-28 10:04:49 +01:00
Seppo Ingalsuo 7a0d5f6246 EQ FIR: Updates for component initialization and cache functions
This patch delays FIR initialization until prepare() to avoid unnecessary
initialization for not final channels amount when in idle. It avoids
a number of malloc and free operations. The FIR delaylines allocation
is brought easier visible via addition for FIR delay address and size
pointers to component data. There's no more need to look it up from inside
of FIR channel instances.

The FIR channel bypass feature is now supported with assign of response
number -1 into channel similarly as in IIR. The same change is done
for generic C and optimized FIR cores.

The cache invalidate functions are cleaned up to perform the operation
into single allocated buffer instead of multiple.

FIR reconfigure during playback is prevented due to still incomplete
implementation for runtime changes.

Signed-off-by: Seppo Ingalsuo <seppo.ingalsuo@linux.intel.com>
2018-09-28 11:51:52 +03:00
Liam Girdwood 299ccbce58
Merge pull request #430 from tlauda/topic/fix_host_free
host: don't free empty buffer list
2018-09-27 16:51:14 +01:00
Tomasz Lauda 3a9652d839 host: don't free empty buffer list
Don't free empty buffer list on host component free.

Signed-off-by: Tomasz Lauda <tomasz.lauda@linux.intel.com>
2018-09-27 17:33:39 +02:00
ArturX Kloniecki f0ffa5e4cc debugability: avoid potential nullpointer dereference
Signed-off-by: ArturX Kloniecki <arturx.kloniecki@linux.intel.com>
2018-09-27 14:04:15 +02:00
Liam Girdwood 81e8a33b58
Merge pull request #429 from tlauda/topic/ut_fix_includes
ut: include missing headers
2018-09-27 11:15:40 +01:00
Tomasz Lauda 3d5958f78b ut: include missing headers
Includes missing headers.

Signed-off-by: Tomasz Lauda <tomasz.lauda@linux.intel.com>
2018-09-27 11:39:09 +02:00
Liam Girdwood 803b4b3f23
Merge pull request #423 from xiulipan/panicinfo
Add panic info into panic dump and fix some issues to make code build
2018-09-27 08:37:59 +01:00
Liam Girdwood e3108d653f work: Add platform workq default timeout for missing platforms.
Fixes build on missing byt, hsw, cnl.

Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com>
2018-09-27 08:23:03 +01:00
Liam Girdwood debe638c97
Merge pull request #424 from xiulipan/bytfix
byt: enlarge system heap size
2018-09-26 15:55:25 +01:00
Liam Girdwood 1b45cdf81a
Merge pull request #421 from tlauda/topic/workq_shared
work: shared work queue implementation
2018-09-26 15:12:34 +01:00
Pan Xiuli a0b169d582 byt: enlarge system heap size
With some modification in memory alloction, system heap used is enlarged
from 0x16fc to 0x2fcc.

Modify the system heap size to 0xe000 to align with other platforms.

close #274

Signed-off-by: Pan Xiuli <xiuli.pan@linux.intel.com>
2018-09-26 22:09:57 +08:00
Liam Girdwood adee39984b host: fix build again...
Missing platform clock. Now added.

Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com>
2018-09-26 14:52:03 +01:00
Pan Xiuli f3fc87aca2 panic: add filename and line number into panic info
Add filename and line number of the panic call into the panic info. Then
dump this info to host.

Signed-off-by: Pan Xiuli <xiuli.pan@linux.intel.com>
2018-09-26 21:11:17 +08:00
Pan Xiuli ed2ed1e877 uapi: ipc: add sof_ipc_panic_info
Use sof_ipc_panic_info to store panic info inclueded filename and line
number.

Signed-off-by: Pan Xiuli <xiuli.pan@linux.intel.com>
2018-09-26 21:11:17 +08:00
Pan Xiuli aee5702bcb platform: fix build warning
platform_panic is defined in platform/platform.h
empty define in sof/platform.h is no use

Signed-off-by: Pan Xiuli <xiuli.pan@linux.intel.com>
2018-09-26 21:11:17 +08:00
Pan Xiuli fda777c6f9 pm: add header fix build
Signed-off-by: Pan Xiuli <xiuli.pan@linux.intel.com>
2018-09-26 21:10:40 +08:00
Pan Xiuli da2f2958a1 agent: add header for timer usage
Signed-off-by: Pan Xiuli <xiuli.pan@linux.intel.com>
2018-09-26 21:10:40 +08:00
Pan Xiuli 34312c0839 clk: add missing header
clk will use timer function, add timer.h include for it.

Signed-off-by: Pan Xiuli <xiuli.pan@linux.intel.com>
2018-09-26 21:10:40 +08:00
Pan Xiuli a848c5c520 alloc: fix some build issues in alloc
Include dma.h in alloc.h will cause some error, remove the unneeded
dma.h and add some need header after remove it.
Also move some helper function into alloc.c to avoid some warnings.

Signed-off-by: Pan Xiuli <xiuli.pan@linux.intel.com>
2018-09-26 21:10:40 +08:00
Pan Xiuli c59d165f4f panic: store register PS and dump it
The register PS will always be changed due to the IRQ disable.
Store the old PS and dump that value.

Signed-off-by: Pan Xiuli <xiuli.pan@linux.intel.com>
2018-09-26 21:10:40 +08:00
Liam Girdwood 2027686f91
Merge pull request #420 from tlauda/topic/extend_text_size
memory: apl: increased SOF_TEXT_SIZE
2018-09-26 14:07:58 +01:00
Liam Girdwood b6499f5494
Merge pull request #418 from bkokoszx/debugability
debugability: rimage: extract .static_log_entries from elf
2018-09-26 14:00:02 +01:00
Liam Girdwood b1417f9537
Merge pull request #417 from tlauda/topic/comp_cmd_core
ipc: add support for comp cmd on slave cores
2018-09-26 13:58:11 +01:00
Tomasz Lauda fa0d4eda06 memory: apl: increased SOF_TEXT_SIZE
Fixes xcc building errors by increasing SOF_TEXT_SIZE.

Signed-off-by: Tomasz Lauda <tomasz.lauda@linux.intel.com>
2018-09-26 14:44:07 +02:00
Liam Girdwood 10b9f6b229
Merge pull request #411 from RanderWang/byt-master
Refine wait functions
2018-09-26 13:43:54 +01:00
Tomasz Lauda aaf354fc8d ipc: add support for comp cmd on slave cores
Adds support for executing component command
on pipelines executed on slave cores.

Signed-off-by: Tomasz Lauda <tomasz.lauda@linux.intel.com>
2018-09-26 14:42:49 +02:00
Tomasz Lauda 119273d6ef work: shared work queue implementation
Implements shared work queue across multiple cores:
- Work queue with 1 ms tick (will be configurable via IPC).
- Work queue shared across cores based on the same timer.
- Work queue enablement based on the number of active tasks.

Signed-off-by: Tomasz Lauda <tomasz.lauda@linux.intel.com>
2018-09-26 14:38:53 +02:00
Liam Girdwood f9d1168845
Merge pull request #361 from singalsu/eq_iir_fix_reconfigure_proposal
EQ IIR: Prevent reconfigure during playback and add traces
2018-09-26 12:32:58 +01:00
Liam Girdwood 7cbc7ea878
Merge pull request #415 from xiulipan/hostbuild
Enable travis host build
2018-09-26 12:32:24 +01:00
Liam Girdwood 70068a1270
Merge pull request #358 from juimonen/eq_test
EQ: Update IPC to deliver parameters in component creation
2018-09-26 12:07:34 +01:00
Liam Girdwood cb0644c450
Merge pull request #398 from xiulipan/allocdbgfix
Add alloc debug support
2018-09-26 12:06:21 +01:00
Rander Wang 5d4cb92310 byt: call poll_for_register_delay to wait register idle
Signed-off-by: Rander Wang <rander.wang@linux.intel.com>
2018-09-26 16:28:04 +08:00
Rander Wang a5963cf740 wait: use correct clock source
ssp clock is used in wait_delay, so ssp clock should be used
in the caller function

Signed-off-by: Rander Wang <rander.wang@linux.intel.com>
2018-09-26 16:27:57 +08:00
Seppo Ingalsuo 590044522f EQ IIR: Prevent reconfigure during playback and add traces
This patch prevents the not supported reconfiguration during playback or
capture. The request is not returned as error because then the kernel
driver will automatically apply the binary command in next idle and the
new response is configured and activated.

Some traces are added to help debugging the driver. The configuration
size is traced and and trace code "eis" is added if the received
configuration has zero length.

Signed-off-by: Seppo Ingalsuo <seppo.ingalsuo@linux.intel.com>
2018-09-26 11:15:50 +03:00
ArturX Kloniecki 4e5fa7723b debugability: rimage: extract .static_log_entries from elf
.static_log_entries section is extracted to logs dictionary
to remove xtensa toolchain dependency from logs parser.

Signed-off-by: ArturX Kloniecki <arturx.kloniecki@linux.intel.com>
2018-09-26 08:05:03 +02:00
Jaska Uimonen 8813726e2c EQ: Update IPC to deliver parameters in component creation
Update iir and fir to get parameters at the creation time from ipc
message. Parameters are originally sent from user space as part
of the topology.

Also update ipc.h with data members for iir and fir struct.

Signed-off-by: Jaska Uimonen <jaska.uimonen@intel.com>
2018-09-26 08:26:52 +03:00
Pan Xiuli 504ff64cc1 alloc: add a error log if pointer not aligned
If a wrong pointer is freed, we may have some memory issues.
Report a error log if pointer is not aligned to the block.

Signed-off-by: Pan Xiuli <xiuli.pan@linux.intel.com>
2018-09-26 11:46:12 +08:00
Liam Girdwood 64ee297e5e ci: travis: Add host build to travis.
Make sure we build for host as part of CI.

Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com>
2018-09-26 11:34:54 +08:00
Pan Xiuli 5a2c6bae76 ci: travis: add git tag
Travis CI will checkout to commit and no tag is there. Add a tag in the
travis CI script.

Signed-off-by: Pan Xiuli <xiuli.pan@linux.intel.com>
2018-09-26 11:34:54 +08:00
Pan Xiuli eb6e9a6a2c scripts: add -l option for host-build-all
Enable host lib install into local folder.

Signed-off-by: Pan Xiuli <xiuli.pan@linux.intel.com>
2018-09-26 11:31:13 +08:00
Ranjani Sridharan 81eae8886a ipc: set flag to disable memory banks before entering D3
This could potentially lead to power savings when the system
is suspended.

Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
2018-09-25 20:44:33 +01:00
Liam Girdwood 2460b01627
Merge pull request #414 from tlauda/topic/slave_cores_vecbase
arch: fix level 1 interrupts handling by slave cores
2018-09-25 20:43:06 +01:00