Andrew Geissler | 26e4bea | 2020-11-30 19:54:03 -0600 | [diff] [blame] | 1 | SUMMARY = "cmdline.txt file used to boot the kernel on a Raspberry Pi device" |
| 2 | LICENSE = "MIT" |
| 3 | LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/MIT;md5=0835ade698e0bcf8506ecda2f7b4f302" |
| 4 | |
| 5 | COMPATIBLE_MACHINE = "^rpi$" |
| 6 | INHIBIT_DEFAULT_DEPS = "1" |
| 7 | inherit deploy nopackages |
| 8 | |
| 9 | CMDLINE_DWC_OTG ?= "dwc_otg.lpm_enable=0" |
Andrew Geissler | ad7fa35 | 2021-07-23 12:55:23 -0400 | [diff] [blame] | 10 | |
| 11 | CMDLINE_ROOT_FSTYPE ?= "rootfstype=ext4" |
| 12 | CMDLINE_ROOTFS ?= "root=/dev/mmcblk0p2 ${CMDLINE_ROOT_FSTYPE} rootwait" |
Andrew Geissler | 26e4bea | 2020-11-30 19:54:03 -0600 | [diff] [blame] | 13 | |
| 14 | CMDLINE_SERIAL ?= "${@oe.utils.conditional("ENABLE_UART", "1", "console=serial0,115200", "", d)}" |
| 15 | |
| 16 | CMDLINE_CMA ?= "${@oe.utils.conditional("RASPBERRYPI_CAMERA_V2", "1", "cma=64M", "", d)}" |
| 17 | |
William A. Kennington III | a99e9b6 | 2021-06-02 12:47:56 -0700 | [diff] [blame] | 18 | CMDLINE_CMA ?= "${@oe.utils.conditional("RASPBERRYPI_HD_CAMERA", "1", "cma=64M", "", d)}" |
| 19 | |
Andrew Geissler | 26e4bea | 2020-11-30 19:54:03 -0600 | [diff] [blame] | 20 | CMDLINE_PITFT ?= "${@bb.utils.contains("MACHINE_FEATURES", "pitft", "fbcon=map:10 fbcon=font:VGA8x8", "", d)}" |
| 21 | |
| 22 | # Add the kernel debugger over console kernel command line option if enabled |
| 23 | CMDLINE_KGDB ?= '${@oe.utils.conditional("ENABLE_KGDB", "1", "kgdboc=serial0,115200", "", d)}' |
| 24 | |
| 25 | # Disable rpi logo on boot |
| 26 | CMDLINE_LOGO ?= '${@oe.utils.conditional("DISABLE_RPI_BOOT_LOGO", "1", "logo.nologo", "", d)}' |
| 27 | |
| 28 | # You can define CMDLINE_DEBUG as "debug" in your local.conf or distro.conf |
| 29 | # to enable kernel debugging. |
| 30 | CMDLINE_DEBUG ?= "" |
| 31 | |
Andrew Geissler | 5199d83 | 2021-09-24 16:47:35 -0500 | [diff] [blame^] | 32 | # Add RNDIS capabilities (must be after rootwait) |
| 33 | # example: |
| 34 | # CMDLINE_RNDIS = "modules-load=dwc2,g_ether g_ether.host_addr=<some MAC |
| 35 | # address> g_ether.dev_addr=<some MAC address>" |
| 36 | # if the MAC addresses are omitted, random values will be used |
| 37 | CMDLINE_RNDIS ?= "" |
| 38 | |
Andrew Geissler | 26e4bea | 2020-11-30 19:54:03 -0600 | [diff] [blame] | 39 | CMDLINE = " \ |
| 40 | ${CMDLINE_DWC_OTG} \ |
| 41 | ${CMDLINE_SERIAL} \ |
| 42 | ${CMDLINE_ROOTFS} \ |
| 43 | ${CMDLINE_CMA} \ |
| 44 | ${CMDLINE_KGDB} \ |
| 45 | ${CMDLINE_LOGO} \ |
| 46 | ${CMDLINE_PITFT} \ |
| 47 | ${CMDLINE_DEBUG} \ |
Andrew Geissler | 5199d83 | 2021-09-24 16:47:35 -0500 | [diff] [blame^] | 48 | ${CMDLINE_RNDIS} \ |
Andrew Geissler | 26e4bea | 2020-11-30 19:54:03 -0600 | [diff] [blame] | 49 | " |
| 50 | |
| 51 | do_compile() { |
Andrew Geissler | 1110521 | 2021-02-12 15:30:38 -0600 | [diff] [blame] | 52 | echo "${@' '.join('${CMDLINE}'.split())}" > "${WORKDIR}/cmdline.txt" |
Andrew Geissler | 26e4bea | 2020-11-30 19:54:03 -0600 | [diff] [blame] | 53 | } |
| 54 | |
| 55 | do_deploy() { |
| 56 | install -d "${DEPLOYDIR}/${BOOTFILES_DIR_NAME}" |
| 57 | install -m 0644 "${WORKDIR}/cmdline.txt" "${DEPLOYDIR}/${BOOTFILES_DIR_NAME}" |
| 58 | } |
| 59 | |
| 60 | addtask deploy before do_build after do_install |
| 61 | do_deploy[dirs] += "${DEPLOYDIR}/${BOOTFILES_DIR_NAME}" |
Andrew Geissler | a4353c8 | 2021-06-25 14:23:27 -0500 | [diff] [blame] | 62 | |
| 63 | PACKAGE_ARCH = "${MACHINE_ARCH}" |