1 # Common include file that defines AGL's variables for kernel
4 # Can be included directly for kernel.bbclass based recipes that
5 # use their own config fragment merging scheme, or use the
6 # KERNEL_CONFIG_FRAGMENTS variable (e.g. meta-ti, meta-qcom).
8 # Fragments should be added to AGL_KCONFIG_FRAGMENTS as just the
9 # .cfg filename with +=. Appending to AGL_KCONFIG_FRAGMENTS (i.e.
10 # using _append) should only be done for:
11 # - Specific AGL features that set an override in their feature
12 # template, e.g. agl-netboot.
13 # - To add essential configuration for core target machines like
14 # qemu. Note that appending fragments directly to SRC_URI
15 # would work for qemu targets since they use linux-yocto, but
16 # the AGL_KCONFIG_FRAGMENTS mechanism is recommended for
17 # consistency and to preserve the option of disabling all AGL
18 # additions by overriding AGL_KERNEL_SRC.
20 # In general, care shoud be taken to preserve the ability to set
21 # AGL_KCONFIG_FRAGMENTS to "" to disable non-essential (from a build
22 # perspective) AGL additions.
25 FILESEXTRAPATHS_prepend := "${THISDIR}/linux:"
27 # NOTE: AGL_KERNEL_SRC is explicitly intended as an intermediate variable
28 # that can be used as a last resort to completely disable all AGL
29 # additions, modifying or appending it is not recommended.
30 AGL_KERNEL_SRC ?= "${@' '.join(['file://' + x for x in d.getVar('AGL_KCONFIG_FRAGMENTS').split()])}"
32 SRC_URI_append = " ${AGL_KERNEL_SRC}"
34 # For meta-ti and meta-qcom
35 KERNEL_CONFIG_FRAGMENTS ?= "${@' '.join(['${WORKDIR}/' + x for x in d.getVar('AGL_KCONFIG_FRAGMENTS').split()])}"
37 # Extra configuration options for the AGL kernel
38 AGL_KCONFIG_FRAGMENTS += " \
44 AGL_KCONFIG_FRAGMENTS += " ${@bb.utils.contains('AGL_XEN_GUEST_WANTED','1','xen_domu.cfg','',d)}"
46 # Base ALSA support and other sound related configuration
47 AGL_KCONFIG_FRAGMENTS += "sound.cfg"
49 # Enable support for SystemTap
50 AGL_KCONFIG_FRAGMENTS += "${@bb.utils.contains('DISTRO_FEATURES', 'agl-devel', 'systemtap.cfg', '', d)}"
53 # Feature override and qemu specific appends:
56 # Enable required features for the agl-netboot feature
57 AGL_KCONFIG_FRAGMENTS_append_netboot = " \
62 # Add hda audio and required virtio device support for qemu
63 AGL_KCONFIG_FRAGMENTS_append_qemuall = " \
69 # Configuration for using the ARM virt machine (and not versatilepb)
70 AGL_KCONFIG_FRAGMENTS_append_qemuarm = " qemuarm.cfg"
72 # Additional drivers for virtual machines
73 # OVERRIDES save us some c'n'p below ...
74 OVERRIDES_prepend_qemux86 = "virtualmachine:"
75 OVERRIDES_prepend_qemux86-64 = "virtualmachine:"
76 AGL_KCONFIG_FRAGMENTS_append_virtualmachine = " vbox-vmware-sata.cfg"
78 # Extra configuration for using qemux86-64 image on physical hardware
79 AGL_KCONFIG_FRAGMENTS_append_qemux86-64 = " \
80 x86-extra-graphic-devices.cfg \
82 x86-security-tpm.cfg \