├── .gitignore ├── LICENSE ├── README.md ├── classes ├── cve_search.bbclass ├── uboot-embed-sign.bbclass └── uboot-hab-signature.bbclass ├── conf ├── layer.conf └── machine │ └── wandboard-secure-boot.conf ├── recipes-bsp ├── control-dtb │ ├── files │ │ └── simple-control.dts │ └── simple-control-dt_1.0.bb ├── images │ └── initramfs-evm-init-image.bb ├── initrdscripts │ ├── files │ │ └── init-evm.sh │ └── initramfs-evm-init_1.0.bb └── u-boot │ └── u-boot-secureboot_2017.01.bb ├── recipes-connectivity └── libpcap │ └── libpcap_%.bbappend ├── recipes-core └── images │ └── core-image-evm.bb ├── recipes-devtools ├── e2fsprogs │ ├── e2fsprogs_%.bbappend │ └── files │ │ └── 0001-add-evm-signature-on-file-deployment.patch └── hab-cst │ └── hab-cst-native_2.3.2.bb ├── recipes-kernel └── linux │ ├── linux-fslc-ima │ ├── 0001-crypto-caam-add-red-blobifier.patch │ ├── defconfig │ └── ima-ca-certificate.pem │ └── linux-fslc-ima_4.8.bb ├── recipes-python └── python3 │ ├── python3-certifi_%.bbappend │ ├── python3-dateutil_%.bbappend │ ├── python3-feedformatter_%.bbappend │ ├── python3-flask-login_%.bbappend │ ├── python3-flask-pymongo_%.bbappend │ ├── python3-flask_%.bbappend │ ├── python3-itsdangerous_%.bbappend │ ├── python3-jinja2_%.bbappend │ ├── python3-markupsafe_%.bbappend │ ├── python3-passlib_%.bbappend │ ├── python3-pymisp_%.bbappend │ ├── python3-pymongo_%.bbappend │ ├── python3-pytz_%.bbappend │ ├── python3-pytz_2016.4.bb │ ├── python3-redis_%.bbappend │ ├── python3-requests_%.bbappend │ ├── python3-six_%.bbappend │ ├── python3-tornado_%.bbappend │ ├── python3-werkzeug_%.bbappend │ ├── python3-whoosh_%.bbappend │ └── python3-xlrd_%.bbappend ├── recipes-security ├── cve-search │ ├── cve-search-native_2.1.bb │ └── files │ │ ├── 0001-lib-Config.py-allow-any-ssl-connection.patch │ │ └── fix_ssl_and_unicode_issue.patch └── ima-policy │ ├── appraisal-ima-policy_1.0.bb │ └── files │ └── appraisal-policy.ima ├── recipes-support ├── gperftools │ └── gperftools_%.bbappend ├── mongodb │ └── mongodb_%.bbappend └── redis │ └── redis_%.bbappend └── scripts └── lib └── wic ├── canned-wks └── imx-uboot-ivt-spl.wks └── plugins └── source └── signed-rootfs.py /.gitignore: -------------------------------------------------------------------------------- 1 | *~ 2 | *.pyc 3 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2016 Sven Ebenfeld 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # meta-imx6-secure-boot 2 | OpenEmbedded Layer for Secure-Boot development on NXP i.MX6. 3 | 4 | We combine HAB, FIT Image Verification and IMA/EVM using CAAM Blob in one Layer -------------------------------------------------------------------------------- /classes/cve_search.bbclass: -------------------------------------------------------------------------------- 1 | do_cve_search() { 2 | ${STAGING_BINDIR_NATIVE}/search.py -p ${PN}:${PV} -o json || \ 3 | die "cve-search execution failed." 4 | } 5 | 6 | do_cve_search[depends] = "cve-search-native:do_update_db" 7 | 8 | addtask cve_search before do_build 9 | 10 | EXPORT_FUNCTIONS do_cve_search 11 | 12 | # Install Event-Handler to kill DB-Instances if started 13 | addhandler cvesearch_eventhandler 14 | cvesearch_eventhandler[eventmask] = "bb.event.BuildCompleted bb.cooker.CookerExit" 15 | python cvesearch_eventhandler() { 16 | from bb.event import getName 17 | from bb import data 18 | from oeqa.utils.commands import get_bb_var 19 | import os.path 20 | import os 21 | import signal 22 | mongodbfile = '%s/mongodb.pid' % (data.getVar('TMPDIR', e.data, True)) 23 | if os.path.isfile(mongodbfile): 24 | f=open(mongodbfile) 25 | for line in f: 26 | os.kill(int(line), signal.SIGTERM) 27 | f.close() 28 | os.remove(mongodbfile) 29 | redisdbfile = '%s/redis-server.pid' % (data.getVar('TMPDIR', e.data, True)) 30 | if os.path.isfile(redisdbfile): 31 | f=open(redisdbfile) 32 | for line in f: 33 | os.kill(int(line), signal.SIGTERM) 34 | f.close() 35 | os.remove(redisdbfile) 36 | } 37 | -------------------------------------------------------------------------------- /classes/uboot-embed-sign.bbclass: -------------------------------------------------------------------------------- 1 | # This file is intended for devices that currently do not have FDT support 2 | # enabled in U-Boot but still want to benefit from verified boot feature. 3 | # It is based on the uboot-sign.bbclass from OE-Core Layer but creates a 4 | # default Control-FDT file that is embedded into U-Boot during compilation after 5 | # the Public Key has been appended. 6 | # 7 | # simple-control-dt:do_deploy 8 | # virtual/kernel:do_assemble_fitimage 9 | # u-boot:do_compile 10 | 11 | inherit uboot-sign 12 | 13 | CONTROL_DT_RECIPE ?= "simple-control-dt" 14 | 15 | python () { 16 | uboot_pn = d.getVar('PREFERRED_PROVIDER_u-boot', True) or 'u-boot' 17 | kernel_pn = d.getVar('PREFERRED_PROVIDER_virtual/kernel', True) 18 | if d.getVar('UBOOT_SIGN_ENABLE', True) == '1' and d.getVar('PN', True) == uboot_pn: 19 | # Delete the tasks added by uboot-sign.bbclass as they will not succeed 20 | bb.build.deltask('do_deploy_dtb', d) 21 | bb.build.deltask('do_concat_dtb', d) 22 | 23 | # Depend on the assemble_fitimage task because it adds the public key to 24 | # the DTB in DEPLOY_DIR_IMAGE. 25 | d.appendVarFlag('do_compile', 'depends', ' %s:do_assemble_fitimage' % kernel_pn) 26 | deploydir = d.getVar('DEPLOY_DIR_IMAGE', True) 27 | dtbinary = d.getVar('UBOOT_DTB_BINARY', True) 28 | # Append EXT_DTB parameter to oemake, so that U-Boot can embed the DTB 29 | # during compilation. 30 | d.appendVar('EXTRA_OEMAKE', ' EXT_DTB=\"%s/%s\"' % ( deploydir, dtbinary )) 31 | 32 | if d.getVar('UBOOT_SIGN_ENABLE', True) == '1' and d.getVar('PN', True) == kernel_pn: 33 | # Retrieve the Control-DTB Recipe 34 | controlDt = d.getVar('CONTROL_DT_RECIPE', True) 35 | flags = d.getVarFlag('do_assemble_fitimage', 'depends', True) 36 | # do_assemble_fitimage now depends on CONTROL_DT_RECIPE:do_deploy instead 37 | # of u-boot:do_deploy as this would create a circular dependency. 38 | flags = flags.replace( '%s:do_deploy' % uboot_pn, '%s:do_deploy' % controlDt) 39 | d.setVarFlag('do_assemble_fitimage', 'depends', flags) 40 | image = d.getVar('INITRAMFS_IMAGE', True) 41 | if image: 42 | flags = d.getVarFlag('do_assemble_fitimage_initramfs', 'depends', True) 43 | flags = flags.replace( '%s:do_deploy' % uboot_pn, ' %s:do_deploy' % controlDt) 44 | d.setVarFlag('do_assemble_fitimage_initramfs', 'depends', flags) 45 | } 46 | -------------------------------------------------------------------------------- /classes/uboot-hab-signature.bbclass: -------------------------------------------------------------------------------- 1 | 2 | python __anonymous () { 3 | if d.getVar('UBOOT_SIGN_ENABLE', True): 4 | d.appendVar("DEPENDS", " hab-cst-native") 5 | bb.build.addtask('do_sign_uboot_binaries', 'do_deploy do_install', 'do_compile', d) 6 | } 7 | 8 | 9 | # 10 | # Emit the CSF File 11 | # 12 | # $1 ... .csf filename 13 | # $2 ... SRK Table Binary 14 | # $3 ... CSF Key File 15 | # $4 ... Image Key File 16 | # $5 ... Blocks Parameter 17 | # $6 ... Image File 18 | csf_emit_file() { 19 | cat << EOF >> ${1} 20 | [Header] 21 | Version = 4.1 22 | Hash Algorithm = sha256 23 | Engine = ANY 24 | Engine Configuration = 0 25 | Certificate Format = X509 26 | Signature Format = CMS 27 | [Install SRK] 28 | File = "${2}" 29 | Source index = 0 30 | [Install CSFK] 31 | File = "${3}" 32 | [Authenticate CSF] 33 | [Install Key] 34 | Verification index = 0 35 | Target Index = 2 36 | File= "${4}" 37 | [Authenticate Data] 38 | Verification index = 2 39 | Blocks = ${5} "${6}" 40 | EOF 41 | } 42 | 43 | # 44 | # Assemble csf binary 45 | # 46 | # $1 ... .csf filename 47 | # $2 ... signeable binary filename 48 | # 49 | csf_assemble() { 50 | rm -f ${1} 51 | blocks="$(sed -n 's/HAB Blocks:[\t ]\+\([0-9a-f]\+\)[ ]\+\([0-9a-f]\+\)[ ]\+\([0-9a-f]\+\)/0x\1 0x\2 0x\3/p' ${2}.log)" 52 | csf_emit_file ${1} ${HAB_SIGN_SRKTABLE} \ 53 | ${HAB_SIGN_CSFKEY} \ 54 | ${HAB_SIGN_IMGKEY} \ 55 | "${blocks}" ${2} 56 | 57 | } 58 | 59 | do_sign_uboot_binaries() { 60 | cd ${B} 61 | 62 | csf_assemble command_sequence_${UBOOT_BINARY}.csf ${UBOOT_BINARY} 63 | cst --o ${UBOOT_BINARY}.csf --i command_sequence_${UBOOT_BINARY}.csf 64 | cat ${UBOOT_BINARY} ${UBOOT_BINARY}.csf > ${UBOOT_BINARY}.tmp 65 | rm -f ${UBOOT_BINARY} 66 | mv ${UBOOT_BINARY}.tmp ${UBOOT_BINARY} 67 | if [ -n "${SPL_BINARY}" ]; then 68 | csf_assemble command_sequence_${SPL_BINARY}.csf ${SPL_BINARY} 69 | cst --o ${SPL_BINARY}.csf --i command_sequence_${SPL_BINARY}.csf 70 | cat ${SPL_BINARY} ${SPL_BINARY}.csf > ${SPL_BINARY}.tmp 71 | rm -rf ${SPL_BINARY} 72 | mv ${SPL_BINARY}.tmp ${SPL_BINARY} 73 | fi 74 | } 75 | -------------------------------------------------------------------------------- /conf/layer.conf: -------------------------------------------------------------------------------- 1 | # We have a conf and classes directory, add to BBPATH 2 | BBPATH .= ":${LAYERDIR}" 3 | 4 | # We have recipes-* directories, add to BBFILES 5 | BBFILES += "${LAYERDIR}/recipes-*/*/*.bb ${LAYERDIR}/recipes-*/*/*.bbappend" 6 | 7 | BBFILE_COLLECTIONS += "imx6-secure-boot" 8 | BBFILE_PATTERN_imx6-secure-boot = "^${LAYERDIR}/" 9 | BBFILE_PRIORITY_imx6-secure-boot = "6" 10 | 11 | # This should only be incremented on significant changes that will 12 | # cause compatibility issues with other layers 13 | LAYERVERSION_imx6-secure-boot = "1" 14 | 15 | LAYERDEPENDS_imx6-secure-boot = "core freescale-layer integrity" 16 | -------------------------------------------------------------------------------- /conf/machine/wandboard-secure-boot.conf: -------------------------------------------------------------------------------- 1 | #@TYPE: Machine 2 | #@NAME: Wandboard i.MX6 Wandboard Quad/Dual/Solo 3 | #@SOC: i.MX6Q/DL 4 | #@DESCRIPTION: Machine configuration for i.MX6 Wandboard Quad 5 | #@MAINTAINER: Alfonso Tames 6 | 7 | MACHINEOVERRIDES =. "mx6:mx6dl:mx6q:" 8 | 9 | include conf/machine/include/imx-base.inc 10 | include conf/machine/include/tune-cortexa9.inc 11 | 12 | UBOOT_MAKE_TARGET = "" 13 | UBOOT_SUFFIX = "img" 14 | UBOOT_BINARY = "u-boot-ivt.img" 15 | SPL_BINARY = "SPL" 16 | UBOOT_MACHINE = "wandboard_secure_boot_config" 17 | PREFERRED_PROVIDER_u-boot = "u-boot-secureboot" 18 | PREFERRED_PROVIDER_virtual/bootloader = "u-boot-secureboot" 19 | 20 | PREFERRED_PROVIDER_virtual/kernel ?= "linux-fslc-ima" 21 | KERNEL_DEVICETREE = " \ 22 | imx6dl-wandboard-revb1.dtb \ 23 | imx6dl-wandboard.dtb \ 24 | imx6q-wandboard-revb1.dtb \ 25 | imx6q-wandboard.dtb \ 26 | " 27 | 28 | KERNEL_IMAGETYPE = "fitImage" 29 | KERNEL_CLASSES += "kernel-fitimage uboot-embed-sign" 30 | 31 | MACHINE_FEATURES += "bluetooth pci wifi touchscreen" 32 | 33 | MACHINE_EXTRA_RRECOMMENDS += " \ 34 | bcm4329-nvram-config \ 35 | bcm4330-nvram-config \ 36 | " 37 | 38 | SERIAL_CONSOLE = "115200 ttymxc0" 39 | 40 | MACHINE_ESSENTIAL_EXTRA_RDEPENDS += " \ 41 | kernel-image \ 42 | kernel-devicetree \ 43 | u-boot-secureboot \ 44 | " 45 | 46 | WKS_FILES = "imx-uboot-ivt-spl.wks" 47 | 48 | IMAGE_DEPENDS_wic_append = " virtual/bootloader" 49 | 50 | IMAGE_FSTYPES = "wic.gz" 51 | 52 | UBOOT_SIGN_ENABLE = "1" 53 | UBOOT_SIGN_KEYDIR = "/home/esven/git/thesis/HABv4/cst-2.3.1/keys" 54 | # keys name in keydir (eg. "dev.crt", "dev.key") 55 | UBOOT_SIGN_KEYNAME = "dev" 56 | UBOOT_MKIMAGE_DTCOPTS = "-I dts -O dtb -p 2000" 57 | 58 | HAB_SIGN_CSFKEY = "/home/esven/git/thesis/HABv4/cst-2.3.1/crts/CSF1_1_sha256_4096_65537_v3_usr_crt.pem" 59 | HAB_SIGN_IMGKEY = "/home/esven/git/thesis/HABv4/cst-2.3.1/crts/IMG1_1_sha256_4096_65537_v3_usr_crt.pem" 60 | HAB_SIGN_SRKTABLE = "/home/esven/git/thesis/HABv4/cst-2.3.1/crts/SRK_1_2_3_4_table.bin" 61 | 62 | INITRAMFS_IMAGE = "initramfs-evm-init-image" 63 | UBOOT_RD_LOADADDRESS = "0x12C00000" 64 | UBOOT_RD_ENTRYPOINT = "0x12C00000" 65 | 66 | IMA_EVM_KEY_DIR = "/home/esven/openembedded/krogoth/poky/meta-intel-iot-security/meta-integrity/scripts/keys" 67 | IMA_EVM_PRIVKEY = "${IMA_EVM_KEY_DIR}/privkey_ima.pem" 68 | IMA_EVM_ROOTFS_IVERSION = "/dev/root" 69 | IMA_EVM_ROOT_CA = "/home/esven/openembedded/krogoth/poky/meta-fsl-arm/recipes-kernel/linux/linux-fslc/certificate.pem" 70 | 71 | INHERIT += " ima-evm-rootfs " 72 | -------------------------------------------------------------------------------- /recipes-bsp/control-dtb/files/simple-control.dts: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2016 Sven Ebenfeld 3 | * 4 | * The code contained herein is licensed under the GNU General Public 5 | * License. You may obtain a copy of the GNU General Public License 6 | * Version 2 or later at the following locations: 7 | * 8 | * http://www.opensource.org/licenses/gpl-license.html 9 | * http://www.gnu.org/copyleft/gpl.html 10 | */ 11 | 12 | /dts-v1/; 13 | 14 | / { 15 | model = "Keys"; 16 | compatible = "wand,imx6dl-wandboard", "fsl,imx6dl"; 17 | 18 | signature { 19 | key-dev { 20 | required = "conf"; 21 | algo = "sha256,rsa4096"; 22 | key-name-hint = "my_key"; 23 | }; 24 | }; 25 | }; -------------------------------------------------------------------------------- /recipes-bsp/control-dtb/simple-control-dt_1.0.bb: -------------------------------------------------------------------------------- 1 | DESCRIPTION = "Simple Control DTB for use with U-Boot for Devices without DTB \ 2 | Support just used to support Public Key Attachment" 3 | AUTHOR = "Sven Ebenfeld " 4 | LICENSE = "GPLv2" 5 | LIC_FILES_CHKSUM = "file://${WORKDIR}/simple-control.dts;beginline=1;endline=10;md5=408a8f171048b0a2bf52666927359fdd" 6 | SRC_URI = "file://simple-control.dts" 7 | SRC_URI[md5sum] = "1" 8 | SRC_URI[sha256sum] = "1" 9 | 10 | do_patch[noexec] = "1" 11 | do_configure[noexec] = "1" 12 | do_install[noexec] = "1" 13 | 14 | DEPENDS = "dtc-native" 15 | 16 | inherit nopackages deploy uboot-sign 17 | 18 | do_compile() { 19 | dtc ${UBOOT_MKIMAGE_DTCOPTS} -o ${B}/simple-control.dtb ${WORKDIR}/simple-control.dts 20 | } 21 | 22 | do_deploy() { 23 | mkdir -p ${DEPLOYDIR} 24 | cd ${DEPLOYDIR} 25 | 26 | if [ -f ${DEPLOYDIR}/simple-control.dtb ]; then 27 | rm ${DEPLOYDIR}/simple-control.dtb 28 | fi 29 | install -m 0644 ${B}/simple-control.dtb ${DEPLOYDIR}/${UBOOT_DTB_IMAGE} 30 | rm -f ${UBOOT_DTB_BINARY} ${UBOOT_DTB_SYMLINK} 31 | ln -sf ${UBOOT_DTB_IMAGE} ${UBOOT_DTB_SYMLINK} 32 | ln -sf ${UBOOT_DTB_IMAGE} ${UBOOT_DTB_BINARY} 33 | } 34 | 35 | addtask deploy before do_build after do_compile -------------------------------------------------------------------------------- /recipes-bsp/images/initramfs-evm-init-image.bb: -------------------------------------------------------------------------------- 1 | # Simple initramfs image. Mostly used for live images. 2 | DESCRIPTION = "Small image capable of booting a device with IMA/EVM enabled." 3 | 4 | PACKAGE_INSTALL = "initramfs-evm-init \ 5 | busybox \ 6 | base-passwd \ 7 | ${ROOTFS_BOOTSTRAP_INSTALL} \ 8 | appraisal-ima-policy \ 9 | " 10 | 11 | # Do not pollute the initrd image with rootfs features 12 | IMAGE_FEATURES = "" 13 | 14 | export IMAGE_BASENAME = "initramfs-evm-init-image" 15 | IMAGE_LINGUAS = "" 16 | 17 | LICENSE = "MIT" 18 | 19 | IMAGE_FSTYPES = "${INITRAMFS_FSTYPES}" 20 | inherit core-image 21 | 22 | IMAGE_ROOTFS_SIZE = "8192" 23 | IMAGE_ROOTFS_EXTRA_SPACE = "0" 24 | 25 | BAD_RECOMMENDATIONS += "busybox-syslog" 26 | -------------------------------------------------------------------------------- /recipes-bsp/initrdscripts/files/init-evm.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | PATH=/sbin:/bin:/usr/sbin:/usr/bin 4 | 5 | do_mount_fs() { 6 | grep -q "$1" /proc/filesystems || return 7 | test -d "$2" || mkdir -p "$2" 8 | mount -t "$1" "$1" "$2" 9 | } 10 | 11 | do_mknod() { 12 | test -e "$1" || mknod "$1" "$2" "$3" "$4" 13 | } 14 | 15 | mkdir -p /proc 16 | mount -t proc proc /proc 17 | 18 | do_mount_fs sysfs /sys 19 | do_mount_fs debugfs /sys/kernel/debug 20 | do_mount_fs devtmpfs /dev 21 | do_mount_fs devpts /dev/pts 22 | do_mount_fs tmpfs /dev/shm 23 | do_mount_fs securityfs /sys/kernel/security 24 | 25 | mkdir /rootmount 26 | mount -o defaults,i_version -t ext4 /dev/mmcblk2p1 /rootmount 27 | 28 | echo rng-caam > /sys/devices/virtual/misc/hw_random/rng_current 29 | echo "kernel:evm" > /sys/bus/platform/devices/blob_gen/modifier 30 | if [ ! -f "/rootmount/evm.blob" ]; then 31 | echo "Creating new EVM Key" 32 | dd if=/dev/hwrng of=/sys/bus/platform/devices/blob_gen/payload bs=128 count=1 > /dev/null 33 | dd if=/sys/bus/platform/devices/blob_gen/blob of=/rootmount/evm.blob > /dev/null 34 | sync 35 | fi 36 | echo "Loading EVM Key" 37 | cat /rootmount/evm.blob > /sys/bus/platform/devices/blob_gen/blob 38 | echo "Loading IMA Policy" 39 | cat /etc/ima/ima-policy >> /sys/kernel/security/ima/policy 40 | 41 | mkdir -p /run 42 | mkdir -p /var/run 43 | 44 | do_mknod /dev/console c 5 1 45 | do_mknod /dev/null c 1 3 46 | do_mknod /dev/zero c 1 5 47 | 48 | exec switch_root /rootmount /sbin/init 49 | -------------------------------------------------------------------------------- /recipes-bsp/initrdscripts/initramfs-evm-init_1.0.bb: -------------------------------------------------------------------------------- 1 | SUMMARY = "Extremely basic live image init script for EVM/IMA initialization" 2 | LICENSE = "MIT" 3 | LIC_FILES_CHKSUM = "file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420" 4 | SRC_URI = "file://init-evm.sh" 5 | 6 | S = "${WORKDIR}" 7 | 8 | do_install() { 9 | install -m 0755 ${WORKDIR}/init-evm.sh ${D}/init 10 | } 11 | 12 | inherit allarch 13 | 14 | FILES_${PN} += " /init " 15 | -------------------------------------------------------------------------------- /recipes-bsp/u-boot/u-boot-secureboot_2017.01.bb: -------------------------------------------------------------------------------- 1 | require recipes-bsp/u-boot/u-boot.inc 2 | 3 | DEPENDS += "dtc-native" 4 | 5 | SRCREV = "70badf8e5b99083544b28b8babdc68bd61cbc192" 6 | SRC_URI = "git://github.com/esven/u-boot-imx.git;branch=imx-wandboard-fitimage" 7 | 8 | PV = "v2017.01+git${SRCPV}" 9 | 10 | inherit uboot-embed-sign uboot-hab-signature 11 | -------------------------------------------------------------------------------- /recipes-connectivity/libpcap/libpcap_%.bbappend: -------------------------------------------------------------------------------- 1 | BBCLASSEXTEND = "native" 2 | -------------------------------------------------------------------------------- /recipes-core/images/core-image-evm.bb: -------------------------------------------------------------------------------- 1 | SUMMARY = "A small image just capable of allowing a device to do a verified boot." 2 | 3 | IMAGE_INSTALL = "packagegroup-core-boot \ 4 | ${ROOTFS_PKGMANAGE_BOOTSTRAP} \ 5 | ${CORE_IMAGE_EXTRA_INSTALL} \ 6 | " 7 | 8 | IMAGE_LINGUAS = " " 9 | 10 | LICENSE = "MIT" 11 | 12 | inherit core-image 13 | 14 | IMAGE_ROOTFS_SIZE ?= "8192" 15 | IMAGE_ROOTFS_EXTRA_SPACE_append = "${@bb.utils.contains("DISTRO_FEATURES", "systemd", " + 4096", "" ,d)}" 16 | 17 | copy_initramfs_fitimage() { 18 | cd ${IMAGE_ROOTFS}/boot 19 | 20 | rm ${IMAGE_ROOTFS}/boot/* 21 | RAMFS_FILENAME=$(readlink ${DEPLOY_DIR_IMAGE}/${KERNEL_IMAGETYPE}-${INITRAMFS_IMAGE}-${MACHINE}.bin) 22 | cp ${DEPLOY_DIR_IMAGE}/${RAMFS_FILENAME} . 23 | ln -sf /boot/${RAMFS_FILENAME} ${KERNEL_IMAGETYPE}-${INITRAMFS_IMAGE}-${MACHINE}.bin 24 | ln -sf /boot/${RAMFS_FILENAME} ${KERNEL_IMAGETYPE}-initramfs.bin 25 | } 26 | 27 | ROOTFS_POSTPROCESS_COMMAND += " copy_initramfs_fitimage ; " 28 | 29 | do_rootfs[depends] += " ${INITRAMFS_IMAGE}:do_image_complete" -------------------------------------------------------------------------------- /recipes-devtools/e2fsprogs/e2fsprogs_%.bbappend: -------------------------------------------------------------------------------- 1 | FILESEXTRAPATHS_append_class-native := ":${THISDIR}/files" 2 | 3 | SRC_URI_append_class-native = " file://0001-add-evm-signature-on-file-deployment.patch" 4 | 5 | PACKAGECONFIG_append_class-native = "openssl" 6 | PACKAGECONFIG[openssl] = "--with-openssl=yes,,openssl" -------------------------------------------------------------------------------- /recipes-devtools/e2fsprogs/files/0001-add-evm-signature-on-file-deployment.patch: -------------------------------------------------------------------------------- 1 | From 97302cb49d31665a287bd33f67d00c4dc2a3d5e7 Mon Sep 17 00:00:00 2001 2 | From: Sven Ebenfeld 3 | Date: Thu, 22 Dec 2016 19:36:32 +0100 4 | Subject: [PATCH] add evm signature on file deployment 5 | 6 | Signed-off-by: Sven Ebenfeld 7 | --- 8 | configure.ac | 11 ++ 9 | debugfs/Makefile.in | 7 +- 10 | misc/Makefile.in | 6 +- 11 | misc/create_inode.c | 287 ++++++++++++++++++++++++++++++++++++++++++++++++++-- 12 | misc/create_inode.h | 2 +- 13 | misc/mke2fs.c | 15 ++- 14 | 6 files changed, 314 insertions(+), 14 deletions(-) 15 | 16 | diff --git a/configure.ac b/configure.ac 17 | index ceceeb6..f790215 100644 18 | --- a/configure.ac 19 | +++ b/configure.ac 20 | @@ -910,6 +910,17 @@ AC_CHECK_HEADERS(net/if.h,,, 21 | #include 22 | #endif 23 | ]]) 24 | + 25 | +AC_ARG_WITH([openssl], AS_HELP_STRING([--with-openssl], [Build with OpenSSL support for EVM Signature Creation]), [], [with_openssl=no]) 26 | +if test "x$with_openssl" = "xyes"; then 27 | + PKG_CHECK_MODULES(OPENSSL, [ openssl >= 0.9.8 ]) 28 | + AC_SUBST(OPENSSL_CFLAGS) 29 | + AC_SUBST(OPENSSL_LIBS) 30 | + AC_CHECK_HEADER(unistd.h) 31 | + AC_CHECK_HEADERS(openssl/conf.h) 32 | + AC_DEFINE([HAVE_OPENSSL], [1], [Use OpenSSL]) 33 | +fi 34 | + 35 | AC_FUNC_VPRINTF 36 | dnl Check to see if dirent has member d_reclen. On cygwin those d_reclen 37 | dnl is not decleared. 38 | diff --git a/debugfs/Makefile.in b/debugfs/Makefile.in 39 | index c22b8c0..c8122a2 100644 40 | --- a/debugfs/Makefile.in 41 | +++ b/debugfs/Makefile.in 42 | @@ -51,6 +51,9 @@ STATIC_DEPLIBS= $(STATIC_LIBEXT2FS) $(DEPSTATIC_LIBSS) \ 43 | LOCAL_CFLAGS = -I$(srcdir)/../e2fsck -DDEBUGFS 44 | DEPEND_CFLAGS = -I$(srcdir) 45 | 46 | +OPENSSL_CFLAGS = @OPENSSL_CFLAGS@ 47 | +OPENSSL_LIBS = @OPENSSL_LIBS@ 48 | + 49 | .c.o: 50 | $(E) " CC $<" 51 | $(Q) $(CC) -c $(ALL_CFLAGS) $< -o $@ 52 | @@ -61,7 +64,7 @@ all:: $(PROGS) $(MANPAGES) 53 | 54 | debugfs: $(DEBUG_OBJS) $(DEPLIBS) 55 | $(E) " LD $@" 56 | - $(Q) $(CC) $(ALL_LDFLAGS) -o debugfs $(DEBUG_OBJS) $(LIBS) 57 | + $(Q) $(CC) $(ALL_LDFLAGS) -o debugfs $(DEBUG_OBJS) $(LIBS) $(OPENSSL_LIBS) 58 | 59 | debugfs.static: $(DEBUG_OBJS) $(STATIC_DEPLIBS) 60 | $(E) " LD $@" 61 | @@ -104,7 +107,7 @@ revoke.o: $(srcdir)/../e2fsck/revoke.c 62 | 63 | create_inode.o: $(srcdir)/../misc/create_inode.c 64 | $(E) " CC $@" 65 | - $(Q) $(CC) -c $(ALL_CFLAGS) -I$(srcdir) \ 66 | + $(Q) $(CC) -c $(ALL_CFLAGS) $(OPENSSL_CFLAGS) -I$(srcdir) \ 67 | $(srcdir)/../misc/create_inode.c -o $@ 68 | 69 | debugfs.8: $(DEP_SUBSTITUTE) $(srcdir)/debugfs.8.in 70 | diff --git a/misc/Makefile.in b/misc/Makefile.in 71 | index 57c81a2..de2d446 100644 72 | --- a/misc/Makefile.in 73 | +++ b/misc/Makefile.in 74 | @@ -116,6 +116,10 @@ DEPLIBS_E2P= $(LIBE2P) $(DEPLIBCOM_ERR) 75 | 76 | COMPILE_ET=$(top_builddir)/lib/et/compile_et --build-tree 77 | 78 | +OPENSSL_CFLAGS = @OPENSSL_CFLAGS@ 79 | +OPENSSL_LIBS = @OPENSSL_LIBS@ 80 | + 81 | + 82 | # This nastyness is needed because of jfs_user.h hackery; when we finally 83 | # clean up this mess, we should be able to drop it 84 | JOURNAL_CFLAGS = -I$(srcdir)/../e2fsck $(ALL_CFLAGS) -DDEBUGFS 85 | @@ -265,7 +269,7 @@ mke2fs: $(MKE2FS_OBJS) $(DEPLIBS) $(LIBE2P) $(DEPLIBBLKID) $(DEPLIBUUID) \ 86 | $(E) " LD $@" 87 | $(Q) $(CC) $(ALL_LDFLAGS) -o mke2fs $(MKE2FS_OBJS) $(LIBS) $(LIBBLKID) \ 88 | $(LIBUUID) $(LIBEXT2FS) $(LIBE2P) $(LIBINTL) \ 89 | - $(SYSLIBS) $(LIBMAGIC) 90 | + $(SYSLIBS) $(LIBMAGIC) $(OPENSSL_LIBS) 91 | 92 | mke2fs.static: $(MKE2FS_OBJS) $(STATIC_DEPLIBS) $(STATIC_LIBE2P) $(DEPSTATIC_LIBUUID) \ 93 | $(DEPSTATIC_LIBBLKID) 94 | diff --git a/misc/create_inode.c b/misc/create_inode.c 95 | index c879a3e..91a9cf6 100644 96 | --- a/misc/create_inode.c 97 | +++ b/misc/create_inode.c 98 | @@ -26,12 +26,270 @@ 99 | #include 100 | #include 101 | 102 | + 103 | +#include 104 | + 105 | #include "create_inode.h" 106 | #include "support/nls-enable.h" 107 | 108 | /* 64KiB is the minimium blksize to best minimize system call overhead. */ 109 | #define COPY_FILE_BUFLEN 65536 110 | 111 | +#ifdef HAVE_OPENSSL 112 | +#include 113 | +#include 114 | +#include 115 | +#include 116 | +#include 117 | +#include 118 | + 119 | +static char *evm_default_xattrs[] = { 120 | + XATTR_NAME_SELINUX, 121 | + XATTR_NAME_SMACK, 122 | + XATTR_NAME_IMA, 123 | + XATTR_NAME_CAPS, 124 | + NULL 125 | +}; 126 | + 127 | +struct h_misc_64 { 128 | + __u64 ino; 129 | + __u32 generation; 130 | + uid_t uid; 131 | + gid_t gid; 132 | + unsigned short mode; 133 | +}; 134 | + 135 | +struct h_misc_32 { 136 | + __u32 ino; 137 | + __u32 generation; 138 | + uid_t uid; 139 | + gid_t gid; 140 | + unsigned short mode; 141 | +}; 142 | + 143 | +enum digsig_version { 144 | + DIGSIG_VERSION_1 = 1, 145 | + DIGSIG_VERSION_2 146 | +}; 147 | + 148 | +enum pkey_hash_algo { 149 | + PKEY_HASH_MD4, 150 | + PKEY_HASH_MD5, 151 | + PKEY_HASH_SHA1, 152 | + PKEY_HASH_RIPE_MD_160, 153 | + PKEY_HASH_SHA256, 154 | + PKEY_HASH_SHA384, 155 | + PKEY_HASH_SHA512, 156 | + PKEY_HASH_SHA224, 157 | + PKEY_HASH__LAST 158 | +}; 159 | + 160 | +const char *const pkey_hash_algo[PKEY_HASH__LAST] = { 161 | + [PKEY_HASH_MD4] = "md4", 162 | + [PKEY_HASH_MD5] = "md5", 163 | + [PKEY_HASH_SHA1] = "sha1", 164 | + [PKEY_HASH_RIPE_MD_160] = "rmd160", 165 | + [PKEY_HASH_SHA256] = "sha256", 166 | + [PKEY_HASH_SHA384] = "sha384", 167 | + [PKEY_HASH_SHA512] = "sha512", 168 | + [PKEY_HASH_SHA224] = "sha224", 169 | +}; 170 | + 171 | +struct RSA_ASN1_template { 172 | + const __u8 *data; 173 | + size_t size; 174 | +}; 175 | +/* 176 | + * Hash algorithm OIDs plus ASN.1 DER wrappings [RFC4880 sec 5.2.2]. 177 | + */ 178 | +static const __u8 RSA_digest_info_SHA1[] = { 179 | + 0x30, 0x21, 0x30, 0x09, 0x06, 0x05, 180 | + 0x2B, 0x0E, 0x03, 0x02, 0x1A, 181 | + 0x05, 0x00, 0x04, 0x14 182 | +}; 183 | + 184 | + 185 | +/* 186 | + * signature format v2 - for using with asymmetric keys 187 | + */ 188 | +struct signature_v2_hdr { 189 | + __u8 version; /* signature format version */ 190 | + __u8 hash_algo; /* Digest algorithm [enum pkey_hash_algo] */ 191 | + __u32 keyid; /* IMA key identifier - not X509/PGP specific*/ 192 | + __u16 sig_size; /* signature size */ 193 | + __u8 sig[0]; /* signature payload */ 194 | +} __attribute__((packed)); 195 | + 196 | +enum evm_ima_xattr_type { 197 | + IMA_XATTR_DIGEST = 0x01, 198 | + EVM_XATTR_HMAC, 199 | + EVM_IMA_XATTR_DIGSIG, 200 | + IMA_XATTR_DIGEST_NG, 201 | +}; 202 | + 203 | +/* Add EVM Signature to Inode */ 204 | +static errcode_t set_inode_evm_hash(ext2_filsys fs, ext2_ino_t ino, const char *filename, struct ext2_xattr_handle *handle, const char *key_path) 205 | +{ 206 | + int err; 207 | + __u32 generation = 0; 208 | + EVP_MD_CTX ctx; 209 | + unsigned int mdlen; 210 | + char **xattrname; 211 | + void *xattr_value; 212 | + unsigned char hash[20]; 213 | + unsigned char sig[1024]; 214 | + 215 | + struct h_misc_64 hmac_misc; 216 | + int hmac_size; 217 | + ssize_t value_size; 218 | + char *list = NULL; 219 | + errcode_t retval = 0; 220 | + 221 | + err = EVP_DigestInit(&ctx, EVP_sha1()); 222 | + if (!err) { 223 | + com_err(__func__, err, "EVP_DigestInit() failed"); 224 | + return 1; 225 | + } 226 | + 227 | + for (xattrname = evm_default_xattrs; *xattrname != NULL; xattrname++) { 228 | + err = ext2fs_xattr_get(handle, *xattrname, (void **) &xattr_value, 229 | + &value_size); 230 | + if (err) 231 | + continue; 232 | + 233 | + err = EVP_DigestUpdate(&ctx, xattr_value, value_size); 234 | + if (!err) { 235 | + com_err(__func__, err, "EVP_DigestUpdate() failed"); 236 | + return err; 237 | + } 238 | + } 239 | + 240 | + memset(&hmac_misc, 0, sizeof(hmac_misc)); 241 | + 242 | + struct h_misc_32 *hmac = (struct h_misc_32 *)&hmac_misc; 243 | + 244 | + struct ext2_inode inode; 245 | + 246 | + retval = ext2fs_read_inode(fs, ino, &inode); 247 | + if (retval) { 248 | + com_err(__func__, retval, _("while reading inode %u"), ino); 249 | + return retval; 250 | + } 251 | + hmac_size = sizeof(*hmac); 252 | + hmac->ino = ino; 253 | + hmac->generation = inode.i_generation; 254 | + hmac->uid = inode.i_uid; 255 | + hmac->gid = inode.i_gid; 256 | + hmac->mode = inode.i_mode; 257 | + 258 | + err = EVP_DigestUpdate(&ctx, &hmac_misc, hmac_size); 259 | + if (!err) { 260 | + com_err(__func__, err, "EVP_DigestUpdate() failed"); 261 | + return 1; 262 | + } 263 | + 264 | + err = EVP_DigestUpdate(&ctx, fs->super->s_uuid, sizeof(fs->super->s_uuid)); 265 | + if (!err) { 266 | + com_err(__func__, err, "EVP_DigestUpdate() failed"); 267 | + return 1; 268 | + } 269 | + 270 | + err = EVP_DigestFinal(&ctx, hash, &mdlen); 271 | + if (!err) { 272 | + com_err(__func__, err, "EVP_DigestFinal() failed\n"); 273 | + return 1; 274 | + } 275 | + 276 | + /** Hash Calculated begin Signing **/ 277 | + 278 | + struct signature_v2_hdr *hdr; 279 | + int len = -1; 280 | + RSA *key; 281 | + char name[20]; 282 | + unsigned char *buf; 283 | + const struct RSA_ASN1_template asn1 = { RSA_digest_info_SHA1, sizeof(RSA_digest_info_SHA1) }; 284 | + 285 | + FILE *fp; 286 | + 287 | + fp = fopen(key_path, "r"); 288 | + if (!fp) { 289 | + com_err(__func__, 0, "Failed to open keyfile: %s\n", key_path); 290 | + return -1; 291 | + } 292 | + ERR_load_crypto_strings(); 293 | + key = PEM_read_RSAPrivateKey(fp, NULL, NULL, NULL); 294 | + if (!key) { 295 | + char str[256]; 296 | + 297 | + ERR_error_string(ERR_get_error(), str); 298 | + com_err(__func__, 0, "PEM_read_RSAPrivateKey() failed: %s\n", str); 299 | + fclose(fp); 300 | + return -1; 301 | + } 302 | + 303 | + fclose(fp); 304 | + 305 | + 306 | + hdr = (struct signature_v2_hdr *) (sig + 1); 307 | + 308 | + hdr->version = (__u8) DIGSIG_VERSION_2; 309 | + 310 | + hdr->hash_algo = PKEY_HASH_SHA1; 311 | + 312 | + __u8 sha1[SHA_DIGEST_LENGTH]; 313 | + unsigned char *pkey = NULL; 314 | + 315 | + len = i2d_RSAPublicKey(key, &pkey); 316 | + 317 | + SHA1(pkey, len, sha1); 318 | + 319 | + /* sha1[12 - 19] is exactly keyid from gpg file */ 320 | + memcpy(&hdr->keyid, sha1 + 16, 4); 321 | + 322 | + free(pkey); 323 | + 324 | + buf = malloc(mdlen + asn1.size); 325 | + if (!buf) 326 | + goto out; 327 | + 328 | + memcpy(buf, asn1.data, asn1.size); 329 | + memcpy(buf + asn1.size, hash, mdlen); 330 | + len = RSA_private_encrypt(mdlen + asn1.size, buf, hdr->sig, key, 331 | + RSA_PKCS1_PADDING); 332 | + if (len < 0) { 333 | + err = len; 334 | + com_err(__func__, err, "RSA_private_encrypt() failed: %d\n", len); 335 | + goto out; 336 | + } 337 | + 338 | + /* we add bit length of the signature to make it gnupg compatible */ 339 | + hdr->sig_size = __cpu_to_be16(len); 340 | + 341 | + len += sizeof(*hdr); 342 | + len++; 343 | + sig[0] = EVM_IMA_XATTR_DIGSIG; 344 | + 345 | + void *sigPtr; 346 | + err = ext2fs_get_mem(len, &sigPtr); 347 | + if (err) { 348 | + com_err(__func__, err, _("while allocating memory")); 349 | + goto out; 350 | + } 351 | + memcpy(sigPtr, sig, len); 352 | + err = ext2fs_xattr_set(handle, "security.evm", sigPtr, len); 353 | + if (err) { 354 | + com_err(__func__, err, _("while setting xattr: \"security.evm\"")); 355 | + goto out; 356 | + } 357 | + 358 | +out: if (buf) 359 | + free(buf); 360 | + RSA_free(key); 361 | + return err; 362 | +} 363 | + 364 | +#endif 365 | + 366 | static int ext2_file_type(unsigned int mode) 367 | { 368 | if (LINUX_S_ISREG(mode)) 369 | @@ -125,7 +383,7 @@ static errcode_t set_inode_extra(ext2_filsys fs, ext2_ino_t ino, 370 | 371 | #ifdef HAVE_LLISTXATTR 372 | static errcode_t set_inode_xattr(ext2_filsys fs, ext2_ino_t ino, 373 | - const char *filename) 374 | + const char *filename, const char *key_path) 375 | { 376 | errcode_t retval, close_retval; 377 | struct ext2_xattr_handle *handle; 378 | @@ -204,6 +462,17 @@ static errcode_t set_inode_xattr(ext2_filsys fs, ext2_ino_t ino, 379 | } 380 | 381 | } 382 | +#ifdef HAVE_OPENSSL 383 | + if (key_path) { 384 | + retval = set_inode_evm_hash(fs, ino, filename, handle, key_path); 385 | + if (retval) { 386 | + com_err(__func__, retval, 387 | + _("while setting EVM Hash for \"%s\""), filename); 388 | + goto out; 389 | + } 390 | + } 391 | +#endif 392 | + 393 | out: 394 | ext2fs_free_mem(&list); 395 | close_retval = ext2fs_xattrs_close(&handle); 396 | @@ -217,8 +486,10 @@ static errcode_t set_inode_xattr(ext2_filsys fs, ext2_ino_t ino, 397 | #else /* HAVE_LLISTXATTR */ 398 | static errcode_t set_inode_xattr(ext2_filsys fs EXT2FS_ATTR((unused)), 399 | ext2_ino_t ino EXT2FS_ATTR((unused)), 400 | - const char *filename EXT2FS_ATTR((unused))) 401 | + const char *filename EXT2FS_ATTR((unused)), 402 | + const char *key_path EXT2FS_ATTR((unused))) 403 | { 404 | + printf("oops\n"); 405 | return 0; 406 | } 407 | #endif /* HAVE_LLISTXATTR */ 408 | @@ -681,7 +952,7 @@ out: 409 | /* Copy files from source_dir to fs */ 410 | static errcode_t __populate_fs(ext2_filsys fs, ext2_ino_t parent_ino, 411 | const char *source_dir, ext2_ino_t root, 412 | - struct hdlinks_s *hdlinks) 413 | + struct hdlinks_s *hdlinks, const char *key_path) 414 | { 415 | const char *name; 416 | DIR *dh; 417 | @@ -817,7 +1088,7 @@ find_lnf: 418 | goto out; 419 | } 420 | /* Populate the dir recursively*/ 421 | - retval = __populate_fs(fs, ino, name, root, hdlinks); 422 | + retval = __populate_fs(fs, ino, name, root, hdlinks, key_path); 423 | if (retval) 424 | goto out; 425 | if (chdir("..")) { 426 | @@ -846,7 +1117,7 @@ find_lnf: 427 | goto out; 428 | } 429 | 430 | - retval = set_inode_xattr(fs, ino, name); 431 | + retval = set_inode_xattr(fs, ino, name, key_path); 432 | if (retval) { 433 | com_err(__func__, retval, 434 | _("while setting xattrs for \"%s\""), name); 435 | @@ -884,9 +1155,9 @@ out: 436 | closedir(dh); 437 | return retval; 438 | } 439 | - 440 | errcode_t populate_fs(ext2_filsys fs, ext2_ino_t parent_ino, 441 | - const char *source_dir, ext2_ino_t root) 442 | + const char *source_dir, ext2_ino_t root, const char *key_path) 443 | + 444 | { 445 | struct hdlinks_s hdlinks; 446 | errcode_t retval; 447 | @@ -905,7 +1176,7 @@ errcode_t populate_fs(ext2_filsys fs, ext2_ino_t parent_ino, 448 | return retval; 449 | } 450 | 451 | - retval = __populate_fs(fs, parent_ino, source_dir, root, &hdlinks); 452 | + retval = __populate_fs(fs, parent_ino, source_dir, root, &hdlinks, key_path); 453 | 454 | free(hdlinks.hdl); 455 | return retval; 456 | diff --git a/misc/create_inode.h b/misc/create_inode.h 457 | index cf49df2..a755357 100644 458 | --- a/misc/create_inode.h 459 | +++ b/misc/create_inode.h 460 | @@ -26,7 +26,7 @@ struct hdlinks_s 461 | 462 | /* For populating the filesystem */ 463 | extern errcode_t populate_fs(ext2_filsys fs, ext2_ino_t parent_ino, 464 | - const char *source_dir, ext2_ino_t root); 465 | + const char *source_dir, ext2_ino_t root, const char *key_path); 466 | extern errcode_t do_mknod_internal(ext2_filsys fs, ext2_ino_t cwd, 467 | const char *name, struct stat *st); 468 | extern errcode_t do_symlink_internal(ext2_filsys fs, ext2_ino_t cwd, 469 | diff --git a/misc/mke2fs.c b/misc/mke2fs.c 470 | index 4f5d5c0..b2cd370 100644 471 | --- a/misc/mke2fs.c 472 | +++ b/misc/mke2fs.c 473 | @@ -81,6 +81,7 @@ static const char * device_name /* = NULL */; 474 | static int cflag; 475 | int verbose; 476 | int quiet; 477 | +static char * key_path = 0; 478 | static int super_only; 479 | static int discard = 1; /* attempt to discard device before fs creation */ 480 | static int direct_io; 481 | @@ -1557,7 +1558,7 @@ profile_error: 482 | } 483 | 484 | while ((c = getopt (argc, argv, 485 | - "b:cd:e:g:i:jl:m:no:qr:s:t:vC:DE:FG:I:J:KL:M:N:O:R:ST:U:Vz:")) != EOF) { 486 | + "b:cd:e:g:i:jl:k:m:no:qr:s:t:vC:DE:FG:I:J:KL:M:N:O:R:ST:U:Vz:")) != EOF) { 487 | switch (c) { 488 | case 'b': 489 | blocksize = parse_num_blocks2(optarg, -1); 490 | @@ -1679,6 +1680,16 @@ profile_error: 491 | case 'J': 492 | parse_journal_opts(optarg); 493 | break; 494 | +#ifdef HAVE_OPENSSL 495 | + case 'k': 496 | + key_path = strdup(optarg); 497 | + if (!key_path) { 498 | + com_err(program_name, ENOMEM, "%s", 499 | + _("in malloc for key_path")); 500 | + exit(1); 501 | + } 502 | + break; 503 | +#endif 504 | case 'K': 505 | fprintf(stderr, "%s", 506 | _("Warning: -K option is deprecated and " 507 | @@ -3176,7 +3187,7 @@ no_journal: 508 | printf("%s", _("Copying files into the device: ")); 509 | 510 | retval = populate_fs(fs, EXT2_ROOT_INO, src_root_dir, 511 | - EXT2_ROOT_INO); 512 | + EXT2_ROOT_INO, key_path); 513 | if (retval) { 514 | com_err(program_name, retval, "%s", 515 | _("while populating file system")); 516 | -- 517 | 2.7.4 518 | 519 | -------------------------------------------------------------------------------- /recipes-devtools/hab-cst/hab-cst-native_2.3.2.bb: -------------------------------------------------------------------------------- 1 | DESCRIPTION = "Code Signing Tool for NXP's High Assurance Boot with i.MX processors." 2 | AUTHOR = "NXP" 3 | HOMEPAGE = "http://www.nxp.com" 4 | LICENSE = "Proprietary" 5 | LIC_FILES_CHKSUM = "file://Release_Notes.txt;md5=ec86609b539c71fe8c987febd93ee14e" 6 | 7 | SRC_URI = "https://cache.nxp.com/secured/NMG/MAD/cst-2.3.2.tar.gz?__gda__=1484440346_4db63f289d2506642da5d07dd3691c3f&fileExt=.gz;downloadfilename=hab-cst-2.3.2.tar.gz" 8 | SRC_URI[md5sum] = "a81766cab2e184ab12e459c0476f6639" 9 | SRC_URI[sha256sum] = "064bfe407ab8616d8caa2fa15c0b87b4a683535e08f95af7179ffaa7c2b74e32" 10 | 11 | inherit native 12 | 13 | S = "${WORKDIR}/cst-${PV}" 14 | 15 | do_patch[noexec] = "1" 16 | do_configure[noexec] = "1" 17 | do_compile[noexec] = "1" 18 | 19 | do_install() { 20 | mkdir -p ${D}${bindir} 21 | install -m 0755 ${S}${SRCDIR}/cst ${D}${bindir} 22 | install -m 0755 ${S}${SRCDIR}/srktool ${D}${bindir} 23 | install -m 0755 ${S}${SRCDIR}/x5092wtls ${D}${bindir} 24 | } 25 | 26 | COMPATIBLE_HOST = "(i.86|x86_64).*-linux" 27 | SRCDIR_x86-64 = "/linux64" 28 | SRCDIR_x86 = "/linux32" 29 | -------------------------------------------------------------------------------- /recipes-kernel/linux/linux-fslc-ima/0001-crypto-caam-add-red-blobifier.patch: -------------------------------------------------------------------------------- 1 | From b7defce6ff40536b3199e07343043946730e17ff Mon Sep 17 00:00:00 2001 2 | From: Sven Ebenfeld 3 | Date: Sat, 29 Oct 2016 00:44:14 +0200 4 | Subject: [PATCH 1/2] crypto: caam - add red blobifier 5 | 6 | Signed-off-by: Sven Ebenfeld 7 | --- 8 | drivers/crypto/caam/Kconfig | 9 + 9 | drivers/crypto/caam/Makefile | 1 + 10 | drivers/crypto/caam/blob_gen.c | 528 +++++++++++++++++++++++++++++++++++++++++ 11 | 3 files changed, 538 insertions(+) 12 | create mode 100644 drivers/crypto/caam/blob_gen.c 13 | 14 | diff --git a/drivers/crypto/caam/Kconfig b/drivers/crypto/caam/Kconfig 15 | index 64bf302..770bf17 100644 16 | --- a/drivers/crypto/caam/Kconfig 17 | +++ b/drivers/crypto/caam/Kconfig 18 | @@ -111,6 +111,15 @@ config CRYPTO_DEV_FSL_CAAM_PKC_API 19 | To compile this as a module, choose M here: the module 20 | will be called caam_pkc. 21 | 22 | +config CRYPTO_DEV_FSL_CAAM_BLOB_GEN 23 | + tristate "CAAM Blob Generator (EXPERIMENTAL)" 24 | + depends on CRYPTO_DEV_FSL_CAAM 25 | + default n 26 | + help 27 | + Selecting this will enable the CAAM red blob generator. 28 | + This module will take a chunk of data via sysfs and returns 29 | + an encrypted red blob. The inverse is also possible. 30 | + 31 | config CRYPTO_DEV_FSL_CAAM_RNG_API 32 | tristate "Register caam device for hwrng API" 33 | depends on CRYPTO_DEV_FSL_CAAM && CRYPTO_DEV_FSL_CAAM_JR 34 | diff --git a/drivers/crypto/caam/Makefile b/drivers/crypto/caam/Makefile 35 | index 08bf551..6fc9729 100644 36 | --- a/drivers/crypto/caam/Makefile 37 | +++ b/drivers/crypto/caam/Makefile 38 | @@ -11,6 +11,7 @@ obj-$(CONFIG_CRYPTO_DEV_FSL_CAAM_CRYPTO_API) += caamalg.o 39 | obj-$(CONFIG_CRYPTO_DEV_FSL_CAAM_AHASH_API) += caamhash.o 40 | obj-$(CONFIG_CRYPTO_DEV_FSL_CAAM_RNG_API) += caamrng.o 41 | obj-$(CONFIG_CRYPTO_DEV_FSL_CAAM_PKC_API) += caam_pkc.o 42 | +obj-$(CONFIG_CRYPTO_DEV_FSL_CAAM_BLOB_GEN) += blob_gen.o 43 | 44 | caam-objs := ctrl.o 45 | caam_jr-objs := jr.o key_gen.o error.o 46 | diff --git a/drivers/crypto/caam/blob_gen.c b/drivers/crypto/caam/blob_gen.c 47 | new file mode 100644 48 | index 0000000..1ec130f 49 | --- /dev/null 50 | +++ b/drivers/crypto/caam/blob_gen.c 51 | @@ -0,0 +1,528 @@ 52 | +/* 53 | + * Copyright (C) 2015 Pengutronix, Steffen Trumtrar 54 | + * 55 | + * This program is free software; you can redistribute it and/or modify it under 56 | + * the terms of the GNU General Public License version 2 as published by the 57 | + * Free Software Foundation. 58 | + */ 59 | + 60 | +#include 61 | +#include 62 | +#include 63 | +#include "compat.h" 64 | +#include "intern.h" 65 | +#include "desc.h" 66 | +#include "desc_constr.h" 67 | +#include "error.h" 68 | +#include "jr.h" 69 | + 70 | +enum access_rights { 71 | + KERNEL, 72 | + KERNEL_EVM, 73 | + USERSPACE, 74 | +}; 75 | + 76 | +struct blob_priv { 77 | + struct device *jrdev; 78 | + struct device dev; 79 | + u32 *desc; 80 | + u8 __iomem *red_blob; 81 | + u8 __iomem *modifier; 82 | + u8 __iomem *output; 83 | + bool busy; 84 | + enum access_rights access; 85 | + unsigned int payload_size; 86 | + struct bin_attribute *blob; 87 | + struct bin_attribute *payload; 88 | + struct caam_drv_private *ctrlpriv; 89 | +}; 90 | + 91 | +struct blob_job_result { 92 | + int err; 93 | + struct completion completion; 94 | +}; 95 | + 96 | +static struct platform_device *pdev; 97 | + 98 | +static void blob_job_done(struct device *dev, u32 *desc, u32 err, void *context) 99 | +{ 100 | + struct blob_job_result *res = context; 101 | + 102 | +#ifdef DEBUG 103 | + dev_err(dev, "%s %d: err 0x%x\n", __func__, __LINE__, err); 104 | +#endif 105 | + 106 | + if (err) 107 | + caam_jr_strstatus(dev, err); 108 | + 109 | + res->err = err; 110 | + 111 | + complete(&res->completion); 112 | +} 113 | + 114 | +/* 115 | + * Upon completion, desc points to a buffer containing a CAAM job 116 | + * descriptor which encapsulates data into an externally-storable 117 | + * blob. 118 | + */ 119 | +#define INITIAL_DESCSZ 16 120 | +#define BLOB_OVERHEAD (32 + 16) 121 | +#define KEYMOD_LENGTH 16 122 | +#define RED_BLOB_LENGTH 64 123 | +#define MAX_BLOB_LEN 4096 124 | + 125 | +/* 126 | + * Generate a blob with the following format: 127 | + * Format: Normal format (Test format only for testing) 128 | + * Contents: General data (aka red blob) 129 | + * Security State: Secure State (Non-Secure for testing) 130 | + * Memory Types: General memory 131 | + */ 132 | +static int blob_encap_blob(struct blob_priv *priv, u8 *keymod, u8 *input, 133 | + u8 *output, u16 length) 134 | +{ 135 | + u32 *desc; 136 | + struct device *jrdev = priv->jrdev; 137 | + dma_addr_t dma_keymod; 138 | + dma_addr_t dma_in; 139 | + dma_addr_t dma_out; 140 | + struct blob_job_result testres; 141 | + int ret; 142 | + 143 | + desc = kmalloc(CAAM_CMD_SZ * 5 + CAAM_PTR_SZ * 5, GFP_KERNEL | GFP_DMA); 144 | + if (!desc) { 145 | + dev_err(jrdev, "unable to allocate desc\n"); 146 | + return -ENOMEM; 147 | + } 148 | + 149 | + dma_keymod = dma_map_single(jrdev, keymod, KEYMOD_LENGTH, DMA_TO_DEVICE); 150 | + if (dma_mapping_error(jrdev, dma_keymod)) { 151 | + dev_err(jrdev, "unable to map keymod buffer\n"); 152 | + ret = -ENOMEM; 153 | + goto out_free; 154 | + } 155 | + 156 | + dma_in = dma_map_single(jrdev, input, length - BLOB_OVERHEAD, 157 | + DMA_TO_DEVICE); 158 | + if (dma_mapping_error(jrdev, dma_in)) { 159 | + dev_err(jrdev, "unable to map keymod buffer\n"); 160 | + ret = -ENOMEM; 161 | + goto out_unmap_key; 162 | + } 163 | + 164 | + dma_out = dma_map_single(jrdev, output, length, DMA_FROM_DEVICE); 165 | + if (dma_mapping_error(jrdev, dma_out)) { 166 | + dev_err(jrdev, "unable to map output DMA buffer\n"); 167 | + ret = -ENOMEM; 168 | + goto out_unmap_in; 169 | + } 170 | + 171 | + /* 172 | + * A data blob is encrypted using a blob key (BK); a random number. 173 | + * The BK is used as an AES-CCM key. The initial block (B0) and the 174 | + * initial counter (Ctr0) are generated automatically and stored in 175 | + * Class 1 Context DWords 0+1+2+3. The random BK is stored in the 176 | + * Class 1 Key Register. Operation Mode is set to AES-CCM. 177 | + */ 178 | + 179 | + init_job_desc(desc, 0); 180 | + /* 181 | + * The key modifier can be used to differentiate specific data. 182 | + * Or to prevent replay attacks. 183 | + */ 184 | + append_key(desc, dma_keymod, KEYMOD_LENGTH, CLASS_2 | KEY_DEST_CLASS_REG); 185 | + append_seq_in_ptr(desc, dma_in, length - BLOB_OVERHEAD, 0); 186 | + append_seq_out_ptr(desc, dma_out, length, 0); 187 | + append_operation(desc, OP_TYPE_ENCAP_PROTOCOL | OP_PCLID_BLOB); 188 | + 189 | +#ifdef DEBUG 190 | + printk("%s: keymod %s\n", __func__, keymod); 191 | + print_hex_dump(KERN_ERR, "data@"__stringify(__LINE__)": ", 192 | + DUMP_PREFIX_ADDRESS, 16, 1, input, 193 | + length - BLOB_OVERHEAD, false); 194 | + print_hex_dump(KERN_ERR, "jobdesc@"__stringify(__LINE__)": ", 195 | + DUMP_PREFIX_ADDRESS, 16, 1, desc, 196 | + desc_bytes(desc), false); 197 | +#endif 198 | + 199 | + testres.err = 0; 200 | + init_completion(&testres.completion); 201 | + 202 | + ret = caam_jr_enqueue(jrdev, desc, blob_job_done, &testres); 203 | + if (!ret) { 204 | + wait_for_completion_interruptible(&testres.completion); 205 | + ret = testres.err; 206 | +#ifdef DEBUG 207 | + print_hex_dump(KERN_ERR, "output@"__stringify(__LINE__)": ", 208 | + DUMP_PREFIX_ADDRESS, 16, 1, output, 209 | + length, false); 210 | +#endif 211 | + } 212 | + 213 | + dma_unmap_single(jrdev, dma_out, length, 214 | + DMA_FROM_DEVICE); 215 | +out_unmap_in: 216 | + dma_unmap_single(jrdev, dma_keymod, KEYMOD_LENGTH, DMA_TO_DEVICE); 217 | +out_unmap_key: 218 | + dma_unmap_single(jrdev, dma_in, length - BLOB_OVERHEAD, DMA_TO_DEVICE); 219 | +out_free: 220 | + kfree(desc); 221 | + 222 | + return ret; 223 | +} 224 | + 225 | +static int blob_decap_blob(struct blob_priv *priv, u8 *keymod, u8 *input, 226 | + u8 *output, u16 length) 227 | +{ 228 | + u32 *desc; 229 | + struct device *jrdev = priv->jrdev; 230 | + dma_addr_t dma_keymod; 231 | + dma_addr_t dma_in; 232 | + dma_addr_t dma_out; 233 | + struct blob_job_result testres; 234 | + int ret; 235 | + 236 | + desc = kzalloc(CAAM_CMD_SZ * 5 + CAAM_PTR_SZ * 5, GFP_KERNEL | GFP_DMA); 237 | + if (!desc) { 238 | + dev_err(jrdev, "unable to allocate desc\n"); 239 | + return -ENOMEM; 240 | + } 241 | + 242 | + dma_keymod = dma_map_single(jrdev, keymod, KEYMOD_LENGTH, DMA_TO_DEVICE); 243 | + if (dma_mapping_error(jrdev, dma_keymod)) { 244 | + dev_err(jrdev, "unable to map keymod buffer\n"); 245 | + ret = -ENOMEM; 246 | + goto out_free; 247 | + } 248 | + 249 | + dma_in = dma_map_single(jrdev, input, length, DMA_TO_DEVICE); 250 | + if (dma_mapping_error(jrdev, dma_in)) { 251 | + dev_err(jrdev, "unable to map keymod buffer\n"); 252 | + ret = -ENOMEM; 253 | + goto out_unmap_key; 254 | + } 255 | + 256 | + dma_out = dma_map_single(jrdev, output, length - BLOB_OVERHEAD, DMA_FROM_DEVICE); 257 | + if (dma_mapping_error(jrdev, dma_out)) { 258 | + dev_err(jrdev, "unable to map output DMA buffer\n"); 259 | + ret = -ENOMEM; 260 | + goto out_unmap_in; 261 | + } 262 | + 263 | + /* 264 | + * A data blob is encrypted using a blob key (BK); a random number. 265 | + * The BK is used as an AES-CCM key. The initial block (B0) and the 266 | + * initial counter (Ctr0) are generated automatically and stored in 267 | + * Class 1 Context DWords 0+1+2+3. The random BK is stored in the 268 | + * Class 1 Key Register. Operation Mode is set to AES-CCM. 269 | + */ 270 | + 271 | + init_job_desc(desc, 0); 272 | + /* 273 | + * The key modifier can be used to differentiate specific data. 274 | + * Or to prevent replay attacks. 275 | + */ 276 | + append_key(desc, dma_keymod, KEYMOD_LENGTH, CLASS_2 | KEY_DEST_CLASS_REG); 277 | + append_seq_in_ptr(desc, dma_in, length, 0); 278 | + append_seq_out_ptr(desc, dma_out, length - BLOB_OVERHEAD, 0); 279 | + append_operation(desc, OP_TYPE_DECAP_PROTOCOL | OP_PCLID_BLOB); 280 | + 281 | +#ifdef DEBUG 282 | + print_hex_dump(KERN_ERR, "data@"__stringify(__LINE__)": ", 283 | + DUMP_PREFIX_ADDRESS, 16, 1, input, 284 | + length, false); 285 | + print_hex_dump(KERN_ERR, "jobdesc@"__stringify(__LINE__)": ", 286 | + DUMP_PREFIX_ADDRESS, 16, 1, desc, 287 | + desc_bytes(desc), false); 288 | +#endif 289 | + 290 | + testres.err = 0; 291 | + init_completion(&testres.completion); 292 | + 293 | + ret = caam_jr_enqueue(jrdev, desc, blob_job_done, &testres); 294 | + if (!ret) { 295 | + wait_for_completion_interruptible(&testres.completion); 296 | + ret = testres.err; 297 | +#ifdef DEBUG 298 | + print_hex_dump(KERN_ERR, "output@"__stringify(__LINE__)": ", 299 | + DUMP_PREFIX_ADDRESS, 16, 1, output, 300 | + length - BLOB_OVERHEAD, false); 301 | +#endif 302 | + } 303 | + 304 | + dma_unmap_single(jrdev, dma_out, length - BLOB_OVERHEAD, DMA_FROM_DEVICE); 305 | +out_unmap_in: 306 | + dma_unmap_single(jrdev, dma_keymod, KEYMOD_LENGTH, DMA_TO_DEVICE); 307 | +out_unmap_key: 308 | + dma_unmap_single(jrdev, dma_in, length, DMA_TO_DEVICE); 309 | +out_free: 310 | + kfree(desc); 311 | + 312 | + return ret; 313 | +} 314 | + 315 | +static void blob_gen_init_evm(struct blob_priv *priv) 316 | +{ 317 | + evm_set_key((void *)priv->output, priv->payload_size); 318 | +} 319 | + 320 | +static ssize_t 321 | +blob_gen_blob_read(struct file *filp, struct kobject *kobj, struct bin_attribute *attr, 322 | + char *buf, loff_t off, size_t size) 323 | +{ 324 | + struct device *dev = kobj_to_dev(kobj); 325 | + struct blob_priv *priv = dev_get_drvdata(dev); 326 | + int length = min((int)size, (int) (priv->payload_size + BLOB_OVERHEAD - off)); 327 | + int ret; 328 | + 329 | + if (length > 0) { 330 | + priv->busy = true; 331 | + 332 | + ret = blob_encap_blob(priv, priv->modifier, priv->output, priv->red_blob, length); 333 | + if (ret) { 334 | + priv->busy = false; 335 | + return -EINVAL; 336 | + } 337 | + 338 | + memcpy(buf, priv->red_blob, length); 339 | + 340 | + priv->busy = false; 341 | + } 342 | + 343 | + return length; 344 | +} 345 | + 346 | +static ssize_t 347 | +blob_gen_blob_write(struct file *filp, struct kobject *kobj, 348 | + struct bin_attribute *attr, char *buf, loff_t off, size_t size) 349 | +{ 350 | + struct device *dev = kobj_to_dev(kobj); 351 | + struct blob_priv *priv = dev_get_drvdata(dev); 352 | + int ret; 353 | + 354 | + if (size > 0) { 355 | + priv->busy = true; 356 | + 357 | + memcpy(priv->red_blob, buf, size); 358 | + 359 | + memset(priv->output, 0, MAX_BLOB_LEN - BLOB_OVERHEAD); 360 | + 361 | + ret = blob_decap_blob(priv, priv->modifier, priv->red_blob, 362 | + priv->output, size); 363 | + if (ret) { 364 | + priv->busy = false; 365 | + return -EINVAL; 366 | + } 367 | + 368 | + priv->payload_size = size - BLOB_OVERHEAD; 369 | + 370 | + if (priv->access == KERNEL_EVM) 371 | + blob_gen_init_evm(priv); 372 | + 373 | + priv->busy = false; 374 | + } 375 | + 376 | + return size; 377 | +} 378 | + 379 | +static ssize_t 380 | +blob_gen_payload_read(struct file *filp, struct kobject *kobj, 381 | + struct bin_attribute *attr, char *buf, loff_t off, 382 | + size_t size) 383 | +{ 384 | + struct device *dev = kobj_to_dev(kobj); 385 | + struct blob_priv *priv = dev_get_drvdata(dev); 386 | + int length = min((int) size, (int) (priv->payload_size - off)); 387 | + 388 | + if (priv->payload_size == 0) 389 | + return -EINVAL; 390 | + 391 | + if (priv->access != USERSPACE) 392 | + return -EPERM; 393 | + 394 | + memcpy(buf, priv->output + off, length); 395 | + 396 | + return length; 397 | +} 398 | + 399 | +static ssize_t 400 | +blob_gen_payload_write(struct file *filp, struct kobject *kobj, 401 | + struct bin_attribute *attr, char *buf, loff_t off, 402 | + size_t size) 403 | +{ 404 | + struct device *dev = kobj_to_dev(kobj); 405 | + struct blob_priv *priv = dev_get_drvdata(dev); 406 | + 407 | + if (priv->busy) 408 | + return -EPERM; 409 | + 410 | + memcpy(priv->output, buf, size); 411 | + 412 | + priv->payload_size = size; 413 | + 414 | + return size; 415 | +} 416 | + 417 | +static ssize_t 418 | +blob_gen_show_modifier(struct device *dev, struct device_attribute *attr, 419 | + char *buf) 420 | +{ 421 | + struct blob_priv *priv = dev_get_drvdata(dev); 422 | + 423 | + memcpy(buf, priv->modifier, KEYMOD_LENGTH); 424 | + 425 | + return KEYMOD_LENGTH; 426 | +} 427 | + 428 | +static ssize_t 429 | +blob_gen_set_modifier(struct device *dev, struct device_attribute *attr, 430 | + const char *buf, size_t n) 431 | +{ 432 | + struct blob_priv *priv = dev_get_drvdata(dev); 433 | + char *buf_ptr; 434 | + 435 | + if (n > KEYMOD_LENGTH) 436 | + return -EINVAL; 437 | + 438 | + if (priv->busy) 439 | + return -EPERM; 440 | + 441 | + buf_ptr = (char *)buf; 442 | + if (!strncmp(buf_ptr, "kernel:evm", 10)) 443 | + priv->access = KERNEL_EVM; 444 | + else if (!strncmp(buf_ptr, "kernel:", 7)) 445 | + priv->access = KERNEL; 446 | + else if (!strncmp(buf_ptr, "user:", 5)) 447 | + priv->access = USERSPACE; 448 | + 449 | + memset(priv->output, 0, MAX_BLOB_LEN - BLOB_OVERHEAD); 450 | + memset(priv->red_blob, 0, MAX_BLOB_LEN); 451 | + 452 | + memcpy(priv->modifier, buf, n); 453 | + 454 | + return n; 455 | +} 456 | +static DEVICE_ATTR(modifier, S_IRUSR | S_IWUSR, 457 | + blob_gen_show_modifier, blob_gen_set_modifier); 458 | + 459 | +static struct attribute *blob_attrs[] = { 460 | + &dev_attr_modifier.attr, 461 | + NULL, 462 | +}; 463 | +ATTRIBUTE_GROUPS(blob); 464 | + 465 | +static int __init blob_gen_init(void) 466 | +{ 467 | + struct device_node *dev_node; 468 | + struct device *ctrldev; 469 | + struct caam_drv_private *ctrlpriv; 470 | + struct blob_priv *priv; 471 | + int ret; 472 | + 473 | + dev_node = of_find_compatible_node(NULL, NULL, "fsl,sec-v4.0"); 474 | + if (!dev_node) { 475 | + dev_node = of_find_compatible_node(NULL, NULL, "fsl,sec4.0"); 476 | + if (!dev_node) 477 | + return -ENODEV; 478 | + } 479 | + 480 | + pdev = of_find_device_by_node(dev_node); 481 | + if (!pdev) { 482 | + of_node_put(dev_node); 483 | + return -ENODEV; 484 | + } 485 | + 486 | + ctrldev = &pdev->dev; 487 | + ctrlpriv = dev_get_drvdata(ctrldev); 488 | + 489 | + pdev = platform_device_alloc("blob_gen", -1); 490 | + if (!pdev) 491 | + return -ENOMEM; 492 | + pdev->dev.parent = ctrldev; 493 | + pdev->dev.groups = blob_groups; 494 | + 495 | + priv = devm_kzalloc(&pdev->dev, sizeof(*priv), GFP_KERNEL); 496 | + priv->blob = devm_kzalloc(&pdev->dev, sizeof(struct bin_attribute), 497 | + GFP_KERNEL); 498 | + priv->payload = devm_kzalloc(&pdev->dev, sizeof(struct bin_attribute), 499 | + GFP_KERNEL); 500 | + 501 | + ret = platform_device_add(pdev); 502 | + if (ret) 503 | + goto pdev_add_failed; 504 | + 505 | + priv->modifier = devm_kzalloc(&pdev->dev, sizeof(*priv->modifier)*KEYMOD_LENGTH, 506 | + GFP_KERNEL | GFP_DMA); 507 | + 508 | + priv->red_blob = devm_kzalloc(&pdev->dev, sizeof(*priv->red_blob)* 509 | + MAX_BLOB_LEN, GFP_KERNEL | GFP_DMA); 510 | + 511 | + priv->output = devm_kzalloc(&pdev->dev, sizeof(*priv->output)* 512 | + MAX_BLOB_LEN - BLOB_OVERHEAD, GFP_KERNEL | GFP_DMA); 513 | + 514 | + priv->desc = devm_kzalloc(&pdev->dev, sizeof(*priv->desc), GFP_KERNEL | GFP_DMA); 515 | + if (priv->desc == NULL) 516 | + return -ENOMEM; 517 | + 518 | + dev_set_drvdata(&pdev->dev, priv); 519 | + 520 | + priv->busy = false; 521 | + 522 | + priv->jrdev = &ctrlpriv->jrpdev[0]->dev; 523 | + 524 | + priv->blob->attr.name = "blob"; 525 | + priv->blob->attr.mode = S_IRUSR | S_IWUSR; 526 | + 527 | + sysfs_bin_attr_init(priv->blob); 528 | + priv->blob->read = blob_gen_blob_read; 529 | + priv->blob->write = blob_gen_blob_write; 530 | + 531 | + ret = sysfs_create_bin_file(&pdev->dev.kobj, priv->blob); 532 | + if (ret) 533 | + dev_err(&pdev->dev, "unable to create sysfs file %s\n", 534 | + priv->blob->attr.name); 535 | + else 536 | + dev_info(&pdev->dev, "added sysfs binary attribute\n"); 537 | + 538 | + priv->payload->attr.name = "payload"; 539 | + priv->payload->attr.mode = S_IRUSR | S_IWUSR; 540 | + 541 | + sysfs_bin_attr_init(priv->payload); 542 | + priv->payload->read = blob_gen_payload_read; 543 | + priv->payload->write = blob_gen_payload_write; 544 | + 545 | + ret = sysfs_create_bin_file(&pdev->dev.kobj, priv->payload); 546 | + if (ret) 547 | + dev_err(&pdev->dev, "unable to create sysfs file %s\n", 548 | + priv->payload->attr.name); 549 | + else 550 | + dev_info(&pdev->dev, "added sysfs binary attribute\n"); 551 | + 552 | + return 0; 553 | + 554 | +pdev_add_failed: 555 | + platform_device_put(pdev); 556 | + 557 | + return ret; 558 | +} 559 | + 560 | +static void __exit blob_gen_exit(void) 561 | +{ 562 | + struct blob_priv *priv; 563 | + 564 | + priv = dev_get_drvdata(&pdev->dev); 565 | + if (!priv) 566 | + return; 567 | + 568 | + sysfs_remove_bin_file(&pdev->dev.kobj, priv->payload); 569 | + sysfs_remove_bin_file(&pdev->dev.kobj, priv->blob); 570 | + 571 | + platform_device_unregister(pdev); 572 | +} 573 | + 574 | +module_init(blob_gen_init); 575 | +module_exit(blob_gen_exit); 576 | + 577 | +MODULE_LICENSE("GPL"); 578 | +MODULE_DESCRIPTION("Blob Generator Example"); 579 | +MODULE_AUTHOR("Steffen Trumtrar "); 580 | -- 581 | 2.7.4 582 | 583 | -------------------------------------------------------------------------------- /recipes-kernel/linux/linux-fslc-ima/defconfig: -------------------------------------------------------------------------------- 1 | # 2 | # Automatically generated file; DO NOT EDIT. 3 | # Linux/arm 4.8.15 Kernel Configuration 4 | # 5 | CONFIG_ARM=y 6 | CONFIG_ARM_HAS_SG_CHAIN=y 7 | CONFIG_MIGHT_HAVE_PCI=y 8 | CONFIG_SYS_SUPPORTS_APM_EMULATION=y 9 | CONFIG_HAVE_PROC_CPU=y 10 | CONFIG_STACKTRACE_SUPPORT=y 11 | CONFIG_LOCKDEP_SUPPORT=y 12 | CONFIG_TRACE_IRQFLAGS_SUPPORT=y 13 | CONFIG_RWSEM_XCHGADD_ALGORITHM=y 14 | CONFIG_FIX_EARLYCON_MEM=y 15 | CONFIG_GENERIC_HWEIGHT=y 16 | CONFIG_GENERIC_CALIBRATE_DELAY=y 17 | CONFIG_NEED_DMA_MAP_STATE=y 18 | CONFIG_ARCH_SUPPORTS_UPROBES=y 19 | CONFIG_VECTORS_BASE=0xffff0000 20 | CONFIG_ARM_PATCH_PHYS_VIRT=y 21 | CONFIG_GENERIC_BUG=y 22 | CONFIG_PGTABLE_LEVELS=2 23 | CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config" 24 | CONFIG_IRQ_WORK=y 25 | CONFIG_BUILDTIME_EXTABLE_SORT=y 26 | 27 | # 28 | # General setup 29 | # 30 | CONFIG_INIT_ENV_ARG_LIMIT=32 31 | CONFIG_CROSS_COMPILE="" 32 | # CONFIG_COMPILE_TEST is not set 33 | CONFIG_LOCALVERSION="-fslc" 34 | CONFIG_LOCALVERSION_AUTO=y 35 | CONFIG_HAVE_KERNEL_GZIP=y 36 | CONFIG_HAVE_KERNEL_LZMA=y 37 | CONFIG_HAVE_KERNEL_XZ=y 38 | CONFIG_HAVE_KERNEL_LZO=y 39 | CONFIG_HAVE_KERNEL_LZ4=y 40 | # CONFIG_KERNEL_GZIP is not set 41 | # CONFIG_KERNEL_LZMA is not set 42 | # CONFIG_KERNEL_XZ is not set 43 | CONFIG_KERNEL_LZO=y 44 | # CONFIG_KERNEL_LZ4 is not set 45 | CONFIG_DEFAULT_HOSTNAME="(none)" 46 | CONFIG_SWAP=y 47 | CONFIG_SYSVIPC=y 48 | CONFIG_SYSVIPC_SYSCTL=y 49 | # CONFIG_POSIX_MQUEUE is not set 50 | CONFIG_CROSS_MEMORY_ATTACH=y 51 | CONFIG_FHANDLE=y 52 | # CONFIG_USELIB is not set 53 | CONFIG_AUDIT=y 54 | CONFIG_HAVE_ARCH_AUDITSYSCALL=y 55 | CONFIG_AUDITSYSCALL=y 56 | CONFIG_AUDIT_WATCH=y 57 | CONFIG_AUDIT_TREE=y 58 | 59 | # 60 | # IRQ subsystem 61 | # 62 | CONFIG_GENERIC_IRQ_PROBE=y 63 | CONFIG_GENERIC_IRQ_SHOW=y 64 | CONFIG_GENERIC_IRQ_SHOW_LEVEL=y 65 | CONFIG_HARDIRQS_SW_RESEND=y 66 | CONFIG_GENERIC_IRQ_CHIP=y 67 | CONFIG_IRQ_DOMAIN=y 68 | CONFIG_IRQ_DOMAIN_HIERARCHY=y 69 | CONFIG_HANDLE_DOMAIN_IRQ=y 70 | # CONFIG_IRQ_DOMAIN_DEBUG is not set 71 | CONFIG_IRQ_FORCED_THREADING=y 72 | CONFIG_SPARSE_IRQ=y 73 | CONFIG_GENERIC_TIME_VSYSCALL=y 74 | CONFIG_GENERIC_CLOCKEVENTS=y 75 | CONFIG_ARCH_HAS_TICK_BROADCAST=y 76 | CONFIG_GENERIC_CLOCKEVENTS_BROADCAST=y 77 | 78 | # 79 | # Timers subsystem 80 | # 81 | CONFIG_TICK_ONESHOT=y 82 | CONFIG_NO_HZ_COMMON=y 83 | # CONFIG_HZ_PERIODIC is not set 84 | CONFIG_NO_HZ_IDLE=y 85 | # CONFIG_NO_HZ_FULL is not set 86 | CONFIG_NO_HZ=y 87 | CONFIG_HIGH_RES_TIMERS=y 88 | 89 | # 90 | # CPU/Task time and stats accounting 91 | # 92 | CONFIG_TICK_CPU_ACCOUNTING=y 93 | # CONFIG_VIRT_CPU_ACCOUNTING_GEN is not set 94 | # CONFIG_IRQ_TIME_ACCOUNTING is not set 95 | # CONFIG_BSD_PROCESS_ACCT is not set 96 | # CONFIG_TASKSTATS is not set 97 | 98 | # 99 | # RCU Subsystem 100 | # 101 | CONFIG_TREE_RCU=y 102 | # CONFIG_RCU_EXPERT is not set 103 | CONFIG_SRCU=y 104 | # CONFIG_TASKS_RCU is not set 105 | CONFIG_RCU_STALL_COMMON=y 106 | # CONFIG_TREE_RCU_TRACE is not set 107 | # CONFIG_RCU_EXPEDITE_BOOT is not set 108 | CONFIG_BUILD_BIN2C=y 109 | CONFIG_IKCONFIG=y 110 | CONFIG_IKCONFIG_PROC=y 111 | CONFIG_LOG_BUF_SHIFT=18 112 | CONFIG_LOG_CPU_MAX_BUF_SHIFT=12 113 | CONFIG_NMI_LOG_BUF_SHIFT=13 114 | CONFIG_GENERIC_SCHED_CLOCK=y 115 | CONFIG_CGROUPS=y 116 | # CONFIG_MEMCG is not set 117 | # CONFIG_BLK_CGROUP is not set 118 | # CONFIG_CGROUP_SCHED is not set 119 | # CONFIG_CGROUP_PIDS is not set 120 | # CONFIG_CGROUP_FREEZER is not set 121 | # CONFIG_CPUSETS is not set 122 | # CONFIG_CGROUP_DEVICE is not set 123 | # CONFIG_CGROUP_CPUACCT is not set 124 | # CONFIG_CGROUP_PERF is not set 125 | # CONFIG_CGROUP_DEBUG is not set 126 | # CONFIG_CHECKPOINT_RESTORE is not set 127 | # CONFIG_NAMESPACES is not set 128 | # CONFIG_SCHED_AUTOGROUP is not set 129 | # CONFIG_SYSFS_DEPRECATED is not set 130 | CONFIG_RELAY=y 131 | CONFIG_BLK_DEV_INITRD=y 132 | CONFIG_INITRAMFS_SOURCE="" 133 | # CONFIG_RD_GZIP is not set 134 | # CONFIG_RD_BZIP2 is not set 135 | # CONFIG_RD_LZMA is not set 136 | # CONFIG_RD_XZ is not set 137 | CONFIG_RD_LZO=y 138 | # CONFIG_RD_LZ4 is not set 139 | CONFIG_CC_OPTIMIZE_FOR_PERFORMANCE=y 140 | # CONFIG_CC_OPTIMIZE_FOR_SIZE is not set 141 | CONFIG_SYSCTL=y 142 | CONFIG_ANON_INODES=y 143 | CONFIG_HAVE_UID16=y 144 | CONFIG_BPF=y 145 | CONFIG_EXPERT=y 146 | CONFIG_UID16=y 147 | CONFIG_MULTIUSER=y 148 | # CONFIG_SGETMASK_SYSCALL is not set 149 | CONFIG_SYSFS_SYSCALL=y 150 | # CONFIG_SYSCTL_SYSCALL is not set 151 | CONFIG_KALLSYMS=y 152 | CONFIG_KALLSYMS_ALL=y 153 | # CONFIG_KALLSYMS_ABSOLUTE_PERCPU is not set 154 | CONFIG_KALLSYMS_BASE_RELATIVE=y 155 | CONFIG_PRINTK=y 156 | CONFIG_PRINTK_NMI=y 157 | CONFIG_BUG=y 158 | CONFIG_ELF_CORE=y 159 | CONFIG_BASE_FULL=y 160 | CONFIG_FUTEX=y 161 | CONFIG_EPOLL=y 162 | CONFIG_SIGNALFD=y 163 | CONFIG_TIMERFD=y 164 | CONFIG_EVENTFD=y 165 | # CONFIG_BPF_SYSCALL is not set 166 | CONFIG_SHMEM=y 167 | CONFIG_AIO=y 168 | CONFIG_ADVISE_SYSCALLS=y 169 | # CONFIG_USERFAULTFD is not set 170 | CONFIG_MEMBARRIER=y 171 | # CONFIG_EMBEDDED is not set 172 | CONFIG_HAVE_PERF_EVENTS=y 173 | CONFIG_PERF_USE_VMALLOC=y 174 | 175 | # 176 | # Kernel Performance Events And Counters 177 | # 178 | CONFIG_PERF_EVENTS=y 179 | # CONFIG_DEBUG_PERF_USE_VMALLOC is not set 180 | CONFIG_VM_EVENT_COUNTERS=y 181 | # CONFIG_SLUB_DEBUG is not set 182 | # CONFIG_COMPAT_BRK is not set 183 | # CONFIG_SLAB is not set 184 | CONFIG_SLUB=y 185 | # CONFIG_SLOB is not set 186 | # CONFIG_SLAB_FREELIST_RANDOM is not set 187 | CONFIG_SLUB_CPU_PARTIAL=y 188 | # CONFIG_SYSTEM_DATA_VERIFICATION is not set 189 | # CONFIG_PROFILING is not set 190 | CONFIG_TRACEPOINTS=y 191 | CONFIG_HAVE_OPROFILE=y 192 | # CONFIG_KPROBES is not set 193 | # CONFIG_JUMP_LABEL is not set 194 | # CONFIG_UPROBES is not set 195 | # CONFIG_HAVE_64BIT_ALIGNED_ACCESS is not set 196 | CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS=y 197 | CONFIG_ARCH_USE_BUILTIN_BSWAP=y 198 | CONFIG_HAVE_KPROBES=y 199 | CONFIG_HAVE_KRETPROBES=y 200 | CONFIG_HAVE_OPTPROBES=y 201 | CONFIG_HAVE_NMI=y 202 | CONFIG_HAVE_ARCH_TRACEHOOK=y 203 | CONFIG_HAVE_DMA_CONTIGUOUS=y 204 | CONFIG_GENERIC_SMP_IDLE_THREAD=y 205 | CONFIG_GENERIC_IDLE_POLL_SETUP=y 206 | CONFIG_HAVE_REGS_AND_STACK_ACCESS_API=y 207 | CONFIG_HAVE_CLK=y 208 | CONFIG_HAVE_DMA_API_DEBUG=y 209 | CONFIG_HAVE_HW_BREAKPOINT=y 210 | CONFIG_HAVE_PERF_REGS=y 211 | CONFIG_HAVE_PERF_USER_STACK_DUMP=y 212 | CONFIG_HAVE_ARCH_JUMP_LABEL=y 213 | CONFIG_ARCH_WANT_IPC_PARSE_VERSION=y 214 | CONFIG_HAVE_ARCH_SECCOMP_FILTER=y 215 | CONFIG_HAVE_GCC_PLUGINS=y 216 | # CONFIG_GCC_PLUGINS is not set 217 | CONFIG_HAVE_CC_STACKPROTECTOR=y 218 | # CONFIG_CC_STACKPROTECTOR is not set 219 | CONFIG_CC_STACKPROTECTOR_NONE=y 220 | # CONFIG_CC_STACKPROTECTOR_REGULAR is not set 221 | # CONFIG_CC_STACKPROTECTOR_STRONG is not set 222 | CONFIG_HAVE_CONTEXT_TRACKING=y 223 | CONFIG_HAVE_VIRT_CPU_ACCOUNTING_GEN=y 224 | CONFIG_HAVE_IRQ_TIME_ACCOUNTING=y 225 | CONFIG_HAVE_MOD_ARCH_SPECIFIC=y 226 | CONFIG_MODULES_USE_ELF_REL=y 227 | CONFIG_ARCH_HAS_ELF_RANDOMIZE=y 228 | CONFIG_HAVE_ARCH_MMAP_RND_BITS=y 229 | CONFIG_HAVE_EXIT_THREAD=y 230 | CONFIG_ARCH_MMAP_RND_BITS_MIN=8 231 | CONFIG_ARCH_MMAP_RND_BITS_MAX=16 232 | CONFIG_ARCH_MMAP_RND_BITS=8 233 | # CONFIG_HAVE_ARCH_HASH is not set 234 | # CONFIG_ISA_BUS_API is not set 235 | CONFIG_CLONE_BACKWARDS=y 236 | CONFIG_OLD_SIGSUSPEND3=y 237 | CONFIG_OLD_SIGACTION=y 238 | # CONFIG_CPU_NO_EFFICIENT_FFS is not set 239 | 240 | # 241 | # GCOV-based kernel profiling 242 | # 243 | # CONFIG_GCOV_KERNEL is not set 244 | CONFIG_ARCH_HAS_GCOV_PROFILE_ALL=y 245 | CONFIG_HAVE_GENERIC_DMA_COHERENT=y 246 | CONFIG_RT_MUTEXES=y 247 | CONFIG_BASE_SMALL=0 248 | CONFIG_MODULES=y 249 | # CONFIG_MODULE_FORCE_LOAD is not set 250 | CONFIG_MODULE_UNLOAD=y 251 | # CONFIG_MODULE_FORCE_UNLOAD is not set 252 | CONFIG_MODVERSIONS=y 253 | CONFIG_MODULE_SRCVERSION_ALL=y 254 | # CONFIG_MODULE_SIG is not set 255 | # CONFIG_MODULE_COMPRESS is not set 256 | # CONFIG_TRIM_UNUSED_KSYMS is not set 257 | CONFIG_MODULES_TREE_LOOKUP=y 258 | CONFIG_BLOCK=y 259 | CONFIG_LBDAF=y 260 | # CONFIG_BLK_DEV_BSG is not set 261 | # CONFIG_BLK_DEV_BSGLIB is not set 262 | # CONFIG_BLK_DEV_INTEGRITY is not set 263 | # CONFIG_BLK_CMDLINE_PARSER is not set 264 | 265 | # 266 | # Partition Types 267 | # 268 | # CONFIG_PARTITION_ADVANCED is not set 269 | CONFIG_MSDOS_PARTITION=y 270 | CONFIG_EFI_PARTITION=y 271 | 272 | # 273 | # IO Schedulers 274 | # 275 | CONFIG_IOSCHED_NOOP=y 276 | CONFIG_IOSCHED_DEADLINE=y 277 | CONFIG_IOSCHED_CFQ=y 278 | # CONFIG_DEFAULT_DEADLINE is not set 279 | CONFIG_DEFAULT_CFQ=y 280 | # CONFIG_DEFAULT_NOOP is not set 281 | CONFIG_DEFAULT_IOSCHED="cfq" 282 | CONFIG_ASN1=y 283 | CONFIG_UNINLINE_SPIN_UNLOCK=y 284 | CONFIG_ARCH_SUPPORTS_ATOMIC_RMW=y 285 | CONFIG_RWSEM_SPIN_ON_OWNER=y 286 | CONFIG_LOCK_SPIN_ON_OWNER=y 287 | # CONFIG_FREEZER is not set 288 | 289 | # 290 | # System Type 291 | # 292 | CONFIG_MMU=y 293 | CONFIG_ARCH_MULTIPLATFORM=y 294 | # CONFIG_ARCH_GEMINI is not set 295 | # CONFIG_ARCH_EBSA110 is not set 296 | # CONFIG_ARCH_EP93XX is not set 297 | # CONFIG_ARCH_FOOTBRIDGE is not set 298 | # CONFIG_ARCH_NETX is not set 299 | # CONFIG_ARCH_IOP13XX is not set 300 | # CONFIG_ARCH_IOP32X is not set 301 | # CONFIG_ARCH_IOP33X is not set 302 | # CONFIG_ARCH_IXP4XX is not set 303 | # CONFIG_ARCH_DOVE is not set 304 | # CONFIG_ARCH_KS8695 is not set 305 | # CONFIG_ARCH_W90X900 is not set 306 | # CONFIG_ARCH_LPC32XX is not set 307 | # CONFIG_ARCH_PXA is not set 308 | # CONFIG_ARCH_RPC is not set 309 | # CONFIG_ARCH_SA1100 is not set 310 | # CONFIG_ARCH_S3C24XX is not set 311 | # CONFIG_ARCH_DAVINCI is not set 312 | # CONFIG_ARCH_OMAP1 is not set 313 | 314 | # 315 | # Multiple platform selection 316 | # 317 | 318 | # 319 | # CPU Core family selection 320 | # 321 | # CONFIG_ARCH_MULTI_V6 is not set 322 | CONFIG_ARCH_MULTI_V7=y 323 | CONFIG_ARCH_MULTI_V6_V7=y 324 | # CONFIG_ARCH_MULTI_CPU_AUTO is not set 325 | # CONFIG_ARCH_VIRT is not set 326 | # CONFIG_ARCH_MVEBU is not set 327 | # CONFIG_ARCH_ALPINE is not set 328 | # CONFIG_ARCH_ARTPEC is not set 329 | # CONFIG_ARCH_AT91 is not set 330 | # CONFIG_ARCH_BCM is not set 331 | # CONFIG_ARCH_BERLIN is not set 332 | # CONFIG_ARCH_DIGICOLOR is not set 333 | # CONFIG_ARCH_HIGHBANK is not set 334 | # CONFIG_ARCH_HISI is not set 335 | # CONFIG_ARCH_KEYSTONE is not set 336 | # CONFIG_ARCH_MESON is not set 337 | CONFIG_ARCH_MXC=y 338 | CONFIG_HAVE_IMX_ANATOP=y 339 | CONFIG_HAVE_IMX_GPC=y 340 | CONFIG_HAVE_IMX_MMDC=y 341 | CONFIG_HAVE_IMX_SRC=y 342 | 343 | # 344 | # Device tree only 345 | # 346 | 347 | # 348 | # Cortex-A platforms 349 | # 350 | # CONFIG_SOC_IMX50 is not set 351 | # CONFIG_SOC_IMX51 is not set 352 | # CONFIG_SOC_IMX53 is not set 353 | CONFIG_SOC_IMX6=y 354 | CONFIG_SOC_IMX6Q=y 355 | # CONFIG_SOC_IMX6SL is not set 356 | # CONFIG_SOC_IMX6SX is not set 357 | # CONFIG_SOC_IMX6UL is not set 358 | # CONFIG_SOC_IMX7D is not set 359 | # CONFIG_SOC_LS1021A is not set 360 | 361 | # 362 | # Cortex-A/Cortex-M asymmetric multiprocessing platforms 363 | # 364 | # CONFIG_SOC_VF610 is not set 365 | # CONFIG_ARCH_MEDIATEK is not set 366 | 367 | # 368 | # TI OMAP/AM/DM/DRA Family 369 | # 370 | # CONFIG_ARCH_OMAP3 is not set 371 | # CONFIG_ARCH_OMAP4 is not set 372 | # CONFIG_SOC_OMAP5 is not set 373 | # CONFIG_SOC_AM33XX is not set 374 | # CONFIG_SOC_AM43XX is not set 375 | # CONFIG_SOC_DRA7XX is not set 376 | # CONFIG_ARCH_MMP is not set 377 | # CONFIG_ARCH_QCOM is not set 378 | # CONFIG_ARCH_REALVIEW is not set 379 | # CONFIG_ARCH_ROCKCHIP is not set 380 | # CONFIG_ARCH_SOCFPGA is not set 381 | # CONFIG_PLAT_SPEAR is not set 382 | # CONFIG_ARCH_STI is not set 383 | # CONFIG_ARCH_S5PV210 is not set 384 | # CONFIG_ARCH_EXYNOS is not set 385 | # CONFIG_ARCH_RENESAS is not set 386 | # CONFIG_ARCH_SUNXI is not set 387 | # CONFIG_ARCH_SIRF is not set 388 | # CONFIG_ARCH_TANGO is not set 389 | # CONFIG_ARCH_TEGRA is not set 390 | # CONFIG_ARCH_UNIPHIER is not set 391 | # CONFIG_ARCH_U8500 is not set 392 | # CONFIG_ARCH_VEXPRESS is not set 393 | # CONFIG_ARCH_WM8850 is not set 394 | # CONFIG_ARCH_ZX is not set 395 | # CONFIG_ARCH_ZYNQ is not set 396 | 397 | # 398 | # Processor Type 399 | # 400 | CONFIG_CPU_V7=y 401 | CONFIG_CPU_32v6K=y 402 | CONFIG_CPU_32v7=y 403 | CONFIG_CPU_ABRT_EV7=y 404 | CONFIG_CPU_PABRT_V7=y 405 | CONFIG_CPU_CACHE_V7=y 406 | CONFIG_CPU_CACHE_VIPT=y 407 | CONFIG_CPU_COPY_V6=y 408 | CONFIG_CPU_TLB_V7=y 409 | CONFIG_CPU_HAS_ASID=y 410 | CONFIG_CPU_CP15=y 411 | CONFIG_CPU_CP15_MMU=y 412 | 413 | # 414 | # Processor Features 415 | # 416 | # CONFIG_ARM_LPAE is not set 417 | # CONFIG_ARCH_PHYS_ADDR_T_64BIT is not set 418 | CONFIG_ARM_THUMB=y 419 | CONFIG_ARM_THUMBEE=y 420 | CONFIG_ARM_VIRT_EXT=y 421 | CONFIG_SWP_EMULATE=y 422 | # CONFIG_CPU_BIG_ENDIAN is not set 423 | # CONFIG_CPU_ICACHE_DISABLE is not set 424 | # CONFIG_CPU_BPREDICT_DISABLE is not set 425 | CONFIG_KUSER_HELPERS=y 426 | CONFIG_VDSO=y 427 | CONFIG_OUTER_CACHE=y 428 | CONFIG_OUTER_CACHE_SYNC=y 429 | CONFIG_MIGHT_HAVE_CACHE_L2X0=y 430 | CONFIG_CACHE_L2X0=y 431 | # CONFIG_PL310_ERRATA_588369 is not set 432 | # CONFIG_PL310_ERRATA_727915 is not set 433 | # CONFIG_PL310_ERRATA_753970 is not set 434 | CONFIG_PL310_ERRATA_769419=y 435 | CONFIG_ARM_L1_CACHE_SHIFT_6=y 436 | CONFIG_ARM_L1_CACHE_SHIFT=6 437 | CONFIG_ARM_DMA_MEM_BUFFERABLE=y 438 | CONFIG_ARM_HEAVY_MB=y 439 | CONFIG_ARCH_SUPPORTS_BIG_ENDIAN=y 440 | CONFIG_DEBUG_RODATA=y 441 | CONFIG_DEBUG_ALIGN_RODATA=y 442 | CONFIG_MULTI_IRQ_HANDLER=y 443 | # CONFIG_ARM_ERRATA_430973 is not set 444 | CONFIG_ARM_ERRATA_643719=y 445 | # CONFIG_ARM_ERRATA_720789 is not set 446 | CONFIG_ARM_ERRATA_754322=y 447 | # CONFIG_ARM_ERRATA_754327 is not set 448 | CONFIG_ARM_ERRATA_764369=y 449 | CONFIG_ARM_ERRATA_775420=y 450 | # CONFIG_ARM_ERRATA_798181 is not set 451 | # CONFIG_ARM_ERRATA_773022 is not set 452 | # CONFIG_ARM_ERRATA_818325_852422 is not set 453 | # CONFIG_ARM_ERRATA_821420 is not set 454 | # CONFIG_ARM_ERRATA_825619 is not set 455 | # CONFIG_ARM_ERRATA_852421 is not set 456 | # CONFIG_ARM_ERRATA_852423 is not set 457 | 458 | # 459 | # Bus support 460 | # 461 | # CONFIG_PCI is not set 462 | # CONFIG_PCI_DOMAINS_GENERIC is not set 463 | # CONFIG_PCI_SYSCALL is not set 464 | # CONFIG_PCCARD is not set 465 | 466 | # 467 | # Kernel Features 468 | # 469 | CONFIG_HAVE_SMP=y 470 | CONFIG_SMP=y 471 | CONFIG_SMP_ON_UP=y 472 | CONFIG_ARM_CPU_TOPOLOGY=y 473 | # CONFIG_SCHED_MC is not set 474 | # CONFIG_SCHED_SMT is not set 475 | CONFIG_HAVE_ARM_SCU=y 476 | CONFIG_HAVE_ARM_ARCH_TIMER=y 477 | CONFIG_HAVE_ARM_TWD=y 478 | # CONFIG_MCPM is not set 479 | # CONFIG_BIG_LITTLE is not set 480 | CONFIG_VMSPLIT_3G=y 481 | # CONFIG_VMSPLIT_3G_OPT is not set 482 | # CONFIG_VMSPLIT_2G is not set 483 | # CONFIG_VMSPLIT_1G is not set 484 | CONFIG_PAGE_OFFSET=0xC0000000 485 | CONFIG_NR_CPUS=4 486 | CONFIG_HOTPLUG_CPU=y 487 | CONFIG_ARM_PSCI=y 488 | CONFIG_ARCH_NR_GPIO=0 489 | # CONFIG_PREEMPT_NONE is not set 490 | CONFIG_PREEMPT_VOLUNTARY=y 491 | # CONFIG_PREEMPT is not set 492 | CONFIG_HZ_FIXED=0 493 | CONFIG_HZ_100=y 494 | # CONFIG_HZ_200 is not set 495 | # CONFIG_HZ_250 is not set 496 | # CONFIG_HZ_300 is not set 497 | # CONFIG_HZ_500 is not set 498 | # CONFIG_HZ_1000 is not set 499 | CONFIG_HZ=100 500 | CONFIG_SCHED_HRTICK=y 501 | # CONFIG_THUMB2_KERNEL is not set 502 | CONFIG_ARM_PATCH_IDIV=y 503 | CONFIG_AEABI=y 504 | # CONFIG_OABI_COMPAT is not set 505 | # CONFIG_ARCH_SPARSEMEM_DEFAULT is not set 506 | # CONFIG_ARCH_SELECT_MEMORY_MODEL is not set 507 | CONFIG_HAVE_ARCH_PFN_VALID=y 508 | CONFIG_HIGHMEM=y 509 | CONFIG_HIGHPTE=y 510 | CONFIG_CPU_SW_DOMAIN_PAN=y 511 | CONFIG_HW_PERF_EVENTS=y 512 | CONFIG_ARCH_WANT_GENERAL_HUGETLB=y 513 | # CONFIG_ARM_MODULE_PLTS is not set 514 | CONFIG_FLATMEM=y 515 | CONFIG_FLAT_NODE_MEM_MAP=y 516 | CONFIG_HAVE_MEMBLOCK=y 517 | CONFIG_NO_BOOTMEM=y 518 | CONFIG_MEMORY_ISOLATION=y 519 | # CONFIG_HAVE_BOOTMEM_INFO_NODE is not set 520 | CONFIG_SPLIT_PTLOCK_CPUS=4 521 | CONFIG_COMPACTION=y 522 | CONFIG_MIGRATION=y 523 | # CONFIG_PHYS_ADDR_T_64BIT is not set 524 | CONFIG_BOUNCE=y 525 | # CONFIG_KSM is not set 526 | CONFIG_DEFAULT_MMAP_MIN_ADDR=4096 527 | # CONFIG_CLEANCACHE is not set 528 | # CONFIG_FRONTSWAP is not set 529 | CONFIG_CMA=y 530 | # CONFIG_CMA_DEBUG is not set 531 | # CONFIG_CMA_DEBUGFS is not set 532 | CONFIG_CMA_AREAS=7 533 | # CONFIG_ZPOOL is not set 534 | # CONFIG_ZBUD is not set 535 | # CONFIG_ZSMALLOC is not set 536 | CONFIG_GENERIC_EARLY_IOREMAP=y 537 | # CONFIG_IDLE_PAGE_TRACKING is not set 538 | CONFIG_FORCE_MAX_ZONEORDER=11 539 | CONFIG_ALIGNMENT_TRAP=y 540 | # CONFIG_UACCESS_WITH_MEMCPY is not set 541 | # CONFIG_SECCOMP is not set 542 | CONFIG_SWIOTLB=y 543 | CONFIG_IOMMU_HELPER=y 544 | # CONFIG_PARAVIRT is not set 545 | # CONFIG_PARAVIRT_TIME_ACCOUNTING is not set 546 | # CONFIG_XEN is not set 547 | 548 | # 549 | # Boot options 550 | # 551 | CONFIG_USE_OF=y 552 | CONFIG_ATAGS=y 553 | # CONFIG_DEPRECATED_PARAM_STRUCT is not set 554 | CONFIG_ZBOOT_ROM_TEXT=0 555 | CONFIG_ZBOOT_ROM_BSS=0 556 | # CONFIG_ARM_APPENDED_DTB is not set 557 | CONFIG_CMDLINE="console=ttymxc0,115200" 558 | CONFIG_CMDLINE_FROM_BOOTLOADER=y 559 | # CONFIG_CMDLINE_EXTEND is not set 560 | # CONFIG_CMDLINE_FORCE is not set 561 | # CONFIG_CRASH_DUMP is not set 562 | CONFIG_AUTO_ZRELADDR=y 563 | # CONFIG_EFI is not set 564 | 565 | # 566 | # CPU Power Management 567 | # 568 | 569 | # 570 | # CPU Frequency scaling 571 | # 572 | CONFIG_CPU_FREQ=y 573 | CONFIG_CPU_FREQ_GOV_ATTR_SET=y 574 | CONFIG_CPU_FREQ_GOV_COMMON=y 575 | # CONFIG_CPU_FREQ_STAT is not set 576 | # CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE is not set 577 | # CONFIG_CPU_FREQ_DEFAULT_GOV_POWERSAVE is not set 578 | # CONFIG_CPU_FREQ_DEFAULT_GOV_USERSPACE is not set 579 | CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND=y 580 | # CONFIG_CPU_FREQ_DEFAULT_GOV_CONSERVATIVE is not set 581 | # CONFIG_CPU_FREQ_DEFAULT_GOV_SCHEDUTIL is not set 582 | CONFIG_CPU_FREQ_GOV_PERFORMANCE=y 583 | # CONFIG_CPU_FREQ_GOV_POWERSAVE is not set 584 | # CONFIG_CPU_FREQ_GOV_USERSPACE is not set 585 | CONFIG_CPU_FREQ_GOV_ONDEMAND=y 586 | # CONFIG_CPU_FREQ_GOV_CONSERVATIVE is not set 587 | # CONFIG_CPU_FREQ_GOV_SCHEDUTIL is not set 588 | 589 | # 590 | # CPU frequency scaling drivers 591 | # 592 | # CONFIG_CPUFREQ_DT is not set 593 | # CONFIG_ARM_BIG_LITTLE_CPUFREQ is not set 594 | CONFIG_ARM_IMX6Q_CPUFREQ=y 595 | # CONFIG_ARM_KIRKWOOD_CPUFREQ is not set 596 | # CONFIG_QORIQ_CPUFREQ is not set 597 | 598 | # 599 | # CPU Idle 600 | # 601 | CONFIG_CPU_IDLE=y 602 | # CONFIG_CPU_IDLE_GOV_LADDER is not set 603 | CONFIG_CPU_IDLE_GOV_MENU=y 604 | 605 | # 606 | # ARM CPU Idle Drivers 607 | # 608 | # CONFIG_ARM_CPUIDLE is not set 609 | # CONFIG_ARM_HIGHBANK_CPUIDLE is not set 610 | # CONFIG_ARCH_NEEDS_CPU_IDLE_COUPLED is not set 611 | 612 | # 613 | # Floating point emulation 614 | # 615 | 616 | # 617 | # At least one emulation must be selected 618 | # 619 | CONFIG_VFP=y 620 | CONFIG_VFPv3=y 621 | CONFIG_NEON=y 622 | # CONFIG_KERNEL_MODE_NEON is not set 623 | 624 | # 625 | # Userspace binary formats 626 | # 627 | CONFIG_BINFMT_ELF=y 628 | CONFIG_ELFCORE=y 629 | CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS=y 630 | CONFIG_BINFMT_SCRIPT=y 631 | # CONFIG_HAVE_AOUT is not set 632 | CONFIG_BINFMT_MISC=m 633 | CONFIG_COREDUMP=y 634 | 635 | # 636 | # Power management options 637 | # 638 | # CONFIG_SUSPEND is not set 639 | # CONFIG_HIBERNATION is not set 640 | # CONFIG_PM is not set 641 | # CONFIG_APM_EMULATION is not set 642 | CONFIG_PM_OPP=y 643 | CONFIG_CPU_PM=y 644 | CONFIG_ARCH_SUSPEND_POSSIBLE=y 645 | CONFIG_ARM_CPU_SUSPEND=y 646 | CONFIG_ARCH_HIBERNATION_POSSIBLE=y 647 | CONFIG_NET=y 648 | CONFIG_NET_INGRESS=y 649 | 650 | # 651 | # Networking options 652 | # 653 | CONFIG_PACKET=y 654 | # CONFIG_PACKET_DIAG is not set 655 | CONFIG_UNIX=y 656 | # CONFIG_UNIX_DIAG is not set 657 | CONFIG_XFRM=y 658 | # CONFIG_XFRM_USER is not set 659 | # CONFIG_XFRM_SUB_POLICY is not set 660 | # CONFIG_XFRM_MIGRATE is not set 661 | # CONFIG_XFRM_STATISTICS is not set 662 | # CONFIG_NET_KEY is not set 663 | CONFIG_INET=y 664 | # CONFIG_IP_MULTICAST is not set 665 | # CONFIG_IP_ADVANCED_ROUTER is not set 666 | CONFIG_IP_PNP=y 667 | CONFIG_IP_PNP_DHCP=y 668 | # CONFIG_IP_PNP_BOOTP is not set 669 | # CONFIG_IP_PNP_RARP is not set 670 | # CONFIG_NET_IPIP is not set 671 | # CONFIG_NET_IPGRE_DEMUX is not set 672 | CONFIG_NET_IP_TUNNEL=y 673 | # CONFIG_SYN_COOKIES is not set 674 | # CONFIG_NET_UDP_TUNNEL is not set 675 | # CONFIG_NET_FOU is not set 676 | # CONFIG_NET_FOU_IP_TUNNELS is not set 677 | # CONFIG_INET_AH is not set 678 | # CONFIG_INET_ESP is not set 679 | # CONFIG_INET_IPCOMP is not set 680 | # CONFIG_INET_XFRM_TUNNEL is not set 681 | CONFIG_INET_TUNNEL=y 682 | # CONFIG_INET_XFRM_MODE_TRANSPORT is not set 683 | # CONFIG_INET_XFRM_MODE_TUNNEL is not set 684 | # CONFIG_INET_XFRM_MODE_BEET is not set 685 | CONFIG_INET_DIAG=y 686 | CONFIG_INET_TCP_DIAG=y 687 | # CONFIG_INET_UDP_DIAG is not set 688 | # CONFIG_INET_DIAG_DESTROY is not set 689 | # CONFIG_TCP_CONG_ADVANCED is not set 690 | CONFIG_TCP_CONG_CUBIC=y 691 | CONFIG_DEFAULT_TCP_CONG="cubic" 692 | # CONFIG_TCP_MD5SIG is not set 693 | CONFIG_IPV6=y 694 | # CONFIG_IPV6_ROUTER_PREF is not set 695 | # CONFIG_IPV6_OPTIMISTIC_DAD is not set 696 | # CONFIG_INET6_AH is not set 697 | # CONFIG_INET6_ESP is not set 698 | # CONFIG_INET6_IPCOMP is not set 699 | # CONFIG_IPV6_MIP6 is not set 700 | # CONFIG_IPV6_ILA is not set 701 | # CONFIG_INET6_XFRM_TUNNEL is not set 702 | # CONFIG_INET6_TUNNEL is not set 703 | CONFIG_INET6_XFRM_MODE_TRANSPORT=y 704 | CONFIG_INET6_XFRM_MODE_TUNNEL=y 705 | CONFIG_INET6_XFRM_MODE_BEET=y 706 | # CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION is not set 707 | # CONFIG_IPV6_VTI is not set 708 | CONFIG_IPV6_SIT=y 709 | # CONFIG_IPV6_SIT_6RD is not set 710 | CONFIG_IPV6_NDISC_NODETYPE=y 711 | # CONFIG_IPV6_TUNNEL is not set 712 | # CONFIG_IPV6_FOU is not set 713 | # CONFIG_IPV6_FOU_TUNNEL is not set 714 | # CONFIG_IPV6_MULTIPLE_TABLES is not set 715 | # CONFIG_IPV6_MROUTE is not set 716 | # CONFIG_NETLABEL is not set 717 | # CONFIG_NETWORK_SECMARK is not set 718 | CONFIG_NET_PTP_CLASSIFY=y 719 | # CONFIG_NETWORK_PHY_TIMESTAMPING is not set 720 | CONFIG_NETFILTER=y 721 | # CONFIG_NETFILTER_DEBUG is not set 722 | CONFIG_NETFILTER_ADVANCED=y 723 | 724 | # 725 | # Core Netfilter Configuration 726 | # 727 | CONFIG_NETFILTER_INGRESS=y 728 | # CONFIG_NETFILTER_NETLINK_ACCT is not set 729 | # CONFIG_NETFILTER_NETLINK_QUEUE is not set 730 | # CONFIG_NETFILTER_NETLINK_LOG is not set 731 | # CONFIG_NF_CONNTRACK is not set 732 | # CONFIG_NF_TABLES is not set 733 | # CONFIG_NETFILTER_XTABLES is not set 734 | # CONFIG_IP_SET is not set 735 | # CONFIG_IP_VS is not set 736 | 737 | # 738 | # IP: Netfilter Configuration 739 | # 740 | # CONFIG_NF_DEFRAG_IPV4 is not set 741 | # CONFIG_NF_DUP_IPV4 is not set 742 | # CONFIG_NF_LOG_ARP is not set 743 | # CONFIG_NF_LOG_IPV4 is not set 744 | # CONFIG_NF_REJECT_IPV4 is not set 745 | # CONFIG_IP_NF_IPTABLES is not set 746 | # CONFIG_IP_NF_ARPTABLES is not set 747 | 748 | # 749 | # IPv6: Netfilter Configuration 750 | # 751 | # CONFIG_NF_DEFRAG_IPV6 is not set 752 | # CONFIG_NF_DUP_IPV6 is not set 753 | # CONFIG_NF_REJECT_IPV6 is not set 754 | # CONFIG_NF_LOG_IPV6 is not set 755 | # CONFIG_IP6_NF_IPTABLES is not set 756 | # CONFIG_IP_DCCP is not set 757 | # CONFIG_IP_SCTP is not set 758 | # CONFIG_RDS is not set 759 | # CONFIG_TIPC is not set 760 | # CONFIG_ATM is not set 761 | # CONFIG_L2TP is not set 762 | # CONFIG_BRIDGE is not set 763 | CONFIG_HAVE_NET_DSA=y 764 | # CONFIG_VLAN_8021Q is not set 765 | # CONFIG_DECNET is not set 766 | # CONFIG_LLC2 is not set 767 | # CONFIG_IPX is not set 768 | # CONFIG_ATALK is not set 769 | # CONFIG_X25 is not set 770 | # CONFIG_LAPB is not set 771 | # CONFIG_PHONET is not set 772 | # CONFIG_6LOWPAN is not set 773 | # CONFIG_IEEE802154 is not set 774 | # CONFIG_NET_SCHED is not set 775 | # CONFIG_DCB is not set 776 | CONFIG_DNS_RESOLVER=y 777 | # CONFIG_BATMAN_ADV is not set 778 | # CONFIG_OPENVSWITCH is not set 779 | # CONFIG_VSOCKETS is not set 780 | # CONFIG_NETLINK_DIAG is not set 781 | # CONFIG_MPLS is not set 782 | # CONFIG_HSR is not set 783 | # CONFIG_NET_SWITCHDEV is not set 784 | # CONFIG_NET_L3_MASTER_DEV is not set 785 | # CONFIG_NET_NCSI is not set 786 | CONFIG_RPS=y 787 | CONFIG_RFS_ACCEL=y 788 | CONFIG_XPS=y 789 | # CONFIG_SOCK_CGROUP_DATA is not set 790 | # CONFIG_CGROUP_NET_PRIO is not set 791 | # CONFIG_CGROUP_NET_CLASSID is not set 792 | CONFIG_NET_RX_BUSY_POLL=y 793 | CONFIG_BQL=y 794 | # CONFIG_BPF_JIT is not set 795 | CONFIG_NET_FLOW_LIMIT=y 796 | 797 | # 798 | # Network testing 799 | # 800 | # CONFIG_NET_PKTGEN is not set 801 | # CONFIG_NET_DROP_MONITOR is not set 802 | # CONFIG_HAMRADIO is not set 803 | # CONFIG_CAN is not set 804 | # CONFIG_IRDA is not set 805 | CONFIG_BT=y 806 | CONFIG_BT_BREDR=y 807 | # CONFIG_BT_RFCOMM is not set 808 | # CONFIG_BT_BNEP is not set 809 | # CONFIG_BT_HIDP is not set 810 | CONFIG_BT_HS=y 811 | CONFIG_BT_LE=y 812 | # CONFIG_BT_LEDS is not set 813 | # CONFIG_BT_SELFTEST is not set 814 | CONFIG_BT_DEBUGFS=y 815 | 816 | # 817 | # Bluetooth device drivers 818 | # 819 | # CONFIG_BT_HCIBTUSB is not set 820 | # CONFIG_BT_HCIBTSDIO is not set 821 | CONFIG_BT_HCIUART=y 822 | CONFIG_BT_HCIUART_H4=y 823 | # CONFIG_BT_HCIUART_BCSP is not set 824 | # CONFIG_BT_HCIUART_ATH3K is not set 825 | CONFIG_BT_HCIUART_LL=y 826 | # CONFIG_BT_HCIUART_3WIRE is not set 827 | # CONFIG_BT_HCIUART_INTEL is not set 828 | # CONFIG_BT_HCIUART_BCM is not set 829 | # CONFIG_BT_HCIUART_QCA is not set 830 | # CONFIG_BT_HCIUART_AG6XX is not set 831 | # CONFIG_BT_HCIBCM203X is not set 832 | # CONFIG_BT_HCIBPA10X is not set 833 | # CONFIG_BT_HCIBFUSB is not set 834 | # CONFIG_BT_HCIVHCI is not set 835 | # CONFIG_BT_MRVL is not set 836 | # CONFIG_AF_RXRPC is not set 837 | # CONFIG_AF_KCM is not set 838 | CONFIG_WIRELESS=y 839 | CONFIG_CFG80211=y 840 | # CONFIG_NL80211_TESTMODE is not set 841 | # CONFIG_CFG80211_DEVELOPER_WARNINGS is not set 842 | # CONFIG_CFG80211_CERTIFICATION_ONUS is not set 843 | CONFIG_CFG80211_DEFAULT_PS=y 844 | # CONFIG_CFG80211_DEBUGFS is not set 845 | # CONFIG_CFG80211_INTERNAL_REGDB is not set 846 | CONFIG_CFG80211_CRDA_SUPPORT=y 847 | # CONFIG_CFG80211_WEXT is not set 848 | # CONFIG_LIB80211 is not set 849 | CONFIG_MAC80211=y 850 | CONFIG_MAC80211_HAS_RC=y 851 | CONFIG_MAC80211_RC_MINSTREL=y 852 | CONFIG_MAC80211_RC_MINSTREL_HT=y 853 | # CONFIG_MAC80211_RC_MINSTREL_VHT is not set 854 | CONFIG_MAC80211_RC_DEFAULT_MINSTREL=y 855 | CONFIG_MAC80211_RC_DEFAULT="minstrel_ht" 856 | # CONFIG_MAC80211_MESH is not set 857 | # CONFIG_MAC80211_LEDS is not set 858 | # CONFIG_MAC80211_DEBUGFS is not set 859 | # CONFIG_MAC80211_MESSAGE_TRACING is not set 860 | # CONFIG_MAC80211_DEBUG_MENU is not set 861 | CONFIG_MAC80211_STA_HASH_MAX_SIZE=0 862 | # CONFIG_WIMAX is not set 863 | # CONFIG_RFKILL is not set 864 | # CONFIG_RFKILL_REGULATOR is not set 865 | # CONFIG_NET_9P is not set 866 | # CONFIG_CAIF is not set 867 | # CONFIG_CEPH_LIB is not set 868 | # CONFIG_NFC is not set 869 | # CONFIG_LWTUNNEL is not set 870 | CONFIG_DST_CACHE=y 871 | # CONFIG_NET_DEVLINK is not set 872 | CONFIG_MAY_USE_DEVLINK=y 873 | CONFIG_HAVE_CBPF_JIT=y 874 | 875 | # 876 | # Device Drivers 877 | # 878 | 879 | # 880 | # Generic Driver Options 881 | # 882 | CONFIG_UEVENT_HELPER=y 883 | CONFIG_UEVENT_HELPER_PATH="" 884 | CONFIG_DEVTMPFS=y 885 | CONFIG_DEVTMPFS_MOUNT=y 886 | # CONFIG_STANDALONE is not set 887 | CONFIG_PREVENT_FIRMWARE_BUILD=y 888 | CONFIG_FW_LOADER=y 889 | CONFIG_FIRMWARE_IN_KERNEL=y 890 | CONFIG_EXTRA_FIRMWARE="" 891 | # CONFIG_FW_LOADER_USER_HELPER_FALLBACK is not set 892 | CONFIG_ALLOW_DEV_COREDUMP=y 893 | # CONFIG_DEBUG_DRIVER is not set 894 | # CONFIG_DEBUG_DEVRES is not set 895 | # CONFIG_SYS_HYPERVISOR is not set 896 | # CONFIG_GENERIC_CPU_DEVICES is not set 897 | CONFIG_SOC_BUS=y 898 | CONFIG_REGMAP=y 899 | CONFIG_REGMAP_I2C=y 900 | CONFIG_REGMAP_SPI=y 901 | CONFIG_REGMAP_MMIO=y 902 | # CONFIG_DMA_SHARED_BUFFER is not set 903 | CONFIG_DMA_CMA=y 904 | 905 | # 906 | # Default contiguous memory area size: 907 | # 908 | CONFIG_CMA_SIZE_MBYTES=16 909 | CONFIG_CMA_SIZE_SEL_MBYTES=y 910 | # CONFIG_CMA_SIZE_SEL_PERCENTAGE is not set 911 | # CONFIG_CMA_SIZE_SEL_MIN is not set 912 | # CONFIG_CMA_SIZE_SEL_MAX is not set 913 | CONFIG_CMA_ALIGNMENT=8 914 | 915 | # 916 | # Bus devices 917 | # 918 | # CONFIG_ARM_CCI400_PMU is not set 919 | # CONFIG_ARM_CCI5xx_PMU is not set 920 | # CONFIG_ARM_CCN is not set 921 | # CONFIG_BRCMSTB_GISB_ARB is not set 922 | CONFIG_IMX_WEIM=y 923 | # CONFIG_VEXPRESS_CONFIG is not set 924 | CONFIG_CONNECTOR=y 925 | CONFIG_PROC_EVENTS=y 926 | # CONFIG_MTD is not set 927 | CONFIG_DTC=y 928 | CONFIG_OF=y 929 | # CONFIG_OF_UNITTEST is not set 930 | CONFIG_OF_FLATTREE=y 931 | CONFIG_OF_EARLY_FLATTREE=y 932 | CONFIG_OF_ADDRESS=y 933 | CONFIG_OF_IRQ=y 934 | CONFIG_OF_NET=y 935 | CONFIG_OF_MDIO=y 936 | CONFIG_OF_RESERVED_MEM=y 937 | # CONFIG_OF_OVERLAY is not set 938 | CONFIG_ARCH_MIGHT_HAVE_PC_PARPORT=y 939 | # CONFIG_PARPORT is not set 940 | CONFIG_BLK_DEV=y 941 | # CONFIG_BLK_DEV_NULL_BLK is not set 942 | # CONFIG_BLK_DEV_COW_COMMON is not set 943 | # CONFIG_BLK_DEV_LOOP is not set 944 | # CONFIG_BLK_DEV_DRBD is not set 945 | # CONFIG_BLK_DEV_NBD is not set 946 | CONFIG_BLK_DEV_RAM=y 947 | CONFIG_BLK_DEV_RAM_COUNT=16 948 | CONFIG_BLK_DEV_RAM_SIZE=65536 949 | # CONFIG_CDROM_PKTCDVD is not set 950 | # CONFIG_ATA_OVER_ETH is not set 951 | # CONFIG_MG_DISK is not set 952 | # CONFIG_BLK_DEV_RBD is not set 953 | # CONFIG_NVME_TARGET is not set 954 | 955 | # 956 | # Misc devices 957 | # 958 | # CONFIG_SENSORS_LIS3LV02D is not set 959 | # CONFIG_AD525X_DPOT is not set 960 | # CONFIG_DUMMY_IRQ is not set 961 | # CONFIG_ICS932S401 is not set 962 | # CONFIG_ENCLOSURE_SERVICES is not set 963 | # CONFIG_APDS9802ALS is not set 964 | # CONFIG_ISL29003 is not set 965 | # CONFIG_ISL29020 is not set 966 | # CONFIG_SENSORS_TSL2550 is not set 967 | # CONFIG_SENSORS_BH1770 is not set 968 | # CONFIG_SENSORS_APDS990X is not set 969 | # CONFIG_HMC6352 is not set 970 | # CONFIG_DS1682 is not set 971 | # CONFIG_TI_DAC7512 is not set 972 | # CONFIG_BMP085_I2C is not set 973 | # CONFIG_BMP085_SPI is not set 974 | # CONFIG_USB_SWITCH_FSA9480 is not set 975 | # CONFIG_LATTICE_ECP3_CONFIG is not set 976 | CONFIG_SRAM=y 977 | # CONFIG_C2PORT is not set 978 | 979 | # 980 | # EEPROM support 981 | # 982 | CONFIG_EEPROM_AT24=y 983 | CONFIG_EEPROM_AT25=y 984 | # CONFIG_EEPROM_LEGACY is not set 985 | # CONFIG_EEPROM_MAX6875 is not set 986 | # CONFIG_EEPROM_93CX6 is not set 987 | # CONFIG_EEPROM_93XX46 is not set 988 | 989 | # 990 | # Texas Instruments shared transport line discipline 991 | # 992 | # CONFIG_TI_ST is not set 993 | # CONFIG_SENSORS_LIS3_SPI is not set 994 | # CONFIG_SENSORS_LIS3_I2C is not set 995 | 996 | # 997 | # Altera FPGA firmware download module 998 | # 999 | # CONFIG_ALTERA_STAPL is not set 1000 | 1001 | # 1002 | # Intel MIC Bus Driver 1003 | # 1004 | 1005 | # 1006 | # SCIF Bus Driver 1007 | # 1008 | 1009 | # 1010 | # VOP Bus Driver 1011 | # 1012 | 1013 | # 1014 | # Intel MIC Host Driver 1015 | # 1016 | 1017 | # 1018 | # Intel MIC Card Driver 1019 | # 1020 | 1021 | # 1022 | # SCIF Driver 1023 | # 1024 | 1025 | # 1026 | # Intel MIC Coprocessor State Management (COSM) Drivers 1027 | # 1028 | 1029 | # 1030 | # VOP Driver 1031 | # 1032 | # CONFIG_ECHO is not set 1033 | # CONFIG_CXL_BASE is not set 1034 | # CONFIG_CXL_AFU_DRIVER_OPS is not set 1035 | 1036 | # 1037 | # SCSI device support 1038 | # 1039 | CONFIG_SCSI_MOD=y 1040 | # CONFIG_RAID_ATTRS is not set 1041 | # CONFIG_SCSI is not set 1042 | # CONFIG_SCSI_DMA is not set 1043 | # CONFIG_SCSI_NETLINK is not set 1044 | # CONFIG_ATA is not set 1045 | # CONFIG_MD is not set 1046 | CONFIG_NETDEVICES=y 1047 | CONFIG_NET_CORE=y 1048 | # CONFIG_BONDING is not set 1049 | # CONFIG_DUMMY is not set 1050 | # CONFIG_EQUALIZER is not set 1051 | # CONFIG_NET_TEAM is not set 1052 | # CONFIG_MACVLAN is not set 1053 | # CONFIG_IPVLAN is not set 1054 | # CONFIG_VXLAN is not set 1055 | # CONFIG_MACSEC is not set 1056 | # CONFIG_NETCONSOLE is not set 1057 | # CONFIG_NETPOLL is not set 1058 | # CONFIG_NET_POLL_CONTROLLER is not set 1059 | # CONFIG_TUN is not set 1060 | # CONFIG_TUN_VNET_CROSS_LE is not set 1061 | # CONFIG_VETH is not set 1062 | # CONFIG_NLMON is not set 1063 | 1064 | # 1065 | # CAIF transport drivers 1066 | # 1067 | 1068 | # 1069 | # Distributed Switch Architecture drivers 1070 | # 1071 | CONFIG_ETHERNET=y 1072 | # CONFIG_ALTERA_TSE is not set 1073 | # CONFIG_NET_VENDOR_ARC is not set 1074 | # CONFIG_NET_VENDOR_AURORA is not set 1075 | # CONFIG_NET_CADENCE is not set 1076 | # CONFIG_NET_VENDOR_BROADCOM is not set 1077 | # CONFIG_NET_VENDOR_CIRRUS is not set 1078 | # CONFIG_DM9000 is not set 1079 | # CONFIG_DNET is not set 1080 | # CONFIG_NET_VENDOR_EZCHIP is not set 1081 | # CONFIG_NET_VENDOR_FARADAY is not set 1082 | CONFIG_NET_VENDOR_FREESCALE=y 1083 | CONFIG_FEC=y 1084 | # CONFIG_FSL_PQ_MDIO is not set 1085 | # CONFIG_FSL_XGMAC_MDIO is not set 1086 | # CONFIG_GIANFAR is not set 1087 | # CONFIG_NET_VENDOR_HISILICON is not set 1088 | # CONFIG_NET_VENDOR_INTEL is not set 1089 | # CONFIG_NET_VENDOR_MARVELL is not set 1090 | # CONFIG_NET_VENDOR_MICREL is not set 1091 | # CONFIG_NET_VENDOR_MICROCHIP is not set 1092 | # CONFIG_NET_VENDOR_NATSEMI is not set 1093 | # CONFIG_NET_VENDOR_NETRONOME is not set 1094 | # CONFIG_ETHOC is not set 1095 | # CONFIG_NET_VENDOR_QUALCOMM is not set 1096 | # CONFIG_NET_VENDOR_RENESAS is not set 1097 | # CONFIG_NET_VENDOR_ROCKER is not set 1098 | # CONFIG_NET_VENDOR_SAMSUNG is not set 1099 | # CONFIG_NET_VENDOR_SEEQ is not set 1100 | # CONFIG_NET_VENDOR_SMSC is not set 1101 | # CONFIG_NET_VENDOR_STMICRO is not set 1102 | # CONFIG_NET_VENDOR_SYNOPSYS is not set 1103 | # CONFIG_NET_VENDOR_VIA is not set 1104 | # CONFIG_NET_VENDOR_WIZNET is not set 1105 | CONFIG_PHYLIB=y 1106 | CONFIG_SWPHY=y 1107 | 1108 | # 1109 | # MII PHY device drivers 1110 | # 1111 | # CONFIG_AQUANTIA_PHY is not set 1112 | CONFIG_AT803X_PHY=y 1113 | # CONFIG_AMD_PHY is not set 1114 | # CONFIG_MARVELL_PHY is not set 1115 | # CONFIG_DAVICOM_PHY is not set 1116 | # CONFIG_QSEMI_PHY is not set 1117 | # CONFIG_LXT_PHY is not set 1118 | # CONFIG_CICADA_PHY is not set 1119 | # CONFIG_VITESSE_PHY is not set 1120 | # CONFIG_TERANETICS_PHY is not set 1121 | # CONFIG_SMSC_PHY is not set 1122 | # CONFIG_BROADCOM_PHY is not set 1123 | # CONFIG_BCM7XXX_PHY is not set 1124 | # CONFIG_BCM87XX_PHY is not set 1125 | # CONFIG_ICPLUS_PHY is not set 1126 | # CONFIG_REALTEK_PHY is not set 1127 | # CONFIG_NATIONAL_PHY is not set 1128 | # CONFIG_STE10XP is not set 1129 | # CONFIG_LSI_ET1011C_PHY is not set 1130 | CONFIG_MICREL_PHY=y 1131 | # CONFIG_DP83848_PHY is not set 1132 | # CONFIG_DP83867_PHY is not set 1133 | # CONFIG_MICROCHIP_PHY is not set 1134 | CONFIG_FIXED_PHY=y 1135 | # CONFIG_MDIO_BITBANG is not set 1136 | # CONFIG_MDIO_BUS_MUX_GPIO is not set 1137 | # CONFIG_MDIO_BUS_MUX_MMIOREG is not set 1138 | # CONFIG_MDIO_BCM_UNIMAC is not set 1139 | # CONFIG_INTEL_XWAY_PHY is not set 1140 | # CONFIG_MDIO_HISI_FEMAC is not set 1141 | # CONFIG_MICREL_KS8995MA is not set 1142 | # CONFIG_PPP is not set 1143 | # CONFIG_SLIP is not set 1144 | # CONFIG_USB_NET_DRIVERS is not set 1145 | CONFIG_WLAN=y 1146 | # CONFIG_WLAN_VENDOR_ADMTEK is not set 1147 | # CONFIG_WLAN_VENDOR_ATH is not set 1148 | # CONFIG_WLAN_VENDOR_ATMEL is not set 1149 | CONFIG_WLAN_VENDOR_BROADCOM=y 1150 | # CONFIG_B43 is not set 1151 | # CONFIG_B43LEGACY is not set 1152 | CONFIG_BRCMUTIL=m 1153 | # CONFIG_BRCMSMAC is not set 1154 | CONFIG_BRCMFMAC=m 1155 | CONFIG_BRCMFMAC_PROTO_BCDC=y 1156 | CONFIG_BRCMFMAC_SDIO=y 1157 | # CONFIG_BRCMFMAC_USB is not set 1158 | # CONFIG_BRCM_TRACING is not set 1159 | # CONFIG_BRCMDBG is not set 1160 | # CONFIG_WLAN_VENDOR_CISCO is not set 1161 | # CONFIG_WLAN_VENDOR_INTEL is not set 1162 | # CONFIG_WLAN_VENDOR_INTERSIL is not set 1163 | # CONFIG_WLAN_VENDOR_MARVELL is not set 1164 | # CONFIG_WLAN_VENDOR_MEDIATEK is not set 1165 | # CONFIG_WLAN_VENDOR_RALINK is not set 1166 | # CONFIG_WLAN_VENDOR_REALTEK is not set 1167 | # CONFIG_WLAN_VENDOR_RSI is not set 1168 | # CONFIG_WLAN_VENDOR_ST is not set 1169 | # CONFIG_WLAN_VENDOR_TI is not set 1170 | # CONFIG_WLAN_VENDOR_ZYDAS is not set 1171 | # CONFIG_MAC80211_HWSIM is not set 1172 | # CONFIG_USB_NET_RNDIS_WLAN is not set 1173 | 1174 | # 1175 | # Enable WiMAX (Networking options) to see the WiMAX drivers 1176 | # 1177 | # CONFIG_WAN is not set 1178 | # CONFIG_ISDN is not set 1179 | # CONFIG_NVM is not set 1180 | 1181 | # 1182 | # Input device support 1183 | # 1184 | CONFIG_INPUT=y 1185 | CONFIG_INPUT_LEDS=y 1186 | # CONFIG_INPUT_FF_MEMLESS is not set 1187 | CONFIG_INPUT_POLLDEV=y 1188 | # CONFIG_INPUT_SPARSEKMAP is not set 1189 | CONFIG_INPUT_MATRIXKMAP=y 1190 | 1191 | # 1192 | # Userland interfaces 1193 | # 1194 | CONFIG_INPUT_MOUSEDEV=y 1195 | # CONFIG_INPUT_MOUSEDEV_PSAUX is not set 1196 | CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024 1197 | CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768 1198 | # CONFIG_INPUT_JOYDEV is not set 1199 | CONFIG_INPUT_EVDEV=y 1200 | CONFIG_INPUT_EVBUG=m 1201 | 1202 | # 1203 | # Input Device Drivers 1204 | # 1205 | CONFIG_INPUT_KEYBOARD=y 1206 | # CONFIG_KEYBOARD_ADP5588 is not set 1207 | # CONFIG_KEYBOARD_ADP5589 is not set 1208 | CONFIG_KEYBOARD_ATKBD=y 1209 | # CONFIG_KEYBOARD_QT1070 is not set 1210 | # CONFIG_KEYBOARD_QT2160 is not set 1211 | # CONFIG_KEYBOARD_LKKBD is not set 1212 | CONFIG_KEYBOARD_GPIO=y 1213 | # CONFIG_KEYBOARD_GPIO_POLLED is not set 1214 | # CONFIG_KEYBOARD_TCA6416 is not set 1215 | # CONFIG_KEYBOARD_TCA8418 is not set 1216 | # CONFIG_KEYBOARD_MATRIX is not set 1217 | # CONFIG_KEYBOARD_LM8323 is not set 1218 | # CONFIG_KEYBOARD_LM8333 is not set 1219 | # CONFIG_KEYBOARD_MAX7359 is not set 1220 | # CONFIG_KEYBOARD_MCS is not set 1221 | # CONFIG_KEYBOARD_MPR121 is not set 1222 | CONFIG_KEYBOARD_IMX=y 1223 | # CONFIG_KEYBOARD_NEWTON is not set 1224 | # CONFIG_KEYBOARD_OPENCORES is not set 1225 | # CONFIG_KEYBOARD_SAMSUNG is not set 1226 | # CONFIG_KEYBOARD_STOWAWAY is not set 1227 | # CONFIG_KEYBOARD_SUNKBD is not set 1228 | # CONFIG_KEYBOARD_OMAP4 is not set 1229 | # CONFIG_KEYBOARD_XTKBD is not set 1230 | # CONFIG_KEYBOARD_CAP11XX is not set 1231 | # CONFIG_KEYBOARD_BCM is not set 1232 | CONFIG_INPUT_MOUSE=y 1233 | CONFIG_MOUSE_PS2=m 1234 | CONFIG_MOUSE_PS2_ALPS=y 1235 | CONFIG_MOUSE_PS2_BYD=y 1236 | CONFIG_MOUSE_PS2_LOGIPS2PP=y 1237 | CONFIG_MOUSE_PS2_SYNAPTICS=y 1238 | CONFIG_MOUSE_PS2_CYPRESS=y 1239 | CONFIG_MOUSE_PS2_TRACKPOINT=y 1240 | CONFIG_MOUSE_PS2_ELANTECH=y 1241 | # CONFIG_MOUSE_PS2_SENTELIC is not set 1242 | # CONFIG_MOUSE_PS2_TOUCHKIT is not set 1243 | CONFIG_MOUSE_PS2_FOCALTECH=y 1244 | # CONFIG_MOUSE_SERIAL is not set 1245 | # CONFIG_MOUSE_APPLETOUCH is not set 1246 | # CONFIG_MOUSE_BCM5974 is not set 1247 | # CONFIG_MOUSE_CYAPA is not set 1248 | # CONFIG_MOUSE_ELAN_I2C is not set 1249 | # CONFIG_MOUSE_VSXXXAA is not set 1250 | # CONFIG_MOUSE_GPIO is not set 1251 | # CONFIG_MOUSE_SYNAPTICS_I2C is not set 1252 | # CONFIG_MOUSE_SYNAPTICS_USB is not set 1253 | # CONFIG_INPUT_JOYSTICK is not set 1254 | # CONFIG_INPUT_TABLET is not set 1255 | CONFIG_INPUT_TOUCHSCREEN=y 1256 | CONFIG_TOUCHSCREEN_PROPERTIES=y 1257 | CONFIG_TOUCHSCREEN_ADS7846=y 1258 | # CONFIG_TOUCHSCREEN_AD7877 is not set 1259 | # CONFIG_TOUCHSCREEN_AD7879 is not set 1260 | # CONFIG_TOUCHSCREEN_AR1021_I2C is not set 1261 | # CONFIG_TOUCHSCREEN_ATMEL_MXT is not set 1262 | # CONFIG_TOUCHSCREEN_AUO_PIXCIR is not set 1263 | # CONFIG_TOUCHSCREEN_BU21013 is not set 1264 | # CONFIG_TOUCHSCREEN_CHIPONE_ICN8318 is not set 1265 | # CONFIG_TOUCHSCREEN_CY8CTMG110 is not set 1266 | # CONFIG_TOUCHSCREEN_CYTTSP_CORE is not set 1267 | # CONFIG_TOUCHSCREEN_CYTTSP4_CORE is not set 1268 | # CONFIG_TOUCHSCREEN_DYNAPRO is not set 1269 | # CONFIG_TOUCHSCREEN_HAMPSHIRE is not set 1270 | # CONFIG_TOUCHSCREEN_EETI is not set 1271 | CONFIG_TOUCHSCREEN_EGALAX=y 1272 | # CONFIG_TOUCHSCREEN_EGALAX_SERIAL is not set 1273 | # CONFIG_TOUCHSCREEN_FT6236 is not set 1274 | # CONFIG_TOUCHSCREEN_FUJITSU is not set 1275 | # CONFIG_TOUCHSCREEN_GOODIX is not set 1276 | # CONFIG_TOUCHSCREEN_ILI210X is not set 1277 | # CONFIG_TOUCHSCREEN_GUNZE is not set 1278 | # CONFIG_TOUCHSCREEN_ELAN is not set 1279 | # CONFIG_TOUCHSCREEN_ELO is not set 1280 | # CONFIG_TOUCHSCREEN_WACOM_W8001 is not set 1281 | # CONFIG_TOUCHSCREEN_WACOM_I2C is not set 1282 | # CONFIG_TOUCHSCREEN_MAX11801 is not set 1283 | # CONFIG_TOUCHSCREEN_MCS5000 is not set 1284 | # CONFIG_TOUCHSCREEN_MMS114 is not set 1285 | # CONFIG_TOUCHSCREEN_MELFAS_MIP4 is not set 1286 | # CONFIG_TOUCHSCREEN_MTOUCH is not set 1287 | CONFIG_TOUCHSCREEN_IMX6UL_TSC=y 1288 | # CONFIG_TOUCHSCREEN_INEXIO is not set 1289 | # CONFIG_TOUCHSCREEN_MK712 is not set 1290 | # CONFIG_TOUCHSCREEN_PENMOUNT is not set 1291 | CONFIG_TOUCHSCREEN_EDT_FT5X06=y 1292 | # CONFIG_TOUCHSCREEN_TOUCHRIGHT is not set 1293 | # CONFIG_TOUCHSCREEN_TOUCHWIN is not set 1294 | # CONFIG_TOUCHSCREEN_PIXCIR is not set 1295 | # CONFIG_TOUCHSCREEN_WDT87XX_I2C is not set 1296 | # CONFIG_TOUCHSCREEN_USB_COMPOSITE is not set 1297 | # CONFIG_TOUCHSCREEN_TOUCHIT213 is not set 1298 | # CONFIG_TOUCHSCREEN_TSC_SERIO is not set 1299 | CONFIG_TOUCHSCREEN_TSC200X_CORE=y 1300 | CONFIG_TOUCHSCREEN_TSC2004=y 1301 | # CONFIG_TOUCHSCREEN_TSC2005 is not set 1302 | CONFIG_TOUCHSCREEN_TSC2007=y 1303 | # CONFIG_TOUCHSCREEN_RM_TS is not set 1304 | # CONFIG_TOUCHSCREEN_SILEAD is not set 1305 | # CONFIG_TOUCHSCREEN_SIS_I2C is not set 1306 | # CONFIG_TOUCHSCREEN_ST1232 is not set 1307 | # CONFIG_TOUCHSCREEN_SURFACE3_SPI is not set 1308 | CONFIG_TOUCHSCREEN_SX8654=y 1309 | # CONFIG_TOUCHSCREEN_TPS6507X is not set 1310 | # CONFIG_TOUCHSCREEN_ZFORCE is not set 1311 | CONFIG_TOUCHSCREEN_COLIBRI_VF50=y 1312 | # CONFIG_TOUCHSCREEN_ROHM_BU21023 is not set 1313 | CONFIG_INPUT_MISC=y 1314 | # CONFIG_INPUT_AD714X is not set 1315 | # CONFIG_INPUT_ATMEL_CAPTOUCH is not set 1316 | # CONFIG_INPUT_BMA150 is not set 1317 | # CONFIG_INPUT_E3X0_BUTTON is not set 1318 | CONFIG_INPUT_MMA8450=y 1319 | # CONFIG_INPUT_MPU3050 is not set 1320 | # CONFIG_INPUT_GP2A is not set 1321 | # CONFIG_INPUT_GPIO_BEEPER is not set 1322 | # CONFIG_INPUT_GPIO_TILT_POLLED is not set 1323 | # CONFIG_INPUT_ATI_REMOTE2 is not set 1324 | # CONFIG_INPUT_KEYSPAN_REMOTE is not set 1325 | # CONFIG_INPUT_KXTJ9 is not set 1326 | # CONFIG_INPUT_POWERMATE is not set 1327 | # CONFIG_INPUT_YEALINK is not set 1328 | # CONFIG_INPUT_CM109 is not set 1329 | # CONFIG_INPUT_REGULATOR_HAPTIC is not set 1330 | # CONFIG_INPUT_UINPUT is not set 1331 | # CONFIG_INPUT_PCF8574 is not set 1332 | # CONFIG_INPUT_PWM_BEEPER is not set 1333 | # CONFIG_INPUT_GPIO_ROTARY_ENCODER is not set 1334 | # CONFIG_INPUT_ADXL34X is not set 1335 | # CONFIG_INPUT_IMS_PCU is not set 1336 | # CONFIG_INPUT_CMA3000 is not set 1337 | # CONFIG_INPUT_SOC_BUTTON_ARRAY is not set 1338 | # CONFIG_INPUT_DRV260X_HAPTICS is not set 1339 | # CONFIG_INPUT_DRV2665_HAPTICS is not set 1340 | # CONFIG_INPUT_DRV2667_HAPTICS is not set 1341 | # CONFIG_RMI4_CORE is not set 1342 | 1343 | # 1344 | # Hardware I/O ports 1345 | # 1346 | CONFIG_SERIO=y 1347 | CONFIG_SERIO_SERPORT=m 1348 | CONFIG_SERIO_LIBPS2=y 1349 | # CONFIG_SERIO_RAW is not set 1350 | # CONFIG_SERIO_ALTERA_PS2 is not set 1351 | # CONFIG_SERIO_PS2MULT is not set 1352 | # CONFIG_SERIO_ARC_PS2 is not set 1353 | # CONFIG_SERIO_APBPS2 is not set 1354 | # CONFIG_USERIO is not set 1355 | # CONFIG_GAMEPORT is not set 1356 | 1357 | # 1358 | # Character devices 1359 | # 1360 | CONFIG_TTY=y 1361 | CONFIG_VT=y 1362 | CONFIG_CONSOLE_TRANSLATIONS=y 1363 | CONFIG_VT_CONSOLE=y 1364 | CONFIG_HW_CONSOLE=y 1365 | CONFIG_VT_HW_CONSOLE_BINDING=y 1366 | CONFIG_UNIX98_PTYS=y 1367 | # CONFIG_LEGACY_PTYS is not set 1368 | # CONFIG_SERIAL_NONSTANDARD is not set 1369 | # CONFIG_N_GSM is not set 1370 | # CONFIG_TRACE_SINK is not set 1371 | CONFIG_DEVMEM=y 1372 | # CONFIG_DEVKMEM is not set 1373 | 1374 | # 1375 | # Serial drivers 1376 | # 1377 | CONFIG_SERIAL_EARLYCON=y 1378 | # CONFIG_SERIAL_8250 is not set 1379 | 1380 | # 1381 | # Non-8250 serial port support 1382 | # 1383 | # CONFIG_SERIAL_EARLYCON_ARM_SEMIHOST is not set 1384 | # CONFIG_SERIAL_MAX3100 is not set 1385 | # CONFIG_SERIAL_MAX310X is not set 1386 | CONFIG_SERIAL_IMX=y 1387 | CONFIG_SERIAL_IMX_CONSOLE=y 1388 | # CONFIG_SERIAL_UARTLITE is not set 1389 | CONFIG_SERIAL_CORE=y 1390 | CONFIG_SERIAL_CORE_CONSOLE=y 1391 | # CONFIG_SERIAL_SCCNXP is not set 1392 | # CONFIG_SERIAL_SC16IS7XX is not set 1393 | # CONFIG_SERIAL_BCM63XX is not set 1394 | # CONFIG_SERIAL_ALTERA_JTAGUART is not set 1395 | # CONFIG_SERIAL_ALTERA_UART is not set 1396 | # CONFIG_SERIAL_IFX6X60 is not set 1397 | # CONFIG_SERIAL_XILINX_PS_UART is not set 1398 | # CONFIG_SERIAL_ARC is not set 1399 | CONFIG_SERIAL_FSL_LPUART=y 1400 | CONFIG_SERIAL_FSL_LPUART_CONSOLE=y 1401 | # CONFIG_SERIAL_CONEXANT_DIGICOLOR is not set 1402 | # CONFIG_SERIAL_ST_ASC is not set 1403 | # CONFIG_SERIAL_STM32 is not set 1404 | CONFIG_SERIAL_MCTRL_GPIO=y 1405 | # CONFIG_TTY_PRINTK is not set 1406 | # CONFIG_HVC_DCC is not set 1407 | # CONFIG_IPMI_HANDLER is not set 1408 | CONFIG_HW_RANDOM=y 1409 | # CONFIG_HW_RANDOM_TIMERIOMEM is not set 1410 | CONFIG_HW_RANDOM_TPM=y 1411 | # CONFIG_R3964 is not set 1412 | # CONFIG_RAW_DRIVER is not set 1413 | CONFIG_TCG_TPM=y 1414 | # CONFIG_TCG_TIS_SPI is not set 1415 | # CONFIG_TCG_TIS_I2C_ATMEL is not set 1416 | # CONFIG_TCG_TIS_I2C_INFINEON is not set 1417 | # CONFIG_TCG_TIS_I2C_NUVOTON is not set 1418 | # CONFIG_TCG_ATMEL is not set 1419 | # CONFIG_TCG_VTPM_PROXY is not set 1420 | # CONFIG_TCG_TIS_ST33ZP24_I2C is not set 1421 | # CONFIG_TCG_TIS_ST33ZP24_SPI is not set 1422 | # CONFIG_XILLYBUS is not set 1423 | 1424 | # 1425 | # I2C support 1426 | # 1427 | CONFIG_I2C=y 1428 | CONFIG_I2C_BOARDINFO=y 1429 | # CONFIG_I2C_COMPAT is not set 1430 | CONFIG_I2C_CHARDEV=y 1431 | CONFIG_I2C_MUX=y 1432 | 1433 | # 1434 | # Multiplexer I2C Chip support 1435 | # 1436 | # CONFIG_I2C_ARB_GPIO_CHALLENGE is not set 1437 | CONFIG_I2C_MUX_GPIO=y 1438 | # CONFIG_I2C_MUX_PCA9541 is not set 1439 | # CONFIG_I2C_MUX_PCA954x is not set 1440 | # CONFIG_I2C_MUX_PINCTRL is not set 1441 | # CONFIG_I2C_MUX_REG is not set 1442 | # CONFIG_I2C_DEMUX_PINCTRL is not set 1443 | # CONFIG_I2C_HELPER_AUTO is not set 1444 | # CONFIG_I2C_SMBUS is not set 1445 | 1446 | # 1447 | # I2C Algorithms 1448 | # 1449 | CONFIG_I2C_ALGOBIT=y 1450 | CONFIG_I2C_ALGOPCF=m 1451 | CONFIG_I2C_ALGOPCA=m 1452 | 1453 | # 1454 | # I2C Hardware Bus support 1455 | # 1456 | 1457 | # 1458 | # I2C system bus drivers (mostly embedded / system-on-chip) 1459 | # 1460 | # CONFIG_I2C_CBUS_GPIO is not set 1461 | # CONFIG_I2C_DESIGNWARE_PLATFORM is not set 1462 | # CONFIG_I2C_EMEV2 is not set 1463 | CONFIG_I2C_GPIO=y 1464 | CONFIG_I2C_IMX=y 1465 | # CONFIG_I2C_OCORES is not set 1466 | # CONFIG_I2C_PCA_PLATFORM is not set 1467 | # CONFIG_I2C_PXA_PCI is not set 1468 | # CONFIG_I2C_RK3X is not set 1469 | # CONFIG_I2C_SIMTEC is not set 1470 | # CONFIG_I2C_XILINX is not set 1471 | 1472 | # 1473 | # External I2C/SMBus adapter drivers 1474 | # 1475 | # CONFIG_I2C_DIOLAN_U2C is not set 1476 | # CONFIG_I2C_PARPORT_LIGHT is not set 1477 | # CONFIG_I2C_ROBOTFUZZ_OSIF is not set 1478 | # CONFIG_I2C_TAOS_EVM is not set 1479 | # CONFIG_I2C_TINY_USB is not set 1480 | 1481 | # 1482 | # Other I2C/SMBus bus drivers 1483 | # 1484 | # CONFIG_I2C_STUB is not set 1485 | # CONFIG_I2C_SLAVE is not set 1486 | # CONFIG_I2C_DEBUG_CORE is not set 1487 | # CONFIG_I2C_DEBUG_ALGO is not set 1488 | # CONFIG_I2C_DEBUG_BUS is not set 1489 | CONFIG_SPI=y 1490 | # CONFIG_SPI_DEBUG is not set 1491 | CONFIG_SPI_MASTER=y 1492 | 1493 | # 1494 | # SPI Master Controller Drivers 1495 | # 1496 | # CONFIG_SPI_ALTERA is not set 1497 | # CONFIG_SPI_AXI_SPI_ENGINE is not set 1498 | CONFIG_SPI_BITBANG=y 1499 | # CONFIG_SPI_CADENCE is not set 1500 | # CONFIG_SPI_DESIGNWARE is not set 1501 | # CONFIG_SPI_GPIO is not set 1502 | CONFIG_SPI_IMX=y 1503 | # CONFIG_SPI_FSL_SPI is not set 1504 | # CONFIG_SPI_OC_TINY is not set 1505 | # CONFIG_SPI_PXA2XX_PCI is not set 1506 | # CONFIG_SPI_ROCKCHIP is not set 1507 | # CONFIG_SPI_SC18IS602 is not set 1508 | # CONFIG_SPI_XCOMM is not set 1509 | # CONFIG_SPI_XILINX is not set 1510 | # CONFIG_SPI_ZYNQMP_GQSPI is not set 1511 | 1512 | # 1513 | # SPI Protocol Masters 1514 | # 1515 | # CONFIG_SPI_SPIDEV is not set 1516 | # CONFIG_SPI_LOOPBACK_TEST is not set 1517 | # CONFIG_SPI_TLE62X0 is not set 1518 | # CONFIG_SPMI is not set 1519 | # CONFIG_HSI is not set 1520 | 1521 | # 1522 | # PPS support 1523 | # 1524 | CONFIG_PPS=y 1525 | # CONFIG_PPS_DEBUG is not set 1526 | 1527 | # 1528 | # PPS clients support 1529 | # 1530 | # CONFIG_PPS_CLIENT_KTIMER is not set 1531 | # CONFIG_PPS_CLIENT_LDISC is not set 1532 | # CONFIG_PPS_CLIENT_GPIO is not set 1533 | 1534 | # 1535 | # PPS generators support 1536 | # 1537 | 1538 | # 1539 | # PTP clock support 1540 | # 1541 | CONFIG_PTP_1588_CLOCK=y 1542 | 1543 | # 1544 | # Enable PHYLIB and NETWORK_PHY_TIMESTAMPING to see the additional clocks. 1545 | # 1546 | CONFIG_PINCTRL=y 1547 | 1548 | # 1549 | # Pin controllers 1550 | # 1551 | CONFIG_PINMUX=y 1552 | CONFIG_PINCONF=y 1553 | # CONFIG_DEBUG_PINCTRL is not set 1554 | # CONFIG_PINCTRL_AMD is not set 1555 | # CONFIG_PINCTRL_SINGLE is not set 1556 | CONFIG_PINCTRL_IMX=y 1557 | CONFIG_PINCTRL_IMX6Q=y 1558 | CONFIG_ARCH_HAVE_CUSTOM_GPIO_H=y 1559 | CONFIG_GPIOLIB=y 1560 | CONFIG_GPIO_DEVRES=y 1561 | CONFIG_OF_GPIO=y 1562 | # CONFIG_DEBUG_GPIO is not set 1563 | CONFIG_GPIO_SYSFS=y 1564 | CONFIG_GPIO_GENERIC=y 1565 | 1566 | # 1567 | # Memory mapped GPIO drivers 1568 | # 1569 | # CONFIG_GPIO_74XX_MMIO is not set 1570 | # CONFIG_GPIO_ALTERA is not set 1571 | # CONFIG_GPIO_DWAPB is not set 1572 | # CONFIG_GPIO_EM is not set 1573 | # CONFIG_GPIO_GENERIC_PLATFORM is not set 1574 | # CONFIG_GPIO_GRGPIO is not set 1575 | # CONFIG_GPIO_MPC8XXX is not set 1576 | CONFIG_GPIO_MXC=y 1577 | # CONFIG_GPIO_SYSCON is not set 1578 | # CONFIG_GPIO_XILINX is not set 1579 | # CONFIG_GPIO_ZEVIO is not set 1580 | # CONFIG_GPIO_ZX is not set 1581 | 1582 | # 1583 | # I2C GPIO expanders 1584 | # 1585 | # CONFIG_GPIO_ADP5588 is not set 1586 | # CONFIG_GPIO_ADNP is not set 1587 | # CONFIG_GPIO_MAX7300 is not set 1588 | # CONFIG_GPIO_MAX732X is not set 1589 | # CONFIG_GPIO_PCA953X is not set 1590 | # CONFIG_GPIO_PCF857X is not set 1591 | # CONFIG_GPIO_SX150X is not set 1592 | # CONFIG_GPIO_TPIC2810 is not set 1593 | 1594 | # 1595 | # MFD GPIO expanders 1596 | # 1597 | 1598 | # 1599 | # SPI GPIO expanders 1600 | # 1601 | # CONFIG_GPIO_74X164 is not set 1602 | # CONFIG_GPIO_MAX7301 is not set 1603 | # CONFIG_GPIO_MC33880 is not set 1604 | # CONFIG_GPIO_PISOSR is not set 1605 | 1606 | # 1607 | # SPI or I2C GPIO expanders 1608 | # 1609 | # CONFIG_GPIO_MCP23S08 is not set 1610 | 1611 | # 1612 | # USB GPIO expanders 1613 | # 1614 | # CONFIG_W1 is not set 1615 | # CONFIG_POWER_SUPPLY is not set 1616 | CONFIG_POWER_RESET=y 1617 | # CONFIG_POWER_RESET_BRCMKONA is not set 1618 | # CONFIG_POWER_RESET_BRCMSTB is not set 1619 | # CONFIG_POWER_RESET_GPIO is not set 1620 | # CONFIG_POWER_RESET_GPIO_RESTART is not set 1621 | CONFIG_POWER_RESET_IMX=y 1622 | # CONFIG_POWER_RESET_LTC2952 is not set 1623 | # CONFIG_POWER_RESET_RESTART is not set 1624 | # CONFIG_POWER_RESET_VERSATILE is not set 1625 | CONFIG_POWER_RESET_SYSCON=y 1626 | CONFIG_POWER_RESET_SYSCON_POWEROFF=y 1627 | # CONFIG_SYSCON_REBOOT_MODE is not set 1628 | # CONFIG_POWER_AVS is not set 1629 | # CONFIG_HWMON is not set 1630 | CONFIG_THERMAL=y 1631 | CONFIG_THERMAL_OF=y 1632 | # CONFIG_THERMAL_WRITABLE_TRIPS is not set 1633 | CONFIG_THERMAL_DEFAULT_GOV_STEP_WISE=y 1634 | # CONFIG_THERMAL_DEFAULT_GOV_FAIR_SHARE is not set 1635 | # CONFIG_THERMAL_DEFAULT_GOV_USER_SPACE is not set 1636 | # CONFIG_THERMAL_DEFAULT_GOV_POWER_ALLOCATOR is not set 1637 | # CONFIG_THERMAL_GOV_FAIR_SHARE is not set 1638 | CONFIG_THERMAL_GOV_STEP_WISE=y 1639 | # CONFIG_THERMAL_GOV_BANG_BANG is not set 1640 | # CONFIG_THERMAL_GOV_USER_SPACE is not set 1641 | # CONFIG_THERMAL_GOV_POWER_ALLOCATOR is not set 1642 | CONFIG_CPU_THERMAL=y 1643 | # CONFIG_CLOCK_THERMAL is not set 1644 | # CONFIG_THERMAL_EMULATION is not set 1645 | CONFIG_IMX_THERMAL=y 1646 | 1647 | # 1648 | # ACPI INT340X thermal drivers 1649 | # 1650 | # CONFIG_GENERIC_ADC_THERMAL is not set 1651 | CONFIG_WATCHDOG=y 1652 | CONFIG_WATCHDOG_CORE=y 1653 | # CONFIG_WATCHDOG_NOWAYOUT is not set 1654 | CONFIG_WATCHDOG_SYSFS=y 1655 | 1656 | # 1657 | # Watchdog Device Drivers 1658 | # 1659 | # CONFIG_SOFT_WATCHDOG is not set 1660 | # CONFIG_GPIO_WATCHDOG is not set 1661 | # CONFIG_XILINX_WATCHDOG is not set 1662 | # CONFIG_ZIIRAVE_WATCHDOG is not set 1663 | # CONFIG_CADENCE_WATCHDOG is not set 1664 | # CONFIG_DW_WATCHDOG is not set 1665 | # CONFIG_MAX63XX_WATCHDOG is not set 1666 | CONFIG_IMX2_WDT=y 1667 | # CONFIG_MEN_A21_WDT is not set 1668 | 1669 | # 1670 | # USB-based Watchdog Cards 1671 | # 1672 | # CONFIG_USBPCWATCHDOG is not set 1673 | CONFIG_SSB_POSSIBLE=y 1674 | 1675 | # 1676 | # Sonics Silicon Backplane 1677 | # 1678 | # CONFIG_SSB is not set 1679 | CONFIG_BCMA_POSSIBLE=y 1680 | 1681 | # 1682 | # Broadcom specific AMBA 1683 | # 1684 | # CONFIG_BCMA is not set 1685 | 1686 | # 1687 | # Multifunction device drivers 1688 | # 1689 | # CONFIG_MFD_CORE is not set 1690 | # CONFIG_MFD_ACT8945A is not set 1691 | # CONFIG_MFD_AS3711 is not set 1692 | # CONFIG_MFD_AS3722 is not set 1693 | # CONFIG_PMIC_ADP5520 is not set 1694 | # CONFIG_MFD_AAT2870_CORE is not set 1695 | # CONFIG_MFD_ATMEL_FLEXCOM is not set 1696 | # CONFIG_MFD_ATMEL_HLCDC is not set 1697 | # CONFIG_MFD_BCM590XX is not set 1698 | # CONFIG_MFD_AXP20X_I2C is not set 1699 | # CONFIG_MFD_CROS_EC is not set 1700 | # CONFIG_MFD_ASIC3 is not set 1701 | # CONFIG_PMIC_DA903X is not set 1702 | # CONFIG_MFD_DA9052_SPI is not set 1703 | # CONFIG_MFD_DA9052_I2C is not set 1704 | # CONFIG_MFD_DA9055 is not set 1705 | # CONFIG_MFD_DA9062 is not set 1706 | # CONFIG_MFD_DA9063 is not set 1707 | # CONFIG_MFD_DA9150 is not set 1708 | # CONFIG_MFD_DLN2 is not set 1709 | # CONFIG_MFD_MC13XXX_SPI is not set 1710 | # CONFIG_MFD_MC13XXX_I2C is not set 1711 | # CONFIG_MFD_HI6421_PMIC is not set 1712 | # CONFIG_HTC_EGPIO is not set 1713 | # CONFIG_HTC_PASIC3 is not set 1714 | # CONFIG_HTC_I2CPLD is not set 1715 | # CONFIG_INTEL_SOC_PMIC is not set 1716 | # CONFIG_MFD_KEMPLD is not set 1717 | # CONFIG_MFD_88PM800 is not set 1718 | # CONFIG_MFD_88PM805 is not set 1719 | # CONFIG_MFD_88PM860X is not set 1720 | # CONFIG_MFD_MAX14577 is not set 1721 | # CONFIG_MFD_MAX77620 is not set 1722 | # CONFIG_MFD_MAX77686 is not set 1723 | # CONFIG_MFD_MAX77693 is not set 1724 | # CONFIG_MFD_MAX77843 is not set 1725 | # CONFIG_MFD_MAX8907 is not set 1726 | # CONFIG_MFD_MAX8925 is not set 1727 | # CONFIG_MFD_MAX8997 is not set 1728 | # CONFIG_MFD_MAX8998 is not set 1729 | # CONFIG_MFD_MT6397 is not set 1730 | # CONFIG_MFD_MENF21BMC is not set 1731 | # CONFIG_EZX_PCAP is not set 1732 | # CONFIG_MFD_VIPERBOARD is not set 1733 | # CONFIG_MFD_RETU is not set 1734 | # CONFIG_MFD_PCF50633 is not set 1735 | # CONFIG_MFD_PM8921_CORE is not set 1736 | # CONFIG_MFD_RT5033 is not set 1737 | # CONFIG_MFD_RTSX_USB is not set 1738 | # CONFIG_MFD_RC5T583 is not set 1739 | # CONFIG_MFD_RK808 is not set 1740 | # CONFIG_MFD_RN5T618 is not set 1741 | # CONFIG_MFD_SEC_CORE is not set 1742 | # CONFIG_MFD_SI476X_CORE is not set 1743 | # CONFIG_MFD_SM501 is not set 1744 | # CONFIG_MFD_SKY81452 is not set 1745 | # CONFIG_MFD_SMSC is not set 1746 | # CONFIG_ABX500_CORE is not set 1747 | # CONFIG_MFD_STMPE is not set 1748 | CONFIG_MFD_SYSCON=y 1749 | # CONFIG_MFD_TI_AM335X_TSCADC is not set 1750 | # CONFIG_MFD_LP3943 is not set 1751 | # CONFIG_MFD_LP8788 is not set 1752 | # CONFIG_MFD_PALMAS is not set 1753 | # CONFIG_TPS6105X is not set 1754 | # CONFIG_TPS65010 is not set 1755 | # CONFIG_TPS6507X is not set 1756 | # CONFIG_MFD_TPS65086 is not set 1757 | # CONFIG_MFD_TPS65090 is not set 1758 | # CONFIG_MFD_TPS65217 is not set 1759 | # CONFIG_MFD_TPS65218 is not set 1760 | # CONFIG_MFD_TPS6586X is not set 1761 | # CONFIG_MFD_TPS65910 is not set 1762 | # CONFIG_MFD_TPS65912_I2C is not set 1763 | # CONFIG_MFD_TPS65912_SPI is not set 1764 | # CONFIG_MFD_TPS80031 is not set 1765 | # CONFIG_TWL4030_CORE is not set 1766 | # CONFIG_TWL6040_CORE is not set 1767 | # CONFIG_MFD_WL1273_CORE is not set 1768 | # CONFIG_MFD_LM3533 is not set 1769 | # CONFIG_MFD_TC3589X is not set 1770 | # CONFIG_MFD_TMIO is not set 1771 | # CONFIG_MFD_T7L66XB is not set 1772 | # CONFIG_MFD_TC6387XB is not set 1773 | # CONFIG_MFD_TC6393XB is not set 1774 | # CONFIG_MFD_ARIZONA_I2C is not set 1775 | # CONFIG_MFD_ARIZONA_SPI is not set 1776 | # CONFIG_MFD_WM8400 is not set 1777 | # CONFIG_MFD_WM831X_I2C is not set 1778 | # CONFIG_MFD_WM831X_SPI is not set 1779 | # CONFIG_MFD_WM8350_I2C is not set 1780 | # CONFIG_MFD_WM8994 is not set 1781 | CONFIG_REGULATOR=y 1782 | # CONFIG_REGULATOR_DEBUG is not set 1783 | CONFIG_REGULATOR_FIXED_VOLTAGE=y 1784 | # CONFIG_REGULATOR_VIRTUAL_CONSUMER is not set 1785 | # CONFIG_REGULATOR_USERSPACE_CONSUMER is not set 1786 | # CONFIG_REGULATOR_ACT8865 is not set 1787 | # CONFIG_REGULATOR_AD5398 is not set 1788 | CONFIG_REGULATOR_ANATOP=y 1789 | # CONFIG_REGULATOR_DA9210 is not set 1790 | # CONFIG_REGULATOR_DA9211 is not set 1791 | # CONFIG_REGULATOR_FAN53555 is not set 1792 | CONFIG_REGULATOR_GPIO=y 1793 | # CONFIG_REGULATOR_ISL9305 is not set 1794 | # CONFIG_REGULATOR_ISL6271A is not set 1795 | # CONFIG_REGULATOR_LP3971 is not set 1796 | # CONFIG_REGULATOR_LP3972 is not set 1797 | # CONFIG_REGULATOR_LP872X is not set 1798 | # CONFIG_REGULATOR_LP8755 is not set 1799 | # CONFIG_REGULATOR_LTC3589 is not set 1800 | # CONFIG_REGULATOR_MAX1586 is not set 1801 | # CONFIG_REGULATOR_MAX8649 is not set 1802 | # CONFIG_REGULATOR_MAX8660 is not set 1803 | # CONFIG_REGULATOR_MAX8952 is not set 1804 | # CONFIG_REGULATOR_MAX8973 is not set 1805 | # CONFIG_REGULATOR_MT6311 is not set 1806 | CONFIG_REGULATOR_PFUZE100=y 1807 | # CONFIG_REGULATOR_PV88060 is not set 1808 | # CONFIG_REGULATOR_PV88080 is not set 1809 | # CONFIG_REGULATOR_PV88090 is not set 1810 | # CONFIG_REGULATOR_PWM is not set 1811 | # CONFIG_REGULATOR_TPS51632 is not set 1812 | # CONFIG_REGULATOR_TPS62360 is not set 1813 | # CONFIG_REGULATOR_TPS65023 is not set 1814 | # CONFIG_REGULATOR_TPS6507X is not set 1815 | # CONFIG_REGULATOR_TPS6524X is not set 1816 | # CONFIG_MEDIA_SUPPORT is not set 1817 | 1818 | # 1819 | # Graphics support 1820 | # 1821 | # CONFIG_IMX_IPUV3_CORE is not set 1822 | # CONFIG_DRM is not set 1823 | 1824 | # 1825 | # ACP (Audio CoProcessor) Configuration 1826 | # 1827 | 1828 | # 1829 | # Frame buffer Devices 1830 | # 1831 | # CONFIG_FB is not set 1832 | # CONFIG_BACKLIGHT_LCD_SUPPORT is not set 1833 | # CONFIG_VGASTATE is not set 1834 | 1835 | # 1836 | # Console display driver support 1837 | # 1838 | CONFIG_DUMMY_CONSOLE=y 1839 | # CONFIG_SOUND is not set 1840 | 1841 | # 1842 | # HID support 1843 | # 1844 | CONFIG_HID=y 1845 | # CONFIG_HID_BATTERY_STRENGTH is not set 1846 | # CONFIG_HIDRAW is not set 1847 | # CONFIG_UHID is not set 1848 | CONFIG_HID_GENERIC=y 1849 | 1850 | # 1851 | # Special HID drivers 1852 | # 1853 | # CONFIG_HID_A4TECH is not set 1854 | # CONFIG_HID_ACRUX is not set 1855 | # CONFIG_HID_APPLE is not set 1856 | # CONFIG_HID_APPLEIR is not set 1857 | # CONFIG_HID_AUREAL is not set 1858 | # CONFIG_HID_BELKIN is not set 1859 | # CONFIG_HID_BETOP_FF is not set 1860 | # CONFIG_HID_CHERRY is not set 1861 | # CONFIG_HID_CHICONY is not set 1862 | # CONFIG_HID_CORSAIR is not set 1863 | # CONFIG_HID_CMEDIA is not set 1864 | # CONFIG_HID_CP2112 is not set 1865 | # CONFIG_HID_CYPRESS is not set 1866 | # CONFIG_HID_DRAGONRISE is not set 1867 | # CONFIG_HID_EMS_FF is not set 1868 | # CONFIG_HID_ELECOM is not set 1869 | # CONFIG_HID_ELO is not set 1870 | # CONFIG_HID_EZKEY is not set 1871 | # CONFIG_HID_GEMBIRD is not set 1872 | # CONFIG_HID_GFRM is not set 1873 | # CONFIG_HID_HOLTEK is not set 1874 | # CONFIG_HID_GT683R is not set 1875 | # CONFIG_HID_KEYTOUCH is not set 1876 | # CONFIG_HID_KYE is not set 1877 | # CONFIG_HID_UCLOGIC is not set 1878 | # CONFIG_HID_WALTOP is not set 1879 | # CONFIG_HID_GYRATION is not set 1880 | # CONFIG_HID_ICADE is not set 1881 | # CONFIG_HID_TWINHAN is not set 1882 | # CONFIG_HID_KENSINGTON is not set 1883 | # CONFIG_HID_LCPOWER is not set 1884 | # CONFIG_HID_LED is not set 1885 | # CONFIG_HID_LENOVO is not set 1886 | # CONFIG_HID_LOGITECH is not set 1887 | # CONFIG_HID_MAGICMOUSE is not set 1888 | # CONFIG_HID_MICROSOFT is not set 1889 | # CONFIG_HID_MONTEREY is not set 1890 | # CONFIG_HID_MULTITOUCH is not set 1891 | # CONFIG_HID_NTRIG is not set 1892 | # CONFIG_HID_ORTEK is not set 1893 | # CONFIG_HID_PANTHERLORD is not set 1894 | # CONFIG_HID_PENMOUNT is not set 1895 | # CONFIG_HID_PETALYNX is not set 1896 | # CONFIG_HID_PICOLCD is not set 1897 | # CONFIG_HID_PLANTRONICS is not set 1898 | # CONFIG_HID_PRIMAX is not set 1899 | # CONFIG_HID_ROCCAT is not set 1900 | # CONFIG_HID_SAITEK is not set 1901 | # CONFIG_HID_SAMSUNG is not set 1902 | # CONFIG_HID_SONY is not set 1903 | # CONFIG_HID_SPEEDLINK is not set 1904 | # CONFIG_HID_STEELSERIES is not set 1905 | # CONFIG_HID_SUNPLUS is not set 1906 | # CONFIG_HID_RMI is not set 1907 | # CONFIG_HID_GREENASIA is not set 1908 | # CONFIG_HID_SMARTJOYPLUS is not set 1909 | # CONFIG_HID_TIVO is not set 1910 | # CONFIG_HID_TOPSEED is not set 1911 | # CONFIG_HID_THINGM is not set 1912 | # CONFIG_HID_THRUSTMASTER is not set 1913 | # CONFIG_HID_WACOM is not set 1914 | # CONFIG_HID_WIIMOTE is not set 1915 | # CONFIG_HID_XINMO is not set 1916 | # CONFIG_HID_ZEROPLUS is not set 1917 | # CONFIG_HID_ZYDACRON is not set 1918 | # CONFIG_HID_SENSOR_HUB is not set 1919 | # CONFIG_HID_ALPS is not set 1920 | 1921 | # 1922 | # USB HID support 1923 | # 1924 | CONFIG_USB_HID=y 1925 | # CONFIG_HID_PID is not set 1926 | # CONFIG_USB_HIDDEV is not set 1927 | 1928 | # 1929 | # I2C HID support 1930 | # 1931 | # CONFIG_I2C_HID is not set 1932 | CONFIG_USB_OHCI_LITTLE_ENDIAN=y 1933 | CONFIG_USB_SUPPORT=y 1934 | CONFIG_USB_COMMON=y 1935 | CONFIG_USB_ARCH_HAS_HCD=y 1936 | CONFIG_USB=y 1937 | # CONFIG_USB_ANNOUNCE_NEW_DEVICES is not set 1938 | 1939 | # 1940 | # Miscellaneous USB options 1941 | # 1942 | CONFIG_USB_DEFAULT_PERSIST=y 1943 | # CONFIG_USB_DYNAMIC_MINORS is not set 1944 | # CONFIG_USB_OTG_WHITELIST is not set 1945 | # CONFIG_USB_OTG_BLACKLIST_HUB is not set 1946 | # CONFIG_USB_ULPI_BUS is not set 1947 | # CONFIG_USB_MON is not set 1948 | # CONFIG_USB_WUSB_CBAF is not set 1949 | 1950 | # 1951 | # USB Host Controller Drivers 1952 | # 1953 | # CONFIG_USB_C67X00_HCD is not set 1954 | # CONFIG_USB_XHCI_HCD is not set 1955 | CONFIG_USB_EHCI_HCD=y 1956 | CONFIG_USB_EHCI_ROOT_HUB_TT=y 1957 | CONFIG_USB_EHCI_TT_NEWSCHED=y 1958 | CONFIG_USB_EHCI_MXC=y 1959 | # CONFIG_USB_EHCI_HCD_PLATFORM is not set 1960 | # CONFIG_USB_OXU210HP_HCD is not set 1961 | # CONFIG_USB_ISP116X_HCD is not set 1962 | # CONFIG_USB_ISP1362_HCD is not set 1963 | # CONFIG_USB_FOTG210_HCD is not set 1964 | # CONFIG_USB_MAX3421_HCD is not set 1965 | # CONFIG_USB_OHCI_HCD is not set 1966 | # CONFIG_USB_SL811_HCD is not set 1967 | # CONFIG_USB_R8A66597_HCD is not set 1968 | # CONFIG_USB_IMX21_HCD is not set 1969 | # CONFIG_USB_HCD_TEST_MODE is not set 1970 | 1971 | # 1972 | # USB Device Class drivers 1973 | # 1974 | # CONFIG_USB_ACM is not set 1975 | # CONFIG_USB_PRINTER is not set 1976 | # CONFIG_USB_WDM is not set 1977 | # CONFIG_USB_TMC is not set 1978 | 1979 | # 1980 | # NOTE: USB_STORAGE depends on SCSI but BLK_DEV_SD may 1981 | # 1982 | 1983 | # 1984 | # also be needed; see USB_STORAGE Help for more info 1985 | # 1986 | 1987 | # 1988 | # USB Imaging devices 1989 | # 1990 | # CONFIG_USB_MDC800 is not set 1991 | # CONFIG_USBIP_CORE is not set 1992 | # CONFIG_USB_MUSB_HDRC is not set 1993 | # CONFIG_USB_DWC3 is not set 1994 | # CONFIG_USB_DWC2 is not set 1995 | CONFIG_USB_CHIPIDEA=y 1996 | CONFIG_USB_CHIPIDEA_OF=y 1997 | CONFIG_USB_CHIPIDEA_UDC=y 1998 | CONFIG_USB_CHIPIDEA_HOST=y 1999 | # CONFIG_USB_ISP1760 is not set 2000 | 2001 | # 2002 | # USB port drivers 2003 | # 2004 | CONFIG_USB_SERIAL=m 2005 | CONFIG_USB_SERIAL_GENERIC=y 2006 | # CONFIG_USB_SERIAL_SIMPLE is not set 2007 | # CONFIG_USB_SERIAL_AIRCABLE is not set 2008 | # CONFIG_USB_SERIAL_ARK3116 is not set 2009 | # CONFIG_USB_SERIAL_BELKIN is not set 2010 | # CONFIG_USB_SERIAL_CH341 is not set 2011 | # CONFIG_USB_SERIAL_WHITEHEAT is not set 2012 | # CONFIG_USB_SERIAL_DIGI_ACCELEPORT is not set 2013 | # CONFIG_USB_SERIAL_CP210X is not set 2014 | # CONFIG_USB_SERIAL_CYPRESS_M8 is not set 2015 | # CONFIG_USB_SERIAL_EMPEG is not set 2016 | CONFIG_USB_SERIAL_FTDI_SIO=m 2017 | # CONFIG_USB_SERIAL_VISOR is not set 2018 | # CONFIG_USB_SERIAL_IPAQ is not set 2019 | # CONFIG_USB_SERIAL_IR is not set 2020 | # CONFIG_USB_SERIAL_EDGEPORT is not set 2021 | # CONFIG_USB_SERIAL_EDGEPORT_TI is not set 2022 | # CONFIG_USB_SERIAL_F81232 is not set 2023 | # CONFIG_USB_SERIAL_GARMIN is not set 2024 | # CONFIG_USB_SERIAL_IPW is not set 2025 | # CONFIG_USB_SERIAL_IUU is not set 2026 | # CONFIG_USB_SERIAL_KEYSPAN_PDA is not set 2027 | # CONFIG_USB_SERIAL_KEYSPAN is not set 2028 | # CONFIG_USB_SERIAL_KLSI is not set 2029 | # CONFIG_USB_SERIAL_KOBIL_SCT is not set 2030 | # CONFIG_USB_SERIAL_MCT_U232 is not set 2031 | # CONFIG_USB_SERIAL_METRO is not set 2032 | # CONFIG_USB_SERIAL_MOS7720 is not set 2033 | # CONFIG_USB_SERIAL_MOS7840 is not set 2034 | # CONFIG_USB_SERIAL_MXUPORT is not set 2035 | # CONFIG_USB_SERIAL_NAVMAN is not set 2036 | # CONFIG_USB_SERIAL_PL2303 is not set 2037 | # CONFIG_USB_SERIAL_OTI6858 is not set 2038 | # CONFIG_USB_SERIAL_QCAUX is not set 2039 | # CONFIG_USB_SERIAL_QUALCOMM is not set 2040 | # CONFIG_USB_SERIAL_SPCP8X5 is not set 2041 | # CONFIG_USB_SERIAL_SAFE is not set 2042 | # CONFIG_USB_SERIAL_SIERRAWIRELESS is not set 2043 | # CONFIG_USB_SERIAL_SYMBOL is not set 2044 | # CONFIG_USB_SERIAL_TI is not set 2045 | # CONFIG_USB_SERIAL_CYBERJACK is not set 2046 | # CONFIG_USB_SERIAL_XIRCOM is not set 2047 | CONFIG_USB_SERIAL_WWAN=m 2048 | CONFIG_USB_SERIAL_OPTION=m 2049 | # CONFIG_USB_SERIAL_OMNINET is not set 2050 | # CONFIG_USB_SERIAL_OPTICON is not set 2051 | # CONFIG_USB_SERIAL_XSENS_MT is not set 2052 | # CONFIG_USB_SERIAL_WISHBONE is not set 2053 | # CONFIG_USB_SERIAL_SSU100 is not set 2054 | # CONFIG_USB_SERIAL_QT2 is not set 2055 | # CONFIG_USB_SERIAL_DEBUG is not set 2056 | 2057 | # 2058 | # USB Miscellaneous drivers 2059 | # 2060 | # CONFIG_USB_EMI62 is not set 2061 | # CONFIG_USB_EMI26 is not set 2062 | # CONFIG_USB_ADUTUX is not set 2063 | # CONFIG_USB_SEVSEG is not set 2064 | # CONFIG_USB_RIO500 is not set 2065 | # CONFIG_USB_LEGOTOWER is not set 2066 | # CONFIG_USB_LCD is not set 2067 | # CONFIG_USB_CYPRESS_CY7C63 is not set 2068 | # CONFIG_USB_CYTHERM is not set 2069 | # CONFIG_USB_IDMOUSE is not set 2070 | # CONFIG_USB_FTDI_ELAN is not set 2071 | # CONFIG_USB_APPLEDISPLAY is not set 2072 | # CONFIG_USB_SISUSBVGA is not set 2073 | # CONFIG_USB_LD is not set 2074 | # CONFIG_USB_TRANCEVIBRATOR is not set 2075 | # CONFIG_USB_IOWARRIOR is not set 2076 | # CONFIG_USB_TEST is not set 2077 | CONFIG_USB_EHSET_TEST_FIXTURE=m 2078 | # CONFIG_USB_ISIGHTFW is not set 2079 | # CONFIG_USB_YUREX is not set 2080 | # CONFIG_USB_EZUSB_FX2 is not set 2081 | # CONFIG_USB_HSIC_USB3503 is not set 2082 | # CONFIG_USB_LINK_LAYER_TEST is not set 2083 | # CONFIG_USB_CHAOSKEY is not set 2084 | 2085 | # 2086 | # USB Physical Layer drivers 2087 | # 2088 | CONFIG_USB_PHY=y 2089 | CONFIG_NOP_USB_XCEIV=y 2090 | # CONFIG_AM335X_PHY_USB is not set 2091 | # CONFIG_USB_GPIO_VBUS is not set 2092 | # CONFIG_USB_ISP1301 is not set 2093 | CONFIG_USB_MXS_PHY=y 2094 | # CONFIG_USB_ULPI is not set 2095 | CONFIG_USB_GADGET=y 2096 | # CONFIG_USB_GADGET_DEBUG is not set 2097 | # CONFIG_USB_GADGET_DEBUG_FILES is not set 2098 | # CONFIG_USB_GADGET_DEBUG_FS is not set 2099 | CONFIG_USB_GADGET_VBUS_DRAW=2 2100 | CONFIG_USB_GADGET_STORAGE_NUM_BUFFERS=2 2101 | # CONFIG_U_SERIAL_CONSOLE is not set 2102 | 2103 | # 2104 | # USB Peripheral Controller 2105 | # 2106 | CONFIG_USB_FSL_USB2=y 2107 | # CONFIG_USB_FUSB300 is not set 2108 | # CONFIG_USB_FOTG210_UDC is not set 2109 | # CONFIG_USB_GR_UDC is not set 2110 | # CONFIG_USB_R8A66597 is not set 2111 | # CONFIG_USB_PXA27X is not set 2112 | # CONFIG_USB_MV_UDC is not set 2113 | # CONFIG_USB_MV_U3D is not set 2114 | # CONFIG_USB_M66592 is not set 2115 | # CONFIG_USB_BDC_UDC is not set 2116 | # CONFIG_USB_NET2272 is not set 2117 | # CONFIG_USB_GADGET_XILINX is not set 2118 | # CONFIG_USB_DUMMY_HCD is not set 2119 | CONFIG_USB_LIBCOMPOSITE=m 2120 | CONFIG_USB_F_ACM=m 2121 | CONFIG_USB_F_SS_LB=m 2122 | CONFIG_USB_U_SERIAL=m 2123 | CONFIG_USB_U_ETHER=m 2124 | CONFIG_USB_F_SERIAL=m 2125 | CONFIG_USB_F_OBEX=m 2126 | CONFIG_USB_F_NCM=m 2127 | CONFIG_USB_F_ECM=m 2128 | CONFIG_USB_F_EEM=m 2129 | CONFIG_USB_F_SUBSET=m 2130 | CONFIG_USB_F_RNDIS=m 2131 | CONFIG_USB_F_MASS_STORAGE=m 2132 | CONFIG_USB_F_FS=m 2133 | CONFIG_USB_CONFIGFS=m 2134 | CONFIG_USB_CONFIGFS_SERIAL=y 2135 | CONFIG_USB_CONFIGFS_ACM=y 2136 | CONFIG_USB_CONFIGFS_OBEX=y 2137 | CONFIG_USB_CONFIGFS_NCM=y 2138 | CONFIG_USB_CONFIGFS_ECM=y 2139 | CONFIG_USB_CONFIGFS_ECM_SUBSET=y 2140 | CONFIG_USB_CONFIGFS_RNDIS=y 2141 | CONFIG_USB_CONFIGFS_EEM=y 2142 | CONFIG_USB_CONFIGFS_MASS_STORAGE=y 2143 | CONFIG_USB_CONFIGFS_F_LB_SS=y 2144 | CONFIG_USB_CONFIGFS_F_FS=y 2145 | # CONFIG_USB_CONFIGFS_F_HID is not set 2146 | # CONFIG_USB_CONFIGFS_F_PRINTER is not set 2147 | CONFIG_USB_ZERO=m 2148 | CONFIG_USB_ETH=m 2149 | CONFIG_USB_ETH_RNDIS=y 2150 | # CONFIG_USB_ETH_EEM is not set 2151 | CONFIG_USB_G_NCM=m 2152 | CONFIG_USB_GADGETFS=m 2153 | CONFIG_USB_FUNCTIONFS=m 2154 | # CONFIG_USB_FUNCTIONFS_ETH is not set 2155 | # CONFIG_USB_FUNCTIONFS_RNDIS is not set 2156 | CONFIG_USB_FUNCTIONFS_GENERIC=y 2157 | CONFIG_USB_MASS_STORAGE=m 2158 | CONFIG_USB_G_SERIAL=m 2159 | # CONFIG_USB_G_PRINTER is not set 2160 | # CONFIG_USB_CDC_COMPOSITE is not set 2161 | # CONFIG_USB_G_ACM_MS is not set 2162 | # CONFIG_USB_G_MULTI is not set 2163 | # CONFIG_USB_G_HID is not set 2164 | # CONFIG_USB_G_DBGP is not set 2165 | # CONFIG_USB_LED_TRIG is not set 2166 | # CONFIG_UWB is not set 2167 | CONFIG_MMC=y 2168 | # CONFIG_MMC_DEBUG is not set 2169 | CONFIG_PWRSEQ_EMMC=y 2170 | CONFIG_PWRSEQ_SIMPLE=y 2171 | 2172 | # 2173 | # MMC/SD/SDIO Card Drivers 2174 | # 2175 | CONFIG_MMC_BLOCK=y 2176 | CONFIG_MMC_BLOCK_MINORS=8 2177 | CONFIG_MMC_BLOCK_BOUNCE=y 2178 | # CONFIG_SDIO_UART is not set 2179 | # CONFIG_MMC_TEST is not set 2180 | 2181 | # 2182 | # MMC/SD/SDIO Host Controller Drivers 2183 | # 2184 | CONFIG_MMC_SDHCI=y 2185 | CONFIG_MMC_SDHCI_IO_ACCESSORS=y 2186 | CONFIG_MMC_SDHCI_PLTFM=y 2187 | # CONFIG_MMC_SDHCI_OF_ARASAN is not set 2188 | # CONFIG_MMC_SDHCI_OF_AT91 is not set 2189 | # CONFIG_MMC_SDHCI_OF_ESDHC is not set 2190 | CONFIG_MMC_SDHCI_ESDHC_IMX=y 2191 | # CONFIG_MMC_SDHCI_F_SDH30 is not set 2192 | # CONFIG_MMC_MXC is not set 2193 | # CONFIG_MMC_DW is not set 2194 | # CONFIG_MMC_VUB300 is not set 2195 | # CONFIG_MMC_USHC is not set 2196 | # CONFIG_MMC_USDHI6ROL0 is not set 2197 | # CONFIG_MMC_MTK is not set 2198 | # CONFIG_MEMSTICK is not set 2199 | CONFIG_NEW_LEDS=y 2200 | CONFIG_LEDS_CLASS=y 2201 | # CONFIG_LEDS_CLASS_FLASH is not set 2202 | 2203 | # 2204 | # LED drivers 2205 | # 2206 | # CONFIG_LEDS_BCM6328 is not set 2207 | # CONFIG_LEDS_BCM6358 is not set 2208 | # CONFIG_LEDS_LM3530 is not set 2209 | # CONFIG_LEDS_LM3642 is not set 2210 | # CONFIG_LEDS_PCA9532 is not set 2211 | CONFIG_LEDS_GPIO=y 2212 | # CONFIG_LEDS_LP3944 is not set 2213 | # CONFIG_LEDS_LP5521 is not set 2214 | # CONFIG_LEDS_LP5523 is not set 2215 | # CONFIG_LEDS_LP5562 is not set 2216 | # CONFIG_LEDS_LP8501 is not set 2217 | # CONFIG_LEDS_LP8860 is not set 2218 | # CONFIG_LEDS_PCA955X is not set 2219 | # CONFIG_LEDS_PCA963X is not set 2220 | # CONFIG_LEDS_DAC124S085 is not set 2221 | CONFIG_LEDS_PWM=y 2222 | # CONFIG_LEDS_REGULATOR is not set 2223 | # CONFIG_LEDS_BD2802 is not set 2224 | # CONFIG_LEDS_LT3593 is not set 2225 | # CONFIG_LEDS_TCA6507 is not set 2226 | # CONFIG_LEDS_TLC591XX is not set 2227 | # CONFIG_LEDS_LM355x is not set 2228 | # CONFIG_LEDS_IS31FL32XX is not set 2229 | 2230 | # 2231 | # LED driver for blink(1) USB RGB LED is under Special HID drivers (HID_THINGM) 2232 | # 2233 | # CONFIG_LEDS_BLINKM is not set 2234 | # CONFIG_LEDS_SYSCON is not set 2235 | 2236 | # 2237 | # LED Triggers 2238 | # 2239 | CONFIG_LEDS_TRIGGERS=y 2240 | CONFIG_LEDS_TRIGGER_TIMER=y 2241 | CONFIG_LEDS_TRIGGER_ONESHOT=y 2242 | CONFIG_LEDS_TRIGGER_HEARTBEAT=y 2243 | CONFIG_LEDS_TRIGGER_BACKLIGHT=y 2244 | # CONFIG_LEDS_TRIGGER_CPU is not set 2245 | CONFIG_LEDS_TRIGGER_GPIO=y 2246 | # CONFIG_LEDS_TRIGGER_DEFAULT_ON is not set 2247 | 2248 | # 2249 | # iptables trigger is under Netfilter config (LED target) 2250 | # 2251 | # CONFIG_LEDS_TRIGGER_TRANSIENT is not set 2252 | # CONFIG_LEDS_TRIGGER_CAMERA is not set 2253 | # CONFIG_LEDS_TRIGGER_PANIC is not set 2254 | # CONFIG_ACCESSIBILITY is not set 2255 | CONFIG_EDAC_ATOMIC_SCRUB=y 2256 | CONFIG_EDAC_SUPPORT=y 2257 | # CONFIG_EDAC is not set 2258 | CONFIG_RTC_LIB=y 2259 | CONFIG_RTC_CLASS=y 2260 | CONFIG_RTC_HCTOSYS=y 2261 | CONFIG_RTC_HCTOSYS_DEVICE="rtc0" 2262 | CONFIG_RTC_SYSTOHC=y 2263 | CONFIG_RTC_SYSTOHC_DEVICE="rtc0" 2264 | # CONFIG_RTC_DEBUG is not set 2265 | 2266 | # 2267 | # RTC interfaces 2268 | # 2269 | CONFIG_RTC_INTF_SYSFS=y 2270 | CONFIG_RTC_INTF_PROC=y 2271 | CONFIG_RTC_INTF_DEV=y 2272 | CONFIG_RTC_INTF_DEV_UIE_EMUL=y 2273 | # CONFIG_RTC_DRV_TEST is not set 2274 | 2275 | # 2276 | # I2C RTC drivers 2277 | # 2278 | # CONFIG_RTC_DRV_ABB5ZES3 is not set 2279 | # CONFIG_RTC_DRV_ABX80X is not set 2280 | # CONFIG_RTC_DRV_DS1307 is not set 2281 | # CONFIG_RTC_DRV_DS1374 is not set 2282 | # CONFIG_RTC_DRV_DS1672 is not set 2283 | # CONFIG_RTC_DRV_HYM8563 is not set 2284 | # CONFIG_RTC_DRV_MAX6900 is not set 2285 | # CONFIG_RTC_DRV_RS5C372 is not set 2286 | # CONFIG_RTC_DRV_ISL1208 is not set 2287 | # CONFIG_RTC_DRV_ISL12022 is not set 2288 | # CONFIG_RTC_DRV_ISL12057 is not set 2289 | # CONFIG_RTC_DRV_X1205 is not set 2290 | # CONFIG_RTC_DRV_PCF8523 is not set 2291 | # CONFIG_RTC_DRV_PCF85063 is not set 2292 | # CONFIG_RTC_DRV_PCF8563 is not set 2293 | # CONFIG_RTC_DRV_PCF8583 is not set 2294 | # CONFIG_RTC_DRV_M41T80 is not set 2295 | # CONFIG_RTC_DRV_BQ32K is not set 2296 | # CONFIG_RTC_DRV_S35390A is not set 2297 | # CONFIG_RTC_DRV_FM3130 is not set 2298 | # CONFIG_RTC_DRV_RX8010 is not set 2299 | # CONFIG_RTC_DRV_RX8581 is not set 2300 | # CONFIG_RTC_DRV_RX8025 is not set 2301 | # CONFIG_RTC_DRV_EM3027 is not set 2302 | # CONFIG_RTC_DRV_RV8803 is not set 2303 | 2304 | # 2305 | # SPI RTC drivers 2306 | # 2307 | # CONFIG_RTC_DRV_M41T93 is not set 2308 | # CONFIG_RTC_DRV_M41T94 is not set 2309 | # CONFIG_RTC_DRV_DS1302 is not set 2310 | # CONFIG_RTC_DRV_DS1305 is not set 2311 | # CONFIG_RTC_DRV_DS1343 is not set 2312 | # CONFIG_RTC_DRV_DS1347 is not set 2313 | # CONFIG_RTC_DRV_DS1390 is not set 2314 | # CONFIG_RTC_DRV_MAX6916 is not set 2315 | # CONFIG_RTC_DRV_R9701 is not set 2316 | # CONFIG_RTC_DRV_RX4581 is not set 2317 | # CONFIG_RTC_DRV_RX6110 is not set 2318 | # CONFIG_RTC_DRV_RS5C348 is not set 2319 | # CONFIG_RTC_DRV_MAX6902 is not set 2320 | # CONFIG_RTC_DRV_PCF2123 is not set 2321 | # CONFIG_RTC_DRV_MCP795 is not set 2322 | CONFIG_RTC_I2C_AND_SPI=y 2323 | 2324 | # 2325 | # SPI and I2C RTC drivers 2326 | # 2327 | # CONFIG_RTC_DRV_DS3232 is not set 2328 | # CONFIG_RTC_DRV_PCF2127 is not set 2329 | # CONFIG_RTC_DRV_RV3029C2 is not set 2330 | 2331 | # 2332 | # Platform RTC drivers 2333 | # 2334 | # CONFIG_RTC_DRV_CMOS is not set 2335 | # CONFIG_RTC_DRV_DS1286 is not set 2336 | # CONFIG_RTC_DRV_DS1511 is not set 2337 | # CONFIG_RTC_DRV_DS1553 is not set 2338 | # CONFIG_RTC_DRV_DS1685_FAMILY is not set 2339 | # CONFIG_RTC_DRV_DS1742 is not set 2340 | # CONFIG_RTC_DRV_DS2404 is not set 2341 | # CONFIG_RTC_DRV_STK17TA8 is not set 2342 | # CONFIG_RTC_DRV_M48T86 is not set 2343 | # CONFIG_RTC_DRV_M48T35 is not set 2344 | # CONFIG_RTC_DRV_M48T59 is not set 2345 | # CONFIG_RTC_DRV_MSM6242 is not set 2346 | # CONFIG_RTC_DRV_BQ4802 is not set 2347 | # CONFIG_RTC_DRV_RP5C01 is not set 2348 | # CONFIG_RTC_DRV_V3020 is not set 2349 | # CONFIG_RTC_DRV_ZYNQMP is not set 2350 | 2351 | # 2352 | # on-CPU RTC drivers 2353 | # 2354 | # CONFIG_RTC_DRV_IMXDI is not set 2355 | CONFIG_RTC_DRV_MXC=y 2356 | CONFIG_RTC_DRV_SNVS=y 2357 | 2358 | # 2359 | # HID Sensor RTC drivers 2360 | # 2361 | # CONFIG_RTC_DRV_HID_SENSOR_TIME is not set 2362 | CONFIG_DMADEVICES=y 2363 | # CONFIG_DMADEVICES_DEBUG is not set 2364 | 2365 | # 2366 | # DMA Devices 2367 | # 2368 | CONFIG_DMA_ENGINE=y 2369 | CONFIG_DMA_OF=y 2370 | # CONFIG_FSL_EDMA is not set 2371 | # CONFIG_IMX_DMA is not set 2372 | CONFIG_IMX_SDMA=y 2373 | # CONFIG_INTEL_IDMA64 is not set 2374 | CONFIG_MXS_DMA=y 2375 | CONFIG_MX3_IPU=y 2376 | CONFIG_MX3_IPU_IRQS=4 2377 | # CONFIG_NBPFAXI_DMA is not set 2378 | # CONFIG_QCOM_HIDMA_MGMT is not set 2379 | # CONFIG_QCOM_HIDMA is not set 2380 | # CONFIG_DW_DMAC is not set 2381 | 2382 | # 2383 | # DMA Clients 2384 | # 2385 | # CONFIG_ASYNC_TX_DMA is not set 2386 | # CONFIG_DMATEST is not set 2387 | 2388 | # 2389 | # DMABUF options 2390 | # 2391 | # CONFIG_SYNC_FILE is not set 2392 | # CONFIG_AUXDISPLAY is not set 2393 | # CONFIG_UIO is not set 2394 | # CONFIG_VIRT_DRIVERS is not set 2395 | 2396 | # 2397 | # Virtio drivers 2398 | # 2399 | # CONFIG_VIRTIO_MMIO is not set 2400 | 2401 | # 2402 | # Microsoft Hyper-V guest support 2403 | # 2404 | # CONFIG_STAGING is not set 2405 | # CONFIG_GOLDFISH is not set 2406 | # CONFIG_CHROME_PLATFORMS is not set 2407 | CONFIG_CLKDEV_LOOKUP=y 2408 | CONFIG_HAVE_CLK_PREPARE=y 2409 | CONFIG_COMMON_CLK=y 2410 | 2411 | # 2412 | # Common Clock Framework 2413 | # 2414 | # CONFIG_COMMON_CLK_SI5351 is not set 2415 | # CONFIG_COMMON_CLK_SI514 is not set 2416 | # CONFIG_COMMON_CLK_SI570 is not set 2417 | # CONFIG_COMMON_CLK_CDCE706 is not set 2418 | # CONFIG_COMMON_CLK_CDCE925 is not set 2419 | # CONFIG_COMMON_CLK_CS2000_CP is not set 2420 | # CONFIG_CLK_QORIQ is not set 2421 | # CONFIG_COMMON_CLK_NXP is not set 2422 | # CONFIG_COMMON_CLK_PWM is not set 2423 | # CONFIG_COMMON_CLK_PXA is not set 2424 | # CONFIG_COMMON_CLK_PIC32 is not set 2425 | # CONFIG_SUNXI_CCU is not set 2426 | 2427 | # 2428 | # Hardware Spinlock drivers 2429 | # 2430 | 2431 | # 2432 | # Clock Source drivers 2433 | # 2434 | CONFIG_CLKSRC_OF=y 2435 | CONFIG_CLKSRC_PROBE=y 2436 | CONFIG_CLKSRC_MMIO=y 2437 | CONFIG_ARM_ARCH_TIMER=y 2438 | CONFIG_ARM_ARCH_TIMER_EVTSTREAM=y 2439 | # CONFIG_ARM_TIMER_SP804 is not set 2440 | # CONFIG_ATMEL_PIT is not set 2441 | # CONFIG_SH_TIMER_CMT is not set 2442 | # CONFIG_SH_TIMER_MTU2 is not set 2443 | # CONFIG_SH_TIMER_TMU is not set 2444 | # CONFIG_EM_TIMER_STI is not set 2445 | CONFIG_CLKSRC_IMX_GPT=y 2446 | # CONFIG_MAILBOX is not set 2447 | # CONFIG_IOMMU_SUPPORT is not set 2448 | 2449 | # 2450 | # Remoteproc drivers 2451 | # 2452 | # CONFIG_STE_MODEM_RPROC is not set 2453 | 2454 | # 2455 | # Rpmsg drivers 2456 | # 2457 | 2458 | # 2459 | # SOC (System On Chip) specific Drivers 2460 | # 2461 | 2462 | # 2463 | # Broadcom SoC drivers 2464 | # 2465 | # CONFIG_SOC_BRCMSTB is not set 2466 | # CONFIG_SUNXI_SRAM is not set 2467 | # CONFIG_SOC_TI is not set 2468 | # CONFIG_PM_DEVFREQ is not set 2469 | CONFIG_EXTCON=y 2470 | 2471 | # 2472 | # Extcon Device Drivers 2473 | # 2474 | # CONFIG_EXTCON_ADC_JACK is not set 2475 | # CONFIG_EXTCON_GPIO is not set 2476 | # CONFIG_EXTCON_MAX3355 is not set 2477 | # CONFIG_EXTCON_RT8973A is not set 2478 | # CONFIG_EXTCON_SM5502 is not set 2479 | # CONFIG_EXTCON_USB_GPIO is not set 2480 | # CONFIG_MEMORY is not set 2481 | CONFIG_IIO=y 2482 | CONFIG_IIO_BUFFER=y 2483 | # CONFIG_IIO_BUFFER_CB is not set 2484 | CONFIG_IIO_KFIFO_BUF=y 2485 | CONFIG_IIO_TRIGGERED_BUFFER=y 2486 | # CONFIG_IIO_CONFIGFS is not set 2487 | CONFIG_IIO_TRIGGER=y 2488 | CONFIG_IIO_CONSUMERS_PER_TRIGGER=2 2489 | # CONFIG_IIO_SW_DEVICE is not set 2490 | # CONFIG_IIO_SW_TRIGGER is not set 2491 | 2492 | # 2493 | # Accelerometers 2494 | # 2495 | # CONFIG_BMA180 is not set 2496 | # CONFIG_BMA220 is not set 2497 | # CONFIG_BMC150_ACCEL is not set 2498 | # CONFIG_IIO_ST_ACCEL_3AXIS is not set 2499 | # CONFIG_KXSD9 is not set 2500 | # CONFIG_KXCJK1013 is not set 2501 | # CONFIG_MMA7455_I2C is not set 2502 | # CONFIG_MMA7455_SPI is not set 2503 | # CONFIG_MMA7660 is not set 2504 | # CONFIG_MMA8452 is not set 2505 | # CONFIG_MMA9551 is not set 2506 | # CONFIG_MMA9553 is not set 2507 | # CONFIG_MXC4005 is not set 2508 | # CONFIG_MXC6255 is not set 2509 | # CONFIG_STK8312 is not set 2510 | # CONFIG_STK8BA50 is not set 2511 | 2512 | # 2513 | # Analog to digital converters 2514 | # 2515 | # CONFIG_AD7266 is not set 2516 | # CONFIG_AD7291 is not set 2517 | # CONFIG_AD7298 is not set 2518 | # CONFIG_AD7476 is not set 2519 | # CONFIG_AD7791 is not set 2520 | # CONFIG_AD7793 is not set 2521 | # CONFIG_AD7887 is not set 2522 | # CONFIG_AD7923 is not set 2523 | # CONFIG_AD799X is not set 2524 | # CONFIG_CC10001_ADC is not set 2525 | # CONFIG_HI8435 is not set 2526 | # CONFIG_INA2XX_ADC is not set 2527 | # CONFIG_IMX7D_ADC is not set 2528 | # CONFIG_MAX1027 is not set 2529 | # CONFIG_MAX1363 is not set 2530 | # CONFIG_MCP320X is not set 2531 | # CONFIG_MCP3422 is not set 2532 | # CONFIG_NAU7802 is not set 2533 | # CONFIG_TI_ADC081C is not set 2534 | # CONFIG_TI_ADC0832 is not set 2535 | # CONFIG_TI_ADC128S052 is not set 2536 | # CONFIG_TI_ADS1015 is not set 2537 | # CONFIG_TI_ADS8688 is not set 2538 | CONFIG_VF610_ADC=y 2539 | 2540 | # 2541 | # Amplifiers 2542 | # 2543 | # CONFIG_AD8366 is not set 2544 | 2545 | # 2546 | # Chemical Sensors 2547 | # 2548 | # CONFIG_ATLAS_PH_SENSOR is not set 2549 | # CONFIG_IAQCORE is not set 2550 | # CONFIG_VZ89X is not set 2551 | 2552 | # 2553 | # Hid Sensor IIO Common 2554 | # 2555 | 2556 | # 2557 | # SSP Sensor Common 2558 | # 2559 | # CONFIG_IIO_SSP_SENSORHUB is not set 2560 | 2561 | # 2562 | # Digital to analog converters 2563 | # 2564 | # CONFIG_AD5064 is not set 2565 | # CONFIG_AD5360 is not set 2566 | # CONFIG_AD5380 is not set 2567 | # CONFIG_AD5421 is not set 2568 | # CONFIG_AD5446 is not set 2569 | # CONFIG_AD5449 is not set 2570 | # CONFIG_AD5592R is not set 2571 | # CONFIG_AD5593R is not set 2572 | # CONFIG_AD5504 is not set 2573 | # CONFIG_AD5624R_SPI is not set 2574 | # CONFIG_AD5686 is not set 2575 | # CONFIG_AD5755 is not set 2576 | # CONFIG_AD5761 is not set 2577 | # CONFIG_AD5764 is not set 2578 | # CONFIG_AD5791 is not set 2579 | # CONFIG_AD7303 is not set 2580 | # CONFIG_M62332 is not set 2581 | # CONFIG_MAX517 is not set 2582 | # CONFIG_MAX5821 is not set 2583 | # CONFIG_MCP4725 is not set 2584 | # CONFIG_MCP4922 is not set 2585 | # CONFIG_VF610_DAC is not set 2586 | 2587 | # 2588 | # IIO dummy driver 2589 | # 2590 | 2591 | # 2592 | # Frequency Synthesizers DDS/PLL 2593 | # 2594 | 2595 | # 2596 | # Clock Generator/Distribution 2597 | # 2598 | # CONFIG_AD9523 is not set 2599 | 2600 | # 2601 | # Phase-Locked Loop (PLL) frequency synthesizers 2602 | # 2603 | # CONFIG_ADF4350 is not set 2604 | 2605 | # 2606 | # Digital gyroscope sensors 2607 | # 2608 | # CONFIG_ADIS16080 is not set 2609 | # CONFIG_ADIS16130 is not set 2610 | # CONFIG_ADIS16136 is not set 2611 | # CONFIG_ADIS16260 is not set 2612 | # CONFIG_ADXRS450 is not set 2613 | # CONFIG_BMG160 is not set 2614 | # CONFIG_IIO_ST_GYRO_3AXIS is not set 2615 | # CONFIG_ITG3200 is not set 2616 | 2617 | # 2618 | # Health Sensors 2619 | # 2620 | 2621 | # 2622 | # Heart Rate Monitors 2623 | # 2624 | # CONFIG_AFE4403 is not set 2625 | # CONFIG_AFE4404 is not set 2626 | # CONFIG_MAX30100 is not set 2627 | 2628 | # 2629 | # Humidity sensors 2630 | # 2631 | # CONFIG_AM2315 is not set 2632 | # CONFIG_DHT11 is not set 2633 | # CONFIG_HDC100X is not set 2634 | # CONFIG_HTU21 is not set 2635 | # CONFIG_SI7005 is not set 2636 | # CONFIG_SI7020 is not set 2637 | 2638 | # 2639 | # Inertial measurement units 2640 | # 2641 | # CONFIG_ADIS16400 is not set 2642 | # CONFIG_ADIS16480 is not set 2643 | # CONFIG_BMI160_I2C is not set 2644 | # CONFIG_BMI160_SPI is not set 2645 | # CONFIG_KMX61 is not set 2646 | # CONFIG_INV_MPU6050_I2C is not set 2647 | # CONFIG_INV_MPU6050_SPI is not set 2648 | 2649 | # 2650 | # Light sensors 2651 | # 2652 | # CONFIG_ADJD_S311 is not set 2653 | # CONFIG_AL3320A is not set 2654 | # CONFIG_APDS9300 is not set 2655 | # CONFIG_APDS9960 is not set 2656 | # CONFIG_BH1750 is not set 2657 | # CONFIG_BH1780 is not set 2658 | # CONFIG_CM32181 is not set 2659 | # CONFIG_CM3232 is not set 2660 | # CONFIG_CM3323 is not set 2661 | # CONFIG_CM36651 is not set 2662 | # CONFIG_GP2AP020A00F is not set 2663 | # CONFIG_ISL29125 is not set 2664 | # CONFIG_JSA1212 is not set 2665 | # CONFIG_RPR0521 is not set 2666 | # CONFIG_LTR501 is not set 2667 | # CONFIG_MAX44000 is not set 2668 | # CONFIG_OPT3001 is not set 2669 | # CONFIG_PA12203001 is not set 2670 | # CONFIG_STK3310 is not set 2671 | # CONFIG_TCS3414 is not set 2672 | # CONFIG_TCS3472 is not set 2673 | # CONFIG_SENSORS_TSL2563 is not set 2674 | # CONFIG_TSL4531 is not set 2675 | # CONFIG_US5182D is not set 2676 | # CONFIG_VCNL4000 is not set 2677 | # CONFIG_VEML6070 is not set 2678 | 2679 | # 2680 | # Magnetometer sensors 2681 | # 2682 | # CONFIG_AK8975 is not set 2683 | # CONFIG_AK09911 is not set 2684 | # CONFIG_BMC150_MAGN_I2C is not set 2685 | # CONFIG_BMC150_MAGN_SPI is not set 2686 | # CONFIG_MAG3110 is not set 2687 | # CONFIG_MMC35240 is not set 2688 | # CONFIG_IIO_ST_MAGN_3AXIS is not set 2689 | # CONFIG_SENSORS_HMC5843_I2C is not set 2690 | # CONFIG_SENSORS_HMC5843_SPI is not set 2691 | 2692 | # 2693 | # Inclinometer sensors 2694 | # 2695 | 2696 | # 2697 | # Triggers - standalone 2698 | # 2699 | # CONFIG_IIO_INTERRUPT_TRIGGER is not set 2700 | # CONFIG_IIO_SYSFS_TRIGGER is not set 2701 | 2702 | # 2703 | # Digital potentiometers 2704 | # 2705 | # CONFIG_DS1803 is not set 2706 | # CONFIG_MAX5487 is not set 2707 | # CONFIG_MCP4131 is not set 2708 | # CONFIG_MCP4531 is not set 2709 | # CONFIG_TPL0102 is not set 2710 | 2711 | # 2712 | # Pressure sensors 2713 | # 2714 | # CONFIG_BMP280 is not set 2715 | # CONFIG_HP03 is not set 2716 | # CONFIG_MPL115_I2C is not set 2717 | # CONFIG_MPL115_SPI is not set 2718 | # CONFIG_MPL3115 is not set 2719 | # CONFIG_MS5611 is not set 2720 | # CONFIG_MS5637 is not set 2721 | # CONFIG_IIO_ST_PRESS is not set 2722 | # CONFIG_T5403 is not set 2723 | # CONFIG_HP206C is not set 2724 | 2725 | # 2726 | # Lightning sensors 2727 | # 2728 | # CONFIG_AS3935 is not set 2729 | 2730 | # 2731 | # Proximity sensors 2732 | # 2733 | # CONFIG_LIDAR_LITE_V2 is not set 2734 | # CONFIG_SX9500 is not set 2735 | 2736 | # 2737 | # Temperature sensors 2738 | # 2739 | # CONFIG_MLX90614 is not set 2740 | # CONFIG_TMP006 is not set 2741 | # CONFIG_TSYS01 is not set 2742 | # CONFIG_TSYS02D is not set 2743 | CONFIG_PWM=y 2744 | CONFIG_PWM_SYSFS=y 2745 | CONFIG_PWM_FSL_FTM=y 2746 | CONFIG_PWM_IMX=y 2747 | # CONFIG_PWM_PCA9685 is not set 2748 | CONFIG_IRQCHIP=y 2749 | CONFIG_ARM_GIC=y 2750 | CONFIG_ARM_GIC_MAX_NR=1 2751 | # CONFIG_IPACK_BUS is not set 2752 | CONFIG_ARCH_HAS_RESET_CONTROLLER=y 2753 | CONFIG_RESET_CONTROLLER=y 2754 | # CONFIG_TI_SYSCON_RESET is not set 2755 | # CONFIG_FMC is not set 2756 | 2757 | # 2758 | # PHY Subsystem 2759 | # 2760 | # CONFIG_GENERIC_PHY is not set 2761 | # CONFIG_PHY_PXA_28NM_HSIC is not set 2762 | # CONFIG_PHY_PXA_28NM_USB2 is not set 2763 | # CONFIG_BCM_KONA_USB2_PHY is not set 2764 | # CONFIG_POWERCAP is not set 2765 | # CONFIG_MCB is not set 2766 | 2767 | # 2768 | # Performance monitor support 2769 | # 2770 | CONFIG_ARM_PMU=y 2771 | CONFIG_RAS=y 2772 | 2773 | # 2774 | # Android 2775 | # 2776 | # CONFIG_ANDROID is not set 2777 | CONFIG_NVMEM=y 2778 | CONFIG_NVMEM_IMX_OCOTP=y 2779 | # CONFIG_STM is not set 2780 | # CONFIG_INTEL_TH is not set 2781 | 2782 | # 2783 | # FPGA Configuration Support 2784 | # 2785 | # CONFIG_FPGA is not set 2786 | 2787 | # 2788 | # Firmware Drivers 2789 | # 2790 | CONFIG_ARM_PSCI_FW=y 2791 | # CONFIG_FIRMWARE_MEMMAP is not set 2792 | # CONFIG_FW_CFG_SYSFS is not set 2793 | CONFIG_HAVE_ARM_SMCCC=y 2794 | 2795 | # 2796 | # File systems 2797 | # 2798 | CONFIG_DCACHE_WORD_ACCESS=y 2799 | CONFIG_EXT2_FS=y 2800 | CONFIG_EXT2_FS_XATTR=y 2801 | CONFIG_EXT2_FS_POSIX_ACL=y 2802 | CONFIG_EXT2_FS_SECURITY=y 2803 | CONFIG_EXT3_FS=y 2804 | CONFIG_EXT3_FS_POSIX_ACL=y 2805 | CONFIG_EXT3_FS_SECURITY=y 2806 | CONFIG_EXT4_FS=y 2807 | CONFIG_EXT4_FS_POSIX_ACL=y 2808 | CONFIG_EXT4_FS_SECURITY=y 2809 | # CONFIG_EXT4_ENCRYPTION is not set 2810 | # CONFIG_EXT4_DEBUG is not set 2811 | CONFIG_JBD2=y 2812 | # CONFIG_JBD2_DEBUG is not set 2813 | CONFIG_FS_MBCACHE=y 2814 | # CONFIG_REISERFS_FS is not set 2815 | # CONFIG_JFS_FS is not set 2816 | # CONFIG_XFS_FS is not set 2817 | # CONFIG_GFS2_FS is not set 2818 | # CONFIG_OCFS2_FS is not set 2819 | # CONFIG_BTRFS_FS is not set 2820 | # CONFIG_NILFS2_FS is not set 2821 | # CONFIG_F2FS_FS is not set 2822 | CONFIG_FS_POSIX_ACL=y 2823 | CONFIG_EXPORTFS=y 2824 | # CONFIG_EXPORTFS_BLOCK_OPS is not set 2825 | CONFIG_FILE_LOCKING=y 2826 | CONFIG_MANDATORY_FILE_LOCKING=y 2827 | # CONFIG_FS_ENCRYPTION is not set 2828 | CONFIG_FSNOTIFY=y 2829 | CONFIG_DNOTIFY=y 2830 | CONFIG_INOTIFY_USER=y 2831 | # CONFIG_FANOTIFY is not set 2832 | CONFIG_QUOTA=y 2833 | CONFIG_QUOTA_NETLINK_INTERFACE=y 2834 | # CONFIG_PRINT_QUOTA_WARNING is not set 2835 | # CONFIG_QUOTA_DEBUG is not set 2836 | # CONFIG_QFMT_V1 is not set 2837 | # CONFIG_QFMT_V2 is not set 2838 | CONFIG_QUOTACTL=y 2839 | CONFIG_AUTOFS4_FS=y 2840 | CONFIG_FUSE_FS=y 2841 | # CONFIG_CUSE is not set 2842 | # CONFIG_OVERLAY_FS is not set 2843 | 2844 | # 2845 | # Caches 2846 | # 2847 | # CONFIG_FSCACHE is not set 2848 | 2849 | # 2850 | # CD-ROM/DVD Filesystems 2851 | # 2852 | # CONFIG_ISO9660_FS is not set 2853 | # CONFIG_UDF_FS is not set 2854 | 2855 | # 2856 | # DOS/FAT/NT Filesystems 2857 | # 2858 | CONFIG_FAT_FS=y 2859 | CONFIG_MSDOS_FS=m 2860 | CONFIG_VFAT_FS=y 2861 | CONFIG_FAT_DEFAULT_CODEPAGE=437 2862 | CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-1" 2863 | # CONFIG_FAT_DEFAULT_UTF8 is not set 2864 | # CONFIG_NTFS_FS is not set 2865 | 2866 | # 2867 | # Pseudo filesystems 2868 | # 2869 | CONFIG_PROC_FS=y 2870 | CONFIG_PROC_SYSCTL=y 2871 | CONFIG_PROC_PAGE_MONITOR=y 2872 | # CONFIG_PROC_CHILDREN is not set 2873 | CONFIG_KERNFS=y 2874 | CONFIG_SYSFS=y 2875 | CONFIG_TMPFS=y 2876 | # CONFIG_TMPFS_POSIX_ACL is not set 2877 | # CONFIG_TMPFS_XATTR is not set 2878 | # CONFIG_HUGETLB_PAGE is not set 2879 | CONFIG_CONFIGFS_FS=m 2880 | CONFIG_MISC_FILESYSTEMS=y 2881 | # CONFIG_ORANGEFS_FS is not set 2882 | # CONFIG_ADFS_FS is not set 2883 | # CONFIG_AFFS_FS is not set 2884 | # CONFIG_ECRYPT_FS is not set 2885 | # CONFIG_HFS_FS is not set 2886 | # CONFIG_HFSPLUS_FS is not set 2887 | # CONFIG_BEFS_FS is not set 2888 | # CONFIG_BFS_FS is not set 2889 | # CONFIG_EFS_FS is not set 2890 | # CONFIG_LOGFS is not set 2891 | # CONFIG_CRAMFS is not set 2892 | # CONFIG_SQUASHFS is not set 2893 | # CONFIG_VXFS_FS is not set 2894 | # CONFIG_MINIX_FS is not set 2895 | # CONFIG_OMFS_FS is not set 2896 | # CONFIG_HPFS_FS is not set 2897 | # CONFIG_QNX4FS_FS is not set 2898 | # CONFIG_QNX6FS_FS is not set 2899 | # CONFIG_ROMFS_FS is not set 2900 | # CONFIG_PSTORE is not set 2901 | # CONFIG_SYSV_FS is not set 2902 | # CONFIG_UFS_FS is not set 2903 | # CONFIG_NETWORK_FILESYSTEMS is not set 2904 | CONFIG_NLS=y 2905 | CONFIG_NLS_DEFAULT="cp437" 2906 | CONFIG_NLS_CODEPAGE_437=y 2907 | # CONFIG_NLS_CODEPAGE_737 is not set 2908 | # CONFIG_NLS_CODEPAGE_775 is not set 2909 | # CONFIG_NLS_CODEPAGE_850 is not set 2910 | # CONFIG_NLS_CODEPAGE_852 is not set 2911 | # CONFIG_NLS_CODEPAGE_855 is not set 2912 | # CONFIG_NLS_CODEPAGE_857 is not set 2913 | # CONFIG_NLS_CODEPAGE_860 is not set 2914 | # CONFIG_NLS_CODEPAGE_861 is not set 2915 | # CONFIG_NLS_CODEPAGE_862 is not set 2916 | # CONFIG_NLS_CODEPAGE_863 is not set 2917 | # CONFIG_NLS_CODEPAGE_864 is not set 2918 | # CONFIG_NLS_CODEPAGE_865 is not set 2919 | # CONFIG_NLS_CODEPAGE_866 is not set 2920 | # CONFIG_NLS_CODEPAGE_869 is not set 2921 | # CONFIG_NLS_CODEPAGE_936 is not set 2922 | # CONFIG_NLS_CODEPAGE_950 is not set 2923 | # CONFIG_NLS_CODEPAGE_932 is not set 2924 | # CONFIG_NLS_CODEPAGE_949 is not set 2925 | # CONFIG_NLS_CODEPAGE_874 is not set 2926 | # CONFIG_NLS_ISO8859_8 is not set 2927 | # CONFIG_NLS_CODEPAGE_1250 is not set 2928 | # CONFIG_NLS_CODEPAGE_1251 is not set 2929 | CONFIG_NLS_ASCII=y 2930 | CONFIG_NLS_ISO8859_1=y 2931 | # CONFIG_NLS_ISO8859_2 is not set 2932 | # CONFIG_NLS_ISO8859_3 is not set 2933 | # CONFIG_NLS_ISO8859_4 is not set 2934 | # CONFIG_NLS_ISO8859_5 is not set 2935 | # CONFIG_NLS_ISO8859_6 is not set 2936 | # CONFIG_NLS_ISO8859_7 is not set 2937 | # CONFIG_NLS_ISO8859_9 is not set 2938 | # CONFIG_NLS_ISO8859_13 is not set 2939 | # CONFIG_NLS_ISO8859_14 is not set 2940 | CONFIG_NLS_ISO8859_15=m 2941 | # CONFIG_NLS_KOI8_R is not set 2942 | # CONFIG_NLS_KOI8_U is not set 2943 | # CONFIG_NLS_MAC_ROMAN is not set 2944 | # CONFIG_NLS_MAC_CELTIC is not set 2945 | # CONFIG_NLS_MAC_CENTEURO is not set 2946 | # CONFIG_NLS_MAC_CROATIAN is not set 2947 | # CONFIG_NLS_MAC_CYRILLIC is not set 2948 | # CONFIG_NLS_MAC_GAELIC is not set 2949 | # CONFIG_NLS_MAC_GREEK is not set 2950 | # CONFIG_NLS_MAC_ICELAND is not set 2951 | # CONFIG_NLS_MAC_INUIT is not set 2952 | # CONFIG_NLS_MAC_ROMANIAN is not set 2953 | # CONFIG_NLS_MAC_TURKISH is not set 2954 | CONFIG_NLS_UTF8=y 2955 | # CONFIG_DLM is not set 2956 | 2957 | # 2958 | # Kernel hacking 2959 | # 2960 | 2961 | # 2962 | # printk and dmesg options 2963 | # 2964 | CONFIG_PRINTK_TIME=y 2965 | CONFIG_MESSAGE_LOGLEVEL_DEFAULT=4 2966 | # CONFIG_BOOT_PRINTK_DELAY is not set 2967 | # CONFIG_DYNAMIC_DEBUG is not set 2968 | 2969 | # 2970 | # Compile-time checks and compiler options 2971 | # 2972 | # CONFIG_DEBUG_INFO is not set 2973 | CONFIG_ENABLE_WARN_DEPRECATED=y 2974 | CONFIG_ENABLE_MUST_CHECK=y 2975 | CONFIG_FRAME_WARN=1024 2976 | # CONFIG_STRIP_ASM_SYMS is not set 2977 | # CONFIG_READABLE_ASM is not set 2978 | # CONFIG_UNUSED_SYMBOLS is not set 2979 | # CONFIG_PAGE_OWNER is not set 2980 | CONFIG_DEBUG_FS=y 2981 | # CONFIG_HEADERS_CHECK is not set 2982 | # CONFIG_DEBUG_SECTION_MISMATCH is not set 2983 | CONFIG_SECTION_MISMATCH_WARN_ONLY=y 2984 | CONFIG_FRAME_POINTER=y 2985 | # CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set 2986 | CONFIG_MAGIC_SYSRQ=y 2987 | CONFIG_MAGIC_SYSRQ_DEFAULT_ENABLE=0x1 2988 | CONFIG_DEBUG_KERNEL=y 2989 | 2990 | # 2991 | # Memory Debugging 2992 | # 2993 | # CONFIG_PAGE_EXTENSION is not set 2994 | # CONFIG_DEBUG_PAGEALLOC is not set 2995 | # CONFIG_PAGE_POISONING is not set 2996 | # CONFIG_DEBUG_PAGE_REF is not set 2997 | # CONFIG_DEBUG_OBJECTS is not set 2998 | # CONFIG_SLUB_STATS is not set 2999 | CONFIG_HAVE_DEBUG_KMEMLEAK=y 3000 | # CONFIG_DEBUG_KMEMLEAK is not set 3001 | # CONFIG_DEBUG_STACK_USAGE is not set 3002 | # CONFIG_DEBUG_VM is not set 3003 | # CONFIG_DEBUG_MEMORY_INIT is not set 3004 | # CONFIG_DEBUG_PER_CPU_MAPS is not set 3005 | # CONFIG_DEBUG_HIGHMEM is not set 3006 | # CONFIG_DEBUG_SHIRQ is not set 3007 | 3008 | # 3009 | # Debug Lockups and Hangs 3010 | # 3011 | # CONFIG_LOCKUP_DETECTOR is not set 3012 | # CONFIG_DETECT_HUNG_TASK is not set 3013 | # CONFIG_WQ_WATCHDOG is not set 3014 | # CONFIG_PANIC_ON_OOPS is not set 3015 | CONFIG_PANIC_ON_OOPS_VALUE=0 3016 | CONFIG_PANIC_TIMEOUT=0 3017 | # CONFIG_SCHED_DEBUG is not set 3018 | # CONFIG_SCHED_INFO is not set 3019 | # CONFIG_SCHEDSTATS is not set 3020 | # CONFIG_SCHED_STACK_END_CHECK is not set 3021 | # CONFIG_DEBUG_TIMEKEEPING is not set 3022 | # CONFIG_TIMER_STATS is not set 3023 | 3024 | # 3025 | # Lock Debugging (spinlocks, mutexes, etc...) 3026 | # 3027 | # CONFIG_DEBUG_RT_MUTEXES is not set 3028 | CONFIG_DEBUG_SPINLOCK=y 3029 | CONFIG_DEBUG_MUTEXES=y 3030 | # CONFIG_DEBUG_WW_MUTEX_SLOWPATH is not set 3031 | CONFIG_DEBUG_LOCK_ALLOC=y 3032 | CONFIG_PROVE_LOCKING=y 3033 | CONFIG_LOCKDEP=y 3034 | # CONFIG_LOCK_STAT is not set 3035 | # CONFIG_DEBUG_LOCKDEP is not set 3036 | # CONFIG_DEBUG_ATOMIC_SLEEP is not set 3037 | # CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set 3038 | # CONFIG_LOCK_TORTURE_TEST is not set 3039 | CONFIG_TRACE_IRQFLAGS=y 3040 | CONFIG_STACKTRACE=y 3041 | # CONFIG_DEBUG_KOBJECT is not set 3042 | # CONFIG_DEBUG_BUGVERBOSE is not set 3043 | # CONFIG_DEBUG_LIST is not set 3044 | # CONFIG_DEBUG_PI_LIST is not set 3045 | # CONFIG_DEBUG_SG is not set 3046 | # CONFIG_DEBUG_NOTIFIERS is not set 3047 | # CONFIG_DEBUG_CREDENTIALS is not set 3048 | 3049 | # 3050 | # RCU Debugging 3051 | # 3052 | CONFIG_PROVE_RCU=y 3053 | # CONFIG_PROVE_RCU_REPEATEDLY is not set 3054 | # CONFIG_SPARSE_RCU_POINTER is not set 3055 | # CONFIG_TORTURE_TEST is not set 3056 | # CONFIG_RCU_PERF_TEST is not set 3057 | # CONFIG_RCU_TORTURE_TEST is not set 3058 | CONFIG_RCU_CPU_STALL_TIMEOUT=21 3059 | # CONFIG_RCU_TRACE is not set 3060 | # CONFIG_RCU_EQS_DEBUG is not set 3061 | # CONFIG_DEBUG_WQ_FORCE_RR_CPU is not set 3062 | # CONFIG_DEBUG_BLOCK_EXT_DEVT is not set 3063 | # CONFIG_CPU_HOTPLUG_STATE_CONTROL is not set 3064 | # CONFIG_NOTIFIER_ERROR_INJECTION is not set 3065 | # CONFIG_FAULT_INJECTION is not set 3066 | # CONFIG_LATENCYTOP is not set 3067 | CONFIG_NOP_TRACER=y 3068 | CONFIG_HAVE_FUNCTION_TRACER=y 3069 | CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y 3070 | CONFIG_HAVE_DYNAMIC_FTRACE=y 3071 | CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y 3072 | CONFIG_HAVE_SYSCALL_TRACEPOINTS=y 3073 | CONFIG_HAVE_C_RECORDMCOUNT=y 3074 | CONFIG_TRACE_CLOCK=y 3075 | CONFIG_RING_BUFFER=y 3076 | CONFIG_EVENT_TRACING=y 3077 | CONFIG_CONTEXT_SWITCH_TRACER=y 3078 | CONFIG_TRACING=y 3079 | CONFIG_GENERIC_TRACER=y 3080 | CONFIG_TRACING_SUPPORT=y 3081 | CONFIG_FTRACE=y 3082 | CONFIG_FUNCTION_TRACER=y 3083 | CONFIG_FUNCTION_GRAPH_TRACER=y 3084 | # CONFIG_IRQSOFF_TRACER is not set 3085 | # CONFIG_SCHED_TRACER is not set 3086 | # CONFIG_FTRACE_SYSCALLS is not set 3087 | # CONFIG_TRACER_SNAPSHOT is not set 3088 | CONFIG_BRANCH_PROFILE_NONE=y 3089 | # CONFIG_PROFILE_ANNOTATED_BRANCHES is not set 3090 | # CONFIG_PROFILE_ALL_BRANCHES is not set 3091 | # CONFIG_STACK_TRACER is not set 3092 | # CONFIG_BLK_DEV_IO_TRACE is not set 3093 | # CONFIG_UPROBE_EVENT is not set 3094 | # CONFIG_PROBE_EVENTS is not set 3095 | CONFIG_DYNAMIC_FTRACE=y 3096 | # CONFIG_FUNCTION_PROFILER is not set 3097 | CONFIG_FTRACE_MCOUNT_RECORD=y 3098 | # CONFIG_FTRACE_STARTUP_TEST is not set 3099 | # CONFIG_TRACEPOINT_BENCHMARK is not set 3100 | # CONFIG_RING_BUFFER_BENCHMARK is not set 3101 | # CONFIG_RING_BUFFER_STARTUP_TEST is not set 3102 | # CONFIG_TRACE_ENUM_MAP_FILE is not set 3103 | CONFIG_TRACING_EVENTS_GPIO=y 3104 | 3105 | # 3106 | # Runtime Testing 3107 | # 3108 | # CONFIG_LKDTM is not set 3109 | # CONFIG_TEST_LIST_SORT is not set 3110 | # CONFIG_BACKTRACE_SELF_TEST is not set 3111 | # CONFIG_RBTREE_TEST is not set 3112 | # CONFIG_INTERVAL_TREE_TEST is not set 3113 | # CONFIG_PERCPU_TEST is not set 3114 | # CONFIG_ATOMIC64_SELFTEST is not set 3115 | # CONFIG_TEST_HEXDUMP is not set 3116 | # CONFIG_TEST_STRING_HELPERS is not set 3117 | # CONFIG_TEST_KSTRTOX is not set 3118 | # CONFIG_TEST_PRINTF is not set 3119 | # CONFIG_TEST_BITMAP is not set 3120 | # CONFIG_TEST_UUID is not set 3121 | # CONFIG_TEST_RHASHTABLE is not set 3122 | # CONFIG_TEST_HASH is not set 3123 | # CONFIG_DMA_API_DEBUG is not set 3124 | # CONFIG_TEST_LKM is not set 3125 | # CONFIG_TEST_USER_COPY is not set 3126 | # CONFIG_TEST_BPF is not set 3127 | # CONFIG_TEST_FIRMWARE is not set 3128 | # CONFIG_TEST_UDELAY is not set 3129 | # CONFIG_MEMTEST is not set 3130 | # CONFIG_TEST_STATIC_KEYS is not set 3131 | # CONFIG_SAMPLES is not set 3132 | CONFIG_HAVE_ARCH_KGDB=y 3133 | # CONFIG_KGDB is not set 3134 | # CONFIG_UBSAN is not set 3135 | CONFIG_ARCH_HAS_DEVMEM_IS_ALLOWED=y 3136 | # CONFIG_STRICT_DEVMEM is not set 3137 | # CONFIG_ARM_PTDUMP is not set 3138 | # CONFIG_ARM_UNWIND is not set 3139 | CONFIG_OLD_MCOUNT=y 3140 | # CONFIG_DEBUG_USER is not set 3141 | # CONFIG_DEBUG_LL is not set 3142 | CONFIG_DEBUG_IMX_UART_PORT=1 3143 | CONFIG_DEBUG_LL_INCLUDE="mach/debug-macro.S" 3144 | # CONFIG_DEBUG_UART_8250 is not set 3145 | CONFIG_UNCOMPRESS_INCLUDE="debug/uncompress.h" 3146 | # CONFIG_PID_IN_CONTEXTIDR is not set 3147 | # CONFIG_DEBUG_SET_MODULE_RONX is not set 3148 | # CONFIG_CORESIGHT is not set 3149 | 3150 | # 3151 | # Security options 3152 | # 3153 | CONFIG_KEYS=y 3154 | # CONFIG_PERSISTENT_KEYRINGS is not set 3155 | # CONFIG_BIG_KEYS is not set 3156 | CONFIG_TRUSTED_KEYS=y 3157 | CONFIG_ENCRYPTED_KEYS=y 3158 | # CONFIG_KEY_DH_OPERATIONS is not set 3159 | # CONFIG_SECURITY_DMESG_RESTRICT is not set 3160 | CONFIG_SECURITY=y 3161 | CONFIG_SECURITYFS=y 3162 | # CONFIG_SECURITY_NETWORK is not set 3163 | # CONFIG_SECURITY_PATH is not set 3164 | CONFIG_HAVE_HARDENED_USERCOPY_ALLOCATOR=y 3165 | CONFIG_HAVE_ARCH_HARDENED_USERCOPY=y 3166 | # CONFIG_HARDENED_USERCOPY is not set 3167 | # CONFIG_SECURITY_SMACK is not set 3168 | # CONFIG_SECURITY_TOMOYO is not set 3169 | # CONFIG_SECURITY_APPARMOR is not set 3170 | # CONFIG_SECURITY_LOADPIN is not set 3171 | # CONFIG_SECURITY_YAMA is not set 3172 | CONFIG_INTEGRITY=y 3173 | CONFIG_INTEGRITY_SIGNATURE=y 3174 | CONFIG_INTEGRITY_ASYMMETRIC_KEYS=y 3175 | CONFIG_INTEGRITY_TRUSTED_KEYRING=y 3176 | CONFIG_INTEGRITY_AUDIT=y 3177 | CONFIG_IMA=y 3178 | CONFIG_IMA_MEASURE_PCR_IDX=10 3179 | # CONFIG_IMA_TEMPLATE is not set 3180 | # CONFIG_IMA_NG_TEMPLATE is not set 3181 | CONFIG_IMA_SIG_TEMPLATE=y 3182 | CONFIG_IMA_DEFAULT_TEMPLATE="ima-sig" 3183 | # CONFIG_IMA_DEFAULT_HASH_SHA1 is not set 3184 | CONFIG_IMA_DEFAULT_HASH_SHA256=y 3185 | CONFIG_IMA_DEFAULT_HASH="sha256" 3186 | # CONFIG_IMA_WRITE_POLICY is not set 3187 | # CONFIG_IMA_READ_POLICY is not set 3188 | CONFIG_IMA_APPRAISE=y 3189 | CONFIG_IMA_TRUSTED_KEYRING=y 3190 | # CONFIG_IMA_BLACKLIST_KEYRING is not set 3191 | CONFIG_IMA_LOAD_X509=y 3192 | CONFIG_IMA_X509_PATH="/etc/keys/x509_ima.der" 3193 | CONFIG_IMA_APPRAISE_SIGNED_INIT=y 3194 | CONFIG_EVM=y 3195 | CONFIG_EVM_ATTR_FSUUID=y 3196 | CONFIG_EVM_LOAD_X509=y 3197 | CONFIG_EVM_X509_PATH="/etc/keys/x509_evm.der" 3198 | CONFIG_DEFAULT_SECURITY_DAC=y 3199 | CONFIG_DEFAULT_SECURITY="" 3200 | CONFIG_CRYPTO=y 3201 | 3202 | # 3203 | # Crypto core or helper 3204 | # 3205 | CONFIG_CRYPTO_ALGAPI=y 3206 | CONFIG_CRYPTO_ALGAPI2=y 3207 | CONFIG_CRYPTO_AEAD=y 3208 | CONFIG_CRYPTO_AEAD2=y 3209 | CONFIG_CRYPTO_BLKCIPHER=y 3210 | CONFIG_CRYPTO_BLKCIPHER2=y 3211 | CONFIG_CRYPTO_HASH=y 3212 | CONFIG_CRYPTO_HASH2=y 3213 | CONFIG_CRYPTO_RNG=y 3214 | CONFIG_CRYPTO_RNG2=y 3215 | CONFIG_CRYPTO_RNG_DEFAULT=y 3216 | CONFIG_CRYPTO_AKCIPHER2=y 3217 | CONFIG_CRYPTO_AKCIPHER=y 3218 | CONFIG_CRYPTO_KPP2=y 3219 | CONFIG_CRYPTO_RSA=y 3220 | # CONFIG_CRYPTO_DH is not set 3221 | # CONFIG_CRYPTO_ECDH is not set 3222 | CONFIG_CRYPTO_MANAGER=y 3223 | CONFIG_CRYPTO_MANAGER2=y 3224 | # CONFIG_CRYPTO_USER is not set 3225 | CONFIG_CRYPTO_MANAGER_DISABLE_TESTS=y 3226 | CONFIG_CRYPTO_GF128MUL=y 3227 | CONFIG_CRYPTO_NULL=y 3228 | CONFIG_CRYPTO_NULL2=y 3229 | # CONFIG_CRYPTO_PCRYPT is not set 3230 | CONFIG_CRYPTO_WORKQUEUE=y 3231 | # CONFIG_CRYPTO_CRYPTD is not set 3232 | # CONFIG_CRYPTO_MCRYPTD is not set 3233 | CONFIG_CRYPTO_AUTHENC=y 3234 | # CONFIG_CRYPTO_TEST is not set 3235 | 3236 | # 3237 | # Authenticated Encryption with Associated Data 3238 | # 3239 | CONFIG_CRYPTO_CCM=y 3240 | CONFIG_CRYPTO_GCM=y 3241 | # CONFIG_CRYPTO_CHACHA20POLY1305 is not set 3242 | CONFIG_CRYPTO_SEQIV=y 3243 | CONFIG_CRYPTO_ECHAINIV=m 3244 | 3245 | # 3246 | # Block modes 3247 | # 3248 | CONFIG_CRYPTO_CBC=y 3249 | CONFIG_CRYPTO_CTR=y 3250 | # CONFIG_CRYPTO_CTS is not set 3251 | CONFIG_CRYPTO_ECB=y 3252 | # CONFIG_CRYPTO_LRW is not set 3253 | # CONFIG_CRYPTO_PCBC is not set 3254 | CONFIG_CRYPTO_XTS=y 3255 | # CONFIG_CRYPTO_KEYWRAP is not set 3256 | 3257 | # 3258 | # Hash modes 3259 | # 3260 | CONFIG_CRYPTO_CMAC=y 3261 | CONFIG_CRYPTO_HMAC=y 3262 | # CONFIG_CRYPTO_XCBC is not set 3263 | # CONFIG_CRYPTO_VMAC is not set 3264 | 3265 | # 3266 | # Digest 3267 | # 3268 | CONFIG_CRYPTO_CRC32C=y 3269 | # CONFIG_CRYPTO_CRC32 is not set 3270 | CONFIG_CRYPTO_CRCT10DIF=y 3271 | CONFIG_CRYPTO_GHASH=y 3272 | # CONFIG_CRYPTO_POLY1305 is not set 3273 | # CONFIG_CRYPTO_MD4 is not set 3274 | CONFIG_CRYPTO_MD5=y 3275 | # CONFIG_CRYPTO_MICHAEL_MIC is not set 3276 | # CONFIG_CRYPTO_RMD128 is not set 3277 | # CONFIG_CRYPTO_RMD160 is not set 3278 | # CONFIG_CRYPTO_RMD256 is not set 3279 | # CONFIG_CRYPTO_RMD320 is not set 3280 | CONFIG_CRYPTO_SHA1=y 3281 | CONFIG_CRYPTO_SHA256=y 3282 | # CONFIG_CRYPTO_SHA512 is not set 3283 | # CONFIG_CRYPTO_SHA3 is not set 3284 | # CONFIG_CRYPTO_TGR192 is not set 3285 | # CONFIG_CRYPTO_WP512 is not set 3286 | 3287 | # 3288 | # Ciphers 3289 | # 3290 | CONFIG_CRYPTO_AES=y 3291 | # CONFIG_CRYPTO_ANUBIS is not set 3292 | CONFIG_CRYPTO_ARC4=y 3293 | # CONFIG_CRYPTO_BLOWFISH is not set 3294 | # CONFIG_CRYPTO_CAMELLIA is not set 3295 | # CONFIG_CRYPTO_CAST5 is not set 3296 | # CONFIG_CRYPTO_CAST6 is not set 3297 | # CONFIG_CRYPTO_DES is not set 3298 | # CONFIG_CRYPTO_FCRYPT is not set 3299 | # CONFIG_CRYPTO_KHAZAD is not set 3300 | # CONFIG_CRYPTO_SALSA20 is not set 3301 | # CONFIG_CRYPTO_CHACHA20 is not set 3302 | # CONFIG_CRYPTO_SEED is not set 3303 | # CONFIG_CRYPTO_SERPENT is not set 3304 | # CONFIG_CRYPTO_TEA is not set 3305 | # CONFIG_CRYPTO_TWOFISH is not set 3306 | 3307 | # 3308 | # Compression 3309 | # 3310 | CONFIG_CRYPTO_DEFLATE=y 3311 | CONFIG_CRYPTO_LZO=y 3312 | # CONFIG_CRYPTO_842 is not set 3313 | # CONFIG_CRYPTO_LZ4 is not set 3314 | # CONFIG_CRYPTO_LZ4HC is not set 3315 | 3316 | # 3317 | # Random Number Generation 3318 | # 3319 | CONFIG_CRYPTO_ANSI_CPRNG=y 3320 | CONFIG_CRYPTO_DRBG_MENU=y 3321 | CONFIG_CRYPTO_DRBG_HMAC=y 3322 | # CONFIG_CRYPTO_DRBG_HASH is not set 3323 | # CONFIG_CRYPTO_DRBG_CTR is not set 3324 | CONFIG_CRYPTO_DRBG=y 3325 | CONFIG_CRYPTO_JITTERENTROPY=y 3326 | CONFIG_CRYPTO_USER_API=m 3327 | CONFIG_CRYPTO_USER_API_HASH=m 3328 | CONFIG_CRYPTO_USER_API_SKCIPHER=m 3329 | CONFIG_CRYPTO_USER_API_RNG=m 3330 | CONFIG_CRYPTO_USER_API_AEAD=m 3331 | CONFIG_CRYPTO_HASH_INFO=y 3332 | CONFIG_CRYPTO_HW=y 3333 | CONFIG_CRYPTO_DEV_FSL_CAAM=y 3334 | CONFIG_CRYPTO_DEV_FSL_CAAM_JR=y 3335 | CONFIG_CRYPTO_DEV_FSL_CAAM_RINGSIZE=9 3336 | # CONFIG_CRYPTO_DEV_FSL_CAAM_INTC is not set 3337 | CONFIG_CRYPTO_DEV_FSL_CAAM_CRYPTO_API=y 3338 | CONFIG_CRYPTO_DEV_FSL_CAAM_AHASH_API=y 3339 | CONFIG_CRYPTO_DEV_FSL_CAAM_PKC_API=y 3340 | CONFIG_CRYPTO_DEV_FSL_CAAM_BLOB_GEN=y 3341 | CONFIG_CRYPTO_DEV_FSL_CAAM_RNG_API=y 3342 | CONFIG_CRYPTO_DEV_FSL_CAAM_IMX=y 3343 | # CONFIG_CRYPTO_DEV_FSL_CAAM_DEBUG is not set 3344 | CONFIG_CRYPTO_DEV_SAHARA=y 3345 | # CONFIG_CRYPTO_DEV_MXC_SCC is not set 3346 | # CONFIG_CRYPTO_DEV_MXS_DCP is not set 3347 | CONFIG_ASYMMETRIC_KEY_TYPE=y 3348 | CONFIG_ASYMMETRIC_PUBLIC_KEY_SUBTYPE=y 3349 | CONFIG_X509_CERTIFICATE_PARSER=y 3350 | # CONFIG_PKCS7_MESSAGE_PARSER is not set 3351 | 3352 | # 3353 | # Certificates for signature checking 3354 | # 3355 | CONFIG_SYSTEM_TRUSTED_KEYRING=y 3356 | CONFIG_SYSTEM_TRUSTED_KEYS="ima-ca-certificate.pem" 3357 | # CONFIG_SYSTEM_EXTRA_CERTIFICATE is not set 3358 | # CONFIG_SECONDARY_TRUSTED_KEYRING is not set 3359 | # CONFIG_ARM_CRYPTO is not set 3360 | CONFIG_BINARY_PRINTF=y 3361 | 3362 | # 3363 | # Library routines 3364 | # 3365 | CONFIG_BITREVERSE=y 3366 | CONFIG_HAVE_ARCH_BITREVERSE=y 3367 | CONFIG_RATIONAL=y 3368 | CONFIG_GENERIC_STRNCPY_FROM_USER=y 3369 | CONFIG_GENERIC_STRNLEN_USER=y 3370 | CONFIG_GENERIC_NET_UTILS=y 3371 | CONFIG_GENERIC_PCI_IOMAP=y 3372 | CONFIG_GENERIC_IO=y 3373 | CONFIG_STMP_DEVICE=y 3374 | CONFIG_ARCH_USE_CMPXCHG_LOCKREF=y 3375 | CONFIG_CRC_CCITT=m 3376 | CONFIG_CRC16=y 3377 | CONFIG_CRC_T10DIF=y 3378 | CONFIG_CRC_ITU_T=m 3379 | CONFIG_CRC32=y 3380 | # CONFIG_CRC32_SELFTEST is not set 3381 | CONFIG_CRC32_SLICEBY8=y 3382 | # CONFIG_CRC32_SLICEBY4 is not set 3383 | # CONFIG_CRC32_SARWATE is not set 3384 | # CONFIG_CRC32_BIT is not set 3385 | CONFIG_CRC7=m 3386 | CONFIG_LIBCRC32C=m 3387 | # CONFIG_CRC8 is not set 3388 | CONFIG_AUDIT_GENERIC=y 3389 | # CONFIG_AUDIT_ARCH_COMPAT_GENERIC is not set 3390 | # CONFIG_RANDOM32_SELFTEST is not set 3391 | CONFIG_ZLIB_INFLATE=y 3392 | CONFIG_ZLIB_DEFLATE=y 3393 | CONFIG_LZO_COMPRESS=y 3394 | CONFIG_LZO_DECOMPRESS=y 3395 | CONFIG_XZ_DEC=y 3396 | CONFIG_XZ_DEC_X86=y 3397 | CONFIG_XZ_DEC_POWERPC=y 3398 | CONFIG_XZ_DEC_IA64=y 3399 | CONFIG_XZ_DEC_ARM=y 3400 | CONFIG_XZ_DEC_ARMTHUMB=y 3401 | CONFIG_XZ_DEC_SPARC=y 3402 | CONFIG_XZ_DEC_BCJ=y 3403 | # CONFIG_XZ_DEC_TEST is not set 3404 | CONFIG_DECOMPRESS_LZO=y 3405 | CONFIG_GENERIC_ALLOCATOR=y 3406 | CONFIG_ASSOCIATIVE_ARRAY=y 3407 | CONFIG_HAS_IOMEM=y 3408 | CONFIG_HAS_IOPORT_MAP=y 3409 | CONFIG_HAS_DMA=y 3410 | CONFIG_CPU_RMAP=y 3411 | CONFIG_DQL=y 3412 | CONFIG_NLATTR=y 3413 | CONFIG_ARCH_HAS_ATOMIC64_DEC_IF_POSITIVE=y 3414 | CONFIG_CLZ_TAB=y 3415 | # CONFIG_CORDIC is not set 3416 | # CONFIG_DDR is not set 3417 | # CONFIG_IRQ_POLL is not set 3418 | CONFIG_MPILIB=y 3419 | CONFIG_SIGNATURE=y 3420 | CONFIG_LIBFDT=y 3421 | CONFIG_OID_REGISTRY=y 3422 | # CONFIG_SG_SPLIT is not set 3423 | # CONFIG_SG_POOL is not set 3424 | CONFIG_ARCH_HAS_SG_CHAIN=y 3425 | # CONFIG_VIRTUALIZATION is not set 3426 | -------------------------------------------------------------------------------- /recipes-kernel/linux/linux-fslc-ima/ima-ca-certificate.pem: -------------------------------------------------------------------------------- 1 | -----BEGIN CERTIFICATE----- 2 | MIIDzTCCArWgAwIBAgIJAK3SpxF8JWE7MA0GCSqGSIb3DQEBBQUAMH0xFDASBgNV 3 | BAoMC2V4YW1wbGUuY29tMUAwPgYDVQQDDDdtZXRhLWludGVsLWlvdC1zZWN1cml0 4 | eSBleGFtcGxlIGNlcnRpZmljYXRlIHNpZ25pbmcga2V5MSMwIQYJKoZIhvcNAQkB 5 | FhRqb2huLmRvZUBleGFtcGxlLmNvbTAeFw0xNjEwMjIxNzUxMjBaFw0yNjEwMjAx 6 | NzUxMjBaMH0xFDASBgNVBAoMC2V4YW1wbGUuY29tMUAwPgYDVQQDDDdtZXRhLWlu 7 | dGVsLWlvdC1zZWN1cml0eSBleGFtcGxlIGNlcnRpZmljYXRlIHNpZ25pbmcga2V5 8 | MSMwIQYJKoZIhvcNAQkBFhRqb2huLmRvZUBleGFtcGxlLmNvbTCCASIwDQYJKoZI 9 | hvcNAQEBBQADggEPADCCAQoCggEBALHKDWSWiVXIUrdWzce+YWrDzV1RIKJF3njl 10 | wlCU7pQP1ngSdIFmZmJ2gjt4gdoCop45yaw9b2IevF0ITZ6Hd9AcsA4kQYe3Y54t 11 | N4Y0TDgv79WvzRduhL0nTFvCKWF9qvczWe0WSbVecidi/aQy00fdXu7IIMly6fFk 12 | jR/8xtzTyTa88sx0zriTZdZZxwlQnlvI+QTNu/WnxGLtICyTuRBJ43VkxSyYhk25 13 | SWNX/BvofH00w3GmB8l1gzMppy0p/gwD5i7HbtDjgonB1v/k8jq9Ntgy7Gf5hy4b 14 | pPRyJkNRFRqKpJdQxLuilMjh7gRkuDvXGSxG0yxHvCd97Mo/ehUCAwEAAaNQME4w 15 | DAYDVR0TBAUwAwEB/zAdBgNVHQ4EFgQUGopiQ4CW+lkOR2yCbiqc5uyabl8wHwYD 16 | VR0jBBgwFoAUGopiQ4CW+lkOR2yCbiqc5uyabl8wDQYJKoZIhvcNAQEFBQADggEB 17 | AFGx+1fVTCQZ4cq9jAyLmE5LlRiqUGXxmi7nPvEtBDgv7fxi5ofkw5oxGvGJi/hQ 18 | FqDf+F3ZHGDUJWiFrpipKR4j4jBDTvZPKTxfg+meCkeFqgJyE+pkadqMkexqEXLI 19 | AjXmCzpg01jH+NzWOt/SyEm68a20URYUSOKJHM1sqXiwEQjsgan/nIxa6MeNLPmC 20 | kBNRRoRgFetqqbV19ffdA5/2QPEsNGLcyAHZSdPaLlPxJ4U3kW7x+4GYmk28ay3C 21 | SVRpyuO/yMObBKV4gamhu1EnhEg5IuD3EXQ/jSrKwZcjtQLYZalumxVgUjMWTUmK 22 | 0ddmc1TufR3aidttBkyBR/E= 23 | -----END CERTIFICATE----- 24 | -------------------------------------------------------------------------------- /recipes-kernel/linux/linux-fslc-ima_4.8.bb: -------------------------------------------------------------------------------- 1 | # Copyright (C) 2012-2016 O.S. Systems Software LTDA. 2 | # Released under the MIT license (see COPYING.MIT for the terms) 3 | 4 | SUMMARY = "FSL Community BSP Linux mainline based kernel with backported features and fixes" 5 | DESCRIPTION = "Linux kernel based on mainline kernel used by FSL Community BSP in order to \ 6 | provide support for some backported features and fixes, or because it was applied in linux-next \ 7 | and takes some time to become part of a stable version, or because it is not applicable for \ 8 | upstreaming." 9 | 10 | include recipes-kernel/linux/linux-fslc.inc 11 | 12 | PV = "4.8+git${SRCPV}" 13 | 14 | SRCBRANCH = "4.8.x+fslc" 15 | SRCREV = "532916d2c2cf8e596740c5c8e5c92d12d1a73bd8" 16 | 17 | COMPATIBLE_MACHINE = "(mxs|mx5|mx6|vf)" 18 | LINUX_VERSION ?= "4.8.15" 19 | 20 | SRC_URI += " file://0001-crypto-caam-add-red-blobifier.patch \ 21 | file://ima-ca-certificate.pem" 22 | 23 | do_configure_prepend() { 24 | cp ${WORKDIR}/ima-ca-certificate.pem ${B}/ 25 | } -------------------------------------------------------------------------------- /recipes-python/python3/python3-certifi_%.bbappend: -------------------------------------------------------------------------------- 1 | BBCLASSEXTEND = "native" 2 | -------------------------------------------------------------------------------- /recipes-python/python3/python3-dateutil_%.bbappend: -------------------------------------------------------------------------------- 1 | BBCLASSEXTEND = "native" 2 | 3 | # datetime is populated to sysroot without specific dependency 4 | RDEPENDS_${PN}_remove_class-native = "${PYTHON_PN}-datetime" 5 | -------------------------------------------------------------------------------- /recipes-python/python3/python3-feedformatter_%.bbappend: -------------------------------------------------------------------------------- 1 | BBCLASSEXTEND = "native" 2 | 3 | RDEPENDS_${PN}_remove_class-native = "python3-xml-native" 4 | RDEPENDS_${PN}_remove_class-native = "python3-datetime-native" -------------------------------------------------------------------------------- /recipes-python/python3/python3-flask-login_%.bbappend: -------------------------------------------------------------------------------- 1 | BBCLASSEXTEND = "native" 2 | -------------------------------------------------------------------------------- /recipes-python/python3/python3-flask-pymongo_%.bbappend: -------------------------------------------------------------------------------- 1 | BBCLASSEXTEND = "native" 2 | -------------------------------------------------------------------------------- /recipes-python/python3/python3-flask_%.bbappend: -------------------------------------------------------------------------------- 1 | BBCLASSEXTEND = "native" 2 | -------------------------------------------------------------------------------- /recipes-python/python3/python3-itsdangerous_%.bbappend: -------------------------------------------------------------------------------- 1 | BBCLASSEXTEND = "native" 2 | 3 | # datetime is populated to sysroot without specific dependency 4 | RDEPENDS_${PN}_remove_class-native = "${PYTHON_PN}-datetime" 5 | -------------------------------------------------------------------------------- /recipes-python/python3/python3-jinja2_%.bbappend: -------------------------------------------------------------------------------- 1 | BBCLASSEXTEND = "native" 2 | 3 | RDEPENDS_${PN}_remove_class-native = "${PYTHON_PN}-io" 4 | RDEPENDS_${PN}_remove_class-native = "${PYTHON_PN}-pickle" 5 | RDEPENDS_${PN}_remove_class-native = "${PYTHON_PN}-crypt" 6 | RDEPENDS_${PN}_remove_class-native = "${PYTHON_PN}-math" 7 | RDEPENDS_${PN}_remove_class-native = "${PYTHON_PN}-netclient" 8 | RDEPENDS_${PN}_remove_class-native = "${PYTHON_PN}-re" 9 | RDEPENDS_${PN}_remove_class-native = "${PYTHON_PN}-lang" 10 | RDEPENDS_${PN}_remove_class-native = "${PYTHON_PN}-pprint" 11 | RDEPENDS_${PN}_remove_class-native = "${PYTHON_PN}-shell" 12 | -------------------------------------------------------------------------------- /recipes-python/python3/python3-markupsafe_%.bbappend: -------------------------------------------------------------------------------- 1 | BBCLASSEXTEND = "native" 2 | 3 | RDEPENDS_${PN}_remove_class-native = "${PYTHON_PN}-re" 4 | -------------------------------------------------------------------------------- /recipes-python/python3/python3-passlib_%.bbappend: -------------------------------------------------------------------------------- 1 | BBCLASSEXTEND = "native" 2 | -------------------------------------------------------------------------------- /recipes-python/python3/python3-pymisp_%.bbappend: -------------------------------------------------------------------------------- 1 | BBCLASSEXTEND = "native" 2 | -------------------------------------------------------------------------------- /recipes-python/python3/python3-pymongo_%.bbappend: -------------------------------------------------------------------------------- 1 | BBCLASSEXTEND = "native" 2 | -------------------------------------------------------------------------------- /recipes-python/python3/python3-pytz_%.bbappend: -------------------------------------------------------------------------------- 1 | BBCLASSEXTEND = "native" 2 | 3 | RDEPENDS_${PN}_remove_class-native = "${PYTHON_PN}-datetime" 4 | -------------------------------------------------------------------------------- /recipes-python/python3/python3-pytz_2016.4.bb: -------------------------------------------------------------------------------- 1 | SUMMARY = "World timezone definitions, modern and historical" 2 | HOMEPAGE = " http://pythonhosted.org/pytz" 3 | LICENSE = "MIT" 4 | LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=22b38951eb857cf285a4560a914b7cd6" 5 | 6 | SRC_URI[md5sum] = "a3316cf3842ed0375ba5931914239d97" 7 | SRC_URI[sha256sum] = "c823de61ff40d1996fe087cec343e0503881ca641b897e0f9b86c7683a0bfee1" 8 | 9 | inherit pypi setuptools3 10 | 11 | RDEPENDS_${PN} = "\ 12 | python3-core \ 13 | python3-datetime \ 14 | " 15 | -------------------------------------------------------------------------------- /recipes-python/python3/python3-redis_%.bbappend: -------------------------------------------------------------------------------- 1 | BBCLASSEXTEND = "native" 2 | -------------------------------------------------------------------------------- /recipes-python/python3/python3-requests_%.bbappend: -------------------------------------------------------------------------------- 1 | BBCLASSEXTEND = "native" 2 | 3 | RDEPENDS_${PN}_remove_class-native = "${PYTHON_PN}-email" 4 | RDEPENDS_${PN}_remove_class-native = "${PYTHON_PN}-json" 5 | RDEPENDS_${PN}_remove_class-native = "${PYTHON_PN}-netserver" 6 | -------------------------------------------------------------------------------- /recipes-python/python3/python3-six_%.bbappend: -------------------------------------------------------------------------------- 1 | BBCLASSEXTEND = "native" 2 | -------------------------------------------------------------------------------- /recipes-python/python3/python3-tornado_%.bbappend: -------------------------------------------------------------------------------- 1 | BBCLASSEXTEND = "native" 2 | 3 | # these dependencies are populated to sysroot without specific dependency 4 | RDEPENDS_${PN}_remove_class-native = "${PYTHON_PN}-numbers" 5 | RDEPENDS_${PN}_remove_class-native = "${PYTHON_PN}-email" 6 | RDEPENDS_${PN}_remove_class-native = "${PYTHON_PN}-subprocess" 7 | RDEPENDS_${PN}_remove_class-native = "${PYTHON_PN}-pkgutil" 8 | RDEPENDS_${PN}_remove_class-native = "${PYTHON_PN}-html" 9 | RDEPENDS_${PN}_remove_class-native = "${PYTHON_PN}-json" 10 | -------------------------------------------------------------------------------- /recipes-python/python3/python3-werkzeug_%.bbappend: -------------------------------------------------------------------------------- 1 | BBCLASSEXTEND = "native" 2 | 3 | RDEPENDS_${PN}_remove_class-native = "python3-datetime-native" 4 | RDEPENDS_${PN}_remove_class-native = "python3-difflib-native" 5 | RDEPENDS_${PN}_remove_class-native = "python3-unixadmin-native" 6 | RDEPENDS_${PN}_remove_class-native = "python3-html-native" -------------------------------------------------------------------------------- /recipes-python/python3/python3-whoosh_%.bbappend: -------------------------------------------------------------------------------- 1 | BBCLASSEXTEND = "native" 2 | -------------------------------------------------------------------------------- /recipes-python/python3/python3-xlrd_%.bbappend: -------------------------------------------------------------------------------- 1 | BBCLASSEXTEND = "native" 2 | -------------------------------------------------------------------------------- /recipes-security/cve-search/cve-search-native_2.1.bb: -------------------------------------------------------------------------------- 1 | DESCRIPTION = "a tool to perform local searches for known vulnerabilities " 2 | AUTHOR = "" 3 | HOMEPAGE = "https://github.com/cve-search/cve-search" 4 | LICENSE = "BSD" 5 | LIC_FILES_CHKSUM = "file://README.md;startline=273;endline=280;md5=25abb122643498d4f7cf823ed712497e" 6 | SRCREV = "18247fd56fca63ebbe29303a0b47e8626f47984c" 7 | PR = "r0" 8 | 9 | SRC_URI = "git://github.com/cve-search/cve-search.git;protocol=https;branch=master \ 10 | file://fix_ssl_and_unicode_issue.patch" 11 | 12 | S = "${WORKDIR}/git" 13 | 14 | inherit native python3native 15 | 16 | STARTMONGODB ??= "0" 17 | MONGODB_SERVER ??= "127.0.0.1" 18 | MONGODB_PORT ??= "27017" 19 | MONGODB_NAME ??= "cvedb" 20 | REDIS_SERVER ??= "127.0.0.1" 21 | REDIS_PORT ??= "6379" 22 | REDIS_VENDORSDB ??= "10" 23 | REDIS_NOTIFICATIONSDB ??= "11" 24 | REDIS_REFDB ??= "12" 25 | 26 | do_configure[noexec] = "1" 27 | do_compile[noexec] = "1" 28 | 29 | do_install() { 30 | install -d ${D}${exec_prefix} 31 | cp -rvf ${S}/bin ${D}${exec_prefix} 32 | cp -rvf ${S}/sbin ${D}${exec_prefix} 33 | cp -rvf ${S}/lib ${D}${exec_prefix} 34 | create_wrapper ${D}${sbindir}/db_updater.py PYTHONPATH='${STAGING_DIR_HOST}/${PYTHON_SITEPACKAGES_DIR}' 35 | create_wrapper ${D}${sbindir}/db_mgmt.py PYTHONPATH='${STAGING_DIR_HOST}/${PYTHON_SITEPACKAGES_DIR}' 36 | create_wrapper ${D}${sbindir}/db_mgmt_cpe_dictionary.py PYTHONPATH='${STAGING_DIR_HOST}/${PYTHON_SITEPACKAGES_DIR}' 37 | create_wrapper ${D}${bindir}/search.py PYTHONPATH='${STAGING_DIR_HOST}/${PYTHON_SITEPACKAGES_DIR}' 38 | } 39 | 40 | PACKAGES = "${PN}" 41 | 42 | FILES_${PN} = "${sbindir} ${sbindir} ${libdir}" 43 | 44 | DEPENDS = "python3-native mongodb-native redis-native ${PYTHON3_DEPENDENCIES}" 45 | 46 | PYTHON3_DEPENDENCIES = " \ 47 | python3-pymongo-native \ 48 | python3-whoosh-native \ 49 | python3-redis-native \ 50 | python3-dateutil-native \ 51 | python3-flask-native \ 52 | python3-flask-login-native \ 53 | python3-flask-pymongo-native \ 54 | python3-tornado-native \ 55 | python3-passlib-native \ 56 | python3-xlrd-native \ 57 | python3-lxml-native \ 58 | python3-feedformatter-native \ 59 | python3-six-native \ 60 | python3-pymisp-native \ 61 | python3-pytz-native \ 62 | " 63 | 64 | do_start_mongodb() { 65 | ${STAGING_BINDIR_NATIVE}/mongod \ 66 | --port ${MONGODB_PORT} \ 67 | --bind_ip ${MONGODB_SERVER} \ 68 | --pidfilepath ${TMPDIR}/mongodb.pid \ 69 | --noauth --fork --logappend \ 70 | --logpath ${TMPDIR}/log/mongodb.log \ 71 | --dbpath ${TMPDIR}/mongodb-data 72 | } 73 | do_start_mongodb[depends] = "mongodb-native:do_populate_sysroot" 74 | do_start_mongodb[dirs] = "${TMPDIR}/mongodb-data ${TMPDIR}/log" 75 | do_start_mongodb[nostamp] = "1" 76 | 77 | do_start_redisdb() { 78 | ${STAGING_BINDIR_NATIVE}/redis-server \ 79 | --port ${REDIS_PORT} \ 80 | --pidfile ${TMPDIR}/redis-server.pid \ 81 | --bind ${REDIS_SERVER} \ 82 | --dir ${TMPDIR}/redis-data \ 83 | --daemonize yes 84 | } 85 | do_start_redisdb[depends] = "redis-native:do_populate_sysroot" 86 | do_start_redisdb[nostamp] = "1" 87 | do_start_redisdb[dirs] = "${TMPDIR}/redis-data" 88 | 89 | do_initialize_db() { 90 | ${STAGING_SBINDIR_NATIVE}/db_mgmt.py -p -v 91 | ${STAGING_SBINDIR_NATIVE}/db_mgmt_cpe_dictionary.py 92 | } 93 | 94 | do_update_db() { 95 | ${STAGING_SBINDIR_NATIVE}/db_updater.py -v 96 | } 97 | 98 | addtask start_redisdb before do_initialize_db before do_update_db 99 | addtask start_mongodb before do_initialize_db before do_update_db 100 | addtask initialize_db after do_populate_sysroot after do_initialize_db 101 | addtask update_db after do_initialize_db after do_start_mongodb after do_start_redisdb 102 | -------------------------------------------------------------------------------- /recipes-security/cve-search/files/0001-lib-Config.py-allow-any-ssl-connection.patch: -------------------------------------------------------------------------------- 1 | From 9cb733fc5cd238e9a90763b6cbe8becc382a3282 Mon Sep 17 00:00:00 2001 2 | From: Sven Ebenfeld 3 | Date: Sat, 24 Dec 2016 04:08:59 +0100 4 | Subject: [PATCH] lib:Config.py: allow any ssl connection 5 | 6 | Signed-off-by: Sven Ebenfeld 7 | --- 8 | lib/Config.py | 3 ++- 9 | sbin/db_mgmt.py | 6 ++++++ 10 | 2 files changed, 8 insertions(+), 1 deletion(-) 11 | 12 | diff --git a/lib/Config.py b/lib/Config.py 13 | index d96b33c..cc56e64 100644 14 | --- a/lib/Config.py 15 | +++ b/lib/Config.py 16 | @@ -24,6 +24,7 @@ import re 17 | import urllib.parse 18 | import urllib.request as req 19 | import zipfile 20 | +import ssl 21 | from io import BytesIO 22 | 23 | class Configuration(): 24 | @@ -268,7 +269,7 @@ class Configuration(): 25 | auth = req.HTTPBasicAuthHandler() 26 | opener = req.build_opener(proxy, auth, req.HTTPHandler) 27 | req.install_opener(opener) 28 | - response = req.urlopen(getfile) 29 | + response = req.urlopen(getfile, context=ssl._create_unverified_context()) 30 | data = response 31 | # TODO: if data == text/plain; charset=utf-8, read and decode 32 | if unpack: 33 | diff --git a/sbin/db_mgmt.py b/sbin/db_mgmt.py 34 | index aaa6e7b..d2ea7d2 100755 35 | --- a/sbin/db_mgmt.py 36 | +++ b/sbin/db_mgmt.py 37 | @@ -197,6 +197,8 @@ if __name__ == '__main__': 38 | try: 39 | (f, r) = Configuration.getFile(Configuration.getFeedURL('cve') + getfile) 40 | except: 41 | + tb = traceback.format_exc() 42 | + print (tb) 43 | sys.exit("Cannot open url %s. Bad URL or not connected to the internet?"%(Configuration.getFeedURL("cve") + getfile)) 44 | i = db.getInfo("cve") 45 | last_modified = parse_datetime(r.headers['last-modified'], ignoretz=True) 46 | @@ -228,6 +230,8 @@ if __name__ == '__main__': 47 | try: 48 | (f, r) = Configuration.getFile(Configuration.getFeedURL('cve') + getfile) 49 | except: 50 | + tb = traceback.format_exc() 51 | + print (tb) 52 | sys.exit("Cannot open url %s. Bad URL or not connected to the internet?"%(Configuration.getFeedURL("cve") + getfile)) 53 | parser = make_parser() 54 | ch = CVEHandler() 55 | @@ -268,6 +272,8 @@ if __name__ == '__main__': 56 | try: 57 | (f, r) = Configuration.getFile(Configuration.getFeedURL('cve') + getfile) 58 | except: 59 | + tb = traceback.format_exc() 60 | + print (tb) 61 | sys.exit("Cannot open url %s. Bad URL or not connected to the internet?"%(Configuration.getFeedURL('cve') + getfile)) 62 | parser.parse(f) 63 | if args.v: 64 | -- 65 | 2.7.4 66 | 67 | -------------------------------------------------------------------------------- /recipes-security/cve-search/files/fix_ssl_and_unicode_issue.patch: -------------------------------------------------------------------------------- 1 | Index: git/lib/Config.py 2 | =================================================================== 3 | --- git.orig/lib/Config.py 4 | +++ git/lib/Config.py 5 | @@ -23,6 +23,7 @@ import urllib.parse 6 | import urllib.request as req 7 | from io import BytesIO 8 | import gzip 9 | +import ssl 10 | 11 | class Configuration(): 12 | ConfigParser = configparser.ConfigParser() 13 | @@ -331,9 +332,9 @@ class Configuration(): 14 | opener = req.build_opener(proxy, auth, req.HTTPHandler) 15 | req.install_opener(opener) 16 | if not compressed: 17 | - return req.urlopen(getfile) 18 | + return req.urlopen(getfile, context=ssl._create_unverified_context()) 19 | else: 20 | - response = req.urlopen(getfile + '.gz') 21 | + response = req.urlopen(getfile + '.gz', context=ssl._create_unverified_context()) 22 | data = None 23 | if 'gzip' in response.info().get('Content-Type'): 24 | buf = BytesIO(response.read()) 25 | Index: git/sbin/db_mgmt_exploitdb.py 26 | =================================================================== 27 | --- git.orig/sbin/db_mgmt_exploitdb.py 28 | +++ git/sbin/db_mgmt_exploitdb.py 29 | @@ -50,7 +50,7 @@ with open(csvfile, 'wb') as fp: 30 | fp.close() 31 | 32 | exploits=[] 33 | -with open(csvfile, newline='') as csvtoparse: 34 | +with open(csvfile, newline='', encoding='utf-8') as csvtoparse: 35 | exploitcsv = csv.DictReader(csvtoparse, delimiter=',') 36 | for row in exploitcsv: 37 | exploits.append(row) 38 | Index: git/sbin/db_mgmt_cwe.py 39 | =================================================================== 40 | --- git.orig/sbin/db_mgmt_cwe.py 41 | +++ git/sbin/db_mgmt_cwe.py 42 | @@ -98,7 +98,7 @@ cwezip.close() 43 | with zipfile.ZipFile(tmpfile.name) as z: 44 | z.extractall(tmpdir) 45 | z.close() 46 | -f = open(os.path.join(tmpdir, 'cwec_v2.8.xml')) 47 | +f = open(os.path.join(tmpdir, 'cwec_v2.8.xml'), encoding='utf-8') 48 | # parse xml and store in database 49 | parser.parse(f) 50 | cweList=[] 51 | -------------------------------------------------------------------------------- /recipes-security/ima-policy/appraisal-ima-policy_1.0.bb: -------------------------------------------------------------------------------- 1 | DESCRIPTION = "Simple Control DTB for use with U-Boot for Devices without DTB \ 2 | Support just used to support Public Key Attachment" 3 | AUTHOR = "Sven Ebenfeld " 4 | LICENSE = "GPLv2" 5 | LIC_FILES_CHKSUM = "file://${WORKDIR}/appraisal-policy.ima;beginline=1;endline=12;md5=1e1a19e657370adde7862a396c1b0752" 6 | 7 | SRC_URI = "file://appraisal-policy.ima" 8 | SRC_URI[md5sum] = "1" 9 | SRC_URI[sha256sum] = "1" 10 | 11 | do_patch[noexec] = "1" 12 | do_configure[noexec] = "1" 13 | do_compile[noexec] = "1" 14 | 15 | do_install() { 16 | install -d ${D}${sysconfdir}/ima 17 | install -m 0644 ${WORKDIR}/appraisal-policy.ima ${D}${sysconfdir}/ima 18 | ln -sf ${sysconfdir}/ima/appraisal-policy.ima ${D}${sysconfdir}/ima/ima-policy 19 | } -------------------------------------------------------------------------------- /recipes-security/ima-policy/files/appraisal-policy.ima: -------------------------------------------------------------------------------- 1 | # DEFAULT POLICY 2 | 3 | # PROC_SUPER_MAGIC 4 | dont_measure fsmagic=0x9fa0 5 | dont_appraise fsmagic=0x9fa0 6 | # SYSFS_MAGIC 7 | dont_measure fsmagic=0x62656572 8 | dont_appraise fsmagic=0x62656572 9 | # DEBUGFS_MAGIC 10 | dont_measure fsmagic=0x64626720 11 | dont_appraise fsmagic=0x64626720 12 | # TMPFS_MAGIC 13 | dont_measure fsmagic=0x01021994 14 | dont_appraise fsmagic=0x01021994 15 | # RAMFS_MAGIC 16 | dont_appraise fsmagic=0x858458f6 17 | # DEVPTS_SUPER_MAGIC 18 | dont_measure fsmagic=0x1cd1 19 | dont_appraise fsmagic=0x1cd1 20 | # BINFMTFS_MAGIC 21 | dont_measure fsmagic=0x42494e4d 22 | dont_appraise fsmagic=0x42494e4d 23 | # SECURITYFS_MAGIC 24 | dont_measure fsmagic=0x73636673 25 | dont_appraise fsmagic=0x73636673 26 | # SELINUX_MAGIC 27 | dont_measure fsmagic=0xf97cff8c 28 | dont_appraise fsmagic=0xf97cff8c 29 | # CGROUP_SUPER_MAGIC 30 | dont_measure fsmagic=0x27e0eb 31 | dont_appraise fsmagic=0x27e0eb 32 | # NSFS_MAGIC 33 | dont_measure fsmagic=0x6e736673 34 | dont_appraise fsmagic=0x6e736673 35 | 36 | measure 37 | appraise func=BPRM_CHECK 38 | appraise func=FILE_MMAP mask=MAY_EXEC 39 | appraise func=FILE_CHECK mask=MAY_READ uid=0 40 | appraise appraise_type=imasig func=MODULE_CHECK 41 | appraise appraise_type=imasig func=FIRMWARE_CHECK 42 | appraise fowner=0 -------------------------------------------------------------------------------- /recipes-support/gperftools/gperftools_%.bbappend: -------------------------------------------------------------------------------- 1 | BBCLASSEXTEND = "native" 2 | -------------------------------------------------------------------------------- /recipes-support/mongodb/mongodb_%.bbappend: -------------------------------------------------------------------------------- 1 | BBCLASSEXTEND = "native" 2 | -------------------------------------------------------------------------------- /recipes-support/redis/redis_%.bbappend: -------------------------------------------------------------------------------- 1 | BBCLASSEXTEND = "native" -------------------------------------------------------------------------------- /scripts/lib/wic/canned-wks/imx-uboot-ivt-spl.wks: -------------------------------------------------------------------------------- 1 | # short-description: Create SD card image with a boot partition 2 | # long-description: 3 | # Create an image that can be written onto a SD card using dd for use 4 | # with i.MX SoC family. 5 | # It uses SPL and u-boot 6 | # 7 | # The disk layout used is: 8 | # - ----- --------- -------------- 9 | # | | SPL | u-boot | rootfs | 10 | # - ----- --------- -------------- 11 | # ^ ^ ^ ^ ^ 12 | # | | | | | 13 | # 0 1kiB 69kiB 4MiB + rootfs + IMAGE_EXTRA_SPACE (default 10MiB) 14 | # 15 | part SPL --source rawcopy --sourceparams="file=SPL" --ondisk mmcblk --no-table --align 1 16 | part u-boot --source rawcopy --sourceparams="file=u-boot-ivt.img" --ondisk mmcblk --no-table --align 69 17 | part / --source signed-rootfs --ondisk mmcblk --fstype=ext4 --label root --align 4096 18 | -------------------------------------------------------------------------------- /scripts/lib/wic/plugins/source/signed-rootfs.py: -------------------------------------------------------------------------------- 1 | # ex:ts=4:sw=4:sts=4:et 2 | # -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- 3 | # 4 | # Copyright (c) 2014, Intel Corporation. 5 | # All rights reserved. 6 | # 7 | # This program is free software; you can redistribute it and/or modify 8 | # it under the terms of the GNU General Public License version 2 as 9 | # published by the Free Software Foundation. 10 | # 11 | # This program is distributed in the hope that it will be useful, 12 | # but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | # GNU General Public License for more details. 15 | # 16 | # You should have received a copy of the GNU General Public License along 17 | # with this program; if not, write to the Free Software Foundation, Inc., 18 | # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. 19 | # 20 | # DESCRIPTION 21 | # This implements the 'signed-rootfs' source plugin class for 'wic' 22 | # 23 | # AUTHORS 24 | # Tom Zanussi 25 | # Joao Henrique Ferreira de Freitas 26 | # Sven Ebenfeld 27 | # 28 | 29 | import os 30 | 31 | from wic import msger 32 | from wic.pluginbase import SourcePlugin 33 | from wic.utils.oe.misc import get_bitbake_var 34 | from wic.utils.oe.misc import exec_cmd, exec_native_cmd 35 | 36 | class SignedRootfsPlugin(SourcePlugin): 37 | """ 38 | Populate partition content from a rootfs directory. 39 | """ 40 | 41 | name = 'signed-rootfs' 42 | 43 | @staticmethod 44 | def __get_rootfs_dir(rootfs_dir): 45 | if os.path.isdir(rootfs_dir): 46 | return rootfs_dir 47 | 48 | image_rootfs_dir = get_bitbake_var("IMAGE_ROOTFS", rootfs_dir) 49 | if not os.path.isdir(image_rootfs_dir): 50 | msg = "No valid artifact IMAGE_ROOTFS from image named" 51 | msg += " %s has been found at %s, exiting.\n" % \ 52 | (rootfs_dir, image_rootfs_dir) 53 | msger.error(msg) 54 | 55 | return image_rootfs_dir 56 | 57 | @staticmethod 58 | def __get_signing_key(): 59 | image_signing_key = get_bitbake_var("IMA_EVM_PRIVKEY") 60 | if not image_signing_key or not os.path.isdir(image_signing_key): 61 | msg = "No valid artifact IMA_EVM_PRIVKEY" 62 | msg += " has been found at %s, exiting.\n" % \ 63 | (image_signing_key) 64 | msger.error(msg) 65 | 66 | return image_signing_key 67 | 68 | 69 | @classmethod 70 | def do_prepare_partition(cls, part, source_params, cr, cr_workdir, 71 | oe_builddir, bootimg_dir, kernel_dir, 72 | krootfs_dir, native_sysroot): 73 | """ 74 | Called to do the actual content population for a partition i.e. it 75 | 'prepares' the partition to be incorporated into the image. 76 | In this case, prepare content for legacy bios boot partition. 77 | """ 78 | if part.rootfs_dir is None: 79 | if not 'ROOTFS_DIR' in krootfs_dir: 80 | msg = "Couldn't find --rootfs-dir, exiting" 81 | msger.error(msg) 82 | rootfs_dir = krootfs_dir['ROOTFS_DIR'] 83 | else: 84 | if part.rootfs_dir in krootfs_dir: 85 | rootfs_dir = krootfs_dir[part.rootfs_dir] 86 | elif part.rootfs_dir: 87 | rootfs_dir = part.rootfs_dir 88 | else: 89 | msg = "Couldn't find --rootfs-dir=%s connection" 90 | msg += " or it is not a valid path, exiting" 91 | msger.error(msg % part.rootfs_dir) 92 | 93 | real_rootfs_dir = cls.__get_rootfs_dir(rootfs_dir) 94 | 95 | part.rootfs_dir = real_rootfs_dir 96 | print ('Used the correct thing') 97 | 98 | cls.prepare_rootfs_ext4_signed(cr_workdir, oe_builddir, real_rootfs_dir, native_sysroot, part) 99 | 100 | @classmethod 101 | def prepare_rootfs_ext4_signed(cls, cr_workdir, oe_builddir, rootfs_dir, 102 | native_sysroot, partition): 103 | print ('Started the correct thing') 104 | """ 105 | Prepare content for a rootfs partition i.e. create a partition 106 | and fill it from a /rootfs dir. 107 | 108 | Currently handles ext2/3/4, btrfs and vfat. 109 | """ 110 | p_prefix = os.environ.get("PSEUDO_PREFIX", "%s/usr" % native_sysroot) 111 | p_localstatedir = os.environ.get("PSEUDO_LOCALSTATEDIR", 112 | "%s/../pseudo" % rootfs_dir) 113 | p_passwd = os.environ.get("PSEUDO_PASSWD", rootfs_dir) 114 | p_nosymlinkexp = os.environ.get("PSEUDO_NOSYMLINKEXP", "1") 115 | pseudo = "export PSEUDO_PREFIX=%s;" % p_prefix 116 | pseudo += "export PSEUDO_LOCALSTATEDIR=%s;" % p_localstatedir 117 | pseudo += "export PSEUDO_PASSWD=%s;" % p_passwd 118 | pseudo += "export PSEUDO_NOSYMLINKEXP=%s;" % p_nosymlinkexp 119 | pseudo += "%s/usr/bin/pseudo " % native_sysroot 120 | 121 | rootfs = "%s/rootfs_%s.%s.%s" % (cr_workdir, partition.label, 122 | partition.lineno, partition.fstype) 123 | if os.path.isfile(rootfs): 124 | os.remove(rootfs) 125 | """ 126 | Prepare content for an ext2/3/4 rootfs partition. 127 | """ 128 | du_cmd = "du -ks %s" % rootfs_dir 129 | out = exec_cmd(du_cmd) 130 | actual_rootfs_size = int(out.split()[0]) 131 | 132 | extra_blocks = partition.get_extra_block_count(actual_rootfs_size) 133 | if extra_blocks < partition.extra_space: 134 | extra_blocks = partition.extra_space 135 | 136 | rootfs_size = actual_rootfs_size + extra_blocks 137 | rootfs_size *= partition.overhead_factor 138 | 139 | msger.debug("Added %d extra blocks to %s to get to %d total blocks" % \ 140 | (extra_blocks, partition.mountpoint, rootfs_size)) 141 | 142 | exec_cmd("truncate %s -s %d" % (rootfs, rootfs_size * 1024)) 143 | 144 | extra_imagecmd = "-i 8192" 145 | """key_file = cls.__get_signing_key()""" 146 | key_file = "/home/esven/openembedded/krogoth/poky/meta-intel-iot-security/meta-integrity/scripts/keys/privkey_ima.pem" 147 | 148 | label_str = "" 149 | if partition.label: 150 | label_str = "-L %s" % partition.label 151 | 152 | mkfs_cmd = "mkfs.%s -F %s %s -k %s %s -d %s" % \ 153 | (partition.fstype, extra_imagecmd, rootfs, key_file, label_str, rootfs_dir) 154 | print ("%s" % mkfs_cmd) 155 | exec_native_cmd(mkfs_cmd, native_sysroot, pseudo=pseudo) 156 | 157 | partition.source_file = rootfs 158 | 159 | # get the rootfs size in the right units for kickstart (kB) 160 | du_cmd = "du -Lbks %s" % rootfs 161 | out = exec_cmd(du_cmd) 162 | partition.size = out.split()[0] 163 | 164 | 165 | 166 | --------------------------------------------------------------------------------