Complete Yocto mirror with license table for TQMa6UL (2038-compliance)

- 264 license table entries with exact download URLs (224/264 resolved)
- Complete sources/ directory with all BitBake recipes
- Build configuration: tqma6ul-multi-mba6ulx, spaetzle (musl)
- Full traceability for Softwarefreigabeantrag
- GCC 13.4.0, Linux 6.6.102, U-Boot 2023.04, musl 1.2.4
- License distribution: GPL-2.0 (24), MIT (23), GPL-2.0+ (18), BSD-3 (16)
This commit is contained in:
Siggi (OpenClaw Agent)
2026-03-01 20:58:18 +00:00
commit 16accb6b24
15086 changed files with 1292356 additions and 0 deletions

View File

@@ -0,0 +1,17 @@
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.

View File

@@ -0,0 +1,33 @@
The official OpenEmbedded/Yocto BSP layer for Texas Instruments platforms.
It is hosted on http://git.yoctoproject.org/cgit/cgit.cgi/meta-ti/ with the
source repository at git://git.yoctoproject.org/meta-ti
This layer depends on:
URI: git://git.openembedded.org/openembedded-core
layers: meta
branch: scarthgap
URI: git://git.yoctoproject.org/meta-arm
layers: meta-arm
branch: scarthgap
The base BSP part of meta-ti should work with different OpenEmbedded/Yocto
distributions and layer stacks, such as:
distro-less (only with OE-Core), with Yocto/Poky, with Angstrom or Arago.
Please follow the recommended setup procedures of your OE distribution.
Send pull requests, patches, comments or questions to:
meta-ti@lists.yoctoproject.org
Please note - meta-ti mailing list requires subscription for posting:
https://lists.yoctoproject.org/g/meta-ti
Maintainers:
Ryan Eatmon <reatmon@ti.com>
Denys Dmytriyenko <denys@konsulko.com>

View File

@@ -0,0 +1,20 @@
How to Report a Potential Vulnerability?
========================================
If you would like to report a public issue (for example, one with a released
CVE number), please report it to the mailing list:
https://lists.yoctoproject.org/g/meta-ti
If you are dealing with a not-yet released or urgent issue, please send a
message to one of the maintainers listed in the README. Include as many
details as possible:
- the layer or software module affected
- the recipe and its version
- any example code, if available
Branches maintained with security fixes
---------------------------------------
See https://wiki.yoctoproject.org/wiki/Releases for the list of current
releases. We only accept patches for the LTS releases and the master branch.

View File

@@ -0,0 +1,767 @@
inherit ti-secdev kernel-uboot uboot-sign-legacyhs
FITIMAGE_HASH_ALGO ?= "sha1"
FITIMAGE_PACK_TEE ?= "0"
FITIMAGE_DTB_BY_NAME ?= "0"
FITIMAGE_TEE_BY_NAME ?= "0"
FITIMAGE_CONF_BY_NAME ?= "0"
python __anonymous () {
kerneltypes = d.getVar('KERNEL_IMAGETYPES') or ""
if 'fitImage' in kerneltypes.split():
depends = d.getVar("DEPENDS")
depends = "%s u-boot-mkimage-native dtc-native" % depends
d.setVar("DEPENDS", depends)
uarch = d.getVar("UBOOT_ARCH")
if uarch == "arm64":
replacementtype = "Image"
elif uarch == "mips":
replacementtype = "vmlinuz.bin"
elif uarch == "x86":
replacementtype = "bzImage"
elif uarch == "microblaze":
replacementtype = "linux.bin"
else:
replacementtype = "zImage"
# Override KERNEL_IMAGETYPE_FOR_MAKE variable, which is internal
# to kernel.bbclass . We have to override it, since we pack zImage
# (at least for now) into the fitImage .
typeformake = d.getVar("KERNEL_IMAGETYPE_FOR_MAKE") or ""
if 'fitImage' in typeformake.split():
d.setVar('KERNEL_IMAGETYPE_FOR_MAKE', typeformake.replace('fitImage', replacementtype))
image = d.getVar('INITRAMFS_IMAGE')
if image:
d.appendVarFlag('do_assemble_fitimage_initramfs', 'depends', ' ${INITRAMFS_IMAGE}:do_image_complete')
# Verified boot will sign the fitImage and append the public key to
# U-boot dtb. We ensure the U-Boot dtb is deployed before assembling
# the fitImage:
if d.getVar('UBOOT_SIGN_ENABLE'):
uboot_pn = d.getVar('PREFERRED_PROVIDER_u-boot') or 'u-boot'
d.appendVarFlag('do_assemble_fitimage', 'depends', ' %s:do_deploy' % uboot_pn)
if d.getVar('FITIMAGE_PACK_TEE') == "1":
d.appendVarFlag('do_assemble_fitimage', 'depends', ' optee-os:do_deploy')
}
# Options for the device tree compiler passed to mkimage '-D' feature:
UBOOT_MKIMAGE_DTCOPTS ??= ""
fitimage_ti_secure() {
if test -f "${TI_SECURE_DEV_PKG}/scripts/secure-binary-image.sh"; then
export TI_SECURE_DEV_PKG=${TI_SECURE_DEV_PKG}
${TI_SECURE_DEV_PKG}/scripts/secure-binary-image.sh $1 $2
else
cp $1 $2
fi
}
#
# Emit the fitImage ITS header
#
# $1 ... .its filename
fitimage_emit_fit_header() {
cat << EOF >> ${1}
/dts-v1/;
/ {
description = "U-Boot fitImage for ${DISTRO_NAME}/${PV}/${MACHINE}";
#address-cells = <1>;
EOF
}
#
# Emit the fitImage section bits
#
# $1 ... .its filename
# $2 ... Section bit type: imagestart - image section start
# confstart - configuration section start
# sectend - section end
# fitend - fitimage end
#
fitimage_emit_section_maint() {
case $2 in
imagestart)
cat << EOF >> ${1}
images {
EOF
;;
confstart)
cat << EOF >> ${1}
configurations {
EOF
;;
sectend)
cat << EOF >> ${1}
};
EOF
;;
fitend)
cat << EOF >> ${1}
};
EOF
;;
esac
}
#
# Emit the fitImage ITS kernel section
#
# $1 ... .its filename
# $2 ... Image counter
# $3 ... Path to kernel image
# $4 ... Compression type
fitimage_emit_section_kernel() {
kernel_csum=${FITIMAGE_HASH_ALGO}
ENTRYPOINT="${UBOOT_ENTRYPOINT}"
if test -n "${UBOOT_ENTRYSYMBOL}"; then
ENTRYPOINT=`${HOST_PREFIX}nm ${S}/vmlinux | \
awk '$4=="${UBOOT_ENTRYSYMBOL}" {print $2}'`
fi
cat << EOF >> ${1}
kernel-${2} {
description = "Linux kernel";
data = /incbin/("${3}");
type = "kernel";
arch = "${UBOOT_ARCH}";
os = "linux";
compression = "${4}";
load = <${UBOOT_LOADADDRESS}>;
entry = <${ENTRYPOINT}>;
EOF
if test -n "${FITIMAGE_HASH_ALGO}"; then
cat << EOF >> ${1}
hash-1 {
algo = "${kernel_csum}";
};
EOF
fi
cat << EOF >> ${1}
};
EOF
}
#
# Emit the fitImage ITS DTB section
#
# $1 ... .its filename
# $2 ... Image counter/name
# $3 ... Path to DTB image
# $4 ... Load address
fitimage_emit_section_dtb() {
dtb_csum=${FITIMAGE_HASH_ALGO}
dtb_loadline="${4}"
cat << EOF >> ${1}
${2} {
description = "Flattened Device Tree blob";
data = /incbin/("${3}");
type = "flat_dt";
arch = "${UBOOT_ARCH}";
compression = "none";
${dtb_loadline}
EOF
if test -n "${FITIMAGE_HASH_ALGO}"; then
cat << EOF >> ${1}
hash-1 {
algo = "${dtb_csum}";
};
EOF
fi
cat << EOF >> ${1}
};
EOF
}
#
# Emit the fitImage ITS TEE section
#
# $1 ... .its filename
# $2 ... Image counter/name
# $3 ... Path to TEE image
fitimage_emit_section_tee() {
tee_csum=${FITIMAGE_HASH_ALGO}
cat << EOF >> ${1}
${2} {
description = "OPTEE OS Image";
data = /incbin/("${3}");
type = "tee";
arch = "${UBOOT_ARCH}";
compression = "none";
EOF
if test -n "${FITIMAGE_HASH_ALGO}"; then
cat << EOF >> ${1}
hash-1 {
algo = "${tee_csum}";
};
EOF
fi
cat << EOF >> ${1}
};
EOF
}
#
# Emit the fitImage ITS setup section
#
# $1 ... .its filename
# $2 ... Image counter
# $3 ... Path to setup image
fitimage_emit_section_setup() {
setup_csum=${FITIMAGE_HASH_ALGO}
cat << EOF >> ${1}
setup-${2} {
description = "Linux setup.bin";
data = /incbin/("${3}");
type = "x86_setup";
arch = "${UBOOT_ARCH}";
os = "linux";
compression = "none";
load = <0x00090000>;
entry = <0x00090000>;
EOF
if test -n "${FITIMAGE_HASH_ALGO}"; then
cat << EOF >> ${1}
hash-1 {
algo = "${setup_csum}";
};
EOF
fi
cat << EOF >> ${1}
};
EOF
}
#
# Emit the fitImage ITS ramdisk section
#
# $1 ... .its filename
# $2 ... Image counter
# $3 ... Path to ramdisk image
fitimage_emit_section_ramdisk() {
ramdisk_csum=${FITIMAGE_HASH_ALGO}
ramdisk_ctype="none"
case $3 in
*.gz|*.gz.sec)
ramdisk_ctype="gzip"
;;
*.bz2|*.bz2.sec)
ramdisk_ctype="bzip2"
;;
*.lzma|*.lzma.sec)
ramdisk_ctype="lzma"
;;
*.lzo|*.lzo.sec)
ramdisk_ctype="lzo"
;;
*.lz4|*.lz4.sec)
ramdisk_ctype="lz4"
;;
esac
cat << EOF >> ${1}
ramdisk-${2} {
description = "ramdisk image";
data = /incbin/("${3}");
type = "ramdisk";
arch = "${UBOOT_ARCH}";
os = "linux";
compression = "${ramdisk_ctype}";
EOF
if test -n "${UBOOT_RD_LOADADDRESS}"; then
cat << EOF >> ${1}
load = <${UBOOT_RD_LOADADDRESS}>;
EOF
fi
if test -n "${UBOOT_RD_ENTRYPOINT}"; then
cat << EOF >> ${1}
entry = <${UBOOT_RD_ENTRYPOINT}>;
EOF
fi
if test -n "${FITIMAGE_HASH_ALGO}"; then
cat << EOF >> ${1}
hash-1 {
algo = "${ramdisk_csum}";
};
EOF
fi
cat << EOF >> ${1}
};
EOF
}
#
# Emit the fitImage ITS configuration section
#
# $1 ... .its filename
# $2 ... Linux kernel ID
# $3 ... DTB image ID/name
# $4 ... ramdisk ID
# $5 ... config ID
# $6 ... tee ID/name
# $7 ... default DTB ID
fitimage_emit_section_config() {
conf_csum=${FITIMAGE_HASH_ALGO}
if [ -n "${UBOOT_SIGN_ENABLE}" ] ; then
conf_sign_keyname="${UBOOT_SIGN_KEYNAME}"
fi
sep=""
conf_desc=""
kernel_line=""
fdt_line=""
ramdisk_line=""
setup_line=""
default_line=""
if [ -n "${2}" ]; then
conf_desc="Linux kernel"
sep=", "
kernel_line="kernel = \"kernel-${2}\";"
fi
if [ -n "${3}" ]; then
conf_desc="${conf_desc}${sep}FDT blob"
sep=", "
fi
if [ -n "${4}" ]; then
conf_desc="${conf_desc}${sep}ramdisk"
sep=", "
ramdisk_line="ramdisk = \"ramdisk-${4}\";"
fi
if [ -n "${5}" ]; then
conf_desc="${conf_desc}${sep}setup"
sep=", "
setup_line="setup = \"setup-${5}\";"
fi
if [ -n "${6}" -a "x${FITIMAGE_PACK_TEE}" = "x1" ]; then
if [ "x${FITIMAGE_TEE_BY_NAME}" = "x1" ]; then
loadables_line="loadables = \"${6}.optee\";"
loadables_pager_line="loadables = \"${6}-pager.optee\";"
else
loadables_line="loadables = \"tee-${6}\";"
nextnum=`expr ${6} + 1`
loadables_pager_line="loadables = \"tee-${nextnum}\";"
fi
final_conf_desc="${conf_desc}${sep}OPTEE OS Image"
else
loadables_line=""
loadables_pager_line=""
final_conf_desc="${conf_desc}"
fi
default_dtb_count=${7}
if [ "x${FITIMAGE_CONF_BY_NAME}" = "x1" ] ; then
default_conf_name="${FIT_CONF_DEFAULT_DTB}"
else
default_conf_name="conf-${default_dtb_count}"
fi
cat << EOF >> ${1}
default = "${default_conf_name}";
EOF
dtbcount=1
for DTB in ${KERNEL_DEVICETREE}; do
DTB=$(basename "${DTB}")
dtb_ext=${DTB##*.}
if [ "x${FITIMAGE_CONF_BY_NAME}" = "x1" ] ; then
conf_name="${DTB}"
else
conf_name="conf-${dtbcount}"
fi
if [ "x${FITIMAGE_DTB_BY_NAME}" = "x1" ] ; then
fdt_line="fdt = \"${DTB}\";"
else
fdt_line="fdt = \"fdt-${dtbcount}\";"
fi
# Generate a single configuration section
cat << EOF >> ${1}
${conf_name} {
description = "${final_conf_desc}";
${fdt_line}
EOF
if [ "${dtb_ext}" != "dtbo" ]; then
cat << EOF >> ${1}
${kernel_line}
${ramdisk_line}
${setup_line}
${loadables_line}
EOF
fi
if test -n "${FITIMAGE_HASH_ALGO}"; then
cat << EOF >> ${1}
hash-1 {
algo = "${conf_csum}";
};
EOF
fi
if [ ! -z "${conf_sign_keyname}" ] ; then
sign_line="sign-images = \"kernel\""
if [ -n "${3}" ]; then
sign_line="${sign_line}, \"fdt\""
fi
if [ -n "${4}" ]; then
sign_line="${sign_line}, \"ramdisk\""
fi
if [ -n "${5}" ]; then
sign_line="${sign_line}, \"setup\""
fi
sign_line="${sign_line};"
cat << EOF >> ${1}
signature-1 {
algo = "${conf_csum},rsa2048";
key-name-hint = "${conf_sign_keyname}";
${sign_line}
};
EOF
fi
cat << EOF >> ${1}
};
EOF
# End single config section
# Generate a single "pager" configuration section
if [ "${OPTEEPAGER}" = "y" ]; then
if [ "x${FITIMAGE_CONF_BY_NAME}" = "x1" ] ; then
conf_name="${DTB}-pager"
else
conf_name="conf-${dtbcount}"
fi
cat << EOF >> ${1}
${conf_name} {
description = "${final_conf_desc}";
${fdt_line}
EOF
if [ "${dtb_ext}" != "dtbo" ]; then
cat << EOF >> ${1}
${kernel_line}
${ramdisk_line}
${setup_line}
${loadables_pager_line}
EOF
fi
if test -n "${FITIMAGE_HASH_ALGO}"; then
cat << EOF >> ${1}
hash-1 {
algo = "${conf_csum}";
};
EOF
fi
if [ ! -z "${conf_sign_keyname}" ] ; then
sign_line="sign-images = \"kernel\""
if [ -n "${3}" ]; then
sign_line="${sign_line}, \"fdt\""
fi
if [ -n "${4}" ]; then
sign_line="${sign_line}, \"ramdisk\""
fi
if [ -n "${5}" ]; then
sign_line="${sign_line}, \"setup\""
fi
sign_line="${sign_line};"
cat << EOF >> ${1}
signature-1 {
algo = "${conf_csum},rsa2048";
key-name-hint = "${conf_sign_keyname}";
${sign_line}
};
EOF
fi
cat << EOF >> ${1}
};
EOF
fi
# End single config section
dtbcount=`expr ${dtbcount} + 1`
done
}
#
# Assemble fitImage
#
# $1 ... .its filename
# $2 ... fitImage name
# $3 ... include ramdisk
fitimage_assemble() {
kernelcount=1
dtbcount=""
ramdiskcount=${3}
setupcount=""
teecount=1
default_dtb_count=1
rm -f ${1} arch/${ARCH}/boot/${2}
fitimage_emit_fit_header ${1}
#
# Step 1: Prepare a kernel image section.
#
fitimage_emit_section_maint ${1} imagestart
uboot_prep_kimage
fitimage_ti_secure linux.bin linux.bin.sec
fitimage_emit_section_kernel ${1} "${kernelcount}" linux.bin.sec "${linux_comp}"
#
# Step 2: Prepare a DTB image section
#
if test -n "${KERNEL_DEVICETREE}"; then
dtbcount=1
dtboaddress="${UBOOT_DTBO_LOADADDRESS}"
for DTB in ${KERNEL_DEVICETREE}; do
if [ "${DTB}" = "${FIT_CONF_DEFAULT_DTB}" ]; then
default_dtb_count=${dtbcount}
fi
if echo ${DTB} | grep -q '/dts/'; then
bbwarn "${DTB} contains the full path to the the dts file, but only the dtb name should be used."
DTB=`basename ${DTB} | sed 's,\.dts$,.dtb,g'`
fi
DTB_PATH="arch/${ARCH}/boot/dts/${DTB}"
if [ ! -e "${DTB_PATH}" ]; then
DTB_PATH="arch/${ARCH}/boot/${DTB}"
fi
DTB=$(basename "${DTB}")
dtb_ext=${DTB##*.}
if [ "${dtb_ext}" = "dtbo" ]; then
if [ -n "${UBOOT_DTBO_LOADADDRESS}" ]; then
dtb_loadline="load = <${dtboaddress}>;"
num1=`printf "%d\n" ${dtboaddress}`
num2=`printf "%d\n" ${UBOOT_DTBO_OFFSET}`
num3=`expr $num1 + $num2`
dtboaddress=`printf "0x%x\n" $num3`
fi
elif [ -n "${UBOOT_DTB_LOADADDRESS}" ]; then
dtb_loadline="load = <${UBOOT_DTB_LOADADDRESS}>;"
fi
fitimage_ti_secure ${DTB_PATH} ${DTB_PATH}.sec
if [ "x${FITIMAGE_DTB_BY_NAME}" = "x1" ] ; then
fitimage_emit_section_dtb ${1} ${DTB} ${DTB_PATH}.sec "${dtb_loadline}"
else
fitimage_emit_section_dtb ${1} "fdt-${dtbcount}" ${DTB_PATH}.sec "${dtb_loadline}"
fi
if [ "x${dtbcount}" = "x1" ]; then
dtbref=${DTB}
fi
dtbcount=`expr ${dtbcount} + 1`
done
fi
#
# Step 2a: Prepare OP/TEE image section
#
if [ "x${FITIMAGE_PACK_TEE}" = "x1" ] ; then
mkdir -p ${B}/usr
rm -f ${B}/usr/${OPTEEFLAVOR}.optee
if [ -e "${DEPLOY_DIR_IMAGE}/${OPTEEFLAVOR}.optee" ]; then
cp ${DEPLOY_DIR_IMAGE}/${OPTEEFLAVOR}.optee ${B}/usr/.
fi
TEE_PATH="usr/${OPTEEFLAVOR}.optee"
fitimage_ti_secure ${TEE_PATH} ${TEE_PATH}.sec
if [ "x${FITIMAGE_TEE_BY_NAME}" = "x1" ] ; then
fitimage_emit_section_tee ${1} ${OPTEEFLAVOR}.optee ${TEE_PATH}.sec
else
fitimage_emit_section_tee ${1} "tee-${teecount}" ${TEE_PATH}.sec
fi
if [ "${OPTEEPAGER}" = "y" ]; then
teecount=`expr ${teecount} + 1`
rm -f ${B}/usr/${OPTEEFLAVOR}-pager.optee
if [ -e "${DEPLOY_DIR_IMAGE}/${OPTEEFLAVOR}-pager.optee" ]; then
cp ${DEPLOY_DIR_IMAGE}/${OPTEEFLAVOR}-pager.optee ${B}/usr/.
fi
TEE_PATH="usr/${OPTEEFLAVOR}-pager.optee"
fitimage_ti_secure ${TEE_PATH} ${TEE_PATH}.sec
if [ "x${FITIMAGE_TEE_BY_NAME}" = "x1" ] ; then
fitimage_emit_section_tee ${1} ${OPTEEFLAVOR}-pager.optee ${TEE_PATH}.sec
else
fitimage_emit_section_tee ${1} "tee-${teecount}" ${TEE_PATH}.sec
fi
fi
fi
#
# Step 3: Prepare a setup section. (For x86)
#
if test -e arch/${ARCH}/boot/setup.bin ; then
setupcount=1
fitimage_emit_section_setup ${1} "${setupcount}" arch/${ARCH}/boot/setup.bin
fi
#
# Step 4: Prepare a ramdisk section.
#
if [ "x${ramdiskcount}" = "x1" ] ; then
# Find and use the first initramfs image archive type we find
for img in cpio.lz4 cpio.lzo cpio.lzma cpio.xz cpio.gz cpio; do
initramfs_path="${DEPLOY_DIR_IMAGE}/${INITRAMFS_IMAGE}-${MACHINE}.${img}"
initramfs_local="usr/${INITRAMFS_IMAGE}-${MACHINE}.${img}"
echo "Using $initramfs_path"
if [ -e "${initramfs_path}" ]; then
fitimage_ti_secure ${initramfs_path} ${initramfs_local}.sec
fitimage_emit_section_ramdisk ${1} "${ramdiskcount}" ${initramfs_local}.sec
break
fi
done
fi
fitimage_emit_section_maint ${1} sectend
# Force the first Kernel and DTB in the default config
kernelcount=1
if test -n "${dtbcount}"; then
dtbcount=1
fi
teecount=1
#
# Step 5: Prepare a configurations section
#
fitimage_emit_section_maint ${1} confstart
if [ "x${FITIMAGE_DTB_BY_NAME}" != "x1" ] ; then
dtbref="fdt-${dtbcount}"
fi
if [ "x${FITIMAGE_TEE_BY_NAME}" = "x1" ] ; then
teeref="${OPTEEFLAVOR}"
else
teeref="${teecount}"
fi
fitimage_emit_section_config ${1} "${kernelcount}" "${dtbref}" "${ramdiskcount}" "${setupcount}" "${teeref}" "${default_dtb_count}"
fitimage_emit_section_maint ${1} sectend
fitimage_emit_section_maint ${1} fitend
#
# Step 6: Assemble the image
#
uboot-mkimage \
${@'-D "${UBOOT_MKIMAGE_DTCOPTS}"' if len('${UBOOT_MKIMAGE_DTCOPTS}') else ''} \
-f ${1} \
arch/${ARCH}/boot/${2}
#
# Step 7: Sign the image and add public key to U-Boot dtb
#
if [ "x${UBOOT_SIGN_ENABLE}" = "x1" ] ; then
uboot-mkimage \
${@'-D "${UBOOT_MKIMAGE_DTCOPTS}"' if len('${UBOOT_MKIMAGE_DTCOPTS}') else ''} \
-F -k "${UBOOT_SIGN_KEYDIR}" \
-K "${DEPLOY_DIR_IMAGE}/${UBOOT_DTB_BINARY}" \
-r arch/${ARCH}/boot/${2}
fi
}
do_assemble_fitimage() {
if echo ${KERNEL_IMAGETYPES} | grep -wq "fitImage"; then
cd ${B}
fitimage_assemble fit-image.its fitImage
fi
}
addtask assemble_fitimage before do_install after do_compile
do_assemble_fitimage_initramfs() {
if echo ${KERNEL_IMAGETYPES} | grep -wq "fitImage" && \
test -n "${INITRAMFS_IMAGE}" ; then
cd ${B}
fitimage_assemble fit-image-${INITRAMFS_IMAGE}.its fitImage-${INITRAMFS_IMAGE} 1
fi
}
addtask assemble_fitimage_initramfs before do_deploy after do_install
FITIMAGE_ITS_SUFFIX ?= "its"
FITIMAGE_ITB_SUFFIX ?= "itb"
FITIMAGE_ITS_IMAGE ?= "fitImage-its-${PKGE}-${PKGV}-${PKGR}-${MACHINE}-${DATETIME}.${FITIMAGE_ITS_SUFFIX}"
FITIMAGE_ITS_IMAGE[vardepsexclude] = "DATETIME"
FITIMAGE_ITS_BINARY ?= "fitImage-its.${FITIMAGE_ITS_SUFFIX}"
FITIMAGE_ITS_SYMLINK ?= "fitImage-its-${MACHINE}.${FITIMAGE_ITS_SUFFIX}"
FITIMAGE_ITB_IMAGE ?= "fitImage-linux.bin-${PKGE}-${PKGV}-${PKGR}-${MACHINE}-${DATETIME}.${FITIMAGE_ITB_SUFFIX}"
FITIMAGE_ITB_IMAGE[vardepsexclude] = "DATETIME"
FITIMAGE_ITB_BINARY ?= "fitImage-linux.bin.${FITIMAGE_ITB_SUFFIX}"
FITIMAGE_ITB_SYMLINK ?= "fitImage-linux.bin-${MACHINE}.${FITIMAGE_ITB_SUFFIX}"
FITIMAGE_INITRAMFS_ITS_IMAGE ?= "fitImage-its-${INITRAMFS_IMAGE}-${PKGE}-${PKGV}-${PKGR}-${MACHINE}-${DATETIME}.${FITIMAGE_ITS_SUFFIX}"
FITIMAGE_INITRAMFS_ITS_IMAGE[vardepsexclude] = "DATETIME"
FITIMAGE_INITRAMFS_ITS_BINARY ?= "fitImage-its-${INITRAMFS_IMAGE}.${FITIMAGE_ITS_SUFFIX}"
FITIMAGE_INITRAMFS_ITS_SYMLINK ?= "fitImage-its-${INITRAMFS_IMAGE}-${MACHINE}.${FITIMAGE_ITS_SUFFIX}"
FITIMAGE_INITRAMFS_ITB_IMAGE ?= "fitImage-${INITRAMFS_IMAGE}-${PKGE}-${PKGV}-${PKGR}-${MACHINE}-${DATETIME}.${FITIMAGE_ITB_SUFFIX}"
FITIMAGE_INITRAMFS_ITB_IMAGE[vardepsexclude] = "DATETIME"
FITIMAGE_INITRAMFS_ITB_BINARY ?= "fitImage-${INITRAMFS_IMAGE}.${FITIMAGE_ITB_SUFFIX}"
FITIMAGE_INITRAMFS_ITB_SYMLINK ?= "fitImage-${INITRAMFS_IMAGE}-${MACHINE}.${FITIMAGE_ITB_SUFFIX}"
kernel_do_deploy:append() {
# Update deploy directory
if echo ${KERNEL_IMAGETYPES} | grep -wq "fitImage"; then
cd ${B}
echo "Copying fit-image.its source file..."
install -m 0644 fit-image.its ${DEPLOYDIR}/${FITIMAGE_ITS_IMAGE}
install -m 0644 arch/${ARCH}/boot/fitImage ${DEPLOYDIR}/${FITIMAGE_ITB_IMAGE}
if [ -n "${INITRAMFS_IMAGE}" ]; then
echo "Copying fit-image-${INITRAMFS_IMAGE}.its source file..."
install -m 0644 fit-image-${INITRAMFS_IMAGE}.its ${DEPLOYDIR}/${FITIMAGE_INITRAMFS_ITS_IMAGE}
install -m 0644 arch/${ARCH}/boot/fitImage-${INITRAMFS_IMAGE} ${DEPLOYDIR}/${FITIMAGE_INITRAMFS_ITB_IMAGE}
fi
cd ${DEPLOYDIR}
ln -sf ${FITIMAGE_ITS_IMAGE} ${FITIMAGE_ITS_SYMLINK}
ln -sf ${FITIMAGE_ITS_IMAGE} ${FITIMAGE_ITS_BINARY}
ln -sf ${FITIMAGE_ITB_IMAGE} ${FITIMAGE_ITB_SYMLINK}
ln -sf ${FITIMAGE_ITB_IMAGE} ${FITIMAGE_ITB_BINARY}
if [ -n "${INITRAMFS_IMAGE}" ]; then
ln -sf ${FITIMAGE_INITRAMFS_ITS_IMAGE} ${FITIMAGE_INITRAMFS_ITS_SYMLINK}
ln -sf ${FITIMAGE_INITRAMFS_ITS_IMAGE} ${FITIMAGE_INITRAMFS_ITS_BINARY}
ln -sf ${FITIMAGE_INITRAMFS_ITB_IMAGE} ${FITIMAGE_INITRAMFS_ITB_SYMLINK}
ln -sf ${FITIMAGE_INITRAMFS_ITB_IMAGE} ${FITIMAGE_INITRAMFS_ITB_BINARY}
fi
fi
}

View File

@@ -0,0 +1,21 @@
# Helper class to prepare correct environment for signing with TI Security Development Tools
# K3 SECDEV scripts use OpenSSL
DEPENDS:append:k3 = " openssl-native"
DEPENDS:append:k3r5 = " openssl-native"
# Use package version of TI SECDEV for K3 if one is not provided through the environment
DEPENDS:append:k3 = "${@ '' if d.getVar('TI_SECURE_DEV_PKG_K3') else ' ti-k3-secdev-native' }"
DEPENDS:append:k3r5 = "${@ '' if d.getVar('TI_SECURE_DEV_PKG_K3') else ' ti-k3-secdev-native' }"
TI_K3_SECDEV_INSTALL_DIR = "${STAGING_DIR_NATIVE}${datadir}/ti/ti-k3-secdev"
TI_SECURE_DEV_PKG:k3 = "${@ d.getVar('TI_SECURE_DEV_PKG_K3') or d.getVar('TI_K3_SECDEV_INSTALL_DIR') }"
TI_SECURE_DEV_PKG:k3r5 = "${@ d.getVar('TI_SECURE_DEV_PKG_K3') or d.getVar('TI_K3_SECDEV_INSTALL_DIR') }"
# For non-K3 we require the SECDEV tools be provided through the environment with the following vars
TI_SECURE_DEV_PKG:ti33x = "${TI_SECURE_DEV_PKG_CAT}/am3x"
TI_SECURE_DEV_PKG:ti43x = "${TI_SECURE_DEV_PKG_CAT}/am4x"
TI_SECURE_DEV_PKG:am57xx = "${TI_SECURE_DEV_PKG_AUTO}/am5x"
TI_SECURE_DEV_PKG:dra7xx = "${TI_SECURE_DEV_PKG_AUTO}/dra7"
# The SECDEV scripts may need their own location provided through the environment
export TI_SECURE_DEV_PKG

View File

@@ -0,0 +1,131 @@
# This file is part of U-Boot verified boot support and is intended to be
# inherited from u-boot recipe and from kernel-fitimage.bbclass.
#
# The signature procedure requires the user to generate an RSA key and
# certificate in a directory and to define the following variable:
#
# UBOOT_SIGN_KEYDIR = "/keys/directory"
# UBOOT_SIGN_KEYNAME = "dev" # keys name in keydir (eg. "dev.crt", "dev.key")
# UBOOT_MKIMAGE_DTCOPTS = "-I dts -O dtb -p 2000"
# UBOOT_SIGN_ENABLE = "1"
#
# As verified boot depends on fitImage generation, following is also required:
#
# KERNEL_CLASSES ?= " kernel-fitimage "
# KERNEL_IMAGETYPE ?= "fitImage"
#
# The signature support is limited to the use of CONFIG_OF_SEPARATE in U-Boot.
#
# The tasks sequence is set as below, using DEPLOY_IMAGE_DIR as common place to
# treat the device tree blob:
#
# * u-boot:do_install:append
# Install UBOOT_DTB_BINARY to datadir, so that kernel can use it for
# signing, and kernel will deploy UBOOT_DTB_BINARY after signs it.
#
# * virtual/kernel:do_assemble_fitimage
# Sign the image
#
# * u-boot:do_deploy[postfuncs]
# Deploy files like UBOOT_DTB_IMAGE, UBOOT_DTB_SYMLINK and others.
#
# For more details on signature process, please refer to U-Boot documentation.
# Signature activation.
UBOOT_SIGN_ENABLE ?= "0"
# Default value for deployment filenames.
UBOOT_DTB_IMAGE ?= "u-boot-${MACHINE}-${PV}-${PR}.dtb"
UBOOT_DTB_BINARY ?= "u-boot.dtb"
UBOOT_DTB_SYMLINK ?= "u-boot-${MACHINE}.dtb"
UBOOT_NODTB_IMAGE ?= "u-boot-nodtb-${MACHINE}-${PV}-${PR}.${UBOOT_SUFFIX}"
UBOOT_NODTB_BINARY ?= "u-boot-nodtb.${UBOOT_SUFFIX}"
UBOOT_NODTB_SYMLINK ?= "u-boot-nodtb-${MACHINE}.${UBOOT_SUFFIX}"
# Functions in this bbclass is for u-boot only
UBOOT_PN = "${@d.getVar('PREFERRED_PROVIDER_u-boot') or 'u-boot'}"
concat_dtb_helper() {
if [ -e "${UBOOT_DTB_BINARY}" ]; then
ln -sf ${UBOOT_DTB_IMAGE} ${DEPLOYDIR}/${UBOOT_DTB_BINARY}
ln -sf ${UBOOT_DTB_IMAGE} ${DEPLOYDIR}/${UBOOT_DTB_SYMLINK}
fi
if [ -f "${UBOOT_NODTB_BINARY}" ]; then
install ${UBOOT_NODTB_BINARY} ${DEPLOYDIR}/${UBOOT_NODTB_IMAGE}
ln -sf ${UBOOT_NODTB_IMAGE} ${DEPLOYDIR}/${UBOOT_NODTB_SYMLINK}
ln -sf ${UBOOT_NODTB_IMAGE} ${DEPLOYDIR}/${UBOOT_NODTB_BINARY}
fi
# Concatenate U-Boot w/o DTB & DTB with public key
# (cf. kernel-fitimage.bbclass for more details)
deployed_uboot_dtb_binary='${DEPLOY_DIR_IMAGE}/${UBOOT_DTB_IMAGE}'
if [ "x${UBOOT_SUFFIX}" = "ximg" -o "x${UBOOT_SUFFIX}" = "xrom" ] && \
[ -e "$deployed_uboot_dtb_binary" ]; then
oe_runmake EXT_DTB=$deployed_uboot_dtb_binary
install ${UBOOT_BINARY} ${DEPLOYDIR}/${UBOOT_IMAGE}
elif [ -e "${DEPLOYDIR}/${UBOOT_NODTB_IMAGE}" -a -e "$deployed_uboot_dtb_binary" ]; then
cd ${DEPLOYDIR}
cat ${UBOOT_NODTB_IMAGE} $deployed_uboot_dtb_binary | tee ${B}/${CONFIG_B_PATH}/${UBOOT_BINARY} > ${UBOOT_IMAGE}
else
bbwarn "Failure while adding public key to u-boot binary. Verified boot won't be available."
fi
}
concat_dtb() {
if [ "${UBOOT_SIGN_ENABLE}" = "1" -a "${PN}" = "${UBOOT_PN}" -a -n "${UBOOT_DTB_BINARY}" ]; then
mkdir -p ${DEPLOYDIR}
if [ -n "${UBOOT_CONFIG}" ]; then
for config in ${UBOOT_MACHINE}; do
CONFIG_B_PATH="${config}"
cd ${B}/${config}
concat_dtb_helper
done
else
CONFIG_B_PATH=""
cd ${B}
concat_dtb_helper
fi
fi
}
# Install UBOOT_DTB_BINARY to datadir, so that kernel can use it for
# signing, and kernel will deploy UBOOT_DTB_BINARY after signs it.
install_helper() {
if [ -f "${UBOOT_DTB_BINARY}" ]; then
install -d ${D}${datadir}
# UBOOT_DTB_BINARY is a symlink to UBOOT_DTB_IMAGE, so we
# need both of them.
install ${UBOOT_DTB_BINARY} ${D}${datadir}/${UBOOT_DTB_IMAGE}
ln -sf ${UBOOT_DTB_IMAGE} ${D}${datadir}/${UBOOT_DTB_BINARY}
else
bbwarn "${UBOOT_DTB_BINARY} not found"
fi
}
do_install:append() {
if [ "${UBOOT_SIGN_ENABLE}" = "1" -a "${PN}" = "${UBOOT_PN}" -a -n "${UBOOT_DTB_BINARY}" ]; then
if [ -n "${UBOOT_CONFIG}" ]; then
for config in ${UBOOT_MACHINE}; do
cd ${B}/${config}
install_helper
done
else
cd ${B}
install_helper
fi
fi
}
python () {
if d.getVar('UBOOT_SIGN_ENABLE') == '1' and d.getVar('PN') == d.getVar('UBOOT_PN') and d.getVar('UBOOT_DTB_BINARY'):
kernel_pn = d.getVar('PREFERRED_PROVIDER_virtual/kernel')
# Make "bitbake u-boot -cdeploy" deploys the signed u-boot.dtb
d.appendVarFlag('do_deploy', 'depends', ' %s:do_deploy' % kernel_pn)
# kernerl's do_deploy is a litle special, so we can't use
# do_deploy:append, otherwise it would override
# kernel_do_deploy.
d.appendVarFlag('do_deploy', 'prefuncs', ' concat_dtb')
}

View File

@@ -0,0 +1,30 @@
# We have a conf and classes directory, append to BBPATH
BBPATH .= ":${LAYERDIR}"
METATIBASE := '${@os.path.normpath("${LAYERDIR}/")}'
# We have a recipes directory, add to BBFILES
BBFILES += "${LAYERDIR}/recipes*/*/*.bb ${LAYERDIR}/recipes*/*/*.bbappend"
BBFILE_COLLECTIONS += "meta-ti-bsp"
BBFILE_PATTERN_meta-ti-bsp := "^${LAYERDIR}/"
BBFILE_PRIORITY_meta-ti-bsp = "6"
LAYERSERIES_COMPAT_meta-ti-bsp = "scarthgap"
LICENSE_PATH += "${LAYERDIR}/licenses"
LAYERDEPENDS_meta-ti-bsp = " \
core \
meta-arm \
"
SIGGEN_EXCLUDERECIPES_ABISAFE += " \
mesa-pvr \
"
HOSTTOOLS_NONFATAL += "truncate xxd comm"
TI_COMMON_DEPLOY ?= "${TOPDIR}/deploy-ti"
DEPLOY_DIR_IMAGE:ti-soc = "${TI_COMMON_DEPLOY}/images/${MACHINE}"
SDK_DEPLOY:ti-soc = "${TI_COMMON_DEPLOY}/sdk"
PSEUDO_IGNORE_PATHS:append:ti-soc = ",${TI_COMMON_DEPLOY}"

View File

@@ -0,0 +1,33 @@
#@TYPE: Machine
#@NAME: AM335x EVM
#@DESCRIPTION: Machine configuration for the TI AM335x EVM
require conf/machine/include/ti33x.inc
MACHINE_FEATURES += "screen touchscreen"
IMAGE_FSTYPES += "ubifs ubi"
# Normally AM335 boards use ttyS0, but ICE uses ttyS3, so try both
SERIAL_CONSOLES = "115200;ttyS0 115200;ttyS3"
# UBI information. Note that this is board and kernel specific. Changes
# in your kernel port may require changes in these variables. For more
# details about this board please see
# http://processors.wiki.ti.com/index.php/UBIFS_Support
# do ubiattach /dev/ubi_ctrl -m 7 -O 2048
# From dmesg:
# UBI: smallest flash I/O unit: 2048
# UBI: logical eraseblock size: 126976 bytes
# from ubiattach stdout:
# UBI device number 0, total 1988 LEBs
MKUBIFS_ARGS ?= "-F -m 2048 -e 126976 -c 16000"
# do ubiattach /dev/ubi_ctrl -m 7 -O 2048
# from dmesg:
# UBI: smallest flash I/O unit: 2048
# UBI: physical eraseblock size: 131072 bytes (128 KiB)
# UBI: sub-page size: 512
# UBI: VID header offset: 2048 (aligned 2048)
UBINIZE_ARGS ?= "-m 2048 -p 128KiB -s 512 -O 2048"

View File

@@ -0,0 +1,26 @@
#@TYPE: Machine
#@NAME: AM335x HS EVM
#@DESCRIPTION: Machine configuration for the TI AM335x HS EVM
require conf/machine/am335x-evm.conf
UBOOT_MACHINE = ""
# Last config in the list is default
UBOOT_CONFIG ??= "uart mmc"
UBOOT_CONFIG[uart] = "am335x_hs_evm_uart_config"
UBOOT_CONFIG[mmc] = "am335x_hs_evm_config"
UBOOT_ENTRYPOINT = "0x82000000"
UBOOT_LOADADDRESS = "0x82000000"
UBOOT_RD_LOADADDRESS = "0x84000000"
UBOOT_RD_ENTRYPOINT = "0x84000000"
# FIT image for legacy secure devices
KERNEL_CLASSES += " kernel-fitimage-legacyhs"
KERNEL_IMAGETYPES += " fitImage"
# FIT image settings
FITIMAGE_HASH_ALGO = ""
FITIMAGE_DTB_BY_NAME = "1"
FITIMAGE_TEE_BY_NAME = "1"
FITIMAGE_CONF_BY_NAME = "1"

View File

@@ -0,0 +1,32 @@
#@TYPE: Machine
#@NAME: AM437x EVM
#@DESCRIPTION: Machine configuration for the TI AM437x EVM
require conf/machine/include/ti43x.inc
MACHINE_FEATURES += "touchscreen"
IMAGE_FSTYPES += "ubifs ubi"
SERIAL_CONSOLES = "115200;ttyS0"
# UBI information. Note that this is board and kernel specific. Changes
# in your kernel port may require changes in these variables. For more
# details about this board please see
# http://processors.wiki.ti.com/index.php/UBIFS_Support
# do ubiattach /dev/ubi_ctrl -m 11 -O 4096
# From dmesg:
# UBI: smallest flash I/O unit: 4096
# UBI: logical eraseblock size: 253952 bytes
# from ubiattach stdout:
# UBI device number 0, total 994 LEBs
MKUBIFS_ARGS = "-F -m 4096 -e 253952 -c 8000"
# do ubiattach /dev/ubi_ctrl -m 11 -O 4096
# from dmesg:
# UBI: smallest flash I/O unit: 4096
# UBI: physical eraseblock size: 262144 bytes (256 KiB)
# UBI: sub-page size: 4096
# UBI: VID header offset: 4096 (aligned 4096)
UBINIZE_ARGS = "-m 4096 -p 256KiB -s 4096 -O 4096"

View File

@@ -0,0 +1,28 @@
#@TYPE: Machine
#@NAME: AM437x HS EVM
#@DESCRIPTION: Machine configuration for the TI AM437x HS EVM
require conf/machine/am437x-evm.conf
UBOOT_MACHINE = "am43xx_hs_evm_config"
UBOOT_ENTRYPOINT = "0x82000000"
UBOOT_LOADADDRESS = "0x82000000"
UBOOT_RD_LOADADDRESS = "0x84000000"
UBOOT_RD_ENTRYPOINT = "0x84000000"
OPTEEMACHINE = "ti-am43xx"
OPTEEFLAVOR = "am43xx"
EXTRA_IMAGEDEPENDS += "optee-os"
# FIT image for legacy secure devices
KERNEL_CLASSES += " kernel-fitimage-legacyhs"
KERNEL_IMAGETYPES += " fitImage"
# FIT image settings
FITIMAGE_HASH_ALGO = ""
FITIMAGE_PACK_TEE = "1"
FITIMAGE_DTB_BY_NAME = "1"
FITIMAGE_TEE_BY_NAME = "1"
FITIMAGE_CONF_BY_NAME = "1"

View File

@@ -0,0 +1,67 @@
#@TYPE: Machine
#@NAME: AM57xx EVM
#@DESCRIPTION: Machine configuration for the TI AM57xx EVM
require conf/machine/include/am57xx.inc
MACHINE_FEATURES += "touchscreen"
SERIAL_CONSOLES = "115200;ttyS2"
KERNEL_DEVICETREE_PREFIX = " \
am57 \
ov10635 \
ti/am57 \
ti/lcd \
ti/ov10635 \
ti/omap/am57 \
"
KERNEL_DEVICETREE_DTBMERGE = " \
am57xx-evm.dtb \
am57xx-evm-reva3.dtb \
ti/omap/am57xx-evm.dtb \
ti/omap/am57xx-evm-reva3.dtb \
"
KERNEL_DEVICETREE = " \
ti/omap/am571x-idk-touchscreen.dtbo \
ti/omap/am571x-idk.dtb \
ti/omap/am5729-beagleboneai.dtb \
ti/omap/am572x-idk-touchscreen.dtbo \
ti/omap/am572x-idk.dtb \
ti/omap/am574x-idk.dtb \
ti/omap/am57xx-beagle-x15-revb1.dtb \
ti/omap/am57xx-beagle-x15-revc.dtb \
ti/omap/am57xx-beagle-x15.dtb \
ti/omap/am57xx-cl-som-am57x.dtb \
ti/omap/am57xx-evm-reva3.dtb \
ti/omap/am57xx-evm.dtb \
ti/omap/am57xx-evm.dtbo \
ti/omap/am57xx-idk-lcd-osd101t2045.dtbo \
ti/omap/am57xx-idk-lcd-osd101t2587.dtbo \
ti/omap/am57xx-sbc-am57x.dtb \
"
UBOOT_MACHINE = "am57xx_evm_config"
# UBI information. Note that this is board and kernel specific. Changes
# in your kernel port may require changes in these variables. For more
# details about this board please see
# http://processors.wiki.ti.com/index.php/UBIFS_Support
# do ubiattach /dev/ubi_ctrl -m 7 -O 2048
# From dmesg:
# UBI: smallest flash I/O unit: 2048
# UBI: logical eraseblock size: 126976 bytes
# from ubiattach stdout:
# UBI device number 0, total 1988 LEBs
MKUBIFS_ARGS = "-F -m 2048 -e 126976 -c 8192"
# do ubiattach /dev/ubi_ctrl -m 7 -O 2048
# from dmesg:
# UBI: smallest flash I/O unit: 2048
# UBI: physical eraseblock size: 131072 bytes (128 KiB)
# UBI: sub-page size: 512
# UBI: VID header offset: 2048 (aligned 2048)
UBINIZE_ARGS = "-m 2048 -p 128KiB -s 512 -O 2048"

View File

@@ -0,0 +1,29 @@
#@TYPE: Machine
#@NAME: AM57xx HS EVM
#@DESCRIPTION: Machine configuration for the TI AM57xx HS EVM
require conf/machine/am57xx-evm.conf
UBOOT_MACHINE = "am57xx_hs_evm_config"
UBOOT_ENTRYPOINT = "0x82000000"
UBOOT_LOADADDRESS = "0x82000000"
UBOOT_RD_LOADADDRESS = "0x84000000"
UBOOT_RD_ENTRYPOINT = "0x84000000"
OPTEEMACHINE = "ti-am57xx"
OPTEEFLAVOR = "am57xx"
OPTEEPAGER = "y"
EXTRA_IMAGEDEPENDS += "optee-os"
# FIT image for legacy secure devices
KERNEL_CLASSES += " kernel-fitimage-legacyhs"
KERNEL_IMAGETYPES += " fitImage"
# FIT image settings
FITIMAGE_HASH_ALGO = ""
FITIMAGE_PACK_TEE = "1"
FITIMAGE_DTB_BY_NAME = "1"
FITIMAGE_TEE_BY_NAME = "1"
FITIMAGE_CONF_BY_NAME = "1"

View File

@@ -0,0 +1,11 @@
#@TYPE: Machine
#@NAME: AM62A HS-FS EVM (R5F)
#@DESCRIPTION: Machine configuration for the TI AM62A EVM (R5F core)
require conf/machine/include/k3r5.inc
SYSFW_SOC = "am62ax"
SYSFW_CONFIG = "evm"
SYSFW_SUFFIX = "hs-fs"
UBOOT_MACHINE = "am62ax_evm_r5_defconfig"

View File

@@ -0,0 +1,25 @@
#@TYPE: Machine
#@NAME: AM62AXX EVM
#@DESCRIPTION: Machine configuration for the TI AM62AXX EVM
require conf/machine/include/am62axx.inc
KERNEL_DEVICETREE_PREFIX = " \
ti/k3-am62a7 \
ti/k3-am62x-sk \
ti/k3-fpdlink \
ti/k3-v3link \
"
KERNEL_DEVICETREE = " \
ti/k3-am62a7-phyboard-lyra-rdk.dtb \
ti/k3-am62a7-sk.dtb \
ti/k3-am62x-sk-csi2-imx219.dtbo \
ti/k3-am62x-sk-csi2-ov5640.dtbo \
ti/k3-am62x-sk-csi2-tevi-ov5640.dtbo \
ti/k3-am62x-sk-hdmi-audio.dtbo \
"
FIT_CONF_DEFAULT_DTB = "ti/k3-am62a7-sk.dtb"
UBOOT_MACHINE = "am62ax_evm_a53_defconfig"

View File

@@ -0,0 +1,20 @@
#@TYPE: Machine
#@NAME: AM62L EVM
#@DESCRIPTION: Machine configuration for the TI AM62L EVM
require conf/machine/include/am62lxx.inc
require conf/machine/include/ti-extras.inc
IMAGE_FSTYPES += "ubifs ubi"
MKUBIFS_ARGS ?= "-F -m 4096 -e 258048 -c 8500"
UBINIZE_ARGS ?= "-m 4096 -p 256KiB -s 1024 -O 1024"
KERNEL_DEVICETREE_PREFIX = " \
ti/k3-am62l \
"
KERNEL_DEVICETREE = ""
UBOOT_MACHINE = "am62lx_evm_defconfig"

View File

@@ -0,0 +1,12 @@
#@TYPE: Machine
#@NAME: AM62PX EVM (R5F)
#@DESCRIPTION: Machine configuration for the TI AM62Px EVM (R5F core)
require conf/machine/include/k3r5.inc
require conf/machine/include/ti-extras.inc
SYSFW_SOC = "am62px"
SYSFW_CONFIG = "evm"
SYSFW_SUFFIX = "hs-fs"
UBOOT_MACHINE = "am62px_evm_r5_defconfig"

View File

@@ -0,0 +1,35 @@
#@TYPE: Machine
#@NAME: AM62PX EVM
#@DESCRIPTION: Machine configuration for the TI AM62PX EVM
require conf/machine/include/am62pxx.inc
require conf/machine/include/ti-extras.inc
KERNEL_DEVICETREE_PREFIX = " \
ti/k3-am62p5 \
ti/k3-am62x-sk-csi2 \
ti/k3-am62x-sk-hdmi \
ti/k3-am62x-sk-lpm \
ti/k3-v3link \
"
KERNEL_DEVICETREE = " \
ti/k3-am62p5-sk.dtb \
ti/k3-am62x-sk-csi2-imx219.dtbo \
ti/k3-am62x-sk-csi2-ov5640.dtbo \
ti/k3-am62x-sk-csi2-tevi-ov5640.dtbo \
ti/k3-am62x-sk-hdmi-audio.dtbo \
"
FIT_CONF_DEFAULT_DTB = "ti/k3-am62p5-sk.dtb"
UBOOT_MACHINE = "am62px_evm_a53_defconfig"
# UBOOT_CONFIG_FRAGMENTS holds the list of u-boot config fragments which has to be build
# along with the base defconfig mentioned in UBOOT_MACHINE. Refer u-boot-mergeconfig.inc
# under meta-ti-bsp/recipes-bsp/u-boot/ for more details.
# For AM62P tisdk-display-cluster image, splash screen is handled by SBL.
# Hence, disable the A53 based splash screen using the am62x_evm_prune_splashscreen.config fragment present in ti-u-boot tree
UBOOT_CONFIG_FRAGMENTS = "${@oe.utils.conditional('DISPLAY_CLUSTER_ENABLE', '1', 'am62x_evm_prune_splashscreen.config', '', d)}"
UBOOT_CONFIG_FRAGMENTS:bsp-ti-6_1 = "${@oe.utils.conditional('DISPLAY_CLUSTER_ENABLE', '1', 'am62px_evm_prune_splashscreen.config', '', d)}"

View File

@@ -0,0 +1,12 @@
#@TYPE: Machine
#@NAME: AM62XX EVM (R5F)
#@DESCRIPTION: Machine configuration for the TI AM62xx EVM (R5F core)
require conf/machine/include/k3r5.inc
require conf/machine/include/ti-extras.inc
SYSFW_SOC = "am62x"
SYSFW_CONFIG = "evm"
SYSFW_SUFFIX = "hs-fs"
UBOOT_MACHINE = "am62x_evm_r5_defconfig"

View File

@@ -0,0 +1,36 @@
#@TYPE: Machine
#@NAME: AM62XX EVM
#@DESCRIPTION: Machine configuration for the TI AM62XX EVM
require conf/machine/include/am62xx.inc
require conf/machine/include/ti-extras.inc
KERNEL_DEVICETREE_PREFIX = " \
ti/k3-am625 \
ti/k3-am62x-sk \
"
KERNEL_DEVICETREE = " \
ti/k3-am625-beagleplay-csi2-ov5640.dtbo \
ti/k3-am625-beagleplay-csi2-tevi-ov5640.dtbo \
ti/k3-am625-beagleplay.dtb \
ti/k3-am625-phyboard-lyra-1-4-ghz-opp.dtbo \
ti/k3-am625-phyboard-lyra-rdk.dtb \
ti/k3-am625-sk.dtb \
ti/k3-am625-verdin-nonwifi-dahlia.dtb \
ti/k3-am625-verdin-nonwifi-dev.dtb \
ti/k3-am625-verdin-nonwifi-mallow.dtb \
ti/k3-am625-verdin-nonwifi-yavia.dtb \
ti/k3-am625-verdin-wifi-dahlia.dtb \
ti/k3-am625-verdin-wifi-dev.dtb \
ti/k3-am625-verdin-wifi-mallow.dtb \
ti/k3-am625-verdin-wifi-yavia.dtb \
ti/k3-am62x-sk-csi2-imx219.dtbo \
ti/k3-am62x-sk-csi2-ov5640.dtbo \
ti/k3-am62x-sk-csi2-tevi-ov5640.dtbo \
ti/k3-am62x-sk-hdmi-audio.dtbo \
"
FIT_CONF_DEFAULT_DTB = "ti/k3-am625-sk.dtb"
UBOOT_MACHINE = "am62x_evm_a53_defconfig"

View File

@@ -0,0 +1,12 @@
#@TYPE: Machine
#@NAME: AM62XX LP GP EVM (R5F)
#@DESCRIPTION: Machine configuration for the TI AM62xx LP GP EVM (R5F core)
require conf/machine/include/k3r5.inc
require conf/machine/include/ti-extras.inc
SYSFW_SOC = "am62x"
SYSFW_CONFIG = "evm"
SYSFW_SUFFIX = "hs-fs"
UBOOT_MACHINE = "am62x_lpsk_r5_defconfig"

View File

@@ -0,0 +1,28 @@
#@TYPE: Machine
#@NAME: AM62XX LP EVM
#@DESCRIPTION: Machine configuration for the TI AM62XX LP EVM
require conf/machine/include/am62xx.inc
require conf/machine/include/ti-extras.inc
KERNEL_DEVICETREE_PREFIX = " \
ti/k3-am62-lp \
ti/k3-am625-sk \
ti/k3-am62x-sk-dmtimer-pwm \
ti/k3-am62x-sk-eqep \
ti/k3-am62x-sk-hdmi \
ti/k3-am62x-sk-lpm \
ti/k3-am62x-sk-mcan \
ti/k3-am62x-sk-pwm \
"
KERNEL_DEVICETREE = " \
ti/k3-am62-lp-sk-nand.dtbo \
ti/k3-am62-lp-sk.dtb \
ti/k3-am625-sk.dtb \
ti/k3-am62x-sk-hdmi-audio.dtbo \
"
FIT_CONF_DEFAULT_DTB = "ti/k3-am62-lp-sk.dtb"
UBOOT_MACHINE = "am62x_lpsk_a53_defconfig"

View File

@@ -0,0 +1,15 @@
#@TYPE: Machine
#@NAME: AM62XX SIP EVM (R5F)
#@DESCRIPTION: Machine configuration for the TI AM62xx SIP EVM (R5F core)
require conf/machine/include/k3r5.inc
SYSFW_SOC = "am62x"
SYSFW_CONFIG = "evm"
SYSFW_SUFFIX = "hs-fs"
UBOOT_MACHINE = "am62xsip_evm_r5_defconfig"
UBOOT_MACHINE:bsp-ti-6_1 = "am62x_evm_r5_defconfig"
UBOOT_CONFIG_FRAGMENTS:bsp-ti-6_1 = "am62xsip_sk_r5.config"

View File

@@ -0,0 +1,20 @@
#@TYPE: Machine
#@NAME: AM62XX SIP EVM
#@DESCRIPTION: Machine configuration for the TI AM62XX SIP EVM
require conf/machine/include/am62xx.inc
KERNEL_DEVICETREE_PREFIX = " \
ti/k3-am625 \
ti/k3-am62x-sk \
"
KERNEL_DEVICETREE = " \
ti/k3-am625-sk.dtb \
"
FIT_CONF_DEFAULT_DTB = "ti/k3-am625-sk.dtb"
UBOOT_MACHINE = "am62xsip_evm_a53_defconfig"
UBOOT_MACHINE:bsp-ti-6_1 = "am62x_evm_a53_defconfig"

View File

@@ -0,0 +1,11 @@
#@TYPE: Machine
#@NAME: AM64xx EVM (R5F)
#@DESCRIPTION: Machine configuration for the TI AM64xx EVM (R5F core)
require conf/machine/include/k3r5.inc
SYSFW_SOC = "am64x_sr2"
SYSFW_CONFIG = "evm"
SYSFW_SUFFIX = "hs-fs"
UBOOT_MACHINE = "am64x_evm_r5_defconfig"

View File

@@ -0,0 +1,7 @@
#@TYPE: Machine
#@NAME: AM64xx EVM
#@DESCRIPTION: Machine configuration for the TI AM64xx EVM
require conf/machine/include/am64xx.inc
UBOOT_MACHINE = "am64x_evm_a53_defconfig"

View File

@@ -0,0 +1,11 @@
#@TYPE: Machine
#@NAME: AM65xx EVM (R5F)
#@DESCRIPTION: Machine configuration for the TI AM65xx EVM (R5F core)
require conf/machine/include/k3r5.inc
SYSFW_SOC = "am65x_sr2"
SYSFW_CONFIG = "evm"
SYSFW_SUFFIX = "gp"
UBOOT_MACHINE = "am65x_evm_r5_defconfig"

View File

@@ -0,0 +1,9 @@
#@TYPE: Machine
#@NAME: AM65xx EVM
#@DESCRIPTION: Machine configuration for the TI AM65xx EVM
require conf/machine/include/am65xx.inc
UBOOT_MACHINE = "am65x_evm_a53_defconfig"
MACHINE_ESSENTIAL_EXTRA_RRECOMMENDS += "prueth-fw pruhsr-fw prusw-fw"

View File

@@ -0,0 +1,11 @@
#@TYPE: Machine
#@NAME: AM65xx HS EVM (R5F)
#@DESCRIPTION: Machine configuration for the TI AM65xx HS EVM (R5F core)
require conf/machine/include/k3r5.inc
SYSFW_SOC = "am65x_sr2"
SYSFW_CONFIG = "evm"
SYSFW_SUFFIX = "hs"
UBOOT_MACHINE = "am65x_evm_r5_defconfig"

View File

@@ -0,0 +1,7 @@
#@TYPE: Machine
#@NAME: AM65xx HS EVM
#@DESCRIPTION: Machine configuration for the TI AM65xx HS EVM
require conf/machine/include/am65xx.inc
UBOOT_MACHINE = "am65x_evm_a53_defconfig"

View File

@@ -0,0 +1,11 @@
#@TYPE: Machine
#@NAME: AM68 SK (R5F)
#@DESCRIPTION: Machine configuration for the TI AM68 SK (R5F core)
require conf/machine/include/k3r5.inc
SYSFW_SOC = "j721s2"
SYSFW_CONFIG = "evm"
SYSFW_SUFFIX = "hs-fs"
UBOOT_MACHINE = "am68_sk_r5_defconfig"

View File

@@ -0,0 +1,23 @@
#@TYPE: Machine
#@NAME: AM68 SK
#@DESCRIPTION: Machine configuration for the TI AM68 SK
require conf/machine/include/am68.inc
TFA_K3_USART = "0x8"
OPTEE_K3_USART = "0x8"
KERNEL_DEVICETREE_PREFIX = " \
ti/k3-am68-sk \
ti/k3-fpdlink \
ti/k3-v3link \
ti/k3-j721e-sk-csi2-dual-imx219 \
ti/k3-j721e-sk-fpdlink-fusion \
"
KERNEL_DEVICETREE = " \
ti/k3-am68-sk-base-board.dtb \
ti/k3-j721e-sk-csi2-dual-imx219.dtbo \
"
UBOOT_MACHINE = "am68_sk_a72_defconfig"

View File

@@ -0,0 +1,11 @@
#@TYPE: Machine
#@NAME: AM69 SK (R5F)
#@DESCRIPTION: Machine configuration for the TI AM69 SK (R5F core)
require conf/machine/include/k3r5.inc
SYSFW_SOC = "j784s4"
SYSFW_CONFIG = "evm"
SYSFW_SUFFIX = "hs-fs"
UBOOT_MACHINE = "am69_sk_r5_defconfig"

View File

@@ -0,0 +1,24 @@
#@TYPE: Machine
#@NAME: AM69 SK
#@DESCRIPTION: Machine configuration for the TI AM69 SK
require conf/machine/include/am69.inc
TFA_K3_USART = "0x8"
OPTEE_K3_USART = "0x8"
KERNEL_DEVICETREE_PREFIX = " \
ti/k3-am69-sk \
ti/k3-fpdlink \
ti/k3-v3link \
ti/k3-am68-sk-v3link-fusion \
ti/k3-j721e-sk-csi2-dual-imx219 \
ti/k3-j721e-sk-fpdlink-fusion \
"
KERNEL_DEVICETREE = " \
ti/k3-am69-sk.dtb \
ti/k3-j721e-sk-csi2-dual-imx219.dtbo \
"
UBOOT_MACHINE = "am69_sk_a72_defconfig"

View File

@@ -0,0 +1,14 @@
#@TYPE: Machine
#@NAME: BeaglePlay (R5F)
#@DESCRIPTION: Machine configuration for the BeaglePlay (R5F core)
require conf/machine/include/k3r5.inc
SYSFW_SOC = "am62x"
SYSFW_CONFIG = "evm"
SYSFW_SUFFIX = "gp"
UBOOT_MACHINE = "am62x_beagleplay_r5_defconfig"
UBOOT_MACHINE:bsp-ti-6_1 = "am62x_evm_r5_defconfig"
UBOOT_CONFIG_FRAGMENTS:bsp-ti-6_1 = "am625_beagleplay_r5.config"

View File

@@ -0,0 +1,46 @@
#@TYPE: Machine
#@NAME: BeaglePlay (A53)
#@DESCRIPTION: Machine configuration for the BeaglePlay board (A53 core)
require conf/machine/include/k3.inc
require conf/machine/include/mc_k3r5.inc
SOC_FAMILY:append = ":am62xx"
MACHINE_FEATURES += "screen gpu"
SERIAL_CONSOLES = "115200;ttyS2"
require conf/machine/include/mesa-pvr.inc
PREFERRED_PROVIDER_virtual/gpudriver ?= "${BSP_ROGUE_DRIVER_PROVIDER}"
TFA_BOARD = "lite"
TFA_K3_SYSTEM_SUSPEND = "1"
OPTEEMACHINE = "k3-am62x"
UBOOT_MACHINE = "am62x_beagleplay_a53_defconfig"
UBOOT_MACHINE:bsp-ti-6_1 = "am62x_evm_a53_defconfig"
UBOOT_CONFIG_FRAGMENTS:bsp-ti-6_1 = "am625_beagleplay_a53.config"
SPL_BINARY = "tispl.bin_unsigned"
KERNEL_DEVICETREE_PREFIX = " \
ti/k3-am625-beagle \
ti/k3-am625-sk \
ti/k3-am62x-sk \
"
KERNEL_DEVICETREE = " \
ti/k3-am625-beagleplay-csi2-ov5640.dtbo \
ti/k3-am625-beagleplay-csi2-tevi-ov5640.dtbo \
ti/k3-am625-beagleplay.dtb \
ti/k3-am625-sk.dtb \
ti/k3-am62x-sk-csi2-imx219.dtbo \
ti/k3-am62x-sk-csi2-ov5640.dtbo \
ti/k3-am62x-sk-csi2-tevi-ov5640.dtbo \
ti/k3-am62x-sk-hdmi-audio.dtbo \
"
MACHINE_GUI_CLASS = "bigscreen"

View File

@@ -0,0 +1,47 @@
#@TYPE: Machine
#@NAME: DRA7xx EVM
#@DESCRIPTION: Machine configuration for the TI DRA7xx EVM
require conf/machine/include/dra7xx.inc
MACHINE_FEATURES += "touchscreen"
SERIAL_CONSOLES = "115200;ttyS0"
KERNEL_DEVICETREE_PREFIX = " \
dra7 \
ti/dra7 \
ti/lcd \
ti/omap/dra7 \
"
KERNEL_DEVICETREE = " \
ti/omap/dra7-evm.dtb \
ti/omap/dra71-evm.dtb \
ti/omap/dra72-evm.dtb \
ti/omap/dra72-evm-revc.dtb \
ti/omap/dra76-evm.dtb \
"
UBOOT_MACHINE = "dra7xx_evm_config"
# UBI information. Note that this is board and kernel specific. Changes
# in your kernel port may require changes in these variables. For more
# details about this board please see
# http://processors.wiki.ti.com/index.php/UBIFS_Support
# do ubiattach /dev/ubi_ctrl -m 7 -O 2048
# From dmesg:
# UBI: smallest flash I/O unit: 2048
# UBI: logical eraseblock size: 126976 bytes
# from ubiattach stdout:
# UBI device number 0, total 1988 LEBs
MKUBIFS_ARGS = "-F -m 2048 -e 126976 -c 8192"
# do ubiattach /dev/ubi_ctrl -m 7 -O 2048
# from dmesg:
# UBI: smallest flash I/O unit: 2048
# UBI: physical eraseblock size: 131072 bytes (128 KiB)
# UBI: sub-page size: 512
# UBI: VID header offset: 2048 (aligned 2048)
UBINIZE_ARGS = "-m 2048 -p 128KiB -s 512 -O 2048"

View File

@@ -0,0 +1,29 @@
#@TYPE: Machine
#@NAME: DRA7xx HS EVM
#@DESCRIPTION: Machine configuration for the TI DRA7xx HS EVM
require conf/machine/dra7xx-evm.conf
UBOOT_MACHINE = "dra7xx_hs_evm_config"
UBOOT_ENTRYPOINT = "0x82000000"
UBOOT_LOADADDRESS = "0x82000000"
UBOOT_RD_LOADADDRESS = "0x84000000"
UBOOT_RD_ENTRYPOINT = "0x84000000"
OPTEEMACHINE = "ti-dra7xx"
OPTEEFLAVOR = "dra7xx"
OPTEEPAGER = "y"
EXTRA_IMAGEDEPENDS += "optee-os"
# FIT image for legacy secure devices
KERNEL_CLASSES += " kernel-fitimage-legacyhs"
KERNEL_IMAGETYPES += " fitImage"
# FIT image settings
FITIMAGE_HASH_ALGO = ""
FITIMAGE_PACK_TEE = "1"
FITIMAGE_DTB_BY_NAME = "1"
FITIMAGE_TEE_BY_NAME = "1"
FITIMAGE_CONF_BY_NAME = "1"

View File

@@ -0,0 +1,7 @@
require conf/machine/include/omap-a15.inc
SOC_FAMILY:append = ":dra7xx"
SOC_FAMILY:append = ":am57xx"
MACHINE_FEATURES += "pci"
MACHINE_ESSENTIAL_EXTRA_RRECOMMENDS += "prueth-fw prusw-fw pruhsr-fw pruprp-fw"

View File

@@ -0,0 +1,19 @@
require conf/machine/include/k3.inc
require conf/machine/include/mc_k3r5.inc
SOC_FAMILY:append = ":am62axx"
MACHINE_FEATURES += "screen touchscreen"
TFA_K3_SYSTEM_SUSPEND = "1"
# Default tiboot3.bin on AM62A is for HS-FS
IMAGE_BOOT_FILES += "tiboot3-am62ax-hs-fs-evm.bin"
# Since default tiboot3.bin on AM62A is for HS-FS, add a version for HS-SE
IMAGE_BOOT_FILES += "tiboot3-am62ax-hs-evm.bin"
TFA_BOARD = "lite"
OPTEEMACHINE = "k3-am62x"
MACHINE_ESSENTIAL_EXTRA_RRECOMMENDS += "cnm-wave-fw"

View File

@@ -0,0 +1,12 @@
require conf/machine/include/k3.inc
SOC_FAMILY:append = ":am62lxx"
MACHINE_FEATURES += "screen"
# Default tiboot3.bin on AM62L is for HS-FS
IMAGE_BOOT_FILES += "tiboot3-am62lx-hs-fs-evm.bin"
TFA_BOARD = "am62l"
TFA_K3_SYSTEM_SUSPEND = "1"
OPTEEMACHINE = "k3-am62lx"

View File

@@ -0,0 +1,24 @@
require conf/machine/include/k3.inc
require conf/machine/include/mc_k3r5.inc
SOC_FAMILY:append = ":am62pxx"
MACHINE_FEATURES += "screen gpu"
require conf/machine/include/mesa-pvr.inc
PREFERRED_PROVIDER_virtual/gpudriver ?= "${BSP_ROGUE_DRIVER_PROVIDER}"
# Default tiboot3.bin on AM62Px is for HS-FS
IMAGE_BOOT_FILES += "tiboot3-am62px-hs-fs-evm.bin"
TFA_BOARD = "lite"
TFA_K3_SYSTEM_SUSPEND = "1"
OPTEEMACHINE = "k3-am62x"
MACHINE_ESSENTIAL_EXTRA_RRECOMMENDS += "cnm-wave-fw"
SERIAL_CONSOLES = "115200;ttyS2"
# Bitmap image tarball for early splashscreen
IMAGE_BOOT_FILES += "ti_logo_414x97_32bpp.bmp.gz"

View File

@@ -0,0 +1,29 @@
require conf/machine/include/k3.inc
require conf/machine/include/mc_k3r5.inc
SOC_FAMILY:append = ":am62xx"
MACHINE_FEATURES += "screen gpu"
require conf/machine/include/mesa-pvr.inc
PREFERRED_PROVIDER_virtual/gpudriver ?= "${BSP_ROGUE_DRIVER_PROVIDER}"
# Default tiboot3.bin on AM62x is for HS-FS
IMAGE_BOOT_FILES += "tiboot3-am62x-hs-fs-evm.bin"
# Since default tiboot3.bin on AM62x is for HS-FS, add a version for GP
IMAGE_BOOT_FILES += "tiboot3-am62x-gp-evm.bin"
# Since default tiboot3.bin on AM62x is for HS-FS, add a version for HS-SE
IMAGE_BOOT_FILES += "tiboot3-am62x-hs-evm.bin"
# Bitmap image tarball for early splashscreen
IMAGE_BOOT_FILES += "ti_logo_414x97_32bpp.bmp.gz"
TFA_BOARD = "lite"
TFA_K3_SYSTEM_SUSPEND = "1"
OPTEEMACHINE = "k3-am62x"
# Normally AM62 boards use ttyS2, but our Jailhouse inmate may use ttyS3, so try both
SERIAL_CONSOLES = "115200;ttyS2 115200;ttyS3"

View File

@@ -0,0 +1,38 @@
require conf/machine/include/k3.inc
require conf/machine/include/mc_k3r5.inc
SOC_FAMILY:append = ":am64xx"
KERNEL_DEVICETREE_PREFIX = "ti/k3-am642"
KERNEL_DEVICETREE = " \
ti/k3-am642-evm-icssg1-dualemac-mii.dtbo \
ti/k3-am642-evm-icssg1-dualemac.dtbo \
ti/k3-am642-evm-nand.dtbo \
ti/k3-am642-evm.dtb \
ti/k3-am642-hummingboard-t-pcie.dtbo \
ti/k3-am642-hummingboard-t-usb3.dtbo \
ti/k3-am642-hummingboard-t.dtb \
ti/k3-am642-phyboard-electra-gpio-fan.dtbo \
ti/k3-am642-phyboard-electra-pcie-usb2.dtbo \
ti/k3-am642-phyboard-electra-rdk.dtb \
ti/k3-am642-sk.dtb \
ti/k3-am642-tqma64xxl-mbax4xxl.dtb \
"
# Default tiboot3.bin on AM64x is for SR2.0 HS-FS
IMAGE_BOOT_FILES += "tiboot3-am64x_sr2-hs-fs-evm.bin"
# Since default tiboot3.bin on AM64x is for SR2.0 HS-FS, add a version for GP
IMAGE_BOOT_FILES += "tiboot3-am64x-gp-evm.bin"
# Since default tiboot3.bin on AM64x is for SR2.0 HS-FS, add a version for SR2.0 HS-SE
IMAGE_BOOT_FILES += "tiboot3-am64x_sr2-hs-evm.bin"
TFA_BOARD = "lite"
OPTEEMACHINE = "k3-am64x"
MACHINE_ESSENTIAL_EXTRA_RRECOMMENDS += "prueth-fw pruhsr-fw prusw-fw"
TI_WKS_BOOTLOADER_APPEND="console=ttyS2,115200n8"

View File

@@ -0,0 +1,42 @@
require conf/machine/include/k3.inc
require conf/machine/include/mc_k3r5.inc
SOC_FAMILY:append = ":am65xx"
MACHINE_FEATURES += "screen touchscreen gpu"
require conf/machine/include/mesa-pvr.inc
PREFERRED_PROVIDER_virtual/gpudriver ?= "${BSP_SGX_DRIVER_PROVIDER}"
KERNEL_DEVICETREE_PREFIX = "ti/k3-am654"
KERNEL_DEVICETREE = " \
ti/k3-am654-base-board-rocktech-rk101-panel.dtbo \
ti/k3-am654-base-board.dtb \
ti/k3-am654-icssg2.dtbo \
ti/k3-am654-idk.dtbo \
ti/k3-am654-pcie-usb2.dtbo \
ti/k3-am654-pcie-usb3.dtbo \
ti/k3-am6548-iot2050-advanced-m2-bkey-ekey-pcie.dtbo \
ti/k3-am6548-iot2050-advanced-m2-bkey-usb3.dtbo \
ti/k3-am6548-iot2050-advanced-m2.dtb \
ti/k3-am6548-iot2050-advanced-pg2.dtb \
ti/k3-am6548-iot2050-advanced-sm.dtb \
ti/k3-am6548-iot2050-advanced.dtb \
"
IMAGE_BOOT_FILES += "sysfw.itb"
# Default on AM65x is for GP
IMAGE_BOOT_FILES += "tiboot3-am65x_sr2-gp-evm.bin"
IMAGE_BOOT_FILES += "sysfw-am65x_sr2-gp-evm.itb"
# Since default on AM65x is for GP, add a version for HS-SE
IMAGE_BOOT_FILES += "tiboot3-am65x_sr2-hs-evm.bin"
IMAGE_BOOT_FILES += "sysfw-am65x_sr2-hs-evm.itb"
TFA_BOARD = "generic"
OPTEEMACHINE = "k3-am65x"
MACHINE_ESSENTIAL_EXTRA_RRECOMMENDS += "prueth-fw"

View File

@@ -0,0 +1,21 @@
require conf/machine/include/k3.inc
require conf/machine/include/mc_k3r5.inc
SOC_FAMILY:append = ":j721s2"
MACHINE_FEATURES += "screen gpu"
require conf/machine/include/mesa-pvr.inc
PREFERRED_PROVIDER_virtual/gpudriver ?= "${BSP_ROGUE_DRIVER_PROVIDER}"
# Default tiboot3.bin on AM68 is for SR1.0 HS-FS
IMAGE_BOOT_FILES += "tiboot3-j721s2-hs-fs-evm.bin"
# Since default tiboot3.bin on AM68 is for HS-FS, add a version for SR1.0 HS-SE
IMAGE_BOOT_FILES += "tiboot3-j721s2-hs-evm.bin"
TFA_BOARD = "generic"
OPTEEMACHINE = "k3-j784s4"
MACHINE_ESSENTIAL_EXTRA_RRECOMMENDS += "cadence-mhdp-fw cnm-wave-fw"

View File

@@ -0,0 +1,21 @@
require conf/machine/include/k3.inc
require conf/machine/include/mc_k3r5.inc
SOC_FAMILY:append = ":j784s4"
MACHINE_FEATURES += "screen gpu"
require conf/machine/include/mesa-pvr.inc
PREFERRED_PROVIDER_virtual/gpudriver ?= "${BSP_ROGUE_DRIVER_PROVIDER}"
# Default tiboot3.bin on AM69 is for SR1.0 HS-FS
IMAGE_BOOT_FILES += "tiboot3-j784s4-hs-fs-evm.bin"
# Since default tiboot3.bin on AM69 is for HS-FS, add a version for SR1.0 HS-SE
IMAGE_BOOT_FILES += "tiboot3-j784s4-hs-evm.bin"
TFA_BOARD = "j784s4"
OPTEEMACHINE = "k3-j784s4"
MACHINE_ESSENTIAL_EXTRA_RRECOMMENDS += "cadence-mhdp-fw cnm-wave-fw ti-eth-fw"

View File

@@ -0,0 +1,4 @@
require conf/machine/include/omap-a15.inc
SOC_FAMILY:append = ":dra7xx"
MACHINE_FEATURES += "pci"

View File

@@ -0,0 +1,29 @@
require conf/machine/include/k3.inc
require conf/machine/include/mc_k3r5.inc
SOC_FAMILY:append = ":j7200"
# Default tiboot3.bin on J7200 is for GP
IMAGE_BOOT_FILES += "tiboot3-j7200-gp-evm.bin"
# Since default tiboot3.bin on J7200 is for GP, add a version for SR1.0 HS-FS
IMAGE_SR1_HS_FS_FILES = "tiboot3-j7200-hs-fs-evm.bin"
IMAGE_SR1_HS_FS_FILES:bsp-mainline = ""
IMAGE_BOOT_FILES += "${IMAGE_SR1_HS_FS_FILES}"
# Since default tiboot3.bin on J7200 is for GP, add a version for SR1.0 HS-SE
IMAGE_SR1_HS_SE_FILES = "tiboot3-j7200-hs-evm.bin"
IMAGE_SR1_HS_SE_FILES:bsp-mainline = ""
IMAGE_BOOT_FILES += "${IMAGE_SR1_HS_SE_FILES}"
# Since default tiboot3.bin on J7200 is for GP, add a version for SR2.0 HS-FS
IMAGE_BOOT_FILES += "tiboot3-j7200_sr2-hs-fs-evm.bin"
# Since default tiboot3.bin on J721e is for GP, add a version for SR2.0 HS-SE
IMAGE_BOOT_FILES += "tiboot3-j7200_sr2-hs-evm.bin"
TFA_BOARD = "generic"
OPTEEMACHINE = "k3-j721e"
MACHINE_ESSENTIAL_EXTRA_RRECOMMENDS += "ti-eth-fw"

View File

@@ -0,0 +1,43 @@
require conf/machine/include/k3.inc
require conf/machine/include/mc_k3r5.inc
SOC_FAMILY:append = ":j721e"
MACHINE_FEATURES += "screen gpu"
require conf/machine/include/mesa-pvr.inc
PREFERRED_PROVIDER_virtual/gpudriver ?= "${BSP_ROGUE_DRIVER_PROVIDER}"
IMAGE_BOOT_FILES += "sysfw.itb"
# Default on J721e is for GP
IMAGE_BOOT_FILES += "tiboot3-j721e-gp-evm.bin"
IMAGE_BOOT_FILES += "sysfw-j721e-gp-evm.itb"
# Since default on J721e is for GP, add a version for SR1.1 HS-FS
IMAGE_SR1_1_HS_FS_FILES = "tiboot3-j721e_sr1_1-hs-fs-evm.bin sysfw-j721e_sr1_1-hs-fs-evm.itb"
IMAGE_SR1_1_HS_FS_FILES:bsp-mainline = ""
IMAGE_BOOT_FILES += "${IMAGE_SR1_1_HS_FS_FILES}"
# Since default on J721e is for GP, add a version for SR1.1 HS-SE
IMAGE_SR1_1_HS_SE_FILES = "tiboot3-j721e_sr1_1-hs-evm.bin sysfw-j721e_sr1_1-hs-evm.itb"
IMAGE_BOOT_FILES += "${IMAGE_SR1_1_HS_SE_FILES}"
# Since default on J721e is for GP, add a version for SR2.0 HS-FS
IMAGE_SR2_HS_FS_FILES = "tiboot3-j721e_sr2-hs-fs-evm.bin sysfw-j721e_sr2-hs-fs-evm.itb"
IMAGE_BOOT_FILES += "${IMAGE_SR2_HS_FS_FILES}"
# Since default on J721e is for GP, add a version for SR2.0 HS-SE
IMAGE_SR2_HS_SE_FILES = "tiboot3-j721e_sr2-hs-evm.bin sysfw-j721e_sr2-hs-evm.itb"
IMAGE_SR2_HS_SE_FILES:bsp-mainline = ""
IMAGE_BOOT_FILES += "${IMAGE_SR2_HS_SE_FILES}"
TFA_BOARD = "generic"
OPTEEMACHINE = "k3-j721e"
TI_VXE_VXD_DRIVER = "ti-vxe-vxd-driver"
TI_VXE_VXD_DRIVER:bsp-ti-6_6 = ""
TI_VXE_VXD_DRIVER:bsp-ti-6_1 = ""
MACHINE_ESSENTIAL_EXTRA_RRECOMMENDS += "cadence-mhdp-fw vxd-dec-fw ti-eth-fw ${TI_VXE_VXD_DRIVER}"

View File

@@ -0,0 +1,24 @@
require conf/machine/include/k3.inc
require conf/machine/include/mc_k3r5.inc
SOC_FAMILY:append = ":j721s2"
MACHINE_FEATURES += "screen gpu"
require conf/machine/include/mesa-pvr.inc
PREFERRED_PROVIDER_virtual/gpudriver ?= "${BSP_ROGUE_DRIVER_PROVIDER}"
# Default tiboot3.bin on J721S2 is for GP
IMAGE_BOOT_FILES += "tiboot3-j721s2-gp-evm.bin"
# Since default tiboot3.bin on J721S2 is for GP, add a version for SR1.0 HS-FS
IMAGE_BOOT_FILES += "tiboot3-j721s2-hs-fs-evm.bin"
# Since default tiboot3.bin on J721S2 is for GP, add a version for SR1.0 HS-SE
IMAGE_BOOT_FILES += "tiboot3-j721s2-hs-evm.bin"
TFA_BOARD = "generic"
OPTEEMACHINE = "k3-j784s4"
MACHINE_ESSENTIAL_EXTRA_RRECOMMENDS += "cadence-mhdp-fw cnm-wave-fw"

View File

@@ -0,0 +1,27 @@
require conf/machine/include/k3.inc
require conf/machine/include/mc_k3r5.inc
SOC_FAMILY:append = ":j722s"
MACHINE_FEATURES += "screen gpu"
require conf/machine/include/mesa-pvr.inc
PREFERRED_PROVIDER_virtual/gpudriver ?= "${BSP_ROGUE_DRIVER_PROVIDER}"
# Default tiboot3.bin on J722S is for HS-FS
IMAGE_BOOT_FILES += "tiboot3-j722s-hs-fs-evm.bin"
# Since default tiboot3.bin on J722S is for HS-FS, add a version for HS-SE
IMAGE_SR1_HS_SE_FILES = "tiboot3-j722s-hs-evm.bin"
IMAGE_SR1_HS_SE_FILES:bsp-mainline = ""
IMAGE_SR1_HS_SE_FILES:bsp-next = ""
IMAGE_BOOT_FILES += "${IMAGE_SR1_HS_SE_FILES}"
TFA_BOARD = "lite"
TFA_K3_SYSTEM_SUSPEND = "1"
OPTEEMACHINE = "k3-am62x"
MACHINE_ESSENTIAL_EXTRA_RRECOMMENDS += "cnm-wave-fw"
SERIAL_CONSOLES = "115200;ttyS2"

View File

@@ -0,0 +1,21 @@
require conf/machine/include/k3.inc
require conf/machine/include/mc_k3r5.inc
SOC_FAMILY:append = ":j742s2"
MACHINE_FEATURES += "screen gpu"
require conf/machine/include/mesa-pvr.inc
PREFERRED_PROVIDER_virtual/gpudriver ?= "${BSP_ROGUE_DRIVER_PROVIDER}"
# Default tiboot3.bin on J742S2 is for HS-FS
IMAGE_BOOT_FILES += "tiboot3-j742s2-hs-fs-evm.bin"
# Since default tiboot3.bin on J742S2 is for HS-FS, add a version for SR1.0 HS-SE
IMAGE_BOOT_FILES += "tiboot3-j742s2-hs-evm.bin"
TFA_BOARD = "j784s4"
OPTEEMACHINE = "k3-j784s4"
MACHINE_ESSENTIAL_EXTRA_RRECOMMENDS += "cadence-mhdp-fw cnm-wave-fw"

View File

@@ -0,0 +1,24 @@
require conf/machine/include/k3.inc
require conf/machine/include/mc_k3r5.inc
SOC_FAMILY:append = ":j784s4"
MACHINE_FEATURES += "screen gpu"
require conf/machine/include/mesa-pvr.inc
PREFERRED_PROVIDER_virtual/gpudriver ?= "${BSP_ROGUE_DRIVER_PROVIDER}"
# Default tiboot3.bin on J784S4 is for GP
IMAGE_BOOT_FILES += "tiboot3-j784s4-gp-evm.bin"
# Since default tiboot3.bin on J784S4 is for GP, add a version for SR1.0 HS-FS
IMAGE_BOOT_FILES += "tiboot3-j784s4-hs-fs-evm.bin"
# Since default tiboot3.bin on J784S4 is for GP, add a version for SR1.0 HS-SE
IMAGE_BOOT_FILES += "tiboot3-j784s4-hs-evm.bin"
TFA_BOARD = "j784s4"
OPTEEMACHINE = "k3-j784s4"
MACHINE_ESSENTIAL_EXTRA_RRECOMMENDS += "cadence-mhdp-fw cnm-wave-fw ti-eth-fw"

View File

@@ -0,0 +1,58 @@
# TI K3 Aarch64 profile for Cortex-A53/A72 cores
require conf/machine/include/ti-soc.inc
SOC_FAMILY:append = ":k3"
DEFAULTTUNE ?= "aarch64"
require conf/machine/include/arm/armv8a/tune-cortexa72-cortexa53.inc
require conf/machine/include/ti-bsp.inc
KERNEL_IMAGETYPE = "Image"
KERNEL_IMAGETYPES = "Image fitImage"
KERNEL_CLASSES += "kernel-fitimage"
UBOOT_ARCH = "arm"
UBOOT_ENTRYPOINT = "0x81000000"
UBOOT_LOADADDRESS = "0x81000000"
UBOOT_RD_LOADADDRESS = "0x84000000"
UBOOT_RD_ENTRYPOINT = "0x84000000"
UBOOT_DTB_LOADADDRESS = "0x83000000"
UBOOT_DTBO_LOADADDRESS = "0x83080000"
UBOOT_DTBO_OFFSET = "0x00010000"
SPL_BINARY = "tispl.bin"
SPL_BINARYNAME = "tispl.bin"
UBOOT_SUFFIX = "img"
FIT_HASH_ALG ?= "sha512"
FIT_SIGN_ALG ?= "rsa4096"
EXTRA_IMAGEDEPENDS += "virtual/bootloader"
MACHINE_ESSENTIAL_EXTRA_RDEPENDS += "kernel-image-image"
TFA_PLATFORM = "k3"
# Use the expected value of the ubifs filesystem's volume name in the kernel
# and u-boot.
UBI_VOLNAME = "rootfs"
# List common SoC features, may need to add touchscreen for specific machines
MACHINE_FEATURES = "apm usbgadget usbhost vfat ext2 alsa pci"
IMAGE_FSTYPES += "tar.xz wic.xz wic.bmap"
IMAGE_BOOT_FILES ?= "${SPL_BINARYNAME} u-boot.${UBOOT_SUFFIX} tiboot3.bin"
IMAGE_EFI_BOOT_FILES ?= "${IMAGE_BOOT_FILES}"
EFI_PROVIDER ?= "grub-efi"
MACHINE_FEATURES += "efi"
WKS_FILE ?= "${@bb.utils.contains("MACHINE_FEATURES", "efi", "sdimage-2part-efi.wks.in", "sdimage-2part.wks", d)}"
TI_WKS_BOOTLOADER_APPEND ?= ""
do_image_wic[depends] += "virtual/bootloader:do_deploy"
SERIAL_CONSOLES = "115200;ttyS0 115200;ttyS2"

View File

@@ -0,0 +1,27 @@
# TI K3 Armv7 profile for Cortex-R5F cores
require conf/machine/include/ti-soc.inc
SOC_FAMILY:append = ":k3r5"
# The closest of existing tunes for Cortex-R5F
DEFAULTTUNE = "armv7athf"
require conf/machine/include/arm/armv7a/tune-cortexa8.inc
# R5 runs early bootloader and loads SYSFW
# https://git.ti.com/cgit/ti-u-boot/ti-u-boot/tree/doc/board/ti/j721e_evm.rst
# https://git.ti.com/cgit/ti-u-boot/ti-u-boot/tree/doc/board/ti/am62x_sk.rst
# https://git.ti.com/cgit/ti-u-boot/ti-u-boot/tree/doc/board/ti/k3.rst
require conf/machine/include/ti-bsp.inc
PREFERRED_PROVIDER_virtual/kernel = "linux-dummy"
SPL_SUFFIX = "bin"
SPL_BINARY = "tiboot3-${SYSFW_SOC}-${SYSFW_SUFFIX}-${SYSFW_CONFIG}.${SPL_SUFFIX}"
SPL_SYMLINK = "tiboot3.${SPL_SUFFIX}"
UBOOT_SUFFIX = "bin"
UBOOT_BINARY = "u-boot-r5spl.${UBOOT_SUFFIX}"
UBOOT_IMAGE = "u-boot-r5spl-${MAINMACHINE}-${PV}-${PR}.${UBOOT_SUFFIX}"
UBOOT_SYMLINK = "u-boot-r5spl-${MAINMACHINE}.${UBOOT_SUFFIX}"
PACKAGECONFIG:pn-u-boot-ti-staging = ""
PACKAGECONFIG:pn-u-boot-ti-mainline = ""

View File

@@ -0,0 +1,3 @@
BBMULTICONFIG += "k3r5"
do_image[mcdepends] += "mc::k3r5:virtual/bootloader:do_deploy"

View File

@@ -0,0 +1,8 @@
PREFERRED_PROVIDER_virtual/mesa ?= "mesa-pvr"
PREFERRED_PROVIDER_virtual/egl ?= "mesa-pvr"
PREFERRED_PROVIDER_virtual/libgles1 ?= "mesa-pvr"
PREFERRED_PROVIDER_virtual/libgles2 ?= "mesa-pvr"
PREFERRED_PROVIDER_virtual/libgles3 ?= "mesa-pvr"
PREFERRED_PROVIDER_virtual/libgbm ?= "mesa-pvr"
PREFERRED_PROVIDER_virtual/libglx ?= "mesa-pvr"
PREFERRED_PROVIDER_virtual/libgl ?= "mesa-pvr"

View File

@@ -0,0 +1,53 @@
require conf/machine/include/ti-soc.inc
SOC_FAMILY:append = ":omap-a15"
DEFAULTTUNE ?= "armv7athf-neon"
require conf/machine/include/arm/armv7a/tune-cortexa15.inc
require conf/machine/include/ti-bsp.inc
# Graphics providers and variables
require conf/machine/include/mesa-pvr.inc
PREFERRED_PROVIDER_virtual/gpudriver ?= "${BSP_SGX_DRIVER_PROVIDER}"
PVR_DISPLAY_CONTROLLER_ALIAS ?= "omapdrm"
KERNEL_IMAGETYPE = "zImage"
KERNEL_IMAGETYPES = "zImage uImage"
KERNEL_CLASSES += "kernel-uimage"
UBOOT_ARCH = "arm"
UBOOT_ENTRYPOINT = "0x80008000"
UBOOT_LOADADDRESS = "0x80008000"
DEVICETREE_FILE = "${@(d.getVar('KERNEL_DEVICETREE') or "").replace("ti/omap/","").replace("ti/","")}"
# Generate an extlinux.conf file
UBOOT_EXTLINUX = "1"
UBOOT_EXTLINUX_ROOT = "root=PARTUUID=${uuid}"
UBOOT_EXTLINUX_BOOT_FILES = " \
extlinux.conf;extlinux/extlinux.conf \
${KERNEL_IMAGETYPE} \
${DEVICETREE_FILE} \
"
SPL_BINARY = "MLO"
UBOOT_SUFFIX = "img"
EXTRA_IMAGEDEPENDS += "virtual/bootloader"
MACHINE_ESSENTIAL_EXTRA_RDEPENDS += "kernel-image-zimage"
MACHINE_ESSENTIAL_EXTRA_RRECOMMENDS += "vpdma-fw goodix-fw"
# Use the expected value of the ubifs filesystem's volume name in the kernel
# and u-boot.
UBI_VOLNAME = "rootfs"
# List common SoC features, may need to add touchscreen for specific machines
MACHINE_FEATURES = "apm usbgadget usbhost vfat ext2 screen alsa gpu mmip dsp gc320"
IMAGE_FSTYPES += "tar.xz wic.xz wic.bmap"
WKS_FILE ?= "sdimage-2part.wks"
IMAGE_BOOT_FILES ?= "${SPL_BINARY} u-boot.${UBOOT_SUFFIX} ${UBOOT_EXTLINUX_BOOT_FILES} ipc/dra7-ipu1-fw.xem4;dra7-ipu1-fw.xem4"
do_image_wic[depends] += "virtual/bootloader:do_deploy"
do_image_wic[depends] += "ti-ipc-rtos:do_deploy"

View File

@@ -0,0 +1,14 @@
require conf/machine/include/ti-soc.inc
SOC_FAMILY:append = ":omapl138"
require conf/machine/include/arm/armv5/tune-arm926ejs.inc
KERNEL_IMAGETYPE = "zImage"
require conf/machine/include/ti-bsp.inc
EXTRA_IMAGEDEPENDS += "virtual/bootloader"
MACHINE_ESSENTIAL_EXTRA_RDEPENDS += "kernel-image-zimage"
MACHINE_FEATURES = "serial usbhost usbgadget alsa"

View File

@@ -0,0 +1,135 @@
# Support multiple BSP providers
# The main input is TI_PREFERRED_BSP, which translates into default
# preferences for kernel, bootloader and graphics components, as
# well as a dedicated machine override.
# Supported options are: mainline, next, ti-6_12, ti-6_6, ti-6_1
TI_PREFERRED_BSP ??= "ti-6_12"
# Use bsp-* namespace for overrides
MACHINEOVERRIDES =. "bsp-${TI_PREFERRED_BSP}:"
# ==========
# mainline
# latest upstream/mainline kernel, u-boot
# ==========
BSP_KERNEL_PROVIDER:bsp-mainline = "linux-ti-mainline"
BSP_KERNEL_VERSION:bsp-mainline = "%"
BSP_BOOTLOADER_PROVIDER:bsp-mainline = "u-boot-ti-mainline"
BSP_BOOTLOADER_VERSION:bsp-mainline = "%"
# GPU support requires out-of-tree SGX and Rogue drivers not available
# in mainline, usually present in TI staging or derivative like BB.org
MACHINE_FEATURES:remove:bsp-mainline = "gpu"
# GC320 support requires out-of-tree drivers not available in mainline
MACHINE_FEATURES:remove:bsp-mainline = "gc320"
# ==========
# next
# upcoming upstream/mainline kernel, u-boot
# ==========
BSP_KERNEL_PROVIDER:bsp-next = "linux-ti-next"
BSP_KERNEL_VERSION:bsp-next = "%"
BSP_BOOTLOADER_PROVIDER:bsp-next = "u-boot-ti-next"
BSP_BOOTLOADER_VERSION:bsp-next = "%"
# GPU support requires out-of-tree SGX and Rogue drivers not available
# in next, usually present in TI staging or derivative like BB.org
MACHINE_FEATURES:remove:bsp-next = "gpu"
# GC320 support requires out-of-tree drivers not available in next
MACHINE_FEATURES:remove:bsp-next = "gc320"
# ==========
# ti-6_12
# TI staging kernel 6.12, u-boot 2025.01
# ==========
BSP_KERNEL_PROVIDER:bsp-ti-6_12 = "linux-ti-staging"
BSP_KERNEL_VERSION:bsp-ti-6_12 = "6.12%"
BSP_BOOTLOADER_PROVIDER:bsp-ti-6_12 = "u-boot-ti-staging"
BSP_BOOTLOADER_VERSION:bsp-ti-6_12 = "2025.01%"
BSP_SGX_DRIVER_PROVIDER:bsp-ti-6_12 = "ti-sgx-ddk-km"
BSP_SGX_DRIVER_VERSION:bsp-ti-6_12 = "1.17%"
BSP_SGX_UMLIBS_VERSION:bsp-ti-6_12 = "1.17%"
BSP_ROGUE_DRIVER_PROVIDER:bsp-ti-6_12 = "ti-img-rogue-driver"
BSP_ROGUE_DRIVER_VERSION:bsp-ti-6_12 = "24%"
BSP_ROGUE_UMLIBS_VERSION:bsp-ti-6_12 = "24%"
BSP_MESA_PVR_VERSION:bsp-ti-6_12 = "24%"
# ==========
# ti-6_6
# TI staging kernel 6.6, u-boot 2024.04
# ==========
BSP_KERNEL_PROVIDER:bsp-ti-6_6 = "linux-ti-staging"
BSP_KERNEL_VERSION:bsp-ti-6_6 = "6.6.%"
BSP_BOOTLOADER_PROVIDER:bsp-ti-6_6 = "u-boot-ti-staging"
BSP_BOOTLOADER_VERSION:bsp-ti-6_6 = "2024.04%"
BSP_SGX_DRIVER_PROVIDER:bsp-ti-6_6 = "ti-sgx-ddk-km"
BSP_SGX_DRIVER_VERSION:bsp-ti-6_6 = "1.17%"
BSP_SGX_UMLIBS_VERSION:bsp-ti-6_6 = "1.17%"
BSP_ROGUE_DRIVER_PROVIDER:bsp-ti-6_6 = "ti-img-rogue-driver"
BSP_ROGUE_DRIVER_VERSION:bsp-ti-6_6 = "24%"
BSP_ROGUE_UMLIBS_VERSION:bsp-ti-6_6 = "24%"
BSP_MESA_PVR_VERSION:bsp-ti-6_6 = "24%"
# GC320 support requires out-of-tree drivers not yet available in 6.6
MACHINE_FEATURES:remove:bsp-ti-6_6 = "gc320"
# ==========
# ti-6_1
# TI staging kernel 6.1, u-boot 2023.04
# ==========
BSP_KERNEL_PROVIDER:bsp-ti-6_1 = "linux-ti-staging"
BSP_KERNEL_VERSION:bsp-ti-6_1 = "6.1.%"
BSP_BOOTLOADER_PROVIDER:bsp-ti-6_1 = "u-boot-ti-staging"
BSP_BOOTLOADER_VERSION:bsp-ti-6_1 = "2023.04%"
BSP_SGX_DRIVER_PROVIDER:bsp-ti-6_1 = "ti-sgx-ddk-km"
BSP_SGX_DRIVER_VERSION:bsp-ti-6_1 = "1.17%"
BSP_SGX_UMLIBS_VERSION:bsp-ti-6_1 = "1.17%"
BSP_ROGUE_DRIVER_PROVIDER:bsp-ti-6_1 = "ti-img-rogue-driver"
BSP_ROGUE_DRIVER_VERSION:bsp-ti-6_1 = "23%"
BSP_ROGUE_UMLIBS_VERSION:bsp-ti-6_1 = "23%"
BSP_MESA_PVR_VERSION:bsp-ti-6_1 = "22%"
# GC320 support requires out-of-tree drivers not yet available in 6.1
MACHINE_FEATURES:remove:bsp-ti-6_1 = "gc320"
# ==========
# sane fallback defaults
# if specific values are not defined or bsp is set incorrectly
# use default preference TI staging and SW-rendering graphics
# ==========
BSP_KERNEL_PROVIDER ?= "linux-ti-staging"
BSP_KERNEL_VERSION ?= "%"
BSP_BOOTLOADER_PROVIDER ?= "u-boot-ti-staging"
BSP_BOOTLOADER_VERSION ?= "%"
BSP_SGX_DRIVER_PROVIDER ?= ""
BSP_SGX_DRIVER_VERSION ?= ""
BSP_ROGUE_DRIVER_PROVIDER ?= ""
BSP_ROGUE_DRIVER_VERSION ?= ""
BSP_SGX_UMLIBS_VERSION ?= ""
BSP_ROGUE_UMLIBS_VERSION ?= ""
BSP_MESA_PVR_VERSION ?= ""
# ==========
# global preferences
# ==========
PREFERRED_PROVIDER_virtual/kernel ?= "${BSP_KERNEL_PROVIDER}"
PREFERRED_VERSION_${BSP_KERNEL_PROVIDER} ?= "${BSP_KERNEL_VERSION}"
PREFERRED_VERSION_${BSP_KERNEL_PROVIDER}-rt ?= "${BSP_KERNEL_VERSION}"
PREFERRED_PROVIDER_virtual/bootloader ?= "${BSP_BOOTLOADER_PROVIDER}"
PREFERRED_PROVIDER_u-boot ?= "${BSP_BOOTLOADER_PROVIDER}"
PREFERRED_VERSION_${BSP_BOOTLOADER_PROVIDER} ?= "${BSP_BOOTLOADER_VERSION}"
# GPU provider gets set in machine configs, as some machines are headless
# Select default preferred versions here
PREFERRED_VERSION_ti-sgx-ddk-km ?= "${BSP_SGX_DRIVER_VERSION}"
PREFERRED_VERSION_ti-sgx-ddk-um ?= "${BSP_SGX_UMLIBS_VERSION}"
PREFERRED_VERSION_ti-img-rogue-driver ?= "${BSP_ROGUE_DRIVER_VERSION}"
PREFERRED_VERSION_ti-img-rogue-umlibs ?= "${BSP_ROGUE_UMLIBS_VERSION}"
PREFERRED_VERSION_mesa-pvr ?= "${BSP_MESA_PVR_VERSION}"

View File

@@ -0,0 +1,4 @@
# Add TI_EXTRAS to machine overrides so we get access to e.g. 'jailhouse'
TI_EXTRAS ??= ""
MACHINEOVERRIDES =. "${@ '${TI_EXTRAS}:' if d.getVar('TI_EXTRAS').startswith('tie-') else ''}"

View File

@@ -0,0 +1,8 @@
# This is a generic TI SOC family. It is a superset of all other SOCs
# and platforms defined in meta-ti to allow BSP-level overrides.
SOC_FAMILY = "ti-soc"
require conf/machine/include/soc-family.inc
# TI platforms all use devicetrees with overlays
MACHINE_ESSENTIAL_EXTRA_RDEPENDS += "kernel-devicetree"
KERNEL_DTB_OVERLAY_SUPPORT ?= "1"

View File

@@ -0,0 +1,98 @@
require conf/machine/include/ti-soc.inc
SOC_FAMILY:append = ":ti33x"
DEFAULTTUNE ?= "armv7athf-neon"
require conf/machine/include/arm/armv7a/tune-cortexa8.inc
require conf/machine/include/ti-bsp.inc
# Graphics providers and variables
require conf/machine/include/mesa-pvr.inc
PREFERRED_PROVIDER_virtual/gpudriver ?= "${BSP_SGX_DRIVER_PROVIDER}"
PVR_DISPLAY_CONTROLLER_ALIAS ?= "tilcdc"
KERNEL_IMAGETYPE = "zImage"
KERNEL_DEVICETREE_PREFIX = " \
am335x \
ti/omap/am335x \
"
KERNEL_DEVICETREE = " \
ti/omap/am335x-baltos-ir2110.dtb \
ti/omap/am335x-baltos-ir3220.dtb \
ti/omap/am335x-baltos-ir5221.dtb \
ti/omap/am335x-base0033.dtb \
ti/omap/am335x-bone.dtb \
ti/omap/am335x-boneblack-wireless.dtb \
ti/omap/am335x-boneblack.dtb \
ti/omap/am335x-boneblue.dtb \
ti/omap/am335x-bonegreen-wireless.dtb \
ti/omap/am335x-bonegreen.dtb \
ti/omap/am335x-chiliboard.dtb \
ti/omap/am335x-cm-t335.dtb \
ti/omap/am335x-evm.dtb \
ti/omap/am335x-evmsk.dtb \
ti/omap/am335x-guardian.dtb \
ti/omap/am335x-icev2.dtb \
ti/omap/am335x-lxm.dtb \
ti/omap/am335x-moxa-uc-2101.dtb \
ti/omap/am335x-moxa-uc-8100-me-t.dtb \
ti/omap/am335x-myirtech-myd.dtb \
ti/omap/am335x-nano.dtb \
ti/omap/am335x-netcan-plus-1xx.dtb \
ti/omap/am335x-netcom-plus-2xx.dtb \
ti/omap/am335x-netcom-plus-8xx.dtb \
ti/omap/am335x-osd3358-sm-red.dtb \
ti/omap/am335x-pdu001.dtb \
ti/omap/am335x-pepper.dtb \
ti/omap/am335x-phycore-rdk.dtb \
ti/omap/am335x-pocketbeagle.dtb \
ti/omap/am335x-regor-rdk.dtb \
ti/omap/am335x-sancloud-bbe-extended-wifi.dtb \
ti/omap/am335x-sancloud-bbe-lite.dtb \
ti/omap/am335x-sancloud-bbe.dtb \
ti/omap/am335x-sbc-t335.dtb \
ti/omap/am335x-shc.dtb \
ti/omap/am335x-sl50.dtb \
ti/omap/am335x-wega-rdk.dtb \
"
UBOOT_ARCH = "arm"
UBOOT_MACHINE = "am335x_evm_config"
UBOOT_ENTRYPOINT = "0x80008000"
UBOOT_LOADADDRESS = "0x80008000"
DEVICETREE_FILE = "${@(d.getVar('KERNEL_DEVICETREE') or "").replace("ti/omap/","")}"
# Generate an extlinux.conf file
UBOOT_EXTLINUX = "1"
UBOOT_EXTLINUX_ROOT = "root=PARTUUID=${uuid}"
UBOOT_EXTLINUX_KERNEL_ARGS = "rootwait rw earlycon"
UBOOT_EXTLINUX_BOOT_FILES = " \
extlinux.conf;extlinux/extlinux.conf \
${KERNEL_IMAGETYPE} \
${DEVICETREE_FILE} \
"
SPL_BINARY = "MLO"
UBOOT_SUFFIX = "img"
# Use the expected value of the ubifs filesystem's volume name in the kernel
# and u-boot.
UBI_VOLNAME = "rootfs"
EXTRA_IMAGEDEPENDS += "virtual/bootloader"
MACHINE_ESSENTIAL_EXTRA_RDEPENDS += "kernel-image-zimage"
MACHINE_ESSENTIAL_EXTRA_RRECOMMENDS += "amx3-cm3 prueth-fw pruhsr-fw pruprp-fw"
# List common SoC features, may need to add touchscreen for specific machines
MACHINE_FEATURES = "apm usbgadget usbhost vfat ext2 alsa gpu"
IMAGE_FSTYPES += "tar.xz wic.xz wic.bmap"
WKS_FILE ?= "sdimage-2part.wks"
IMAGE_BOOT_FILES ?= "${SPL_BINARY} u-boot.${UBOOT_SUFFIX} ${UBOOT_EXTLINUX_BOOT_FILES}"
do_image_wic[depends] += "virtual/bootloader:do_deploy"

View File

@@ -0,0 +1,70 @@
require conf/machine/include/ti-soc.inc
SOC_FAMILY:append = ":ti43x"
DEFAULTTUNE ?= "armv7athf-neon"
require conf/machine/include/arm/armv7a/tune-cortexa9.inc
require conf/machine/include/ti-bsp.inc
# Graphics providers and variables
require conf/machine/include/mesa-pvr.inc
PREFERRED_PROVIDER_virtual/gpudriver ?= "${BSP_SGX_DRIVER_PROVIDER}"
PVR_DISPLAY_CONTROLLER_ALIAS ?= "omapdrm"
KERNEL_IMAGETYPE = "zImage"
KERNEL_DEVICETREE_PREFIX = " \
am437x \
am43x \
ti/omap/am437x \
ti/omap/am43x \
"
KERNEL_DEVICETREE = " \
ti/omap/am437x-cm-t43.dtb \
ti/omap/am437x-gp-evm.dtb \
ti/omap/am437x-idk-evm.dtb \
ti/omap/am437x-sbc-t43.dtb \
ti/omap/am437x-sk-evm.dtb \
ti/omap/am43x-epos-evm.dtb \
"
KERNEL_DEVICETREE += "${@oe.utils.conditional('ENABLE_TI_UIO_DEVICES', '1', 'am437x-idk-pru-excl-uio.dtb', '', d)}"
UBOOT_ARCH = "arm"
UBOOT_MACHINE = "am43xx_evm_config"
UBOOT_ENTRYPOINT = "0x80008000"
UBOOT_LOADADDRESS = "0x80008000"
DEVICETREE_FILE = "${@(d.getVar('KERNEL_DEVICETREE') or "").replace("ti/omap/","")}"
# Generate an extlinux.conf file
UBOOT_EXTLINUX = "1"
UBOOT_EXTLINUX_ROOT = "root=PARTUUID=${uuid}"
UBOOT_EXTLINUX_BOOT_FILES = " \
extlinux.conf;extlinux/extlinux.conf \
${KERNEL_IMAGETYPE} \
${DEVICETREE_FILE} \
"
SPL_BINARY = "MLO"
UBOOT_SUFFIX = "img"
# Use the expected value of the ubifs filesystem's volume name in the kernel
# and u-boot.
UBI_VOLNAME = "rootfs"
EXTRA_IMAGEDEPENDS += "virtual/bootloader"
MACHINE_ESSENTIAL_EXTRA_RDEPENDS += "kernel-image-zimage"
MACHINE_ESSENTIAL_EXTRA_RRECOMMENDS += "amx3-cm3 prueth-fw pruhsr-fw pruprp-fw"
# List common SoC features, may need to add touchscreen for specific machines
MACHINE_FEATURES = "apm usbgadget usbhost vfat ext2 screen alsa gpu"
IMAGE_FSTYPES += "tar.xz wic.xz wic.bmap"
WKS_FILE ?= "sdimage-2part.wks"
IMAGE_BOOT_FILES ?= "${SPL_BINARY} u-boot.${UBOOT_SUFFIX} ${UBOOT_EXTLINUX_BOOT_FILES}"
do_image_wic[depends] += "virtual/bootloader:do_deploy"

View File

@@ -0,0 +1,11 @@
#@TYPE: Machine
#@NAME: J7200 EVM (R5F)
#@DESCRIPTION: Machine configuration for the TI J7200 EVM (R5F core)
require conf/machine/include/k3r5.inc
SYSFW_SOC = "j7200"
SYSFW_CONFIG = "evm"
SYSFW_SUFFIX = "gp"
UBOOT_MACHINE = "j7200_evm_r5_defconfig"

View File

@@ -0,0 +1,14 @@
#@TYPE: Machine
#@NAME: J7200 EVM
#@DESCRIPTION: Machine configuration for the TI J7200 EVM
require conf/machine/include/j7200.inc
KERNEL_DEVICETREE_PREFIX = "ti/k3-j7200"
KERNEL_DEVICETREE = " \
ti/k3-j7200-common-proc-board.dtb \
ti/k3-j7200-evm-quad-port-eth-exp.dtbo \
"
UBOOT_MACHINE = "j7200_evm_a72_config"

View File

@@ -0,0 +1,11 @@
#@TYPE: Machine
#@NAME: J7200 HS EVM (R5F)
#@DESCRIPTION: Machine configuration for the TI J7200 HS EVM (R5F core)
require conf/machine/include/k3r5.inc
SYSFW_SOC = "j7200_sr2"
SYSFW_CONFIG = "evm"
SYSFW_SUFFIX = "hs"
UBOOT_MACHINE = "j7200_evm_r5_defconfig"

View File

@@ -0,0 +1,7 @@
#@TYPE: Machine
#@NAME: J7200 HS EVM
#@DESCRIPTION: Machine configuration for the TI J7200 HS EVM
require conf/machine/j7200-evm.conf
UBOOT_MACHINE = "j7200_evm_a72_defconfig"

View File

@@ -0,0 +1,11 @@
#@TYPE: Machine
#@NAME: J721e EVM (R5F)
#@DESCRIPTION: Machine configuration for the TI J721e EVM (R5F core)
require conf/machine/include/k3r5.inc
SYSFW_SOC = "j721e"
SYSFW_CONFIG = "evm"
SYSFW_SUFFIX = "gp"
UBOOT_MACHINE = "j721e_evm_r5_defconfig"

View File

@@ -0,0 +1,24 @@
#@TYPE: Machine
#@NAME: J721e EVM
#@DESCRIPTION: Machine configuration for the TI J721e EVM
require conf/machine/include/j721e.inc
KERNEL_DEVICETREE_PREFIX = " \
ti/k3-j721e \
ti/k3-fpdlink \
ti/k3-j7200-evm-mcspi-loopback \
"
KERNEL_DEVICETREE = " \
ti/k3-j721e-beagleboneai64.dtb \
ti/k3-j721e-common-proc-board-infotainment.dtbo \
ti/k3-j721e-common-proc-board.dtb \
ti/k3-j721e-evm-gesi-exp-board.dtbo \
ti/k3-j721e-evm-pcie0-ep.dtbo \
ti/k3-j721e-evm-quad-port-eth-exp.dtbo \
ti/k3-j721e-sk-csi2-dual-imx219.dtbo \
ti/k3-j721e-sk.dtb \
"
UBOOT_MACHINE = "j721e_evm_a72_config"

View File

@@ -0,0 +1,11 @@
#@TYPE: Machine
#@NAME: J721e HS EVM (R5F)
#@DESCRIPTION: Machine configuration for the TI J721e HS EVM (R5F core)
require conf/machine/include/k3r5.inc
SYSFW_SOC = "j721e_sr1_1"
SYSFW_CONFIG = "evm"
SYSFW_SUFFIX = "hs"
UBOOT_MACHINE = "j721e_evm_r5_defconfig"

View File

@@ -0,0 +1,7 @@
#@TYPE: Machine
#@NAME: J721e HS EVM
#@DESCRIPTION: Machine configuration for the TI J721e HS EVM
require conf/machine/j721e-evm.conf
UBOOT_MACHINE = "j721e_evm_a72_defconfig"

View File

@@ -0,0 +1,11 @@
#@TYPE: Machine
#@NAME: J721e SK (R5F)
#@DESCRIPTION: Machine configuration for the TI J721e SK (R5F core)
require conf/machine/include/k3r5.inc
SYSFW_SOC = "j721e"
SYSFW_CONFIG = "evm"
SYSFW_SUFFIX = "gp"
UBOOT_MACHINE = "j721e_sk_r5_defconfig"

View File

@@ -0,0 +1,17 @@
#@TYPE: Machine
#@NAME: J721e SK
#@DESCRIPTION: Machine configuration for the TI J721e SK
require conf/machine/include/j721e.inc
KERNEL_DEVICETREE_PREFIX = " \
ti/k3-j721e-sk \
ti/k3-fpdlink \
"
KERNEL_DEVICETREE = " \
ti/k3-j721e-sk-csi2-dual-imx219.dtbo \
ti/k3-j721e-sk.dtb \
"
UBOOT_MACHINE = "j721e_sk_a72_config"

View File

@@ -0,0 +1,11 @@
#@TYPE: Machine
#@NAME: J721S2 EVM (R5F)
#@DESCRIPTION: Machine configuration for the TI J721S2 EVM (R5F core)
require conf/machine/include/k3r5.inc
SYSFW_SOC = "j721s2"
SYSFW_CONFIG = "evm"
SYSFW_SUFFIX = "gp"
UBOOT_MACHINE = "j721s2_evm_r5_defconfig"

View File

@@ -0,0 +1,25 @@
#@TYPE: Machine
#@NAME: J721S2 EVM
#@DESCRIPTION: Machine configuration for the TI J721S2 EVM
require conf/machine/include/j721s2.inc
TFA_K3_USART = "0x8"
OPTEE_K3_USART = "0x8"
KERNEL_DEVICETREE_PREFIX = " \
ti/k3-j721s2 \
ti/k3-fpdlink \
ti/k3-j7200-evm-mcspi-loopback \
ti/k3-am68-sk \
ti/k3-v3link \
"
KERNEL_DEVICETREE = " \
ti/k3-am68-sk-base-board.dtb \
ti/k3-j721s2-common-proc-board.dtb \
ti/k3-j721s2-evm-gesi-exp-board.dtbo \
ti/k3-j721s2-evm-pcie1-ep.dtbo \
"
UBOOT_MACHINE = "j721s2_evm_a72_defconfig"

View File

@@ -0,0 +1,11 @@
#@TYPE: Machine
#@NAME: J721S2 HS EVM (R5F)
#@DESCRIPTION: Machine configuration for the TI J721S2 HS EVM (R5F core)
require conf/machine/include/k3r5.inc
SYSFW_SOC = "j721s2"
SYSFW_CONFIG = "evm"
SYSFW_SUFFIX = "hs"
UBOOT_MACHINE = "j721s2_evm_r5_defconfig"

View File

@@ -0,0 +1,5 @@
#@TYPE: Machine
#@NAME: J721S2 HS EVM
#@DESCRIPTION: Machine configuration for the TI J721S2 HS EVM
require conf/machine/j721s2-evm.conf

View File

@@ -0,0 +1,11 @@
#@TYPE: Machine
#@NAME: J722S EVM (R5F)
#@DESCRIPTION: Machine configuration for the TI J722S EVM (R5F core)
require conf/machine/include/k3r5.inc
SYSFW_SOC = "j722s"
SYSFW_CONFIG = "evm"
SYSFW_SUFFIX = "hs-fs"
UBOOT_MACHINE = "j722s_evm_r5_defconfig"

View File

@@ -0,0 +1,18 @@
#@TYPE: Machine
#@NAME: J722S EVM
#@DESCRIPTION: Machine configuration for the TI J722S EVM
require conf/machine/include/j722s.inc
KERNEL_DEVICETREE_PREFIX = " \
ti/k3-j722s \
ti/k3-fpdlink \
ti/k3-am625-sk-mcspi-loopback \
ti/k3-v3link \
"
KERNEL_DEVICETREE = " \
ti/k3-j722s-evm.dtb \
"
UBOOT_MACHINE = "j722s_evm_a53_defconfig"

View File

@@ -0,0 +1,11 @@
#@TYPE: Machine
#@NAME: J742S2 EVM (R5F)
#@DESCRIPTION: Machine configuration for the TI J742S2 EVM (R5F core)
require conf/machine/include/k3r5.inc
SYSFW_SOC = "j742s2"
SYSFW_CONFIG = "evm"
SYSFW_SUFFIX = "hs-fs"
UBOOT_MACHINE = "j742s2_evm_r5_defconfig"

View File

@@ -0,0 +1,22 @@
#@TYPE: Machine
#@NAME: J742S2 EVM
#@DESCRIPTION: Machine configuration for the TI J742S2 EVM
require conf/machine/include/j742s2.inc
TFA_K3_USART = "0x8"
OPTEE_K3_USART = "0x8"
KERNEL_DEVICETREE_PREFIX = " \
ti/k3-j742s2 \
ti/k3-j784s4 \
ti/k3-fpdlink \
ti/k3-j7200-evm-mcspi-loopback \
ti/k3-j721s2-evm-csi2-ov5640 \
ti/k3-j721s2-evm-fusion \
ti/k3-v3link \
"
KERNEL_DEVICETREE = ""
UBOOT_MACHINE = "j742s2_evm_a72_defconfig"

View File

@@ -0,0 +1,11 @@
#@TYPE: Machine
#@NAME: J784S4 EVM (R5F)
#@DESCRIPTION: Machine configuration for the TI J784S4 EVM (R5F core)
require conf/machine/include/k3r5.inc
SYSFW_SOC = "j784s4"
SYSFW_CONFIG = "evm"
SYSFW_SUFFIX = "gp"
UBOOT_MACHINE = "j784s4_evm_r5_defconfig"

View File

@@ -0,0 +1,29 @@
#@TYPE: Machine
#@NAME: J784S4 EVM
#@DESCRIPTION: Machine configuration for the TI J784S4 EVM
require conf/machine/include/j784s4.inc
TFA_K3_USART = "0x8"
OPTEE_K3_USART = "0x8"
KERNEL_DEVICETREE_PREFIX = " \
ti/k3-j784s4 \
ti/k3-fpdlink \
ti/k3-j7200-evm-mcspi-loopback \
ti/k3-j721s2-evm-csi2-ov5640 \
ti/k3-j721s2-evm-fusion \
ti/k3-j721s2-evm-ub954 \
ti/k3-am69-sk \
ti/k3-v3link \
"
KERNEL_DEVICETREE = " \
ti/k3-am69-sk.dtb \
ti/k3-j784s4-evm-pcie0-pcie1-ep.dtbo \
ti/k3-j784s4-evm-quad-port-eth-exp1.dtbo \
ti/k3-j784s4-evm-usxgmii-exp1-exp2.dtbo \
ti/k3-j784s4-evm.dtb \
"
UBOOT_MACHINE = "j784s4_evm_a72_defconfig"

View File

@@ -0,0 +1,11 @@
#@TYPE: Machine
#@NAME: J784S4 HS EVM (R5F)
#@DESCRIPTION: Machine configuration for the TI J784S4 HS EVM (R5F core)
require conf/machine/include/k3r5.inc
SYSFW_SOC = "j784s4"
SYSFW_CONFIG = "evm"
SYSFW_SUFFIX = "hs"
UBOOT_MACHINE = "j784s4_evm_r5_defconfig"

View File

@@ -0,0 +1,5 @@
#@TYPE: Machine
#@NAME: J784S4 HS EVM
#@DESCRIPTION: Machine configuration for the TI J784S4 HS EVM
require conf/machine/j784s4-evm.conf

View File

@@ -0,0 +1,26 @@
#@TYPE: Machine
#@NAME: OMAP-L138 LCDK
#@DESCRIPTION: Machine configuration for the TI OMAP-L138 LCDK board
require conf/machine/include/omapl138.inc
UBOOT_MACHINE = "omapl138_lcdk_config"
UBOOT_SUFFIX = "ais"
SPL_BINARY = ""
UBOOT_ENTRYPOINT = "0xc0008000"
UBOOT_LOADADDRESS = "0xc0008000"
IMAGE_FSTYPES += "tar.xz"
SERIAL_CONSOLES = "115200;ttyS2"
KERNEL_DEVICETREE_PREFIX = " \
da850 \
ti/davinci/da850 \
"
KERNEL_DEVICETREE = " \
ti/davinci/da850-evm.dtb \
ti/davinci/da850-lcdk.dtb \
"

View File

@@ -0,0 +1,10 @@
MAINMACHINE := "${MACHINE}"
DEPLOY_DIR_IMAGE:k3r5 = "${TI_COMMON_DEPLOY}/images/${MAINMACHINE}"
MACHINE:append = "-k3r5"
TCLIBC = "baremetal"
TI_TMPDIR_APPEND ?= "-k3r5"
TMPDIR:append = "${TI_TMPDIR_APPEND}"
SDKPKGSUFFIX = "k3r5-nativesdk"

View File

@@ -0,0 +1,63 @@
This license applies to the Imagination D5520 firmware image, pvdec_full_bin.fw.
Copyright (C) 2019 Texas Instruments Incorporated
All rights reserved not granted herein.
Limited License.
Texas Instruments Incorporated grants a world-wide, royalty-free, non-exclusive
license under copyrights and patents it now or hereafter owns or controls to
make, have made, use, import, offer to sell and sell ("Utilize") this software
subject to the terms herein. With respect to the foregoing patent license, such
license is granted solely to the extent that any such patent is necessary to
Utilize the software alone. The patent license shall not apply to any
combinations which include this software, other than combinations with devices
manufactured by or for TI (“TI Devices”). No hardware patent is licensed
hereunder.
Redistributions must preserve existing copyright notices and reproduce this
license (including the above copyright notice and the disclaimer and
(if applicable) source code license limitations below) in the documentation
and/or other materials provided with the distribution
Redistribution and use in binary form, without modification, are permitted
provided that the following conditions are met:
* No reverse engineering, decompilation, or disassembly of this
software is permitted with respect to any software provided in binary
form.
* any redistribution and use are licensed by TI for use only with TI
Devices.
* Nothing shall obligate TI to provide you with source code for the
software licensed and provided to you in object code.
If software source code is provided to you, modification and redistribution of
the source code are permitted provided that the following conditions are met:
* any redistribution and use of the source code, including any
resulting derivative works, are licensed by TI for use only with TI
Devices.
* any redistribution and use of any object code compiled from the
source code and any resulting derivative works, are licensed by TI
for use only with TI Devices.
Neither the name of Texas Instruments Incorporated nor the names of its
suppliers may be used to endorse or promote products derived from this
software without specific prior written permission.
DISCLAIMER.
THIS SOFTWARE IS PROVIDED BY TI AND TI’S LICENSORS "AS IS" AND ANY EXPRESS OR
IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
EVENT SHALL TI AND TI’S LICENSORS BE LIABLE FOR ANY DIRECT, INDIRECT,
INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

View File

@@ -0,0 +1,62 @@
TEXAS INSTRUMENTS TEXT FILE LICENSE
Copyright (c) [earliest year] - [latest year] Texas Instruments Incorporated
All rights reserved not granted herein.
Limited License.
Texas Instruments Incorporated grants a world-wide, royalty-free,
non-exclusive license under copyrights and patents it now or hereafter owns
or controls to make, have made, use, import, offer to sell and sell
("Utilize") this software subject to the terms herein. With respect to the
foregoing patent license, such license is granted solely to the extent that
any such patent is necessary to Utilize the software alone. The patent
license shall not apply to any combinations which include this software,
other than combinations with devices manufactured by or for TI ("TI
Devices"). No hardware patent is licensed hereunder.
Redistributions must preserve existing copyright notices and reproduce this
license (including the above copyright notice and the disclaimer and (if
applicable) source code license limitations below) in the documentation
and/or other materials provided with the distribution
Redistribution and use in binary form, without modification, are permitted
provided that the following conditions are met:
* No reverse engineering, decompilation, or disassembly of this software is
permitted with respect to any software provided in binary form.
* any redistribution and use are licensed by TI for use only with TI
Devices.
* Nothing shall obligate TI to provide you with source code for the software
licensed and provided to you in object code.
If software source code is provided to you, modification and redistribution
of the source code are permitted provided that the following conditions are
met:
* any redistribution and use of the source code, including any resulting
derivative works, are licensed by TI for use only with TI Devices.
* any redistribution and use of any object code compiled from the source
code and any resulting derivative works, are licensed by TI for use only
with TI Devices.
Neither the name of Texas Instruments Incorporated nor the names of its
suppliers may be used to endorse or promote products derived from this
software without specific prior written permission.
DISCLAIMER.
THIS SOFTWARE IS PROVIDED BY TI AND TI'S LICENSORS "AS IS" AND ANY EXPRESS
OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN
NO EVENT SHALL TI AND TI'S LICENSORS BE LIABLE FOR ANY DIRECT, INDIRECT,
INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA,
OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

View File

@@ -0,0 +1,206 @@
Texas Instruments Incorporated
Technology and Software Publicly Available
Software License Agreement
Important - Please read the following license agreement carefully. This is
a legally binding agreement. Do not click "i have read and agree" or use
(as applicable) the Licensed Materials unless: (1) you are authorized to
accept and agree to the terms of this license agreement on behalf of
yourself or your company (as applicable) and (2) you intend to be bound by
the terms of this license agreement on behalf of yourself or your company
(as applicable).
This Software License Agreement ("Agreement") is a legal agreement between
you (either an individual or entity) and Texas Instruments Incorporated
("TI"), 12500 TI Boulevard, Dallas, Texas 75243. The "Licensed Materials"
subject to this Agreement include the software programs (in whole or in
part), that accompany this Agreement and set forth in the applicable
software manifest and which you access "on-line" and/or electronic
documentation (in whole or in part) associated and provided with these
software programs. By installing, copying or otherwise using the Licensed
Materials you agree to abide by the terms of this Agreement. If you choose
not to accept or agree with these terms, do not download or install the
Licensed Materials.
Note Regarding Possible Access to Open Source Software: The Licensed
Materials may be bundled with Open Source Software. "Open Source Software"
means any software licensed under terms requiring that (A) other software
("Proprietary Software") incorporated, combined or distributed with such
software or developed using such software: (i) be disclosed or distributed
in source code form; or (ii) otherwise be licensed on terms inconsistent
with the terms of this Agreement, including but not limited to permitting
use of the Proprietary Software on or with devices other than TI Devices, or
(B) require the owner of Proprietary Software to license any of its patents
to users of the Open Source Software and/or Proprietary Software
incorporated, combined or distributed with such Open Source Software or
developed using such Open Source Software.
You may gain access to Open Source Software, in which case such Open Source
Software will be listed in the applicable software manifest (in whole or in
part, the "Open Source Materials"). Your use of the Open Source Materials
is subject to the separate licensing terms applicable to such Open Source
Materials as specified in the applicable software manifest. For
clarification, this Agreement does not limit your rights under, or grant you
rights that supersede, the license terms of any applicable Open Source
Materials license agreement. If any of the Open Source Materials have been
provided to you in object code only, TI will provide to you or show you
where can access the source code versions of such Open Source Materials if
you contact TI at Texas Instruments Incorporated, 12500 TI Boulevard, Mail
Station 8638, Dallas, Texas 75243, Attention: Contracts Manager. You may
terminate this Agreement in the event you choose not to accept or agree with
the terms in any applicable Open Source Materials license agreement,
provided that such termination occurs within five (5) calendar days of
acceptance of this Agreement and you abide by all applicable license terms
in this Agreement until such termination.
1. License.
a. Source Code License. For the Licensed Materials provided in source code
format, TI hereby grants to you a limited, non-exclusive license to
reproduce, use, and create modified or derivative works of the Licensed
Materials provided to you in source code format and to distribute an
unlimited number of copies of such source code Licensed Materials, or any
derivatives thereof, in any format.
b. Object Code License. For the Licensed Materials provided in object code
format, TI hereby grants to you a limited, non-exclusive license to
reproduce and use the Licensed Materials provided to you in object code
format and to distribute an unlimited number of object or executable copies
of such object code Licensed Materials.
2. Termination. This Agreement is effective until terminated. Without
prejudice to any other rights, TI may terminate your right to use the
Licensed Materials under this Agreement if you fail to comply with the terms
of this Agreement. In such event, you shall destroy all copies of the
Licensed Materials, including all portions and derivatives thereof.
3. Intellectual Property Rights.
a. The Licensed Materials being provided to you hereunder are being made
publicly available by TI, even though they contain copyrighted material of
TI and its licensors, if applicable. In no event may you alter, remove or
destroy any copyright notice included in the Licensed Materials. To the
extent that any of the Licensed Materials are provided in binary or object
code only, you may not unlock, decompile, reverse engineer, disassemble or
otherwise translate such binary or object code to human-perceivable form.
The source code of such reverse engineered code may contain TI trade secret
and other proprietary information. TI reserves all rights not specifically
granted under this Agreement.
b. Certain Licensed Materials may (i) require patent licenses from third
parties claiming patent rights covering implementation of the Licensed
Materials or (ii) be based on industry recognized standards or software
programs published by industry recognized standards bodies and certain third
parties may claim to own patents or copyrights that cover implementation of
those standards. You acknowledge and agree that this Agreement does not
convey a license to any such third party patents and copyrights.
c. YOU ACKNOWLEDGE AND AGREE THAT TI SHALL NOT BE LIABLE FOR AND SHALL NOT
DEFEND OR INDEMNIFY YOU AGAINST ANY THIRD PARTY INFRINGEMENT CLAIM THAT
RELATES TO OR IS BASED ON YOUR MANUFACTURE, USE, OR DISTRIBUTION OF THE
LICENSED MATERIALS OR YOUR MANUFACTURE, USE, OFFER FOR SALE, SALE,
IMPORTATION OR DISTRIBUTION OF YOUR PRODUCTS THAT INCLUDE OR INCORPORATE THE
LICENSED MATERIALS.
d. You acknowledge and agree that you are responsible for any fees or
royalties that may be payable to any third party based on such third party's
interests in the Licensed Materials described in Section 3(b) above (the
"Third Party Payment Obligations"). You agree to indemnify TI against any
Third Party Payment Obligations and will defend any claim, suit or
proceeding brought against TI insofar as such claim, suit or proceeding is
based on your failure to pay any Third Party Payment Obligations.
4. Warranties and Limitations. THE LICENSED MATERIALS ARE PROVIDED "AS IS".
TI AND ITS LICENSORS MAKE NO WARRANTY OR REPRESENTATION, EXPRESS, IMPLIED OR
STATUTORY, INCLUDING ANY IMPLIED WARRANTIES OF MERCHANTIBILITY, FITNESS FOR
A PARTICULAR PURPOSE, LACK OF VIRUSES, ACCURACY OR COMPLETENESS OF
RESPONSES, RESULTS AND LACK OF NEGLIGENCE. TI DISCLAIMS ANY WARRANTY OF
TITLE, QUIET ENJOYMENT, QUIET POSESSION, AND NON-INFRINGEMENT OF ANY THIRD
PARTY INTELLECTUAL PROPERTY RIGHTS WITH REGARD TO THE LICENSED MATERIALS OR
USE OF THOSE MATERIALS.
YOU ACKNOWLEDGE AND AGREE THAT THE LICENSED MATERIALS MAY NOT BE INTENDED
FOR PRODUCTION APPLICATIONS AND MAY CONTAIN IRREGULARITIES AND DEFECTS NOT
FOUND IN PRODUCTION SOFTWARE. FURTHERMORE, YOU ACKNOWLEDGE AND AGREE THAT
THE LICENSED MATERIALS HAVE NOT BEEN TESTED OR CERTIFIED BY ANY GOVERNMENT
AGENCY OR INDUSTRY REGULATORY ORGANIZATION OR ANY OTHER THIRD PARTY
ORGANIZATION. YOU AGREE THAT PRIOR TO USING, INCORPORATING OR DISTRIBUTING
THE LICENSED MATERIALS IN OR WITH ANY COMMERCIAL PRODUCT THAT YOU WILL
THOROUGHLY TEST THE PRODUCT AND THE FUNCTIONALITY OF THE LICENSED MATERIALS
IN OR WITH THAT PRODUCT AND BE SOLELY RESPONSIBLE FOR ANY PROBLEMS OR
FAILURES.
IN NO EVENT SHALL TI OR ITS LICENSORS BE LIABLE FOR ANY SPECIAL, INDIRECT,
INCIDENTAL, PUNITIVE OR CONSEQUENTIAL DAMAGES, HOWEVER CAUSED ON ANY THEORY
OF LIABILITY, ARISING IN ANY WAY OUT OF THIS AGREEMENT, OR YOUR USE OF THE
LICENSED MATERIALS, WHETHER OR NOT TI HAS BEEN ADVISED OF THE POSSIBILITY OF
SUCH DAMAGES. EXCLUDED DAMAGES INCLUDE, BUT ARE NOT LIMITED TO, COST OF
REMOVAL OR REINSTALLATION, OUTSIDE COMPUTER TIME, LABOR COSTS, LOSS OR
CORRUPTION OF DATA, LOSS OF GOODWILL, LOSS OF PROFITS, LOSS OF SAVINGS, OR
LOSS OF USE OR INTERRUPTION OF BUSINESS OR ANY OTHER ECONOMIC LOSS. IN NO
EVENT WILL TI'S AGGREGATE LIABILITY UNDER THIS AGREEMENT OR ARISING OUT OF
YOUR USE OF THE LICENSED MATERIALS EXCEED FIVE HUNDRED U.S. DOLLARS
(US$500).
Because some jurisdictions do not allow the exclusion or limitation of
incidental or consequential damages or limitation on how long an implied
warranty lasts, the above limitations or exclusions may not apply to you.
5. Export Control. The Licensed Materials may be subject to the export or
import regulations of certain countries. You agree to comply with all such
regulations and acknowledge that you have the responsibility to obtain any
licenses or other authorizations that may be required to export, re-export
or import the Licensed Materials.
6. Governing Law, Jurisdiction and Severability. This Agreement will be
governed by and interpreted in accordance with the laws of the State of
Texas, without reference to conflict of laws principles. If for any reason
a court of competent jurisdiction finds any provision of the Agreement to be
unenforceable, that provision will be enforced to the maximum extent
possible to effectuate the intent of the parties and the remainder of the
Agreement shall continue in full force and effect. This Agreement shall not
be governed by the United Nations Convention on Contracts for the
International Sale of Goods, or by the Uniform Computer Information
Transactions Act (UCITA). The parties agree that non-exclusive jurisdiction
for any dispute arising out of or relating to this Agreement lies within the
courts located in the State of Texas. Notwithstanding the foregoing, any
judgment may be enforced in any United States or foreign court, and either
party may seek injunctive relief in any United States or foreign court.
Failure by TI to enforce any provision of this Agreement shall not be deemed
a waiver of future enforcement of that or any other provision in this
Agreement or any other agreement that may be in place between the parties.
7. PRC Provisions. If you are located in the People's Republic of China
("PRC") or if the Licensed Materials will be sent to the PRC, the following
provisions shall apply:
a. Registration Requirements. You shall be solely responsible for
performing all acts and obtaining all approvals that may be required in
connection with this Agreement by the government of the PRC, including but
not limited to registering pursuant to, and otherwise complying with, the
PRC Measures on the Administration of Software Products, Management
Regulations on Technology Import-Export, and Technology Import and Export
Contract Registration Management Rules. Upon receipt of such approvals from
the government authorities, you shall forward evidence of all such approvals
to TI for its records. In the event that you fail to obtain any such
approval or registration, you shall be solely responsible for any and all
losses, damages or costs resulting therefrom, and shall indemnify TI for all
such losses, damages or costs.
b. Governing Language. This Agreement is written and executed in the
English language. If a translation of this Agreement is required for any
purpose, including but not limited to registration of the Agreement pursuant
to any governmental laws, regulations or rules, you shall be solely
responsible for creating such translation. Any translation of this
Agreement into a language other than English is intended solely in order to
comply with such laws or for reference purposes, and the English language
version shall be authoritative and controlling.
8. Entire Agreement. This is the entire agreement between you and TI and
supersedes any prior agreement between the parties related to the subject
matter of this Agreement. No amendment or modification of this Agreement
will be effective unless in writing and signed by a duly authorized
representative of TI. You hereby warrant and represent that you have
obtained all authorizations and other applicable consents required
empowering you to enter into this Agreement.

View File

@@ -0,0 +1,18 @@
SUMMARY = "Cadence MHDP DP bridge firmware"
require recipes-bsp/ti-linux-fw/ti-linux-fw.inc
LICENSE = "BSD-3-Clause | Apache-2.0"
LIC_FILES_CHKSUM = "file://LICENCE.cadence;md5=009f46816f6956cfb75ede13d3e1cee0"
PV = "${CADENCE_MHDP_FW_VERSION}"
PR = "${INC_PR}.0"
COMPATIBLE_MACHINE = "j721e|j721s2|j784s4|j742s2"
TARGET = "mhdp8546.bin"
do_install() {
install -d ${D}${nonarch_base_libdir}/firmware/cadence
install -m 0644 ${S}/cadence/${TARGET} ${D}${nonarch_base_libdir}/firmware/cadence/${TARGET}
}

View File

@@ -0,0 +1,29 @@
DESCRIPTION = "Cortex-M3 binary blob for suspend-resume"
LICENSE = "TI-TSPA"
LIC_FILES_CHKSUM = "file://License.txt;md5=7bdc54a749ab7a7dea999d25d99a41b8"
PV = "1.9.2"
PR = "r0"
SRCREV = "fb484c5e54f2e31cf0a338d2927a06a2870bcc2c"
BRANCH ?= "ti-v4.1.y"
SRC_URI = "git://git.ti.com/git/processor-firmware/ti-amx3-cm3-pm-firmware.git;protocol=https;branch=${BRANCH}"
S = "${WORKDIR}/git"
do_compile() {
make CROSS_COMPILE="${TARGET_PREFIX}" CC="${TARGET_PREFIX}gcc ${TOOLCHAIN_OPTIONS} ${SECURITY_NOPIE_CFLAGS} ${DEBUG_PREFIX_MAP}"
}
do_install() {
install -d ${D}${nonarch_base_libdir}/firmware
install -m 0644 bin/am335x-pm-firmware.elf ${D}${nonarch_base_libdir}/firmware/
install -m 0644 bin/*-scale-data.bin ${D}${nonarch_base_libdir}/firmware/
}
FILES:${PN} += "${nonarch_base_libdir}/firmware"
COMPATIBLE_MACHINE = "(ti-soc)"
TOOLCHAIN = "gcc"

View File

@@ -0,0 +1,29 @@
SUMMARY = "Chips&Media codec firmware files"
require recipes-bsp/ti-linux-fw/ti-linux-fw.inc
inherit update-alternatives
LICENSE = "BSD-3-Clause"
LIC_FILES_CHKSUM = "file://LICENCE.cnm;md5=93b67e6bac7f8fec22b96b8ad0a1a9d0"
PV = "${CNM_WAVE521_FW_VERSION}"
PR = "${INC_PR}.1"
COMPATIBLE_MACHINE = "j721s2|j784s4|j722s|j742s2|am62axx|am62pxx"
TARGET_WAVE521C = "wave521c_k3_codec_fw.bin"
SOURCE_WAVE521C = "wave521c_k3_codec_fw.bin"
ALTERNATIVE_LINK_NAME[wave521c_codec_fw.bin] = "${nonarch_base_libdir}/firmware/${TARGET_WAVE521C}"
ALTERNATIVE_TARGET[wave521c_codec_fw.bin] = "${nonarch_base_libdir}/firmware/cnm/${TARGET_WAVE521C}"
ALTERNATIVE_PRIORITY = "10"
# Set up names for the firmwares
ALTERNATIVE:${PN} = "wave521c_codec_fw.bin"
do_install() {
install -d ${D}${nonarch_base_libdir}/firmware/cnm
install -m 0644 ${S}/cnm/${SOURCE_WAVE521C} ${D}${nonarch_base_libdir}/firmware/cnm/${TARGET_WAVE521C}
}

View File

@@ -0,0 +1,41 @@
SUMMARY = "R5 PSDK CPSW9G Ethernet Switch Firmware"
LICENSE = "TI-TFL"
LIC_FILES_CHKSUM = "file://LICENSE.ti;md5=04ad0a015d4bb63c2b9e7b112debf3db"
PV = "6.2+git"
inherit update-alternatives
PROTOCOL = "https"
BRANCH = "master"
SRCREV = "91f1628507bf7f8716f0bc7cafe88ad7f14c94f5"
SRC_URI = "git://git.ti.com/git/glsdk/ti-eth-fw.git;protocol=${PROTOCOL};branch=${BRANCH}"
S = "${WORKDIR}/git"
CPSW9G_FW_DIR = "${S}/ethfw"
CPSW9G_FW_FILENAME = "app_remoteswitchcfg_server_pdk_mem_map_strip.xer5f"
# make sure that lib/firmware, and all its contents are part of the package
FILES:${PN} += "${nonarch_base_libdir}/firmware"
do_install() {
install -d ${D}${nonarch_base_libdir}/firmware
# Ethernet firmware to be loaded on Main R5 core(needs read permission)
install -m 0644 ${CPSW9G_FW_DIR}/${CPSW9G_FW_FILENAME} ${D}${nonarch_base_libdir}/firmware
}
TARGET_MAIN_R5FSS0_0 = "j7-main-r5f0_0-fw"
ALTERNATIVE:${PN} = "j7-main-r5f0_0-fw"
ALTERNATIVE_LINK_NAME[j7-main-r5f0_0-fw] = "${nonarch_base_libdir}/firmware/${TARGET_MAIN_R5FSS0_0}"
ALTERNATIVE_TARGET[j7-main-r5f0_0-fw] = "${nonarch_base_libdir}/firmware/${CPSW9G_FW_FILENAME}"
ALTERNATIVE_PRIORITY = "17"
INHIBIT_PACKAGE_STRIP = "1"
INHIBIT_PACKAGE_DEBUG_SPLIT = "1"
INSANE_SKIP:${PN} += "arch"
do_compile[noexec] = "1"
do_configure[noexec] = "1"

View File

@@ -0,0 +1,27 @@
DESCRIPTION = "Kernel drivers for the Vivante GC320 chipset found in TI SoCs"
HOMEPAGE = "https://git.ti.com/graphics/ti-gc320-driver"
LICENSE = "MIT | GPL-2.0-only"
LIC_FILES_CHKSUM = "file://../LICENSE;md5=78d9818a51b9a8e9bb89dea418bac297"
inherit module features_check
REQUIRED_MACHINE_FEATURES = "gc320"
# Need to branch out with ${PV} var
BRANCH = "ti-${PV}-k6.12"
SRCREV = "83afddf9dbf6a8458267b4dae21ee35bfb11f3d1"
SRC_URI = "git://git.ti.com/git/graphics/ti-gc320-driver.git;protocol=https;branch=${BRANCH}"
S = "${WORKDIR}/git/src"
EXTRA_OEMAKE += "-f Kbuild AQROOT=${S} KERNEL_DIR=${STAGING_KERNEL_DIR} TOOLCHAIN_PATH=${TOOLCHAIN_PATH} CROSS_COMPILE=${TARGET_PREFIX} ARCH_TYPE=${TARGET_ARCH}"
do_install() {
install -d ${D}/${base_libdir}/modules/${KERNEL_VERSION}/extra
install -m 644 ${S}/galcore.ko ${D}/${base_libdir}/modules/${KERNEL_VERSION}/extra
}
COMPATIBLE_HOST ?= "null"
COMPATIBLE_HOST:ti-soc = "(.*)"

View File

@@ -0,0 +1,19 @@
DESCRIPTION = "Goodix GT9271 config firmware"
require recipes-bsp/ti-linux-fw/ti-linux-fw.inc
LICENSE = "BSD-3-Clause"
LIC_FILES_CHKSUM = "file://LICENCE.Spectrum-GT9271;md5=2a6de6be7af1fe46370c684daf27c852"
PV = "${GOODIX_FW_VERSION}"
PR = "${INC_PR}.0"
COMPATIBLE_MACHINE = "dra7xx"
ORIGIN = "DRA71x-RevA-GT9271_SpecDig_Config.bin"
TARGET = "goodix_9271_cfg.bin"
do_install() {
install -d ${D}${nonarch_base_libdir}/firmware
install -m 0644 ${S}/ti-evm/${ORIGIN} ${D}${nonarch_base_libdir}/firmware/${TARGET}
}

View File

@@ -0,0 +1,39 @@
DESCRIPTION = "Kernel drivers for the PowerVR Rogue GPU found in the TI SoCs"
HOMEPAGE = "http://git.ti.com/graphics/ti-img-rogue-driver"
LICENSE = "MIT | GPL-2.0-only"
LIC_FILES_CHKSUM = "file://README;beginline=14;endline=19;md5=0403c7dea01a2b8232261e805325fac2"
inherit module
PROVIDES = "virtual/gpudriver"
PACKAGE_ARCH = "${MACHINE_ARCH}"
COMPATIBLE_MACHINE = "j721e|j721s2|j784s4|am62xx|am62pxx|j722s"
DEPENDS = "virtual/kernel"
BRANCH = "linuxws/kirkstone/k6.1/${PV}"
SRC_URI = "git://git.ti.com/git/graphics/ti-img-rogue-driver.git;protocol=https;branch=${BRANCH}"
S = "${WORKDIR}/git"
SRCREV = "c838bc06a163abad46dcc193c8fb9a4fb9e2e356"
TARGET_PRODUCT:j721e = "j721e_linux"
TARGET_PRODUCT:j721s2 = "j721s2_linux"
TARGET_PRODUCT:j784s4 = "j784s4_linux"
TARGET_PRODUCT:am62xx = "am62_linux"
TARGET_PRODUCT:am62pxx = "am62p_linux"
TARGET_PRODUCT:j722s = "j722s_linux"
PVR_BUILD = "release"
PVR_WS = "lws-generic"
EXTRA_OEMAKE += 'KERNELDIR="${STAGING_KERNEL_DIR}" BUILD=${PVR_BUILD} PVR_BUILD_DIR=${TARGET_PRODUCT} WINDOW_SYSTEM=${PVR_WS}'
do_install() {
make -C ${STAGING_KERNEL_DIR} M=${B}/binary_${TARGET_PRODUCT}_${PVR_WS}_${PVR_BUILD}/target_aarch64/kbuild INSTALL_MOD_PATH=${D}${root_prefix} PREFIX=${STAGING_DIR_HOST} modules_install
}
RRECOMMENDS:${PN} += "ti-img-rogue-umlibs"

View File

@@ -0,0 +1,40 @@
DESCRIPTION = "Kernel drivers for the PowerVR Rogue GPU found in the TI SoCs"
HOMEPAGE = "http://git.ti.com/graphics/ti-img-rogue-driver"
LICENSE = "MIT | GPL-2.0-only"
LIC_FILES_CHKSUM = "file://README;beginline=14;endline=19;md5=0403c7dea01a2b8232261e805325fac2"
inherit module
PROVIDES = "virtual/gpudriver"
PACKAGE_ARCH = "${MACHINE_ARCH}"
COMPATIBLE_MACHINE = "j721e|j721s2|j784s4|j742s2|am62xx|am62pxx|j722s"
DEPENDS = "virtual/kernel"
BRANCH = "linuxws/scarthgap/k6.12/${PV}"
SRC_URI = "git://git.ti.com/git/graphics/ti-img-rogue-driver.git;protocol=https;branch=${BRANCH}"
S = "${WORKDIR}/git"
SRCREV = "8eaff654a8871118c08cfafe53795f57e3b6b396"
TARGET_PRODUCT:j721e = "j721e_linux"
TARGET_PRODUCT:j721s2 = "j721s2_linux"
TARGET_PRODUCT:j784s4 = "j784s4_linux"
TARGET_PRODUCT:j742s2 = "j784s4_linux"
TARGET_PRODUCT:am62xx = "am62_linux"
TARGET_PRODUCT:am62pxx = "am62p_linux"
TARGET_PRODUCT:j722s = "j722s_linux"
PVR_BUILD = "release"
PVR_WS = "lws-generic"
EXTRA_OEMAKE += 'KERNELDIR="${STAGING_KERNEL_DIR}" BUILD=${PVR_BUILD} PVR_BUILD_DIR=${TARGET_PRODUCT} WINDOW_SYSTEM=${PVR_WS}'
do_install() {
make -C ${STAGING_KERNEL_DIR} M=${B}/binary_${TARGET_PRODUCT}_${PVR_WS}_${PVR_BUILD}/target_aarch64/kbuild INSTALL_MOD_PATH=${D}${root_prefix} PREFIX=${STAGING_DIR_HOST} modules_install
}
RRECOMMENDS:${PN} += "ti-img-rogue-umlibs"

Some files were not shown because too many files have changed in this diff Show More