blob: bf0d430ff929808b5b9b8308db383137037b38b4 [file] [log] [blame]
Patrick Williams864cc432023-02-09 14:54:44 -06001SUMMARY = "Installation scripts and binaries for the Raspberry Pi 4 EEPROM"
2DESCRIPTION = "This repository contains the rpi4 bootloader and scripts \
3for updating it in the spi eeprom"
4LICENSE = "BSD-3-Clause & Broadcom-RPi"
5LIC_FILES_CHKSUM = "file://LICENSE;md5=f546ed4f47e9d4c1fe954ecc9d3ef4f3"
6
7SRC_URI = " \
8 git://github.com/raspberrypi/rpi-eeprom.git;protocol=https;branch=master \
9 file://0001-Fix-rpi-eeprom-update-when-using-busybox-find.patch \
10"
11
12SRCREV = "6e79e995bbc75c5fdd5305bd7fe029758cfade2f"
13PV = "v2022.12.07-138a1"
14
15S = "${WORKDIR}/git"
16
17RDEPENDS:${PN} += " \
18 coreutils \
19 python3 \
20 python3-pycryptodomex \
21 openssl \
22 xxd \
23 pciutils \
24"
25
26inherit python3native
27
28do_install() {
29 install -d ${D}${bindir}
30
31 # install executables
32 install -m 0755 ${S}/tools/vl805 ${D}${bindir}
33 install -m 0755 ${S}/rpi-eeprom-update ${D}${bindir}
34 install -m 0755 ${S}/rpi-eeprom-config ${D}${bindir}
35 install -m 0755 ${S}/rpi-eeprom-digest ${D}${bindir}
36
37 # copy firmware files
38 install -d ${D}${base_libdir}/firmware/raspberrypi/bootloader/critical
39 install -d ${D}${base_libdir}/firmware/raspberrypi/bootloader/stable
40 install -d ${D}${base_libdir}/firmware/raspberrypi/bootloader/beta
41
42 install -m 644 ${S}/firmware/critical/* ${D}${base_libdir}/firmware/raspberrypi/bootloader/critical
43 install -m 644 ${S}/firmware/stable/* ${D}${base_libdir}/firmware/raspberrypi/bootloader/stable
44 install -m 644 ${S}/firmware/beta/* ${D}${base_libdir}/firmware/raspberrypi/bootloader/beta
45
46 ln -s critical ${D}${base_libdir}/firmware/raspberrypi/bootloader/default
47 ln -s stable ${D}${base_libdir}/firmware/raspberrypi/bootloader/latest
48
49 # copy default config
50 install -d ${D}${sysconfdir}/default
51 install -D ${S}/rpi-eeprom-update-default ${D}${sysconfdir}/default/rpi-eeprom-update
52}
53
54FILES:${PN} += "${base_libdir}/firmware/raspberrypi/bootloader/*"
55
56INHIBIT_PACKAGE_STRIP = "1"
57INHIBIT_PACKAGE_DEBUG_SPLIT = "1"
58
59# vl805 tool sources are not available (yet), as it comes as a precompiled
60# binary only. It has ARM architecture whereas target machine is Aarch64. We
61# need to disable arch check for it otherwise it cannot packed.
62QAPATHTEST[arch] = ""
63
64COMPATIBLE_MACHINE = "raspberrypi4|raspberrypi4-64"