Commit Graph

1622 Commits

Author SHA1 Message Date
Pan Xiuli 173f4d21d0 scripts: add no riamge build options for build all script
Add -lr to let xtensa-build-all.sh do not build rimage.

Signed-off-by: Pan Xiuli <xiuli.pan@linux.intel.com>
2018-10-09 17:41:15 +08:00
Pan Xiuli 96aa24c2d9 scripts: add rimage build scripts local install
Add local install for rimage-build.sh

Signed-off-by: Pan Xiuli <xiuli.pan@linux.intel.com>
2018-10-09 17:39:47 +08:00
Seppo Ingalsuo 323c55ae8d EQ: Check in new() coefficient blob size before allocating dev and cd
This patch simplifies new() function code and avoids unnecessary
allocation of component device and data resources if the the coefficient
blob is rejected due to size. The change is identical for FIR and IIR
EQs.

Signed-off-by: Seppo Ingalsuo <seppo.ingalsuo@linux.intel.com>
2018-10-09 11:36:46 +03:00
Marcin Maka 3f3fdf7894 plat: apl: clocks gated back on topology free
Signed-off-by: Marcin Maka <marcin.maka@linux.intel.com>
2018-10-08 22:18:41 +02:00
ArturX Kloniecki 62ad4b83e9 abi: Redefine SOF_ABI_VERSION to allow for backward compatibility
SOF_ABI_VERSION macro now performs bitshift and addition to compose
final version number out of SOF_ABI_MAJOR, SOF_ABI_MINOR and SOF_ABI_MICRO
components.
Also added SOF_ABI_VERSION_INCOMPATIBLE macro to allow for easier comparison
between FW ABI version and client applications.

Signed-off-by: ArturX Kloniecki <arturx.kloniecki@linux.intel.com>
2018-10-08 19:20:04 +02:00
Liam Girdwood ccaff5c87e
Merge pull request #458 from thesofproject/topic/sgl-array
dma: SG elem lists replaced with arrays
2018-10-08 16:38:10 +01:00
Liam Girdwood ce7f99be29
Merge pull request #466 from tlauda/topic/smp-notifier
notifier: add notifier to core_context
2018-10-08 16:10:33 +01:00
Liam Girdwood b180af8ba7
Merge pull request #452 from mmaka1/clk-gating
plat: apl: clock gating adjusted for dai, dma, and cores
2018-10-08 16:06:26 +01:00
Marcin Maka 1ba7b5e0af plat: apl: clock gating adjusted for dai, dma, and cores
dai clocks ungated and resources allocated on the first use.
dma clocks ungated and resources allocated on the first use.
cores clocks gated in idle.

Signed-off-by: Marcin Maka <marcin.maka@linux.intel.com>
2018-10-08 15:03:45 +02:00
Marcin Maka d5eaa8fcc7 dma: SG elem lists replaced with arrays
Multiple alloctions of SG elements linked as a list
replaced with single allocations of arrays.

- The code flows (esp. cleanup-on-error) are simplified,

- number of 64bytes chunk allocations reduced from 18 to 12 for
  example very basic topology, no increase in other areas
  (2-period sgls still fit),

- more efficient allocation for host page tables on legacy platforms;
  instead of going from a desc array to the list that is copied to
  another list, there is just a single allocation of array moved
  to the destination component.

Signed-off-by: Marcin Maka <marcin.maka@linux.intel.com>
2018-10-08 14:37:53 +02:00
Marcin Maka f42c6573ea tplg: result of the free function propagated
Signed-off-by: Marcin Maka <marcin.maka@linux.intel.com>
2018-10-08 14:21:18 +02:00
Tomasz Lauda bebfad8028 notifier: add notifier to core_context
Adds notifier to core_context, which is the first step
of multicore notifier implementation.

Signed-off-by: Tomasz Lauda <tomasz.lauda@linux.intel.com>
2018-10-08 12:12:08 +02:00
Liam Girdwood aeb18eefd9
Merge pull request #459 from tlauda/topic/timer-driven-scheduling
schedule: implement timer driven scheduling
2018-10-06 22:27:35 +01:00
Liam Girdwood ec4b726bd1
Merge pull request #462 from akloniex/debugability
logging: Move trace class definitions to uapi/logging.h
2018-10-05 21:34:07 +01:00
Tomasz Lauda b46af7b3db schedule: implement timer driven scheduling
Implements timer driven scheduling by processing
DW DMA data in tasks added to work queue instead
of registering for DW DMA interrupt. Data processing
by default will happen every 1 ms.

Signed-off-by: Tomasz Lauda <tomasz.lauda@linux.intel.com>
2018-10-05 15:32:18 +02:00
Seppo Ingalsuo 796596d896 Memory: Fix bug in previous commit that introduced 1k buffers
This patch fixes a regression caused by commit
b5308ee8e6. The HEAP_RUNTIME_SIZE
calculation equation macro missed this buffer totally.

The number of 1k buffers is also increased to four to reach size
that is multiple of 4096 like other buffer pools. Non-4096 size
seems to cause DSP panic.

Signed-off-by: Seppo Ingalsuo <seppo.ingalsuo@linux.intel.com>
2018-10-05 16:26:58 +03:00
Liam Girdwood 0e924219f2
Merge pull request #451 from singalsu/eq_fir_heap_rt_1k_proposal
EQ FIR: memory: Add trace error for alloc fail and add a 1024 size buffer
2018-10-04 15:15:40 +01:00
Liam Girdwood 629358cd18
Merge pull request #460 from tlauda/topic/smp-sys-alloc
alloc: change way of allocation core context for slave cores
2018-10-04 14:27:38 +01:00
ArturX Kloniecki f21b6bd064 logging: Move trace class definitions to uapi/logging.h
Move definitions into header that would be shared between SOF and SOFT.
Paste SOF_ABI_VERSION into FW ready message.
Also remove unused code from uapi/logging.h.

Signed-off-by: ArturX Kloniecki <arturx.kloniecki@linux.intel.com>
2018-10-04 14:39:36 +02:00
Seppo Ingalsuo b5308ee8e6 EQ FIR: memory: Add trace error for alloc fail and add a 1024 size buffer
This patch adds a single 1024 bytes buffer into heap for e.g. rzalloc()
usage. The FIR EQ code didn't trace the allocation failure so it's added
to see better if this happens. The 1k allocation for PCM samples delay
line is quite typical since a 32 bit 100 tap stereo FIR will need 800
bytes.

Signed-off-by: Seppo Ingalsuo <seppo.ingalsuo@linux.intel.com>
2018-10-04 15:11:17 +03:00
Liam Girdwood d467268657
Merge pull request #457 from tlauda/topic/workq-fix-tick
work: new calculation of next tick
2018-10-04 12:26:33 +01:00
Liam Girdwood c53bba881d
Merge pull request #456 from akloniex/debugability
logging: Add proper comments about trace_event macro usage
2018-10-04 12:26:03 +01:00
Tomasz Lauda b561eb8692 alloc: change way of allocation core context for slave cores
Now master core can allocate core context from the system
heap of slave core.

Signed-off-by: Tomasz Lauda <tomasz.lauda@linux.intel.com>
2018-10-04 13:04:29 +02:00
ArturX Kloniecki 6ec8bce836 logging: Add proper comments about trace_event macro usage
Reorganize definitions of macros to enhance visibility of trace_event()
macro. Add proper comment about it's usage.
Fill in missing definitions when TRACE is defined 0, to avoid compilation
issues.

Signed-off-by: ArturX Kloniecki <arturx.kloniecki@linux.intel.com>
2018-10-04 10:59:18 +02:00
Liam Girdwood 57744b8742
Merge pull request #453 from tlauda/topic/smp-waiti-fix
cpu: fix panic at core power down
2018-10-03 15:39:09 +01:00
Tomasz Lauda 95f66f9172 work: new calculation of next tick
Changes method of calculation next work queue tick.
Instead of taking actual time of last tick, lets use
time of requested tick. From my experiments, it can
take up to ~40 cycles from requested time
of interrupt until interrupt handler is executed.

Signed-off-by: Tomasz Lauda <tomasz.lauda@linux.intel.com>
2018-10-03 14:44:22 +02:00
Tomasz Lauda 62de7e97e0 cpu: fix panic at core power down
Fixes panic at core power down. Panic happened due to
the waiti check, where we expect waiti to be executed
on irq level 0 and cpu power down happens on idc task
irq level. This is OK, because core is going to be
reset anyway.

Signed-off-by: Tomasz Lauda <tomasz.lauda@linux.intel.com>
2018-10-03 14:22:55 +02:00
Liam Girdwood af2c4d5376
Merge pull request #450 from tlauda/topic/smp-ppl-fix-cache
pipeline: cache fixes for multicore processing
2018-10-03 13:12:52 +01:00
Tomasz Lauda f35c9d9c65 pipeline: cache fixes for multicore processing
Fixes cache issues with multicore processing of multiple pipelines:
- Changes pipeline_cache method as previous implementation
  could not work, especially for invalidation.
- Allocates dma and dai private data in uncached memory,
  because those resources are shared between different
  pipelines, so potentially also between different cores.

Signed-off-by: Tomasz Lauda <tomasz.lauda@linux.intel.com>
2018-10-02 12:47:58 +02:00
Liam Girdwood 7aa627a10a
Merge pull request #440 from mmaka1/dai-cleanup
dai: simple i/f to control flow between platform and lib
2018-10-02 10:19:22 +01:00
Marcin Maka 233805572b dai: hda: array size and initialization based on platform settings
Defined correct hda dai quantities for cavs plaforms.

Signed-off-by: Marcin Maka <marcin.maka@linux.intel.com>
2018-10-02 10:20:32 +02:00
Marcin Maka 1d6643ec0f dai: simple i/f to control flow between platform and lib
A mechanism similar to the one used for dma applied.
Dai initialization moved to separate unit from the main platform
code for cavs.
Optional dynamic discovery and initialization possible before
making available to other fw units via the lib hub.
SSP count cleaned up for cavs (important pre-work
for clock gating).

Signed-off-by: Marcin Maka <marcin.maka@linux.intel.com>
2018-10-01 22:15:44 +02:00
Liam Girdwood 531c9b54dd
Merge pull request #449 from thesofproject/revert-445-eq_fir_heap_rt_1k_proposal
Revert "EQ FIR: memory: Add trace error for alloc fail and add a 1024 size buffer"
2018-10-01 20:57:44 +01:00
Liam Girdwood 0b2e212c12
Revert "EQ FIR: memory: Add trace error for alloc fail and add a 1024 size buffer" 2018-10-01 20:56:32 +01:00
Liam Girdwood 6327ed5f17 hsw: memory: Add 4k size to HSW/BDW system heap
Needs the extra space to complete booting.

Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com>
2018-10-01 20:43:30 +01:00
Liam Girdwood 85f399aadb
Merge pull request #445 from singalsu/eq_fir_heap_rt_1k_proposal
EQ FIR: memory: Add trace error for alloc fail and add a 1024 size buffer
2018-10-01 20:42:01 +01:00
Liam Girdwood f574b71f55
Merge pull request #448 from tlauda/topic/smp-fix-ut
ut: fix tests on xtensa-smp
2018-10-01 20:39:02 +01:00
Liam Girdwood c4adc8700f
Merge pull request #442 from thesofproject/topic/suecreek
Add initial support for Intel S1000 aka Suecreek
2018-10-01 20:36:13 +01:00
Liam Girdwood eded228beb gitignore: ignore shared object .so files
Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com>
2018-10-01 20:09:58 +01:00
Liam Girdwood 41a61bcdc1 sue: Add build support for Sue Creek platform
Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com>
2018-10-01 20:09:58 +01:00
Liam Girdwood 36b85943a8 sue: dma: Add Sue Creek DMAC platform data.
Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com>
2018-10-01 20:09:58 +01:00
Liam Girdwood 244d30769b sue: platform: Add platform init for Sue Creek
Sue creek has no SRAM windows.

Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com>
2018-10-01 20:09:58 +01:00
Liam Girdwood 630e988a97 sue: scripts: Add sue creek support into buildall
Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com>
2018-10-01 20:09:58 +01:00
Liam Girdwood c03f120d64 sue: Add initial support for suecreek IPC.
IPC will be via SPI on Suecreek.

Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com>
2018-10-01 20:09:58 +01:00
Liam Girdwood 5b321dd57d sue: Add support for Suecreek platform
Suecreek is Intel S1000 SoC audio DSP. Host connection is via SPI.

Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com>
2018-10-01 20:09:58 +01:00
Liam Girdwood 95a6e304cc sue: Add SSP defs for Sue Creek
Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com>
2018-10-01 20:03:06 +01:00
Liam Girdwood 7b64a5fde8 sue: dmic: Add support for sue creek.
Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com>
2018-10-01 20:03:06 +01:00
Liam Girdwood 489cfb5f0f sue: dw-dma: Add support for suecreek
Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com>
2018-10-01 20:03:06 +01:00
Liam Girdwood 43cebe0cb0 sue: clocks: Add clock config for suecreek.
Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com>
2018-10-01 20:03:06 +01:00
Liam Girdwood 1ea7b575e2 xtensa: boot loader: sue creek has no IMR so use different base address
Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com>
2018-10-01 20:03:06 +01:00