meta-digi-arm: Add configuration fragments support.

Fixes https://jira.digi.com/browse/DEL-122
Fixes https://jira.digi.com/browse/DEL-264

Signed-off-by: Alex Gonzalez <alex.gonzalez@digi.com>
This commit is contained in:
Alex Gonzalez 2013-02-20 18:29:15 +01:00
parent a2c0a78035
commit ffa592299e
9 changed files with 1755 additions and 3 deletions

View File

@ -1,7 +1,7 @@
# Digi BSP default providers # Digi BSP default providers
PREFERRED_PROVIDER_linux-libc-headers ?= "linux-libc-headers-imx" PREFERRED_PROVIDER_linux-libc-headers ?= "linux-libc-headers-imx"
PREFERRED_PROVIDER_u-boot ?= "u-boot-imx" PREFERRED_PROVIDER_u-boot ?= "u-boot-imx"
PREFERRED_PROVIDER_virtual/kernel ?= "linux-imx" PREFERRED_PROVIDER_virtual/kernel ?= "linux-del"
PREFERRED_PROVIDER_virtual/xserver = "xserver-xorg" PREFERRED_PROVIDER_virtual/xserver = "xserver-xorg"
PREFERRED_PROVIDER_virtual/libx11 ?= "${@base_contains('DISTRO_FEATURES', 'x11', 'libx11', '', d)}" PREFERRED_PROVIDER_virtual/libx11 ?= "${@base_contains('DISTRO_FEATURES', 'x11', 'libx11', '', d)}"

View File

@ -0,0 +1,68 @@
# Copyright (C) 2013 Digi International
# Copyright (C) 2012 O.S. Systems Software LTDA.
# Released under the MIT license (see COPYING.MIT for the terms)
DESCRIPTION = "Linux kernel for Digi's imx based platforms"
LICENSE = "GPLv2"
LIC_FILES_CHKSUM = "file://COPYING;md5=d7810fab7487fb0aad327b76f1be7cd7"
INC_PR = "r0"
inherit kernel
# Put a local version until we have a true SRCREV to point to
LOCALVERSION ?= "+del"
SCMVERSION ?= "y"
S = "${WORKDIR}/git"
kernel_conf_variable() {
CONF_SED_SCRIPT="$CONF_SED_SCRIPT /CONFIG_$1[ =]/d;"
if test "$2" = "n"
then
echo "# CONFIG_$1 is not set" >> ${S}/.config
else
echo "CONFIG_$1=$2" >> ${S}/.config
fi
}
do_configure_prepend() {
echo "" > ${S}/.config
CONF_SED_SCRIPT=""
kernel_conf_variable LOCALVERSION "\"${LOCALVERSION}\""
kernel_conf_variable LOCALVERSION_AUTO y
sed -e "${CONF_SED_SCRIPT}" < '${WORKDIR}/defconfig' >> '${S}/.config'
shopt -s nullglob
for f in ${WORKDIR}/*.cfg;
do
cat $f >> '${S}/.config'
done
if [ "${SCMVERSION}" = "y" ]; then
# Add GIT revision to the local version
head=`git rev-parse --verify --short HEAD 2> /dev/null`
printf "%s%s" +g $head > ${S}/.scmversion
fi
}
# install nedded headers for imx-test compilation
do_install_append() {
# bounds.h may be used by a module and is currently missing
if [ -d include/generated ]; then
cp include/generated/* $kerneldir/include/generated/
fi
# Host architecture object file
rm -f $kerneldir/scripts/kconfig/kxgettext.o
}
sysroot_stage_all_append() {
# Copy native binaries need for imx-test build onto sysroot
mkdir -p ${SYSROOT_DESTDIR}${KERNEL_SRC_PATH}/scripts/basic \
${SYSROOT_DESTDIR}${KERNEL_SRC_PATH}/scripts/mod
cp ${S}/scripts/basic/fixdep ${SYSROOT_DESTDIR}${KERNEL_SRC_PATH}/scripts/basic
cp ${S}/scripts/mod/modpost ${SYSROOT_DESTDIR}${KERNEL_SRC_PATH}/scripts/mod
}

View File

@ -1,5 +1,8 @@
# Copyright (C) 2012 Digi International # Copyright (C) 2012 Digi International
PR_append = "+del.r0"
include linux-del.inc
PR = "${INC_PR}.0"
FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}_${PV}" FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}_${PV}"
@ -9,12 +12,21 @@ LOCALVERSION_mx5 = "mx5+master"
SRC_URI = "${DIGI_LOG_GIT}linux-2.6.git;protocol=git;branch=refs/heads/master \ SRC_URI = "${DIGI_LOG_GIT}linux-2.6.git;protocol=git;branch=refs/heads/master \
file://defconfig \ file://defconfig \
" "
# Override 'ccardimx28js' SRC_URI so the 'SRC_URI_append_mxs' patches # Override 'ccardimx28js' SRC_URI so the 'SRC_URI_append_mxs' patches
# from FSL layer are *not* applied # from FSL layer are *not* applied
SRCREV_mxs = "${AUTOREV}" SRCREV_mxs = "${AUTOREV}"
LOCALVERSION_mxs = "mxs+master" LOCALVERSION_mxs = "mxs+master"
KERNEL_CFG_FRAGS_ccardimx28js_mxs = "${@base_contains('DISTRO_FEATURES', 'x11', 'file://config-fb.cfg file://config-touch.cfg', '', d)}"
SRC_URI_ccardimx28js_mxs = "${DIGI_LOG_GIT}linux-2.6.git;protocol=git;branch=refs/heads/master \ SRC_URI_ccardimx28js_mxs = "${DIGI_LOG_GIT}linux-2.6.git;protocol=git;branch=refs/heads/master \
file://defconfig \ file://defconfig \
${KERNEL_CFG_FRAGS} \
" "
SRCREV_mxs = "${AUTOREV}"
LOCALVERSION_cpx2 = "mxs+gateways_master"
SRC_URI_cpx2_mxs = "${DIGI_LOG_GIT}linux-2.6.git;protocol=git;branch=refs/heads/gateways/master \
file://defconfig \
"
FILES_kernel-image += "/boot/config*" FILES_kernel-image += "/boot/config*"
COMPATIBLE_MACHINE = "(mxs|mx5)"

View File

@ -0,0 +1,38 @@
# CONFIG_CCARDIMX28_16_BITSPERPIXEL is not set
# CONFIG_CCARDIMX28_24_BITSPERPIXEL is not set
CONFIG_CCARDIMX28_32_BITSPERPIXEL=y
CONFIG_CCARDIMX28_DEFAULT_VIDEO_BPP=32
CONFIG_CCARDIMX28_DISP_RGB666=y
# CONFIG_CCARDIMX28_DISP_RGB888 is not set
CONFIG_CCARDIMX28_DISP_DATABUS_WIDTH=18
# CONFIG_MXS_AUART1_DEVICE_ENABLE is not set
# CONFIG_MXS_AUART1_2WIRE is not set
CONFIG_FB=y
# CONFIG_FIRMWARE_EDID is not set
# CONFIG_FB_DDC is not set
# CONFIG_FB_BOOT_VESA_SUPPORT is not set
CONFIG_FB_CFB_FILLRECT=y
CONFIG_FB_CFB_COPYAREA=y
CONFIG_FB_CFB_IMAGEBLIT=y
# CONFIG_FB_CFB_REV_PIXELS_IN_BYTE is not set
# CONFIG_FB_SYS_FILLRECT is not set
# CONFIG_FB_SYS_COPYAREA is not set
# CONFIG_FB_SYS_IMAGEBLIT is not set
# CONFIG_FB_FOREIGN_ENDIAN is not set
# CONFIG_FB_SYS_FOPS is not set
# CONFIG_FB_SVGALIB is not set
# CONFIG_FB_MACMODES is not set
# CONFIG_FB_BACKLIGHT is not set
# CONFIG_FB_MODE_HELPERS is not set
# CONFIG_FB_TILEBLITTING is not set
CONFIG_FB_MXS=y
# CONFIG_FB_MXS_TVENC is not set
# CONFIG_FB_S1D13XXX is not set
# CONFIG_FB_HX8347 is not set
# CONFIG_FB_VIRTUAL is not set
# CONFIG_FB_METRONOME is not set
# CONFIG_FB_MB862XX is not set
# CONFIG_FB_BROADSHEET is not set
# CONFIG_FRAMEBUFFER_CONSOLE is not set
# CONFIG_LOGO is not set

View File

@ -0,0 +1,43 @@
CONFIG_INPUT_TOUCHSCREEN=y
# CONFIG_TOUCHSCREEN_ADS7846 is not set
# CONFIG_TOUCHSCREEN_AD7877 is not set
# CONFIG_TOUCHSCREEN_AD7879_I2C is not set
# CONFIG_TOUCHSCREEN_AD7879_SPI is not set
# CONFIG_TOUCHSCREEN_AD7879 is not set
# CONFIG_TOUCHSCREEN_DYNAPRO is not set
# CONFIG_TOUCHSCREEN_HAMPSHIRE is not set
# CONFIG_TOUCHSCREEN_EETI is not set
# CONFIG_TOUCHSCREEN_EGALAX is not set
# CONFIG_TOUCHSCREEN_FUSION_4 is not set
# CONFIG_TOUCHSCREEN_FUSION_7_10 is not set
# CONFIG_TOUCHSCREEN_FUJITSU is not set
# CONFIG_TOUCHSCREEN_GUNZE is not set
# CONFIG_TOUCHSCREEN_ELO is not set
# CONFIG_TOUCHSCREEN_WACOM_W8001 is not set
# CONFIG_TOUCHSCREEN_MCS5000 is not set
# CONFIG_TOUCHSCREEN_MTOUCH is not set
# CONFIG_TOUCHSCREEN_INEXIO is not set
# CONFIG_TOUCHSCREEN_MK712 is not set
CONFIG_TOUCHSCREEN_MXS=y
# CONFIG_TOUCHSCREEN_PENMOUNT is not set
# CONFIG_TOUCHSCREEN_TOUCHRIGHT is not set
# CONFIG_TOUCHSCREEN_TOUCHWIN is not set
# CONFIG_TOUCHSCREEN_USB_COMPOSITE is not set
# CONFIG_TOUCHSCREEN_TOUCHIT213 is not set
# CONFIG_TOUCHSCREEN_TSC2007 is not set
# CONFIG_TOUCHSCREEN_W90X900 is not set
# CONFIG_TOUCHSCREEN_TPS6507X is not set
# CONFIG_TOUCHSCREEN_P1003 is not set
# CONFIG_TOUCHSCREEN_MAX11801 is not set
# CONFIG_INPUT_MISC is not set
#
# Hardware I/O ports
#
CONFIG_SERIO=y
CONFIG_SERIO_SERPORT=y
# CONFIG_SERIO_LIBPS2 is not set
# CONFIG_SERIO_RAW is not set
# CONFIG_SERIO_ALTERA_PS2 is not set
# CONFIG_GAMEPORT is not set

File diff suppressed because it is too large Load Diff