mirror of
git://git.yoctoproject.org/meta-raspberrypi
synced 2026-04-02 02:49:12 +00:00
The driver for 8250 defaults to 9600. We setup it on 115200 to be consistent with getty configuration. The firmware can do its magic with kgdboc too as it searches and replaces =serial0 and =serial1. So, use serial0 for kgdboc too. Signed-off-by: Andrei Gherzan <andrei@gherzan.ro>
86 lines
3.0 KiB
PHP
86 lines
3.0 KiB
PHP
require linux-rpi.inc
|
|
inherit linux-raspberrypi-base
|
|
|
|
DESCRIPTION = "Linux Kernel for Raspberry Pi"
|
|
SECTION = "kernel"
|
|
LICENSE = "GPLv2"
|
|
LIC_FILES_CHKSUM = "file://COPYING;md5=d7810fab7487fb0aad327b76f1be7cd7"
|
|
|
|
SRC_URI += " \
|
|
file://defconfig \
|
|
"
|
|
|
|
COMPATIBLE_MACHINE = "raspberrypi"
|
|
|
|
PE = "1"
|
|
PV = "${LINUX_VERSION}+git${SRCPV}"
|
|
|
|
# NOTE: For now we pull in the default config from the RPi kernel GIT tree.
|
|
KERNEL_DEFCONFIG_raspberrypi ?= "bcmrpi_defconfig"
|
|
KERNEL_DEFCONFIG_raspberrypi2 ?= "bcm2709_defconfig"
|
|
|
|
# CMDLINE for raspberrypi
|
|
CMDLINE = "dwc_otg.lpm_enable=0 console=serial0,115200 root=/dev/mmcblk0p2 rootfstype=ext4 rootwait"
|
|
|
|
# Add the kernel debugger over console kernel command line option if enabled
|
|
CMDLINE_append = ' ${@base_conditional("ENABLE_KGDB", "1", "kgdboc=serial0,115200", "", d)}'
|
|
|
|
UDEV_GE_141 ?= "1"
|
|
|
|
KERNEL_MODULE_AUTOLOAD += "${@bb.utils.contains("MACHINE_FEATURES", "pitft28r", "stmpe-ts", "", d)}"
|
|
|
|
# Set programmatically some variables during recipe parsing
|
|
# See http://www.yoctoproject.org/docs/current/bitbake-user-manual/bitbake-user-manual.html#anonymous-python-functions
|
|
python __anonymous () {
|
|
kerneltype = d.getVar('KERNEL_IMAGETYPE', True)
|
|
kerneldt = get_dts(d, d.getVar('LINUX_VERSION', True))
|
|
d.setVar("KERNEL_DEVICETREE", kerneldt)
|
|
|
|
# Add dependency to 'rpi-mkimage-native' package only if RPi bootloader is used with DT-enable kernel
|
|
if kerneldt:
|
|
if kerneltype != 'uImage' and len(kerneldt.strip()) > 1:
|
|
depends = d.getVar("DEPENDS", True)
|
|
depends = "%s rpi-mkimage-native" % depends
|
|
d.setVar("DEPENDS", depends)
|
|
}
|
|
|
|
do_kernel_configme_prepend() {
|
|
install -m 0644 ${S}/arch/${ARCH}/configs/${KERNEL_DEFCONFIG} ${WORKDIR}/defconfig || die "No default configuration for ${MACHINE} / ${KERNEL_DEFCONFIG} available."
|
|
}
|
|
|
|
do_install_prepend() {
|
|
install -d ${D}/lib/firmware
|
|
}
|
|
|
|
do_deploy_append() {
|
|
# Deploy cmdline.txt
|
|
install -d ${DEPLOYDIR}/bcm2835-bootfiles
|
|
PITFT="${@bb.utils.contains("MACHINE_FEATURES", "pitft", "1", "0", d)}"
|
|
if [ ${PITFT} = "1" ]; then
|
|
PITFT_PARAMS="fbcon=map:10 fbcon=font:VGA8x8"
|
|
fi
|
|
echo "${CMDLINE}${PITFT_PARAMS}" > ${DEPLOYDIR}/bcm2835-bootfiles/cmdline.txt
|
|
}
|
|
|
|
do_rpiboot_mkimage() {
|
|
if test "x${KERNEL_IMAGETYPE}" != "xuImage" ; then
|
|
if test -n "${KERNEL_DEVICETREE}"; then
|
|
# Add RPi bootloader trailer to kernel image to enable DeviceTree support
|
|
${STAGING_BINDIR_NATIVE}/mkknlimg --dtok ${KERNEL_OUTPUT} ${KERNEL_OUTPUT}
|
|
fi
|
|
fi
|
|
}
|
|
|
|
do_bundle_initramfs_append() {
|
|
if [ ! -z "${INITRAMFS_IMAGE}" -a x"${INITRAMFS_IMAGE_BUNDLE}" = x1 ]; then
|
|
if test "x${KERNEL_IMAGETYPE}" != "xuImage" ; then
|
|
if test -n "${KERNEL_DEVICETREE}"; then
|
|
# Add RPi bootloader trailer to kernel image to enable DeviceTree support
|
|
${STAGING_BINDIR_NATIVE}/mkknlimg --dtok ${KERNEL_OUTPUT}.initramfs ${KERNEL_OUTPUT}.initramfs
|
|
fi
|
|
fi
|
|
fi
|
|
}
|
|
|
|
addtask rpiboot_mkimage before do_install after do_compile
|