Skip to content

rpi4b: fix build and boot issues#9267

Merged
EvilOlaf merged 2 commits intoarmbian:mainfrom
EvilOlaf:rpi4b-kernel-config
Jan 18, 2026
Merged

rpi4b: fix build and boot issues#9267
EvilOlaf merged 2 commits intoarmbian:mainfrom
EvilOlaf:rpi4b-kernel-config

Conversation

@EvilOlaf
Copy link
Member

@EvilOlaf EvilOlaf commented Jan 18, 2026

Description

Follow-up of #9097

It was reported that legacy doesn't build and current doesn't boot. This should fix both.

kernel config rewrite pending to get back in sync

How Has This Been Tested?

  • build and boot current (6.18.4 atm)
  • build legacy

Checklist:

  • My code follows the style guidelines of this project
  • I have performed a self-review of my own code
  • I have commented my code, particularly in hard-to-understand areas
  • My changes generate no new warnings
  • Any dependent changes have been merged and published in downstream modules

Summary by CodeRabbit

  • New Features
    • Broader hardware support: many new display panels, codecs, audio subsystem drivers, sensors, RTCs and thermal drivers.
    • Expanded virtualization support: additional VirtIO and VMCI-related device options for virtual environments.
    • Improved CPU/architecture handling and errata mitigations for ARM64 platforms; higher CPU count support.
    • Enhanced networking, security and crypto primitives; expanded firewall/NF flow and NFS/auth integrations.
    • More I2C/SPI/GPIO/USB/PCI and power/regulator driver coverage for varied boards.

✏️ Tip: You can customize this high-level summary in your review settings.

@coderabbitai
Copy link
Contributor

coderabbitai bot commented Jan 18, 2026

📝 Walkthrough

Walkthrough

Updates to BCM2711 kernel configuration files adding many ARM64 erratum mitigations, expanded VirtIO/SCSI/VIRTIO_NET support, broader DRM/display and I2C/SPI/peripheral drivers, network/NF_TABLES changes, audio/thermal/RTC additions, and various power/regulator and crypto option expansions across current and legacy configs.

Changes

Cohort / File(s) Change Summary
Core kernel config
config/kernel/linux-bcm2711-current.config, config/kernel/linux-bcm2711-legacy.config
Large rework of kernel config entries: new ARM64 errata options, CONFIG_NR_CPUS=256, KPROBES enabled, many crypto primitives added, PROC_CHILDREN/CACHEFILES toggles.
VirtIO / Virtualization
config/kernel/linux-bcm2711-current.config, config/kernel/linux-bcm2711-legacy.config
Added/enabled VirtIO components: VIRTIO_VSOCKETS, VIRTIO_BALLOON, VIRTIO_INPUT, VIRTIO_NET, SCSI_VIRTIO, I2C_VIRTIO, and related modules; some VSOCKET variants replaced with VMCI in legacy.
Networking / Netfilter
config/kernel/linux-bcm2711-current.config, config/kernel/linux-bcm2711-legacy.config
NET_CLS_BPF mode change; NF_TABLES / NF_FLOW_TABLE entries expanded (PROCFS/INET/NETDEV), MPTCP and NETWORK_PHY_TIMESTAMPING added; various conntrack/table toggles adjusted.
Display / DRM / Panels
config/kernel/linux-bcm2711-current.config, config/kernel/linux-bcm2711-legacy.config
New DRM drivers and panel connectors (ICN6211, IT6505, LT8912B, LT9211, LT9611UXC, IT66121, TI DLPC3433, SN65DSI83, ANALOGIX_ANX7625), expanded VC4/RP1 DSI/DPIs and panel support.
I2C / SPI / GPIO / Sensors
config/kernel/linux-bcm2711-current.config, config/kernel/linux-bcm2711-legacy.config
Many I2C/SPI/GPIO drivers added (I2C_BCM*, SPI_BCM2835, I2C_CP2615, etc.), sensor/thermal/RTC drivers and IIO trigger entries expanded.
Audio / Sound
config/kernel/linux-bcm2711-legacy.config
Large ASoC and SND expansions: SND_BCM2835_SOC_I2S, many SND_SOC_* drivers, audio graph/card samples and codecs.
Power / Regulators / Platform
config/kernel/linux-bcm2711-current.config, config/kernel/linux-bcm2711-legacy.config
Added RP1/Raspberry Pi power and regulator options, RASPBERRYPI_POWER, ARM_RASPBERRYPI_CPUFREQ, NUMA, CHECKPOINT_RESTORE, PSI_DEFAULT_DISABLED, and COMMON_CLK_RP1_SDIO adjustments.

Estimated code review effort

🎯 4 (Complex) | ⏱️ ~45 minutes

Possibly related PRs

Suggested labels

BSP

Suggested reviewers

  • PanderMusubi
  • teknoid
  • igorpecovnik
  • rpardini

Poem

🐰
I hopped through configs, line by line,
Errata, VirtIO, displays that shine,
I2C, sound, and power too,
BCM2711 — fresh and new,
A tiny rabbit cheers — code fine! 🥕✨

🚥 Pre-merge checks | ✅ 3
✅ Passed checks (3 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title accurately summarizes the main purpose of the PR: fixing build and boot issues for RPi4B kernel configurations.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.


Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@github-actions github-actions bot added size/large PR with 250 lines or more 02 Milestone: First quarter release Needs review Seeking for review Hardware Hardware related like kernel, U-Boot, ... labels Jan 18, 2026
Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🤖 Fix all issues with AI agents
In `@config/kernel/linux-bcm2711-legacy.config`:
- Around line 469-471: Add the missing CONFIG_VIRTIO_VSOCKETS option to the
legacy bcm2711 kernel config so vsockets have the virtio transport;
specifically, insert CONFIG_VIRTIO_VSOCKETS=m alongside the existing
CONFIG_VSOCKETS=m / CONFIG_VMWARE_VMCI_VSOCKETS=m / CONFIG_NETLINK_DIAG=m block
(and apply the same insertion at the other occurrence later in the file) so both
vsocket sections include the virtio transport option.
🧹 Nitpick comments (2)
config/kernel/linux-bcm2711-current.config (1)

553-553: RP1/BCM2712 options are included from Raspberry Pi's upstream kernel—verify whether to keep them aligned with upstream or trim for Pi 4 only.

The kernel config includes RP1/BCM2712-specific options (CONFIG_MISC_RP1=y, CONFIG_PINCTRL_BCM2712=y, CONFIG_SENSORS_RP1_ADC=m, CONFIG_MFD_RP1=y, CONFIG_VIDEO_RP1_CFE=m, CONFIG_DRM_RP1_DSI=m, CONFIG_DRM_RP1_DPI=m, CONFIG_DRM_RP1_VEC=m, CONFIG_COMMON_CLK_RP1_SDIO=m, CONFIG_BCM2712_IOMMU=y, CONFIG_PWM_RP1=m, CONFIG_BCM2712_MIP=y). These are sourced from Raspberry Pi's official kernel branches (rpi-6.18.y for current), which support multiple board versions in a single kernel. Since Armbian currently supports only Pi 4, these options compile unused code. However, keeping them aligns with Raspberry Pi's upstream approach. Consider whether the maintenance benefit of staying synchronized with upstream outweighs the code bloat.

config/kernel/linux-bcm2711-legacy.config (1)

2419-2438: Confirm debug-heavy options are intended for release configs.

BOOT_PRINTK_DELAY, KGDB/KDB, LATENCYTOP, DETECT_HUNG_TASK, and relaxed STRICT_DEVMEM can impact boot time and security posture. If these were only for diagnosing boot issues, consider moving them to a debug flavor.

Copy link
Member

@igorpecovnik igorpecovnik left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

perhaps also fix that Rabbit's suggestion for legacy?

@github-actions github-actions bot added the Ready to merge Reviewed, tested and ready for merge label Jan 18, 2026
@github-actions
Copy link
Contributor

✅ This PR has been reviewed and approved — all set for merge!

@github-actions github-actions bot removed the Needs review Seeking for review label Jan 18, 2026
@github-actions github-actions bot added Needs review Seeking for review and removed Ready to merge Reviewed, tested and ready for merge labels Jan 18, 2026
@EvilOlaf EvilOlaf merged commit 6245807 into armbian:main Jan 18, 2026
1 check passed
@EvilOlaf EvilOlaf deleted the rpi4b-kernel-config branch January 18, 2026 11:42
yury-deltsov pushed a commit to yury-deltsov/build that referenced this pull request Feb 8, 2026
* rpi4b: rename kernel configs

* rewrite kernel configs
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

02 Milestone: First quarter release Hardware Hardware related like kernel, U-Boot, ... Needs review Seeking for review size/large PR with 250 lines or more