Commit Graph

128 Commits

Author SHA1 Message Date
Janusz Jankowski 24f3160977 cmake: scripts: relative path define utility
Add helper function sof_append_relative_path_definitions that
defines RELATIVE_PATH per source file for given target.

__FILE is not always suitable as C standard states that __FILE__ expands to
input file name, that usually is absolute path what will cause f.e. .rodata
size to be dependent on where project is physically located on the disk.

Signed-off-by: Janusz Jankowski <janusz.jankowski@linux.intel.com>
2019-11-11 12:50:30 +00:00
Janusz Jankowski 5211799133 cmake: trigger olddefconfig on kconfig changes
When there are changes made to Kconfig files it's better
to run olddefconfig automatically to prevent undesired behaviour,
like for example depending on added config that has some default value
that is not present because developer didn't run olddefconfig
after pulling changes.

Signed-off-by: Janusz Jankowski <janusz.jankowski@linux.intel.com>
2019-11-07 09:12:52 +01:00
Janusz Jankowski 98449205fb checkpatch: disable __func__ warning
Traces in SOF are used like trace("<func>() info"),
in that case __func__ is not convenient, because it is not literal
and it would be needed to use %s everywhere and change
all current traces.

Signed-off-by: Janusz Jankowski <janusz.jankowski@linux.intel.com>
2019-11-07 00:20:43 +01:00
Dragos Tarcatu d98a7ed103 checkpatch: check ABI updates before warning on it
checkpatch is currently checking for changes that need ABI updates
and actual ABI changes in the same loop in process(). So if some
file that needs an ABI change comes first, a WARNING will be issued.

Look for an actual ABI change before starting to crunch the entire
patch line by line.

Signed-off-by: Dragos Tarcatu <dragos_tarcatu@mentor.com>
2019-11-05 14:49:22 +01:00
Janusz Jankowski e044194844 checkpatch: disable short fixed size types for SOF
Do not check for u/s* vs u/sint*_t in SOF,
because there is only the longer variant.

Signed-off-by: Janusz Jankowski <janusz.jankowski@linux.intel.com>
2019-11-04 14:41:27 +01:00
Janusz Jankowski d88ac84e54 checkpatch: restore MAINTAINER file check
It was previously removed from SOF, but it's better to just disable
it for SOF to make delta with original checkpatch as small as possible.

Signed-off-by: Janusz Jankowski <janusz.jankowski@linux.intel.com>
2019-11-04 14:41:27 +01:00
Janusz Jankowski 386abbe8bc checkpatch: add SOF constant
Introduce constant that enables SOF-specific behaviour of checkpatch.
Changes made to original checkpatch should be easily visible
to make merging updates easier.

If code that is not applicable to SOF is just removed, then
while updating it's hard to distinguish if it is new feature
in checkpatch or was removed for SOF. It's better to just disable
parts of code that do not work for SOF.

Signed-off-by: Janusz Jankowski <janusz.jankowski@linux.intel.com>
2019-11-04 14:41:27 +01:00
Pan Xiuli d310beb9bb scripts: qemu: change ipc shm file name for cavs platform
The cavs platform IPC shm file name in QEMU is changed
from ipc-io to ipc-dsp-io.
Use regular expression to find the right SHM IPC register file,
so that we can smoothly pass the transition of the QEMU update.

Signed-off-by: Pan Xiuli <xiuli.pan@linux.intel.com>
2019-11-04 10:07:57 +01:00
Janusz Jankowski 62012c49a4 checkpatch: update to match kernel 5.4-rc4
Merge kernel's checkpatch with custom features added for SOF.
SOF follows kernel code style, so checkpatch should be also up-to-date.

Signed-off-by: Janusz Jankowski <janusz.jankowski@linux.intel.com>
2019-11-04 10:06:55 +01:00
Pan Xiuli 074ea8b93d scripts: add build for JSL
Add build scripts for JSL with gcc and xcc support.

Signed-off-by: Pan Xiuli <xiuli.pan@linux.intel.com>
2019-10-30 17:46:11 +01:00
Keyon Jie aa7c73c156 scripts:xtensa-build-all: update to use 2017.8 toolchain for CNL
Let's align to use the newer 2017.8 toolchain for CNL building.

Signed-off-by: Keyon Jie <yang.jie@linux.intel.com>
2019-10-25 14:57:41 +02:00
Jakub Dabek b63f559bb4 memory: removed hp buffer heap
Merged hp buffer heap with normal buffer heap.
Since current buffer heap was actually using hp memory and it served
no purpose to have two heaps.
Removed extern capabilities and merged other capabiliteis to
buffer heap. Currently none of those buffer heaps supports extern.

Signed-off-by: Jakub Dabek <jakub.dabek@intel.com>
2019-10-21 12:07:03 +02:00
Pan Xiuli b0bb5a33c8 scripts: qemu: fix qemu check for BDW and HSW
The qemu for BDW and HSW removed shm mbox and moved it into dram.
Change the scripts to the new version.

Signed-off-by: Pan Xiuli <xiuli.pan@linux.intel.com>
2019-09-19 15:36:59 +01:00
Liam Girdwood 9d560bba9e tools: build: use standard naming convention for build dirs.
Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com>
2019-09-18 21:01:16 +02:00
Curtis Malainey 23d9c78a5c scripts: allocate tty on docker
Bash and menuconfig cannot run without this flag. Docker-run just hangs
without it

Signed-off-by: Curtis Malainey <cujomalainey@google.com>
2019-09-12 19:52:34 +01:00
Tomasz Lauda fe9f9a1f36 apl: increase HP Buffer Heap and Runtime Sys Heap sizes
Increases HP Buffer Heap and Runtime System Heap sizes in order to
fit all the pipeline buffers.

Signed-off-by: Tomasz Lauda <tomasz.lauda@linux.intel.com>
2019-09-06 15:51:02 +01:00
Janusz Jankowski 15065eb01c cmake: add sof_add_static_library utility function
Adding static libraries properly may be troublesome for developers
that are not familiar with CMake, so function that makes it easier
should be useful.

Usually developer will just add sources directly to the target.
Using static libraries should be limited just to closed / precompiled
3rd party components.

Signed-off-by: Janusz Jankowski <janusz.jankowski@linux.intel.com>
2019-08-09 16:44:50 +02:00
Ranjani Sridharan ee194890b5 scripts: add option to build fuzzer
Enable building the fuzzer with the -f option
in the build-tools.sh script.

Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
2019-08-07 08:47:58 +02:00
Pan Xiuli c6dd479787 [skip ci]scripts: update glib support for fuzzer
Install libglib2.0-dev with apt.

Signed-off-by: Pan Xiuli <xiuli.pan@linux.intel.com>
2019-07-31 07:57:36 +02:00
Janusz Jankowski c6e12d53d8 scripts: add documentation generator
Process of documentation building and publishing requires
3 repositories. It is troublesome for people that are responsible
f.e. only for documentation publishing. It makes the process
easier by turning some easy to break steps from publisher instructions
into a script.

Signed-off-by: Janusz Jankowski <janusz.jankowski@linux.intel.com>
2019-06-13 13:29:02 +01:00
Janusz Jankowski 5dd9aaccb4 cmake: xtensa: use absolute paths for tools
CMake has convention of changing relative paths to absolute
for CMAKE_* variables. It does it automatically f.e. CMAKE_C_COMPILER.
However for our tools like objcopy we have to do it manually.
It also helps with integration of CMake in some IDEs.

Signed-off-by: Janusz Jankowski <janusz.jankowski@linux.intel.com>
2019-06-05 11:38:23 +02:00
Janusz Jankowski ba2fefb172 license: use spdx identifier in shell scripts
Signed-off-by: Janusz Jankowski <janusz.jankowski@linux.intel.com>
2019-06-02 16:38:17 +01:00
Janusz Jankowski 69b32abda1 checkpatch: add spdx identifier
Signed-off-by: Janusz Jankowski <janusz.jankowski@linux.intel.com>
2019-06-02 16:38:17 +01:00
Janusz Jankowski 644a1b4746 license: use spdx identifier in python files
Signed-off-by: Janusz Jankowski <janusz.jankowski@linux.intel.com>
2019-06-02 16:38:17 +01:00
Janusz Jankowski c6064624f6 cmake: add spdx license identifier
Signed-off-by: Janusz Jankowski <janusz.jankowski@linux.intel.com>
2019-06-02 16:38:17 +01:00
Janusz Jankowski e39ed5ebf4 include: split uapi headers into more directories
Some of interface headers are not needed by kernel,
but are needed by user-space applications, so we can split them
into multiple directories that indicate their purpose.

Signed-off-by: Janusz Jankowski <janusz.jankowski@linux.intel.com>
2019-05-31 20:10:45 +01:00
Pan Xiuli 9c15883f67 scripts: add imx8 platform in build all sripts
Add imx8 support in build all scripts.

Signed-off-by: Pan Xiuli <xiuli.pan@linux.intel.com>
2019-05-30 13:18:47 +02:00
Pan Xiuli c467b5285e scripts: update sof_builder docker with imx8 support
Add imx8 cross compiler in sof_builder docker build file.t

Signed-off-by: Pan Xiuli <xiuli.pan@linux.intel.com>
2019-05-30 13:18:47 +02:00
Pan Xiuli 462f9174a9 scripts: update build step align with wiki
In SOF WIKI, used another clean up cmd, change here to align with docs.

Signed-off-by: Pan Xiuli <xiuli.pan@linux.intel.com>
2019-05-30 13:18:47 +02:00
Janusz Jankowski df48bfce77 cmake: git hooks for non-unix os
Add support for non-unix systems that have bash shell.

Signed-off-by: Janusz Jankowski <janusz.jankowski@linux.intel.com>
2019-05-22 08:26:05 +02:00
Jakub Dabek db16f82c8c checkpatch: added check for memcpy calls
Added check for memcpy calls and warning that they should be
memcpy_s calls if possible.

Signed-off-by: Jakub Dabek <jakub.dabek@intel.com>
2019-05-15 12:45:48 +02:00
Janusz Jankowski 982307ebdc scripts: build testbench for host
Signed-off-by: Janusz Jankowski <janusz.jankowski@linux.intel.com>
2019-05-07 08:49:48 +02:00
Janusz Jankowski 2693daf503 cmake: rename BUILD_HOST to BUILD_LIBRARY
Signed-off-by: Janusz Jankowski <janusz.jankowski@linux.intel.com>
2019-05-07 08:49:48 +02:00
Janusz Jankowski fdda8f6820 host: enable kconfig
Signed-off-by: Janusz Jankowski <janusz.jankowski@linux.intel.com>
2019-05-07 08:49:48 +02:00
Slawomir Blauciak 980171e607 dai: supply caps and other info from within drivers
This change gathers some of the information inside of the DAI drivers,
which was previously inferred using external logic.

Signed-off-by: Slawomir Blauciak <slawomir.blauciak@linux.intel.com>
2019-05-03 03:14:43 -07:00
Pierre-Louis Bossart 826e361e7a CMake/rimage: add option to use out-of-tree private key
On specific Intel platforms, we have to use a private key which is not
shared with the rest of the world.

Extend xtensa-build-all.sh with an option, and pass the key path
explicitly to cmake if needed.

Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
2019-04-10 15:54:20 +02:00
Xun Zhang d9c1c28fd5 scripts: build-tools: exit immediately when return an error value
fix build-tools script to exit immediately when error occurs.

Signed-off-by: Xun Zhang <xun2.zhang@intel.com>
2019-04-08 15:52:48 +02:00
Curtis Malainey 9cc3f6d10e scripts: use local cpu count to build
Build faster by using all available cores by default
The xtensa script claims it used infinite build threads when j was not
specified but it was actually falling back to 1.

Signed-off-by: Curtis Malainey <cujomalainey@google.com>
2019-03-24 13:14:08 +00:00
Janusz Jankowski dbf43b290a cmake: add git hooks
Signed-off-by: Janusz Jankowski <janusz.jankowski@linux.intel.com>
2019-03-21 15:43:25 +00:00
Ranjani Sridharan d0bc31425a scripts: add option to modify defconfig
Add an option to modify the defconfig during fw build using the
script. Without this, modifying the default config and building
the FW is a 2 step process.

Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
2019-03-19 15:07:31 +00:00
Pan Xiuli 2dbe69e294 scripts: clean up the build dir for tools
Signed-off-by: Pan Xiuli <xiuli.pan@linux.intel.com>
2019-03-11 20:49:40 +00:00
Pan Xiuli 92d53023ea scripts: add clean up for host-build-all.sh
re-run the script will have no error now

Signed-off-by: Pan Xiuli <xiuli.pan@linux.intel.com>
2019-03-10 18:11:52 +01:00
Marcin Maka 69f0bde757 ci: klocwork: add example config file to avoid FPs
Signed-off-by: Marcin Maka <marcin.maka@linux.intel.com>
2019-02-22 12:16:05 +01:00
Janusz Jankowski b7fc937e04 scripts: sof-target-install update for cmake tools
Signed-off-by: Janusz Jankowski <janusz.jankowski@linux.intel.com>
2019-02-14 18:00:26 +00:00
Janusz Jankowski cc16d6d824 scripts: update build-tools.sh for cmake
Signed-off-by: Janusz Jankowski <janusz.jankowski@linux.intel.com>
2019-02-14 18:00:26 +00:00
Pan Xiuli 8c13fce6e5 [skip ci]scripts: fix a typo in name of targe install scripts
Change the scipts name.

Signed-off-by: Pan Xiuli <xiuli.pan@linux.intel.com>
2019-02-11 11:54:52 +00:00
Pan Xiuli aa172da919 [skip ci]scirpts: update target install
Signed-off-by: Pan Xiuli <xiuli.pan@linux.intel.com>
2019-02-11 11:54:52 +00:00
Janusz Jankowski a4f666527e cmake: add build counter
Signed-off-by: Janusz Jankowski <janusz.jankowski@linux.intel.com>
2019-02-11 11:53:32 +00:00
Janusz Jankowski 46730e89c6 cmake: refactor version.h rule
Signed-off-by: Janusz Jankowski <janusz.jankowski@linux.intel.com>
2019-02-11 11:53:32 +00:00
Janusz Jankowski 9a4a822309 cmake: add savedefconfig target
Signed-off-by: Janusz Jankowski <janusz.jankowski@linux.intel.com>
2019-02-07 21:12:39 +00:00