diff --git a/configs/pi/1/resources/rpi/cmdline.txt b/configs/pi/1/resources/rpi/cmdline.txt new file mode 100644 index 000000000..f5f176193 --- /dev/null +++ b/configs/pi/1/resources/rpi/cmdline.txt @@ -0,0 +1 @@ +console=tty1 console=serial0,115200 root=/dev/ram0 ro net.ifnames=0 dwc_otg.lpm_enable=0 cgroup_enable=cpuset cgroup_enable=memory diff --git a/configs/pi/1/resources/rpi/config.txt b/configs/pi/1/resources/rpi/config.txt new file mode 100644 index 000000000..41d178fe2 --- /dev/null +++ b/configs/pi/1/resources/rpi/config.txt @@ -0,0 +1,55 @@ +# For more options and information see +# http://rpf.io/configtxt +# Some settings may impact device functionality. + +# This is the default Skiff config.txt. +# You should customize it to your own needs. +# Create a Skiff config, and copy this file to: +# my/config/resources/rpi/config.txt + +kernel=zImage +initramfs rootfs.cpio.lz4 + +start_file=start_x.elf +fixup_file=fixup_x.dat + +# fixes rpi (3B, 3B+, 3A+, 4B ,zero W and zero 2) ttyAMA0 serial console +dtoverlay=miniuart-bt + +# enable autoprobing of Bluetooth driver without need of hciattach/btattach +dtoverlay=krnbt=on + +# GPU memory +gpu_mem_256=100 +gpu_mem_512=100 +gpu_mem_1024=100 + +# Disable overscan assuming the display supports displaying the full resolution +# If the text shown on the screen disappears off the edge, comment this out +disable_overscan=1 + +# Enable GPIO features +# dtparam=i2c_arm=on +# dtparam=spi=on +# dtparam=i2s=on + +# Audio card +dtparam=audio=on +# dtoverlay=hifiberry-dac +# dtoverlay=hifiberry-dacplus +# dtoverlay=hifiberry-digi +# dtoverlay=iqaudio-dac +# dtoverlay=iqaudio-dacplus + +# Heartbeat LED +# dtparam=act_led_trigger=heartbeat + +# Allow the board to draw additional voltage. +# Note: this sets a permanent overclock canary bit on the Pi. +# over_voltage=4 + +# Forces the CPU to run at maximum clock speed (expect heat) +# force_turbo=1 + +# Forces CPU to run in turbo for initial seconds +# initial_turbo=45 diff --git a/configs/pi/2/resources/rpi/cmdline.txt b/configs/pi/2/resources/rpi/cmdline.txt new file mode 100644 index 000000000..f5f176193 --- /dev/null +++ b/configs/pi/2/resources/rpi/cmdline.txt @@ -0,0 +1 @@ +console=tty1 console=serial0,115200 root=/dev/ram0 ro net.ifnames=0 dwc_otg.lpm_enable=0 cgroup_enable=cpuset cgroup_enable=memory diff --git a/configs/pi/2/resources/rpi/config.txt b/configs/pi/2/resources/rpi/config.txt new file mode 100644 index 000000000..41d178fe2 --- /dev/null +++ b/configs/pi/2/resources/rpi/config.txt @@ -0,0 +1,55 @@ +# For more options and information see +# http://rpf.io/configtxt +# Some settings may impact device functionality. + +# This is the default Skiff config.txt. +# You should customize it to your own needs. +# Create a Skiff config, and copy this file to: +# my/config/resources/rpi/config.txt + +kernel=zImage +initramfs rootfs.cpio.lz4 + +start_file=start_x.elf +fixup_file=fixup_x.dat + +# fixes rpi (3B, 3B+, 3A+, 4B ,zero W and zero 2) ttyAMA0 serial console +dtoverlay=miniuart-bt + +# enable autoprobing of Bluetooth driver without need of hciattach/btattach +dtoverlay=krnbt=on + +# GPU memory +gpu_mem_256=100 +gpu_mem_512=100 +gpu_mem_1024=100 + +# Disable overscan assuming the display supports displaying the full resolution +# If the text shown on the screen disappears off the edge, comment this out +disable_overscan=1 + +# Enable GPIO features +# dtparam=i2c_arm=on +# dtparam=spi=on +# dtparam=i2s=on + +# Audio card +dtparam=audio=on +# dtoverlay=hifiberry-dac +# dtoverlay=hifiberry-dacplus +# dtoverlay=hifiberry-digi +# dtoverlay=iqaudio-dac +# dtoverlay=iqaudio-dacplus + +# Heartbeat LED +# dtparam=act_led_trigger=heartbeat + +# Allow the board to draw additional voltage. +# Note: this sets a permanent overclock canary bit on the Pi. +# over_voltage=4 + +# Forces the CPU to run at maximum clock speed (expect heat) +# force_turbo=1 + +# Forces CPU to run in turbo for initial seconds +# initial_turbo=45 diff --git a/configs/pi/3/resources/rpi/cmdline.txt b/configs/pi/3/resources/rpi/cmdline.txt new file mode 100644 index 000000000..f5f176193 --- /dev/null +++ b/configs/pi/3/resources/rpi/cmdline.txt @@ -0,0 +1 @@ +console=tty1 console=serial0,115200 root=/dev/ram0 ro net.ifnames=0 dwc_otg.lpm_enable=0 cgroup_enable=cpuset cgroup_enable=memory diff --git a/configs/pi/3/resources/rpi/config.txt b/configs/pi/3/resources/rpi/config.txt new file mode 100644 index 000000000..41d178fe2 --- /dev/null +++ b/configs/pi/3/resources/rpi/config.txt @@ -0,0 +1,55 @@ +# For more options and information see +# http://rpf.io/configtxt +# Some settings may impact device functionality. + +# This is the default Skiff config.txt. +# You should customize it to your own needs. +# Create a Skiff config, and copy this file to: +# my/config/resources/rpi/config.txt + +kernel=zImage +initramfs rootfs.cpio.lz4 + +start_file=start_x.elf +fixup_file=fixup_x.dat + +# fixes rpi (3B, 3B+, 3A+, 4B ,zero W and zero 2) ttyAMA0 serial console +dtoverlay=miniuart-bt + +# enable autoprobing of Bluetooth driver without need of hciattach/btattach +dtoverlay=krnbt=on + +# GPU memory +gpu_mem_256=100 +gpu_mem_512=100 +gpu_mem_1024=100 + +# Disable overscan assuming the display supports displaying the full resolution +# If the text shown on the screen disappears off the edge, comment this out +disable_overscan=1 + +# Enable GPIO features +# dtparam=i2c_arm=on +# dtparam=spi=on +# dtparam=i2s=on + +# Audio card +dtparam=audio=on +# dtoverlay=hifiberry-dac +# dtoverlay=hifiberry-dacplus +# dtoverlay=hifiberry-digi +# dtoverlay=iqaudio-dac +# dtoverlay=iqaudio-dacplus + +# Heartbeat LED +# dtparam=act_led_trigger=heartbeat + +# Allow the board to draw additional voltage. +# Note: this sets a permanent overclock canary bit on the Pi. +# over_voltage=4 + +# Forces the CPU to run at maximum clock speed (expect heat) +# force_turbo=1 + +# Forces CPU to run in turbo for initial seconds +# initial_turbo=45 diff --git a/configs/pi/4x32/buildroot/firmware b/configs/pi/4x32/buildroot/firmware deleted file mode 100644 index cec223375..000000000 --- a/configs/pi/4x32/buildroot/firmware +++ /dev/null @@ -1,3 +0,0 @@ -BR2_PACKAGE_RPI_FIRMWARE=y -BR2_PACKAGE_RPI_FIRMWARE_VARIANT_PI4=y - diff --git a/configs/pi/4x32/buildroot/kernel b/configs/pi/4x32/buildroot/kernel index 58ae4b4d3..5f5d3f4cf 100644 --- a/configs/pi/4x32/buildroot/kernel +++ b/configs/pi/4x32/buildroot/kernel @@ -1,4 +1,4 @@ +BR2_LINUX_KERNEL_USE_DEFCONFIG=y BR2_LINUX_KERNEL_DEFCONFIG="bcm2711" BR2_LINUX_KERNEL_DTS_SUPPORT=y -BR2_LINUX_KERNEL_INTREE_DTS_NAME="bcm2711-rpi-4-b" - +BR2_LINUX_KERNEL_INTREE_DTS_NAME="broadcom/bcm2711-rpi-4-b broadcom/bcm2711-rpi-400 broadcom/bcm2711-rpi-cm4 broadcom/bcm2711-rpi-cm4s broadcom/bcm2712-rpi-5-b" diff --git a/configs/pi/4x64/resources/rpi/config.txt b/configs/pi/4x32/resources/rpi/config.txt similarity index 94% rename from configs/pi/4x64/resources/rpi/config.txt rename to configs/pi/4x32/resources/rpi/config.txt index 806737556..a1f21d391 100644 --- a/configs/pi/4x64/resources/rpi/config.txt +++ b/configs/pi/4x32/resources/rpi/config.txt @@ -7,12 +7,9 @@ # Create a Skiff config, and copy this file to: # my/config/resources/rpi/config.txt -kernel=Image +kernel=zImage initramfs rootfs.cpio.lz4 -# enable 64bits support -arm_64bit=1 - # fixes rpi (3B, 3B+, 3A+, 4B and Zero W) ttyAMA0 serial console dtoverlay=miniuart-bt @@ -69,8 +66,6 @@ hdmi_force_hotplug=1 # [hdmi:1] # hdmi_max_pixel_freq=200000000 -# Settings specific to Raspberry Pi 4. -[pi4] # This is the modern kernel modesetting driver. dtoverlay=vc4-kms-v3d max_framebuffers=2 diff --git a/configs/pi/4x64/buildroot/firmware b/configs/pi/4x64/buildroot/firmware deleted file mode 100644 index a0a1cd75f..000000000 --- a/configs/pi/4x64/buildroot/firmware +++ /dev/null @@ -1,13 +0,0 @@ -BR2_PACKAGE_RPI_FIRMWARE=y -BR2_PACKAGE_RPI_FIRMWARE_VARIANT_PI4=y - -# TF-A for Raspberry Pi 4 -# Requires additional settings in config.txt: -# armstub=bl31.bin -# enable_uart=1 -# enable_gic=1 -# BR2_TARGET_ARM_TRUSTED_FIRMWARE=y -# BR2_TARGET_ARM_TRUSTED_FIRMWARE_PLATFORM="rpi4" -# BR2_TARGET_ARM_TRUSTED_FIRMWARE_BL31=y -# BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_VERSION=y -# BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_VERSION_VALUE="v2.6" diff --git a/configs/pi/4x64/buildroot/ged b/configs/pi/4x64/buildroot/ged deleted file mode 100644 index b55d084d4..000000000 --- a/configs/pi/4x64/buildroot/ged +++ /dev/null @@ -1,4 +0,0 @@ -# Use rngd instead of haveged. -BR2_PACKAGE_HAVEGED=n -BR2_PACKAGE_RNG_TOOLS=y - diff --git a/configs/pi/4x64/buildroot/kernel b/configs/pi/4x64/buildroot/kernel index 01461412f..5f5d3f4cf 100644 --- a/configs/pi/4x64/buildroot/kernel +++ b/configs/pi/4x64/buildroot/kernel @@ -1,4 +1,4 @@ BR2_LINUX_KERNEL_USE_DEFCONFIG=y BR2_LINUX_KERNEL_DEFCONFIG="bcm2711" BR2_LINUX_KERNEL_DTS_SUPPORT=y -BR2_LINUX_KERNEL_INTREE_DTS_NAME="broadcom/bcm2711-rpi-4-b broadcom/bcm2711-rpi-400 broadcom/bcm2711-rpi-cm4" +BR2_LINUX_KERNEL_INTREE_DTS_NAME="broadcom/bcm2711-rpi-4-b broadcom/bcm2711-rpi-400 broadcom/bcm2711-rpi-cm4 broadcom/bcm2711-rpi-cm4s broadcom/bcm2712-rpi-5-b" diff --git a/configs/pi/4x64/resources/rpi/cmdline.txt b/configs/pi/4x64/resources/rpi/cmdline.txt deleted file mode 100644 index 982afb5fe..000000000 --- a/configs/pi/4x64/resources/rpi/cmdline.txt +++ /dev/null @@ -1 +0,0 @@ -console=tty1 console=ttyAMA0,115200 root=/dev/ram0 ro net.ifnames=0 dwc_otg.lpm_enable=0 cgroup_enable=cpuset cgroup_enable=memory usbhid.mousepoll=0 consoleblank=0 cma=384M diff --git a/configs/pi/README.md b/configs/pi/README.md index 2517f0d17..d210911d0 100644 --- a/configs/pi/README.md +++ b/configs/pi/README.md @@ -122,7 +122,9 @@ force_turbo=1 max_usb_current=1 ``` -## Config.txt Conditional Sections +## Config.txt + +Upstream docs: https://www.raspberrypi.com/documentation/computers/config_txt.html The config.txt file supports conditional sections: @@ -131,5 +133,6 @@ The config.txt file supports conditional sections: - `[pi3]`: Model 3B, Model 3B+, Model 3A+, Compute Module 3 - `[pi3+]`: Model 3A+, Model 3B+ - `[pi4]`: Model 4B +- `[pi5]`: Model 5 - `[pi0]`: Zero, Zero W, Zero WH - `[pi0w]`: Zero W, Zero WH diff --git a/configs/pi/common/buildroot/firmware b/configs/pi/common/buildroot/firmware index 12a98a771..5f77cd20c 100644 --- a/configs/pi/common/buildroot/firmware +++ b/configs/pi/common/buildroot/firmware @@ -6,9 +6,20 @@ BR2_PACKAGE_RPI_FIRMWARE=y BR2_PACKAGE_RPI_FIRMWARE_X=y BR2_PACKAGE_RPI_FIRMWARE_INSTALL_DTB_OVERLAYS=y +# BR2_PACKAGE_RPI_FIRMWARE_VARIANT_PI4 is not set +BR2_PACKAGE_RPI_FIRMWARE_VARIANT_PI4_X=y + BR2_PACKAGE_BRCMFMAC_SDIO_FIRMWARE_RPI=y BR2_PACKAGE_BRCMFMAC_SDIO_FIRMWARE_RPI_BT=y BR2_PACKAGE_BRCMFMAC_SDIO_FIRMWARE_RPI_WIFI=y -# BR2_PACKAGE_RPI_FIRMWARE_VARIANT_PI4 is not set -BR2_PACKAGE_RPI_FIRMWARE_VARIANT_PI4_X=y +# TF-A for Raspberry Pi 4 +# Requires additional settings in config.txt: +# armstub=bl31.bin +# enable_uart=1 +# enable_gic=1 +# BR2_TARGET_ARM_TRUSTED_FIRMWARE=y +# BR2_TARGET_ARM_TRUSTED_FIRMWARE_PLATFORM="rpi4" +# BR2_TARGET_ARM_TRUSTED_FIRMWARE_BL31=y +# BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_VERSION=y +# BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_VERSION_VALUE="v2.6" \ No newline at end of file diff --git a/configs/pi/common/buildroot/ged b/configs/pi/common/buildroot/ged new file mode 100644 index 000000000..a3689efab --- /dev/null +++ b/configs/pi/common/buildroot/ged @@ -0,0 +1,3 @@ +# Use rngd instead of haveged. +# BR2_PACKAGE_HAVEGED is not set +BR2_PACKAGE_RNG_TOOLS=y \ No newline at end of file diff --git a/configs/pi/common/buildroot/kernel b/configs/pi/common/buildroot/kernel index 0b530cd81..9827b28a9 100644 --- a/configs/pi/common/buildroot/kernel +++ b/configs/pi/common/buildroot/kernel @@ -1,11 +1,11 @@ BR2_LINUX_KERNEL_CUSTOM_TARBALL=y # rpi-6.1.y -# BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,raspberrypi,linux,3d9d7e7b2aa312f79f8034a9d42b7e7ccb92c54b)/linux-rpi-6.1.66-r1.tar.gz" +# BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,raspberrypi,linux,77fc1fbcb5c013329af9583307dd1ff3cd4752aa)/linux-rpi-6.1.77-r1.tar.gz" # BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_6_1=y # rpi-6.1.y -BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,raspberrypi,linux,77fc1fbcb5c013329af9583307dd1ff3cd4752aa)/linux-rpi-6.1.77-r1.tar.gz" +BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,raspberrypi,linux,afd5f659b0453e4c710ce5cf74c577563ff16239)/linux-rpi-6.1.77-r2.tar.gz" BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_6_1=y BR2_KERNEL_HEADERS_AS_KERNEL=y diff --git a/configs/pi/common/resources/rpi/cmdline.txt b/configs/pi/common/resources/rpi/cmdline.txt index f5f176193..982afb5fe 100644 --- a/configs/pi/common/resources/rpi/cmdline.txt +++ b/configs/pi/common/resources/rpi/cmdline.txt @@ -1 +1 @@ -console=tty1 console=serial0,115200 root=/dev/ram0 ro net.ifnames=0 dwc_otg.lpm_enable=0 cgroup_enable=cpuset cgroup_enable=memory +console=tty1 console=ttyAMA0,115200 root=/dev/ram0 ro net.ifnames=0 dwc_otg.lpm_enable=0 cgroup_enable=cpuset cgroup_enable=memory usbhid.mousepoll=0 consoleblank=0 cma=384M diff --git a/configs/pi/common/resources/rpi/config.txt b/configs/pi/common/resources/rpi/config.txt index 41d178fe2..a6a49e1cd 100644 --- a/configs/pi/common/resources/rpi/config.txt +++ b/configs/pi/common/resources/rpi/config.txt @@ -7,29 +7,24 @@ # Create a Skiff config, and copy this file to: # my/config/resources/rpi/config.txt -kernel=zImage +kernel=Image initramfs rootfs.cpio.lz4 -start_file=start_x.elf -fixup_file=fixup_x.dat +# enable 64bits support +arm_64bit=1 -# fixes rpi (3B, 3B+, 3A+, 4B ,zero W and zero 2) ttyAMA0 serial console +# fixes rpi (3B, 3B+, 3A+, 4B and Zero W) ttyAMA0 serial console dtoverlay=miniuart-bt # enable autoprobing of Bluetooth driver without need of hciattach/btattach dtoverlay=krnbt=on -# GPU memory -gpu_mem_256=100 -gpu_mem_512=100 -gpu_mem_1024=100 - -# Disable overscan assuming the display supports displaying the full resolution -# If the text shown on the screen disappears off the edge, comment this out -disable_overscan=1 +# Avoid pi safe mode +avoid_safe_mode=1 # Enable GPIO features # dtparam=i2c_arm=on +# dtparam=i2c1=on # dtparam=spi=on # dtparam=i2s=on @@ -53,3 +48,27 @@ dtparam=audio=on # Forces CPU to run in turbo for initial seconds # initial_turbo=45 + +# GPU memory split +# gpu_mem_256=128 +# gpu_mem_512=256 +# gpu_mem_1024=512 + +# Disable overscan assuming the display supports displaying the full resolution +# If the text shown on the screen disappears off the edge, comment this out +disable_overscan=1 + +# Force hdmi hotplug +hdmi_force_hotplug=1 + +# Uncomment to force HD and prevent 4k memory drain +# hdmi_group=1 +# hdmi_mode=16 +# [hdmi:0] +# hdmi_max_pixel_freq=200000000 +# [hdmi:1] +# hdmi_max_pixel_freq=200000000 + +# This is the modern kernel modesetting driver. +dtoverlay=vc4-kms-v3d +max_framebuffers=2