summaryrefslogtreecommitdiff
path: root/Makefile
AgeCommit message (Collapse)Author
2019-01-25include: Add separate header for OpenSBI versionAnup Patel
Currently, the OpenSBI version is in top-level Makefile so firmware linking to OpenSBI static library have no-way to know OpenSBI version. This patch moves OpenSBI version from top-level Makefile to sbi/sbi_version.h header which provides OPENSBI_VERSION_MAJOR and OPENSBI_VERSION_MINOR defines. NOTE: the SBI spec (or SBI ecall interface) version is different. The SBI spec version is provided by functions sbi_ecall_version_major() and sbi_ecall_version_minor(). Signed-off-by: Anup Patel <[email protected]>
2019-01-24all: Update copyright header in all filesAnup patel
This patch updates copyright header in all files as follows: 1. Makes "SPDX-License-Identifier: BSD-2-Clause" as first line 2. Change copyright year to 2019 for Western Digital Signed-off-by: Anup Patel <[email protected]>
2019-01-22Makefile: Don't install generic headers under <install_dir>/platformAnup Patel
We don't need to install generic headers separately for every platforn under <install_dir>/platform. It is unnecessary duplication of files hence updating install_libplatsbi in top-level makefile. Signed-off-by: Anup Patel <[email protected]>
2019-01-22docs: Add OpenSBI version to doxygen.cfgAnup Patel
The PDF document generated by doxygen should have OpenSBI version hence this patch adds OpenSBI version to doxygen.cfg. Signed-off-by: Anup Patel <[email protected]>
2019-01-21Makefile: Improve readabilityDamien Le Moal
Repeating "ifdef CROSS_COMPILE" multiple times does not help with readability. Simplify by grouping compilation command setup under a single ifdef statement. Signed-off-by: Damien Le Moal <[email protected]>
2019-01-21Makefile: Add support for device tree compilationDamien Le Moal
Add rules to compile dts files into dtb files using the device tree compiler (dtc). A platform can specify the DTS file to compile using the platform-dtb-y variable. The flattened device tree binary file to be used for building the final polatform firmware can be specified using the new FW_PAYLOAD_FDT firmware configuration option to point to the automatically compiled FDT file. Using the existing FW_PAYLOAD_FDT_PATH configuration option is still possible and will take precedence over the FW_PAYLOAD_FDT definition. Signed-off-by: Damien Le Moal <[email protected]>
2019-01-18platform: Include libfdt & libc.Atish Patra
Signed-off-by: Atish Patra <[email protected]>
2019-01-16Makefile: Add make targets to build and install documentationAnup Patel
This patch extends top-level makefile to build and install documentation. The 'docs' make target is for building the documentation PDF whereas 'install_docs' make target is for installing the documentation PDF. Signed-off-by: Anup Patel <[email protected]>
2019-01-05Makefile: Use '=' instead of '?=' for make variablesAnup Patel
The '?=' will not assign value if the target make variable is overriden via command-line or is set in environment variable. On other hand, '=' will not assign value only if variable is overriden via command-line parameter. It is quite common to have CC, AS, CPP, LD, etc to be set as environment variables pointing to native compiler and binutils. If '-rR' option is not set in MAKEFLAGS then this results in compile error because '?=' will use the native compiler and binutils. If '-rR' option is set in MAKEFLAGS then this again results in compile error because CC, AS, CPP, etc are set to empty strings which causes '?=' to use empty string as compiler and binutils. To handle this, we use '?=' only when CROSS_COMPILE is not defined and we use '=' when CROSS_COMPILE is defined. Signed-off-by: Anup Patel <[email protected]>
2019-01-04Makefile: Force GCC to preprocess the linker fileAlistair Francis
To avoid this message (and subsequent errors): warning: linker input file unused because linking not done force GCC to treat the linker script preprocessing as a C file. Signed-off-by: Alistair Francis <[email protected]>
2019-01-04Makefile: Convert to a more standard formatAlistair Francis
Convert the Makefile to a more standard format and don't forcefully overwrite a users enviroment. Signed-off-by: Alistair Francis <[email protected]>
2019-01-04Makefile: Use generic flags for the firmwareAlistair Francis
Signed-off-by: Alistair Francis <[email protected]>
2019-01-04Makefile: Use generic flags for the platformAlistair Francis
Signed-off-by: Alistair Francis <[email protected]>
2019-01-04Makefile: Support verbosity using standard V=1Alistair Francis
Instead of using a confusing and custom option, allow verbose Makefile with the standard V=1. Signed-off-by: Alistair Francis <[email protected]>
2019-01-03Makefile: Fix messagesDamien Le Moal
Instead of printing the generic "<build_directory>" and "<install_directory>" strings, print the actual paths for the build and install directories during "make clean" and "make distclean". Signed-off-by: Damien Le Moal <[email protected]>
2018-12-27top: Improve 'clean' and 'distclean' makefile targetsAnup Patel
This improves 'clean' and 'distclean' makefile target as follows: 1. Remove only .o, .a, .elf, and .bin files for 'clean' 2. Remove .dep in-addition to what 'clean' does for 'distclean' 3. Remove default build and install directory for 'distclean' Signed-off-by: Anup Patel <[email protected]>
2018-12-27top: Improve inst_file_list() in Makefile for payloads installationAnup Patel
We now have payloads sub-directory under firmware directory which means payload BINs and ELFs should be installed under firmware/payloads. This patch improves inst_file_list() to handle payloads sub-directory under firmware installation directory. Signed-off-by: Anup Patel <[email protected]>
2018-12-27firmware: Use dummy payload for FW_PAYLOADAnup Patel
We use recently added separate dummy payload for FW_PAYLOAD when FW_PAYLOAD_PATH is not specified. Signed-off-by: Anup Patel <[email protected]>
2018-12-26top: Rename back CROSS_COMPILE_PREFIX to CROSS_COMPILEAnup Patel
The name CROSS_COMPILE is an industry standard used across open-source project to specify cross-compiler prefix. In fact, distro build systems such as buildroot and yocto assume CROSS_COMPILE to be supported by projects added as packages to these build systems. This patch rename back CROSS_COMPILE_PREFIX to CROSS_COMPILE. Signed-off-by: Anup Patel <[email protected]>
2018-12-25Makefile: Fix cleanDamien Le Moal
Clean was doing nothing. Fix it to remove all compiled files, leaving only dependency files. Signed-off-by: Damien Le Moal <[email protected]>
2018-12-25Makefile: Rename CROSS_COMPILE to CROSS_COMPILE_PREFIXDamien Le Moal
Make it clear what this environment variable defines and update the README.md file to explain that. Signed-off-by: Damien Le Moal <[email protected]>
2018-12-21top: Rename "plat" to "platform" everywhereAnup Patel
This patch renames "plat" to "platform" everywhere for better readablility. Signed-off-by: Anup Patel <[email protected]>
2018-12-21top: Rename "blob" to "firmware" everywhereAnup Patel
This patch renames "blob" to "firmware" everywhere for better and intutive naming. Signed-off-by: Anup Patel <[email protected]>
2018-12-11Initial commit.Anup Patel
Signed-off-by: Anup Patel <[email protected]>