-
-
Notifications
You must be signed in to change notification settings - Fork 2.8k
mainline: bump to 6.19-rc6 #9278
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
📝 WalkthroughWalkthroughThis PR updates the mainline kernel branch selection to v6.19-rc6 and applies multiple kernel patches across Meson, Rockchip (RK3399/RK3588), HiKey960, and x86 UEFI platforms, including PCIe MPS optimization, Type-C/DP alt-mode support, device tree expansions, USB enhancements, cryptographic acceleration, and staging driver integration. Changes
Estimated code review effort🎯 4 (Complex) | ⏱️ ~60 minutes This PR spans multiple platforms and subsystems with heterogeneous changes: device tree expansions, driver code modifications with complex state handling (DWC3 DISCONNECTED state, DP alt-mode pin logic), new cryptographic driver integration, and staging driver scaffolding. Each area requires specialized knowledge, and the mix of configuration, kernel patches, and multi-level changes (Kconfig, Makefile, C code, device tree bindings) demands careful review across distinct domains. Possibly related PRs
Suggested reviewers
Poem
🚥 Pre-merge checks | ✅ 3✅ Passed checks (3 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing touches
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 |
|
loong64 needs to be checked |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
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 (10)
patch/kernel/archive/rockchip64-6.19/rk3399-usbc-usb-typec-altmodes-displayport-Respect-DP_CAP_RECEPT.patch (1)
91-96: Typo in comment: "compatiple" → "compatible".Line 91 has a typo in the comment.
Proposed fix
- /* Make sure we have compatiple pin configurations */ + /* Make sure we have compatible pin configurations */patch/kernel/archive/uefi-x86-6.19/2009-apple-gmux-allow-switching-to-igpu-at-probe.patch (3)
80-82: Typo in MODULE_PARM_DESC:force_idgshould beforce_igd.The module parameter is named
force_igd(line 80) but the description usesforce_idg. This will cause confusion for users looking up parameter documentation.Proposed fix
-MODULE_PARM_DESC(force_idg, "Switch gpu to igd on module load. Make sure that you have apple-set-os set up and the iGPU is in `lspci -s 00:02.0`. (default: false) (bool)"); +MODULE_PARM_DESC(force_igd, "Switch gpu to igd on module load. Make sure that you have apple-set-os set up and the iGPU is in `lspci -s 00:02.0`. (default: false) (bool)");
99-101: Typo in pr_err message:force_idgshould beforce_igd.Same typo as the MODULE_PARM_DESC — the error message references the wrong parameter name.
Proposed fix
- pr_err("force_idg is true, but couldn't find iGPU at 00:02.0! Is apple-set-os working?"); + pr_err("force_igd is true, but couldn't find iGPU at 00:02.0! Is apple-set-os working?");
91-102: Add missingpci_dev_put()and fix typo in module parameter description.
pci_get_domain_bus_and_slot()increments the reference count on the returnedpci_dev. Sincevga_set_default_device()takes its own reference viapci_dev_get(), the caller must release its reference withpci_dev_put(pdev)after the call. Currently the reference is leaked.Additionally, the module parameter description contains a typo: "force_idg" should be "force_igd".
Proposed fix
if (force_igd) { struct pci_dev *pdev; pdev = pci_get_domain_bus_and_slot(0, 0, PCI_DEVFN(2, 0)); if (pdev) { pr_info("Switching to IGD"); gmux_switchto(VGA_SWITCHEROO_IGD); vga_set_default_device(pdev); + pci_dev_put(pdev); } else { - pr_err("force_idg is true, but couldn't find iGPU at 00:02.0! Is apple-set-os working?"); + pr_err("force_igd is true, but couldn't find iGPU at 00:02.0! Is apple-set-os working?"); } }Also fix the MODULE_PARM_DESC:
"force_idg"→"force_igd"patch/kernel/archive/uefi-x86-6.19/1002-Put-apple-bce-in-drivers-staging.patch (1)
45-63: Trailing apostrophe in Kconfig help text.Line 63 ends with
apple-bce.'— the trailing apostrophe appears to be a typo and will show up in kernel configuration help.Proposed fix
- If "M" is selected, the module will be called apple-bce.' + If "M" is selected, the module will be called apple-bce.patch/kernel/archive/rockchip64-6.19/rk3399-usbc-phy-rockchip-naneng-Add-fallback-for-old-DTs.patch (1)
187-218: Fix host-mode regression whenusb3_phy_reset_quirkis false.
The newelsepath unconditionally setsmode = DEVICE, which overrides a detected HOST state and regresses OTG switching on non‑quirk boards. Preserve HOST whenEXTCON_USB_HOSTis asserted.🐛 Proposed fix
- u32 mode = DWC3_GCTL_PRTCAP_DEVICE_DISCONNECTED; - int ret; + u32 mode = DWC3_GCTL_PRTCAP_DEVICE_DISCONNECTED; + int ret; + bool host = false; if (dwc->edev) { ret = extcon_get_state(dwc->edev, EXTCON_USB_HOST); - if (ret > 0) - mode = DWC3_GCTL_PRTCAP_HOST; + if (ret > 0) + host = true; if (dwc->usb3_phy_reset_quirk) { /* * With this quirk enabled, we want to pass 0 * to dwc3_set_mode to signal no USB connection * state. */ ret = extcon_get_state(dwc->edev, EXTCON_USB); - if (ret > 0) - mode = DWC3_GCTL_PRTCAP_DEVICE; + if (host) + mode = DWC3_GCTL_PRTCAP_HOST; + else if (ret > 0) + mode = DWC3_GCTL_PRTCAP_DEVICE; } else { - mode = DWC3_GCTL_PRTCAP_DEVICE; + mode = host ? DWC3_GCTL_PRTCAP_HOST : + DWC3_GCTL_PRTCAP_DEVICE; } dwc3_set_mode(dwc, mode); }patch/kernel/archive/rockchip64-6.19/rk35xx-montjoie-crypto-v2-rk35xx.patch (4)
43-51: Align clock-names between binding and DTS nodes.The schema expects
"core","a","h"while the DTS nodes use"core","aclk","hclk"(and rk356x orders them differently), which will trip dtbs_check. Suggest making the binding and both DTS nodes consistent.Proposed fix
diff --git a/Documentation/devicetree/bindings/crypto/rockchip,rk3588-crypto.yaml b/Documentation/devicetree/bindings/crypto/rockchip,rk3588-crypto.yaml @@ clock-names: items: - const: core - - const: a - - const: h + - const: aclk + - const: hclk diff --git a/arch/arm64/boot/dts/rockchip/rk356x-base.dtsi b/arch/arm64/boot/dts/rockchip/rk356x-base.dtsi @@ - clock-names = "aclk", "hclk", "core"; + clock-names = "core", "aclk", "hclk";Also applies to: 115-116, 155-156
2235-2246: Initialize dma_ctrl before OR-ing flags.
dd->dma_ctrlis reused without being reset, so stale flags from a previous request can leak into the new descriptor.Proposed fix
- dd->dma_ctrl |= RK2_LLI_DMA_CTRL_DST_INT | RK2_LLI_DMA_CTRL_LAST; + dd->dma_ctrl = RK2_LLI_DMA_CTRL_DST_INT | RK2_LLI_DMA_CTRL_LAST;
1071-1087: Handle pm_runtime_resume_and_get() error in probe function.The pm_runtime_resume_and_get(&pdev->dev) call at line 1075 lacks error handling. If runtime resume fails, the device remains suspended while the code proceeds to register crypto algorithms and add the device to rocklist. This leaves the device in an inconsistent state.
Proposed fix
err = pm_runtime_resume_and_get(&pdev->dev); +if (err) + goto err_pm;
1633-1638: Fix error handling and resource cleanup in hash path to prevent DMA mapping leak.The code at lines 1633-1638 has a critical flaw: the error value from
rk2_hash_prepare()is immediately overwritten bypm_runtime_resume_and_get(), and if the latter fails, the function returns early without callingrk2_hash_unprepare(). This causes a resource leak of DMA mappings allocated byrk2_hash_prepare().The fix requires checking
rk2_hash_prepare()for errors immediately, and ensuring that if either function fails,rk2_hash_unprepare()is called before returning. The proposed fix with thefinalize:label correctly separates resource cleanup (attheend:) from request finalization (atfinalize:), allowing proper unwinding on error paths.This applies to both line ranges: 1633-1638 and 1705-1712.
🧹 Nitpick comments (2)
patch/kernel/archive/rockchip64-6.19/rk3399-usbc-phy-rockchip-naneng-Add-fallback-for-old-DTs.patch (1)
70-75: Remove theXXXand make PHY power-on state deterministic.
The loop overwritesusb3_phy_poweredper-port and leaves a TODO-style comment. Please track success across all ports and drop theXXX.♻️ Suggested cleanup
- for (int j = 0; j < dwc->num_usb3_ports; j++) { - ret = phy_power_on(dwc->usb3_generic_phy[j]); - //XXX: bleh - dwc->usb3_phy_powered = ret >= 0; - } + bool powered = true; + for (int j = 0; j < dwc->num_usb3_ports; j++) { + ret = phy_power_on(dwc->usb3_generic_phy[j]); + if (ret < 0) { + powered = false; + break; + } + } + dwc->usb3_phy_powered = powered;patch/kernel/archive/rockchip64-6.19/add-board-helios64.patch (1)
848-854: Outstanding TODO: Implicit CD definition.There's a TODO comment about potentially using implicit CD definition instead of explicit
cd-gpios. This could simplify the configuration if the SDMMC controller supports implicit card detect via pinctrl.Would you like me to open an issue to track investigating implicit CD support for Helios64, or help identify what kernel changes would be needed?
|
✅ This PR has been reviewed and approved — all set for merge! |
Description
push version
rewrite meson64, rockchip64, both uefi arm64 and x86
How Has This Been Tested?
Checklist:
Summary by CodeRabbit
New Features
Bug Fixes
Updates
✏️ Tip: You can customize this high-level summary in your review settings.