1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
|
# Common include file that defines AGL's variables for kernel
# configuration.
#
# Can be included directly for kernel.bbclass based recipes that
# use their own config fragment merging scheme, or use the
# KERNEL_CONFIG_FRAGMENTS variable (e.g. meta-ti, meta-qcom).
#
# Fragments should be added to AGL_KCONFIG_FRAGMENTS as just the
# .cfg filename with +=. Appending to AGL_KCONFIG_FRAGMENTS (i.e.
# using _append) should only be done for:
# - Specific AGL features that set an override in their feature
# template, e.g. agl-netboot.
# - To add essential configuration for core target machines like
# qemu. Note that appending fragments directly to SRC_URI
# would work for qemu targets since they use linux-yocto, but
# the AGL_KCONFIG_FRAGMENTS mechanism is recommended for
# consistency and to preserve the option of disabling all AGL
# additions by overriding AGL_KERNEL_SRC.
#
# In general, care shoud be taken to preserve the ability to set
# AGL_KCONFIG_FRAGMENTS to "" to disable non-essential (from a build
# perspective) AGL additions.
#
FILESEXTRAPATHS:prepend := "${THISDIR}/linux:"
# NOTE: AGL_KERNEL_SRC is explicitly intended as an intermediate variable
# that can be used as a last resort to completely disable all AGL
# additions, modifying or appending it is not recommended.
AGL_KERNEL_SRC ?= "${@' '.join(['file://' + x for x in d.getVar('AGL_KCONFIG_FRAGMENTS').split()])}"
SRC_URI:append = " ${AGL_KERNEL_SRC}"
# For meta-ti and meta-qcom
KERNEL_CONFIG_FRAGMENTS ?= "${@' '.join(['${WORKDIR}/' + x for x in d.getVar('AGL_KCONFIG_FRAGMENTS').split()])}"
# Extra configuration options for the AGL kernel
AGL_KCONFIG_FRAGMENTS += " \
can-bus.cfg \
fanotify.cfg \
overlayfs.cfg \
audit.cfg \
${@bb.utils.contains('DISTRO_FEATURES', 'selinux', 'selinux.cfg', '', d)} \
${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'systemd-required.cfg', '', d)} \
${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'systemd-sandbox.cfg', '', d)} \
lttng.cfg \
"
AGL_KCONFIG_FRAGMENTS += " ${@bb.utils.contains('AGL_XEN_GUEST_WANTED','1','xen_domu.cfg','',d)}"
# Base ALSA support and other sound related configuration
AGL_KCONFIG_FRAGMENTS += "sound.cfg"
# Enable support for SystemTap
AGL_KCONFIG_FRAGMENTS += "${@bb.utils.contains('DISTRO_FEATURES', 'agl-devel', 'systemtap.cfg', '', d)}"
#
# Feature override and qemu specific appends:
#
# Enable required features for the agl-netboot feature
AGL_KCONFIG_FRAGMENTS:append:netboot = " \
nbd.cfg \
ramdisk.cfg \
"
# Add hda audio and required virtio device support for qemu
AGL_KCONFIG_FRAGMENTS:append:qemuall = " \
sound-hda.cfg \
qemu-virtio.cfg \
qemu-drm.cfg \
"
# Configuration for using the ARM virt machine (and not versatilepb)
AGL_KCONFIG_FRAGMENTS:append:qemuarm = " qemuarm.cfg"
# Additional drivers for virtual machines
# OVERRIDES save us some c'n'p below ...
OVERRIDES:prepend:qemux86 = "virtualmachine:"
OVERRIDES:prepend:qemux86-64 = "virtualmachine:"
AGL_KCONFIG_FRAGMENTS:append:virtualmachine = " vbox-vmware-sata.cfg"
# Extra configuration for using qemux86-64 image on physical hardware
AGL_KCONFIG_FRAGMENTS:append:qemux86-64 = " \
x86-extra-graphic-devices.cfg \
x86-net-devices.cfg \
x86-security-tpm.cfg \
x86-usb-devices.cfg \
x86-upsquare.cfg \
"
|