%global debug_package %{nil} %global commit 176c6b3844ad24988623535e40370004e474fe87 %global rel 2 %global tarversion %{?commit:%{commit}}%{!?commit:%{version}} Name: raspberrypi-firmware Version: 1.20230405 Release: %mkrel %rel%{?commit:.%commit} Summary: Non-free firmware of raspberry pi ExclusiveArch: armv7hl aarch64 # BuildArch: noarch # For a full list of valid (and invalid) licenses, see /usr/share/rpmlint/TagsCheck.py # License: Distributable License: Proprietary # For other groups, see /usr/share/rpmlint/config.d/distribution.exceptions.conf Group: System/Kernel and hardware URL: https://github.com/raspberrypi/firmware Source0: https://github.com/raspberrypi/firmware/archive/%{tarversion}.tar.gz %description This repository contains pre-compiled binaries of the current Raspberry Pi kernel and modules, userspace libraries, and bootloader/GPU firmware. This package contains blob binaries to boot raspberry pi 2, 3 and 4. %{name}. %prep %setup -q -n firmware-%{tarversion} %build cat <<EOT >./config.txt # Get more options/information on https://elinux.org/RPiconfig # or on https://www.raspberrypi.org/documentation/configuration/config-txt.md # # !!!!! This file will get overwritten by updates. Please use !!!!! # !!!!! extraconfig.txt if you want to set additional !!!!! # !!!!! configuration options or add dt overlays. !!!!! # Our kernels are located on a Linux partition. Chainload U-Boot to load them. kernel=u-boot.bin # Use 32 MB for GPU for all RPis (Min 16 - Max 192 MB) # We don't need that much memory reserved for it, because we drive most hardware # from Linux, not the VPU OS gpu_mem=32 # Turbo mode: 0 = enable dynamic freq/voltage - 1 = always max force_turbo=0 # Start in turbo mode for 30 seconds or until cpufreq sets a frequency initial_turbo=30 # DO NOT overvoltage manually to not void warranty! over_voltage=0 # Fix mini UART input frequency, and setup/enable up the UART. enable_uart=1 # Disable warning overlays as they don't work well together with linux's graphical output avoid_warnings=1 # This overlay fixes divergences between the RPi device tree and what # upstream provides dtoverlay=upstream # overscan is only needed on old TV sets and if analog gear is in the chain (e.g. DPI) disable_overscan=1 # u-boot expects RPi's UART to have a compatible string not supported anymore in # linux upstream, while this is fixed, make sure the name shows up in the # device-tree. This is only needed for RPi, RPi2 and RPi0, but applied # generally so as to avoid complexity. dtoverlay=uboot-bcm2835-pl011 [pi1] #!!! armv5 and armv6 is not supported by Mageia. # # Max ARM freq (default 700 MHz) # arm_freq=840 # # # Max core (GPU) freq (default 250 MHz) # core_freq=375 # # # SDRAM freq (default 400) # sdram_freq=400 [pi2] # Prevent bootcode.bin changing UART baudrate between loading u-boot and executing u-boot. # gpu_freq=250 [pi3] # These are not applied automatically? Needed to use respective upstream drivers. dtoverlay=vc4-kms-v3d,cma-default dtoverlay=dwc2 [pi4] dtoverlay=disable-vc4 [all] # Allow u-boot to set arm_control include ubootconfig.txt # Allow user overrides of config options include extraconfig.txt EOT cat <<EOT >./ubootconfig.txt # Boot in AArch64 mode arm_64bit=1 EOT %install install -d %{buildroot}/boot/overlays # install -d %%{buildroot}${_usrsrc}/${name} # install -d %%{buildroot}${_libdir}/${name} install -d %{buildroot}%{_datadir}/%{name}/extra install -D -m 644 extra/dt-blob.dts %{buildroot}%{_datadir}/%{name}/extra/ install -D -m 644 boot/*.bin %{buildroot}/boot/ install -D -m 644 boot/*.dat %{buildroot}/boot/ install -D -m 644 boot/*.dtb %{buildroot}/boot/ install -D -m 644 boot/*.elf %{buildroot}/boot/ install -D -m 644 boot/overlays/* %{buildroot}/boot/overlays install -D -m 644 ./config.txt %{buildroot}/boot/ install -D -m 644 ./ubootconfig.txt %{buildroot}/boot/ # For files, be the more explicit %files %license boot/LICENCE.broadcom boot/COPYING.linux %doc documentation/* #First blob not used by rpi4 /boot/bootcode.bin /boot/config.txt /boot/ubootconfig.txt # #Normal blob /boot/fixup.dat /boot/fixup4.dat /boot/start.elf /boot/start4.elf # #Debug (implicitly used with start_debug=1) /boot/fixup_db.dat /boot/fixup4db.dat /boot/start4db.elf /boot/start_db.elf # #Low GPU Memory (=16MB) /boot/fixup_cd.dat /boot/fixup4cd.dat /boot/start4cd.elf /boot/start_cd.elf # #Testing versions (eXtra features) (like camera module) (implicitly used with start_x=1 ) : /boot/fixup_x.dat /boot/fixup4x.dat /boot/start4x.elf /boot/start_x.elf %dir %{_datadir}/%{name} %dir %{_datadir}/%{name}/extra %{_datadir}/%{name}/extra/dt-blob.dts /boot/bcm2708-rpi-b.dtb /boot/bcm2708-rpi-b-plus.dtb /boot/bcm2708-rpi-b-rev1.dtb /boot/bcm2708-rpi-cm.dtb /boot/bcm2708-rpi-zero.dtb /boot/bcm2708-rpi-zero-w.dtb /boot/bcm2709-rpi-2-b.dtb /boot/bcm2709-rpi-cm2.dtb /boot/bcm2710-rpi-2-b.dtb /boot/bcm2710-rpi-3-b.dtb /boot/bcm2710-rpi-3-b-plus.dtb /boot/bcm2710-rpi-cm3.dtb /boot/bcm2710-rpi-zero-2.dtb /boot/bcm2710-rpi-zero-2-w.dtb /boot/bcm2711-rpi-400.dtb /boot/bcm2711-rpi-4-b.dtb /boot/bcm2711-rpi-cm4.dtb /boot/bcm2711-rpi-cm4-io.dtb /boot/bcm2711-rpi-cm4s.dtb /boot/bcm2712-rpi-5-b.dtb /boot/overlays/* %changelog * Sun Dec 17 2023 pterjan <pterjan> 1.20230405-2.176c6b3844ad24988623535e40370004e474fe87.mga10 + Revision: 2018617 - Update to git snapshot to get support for Rpi 5 * Sun Aug 06 2023 tmb <tmb> 1.20230405-1.mga9.nonfree + Revision: 1964471 - update to 1.20230405 (mga#32159) * Wed Mar 29 2023 daviddavid <daviddavid> 1.20210108-2.mga9.nonfree + Revision: 1950696 - Mageia 9 Mass Rebuild * Sun Jan 31 2021 neoclust <neoclust> 1.20210108-1.mga8.nonfree + Revision: 1674256 - imported package raspberrypi-firmware