sunxi: refactor full patchset#9219
Conversation
📝 WalkthroughWalkthroughThis PR updates Armbian's sunxi kernel (6.18) patches with extensive device tree modifications for multiple SoC families. Changes include adding EMAC1 Ethernet support with RMII configuration, enabling audio codecs, USB3, HDMI/display outputs, SPI/I2S/UART pin definitions, power regulators, and thermal zone improvements across sun4i, sun7i, sun8i, and sun50i platforms, alongside a complete patch series reorganization. Changes
Estimated code review effort🎯 4 (Complex) | ⏱️ ~60 minutes Possibly related PRs
Suggested reviewers
🚥 Pre-merge checks | ✅ 3✅ Passed checks (3 passed)
✏️ 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. Comment |
|
okay, now we know the majority of patches don't depend on others which is good. Those who actually have dependencies have been "chained" together by numeric prefix. I think that's a good base as it is for going further with stuff like abandoning series.conf or trying to unchain dependencies once and for all. |
|
@coderabbitai review |
✅ Actions performedReview triggered.
|
There was a problem hiding this comment.
Actionable comments posted: 0
Caution
Some comments are outside the diff and can’t be posted inline due to platform limitations.
⚠️ Outside diff range comments (5)
patch/kernel/archive/sunxi-6.18/patches.armbian/arm64-dts-sun50i-h616-add-i2c-uart-pinctrl.patch (1)
109-112: UART function properties contain copy-paste errors.Lines 109-112, 115-118, 121-124, and 127-130 reference incorrect
functionproperties. The pinctrl nodes foruart3,uart4all incorrectly specifyfunction = "uart2"instead of matching their respective UART interfaces.🐛 Proposed fix for UART function property corrections
- /omit-if-no-ref/ - uart3_pi_pins: uart3-pi-pins { - pins = "PI9", "PI10"; - function = "uart2"; - }; - - /omit-if-no-ref/ - uart3_pi_rts_cts_pins: uart3-pi-rts-cts-pins { - pins = "PI11", "PI12"; - function = "uart2"; - }; - - /omit-if-no-ref/ - uart4_pi_pins: uart4-pi-pins { - pins = "PI13", "PI14"; - function = "uart2"; - }; - - /omit-if-no-ref/ - uart4_pi_rts_cts_pins: uart4-pi-rts-cts-pins { - pins = "PI15", "PI16"; - function = "uart2"; + /omit-if-no-ref/ + uart3_pi_pins: uart3-pi-pins { + pins = "PI9", "PI10"; + function = "uart3"; + }; + + /omit-if-no-ref/ + uart3_pi_rts_cts_pins: uart3-pi-rts-cts-pins { + pins = "PI11", "PI12"; + function = "uart3"; + }; + + /omit-if-no-ref/ + uart4_pi_pins: uart4-pi-pins { + pins = "PI13", "PI14"; + function = "uart4"; + }; + + /omit-if-no-ref/ + uart4_pi_rts_cts_pins: uart4-pi-rts-cts-pins { + pins = "PI15", "PI16"; + function = "uart4"; };Also applies to: 115-118, 121-124, 127-130
patch/kernel/archive/sunxi-6.18/patches.armbian/drv-spidev-add-armbian-spi-dev-compatible.patch (1)
40-40: Device Tree reference in ACPI-specific function is misleading.Line 40 adds a dev_info message mentioning "DT" (Device Tree) inside
spidev_acpi_check(), which is specifically for ACPI-based device probing. ACPI and Device Tree are mutually exclusive firmware interfaces used on different platforms. This message could confuse users on ACPI systems since the DT guidance doesn't apply there.Suggested fix
Either remove the line or adjust it to be ACPI-specific:
- dev_info(dev, "Use a compatible alias string like spi-dev in DT\n");Or if guidance is needed for ACPI context:
- dev_info(dev, "Use a compatible alias string like spi-dev in DT\n"); + dev_info(dev, "Use proper ACPI device identifiers in production\n");patch/kernel/archive/sunxi-6.18/patches.armbian/arm64-dts-sun50i-h5-orangepi-prime-add-regulator.patch (1)
14-18: Remove the unnecessary pinctrl include.The added
#include <dt-bindings/pinctrl/sun4i-a10.h>is unused in this patch. The changes only involve regulator definitions and CPU supply references, which do not require pinctrl constants. This appears to be a copy-paste artifact that persists across kernel versions.patch/kernel/archive/sunxi-6.18/patches.armbian/arm64-dts-sun50i-h616-add-pwm-nodes.patch (2)
123-126: Inconsistent/omit-if-no-ref/usage on pwm5_pin.The
pwm5_pinnode (lines 123-126) lacks the/omit-if-no-ref/directive, while all other PWM pin configurations (pwm0-pwm4 with their various pin alternatives) consistently include it. This inconsistency means pwm5_pin will always be included in the compiled device tree even when unused.Please verify if this is intentional or if pwm5_pin should follow the same pattern as the other PWM pins.
🔧 Proposed fix to add /omit-if-no-ref/
+ /omit-if-no-ref/ pwm5_pin: pwm5-pin { pins = "PA12"; function = "pwm5"; };
32-54: Add/omit-if-no-ref/to pwm5_pin for consistency with other PWM pin configurations.The
pwm5_pinnode (lines 123-126) is missing the/omit-if-no-ref/directive that appears on all other PWM pin configurations (pwm0_pin,pwm1_pg_pin,pwm1_ph_pin, etc.). This should be added for consistency:Diff
- pwm5_pin: pwm5-pin { + /omit-if-no-ref/ + pwm5_pin: pwm5-pin { pins = "PA12"; function = "pwm5"; };
🧹 Nitpick comments (1)
patch/kernel/archive/sunxi-6.18/patches.armbian/arm64-dts-sun50i-h616-x96-mate-enable-emac1.patch (1)
49-49: Extra blank line before &hdmi node.There's an extra blank line here. While not a functional issue, removing it would improve consistency with standard device tree formatting.
♻️ Optional cleanup
}; - &hdmi {
|
✅ This PR has been reviewed and approved — all set for merge! |
Alright that's a huge one.
This is WIP and far from being done and onlyhere to collect feedback from what's there already.Summary by CodeRabbit
New Features
Bug Fixes
Improvements
✏️ Tip: You can customize this high-level summary in your review settings.