From c22030877c9bc9df744a268253a1e61c1faf5d58 Mon Sep 17 00:00:00 2001 From: Han Gao Date: Sat, 6 Jun 2026 01:02:25 +0800 Subject: [PATCH 1/3] SPECS: linux: Bump to 7.0.11 & refresh patchset Signed-off-by: Han Gao --- ...EAM-rust-clk-implement-Send-and-Sync.patch | 4 +- ...yr-remove-impl-Send-Sync-for-TyrData.patch | 4 +- ...520-remove-impl-Send-Sync-for-Th1520.patch | 4 +- ...cemit-Remove-unused-buff_addr-fields.patch | 5 +- ...ings-net-Add-support-for-Spacemit-K3.patch | 6 +- ...mac-platform-Add-snps-dwmac-5.40a-IP.patch | 6 +- ...mac-Add-glue-layer-for-Spacemit-K3-S.patch | 4 +- ...gination-Improve-handling-of-unknown.patch | 6 +- ...gination-Mark-FWCCB_CMD_UPDATE_STATS.patch | 6 +- ...gination-Improve-firmware-power-off-.patch | 4 +- ...gination-Skip-2nd-thread-DM-associat.patch | 4 +- ...gination-Add-missing-rogue-context-r.patch | 4 +- ...gination-Implement-handling-of-conte.patch | 6 +- ...ings-vendor-prefixes-add-verisilicon.patch | 5 +- ...-bindings-display-add-verisilicon-dc.patch | 4 +- ...isilicon-add-a-driver-for-Verisilico.patch | 6 +- ...ings-display-bridge-add-binding-for-.patch | 6 +- ...dge-add-a-driver-for-T-Head-TH1520-H.patch | 4 +- ...ings-mfd-spacemit-p1-Add-individual-.patch | 6 +- ...ator-spacemit-p1-Update-supply-names.patch | 4 +- ...AM-mmc-sdhci-of-k1-add-reset-support.patch | 4 +- ...ings-mmc-spacemit-sdhci-add-support-.patch | 6 +- ...ci-of-k1-spacemit-Add-support-for-K3.patch | 6 +- ...ings-hwmon-moortec-mr75203-adapt-mul.patch | 4 +- ...ts-thead-add-DPU-and-HDMI-device-tre.patch | 4 +- ...v-dts-thead-lichee-pi-4a-enable-HDMI.patch | 5 +- ...ts-thead-th1520-add-coefficients-to-.patch | 6 +- ...ts-thead-beaglev-ahead-enable-HDMI-o.patch | 6 +- ...TREAM-i2c-spacemit-move-i2c_xfer_msg.patch | 4 +- ...AM-i2c-spacemit-introduce-pio-for-k1.patch | 4 +- ...-spacemit-return-ENOTSUPP-for-unsupp.patch | 4 +- ...acemit-k1-Add-set_config-callback-su.patch | 4 +- ...ts-spacemit-Update-PMIC-supply-prope.patch | 4 +- ...ts-spacemit-adapt-regulator-node-nam.patch | 4 +- ...ts-spacemit-Add-linux-pci-domain-to-.patch | 6 +- ...ings-serial-8250-spacemit-fix-clock-.patch | 6 +- ...riscv-dts-spacemit-k3-add-clock-tree.patch | 4 +- ...-dts-spacemit-k3-add-pinctrl-support.patch | 5 +- ...scv-dts-spacemit-k3-add-GPIO-support.patch | 4 +- ...ts-spacemit-k3-add-full-resource-to-.patch | 6 +- ...ings-usb-dwc3-spacemit-add-support-f.patch | 6 +- ...3-dwc3-generic-plat-spacemit-add-sup.patch | 4 +- ...3-Add-optional-VBUS-regulator-suppor.patch | 6 +- ...ts-spacemit-reorder-phy-nodes-for-K1.patch | 5 +- ...ts-spacemit-Add-ethernet-device-for-.patch | 6 +- ...ts-spacemit-add-LEDs-for-Milk-V-Jupi.patch | 4 +- ...ts-spacemit-add-24c04-eeprom-on-Milk.patch | 4 +- ...ts-spacemit-add-i2c-aliases-on-Milk-.patch | 4 +- ...ts-spacemit-enable-QSPI-and-add-SPI-.patch | 6 +- ...ts-spacemit-enable-USB-3-ports-on-Mi.patch | 4 +- ...ts-spacemit-enable-PCIe-ports-on-Mil.patch | 4 +- ...dings-i2c-spacemit-k3-Add-compatible.patch | 5 +- ...-dts-riscv-spacemit-k3-Add-i2c-nodes.patch | 4 +- ...cv-spacemit-k3-add-P1-PMIC-regulator.patch | 4 +- ...mbol-Add-RISCV-case-in-get_plt_sizes.patch | 5 +- ...-Simplify-assignment-for-UTS_MACHINE.patch | 4 +- ...ncrease-COMMAND_LINE_SIZE-value-to-2.patch | 4 +- ...cpi-update-FADT-revision-check-to-6..patch | 5 +- ...m-WARN_ON-for-bad-addresses-in-vmemm.patch | 8 +- ...TREAM-riscv-enable-HAVE_IOREMAP_PROT.patch | 4 +- ...ing_kunit-add-correctness-test-for-s.patch | 4 +- ...ing_kunit-add-correctness-test-for-s.patch | 4 +- ...ing_kunit-add-correctness-test-for-s.patch | 4 +- ...ing_kunit-add-performance-benchmark-.patch | 4 +- ...ing_kunit-extend-benchmarks-to-strnl.patch | 4 +- ...riscv-lib-add-strnlen-implementation.patch | 4 +- ...-riscv-lib-add-strchr-implementation.patch | 4 +- ...riscv-lib-add-strrchr-implementation.patch | 4 +- ...acemit-move-hw-constraints-from-hw_p.patch | 4 +- ...acemit-adjust-FIFO-trigger-threshold.patch | 6 +- ...cemit-k3-mark-top_dclk-as-CLK_IS_CRI.patch | 4 +- ...acemit-fix-RX-DMA-params-not-set-whe.patch | 6 +- ...ings-usb-Add-support-for-Terminus-FE.patch | 4 +- ...c-onboard_usb_dev-Add-Terminus-FE1.1.patch | 4 +- ...upt-Add-the-RISC-V-page-table-format.patch | 8 +- ...76-UPSTREAM-iommu-riscv-Disable-SADE.patch | 4 +- ...iscv-Use-the-generic-iommu-page-tabl.patch | 5 +- ...iscv-Enable-SVNAPOT-support-for-cont.patch | 4 +- ...iscv-Allow-RISC_VIOMMU-to-COMPILE_TE.patch | 5 +- ...efine-__riscv_copy_-vec_-words-bytes.patch | 4 +- ...display-Add-min-clock-init-for-DML2.patch} | 6 +- ...m-Fixup-no5lvl-failure-when-vaddr-is.patch | 85 - ...display-Backport-dml21-DC_RUN_WITH_.patch} | 4 +- ...-display-Move-FPU-Guards-From-DML-To.patch | 2921 +++++++++++++ ...-display-Move-FPU-Guards-From-DML-To.patch | 3758 +++++------------ ...-display-Move-FPU-Guards-From-DML-To.patch | 1148 +---- ...display-Fix-dc_is_fp_enabled-name-m.patch} | 4 +- ...-display-Move-FPU-Guards-From-DML-To.patch | 121 - ...m-amd-display-Fix-fpu-guard-warning.patch} | 4 +- ...display-Move-dml2_destroy-to-non-FP.patch} | 6 +- ...indings-fsl-qspi-support-SpacemiT-K.patch} | 6 +- ...VM-Fix-NULL-pointer-dereference-in-.patch} | 6 +- ...nation-Count-paired-job-fence-as-de.patch} | 4 +- ...nation-Fit-paired-fragment-job-in-t.patch} | 6 +- ...nation-Skip-check-on-paired-job-fen.patch} | 6 +- ...nation-Rename-pvr_queue_fence_is_uf.patch} | 4 +- ...nation-Rename-fence-returned-by-pvr.patch} | 4 +- ...nation-Move-repeated-job-fence-chec.patch} | 6 +- ...nation-Update-check-to-skip-prepare.patch} | 4 +- ...nation-Minor-improvements-to-job-su.patch} | 4 +- ...v-Fix-discarded-const-qualifier-in-.patch} | 4 +- ...rata-Add-ERRATA_THEAD_WRITE_ONCE-fi.patch} | 4 +- ...per-device-flag-to-disable-native-P.patch} | 4 +- ...quirk-to-disable-PCIe-port-services.patch} | 6 +- ...ase-BAR0-of-an-integrated-bridge-to.patch} | 6 +- ...-drm-ttm-save-the-device-s-DMA-cohe.patch} | 4 +- ...-drm-ttm-downgrade-cached-to-write_.patch} | 4 +- ...v-dts-thead-Add-CPU-clock-and-OPP-t.patch} | 6 +- ...ort-BINDGEN_TARGET-from-a-separate-.patch} | 6 +- ...erate-a-fatal-error-if-BINDGEN_TARG.patch} | 6 +- ...-a-Kconfig-function-to-test-for-sup.patch} | 4 +- ...andle-extension-configs-for-bindgen.patch} | 6 +- ...ngs-mmc-spacemit-sdhci-add-reset-su.patch} | 4 +- ...le-mfd-i2c-add-a-reboot-cell-for-th.patch} | 6 +- ...r-spacemit-MFD_SPACEMIT_P1-as-depen.patch} | 4 +- ...emit-default-module-when-MFD_SPACEM.patch} | 4 +- ...indings-add-SpacemiT-K1-SPI-support.patch} | 5 +- ...emit-introduce-SpacemiT-K1-SPI-cont.patch} | 4 +- ...s-spacemit-define-a-SPI-controller-.patch} | 6 +- ...ngs-thermal-Add-SpacemiT-K1-thermal.patch} | 6 +- ...spacemit-k1-Add-thermal-sensor-supp.patch} | 4 +- ...s-spacemit-Add-thermal-sensor-for-K.patch} | 6 +- ...emit-Free-rings-of-memory-after-unm.patch} | 4 +- ...m-Extract-helper-mark_new_valid_map.patch} | 5 +- ...ence-Call-mark_new_valid_map-for-kf.patch} | 6 +- ...-Rename-new_vmalloc-into-new_valid_.patch} | 4 +- ...-Use-the-bitmap-API-for-new_valid_m.patch} | 4 +- ...-Unconditionally-sfence.vma-for-spu.patch} | 4 +- ...ngs-phy-spacemit-k3-add-USB2-PHY-su.patch} | 6 +- ...-phy-k1-usb-k3-add-USB2-PHY-support.patch} | 16 +- ...dt-platdev-Add-SpacemiT-K1-SoC-to-t.patch} | 4 +- ...s-spacemit-Add-cpu-scaling-for-K1-S.patch} | 6 +- ...cv-mm-Define-DIRECT_MAP_PHYSMEM_END.patch} | 4 +- ...silicon-add-max-cursor-size-to-HWDB.patch} | 5 +- ...silicon-add-support-for-cursor-plan.patch} | 4 +- ...d-UltraRISC-SoC-family-Kconfig-supp.patch} | 4 +- ...ngs-PCI-Add-UltraRISC-DP1000-PCIe-c.patch} | 4 +- ...arisc-Add-UltraRISC-DP1000-PCIe-Roo.patch} | 6 +- ...250_dwlib-move-DesignWare-register-.patch} | 6 +- ...250_dw-build-Renesas-RZN1-CPR-value.patch} | 6 +- ...ngs-serial-snps-dw-apb-uart-Add-Ult.patch} | 4 +- ...250_dw-Use-a-fixed-CPR-value-for-Ul.patch} | 4 +- ...sable-local-interrupts-and-stop-oth.patch} | 6 +- ...ge-th1520-dw-hdmi-Fix-error-check-o.patch} | 6 +- ...ge-th1520-dw-hdmi-Fix-remove-callba.patch} | 4 +- ...s-spacemit-Enable-i2c8-adapter-for-.patch} | 6 +- ...s-spacemit-Define-the-P1-PMIC-regul.patch} | 4 +- ...s-spacemit-Enable-USB3.0-PCIe-on-Or.patch} | 4 +- ...ngs-dmaengine-Add-SpacemiT-K3-DMA-c.patch} | 4 +- ...e-mmp_pdma-refactor-DRCMR-access-wi.patch} | 4 +- ...ne-mmp_pdma-add-SpacemiT-K3-support.patch} | 5 +- ...s-spacemit-Add-PDMA-controller-node.patch} | 6 +- ...ngs-pci-sophgo-Add-dma-coherent-pro.patch} | 4 +- ...s-sophgo-Add-dma-coherent-to-SG2042.patch} | 6 +- ...-fix-SWIOTLB-initialization-for-sys.patch} | 4 +- ...s-spacemit-k1-bananapi-f3-Add-vcc5v.patch} | 4 +- ...s-spacemit-k1-bananapi-f3-Update-US.patch} | 6 +- ...s-spacemit-k1-bananapi-f3-Correct-U.patch} | 6 +- ...s-sophgo-sg2044-use-hex-for-CPU-uni.patch} | 4 +- ...s-sophgo-sg2042-use-hex-for-CPU-uni.patch} | 4 +- ...x-fast_unaligned_access_speed_key-n.patch} | 6 +- ...s-sophgo-reduce-SG2042-MSI-count-to.patch} | 6 +- ...ngs-pwm-marvell-pxa-pwm-Add-Spacemi.patch} | 4 +- ...LIST-pwm-pxa-Add-optional-bus-clock.patch} | 4 +- ...race-select-HAVE_BUILDTIME_MCOUNT_S.patch} | 4 +- ...s-spacemit-enable-USB3-on-OrangePi-.patch} | 6 +- ...v-spacemit-correct-32k-clock-freque.patch} | 4 +- ...bindings-add-SpacemiT-K3-SoC-compat.patch} | 4 +- ...cemit-add-K3-SoC-support-with-addit.patch} | 4 +- ...-dai-add-shared-BCLK-clock-for-cros.patch} | 4 +- ...-pcm-constrain-hw_params-when-DAIs-.patch} | 6 +- ...cemit-declare-shared-BCLK-for-cross.patch} | 4 +- ...emit-add-u64-cast-to-NSEC_PER_SEC-t.patch} | 6 +- ...ngs-clock-thead-add-TH1520-MISC-sub.patch} | 4 +- ...d-th1520-ap-add-support-for-MISC-su.patch} | 4 +- ...s-thead-add-device-tree-node-for-MI.patch} | 4 +- ...ngs-phy-add-binding-for-T-Head-TH15.patch} | 4 +- ...-a-driver-for-T-Head-TH1520-USB-PHY.patch} | 4 +- ...-dts-thead-add-device-nodes-for-USB.patch} | 4 +- ...bindings-gpio-dwapb-allow-GPIO-hogs.patch} | 4 +- ...ngs-usb-vialab-vl817-allow-ports-pr.patch} | 4 +- ...ST-riscv-dts-thead-lpi4a-sort-nodes.patch} | 4 +- ...iscv-dts-thead-Add-TH1520-I2C-nodes.patch} | 4 +- ...s-thead-Add-Lichee-Pi-4A-IO-expansi.patch} | 4 +- ...s-thead-enable-USB3-ports-on-Lichee.patch} | 6 +- ...s-spacemit-k1-musepi-pro-add-PMIC-a.patch} | 6 +- ...s-spacemit-k1-musepi-pro-add-24c04-.patch} | 6 +- ...s-spacemit-k1-musepi-pro-enable-QSP.patch} | 4 +- ...s-spacemit-k1-musepi-pro-enable-USB.patch} | 4 +- ...s-spacemit-k1-musepi-pro-enable-PCI.patch} | 4 +- ...s-spacemit-k1-musepi-pro-set-defaul.patch} | 4 +- ...scv-dts-spacemit-k3-Add-pwm-support.patch} | 4 +- ...e-sysfs_emit-in-cpu_show_ghostwrite.patch} | 5 +- ...emit-k3-Switch-to-pll2_d6-as-parent.patch} | 6 +- ...emit-k3-Fix-PCIe-clock-register-off.patch} | 4 +- ...ngs-soc-spacemit-k3-Add-PCIe-DBI-cl.patch} | 6 +- ...-clk-spacemit-k3-Add-PCIe-DBI-clock.patch} | 4 +- ...s-spacemit-enable-eMMC-for-OrangePi.patch} | 6 +- ...emit-configure-ILCR-IWCR-for-accura.patch} | 4 +- ...emit-drop-warning-when-clock-freque.patch} | 4 +- ...ngs-mmc-spacemit-sdhci-add-pinctrl-.patch} | 6 +- ...i-of-k1-enable-essential-clock-infr.patch} | 4 +- ...i-of-k1-add-regulator-and-pinctrl-v.patch} | 4 +- ...i-of-k1-add-comprehensive-SDR-tunin.patch} | 6 +- ...s-spacemit-k1-add-SD-card-controlle.patch} | 4 +- ...s-spacemit-k1-orangepi-rv2-add-SD-c.patch} | 6 +- ...s-spacemit-k1-bananapi-f3-add-SD-ca.patch} | 6 +- ...s-spacemit-k1-musepi-pro-add-SD-car.patch} | 4 +- ...s-thead-Enable-wifi-on-the-BeagleV-.patch} | 4 +- ...dule-Use-generic-cmp_int-instead-of.patch} | 6 +- ...scv-Advertise-Svpbmt-support-to-gen.patch} | 4 +- ...Encode-IOMMU_MMIO-IOMMU_CACHE-via-R.patch} | 4 +- ...opagate-insert_resource-result-from.patch} | 6 +- ...spacemit-k1-Add-device-data-support.patch} | 4 +- ...emit-k1-Add-multiple-PHY-handles-su.patch} | 4 +- ...ngs-PCI-snps-dw-pcie-Add-msi-parent.patch} | 6 +- ...ngs-PCI-spacemit-Introduce-Spacemit.patch} | 6 +- ...emit-k1-Add-Spacemit-K3-PCIe-host-c.patch} | 4 +- ...s-spacemit-enable-QSPI-for-OrangePi.patch} | 6 +- ...-clk-spacemit-k3-fix-USB2-bus-clock.patch} | 4 +- ...eset-spacemit-k3-fix-USB2-ahb-reset.patch} | 4 +- ...v-spacemit-k3-Fix-I-O-power-setting.patch} | 4 +- ...s-spacemit-set-console-baud-rate-on.patch} | 6 +- ...s-spacemit-sort-aliases-on-Milk-V-J.patch} | 6 +- ...s-spacemit-enable-eMMC-on-Milk-V-Ju.patch} | 4 +- ...s-spacemit-enable-SD-card-support-o.patch} | 6 +- ...s-spacemit-fix-uboot-partition-offs.patch} | 4 +- ...s-spacemit-add-QSPI-support-for-K3-.patch} | 6 +- ...spacemit-fix-NULL-check-in-spacemit.patch} | 4 +- ...conditionally-select-ARCH_KEEP_MEMB.patch} | 4 +- ...xec_file-Constrain-segment-placemen.patch} | 6 +- ...ngs-riscv-spacemit-Add-K3-CoM260-IF.patch} | 4 +- ...s-spacemit-k3-Initial-support-for-C.patch} | 6 +- ...s-spacemit-enable-PMIC-on-OrangePi-.patch} | 6 +- ...s-spacemit-set-console-baud-rate-on.patch} | 6 +- ...ts-spacemit-k3-Add-Ziccrse-extension.patch | 99 + ...KVM-Enhance-the-logging-check-for-mm.patch | 52 + ...m-Call-mark_new_valid_map-after-hotp.patch | 84 - ...ts-spacemit-enable-PCIe-on-OrangePi-.patch | 75 + ...iscv-Add-dependency-between-iommu-an.patch | 105 + ...T-riscv-track-effective-hardware-PTE.patch | 179 + ...T-riscv-preserve-hardware-updated-A-.patch | 166 + ...m-Avoid-spurious-fault-after-hotplug.patch | 90 + ...s-th1520-add-licheepi4a-16g-support.patch} | 5 +- ...-dts-th1520-rename-thead-to-xuantie.patch} | 4 +- ...ts-th1520-add-xuantie-th1520-mbox-r.patch} | 4 +- ...s-nvmem-Add-SG2044-eFuse-controller.patch} | 5 +- ...vmem-Add-Sophgo-SG2044-eFuse-driver.patch} | 4 +- ...-dts-sophgo-sg2044-Add-eFUSE-device.patch} | 4 +- ...42-errata-Replace-thead-cache-clean.patch} | 6 +- ...-dts-sg2044-Modify-pcie-bar-address.patch} | 4 +- ...s-net-ultrarisc-dp1000-gmac-Add-sup.patch} | 4 +- ...-stmmac-add-support-for-dwmac-5.10a.patch} | 4 +- ...d-dp1000.dts-for-UltraRIsc-DP1000-S.patch} | 5 +- ...pinctrl-dirver-for-UltraRisc-DP1000.patch} | 5 +- ...nctrl-dtsi-dts-for-UltraRisc-DP1000.patch} | 4 +- ...-dts-add-the-dts-of-UltraRISC-dp100.patch} | 4 +- ...-dts-Move-mmc0-node-from-SoC-to-boa.patch} | 4 +- ...0-plic-add-plic-early-init-supports.patch} | 5 +- ...-dts-Move-chosen-node-from-common-t.patch} | 6 +- ...trarisc-Refactor-DP1000-device-tree.patch} | 6 +- ...l-ultrarisc-Implement-pin-configura.patch} | 4 +- ...1000-add-dts-dtsi-for-Milk-V-Titan-.patch} | 6 +- ...ctrl-ultrarisc-cleanup-probe-remove.patch} | 4 +- ...00-dts-use-ultrarisc-dp1000-pcie-fo.patch} | 4 +- ...dd-corepvt-driver-of-UltraRISC-DP10.patch} | 5 +- ...riscv-dts-dp1000-Update-dp1000.dtsi.patch} | 4 +- ...-dts-spacemit-k3-Add-USB2.0-support.patch} | 6 +- ...ccess-don-t-use-vector-if-buffer-is.patch} | 6 +- ...phy-Add-Spacemit-K3-USB3-PCIe-comb-.patch} | 6 +- ...-Add-USB3-PCIe-comb-PHY-driver-for-.patch} | 6 +- ...acemit-k3-add-USB-controller-and-US.patch} | 8 +- ...ts-spacemit-k3-Add-PCIe-device-node.patch} | 6 +- ...emiT-vendor-id-and-its-K3-device-id.patch} | 6 +- ...ci-add-SpacemiT-K3-to-36-bit-DMA-al.patch} | 4 +- ...isable-dynamic-PCIe-speed-switch-on.patch} | 10 +- ...3-keep-some-system-based-clock-alwa.patch} | 4 +- ...-dwcmshc-Add-support-for-SG2042-FPG.patch} | 10 +- SPECS/linux/linux.spec | 276 +- SPECS/linux/series | 275 ++ 280 files changed, 5658 insertions(+), 5071 deletions(-) rename SPECS/linux/{0082-UPSTREAM-drm-amd-display-Add-min-clock-init-for-DML2.patch => 0081-UPSTREAM-drm-amd-display-Add-min-clock-init-for-DML2.patch} (96%) delete mode 100644 SPECS/linux/0081-UPSTREAM-riscv-mm-Fixup-no5lvl-failure-when-vaddr-is.patch rename SPECS/linux/{0083-UPSTREAM-drm-amd-display-Backport-dml21-DC_RUN_WITH_.patch => 0082-UPSTREAM-drm-amd-display-Backport-dml21-DC_RUN_WITH_.patch} (95%) create mode 100644 SPECS/linux/0083-UPSTREAM-drm-amd-display-Move-FPU-Guards-From-DML-To.patch rename SPECS/linux/{0087-UPSTREAM-drm-amd-display-Fix-dc_is_fp_enabled-name-m.patch => 0086-UPSTREAM-drm-amd-display-Fix-dc_is_fp_enabled-name-m.patch} (92%) delete mode 100644 SPECS/linux/0086-UPSTREAM-drm-amd-display-Move-FPU-Guards-From-DML-To.patch rename SPECS/linux/{0088-UPSTREAM-drm-amd-display-Fix-fpu-guard-warning.patch => 0087-UPSTREAM-drm-amd-display-Fix-fpu-guard-warning.patch} (99%) rename SPECS/linux/{0089-UPSTREAM-drm-amd-display-Move-dml2_destroy-to-non-FP.patch => 0088-UPSTREAM-drm-amd-display-Move-dml2_destroy-to-non-FP.patch} (95%) rename SPECS/linux/{0090-UPSTREAM-spi-dt-bindings-fsl-qspi-support-SpacemiT-K.patch => 0089-UPSTREAM-spi-dt-bindings-fsl-qspi-support-SpacemiT-K.patch} (90%) rename SPECS/linux/{0091-UPSTREAM-RISC-V-KVM-Fix-NULL-pointer-dereference-in-.patch => 0090-UPSTREAM-RISC-V-KVM-Fix-NULL-pointer-dereference-in-.patch} (90%) rename SPECS/linux/{0092-FROMGIT-drm-imagination-Count-paired-job-fence-as-de.patch => 0091-FROMGIT-drm-imagination-Count-paired-job-fence-as-de.patch} (97%) rename SPECS/linux/{0093-FROMGIT-drm-imagination-Fit-paired-fragment-job-in-t.patch => 0092-FROMGIT-drm-imagination-Fit-paired-fragment-job-in-t.patch} (97%) rename SPECS/linux/{0094-FROMGIT-drm-imagination-Skip-check-on-paired-job-fen.patch => 0093-FROMGIT-drm-imagination-Skip-check-on-paired-job-fen.patch} (92%) rename SPECS/linux/{0095-FROMGIT-drm-imagination-Rename-pvr_queue_fence_is_uf.patch => 0094-FROMGIT-drm-imagination-Rename-pvr_queue_fence_is_uf.patch} (96%) rename SPECS/linux/{0096-FROMGIT-drm-imagination-Rename-fence-returned-by-pvr.patch => 0095-FROMGIT-drm-imagination-Rename-fence-returned-by-pvr.patch} (96%) rename SPECS/linux/{0097-FROMGIT-drm-imagination-Move-repeated-job-fence-chec.patch => 0096-FROMGIT-drm-imagination-Move-repeated-job-fence-chec.patch} (93%) rename SPECS/linux/{0098-FROMGIT-drm-imagination-Update-check-to-skip-prepare.patch => 0097-FROMGIT-drm-imagination-Update-check-to-skip-prepare.patch} (93%) rename SPECS/linux/{0099-FROMGIT-drm-imagination-Minor-improvements-to-job-su.patch => 0098-FROMGIT-drm-imagination-Minor-improvements-to-job-su.patch} (97%) rename SPECS/linux/{0100-FROMGIT-perf-riscv-Fix-discarded-const-qualifier-in-.patch => 0099-FROMGIT-perf-riscv-Fix-discarded-const-qualifier-in-.patch} (91%) rename SPECS/linux/{0101-FROMLIST-riscv-errata-Add-ERRATA_THEAD_WRITE_ONCE-fi.patch => 0100-FROMLIST-riscv-errata-Add-ERRATA_THEAD_WRITE_ONCE-fi.patch} (97%) rename SPECS/linux/{0102-FROMLIST-PCI-Add-per-device-flag-to-disable-native-P.patch => 0101-FROMLIST-PCI-Add-per-device-flag-to-disable-native-P.patch} (93%) rename SPECS/linux/{0103-FROMLIST-PCI-Add-quirk-to-disable-PCIe-port-services.patch => 0102-FROMLIST-PCI-Add-quirk-to-disable-PCIe-port-services.patch} (93%) rename SPECS/linux/{0104-FROMLIST-PCI-Release-BAR0-of-an-integrated-bridge-to.patch => 0103-FROMLIST-PCI-Release-BAR0-of-an-integrated-bridge-to.patch} (95%) rename SPECS/linux/{0105-BACKPORT-FROMLIST-drm-ttm-save-the-device-s-DMA-cohe.patch => 0104-BACKPORT-FROMLIST-drm-ttm-save-the-device-s-DMA-cohe.patch} (93%) rename SPECS/linux/{0106-BACKPORT-FROMLIST-drm-ttm-downgrade-cached-to-write_.patch => 0105-BACKPORT-FROMLIST-drm-ttm-downgrade-cached-to-write_.patch} (97%) rename SPECS/linux/{0107-FROMLIST-NFU-riscv-dts-thead-Add-CPU-clock-and-OPP-t.patch => 0106-FROMLIST-NFU-riscv-dts-thead-Add-CPU-clock-and-OPP-t.patch} (94%) rename SPECS/linux/{0108-FROMLIST-rust-export-BINDGEN_TARGET-from-a-separate-.patch => 0107-FROMLIST-rust-export-BINDGEN_TARGET-from-a-separate-.patch} (94%) rename SPECS/linux/{0109-FROMLIST-rust-generate-a-fatal-error-if-BINDGEN_TARG.patch => 0108-FROMLIST-rust-generate-a-fatal-error-if-BINDGEN_TARG.patch} (93%) rename SPECS/linux/{0110-FROMLIST-rust-add-a-Kconfig-function-to-test-for-sup.patch => 0109-FROMLIST-rust-add-a-Kconfig-function-to-test-for-sup.patch} (91%) rename SPECS/linux/{0111-FROMLIST-RISC-V-handle-extension-configs-for-bindgen.patch => 0110-FROMLIST-RISC-V-handle-extension-configs-for-bindgen.patch} (97%) rename SPECS/linux/{0112-FROMLIST-dt-bindings-mmc-spacemit-sdhci-add-reset-su.patch => 0111-FROMLIST-dt-bindings-mmc-spacemit-sdhci-add-reset-su.patch} (91%) rename SPECS/linux/{0113-FROMLIST-mfd-simple-mfd-i2c-add-a-reboot-cell-for-th.patch => 0112-FROMLIST-mfd-simple-mfd-i2c-add-a-reboot-cell-for-th.patch} (84%) rename SPECS/linux/{0114-FROMLIST-regulator-spacemit-MFD_SPACEMIT_P1-as-depen.patch => 0113-FROMLIST-regulator-spacemit-MFD_SPACEMIT_P1-as-depen.patch} (91%) rename SPECS/linux/{0115-FROMLIST-rtc-spacemit-default-module-when-MFD_SPACEM.patch => 0114-FROMLIST-rtc-spacemit-default-module-when-MFD_SPACEM.patch} (90%) rename SPECS/linux/{0116-FROMLIST-spi-dt-bindings-add-SpacemiT-K1-SPI-support.patch => 0115-FROMLIST-spi-dt-bindings-add-SpacemiT-K1-SPI-support.patch} (95%) rename SPECS/linux/{0117-FROMLIST-spi-spacemit-introduce-SpacemiT-K1-SPI-cont.patch => 0116-FROMLIST-spi-spacemit-introduce-SpacemiT-K1-SPI-cont.patch} (99%) rename SPECS/linux/{0118-FROMLIST-riscv-dts-spacemit-define-a-SPI-controller-.patch => 0117-FROMLIST-riscv-dts-spacemit-define-a-SPI-controller-.patch} (95%) rename SPECS/linux/{0119-FROMLIST-dt-bindings-thermal-Add-SpacemiT-K1-thermal.patch => 0118-FROMLIST-dt-bindings-thermal-Add-SpacemiT-K1-thermal.patch} (94%) rename SPECS/linux/{0120-FROMLIST-thermal-spacemit-k1-Add-thermal-sensor-supp.patch => 0119-FROMLIST-thermal-spacemit-k1-Add-thermal-sensor-supp.patch} (98%) rename SPECS/linux/{0121-FROMLIST-riscv-dts-spacemit-Add-thermal-sensor-for-K.patch => 0120-FROMLIST-riscv-dts-spacemit-Add-thermal-sensor-for-K.patch} (95%) rename SPECS/linux/{0122-FROMLIST-net-spacemit-Free-rings-of-memory-after-unm.patch => 0121-FROMLIST-net-spacemit-Free-rings-of-memory-after-unm.patch} (92%) rename SPECS/linux/{0123-FROMLIST-riscv-mm-Extract-helper-mark_new_valid_map.patch => 0122-FROMLIST-riscv-mm-Extract-helper-mark_new_valid_map.patch} (92%) rename SPECS/linux/{0124-FROMLIST-riscv-kfence-Call-mark_new_valid_map-for-kf.patch => 0123-FROMLIST-riscv-kfence-Call-mark_new_valid_map-for-kf.patch} (94%) rename SPECS/linux/{0125-FROMLIST-riscv-mm-Rename-new_vmalloc-into-new_valid_.patch => 0124-FROMLIST-riscv-mm-Rename-new_vmalloc-into-new_valid_.patch} (97%) rename SPECS/linux/{0126-FROMLIST-riscv-mm-Use-the-bitmap-API-for-new_valid_m.patch => 0125-FROMLIST-riscv-mm-Use-the-bitmap-API-for-new_valid_m.patch} (93%) rename SPECS/linux/{0127-FROMLIST-riscv-mm-Unconditionally-sfence.vma-for-spu.patch => 0126-FROMLIST-riscv-mm-Unconditionally-sfence.vma-for-spu.patch} (91%) rename SPECS/linux/{0128-FROMLIST-dt-bindings-phy-spacemit-k3-add-USB2-PHY-su.patch => 0127-FROMLIST-dt-bindings-phy-spacemit-k3-add-USB2-PHY-su.patch} (89%) rename SPECS/linux/{0129-FROMLIST-phy-k1-usb-k3-add-USB2-PHY-support.patch => 0128-FROMLIST-phy-k1-usb-k3-add-USB2-PHY-support.patch} (86%) rename SPECS/linux/{0130-FROMLIST-cpufreq-dt-platdev-Add-SpacemiT-K1-SoC-to-t.patch => 0129-FROMLIST-cpufreq-dt-platdev-Add-SpacemiT-K1-SoC-to-t.patch} (87%) rename SPECS/linux/{0131-FROMLIST-riscv-dts-spacemit-Add-cpu-scaling-for-K1-S.patch => 0130-FROMLIST-riscv-dts-spacemit-Add-cpu-scaling-for-K1-S.patch} (98%) rename SPECS/linux/{0132-FROMLIST-riscv-mm-Define-DIRECT_MAP_PHYSMEM_END.patch => 0131-FROMLIST-riscv-mm-Define-DIRECT_MAP_PHYSMEM_END.patch} (92%) rename SPECS/linux/{0133-FROMLIST-drm-verisilicon-add-max-cursor-size-to-HWDB.patch => 0132-FROMLIST-drm-verisilicon-add-max-cursor-size-to-HWDB.patch} (94%) rename SPECS/linux/{0134-FROMLIST-drm-verisilicon-add-support-for-cursor-plan.patch => 0133-FROMLIST-drm-verisilicon-add-support-for-cursor-plan.patch} (98%) rename SPECS/linux/{0135-FROMLIST-riscv-add-UltraRISC-SoC-family-Kconfig-supp.patch => 0134-FROMLIST-riscv-add-UltraRISC-SoC-family-Kconfig-supp.patch} (87%) rename SPECS/linux/{0136-FROMLIST-dt-bindings-PCI-Add-UltraRISC-DP1000-PCIe-c.patch => 0135-FROMLIST-dt-bindings-PCI-Add-UltraRISC-DP1000-PCIe-c.patch} (96%) rename SPECS/linux/{0137-FROMLIST-PCI-ultrarisc-Add-UltraRISC-DP1000-PCIe-Roo.patch => 0136-FROMLIST-PCI-ultrarisc-Add-UltraRISC-DP1000-PCIe-Roo.patch} (98%) rename SPECS/linux/{0138-FROMLIST-serial-8250_dwlib-move-DesignWare-register-.patch => 0137-FROMLIST-serial-8250_dwlib-move-DesignWare-register-.patch} (97%) rename SPECS/linux/{0139-FROMLIST-serial-8250_dw-build-Renesas-RZN1-CPR-value.patch => 0138-FROMLIST-serial-8250_dw-build-Renesas-RZN1-CPR-value.patch} (93%) rename SPECS/linux/{0140-FROMLIST-dt-bindings-serial-snps-dw-apb-uart-Add-Ult.patch => 0139-FROMLIST-dt-bindings-serial-snps-dw-apb-uart-Add-Ult.patch} (89%) rename SPECS/linux/{0141-FROMLIST-serial-8250_dw-Use-a-fixed-CPR-value-for-Ul.patch => 0140-FROMLIST-serial-8250_dw-Use-a-fixed-CPR-value-for-Ul.patch} (93%) rename SPECS/linux/{0142-FROMLIST-riscv-disable-local-interrupts-and-stop-oth.patch => 0141-FROMLIST-riscv-disable-local-interrupts-and-stop-oth.patch} (93%) rename SPECS/linux/{0143-FROMLIST-drm-bridge-th1520-dw-hdmi-Fix-error-check-o.patch => 0142-FROMLIST-drm-bridge-th1520-dw-hdmi-Fix-error-check-o.patch} (87%) rename SPECS/linux/{0144-FROMLIST-drm-bridge-th1520-dw-hdmi-Fix-remove-callba.patch => 0143-FROMLIST-drm-bridge-th1520-dw-hdmi-Fix-remove-callba.patch} (91%) rename SPECS/linux/{0145-FROMLIST-riscv-dts-spacemit-Enable-i2c8-adapter-for-.patch => 0144-FROMLIST-riscv-dts-spacemit-Enable-i2c8-adapter-for-.patch} (85%) rename SPECS/linux/{0146-FROMLIST-riscv-dts-spacemit-Define-the-P1-PMIC-regul.patch => 0145-FROMLIST-riscv-dts-spacemit-Define-the-P1-PMIC-regul.patch} (96%) rename SPECS/linux/{0147-FROMLIST-riscv-dts-spacemit-Enable-USB3.0-PCIe-on-Or.patch => 0146-FROMLIST-riscv-dts-spacemit-Enable-USB3.0-PCIe-on-Or.patch} (95%) rename SPECS/linux/{0148-FROMLIST-dt-bindings-dmaengine-Add-SpacemiT-K3-DMA-c.patch => 0147-FROMLIST-dt-bindings-dmaengine-Add-SpacemiT-K3-DMA-c.patch} (90%) rename SPECS/linux/{0149-FROMLIST-dmaengine-mmp_pdma-refactor-DRCMR-access-wi.patch => 0148-FROMLIST-dmaengine-mmp_pdma-refactor-DRCMR-access-wi.patch} (96%) rename SPECS/linux/{0150-FROMLIST-dmaengine-mmp_pdma-add-SpacemiT-K3-support.patch => 0149-FROMLIST-dmaengine-mmp_pdma-add-SpacemiT-K3-support.patch} (93%) rename SPECS/linux/{0151-FROMLIST-riscv-dts-spacemit-Add-PDMA-controller-node.patch => 0150-FROMLIST-riscv-dts-spacemit-Add-PDMA-controller-node.patch} (91%) rename SPECS/linux/{0152-FROMLIST-dt-bindings-pci-sophgo-Add-dma-coherent-pro.patch => 0151-FROMLIST-dt-bindings-pci-sophgo-Add-dma-coherent-pro.patch} (88%) rename SPECS/linux/{0153-FROMLIST-riscv-dts-sophgo-Add-dma-coherent-to-SG2042.patch => 0152-FROMLIST-riscv-dts-sophgo-Add-dma-coherent-to-SG2042.patch} (90%) rename SPECS/linux/{0154-FROMLIST-riscv-mm-fix-SWIOTLB-initialization-for-sys.patch => 0153-FROMLIST-riscv-mm-fix-SWIOTLB-initialization-for-sys.patch} (95%) rename SPECS/linux/{0155-FROMLIST-riscv-dts-spacemit-k1-bananapi-f3-Add-vcc5v.patch => 0154-FROMLIST-riscv-dts-spacemit-k1-bananapi-f3-Add-vcc5v.patch} (93%) rename SPECS/linux/{0156-FROMLIST-riscv-dts-spacemit-k1-bananapi-f3-Update-US.patch => 0155-FROMLIST-riscv-dts-spacemit-k1-bananapi-f3-Update-US.patch} (91%) rename SPECS/linux/{0157-FROMLIST-riscv-dts-spacemit-k1-bananapi-f3-Correct-U.patch => 0156-FROMLIST-riscv-dts-spacemit-k1-bananapi-f3-Correct-U.patch} (90%) rename SPECS/linux/{0158-FROMLIST-riscv-dts-sophgo-sg2044-use-hex-for-CPU-uni.patch => 0157-FROMLIST-riscv-dts-sophgo-sg2044-use-hex-for-CPU-uni.patch} (99%) rename SPECS/linux/{0159-FROMLIST-riscv-dts-sophgo-sg2042-use-hex-for-CPU-uni.patch => 0158-FROMLIST-riscv-dts-sophgo-sg2042-use-hex-for-CPU-uni.patch} (99%) rename SPECS/linux/{0160-FROMLIST-riscv-Fix-fast_unaligned_access_speed_key-n.patch => 0159-FROMLIST-riscv-Fix-fast_unaligned_access_speed_key-n.patch} (93%) rename SPECS/linux/{0161-FROMLIST-riscv-dts-sophgo-reduce-SG2042-MSI-count-to.patch => 0160-FROMLIST-riscv-dts-sophgo-reduce-SG2042-MSI-count-to.patch} (89%) rename SPECS/linux/{0162-FROMLIST-dt-bindings-pwm-marvell-pxa-pwm-Add-Spacemi.patch => 0161-FROMLIST-dt-bindings-pwm-marvell-pxa-pwm-Add-Spacemi.patch} (94%) rename SPECS/linux/{0163-FROMLIST-pwm-pxa-Add-optional-bus-clock.patch => 0162-FROMLIST-pwm-pxa-Add-optional-bus-clock.patch} (92%) rename SPECS/linux/{0164-FROMLIST-riscv-ftrace-select-HAVE_BUILDTIME_MCOUNT_S.patch => 0163-FROMLIST-riscv-ftrace-select-HAVE_BUILDTIME_MCOUNT_S.patch} (93%) rename SPECS/linux/{0165-FROMLIST-riscv-dts-spacemit-enable-USB3-on-OrangePi-.patch => 0164-FROMLIST-riscv-dts-spacemit-enable-USB3-on-OrangePi-.patch} (90%) rename SPECS/linux/{0166-FROMLIST-dts-riscv-spacemit-correct-32k-clock-freque.patch => 0165-FROMLIST-dts-riscv-spacemit-correct-32k-clock-freque.patch} (91%) rename SPECS/linux/{0167-FROMLIST-ASoC-dt-bindings-add-SpacemiT-K3-SoC-compat.patch => 0166-FROMLIST-ASoC-dt-bindings-add-SpacemiT-K3-SoC-compat.patch} (94%) rename SPECS/linux/{0168-FROMLIST-ASoC-spacemit-add-K3-SoC-support-with-addit.patch => 0167-FROMLIST-ASoC-spacemit-add-K3-SoC-support-with-addit.patch} (96%) rename SPECS/linux/{0169-FROMLIST-ASoC-soc-dai-add-shared-BCLK-clock-for-cros.patch => 0168-FROMLIST-ASoC-soc-dai-add-shared-BCLK-clock-for-cros.patch} (95%) rename SPECS/linux/{0170-FROMLIST-ASoC-soc-pcm-constrain-hw_params-when-DAIs-.patch => 0169-FROMLIST-ASoC-soc-pcm-constrain-hw_params-when-DAIs-.patch} (97%) rename SPECS/linux/{0171-FROMLIST-ASoC-spacemit-declare-shared-BCLK-for-cross.patch => 0170-FROMLIST-ASoC-spacemit-declare-shared-BCLK-for-cross.patch} (88%) rename SPECS/linux/{0172-FROMLIST-spi-spacemit-add-u64-cast-to-NSEC_PER_SEC-t.patch => 0171-FROMLIST-spi-spacemit-add-u64-cast-to-NSEC_PER_SEC-t.patch} (90%) rename SPECS/linux/{0173-FROMLIST-dt-bindings-clock-thead-add-TH1520-MISC-sub.patch => 0172-FROMLIST-dt-bindings-clock-thead-add-TH1520-MISC-sub.patch} (94%) rename SPECS/linux/{0174-FROMLIST-clk-thead-th1520-ap-add-support-for-MISC-su.patch => 0173-FROMLIST-clk-thead-th1520-ap-add-support-for-MISC-su.patch} (96%) rename SPECS/linux/{0175-FROMLIST-riscv-dts-thead-add-device-tree-node-for-MI.patch => 0174-FROMLIST-riscv-dts-thead-add-device-tree-node-for-MI.patch} (94%) rename SPECS/linux/{0176-FROMLIST-dt-bindings-phy-add-binding-for-T-Head-TH15.patch => 0175-FROMLIST-dt-bindings-phy-add-binding-for-T-Head-TH15.patch} (94%) rename SPECS/linux/{0177-FROMLIST-phy-add-a-driver-for-T-Head-TH1520-USB-PHY.patch => 0176-FROMLIST-phy-add-a-driver-for-T-Head-TH1520-USB-PHY.patch} (98%) rename SPECS/linux/{0178-FROMLIST-riscv-dts-thead-add-device-nodes-for-USB.patch => 0177-FROMLIST-riscv-dts-thead-add-device-nodes-for-USB.patch} (93%) rename SPECS/linux/{0179-FROMLIST-dt-bindings-gpio-dwapb-allow-GPIO-hogs.patch => 0178-FROMLIST-dt-bindings-gpio-dwapb-allow-GPIO-hogs.patch} (90%) rename SPECS/linux/{0180-FROMLIST-dt-bindings-usb-vialab-vl817-allow-ports-pr.patch => 0179-FROMLIST-dt-bindings-usb-vialab-vl817-allow-ports-pr.patch} (91%) rename SPECS/linux/{0181-FROMLIST-riscv-dts-thead-lpi4a-sort-nodes.patch => 0180-FROMLIST-riscv-dts-thead-lpi4a-sort-nodes.patch} (91%) rename SPECS/linux/{0182-FROMLIST-riscv-dts-thead-Add-TH1520-I2C-nodes.patch => 0181-FROMLIST-riscv-dts-thead-Add-TH1520-I2C-nodes.patch} (95%) rename SPECS/linux/{0183-FROMLIST-riscv-dts-thead-Add-Lichee-Pi-4A-IO-expansi.patch => 0182-FROMLIST-riscv-dts-thead-Add-Lichee-Pi-4A-IO-expansi.patch} (96%) rename SPECS/linux/{0184-FROMLIST-riscv-dts-thead-enable-USB3-ports-on-Lichee.patch => 0183-FROMLIST-riscv-dts-thead-enable-USB3-ports-on-Lichee.patch} (97%) rename SPECS/linux/{0185-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-add-PMIC-a.patch => 0184-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-add-PMIC-a.patch} (96%) rename SPECS/linux/{0186-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-add-24c04-.patch => 0185-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-add-24c04-.patch} (93%) rename SPECS/linux/{0187-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-enable-QSP.patch => 0186-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-enable-QSP.patch} (93%) rename SPECS/linux/{0188-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-enable-USB.patch => 0187-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-enable-USB.patch} (94%) rename SPECS/linux/{0189-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-enable-PCI.patch => 0188-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-enable-PCI.patch} (93%) rename SPECS/linux/{0190-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-set-defaul.patch => 0189-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-set-defaul.patch} (86%) rename SPECS/linux/{0191-FROMLIST-riscv-dts-spacemit-k3-Add-pwm-support.patch => 0190-FROMLIST-riscv-dts-spacemit-k3-Add-pwm-support.patch} (99%) rename SPECS/linux/{0192-FROMLIST-riscv-use-sysfs_emit-in-cpu_show_ghostwrite.patch => 0191-FROMLIST-riscv-use-sysfs_emit-in-cpu_show_ghostwrite.patch} (92%) rename SPECS/linux/{0193-FROMLIST-clk-spacemit-k3-Switch-to-pll2_d6-as-parent.patch => 0192-FROMLIST-clk-spacemit-k3-Switch-to-pll2_d6-as-parent.patch} (94%) rename SPECS/linux/{0194-FROMLIST-clk-spacemit-k3-Fix-PCIe-clock-register-off.patch => 0193-FROMLIST-clk-spacemit-k3-Fix-PCIe-clock-register-off.patch} (89%) rename SPECS/linux/{0195-FROMLIST-dt-bindings-soc-spacemit-k3-Add-PCIe-DBI-cl.patch => 0194-FROMLIST-dt-bindings-soc-spacemit-k3-Add-PCIe-DBI-cl.patch} (87%) rename SPECS/linux/{0196-FROMLIST-clk-spacemit-k3-Add-PCIe-DBI-clock.patch => 0195-FROMLIST-clk-spacemit-k3-Add-PCIe-DBI-clock.patch} (96%) rename SPECS/linux/{0197-FROMLIST-riscv-dts-spacemit-enable-eMMC-for-OrangePi.patch => 0196-FROMLIST-riscv-dts-spacemit-enable-eMMC-for-OrangePi.patch} (87%) rename SPECS/linux/{0198-FROMLIST-i2c-spacemit-configure-ILCR-IWCR-for-accura.patch => 0197-FROMLIST-i2c-spacemit-configure-ILCR-IWCR-for-accura.patch} (98%) rename SPECS/linux/{0199-FROMLIST-i2c-spacemit-drop-warning-when-clock-freque.patch => 0198-FROMLIST-i2c-spacemit-drop-warning-when-clock-freque.patch} (93%) rename SPECS/linux/{0200-FROMLIST-dt-bindings-mmc-spacemit-sdhci-add-pinctrl-.patch => 0199-FROMLIST-dt-bindings-mmc-spacemit-sdhci-add-pinctrl-.patch} (91%) rename SPECS/linux/{0201-FROMLIST-mmc-sdhci-of-k1-enable-essential-clock-infr.patch => 0200-FROMLIST-mmc-sdhci-of-k1-enable-essential-clock-infr.patch} (94%) rename SPECS/linux/{0202-FROMLIST-mmc-sdhci-of-k1-add-regulator-and-pinctrl-v.patch => 0201-FROMLIST-mmc-sdhci-of-k1-add-regulator-and-pinctrl-v.patch} (96%) rename SPECS/linux/{0203-FROMLIST-mmc-sdhci-of-k1-add-comprehensive-SDR-tunin.patch => 0202-FROMLIST-mmc-sdhci-of-k1-add-comprehensive-SDR-tunin.patch} (98%) rename SPECS/linux/{0204-FROMLIST-riscv-dts-spacemit-k1-add-SD-card-controlle.patch => 0203-FROMLIST-riscv-dts-spacemit-k1-add-SD-card-controlle.patch} (96%) rename SPECS/linux/{0205-FROMLIST-riscv-dts-spacemit-k1-orangepi-rv2-add-SD-c.patch => 0204-FROMLIST-riscv-dts-spacemit-k1-orangepi-rv2-add-SD-c.patch} (92%) rename SPECS/linux/{0206-FROMLIST-riscv-dts-spacemit-k1-bananapi-f3-add-SD-ca.patch => 0205-FROMLIST-riscv-dts-spacemit-k1-bananapi-f3-add-SD-ca.patch} (93%) rename SPECS/linux/{0207-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-add-SD-car.patch => 0206-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-add-SD-car.patch} (95%) rename SPECS/linux/{0208-FROMLIST-riscv-dts-thead-Enable-wifi-on-the-BeagleV-.patch => 0207-FROMLIST-riscv-dts-thead-Enable-wifi-on-the-BeagleV-.patch} (94%) rename SPECS/linux/{0209-FROMLIST-riscv-module-Use-generic-cmp_int-instead-of.patch => 0208-FROMLIST-riscv-module-Use-generic-cmp_int-instead-of.patch} (89%) rename SPECS/linux/{0210-FROMLIST-iommu-riscv-Advertise-Svpbmt-support-to-gen.patch => 0209-FROMLIST-iommu-riscv-Advertise-Svpbmt-support-to-gen.patch} (93%) rename SPECS/linux/{0211-FROMLIST-iommupt-Encode-IOMMU_MMIO-IOMMU_CACHE-via-R.patch => 0210-FROMLIST-iommupt-Encode-IOMMU_MMIO-IOMMU_CACHE-via-R.patch} (94%) rename SPECS/linux/{0212-FROMLIST-riscv-propagate-insert_resource-result-from.patch => 0211-FROMLIST-riscv-propagate-insert_resource-result-from.patch} (89%) rename SPECS/linux/{0213-FROMLIST-PCI-spacemit-k1-Add-device-data-support.patch => 0212-FROMLIST-PCI-spacemit-k1-Add-device-data-support.patch} (95%) rename SPECS/linux/{0214-FROMLIST-PCI-spacemit-k1-Add-multiple-PHY-handles-su.patch => 0213-FROMLIST-PCI-spacemit-k1-Add-multiple-PHY-handles-su.patch} (93%) rename SPECS/linux/{0215-FROMLIST-dt-bindings-PCI-snps-dw-pcie-Add-msi-parent.patch => 0214-FROMLIST-dt-bindings-PCI-snps-dw-pcie-Add-msi-parent.patch} (88%) rename SPECS/linux/{0216-FROMLIST-dt-bindings-PCI-spacemit-Introduce-Spacemit.patch => 0215-FROMLIST-dt-bindings-PCI-spacemit-Introduce-Spacemit.patch} (96%) rename SPECS/linux/{0217-FROMLIST-PCI-spacemit-k1-Add-Spacemit-K3-PCIe-host-c.patch => 0216-FROMLIST-PCI-spacemit-k1-Add-Spacemit-K3-PCIe-host-c.patch} (98%) rename SPECS/linux/{0218-FROMLIST-riscv-dts-spacemit-enable-QSPI-for-OrangePi.patch => 0217-FROMLIST-riscv-dts-spacemit-enable-QSPI-for-OrangePi.patch} (91%) rename SPECS/linux/{0219-FROMLIST-clk-spacemit-k3-fix-USB2-bus-clock.patch => 0218-FROMLIST-clk-spacemit-k3-fix-USB2-bus-clock.patch} (91%) rename SPECS/linux/{0220-FROMLIST-reset-spacemit-k3-fix-USB2-ahb-reset.patch => 0219-FROMLIST-reset-spacemit-k3-fix-USB2-ahb-reset.patch} (92%) rename SPECS/linux/{0221-FROMLIST-dts-riscv-spacemit-k3-Fix-I-O-power-setting.patch => 0220-FROMLIST-dts-riscv-spacemit-k3-Fix-I-O-power-setting.patch} (89%) rename SPECS/linux/{0222-FROMLIST-riscv-dts-spacemit-set-console-baud-rate-on.patch => 0221-FROMLIST-riscv-dts-spacemit-set-console-baud-rate-on.patch} (87%) rename SPECS/linux/{0223-FROMLIST-riscv-dts-spacemit-sort-aliases-on-Milk-V-J.patch => 0222-FROMLIST-riscv-dts-spacemit-sort-aliases-on-Milk-V-J.patch} (85%) rename SPECS/linux/{0224-FROMLIST-riscv-dts-spacemit-enable-eMMC-on-Milk-V-Ju.patch => 0223-FROMLIST-riscv-dts-spacemit-enable-eMMC-on-Milk-V-Ju.patch} (91%) rename SPECS/linux/{0225-FROMLIST-riscv-dts-spacemit-enable-SD-card-support-o.patch => 0224-FROMLIST-riscv-dts-spacemit-enable-SD-card-support-o.patch} (92%) rename SPECS/linux/{0226-FROMLIST-riscv-dts-spacemit-fix-uboot-partition-offs.patch => 0225-FROMLIST-riscv-dts-spacemit-fix-uboot-partition-offs.patch} (87%) rename SPECS/linux/{0227-FROMLIST-riscv-dts-spacemit-add-QSPI-support-for-K3-.patch => 0226-FROMLIST-riscv-dts-spacemit-add-QSPI-support-for-K3-.patch} (96%) rename SPECS/linux/{0228-FROMLIST-pinctrl-spacemit-fix-NULL-check-in-spacemit.patch => 0227-FROMLIST-pinctrl-spacemit-fix-NULL-check-in-spacemit.patch} (92%) rename SPECS/linux/{0229-FROMLIST-riscv-unconditionally-select-ARCH_KEEP_MEMB.patch => 0228-FROMLIST-riscv-unconditionally-select-ARCH_KEEP_MEMB.patch} (88%) rename SPECS/linux/{0230-FROMLIST-riscv-kexec_file-Constrain-segment-placemen.patch => 0229-FROMLIST-riscv-kexec_file-Constrain-segment-placemen.patch} (92%) rename SPECS/linux/{0231-FROMLIST-dt-bindings-riscv-spacemit-Add-K3-CoM260-IF.patch => 0230-FROMLIST-dt-bindings-riscv-spacemit-Add-K3-CoM260-IF.patch} (92%) rename SPECS/linux/{0232-FROMLIST-riscv-dts-spacemit-k3-Initial-support-for-C.patch => 0231-FROMLIST-riscv-dts-spacemit-k3-Initial-support-for-C.patch} (98%) rename SPECS/linux/{0233-FROMLIST-riscv-dts-spacemit-enable-PMIC-on-OrangePi-.patch => 0232-FROMLIST-riscv-dts-spacemit-enable-PMIC-on-OrangePi-.patch} (96%) rename SPECS/linux/{0234-FROMLIST-riscv-dts-spacemit-set-console-baud-rate-on.patch => 0233-FROMLIST-riscv-dts-spacemit-set-console-baud-rate-on.patch} (87%) create mode 100644 SPECS/linux/0234-FROMLIST-riscv-dts-spacemit-k3-Add-Ziccrse-extension.patch create mode 100644 SPECS/linux/0235-FROMLIST-RISC-V-KVM-Enhance-the-logging-check-for-mm.patch delete mode 100644 SPECS/linux/0235-FROMLIST-riscv-mm-Call-mark_new_valid_map-after-hotp.patch create mode 100644 SPECS/linux/0236-FROMLIST-riscv-dts-spacemit-enable-PCIe-on-OrangePi-.patch create mode 100644 SPECS/linux/0237-FROMLIST-iommu-riscv-Add-dependency-between-iommu-an.patch create mode 100644 SPECS/linux/0238-BACKPORT-FROMLIST-riscv-track-effective-hardware-PTE.patch create mode 100644 SPECS/linux/0239-BACKPORT-FROMLIST-riscv-preserve-hardware-updated-A-.patch create mode 100644 SPECS/linux/0240-FROMLIST-riscv-mm-Avoid-spurious-fault-after-hotplug.patch rename SPECS/linux/{0236-XUANTIE-riscv-dts-th1520-add-licheepi4a-16g-support.patch => 0241-XUANTIE-riscv-dts-th1520-add-licheepi4a-16g-support.patch} (91%) rename SPECS/linux/{0237-REVYOS-riscv-dts-th1520-rename-thead-to-xuantie.patch => 0242-REVYOS-riscv-dts-th1520-rename-thead-to-xuantie.patch} (85%) rename SPECS/linux/{0238-REVYOS-riscv-dts-th1520-add-xuantie-th1520-mbox-r.patch => 0243-REVYOS-riscv-dts-th1520-add-xuantie-th1520-mbox-r.patch} (89%) rename SPECS/linux/{0239-SOPHGO-dt-bindings-nvmem-Add-SG2044-eFuse-controller.patch => 0244-SOPHGO-dt-bindings-nvmem-Add-SG2044-eFuse-controller.patch} (92%) rename SPECS/linux/{0240-SOPHGO-nvmem-Add-Sophgo-SG2044-eFuse-driver.patch => 0245-SOPHGO-nvmem-Add-Sophgo-SG2044-eFuse-driver.patch} (97%) rename SPECS/linux/{0241-SOPHGO-riscv-dts-sophgo-sg2044-Add-eFUSE-device.patch => 0246-SOPHGO-riscv-dts-sophgo-sg2044-Add-eFUSE-device.patch} (91%) rename SPECS/linux/{0242-SOPHGO-riscv-sg2042-errata-Replace-thead-cache-clean.patch => 0247-SOPHGO-riscv-sg2042-errata-Replace-thead-cache-clean.patch} (85%) rename SPECS/linux/{0243-SOPHGO-dts-sg2044-Modify-pcie-bar-address.patch => 0248-SOPHGO-dts-sg2044-Modify-pcie-bar-address.patch} (97%) rename SPECS/linux/{0244-REVYSR-dt-bindings-net-ultrarisc-dp1000-gmac-Add-sup.patch => 0249-REVYSR-dt-bindings-net-ultrarisc-dp1000-gmac-Add-sup.patch} (95%) rename SPECS/linux/{0245-REVYSR-net-stmmac-add-support-for-dwmac-5.10a.patch => 0250-REVYSR-net-stmmac-add-support-for-dwmac-5.10a.patch} (87%) rename SPECS/linux/{0246-RVCK-riscv-dts-add-dp1000.dts-for-UltraRIsc-DP1000-S.patch => 0251-RVCK-riscv-dts-add-dp1000.dts-for-UltraRIsc-DP1000-S.patch} (99%) rename SPECS/linux/{0247-RVCK-pinctrl-add-pinctrl-dirver-for-UltraRisc-DP1000.patch => 0252-RVCK-pinctrl-add-pinctrl-dirver-for-UltraRisc-DP1000.patch} (99%) rename SPECS/linux/{0248-RVCK-dts-add-pinctrl-dtsi-dts-for-UltraRisc-DP1000.patch => 0253-RVCK-dts-add-pinctrl-dtsi-dts-for-UltraRisc-DP1000.patch} (97%) rename SPECS/linux/{0249-RVCK-riscv-dp1000-dts-add-the-dts-of-UltraRISC-dp100.patch => 0254-RVCK-riscv-dp1000-dts-add-the-dts-of-UltraRISC-dp100.patch} (98%) rename SPECS/linux/{0250-RVCK-riscv-dp1000-dts-Move-mmc0-node-from-SoC-to-boa.patch => 0255-RVCK-riscv-dp1000-dts-Move-mmc0-node-from-SoC-to-boa.patch} (95%) rename SPECS/linux/{0251-RVCK-riscv-dp1000-plic-add-plic-early-init-supports.patch => 0256-RVCK-riscv-dp1000-plic-add-plic-early-init-supports.patch} (94%) rename SPECS/linux/{0252-RVCK-riscv-dp1000-dts-Move-chosen-node-from-common-t.patch => 0257-RVCK-riscv-dp1000-dts-Move-chosen-node-from-common-t.patch} (93%) rename SPECS/linux/{0253-RVCK-dts-riscv-ultrarisc-Refactor-DP1000-device-tree.patch => 0258-RVCK-dts-riscv-ultrarisc-Refactor-DP1000-device-tree.patch} (99%) rename SPECS/linux/{0254-RVCK-riscv-pinctrl-ultrarisc-Implement-pin-configura.patch => 0259-RVCK-riscv-pinctrl-ultrarisc-Implement-pin-configura.patch} (97%) rename SPECS/linux/{0255-RVCK-riscv-dts-dp1000-add-dts-dtsi-for-Milk-V-Titan-.patch => 0260-RVCK-riscv-dts-dp1000-add-dts-dtsi-for-Milk-V-Titan-.patch} (98%) rename SPECS/linux/{0256-REVYSR-pinctrl-ultrarisc-cleanup-probe-remove.patch => 0261-REVYSR-pinctrl-ultrarisc-cleanup-probe-remove.patch} (94%) rename SPECS/linux/{0257-REVYSR-riscv-dp1000-dts-use-ultrarisc-dp1000-pcie-fo.patch => 0262-REVYSR-riscv-dp1000-dts-use-ultrarisc-dp1000-pcie-fo.patch} (89%) rename SPECS/linux/{0258-ULTRARISC-hwmon-add-corepvt-driver-of-UltraRISC-DP10.patch => 0263-ULTRARISC-hwmon-add-corepvt-driver-of-UltraRISC-DP10.patch} (98%) rename SPECS/linux/{0259-RUYI-SYNC-riscv-dts-dp1000-Update-dp1000.dtsi.patch => 0264-RUYI-SYNC-riscv-dts-dp1000-Update-dp1000.dtsi.patch} (99%) rename SPECS/linux/{0260-RUYI-riscv-dts-spacemit-k3-Add-USB2.0-support.patch => 0265-RUYI-riscv-dts-spacemit-k3-Add-USB2.0-support.patch} (94%) rename SPECS/linux/{0261-SPACEMIT-riscv-uaccess-don-t-use-vector-if-buffer-is.patch => 0266-SPACEMIT-riscv-uaccess-don-t-use-vector-if-buffer-is.patch} (96%) rename SPECS/linux/{0262-RUYI-dt-bindings-phy-Add-Spacemit-K3-USB3-PCIe-comb-.patch => 0267-RUYI-dt-bindings-phy-Add-Spacemit-K3-USB3-PCIe-comb-.patch} (94%) rename SPECS/linux/{0263-RUYI-phy-spacemit-Add-USB3-PCIe-comb-PHY-driver-for-.patch => 0268-RUYI-phy-spacemit-Add-USB3-PCIe-comb-PHY-driver-for-.patch} (99%) rename SPECS/linux/{0264-RUYI-riscv-dts-spacemit-k3-add-USB-controller-and-US.patch => 0269-RUYI-riscv-dts-spacemit-k3-add-USB-controller-and-US.patch} (93%) rename SPECS/linux/{0265-RUYI-riscv-dts-spacemit-k3-Add-PCIe-device-node.patch => 0270-RUYI-riscv-dts-spacemit-k3-Add-PCIe-device-node.patch} (97%) rename SPECS/linux/{0266-RUYI-PCI-add-SpacemiT-vendor-id-and-its-K3-device-id.patch => 0271-RUYI-PCI-add-SpacemiT-vendor-id-and-its-K3-device-id.patch} (84%) rename SPECS/linux/{0267-RUYI-wifi-rtw89-pci-add-SpacemiT-K3-to-36-bit-DMA-al.patch => 0272-RUYI-wifi-rtw89-pci-add-SpacemiT-K3-to-36-bit-DMA-al.patch} (87%) rename SPECS/linux/{0268-RUYI-drm-amdgpu-disable-dynamic-PCIe-speed-switch-on.patch => 0273-RUYI-drm-amdgpu-disable-dynamic-PCIe-speed-switch-on.patch} (85%) rename SPECS/linux/{0269-RVCK-driver-clk-k3-keep-some-system-based-clock-alwa.patch => 0274-RVCK-driver-clk-k3-keep-some-system-based-clock-alwa.patch} (92%) rename SPECS/linux/{0001-RUYI-mmc-sdhci-of-dwcmshc-Add-support-for-SG2042-FPG.patch => 0275-RUYI-mmc-sdhci-of-dwcmshc-Add-support-for-SG2042-FPG.patch} (89%) create mode 100644 SPECS/linux/series diff --git a/SPECS/linux/0001-UPSTREAM-rust-clk-implement-Send-and-Sync.patch b/SPECS/linux/0001-UPSTREAM-rust-clk-implement-Send-and-Sync.patch index 51d4577f5a..f727581bf4 100644 --- a/SPECS/linux/0001-UPSTREAM-rust-clk-implement-Send-and-Sync.patch +++ b/SPECS/linux/0001-UPSTREAM-rust-clk-implement-Send-and-Sync.patch @@ -1,7 +1,7 @@ -From 32e626aa8faf34a07c872f1361c1a54bee79cfa6 Mon Sep 17 00:00:00 2001 +From 3f54eb610b37726f67899513801c0738e778671f Mon Sep 17 00:00:00 2001 From: Alice Ryhl Date: Mon, 23 Feb 2026 10:08:25 +0000 -Subject: [PATCH 001/269] UPSTREAM: rust: clk: implement Send and Sync +Subject: [RUYI PATCH] UPSTREAM: rust: clk: implement Send and Sync These traits are required for drivers to embed the Clk type in their own data structures because driver data structures are usually required to diff --git a/SPECS/linux/0002-UPSTREAM-tyr-remove-impl-Send-Sync-for-TyrData.patch b/SPECS/linux/0002-UPSTREAM-tyr-remove-impl-Send-Sync-for-TyrData.patch index f4c21cefe0..4cea692a3f 100644 --- a/SPECS/linux/0002-UPSTREAM-tyr-remove-impl-Send-Sync-for-TyrData.patch +++ b/SPECS/linux/0002-UPSTREAM-tyr-remove-impl-Send-Sync-for-TyrData.patch @@ -1,7 +1,7 @@ -From dac00a8ef6875cd9259bd95898cbef71645284fa Mon Sep 17 00:00:00 2001 +From a77b1e7035c35ef20cecc8246daaa652c0e37fb5 Mon Sep 17 00:00:00 2001 From: Alice Ryhl Date: Mon, 23 Feb 2026 10:08:26 +0000 -Subject: [PATCH 002/269] UPSTREAM: tyr: remove impl Send/Sync for TyrData +Subject: [RUYI PATCH] UPSTREAM: tyr: remove impl Send/Sync for TyrData Now that clk implements Send and Sync, we no longer need to manually implement these traits for TyrData. Thus remove the implementations. diff --git a/SPECS/linux/0003-UPSTREAM-pwm-th1520-remove-impl-Send-Sync-for-Th1520.patch b/SPECS/linux/0003-UPSTREAM-pwm-th1520-remove-impl-Send-Sync-for-Th1520.patch index 85b6b10347..d2f2157d0c 100644 --- a/SPECS/linux/0003-UPSTREAM-pwm-th1520-remove-impl-Send-Sync-for-Th1520.patch +++ b/SPECS/linux/0003-UPSTREAM-pwm-th1520-remove-impl-Send-Sync-for-Th1520.patch @@ -1,7 +1,7 @@ -From cbac7fc52208de24384218e7f99e0a7ae6902d6a Mon Sep 17 00:00:00 2001 +From 98675c53ff87036feeaa5057ff52b999a55679ed Mon Sep 17 00:00:00 2001 From: Alice Ryhl Date: Mon, 23 Feb 2026 10:08:27 +0000 -Subject: [PATCH 003/269] UPSTREAM: pwm: th1520: remove impl Send/Sync for +Subject: [RUYI PATCH] UPSTREAM: pwm: th1520: remove impl Send/Sync for Th1520PwmDriverData MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 diff --git a/SPECS/linux/0004-UPSTREAM-net-spacemit-Remove-unused-buff_addr-fields.patch b/SPECS/linux/0004-UPSTREAM-net-spacemit-Remove-unused-buff_addr-fields.patch index 8379c24191..6aa2d56750 100644 --- a/SPECS/linux/0004-UPSTREAM-net-spacemit-Remove-unused-buff_addr-fields.patch +++ b/SPECS/linux/0004-UPSTREAM-net-spacemit-Remove-unused-buff_addr-fields.patch @@ -1,8 +1,7 @@ -From 13bee0d695478f82109006c9eba8e86c5a827181 Mon Sep 17 00:00:00 2001 +From 5766fc48be56acab88f1a50368573393fa0305a1 Mon Sep 17 00:00:00 2001 From: Vivian Wang Date: Thu, 5 Mar 2026 15:00:29 +0800 -Subject: [PATCH 004/269] UPSTREAM: net: spacemit: Remove unused buff_addr - fields +Subject: [RUYI PATCH] UPSTREAM: net: spacemit: Remove unused buff_addr fields These were never used. Just remove them. diff --git a/SPECS/linux/0005-UPSTREAM-dt-bindings-net-Add-support-for-Spacemit-K3.patch b/SPECS/linux/0005-UPSTREAM-dt-bindings-net-Add-support-for-Spacemit-K3.patch index 2e08961b35..badbc9faca 100644 --- a/SPECS/linux/0005-UPSTREAM-dt-bindings-net-Add-support-for-Spacemit-K3.patch +++ b/SPECS/linux/0005-UPSTREAM-dt-bindings-net-Add-support-for-Spacemit-K3.patch @@ -1,8 +1,8 @@ -From 1e7406222abdb03a7abe502c45cac01ef23ee2fc Mon Sep 17 00:00:00 2001 +From 1aed9c9b5c8fc861ea231a94eb16317d1a189327 Mon Sep 17 00:00:00 2001 From: Inochi Amaoto Date: Mon, 16 Mar 2026 09:00:37 +0800 -Subject: [PATCH 005/269] UPSTREAM: dt-bindings: net: Add support for Spacemit - K3 dwmac +Subject: [RUYI PATCH] UPSTREAM: dt-bindings: net: Add support for Spacemit K3 + dwmac The GMAC IP on Spacemit K3 is almost a standard Synopsys DesignWare MAC (version 5.40a) with some extra clock. diff --git a/SPECS/linux/0006-UPSTREAM-net-stmmac-platform-Add-snps-dwmac-5.40a-IP.patch b/SPECS/linux/0006-UPSTREAM-net-stmmac-platform-Add-snps-dwmac-5.40a-IP.patch index 43af2bb8ab..b386f36cf0 100644 --- a/SPECS/linux/0006-UPSTREAM-net-stmmac-platform-Add-snps-dwmac-5.40a-IP.patch +++ b/SPECS/linux/0006-UPSTREAM-net-stmmac-platform-Add-snps-dwmac-5.40a-IP.patch @@ -1,8 +1,8 @@ -From 35042675e0055981bd4339b42933d010e151a97f Mon Sep 17 00:00:00 2001 +From b87eb6266c630ca14fc62950df92636440bbd3ac Mon Sep 17 00:00:00 2001 From: Inochi Amaoto Date: Mon, 16 Mar 2026 09:00:38 +0800 -Subject: [PATCH 006/269] UPSTREAM: net: stmmac: platform: Add snps,dwmac-5.40a - IP compatible string +Subject: [RUYI PATCH] UPSTREAM: net: stmmac: platform: Add snps,dwmac-5.40a IP + compatible string Add compatible string for 5.40a version that can avoid to define some platform data in the glue layer. diff --git a/SPECS/linux/0007-UPSTREAM-net-stmmac-Add-glue-layer-for-Spacemit-K3-S.patch b/SPECS/linux/0007-UPSTREAM-net-stmmac-Add-glue-layer-for-Spacemit-K3-S.patch index 496cd6a6a2..72cb4be85b 100644 --- a/SPECS/linux/0007-UPSTREAM-net-stmmac-Add-glue-layer-for-Spacemit-K3-S.patch +++ b/SPECS/linux/0007-UPSTREAM-net-stmmac-Add-glue-layer-for-Spacemit-K3-S.patch @@ -1,7 +1,7 @@ -From 844ab29e418ac63ed5c3d3f9fe3336cca312ca83 Mon Sep 17 00:00:00 2001 +From 1111d25f0f3b5f222aa200de96d68b736167267f Mon Sep 17 00:00:00 2001 From: Inochi Amaoto Date: Mon, 16 Mar 2026 09:00:39 +0800 -Subject: [PATCH 007/269] UPSTREAM: net: stmmac: Add glue layer for Spacemit K3 +Subject: [RUYI PATCH] UPSTREAM: net: stmmac: Add glue layer for Spacemit K3 SoC The ethernet controller on Spacemit K3 SoC is Synopsys DesignWare diff --git a/SPECS/linux/0008-UPSTREAM-drm-imagination-Improve-handling-of-unknown.patch b/SPECS/linux/0008-UPSTREAM-drm-imagination-Improve-handling-of-unknown.patch index d15c0beee5..d857e5156a 100644 --- a/SPECS/linux/0008-UPSTREAM-drm-imagination-Improve-handling-of-unknown.patch +++ b/SPECS/linux/0008-UPSTREAM-drm-imagination-Improve-handling-of-unknown.patch @@ -1,8 +1,8 @@ -From 1e781e2ba620529c68644f4788a346b991b47dba Mon Sep 17 00:00:00 2001 +From 3fa38dee57c6dfdc25c2cb94b508edb6917fcdc4 Mon Sep 17 00:00:00 2001 From: Matt Coster Date: Fri, 6 Feb 2026 16:02:12 +0000 -Subject: [PATCH 008/269] UPSTREAM: drm/imagination: Improve handling of - unknown FWCCB commands +Subject: [RUYI PATCH] UPSTREAM: drm/imagination: Improve handling of unknown + FWCCB commands A couple small changes: - Validate the magic value at the head of FWCCB commands, and diff --git a/SPECS/linux/0009-UPSTREAM-drm-imagination-Mark-FWCCB_CMD_UPDATE_STATS.patch b/SPECS/linux/0009-UPSTREAM-drm-imagination-Mark-FWCCB_CMD_UPDATE_STATS.patch index 7aff3cd3a0..a53c57f617 100644 --- a/SPECS/linux/0009-UPSTREAM-drm-imagination-Mark-FWCCB_CMD_UPDATE_STATS.patch +++ b/SPECS/linux/0009-UPSTREAM-drm-imagination-Mark-FWCCB_CMD_UPDATE_STATS.patch @@ -1,8 +1,8 @@ -From 82d9f60a95285445282c42b28590778d2fd7437e Mon Sep 17 00:00:00 2001 +From 95b245031f0856b75f157d12a7b6d8e41544204a Mon Sep 17 00:00:00 2001 From: Matt Coster Date: Fri, 6 Feb 2026 16:02:13 +0000 -Subject: [PATCH 009/269] UPSTREAM: drm/imagination: Mark - FWCCB_CMD_UPDATE_STATS as known +Subject: [RUYI PATCH] UPSTREAM: drm/imagination: Mark FWCCB_CMD_UPDATE_STATS + as known Suppress the "unknown type" warning when processing a FWCCB command of type CMD_UPDATE_STATS which is known but (currently) unused. diff --git a/SPECS/linux/0010-UPSTREAM-drm-imagination-Improve-firmware-power-off-.patch b/SPECS/linux/0010-UPSTREAM-drm-imagination-Improve-firmware-power-off-.patch index 98d6d2a8b0..eeb059e7b0 100644 --- a/SPECS/linux/0010-UPSTREAM-drm-imagination-Improve-firmware-power-off-.patch +++ b/SPECS/linux/0010-UPSTREAM-drm-imagination-Improve-firmware-power-off-.patch @@ -1,7 +1,7 @@ -From 522b99e4644148a2c6ad8676e6bddf1908da1406 Mon Sep 17 00:00:00 2001 +From 6cc5cddda02fd86187b713bcf88f9cf8fd2630c3 Mon Sep 17 00:00:00 2001 From: Brajesh Gupta Date: Fri, 13 Mar 2026 06:38:24 +0000 -Subject: [PATCH 010/269] UPSTREAM: drm/imagination: Improve firmware power off +Subject: [RUYI PATCH] UPSTREAM: drm/imagination: Improve firmware power off for layout_mars config In layout_mars HW config, Firmware MCU moved from Sidekick to new Mars diff --git a/SPECS/linux/0011-UPSTREAM-drm-imagination-Skip-2nd-thread-DM-associat.patch b/SPECS/linux/0011-UPSTREAM-drm-imagination-Skip-2nd-thread-DM-associat.patch index 429bd33818..9e9a8ec4d2 100644 --- a/SPECS/linux/0011-UPSTREAM-drm-imagination-Skip-2nd-thread-DM-associat.patch +++ b/SPECS/linux/0011-UPSTREAM-drm-imagination-Skip-2nd-thread-DM-associat.patch @@ -1,7 +1,7 @@ -From 33316f50c56ad0f90cbead2c681ff5006a565205 Mon Sep 17 00:00:00 2001 +From 7a98a5855cdcefc0e58a77bd95f3f198732f8979 Mon Sep 17 00:00:00 2001 From: Brajesh Gupta Date: Fri, 13 Mar 2026 06:38:25 +0000 -Subject: [PATCH 011/269] UPSTREAM: drm/imagination: Skip 2nd thread DM +Subject: [RUYI PATCH] UPSTREAM: drm/imagination: Skip 2nd thread DM association for non META Firmware Only a META firmware can have two threads. diff --git a/SPECS/linux/0012-UPSTREAM-drm-imagination-Add-missing-rogue-context-r.patch b/SPECS/linux/0012-UPSTREAM-drm-imagination-Add-missing-rogue-context-r.patch index 6ae8413920..299ca155e3 100644 --- a/SPECS/linux/0012-UPSTREAM-drm-imagination-Add-missing-rogue-context-r.patch +++ b/SPECS/linux/0012-UPSTREAM-drm-imagination-Add-missing-rogue-context-r.patch @@ -1,7 +1,7 @@ -From 74e36a3e32847bbe65aa3a9a29a841e9a1a287ad Mon Sep 17 00:00:00 2001 +From 4bb20fb967b9fde691b582965e6481ad3422bd78 Mon Sep 17 00:00:00 2001 From: Alexandru Dadu Date: Mon, 23 Mar 2026 20:31:28 +0200 -Subject: [PATCH 012/269] UPSTREAM: drm/imagination: Add missing rogue context +Subject: [RUYI PATCH] UPSTREAM: drm/imagination: Add missing rogue context reset reasons Update the context reset reason enum with the missing reset reasons in diff --git a/SPECS/linux/0013-UPSTREAM-drm-imagination-Implement-handling-of-conte.patch b/SPECS/linux/0013-UPSTREAM-drm-imagination-Implement-handling-of-conte.patch index 9805d9c009..35a50d2060 100644 --- a/SPECS/linux/0013-UPSTREAM-drm-imagination-Implement-handling-of-conte.patch +++ b/SPECS/linux/0013-UPSTREAM-drm-imagination-Implement-handling-of-conte.patch @@ -1,8 +1,8 @@ -From 38d25068d294339e76dd47a93aa9d99e760faf95 Mon Sep 17 00:00:00 2001 +From 992d53125289da2ed35b94d39033965633eeb01a Mon Sep 17 00:00:00 2001 From: Alexandru Dadu Date: Mon, 23 Mar 2026 20:31:30 +0200 -Subject: [PATCH 013/269] UPSTREAM: drm/imagination: Implement handling of - context reset notification +Subject: [RUYI PATCH] UPSTREAM: drm/imagination: Implement handling of context + reset notification The firmware will send the context reset notification message as part of handling hardware recovery (HWR) events deecoding the message diff --git a/SPECS/linux/0014-UPSTREAM-dt-bindings-vendor-prefixes-add-verisilicon.patch b/SPECS/linux/0014-UPSTREAM-dt-bindings-vendor-prefixes-add-verisilicon.patch index 9941e00704..670c827cfc 100644 --- a/SPECS/linux/0014-UPSTREAM-dt-bindings-vendor-prefixes-add-verisilicon.patch +++ b/SPECS/linux/0014-UPSTREAM-dt-bindings-vendor-prefixes-add-verisilicon.patch @@ -1,8 +1,7 @@ -From 86fa00014bbc21edb0a54d8889ec0dd041d97294 Mon Sep 17 00:00:00 2001 +From 7d3364edcd6a443dea3c653117830d499c23f554 Mon Sep 17 00:00:00 2001 From: Icenowy Zheng Date: Thu, 29 Jan 2026 10:39:15 +0800 -Subject: [PATCH 014/269] UPSTREAM: dt-bindings: vendor-prefixes: add - verisilicon +Subject: [RUYI PATCH] UPSTREAM: dt-bindings: vendor-prefixes: add verisilicon VeriSilicon is a Silicon IP vendor, which is the current owner of Vivante series video-related IPs and Hantro series video codec IPs. diff --git a/SPECS/linux/0015-UPSTREAM-dt-bindings-display-add-verisilicon-dc.patch b/SPECS/linux/0015-UPSTREAM-dt-bindings-display-add-verisilicon-dc.patch index 4d2a99ee15..39f5c4f017 100644 --- a/SPECS/linux/0015-UPSTREAM-dt-bindings-display-add-verisilicon-dc.patch +++ b/SPECS/linux/0015-UPSTREAM-dt-bindings-display-add-verisilicon-dc.patch @@ -1,7 +1,7 @@ -From da348c6ec0ee62a6ce3e8b4ef60eea6befa0eeab Mon Sep 17 00:00:00 2001 +From 2bee5931b9eb68b84da4bc4686476ead9489059c Mon Sep 17 00:00:00 2001 From: Icenowy Zheng Date: Thu, 29 Jan 2026 10:39:16 +0800 -Subject: [PATCH 015/269] UPSTREAM: dt-bindings: display: add verisilicon,dc +Subject: [RUYI PATCH] UPSTREAM: dt-bindings: display: add verisilicon,dc Verisilicon has a series of display controllers prefixed with DC and with self-identification facility like their GC series GPUs. diff --git a/SPECS/linux/0016-UPSTREAM-drm-verisilicon-add-a-driver-for-Verisilico.patch b/SPECS/linux/0016-UPSTREAM-drm-verisilicon-add-a-driver-for-Verisilico.patch index d6750eb3fc..3ac8f40440 100644 --- a/SPECS/linux/0016-UPSTREAM-drm-verisilicon-add-a-driver-for-Verisilico.patch +++ b/SPECS/linux/0016-UPSTREAM-drm-verisilicon-add-a-driver-for-Verisilico.patch @@ -1,8 +1,8 @@ -From 2ca89890f1a13910f9a3e9dcebbb0043a3909f54 Mon Sep 17 00:00:00 2001 +From 992a45de879887311976295d6b73b3dc0f719ebc Mon Sep 17 00:00:00 2001 From: Icenowy Zheng Date: Thu, 29 Jan 2026 10:39:17 +0800 -Subject: [PATCH 016/269] UPSTREAM: drm: verisilicon: add a driver for - Verisilicon display controllers +Subject: [RUYI PATCH] UPSTREAM: drm: verisilicon: add a driver for Verisilicon + display controllers This is a from-scratch driver targeting Verisilicon DC-series display controllers, which feature self-identification functionality like their diff --git a/SPECS/linux/0017-UPSTREAM-dt-bindings-display-bridge-add-binding-for-.patch b/SPECS/linux/0017-UPSTREAM-dt-bindings-display-bridge-add-binding-for-.patch index c5abc73bf4..5bc999ca35 100644 --- a/SPECS/linux/0017-UPSTREAM-dt-bindings-display-bridge-add-binding-for-.patch +++ b/SPECS/linux/0017-UPSTREAM-dt-bindings-display-bridge-add-binding-for-.patch @@ -1,8 +1,8 @@ -From e8de64d708a84beef39575a6b434ff0890c2169b Mon Sep 17 00:00:00 2001 +From ed1be580f527074f99d1b00510bfe2d2d40709df Mon Sep 17 00:00:00 2001 From: Icenowy Zheng Date: Thu, 29 Jan 2026 10:39:18 +0800 -Subject: [PATCH 017/269] UPSTREAM: dt-bindings: display/bridge: add binding - for TH1520 HDMI controller +Subject: [RUYI PATCH] UPSTREAM: dt-bindings: display/bridge: add binding for + TH1520 HDMI controller T-Head TH1520 SoC contains a Synopsys DesignWare HDMI controller paired with DesignWare HDMI PHY, with an extra clock gate for HDMI pixel clock diff --git a/SPECS/linux/0018-UPSTREAM-drm-bridge-add-a-driver-for-T-Head-TH1520-H.patch b/SPECS/linux/0018-UPSTREAM-drm-bridge-add-a-driver-for-T-Head-TH1520-H.patch index 9a2cb514eb..9040245b2c 100644 --- a/SPECS/linux/0018-UPSTREAM-drm-bridge-add-a-driver-for-T-Head-TH1520-H.patch +++ b/SPECS/linux/0018-UPSTREAM-drm-bridge-add-a-driver-for-T-Head-TH1520-H.patch @@ -1,7 +1,7 @@ -From 5c7ee13986715018eed1b0d6ed85af9469933e2b Mon Sep 17 00:00:00 2001 +From 8f4c23fbbe5b4f710b06bdb1e40b52c84340ce3f Mon Sep 17 00:00:00 2001 From: Icenowy Zheng Date: Thu, 29 Jan 2026 10:39:19 +0800 -Subject: [PATCH 018/269] UPSTREAM: drm/bridge: add a driver for T-Head TH1520 +Subject: [RUYI PATCH] UPSTREAM: drm/bridge: add a driver for T-Head TH1520 HDMI controller T-Head TH1520 SoC contains a Synopsys DesignWare HDMI controller (paired diff --git a/SPECS/linux/0019-UPSTREAM-dt-bindings-mfd-spacemit-p1-Add-individual-.patch b/SPECS/linux/0019-UPSTREAM-dt-bindings-mfd-spacemit-p1-Add-individual-.patch index 47ac48fd8c..7e7a3d474d 100644 --- a/SPECS/linux/0019-UPSTREAM-dt-bindings-mfd-spacemit-p1-Add-individual-.patch +++ b/SPECS/linux/0019-UPSTREAM-dt-bindings-mfd-spacemit-p1-Add-individual-.patch @@ -1,8 +1,8 @@ -From c27659adb8ff66b7d690aba80400f8996f00a247 Mon Sep 17 00:00:00 2001 +From cea0787ce8056c7b05f8654c6a768d950eea234f Mon Sep 17 00:00:00 2001 From: Guodong Xu Date: Fri, 6 Feb 2026 10:32:02 +0800 -Subject: [PATCH 019/269] UPSTREAM: dt-bindings: mfd: spacemit,p1: Add - individual regulator supply properties +Subject: [RUYI PATCH] UPSTREAM: dt-bindings: mfd: spacemit,p1: Add individual + regulator supply properties Add supply properties that match the P1 PMIC's actual hardware topology where each buck converter has its own VIN pin and LDO groups share diff --git a/SPECS/linux/0020-UPSTREAM-regulator-spacemit-p1-Update-supply-names.patch b/SPECS/linux/0020-UPSTREAM-regulator-spacemit-p1-Update-supply-names.patch index b4f6ebf06c..5093cd5f34 100644 --- a/SPECS/linux/0020-UPSTREAM-regulator-spacemit-p1-Update-supply-names.patch +++ b/SPECS/linux/0020-UPSTREAM-regulator-spacemit-p1-Update-supply-names.patch @@ -1,7 +1,7 @@ -From 8428e9f6c9dacf79dc0905aed3db711b7bff5a59 Mon Sep 17 00:00:00 2001 +From 85343501c8c4a3b7c88ff45b945213064b197975 Mon Sep 17 00:00:00 2001 From: Guodong Xu Date: Fri, 6 Feb 2026 10:32:03 +0800 -Subject: [PATCH 020/269] UPSTREAM: regulator: spacemit-p1: Update supply names +Subject: [RUYI PATCH] UPSTREAM: regulator: spacemit-p1: Update supply names Update supply names to match the P1 PMIC's actual hardware pinout where each buck has an individual VIN pin (vin1-vin6) and LDO groups have diff --git a/SPECS/linux/0021-UPSTREAM-mmc-sdhci-of-k1-add-reset-support.patch b/SPECS/linux/0021-UPSTREAM-mmc-sdhci-of-k1-add-reset-support.patch index ba4b02510c..3978e98199 100644 --- a/SPECS/linux/0021-UPSTREAM-mmc-sdhci-of-k1-add-reset-support.patch +++ b/SPECS/linux/0021-UPSTREAM-mmc-sdhci-of-k1-add-reset-support.patch @@ -1,7 +1,7 @@ -From 49446b9b5652ede3c857da8ace5bf329df41b2cb Mon Sep 17 00:00:00 2001 +From 90b207c5e43b4e0d9fba86ef988b9b08026078de Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Tue, 23 Dec 2025 10:24:50 +0800 -Subject: [PATCH 021/269] UPSTREAM: mmc: sdhci-of-k1: add reset support +Subject: [RUYI PATCH] UPSTREAM: mmc: sdhci-of-k1: add reset support The SDHCI controller of SpacemiT K1 SoC requires two resets, add support to explicitly request the reset line and deassert during diff --git a/SPECS/linux/0022-UPSTREAM-dt-bindings-mmc-spacemit-sdhci-add-support-.patch b/SPECS/linux/0022-UPSTREAM-dt-bindings-mmc-spacemit-sdhci-add-support-.patch index 9ae5fac256..2e851166b9 100644 --- a/SPECS/linux/0022-UPSTREAM-dt-bindings-mmc-spacemit-sdhci-add-support-.patch +++ b/SPECS/linux/0022-UPSTREAM-dt-bindings-mmc-spacemit-sdhci-add-support-.patch @@ -1,8 +1,8 @@ -From 89351aec08d522ddfbba5fb204ff212cf00ee26e Mon Sep 17 00:00:00 2001 +From f07e982850d3ae363adbd141b80108da63da642b Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Thu, 22 Jan 2026 17:37:30 +0800 -Subject: [PATCH 022/269] UPSTREAM: dt-bindings: mmc: spacemit,sdhci: add - support for K3 SoC +Subject: [RUYI PATCH] UPSTREAM: dt-bindings: mmc: spacemit,sdhci: add support + for K3 SoC The SDHCI controller found on SpacemiT K3 SoC share the same IP with K1 generation, while fixed the broken 64BIT DMA issue. Introduce a diff --git a/SPECS/linux/0023-UPSTREAM-mmc-sdhci-of-k1-spacemit-Add-support-for-K3.patch b/SPECS/linux/0023-UPSTREAM-mmc-sdhci-of-k1-spacemit-Add-support-for-K3.patch index e7db76e054..69070fb5a2 100644 --- a/SPECS/linux/0023-UPSTREAM-mmc-sdhci-of-k1-spacemit-Add-support-for-K3.patch +++ b/SPECS/linux/0023-UPSTREAM-mmc-sdhci-of-k1-spacemit-Add-support-for-K3.patch @@ -1,8 +1,8 @@ -From 57ff3302c7e1a5be2572cc607e6243267ef5f37b Mon Sep 17 00:00:00 2001 +From 9daeb4a536f71bfe6a633cd2699921998bbb6418 Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Thu, 22 Jan 2026 17:37:31 +0800 -Subject: [PATCH 023/269] UPSTREAM: mmc: sdhci-of-k1: spacemit: Add support for - K3 SoC +Subject: [RUYI PATCH] UPSTREAM: mmc: sdhci-of-k1: spacemit: Add support for K3 + SoC The SDHCI controller found on SpacemiT K3 SoC share the same IP with K1 generation and introduce a compatible data to denote the change that broken diff --git a/SPECS/linux/0024-UPSTREAM-dt-bindings-hwmon-moortec-mr75203-adapt-mul.patch b/SPECS/linux/0024-UPSTREAM-dt-bindings-hwmon-moortec-mr75203-adapt-mul.patch index 462862ed3b..e5e57ede2f 100644 --- a/SPECS/linux/0024-UPSTREAM-dt-bindings-hwmon-moortec-mr75203-adapt-mul.patch +++ b/SPECS/linux/0024-UPSTREAM-dt-bindings-hwmon-moortec-mr75203-adapt-mul.patch @@ -1,7 +1,7 @@ -From dfabed26dc6ae1b5469ed7d5e6bf03ff5870fe96 Mon Sep 17 00:00:00 2001 +From 57d5e402524d9ff1f3736ea17f619ed4e28921d9 Mon Sep 17 00:00:00 2001 From: Icenowy Zheng Date: Tue, 10 Mar 2026 00:24:56 +0800 -Subject: [PATCH 024/269] UPSTREAM: dt-bindings: hwmon: moortec,mr75203: adapt +Subject: [RUYI PATCH] UPSTREAM: dt-bindings: hwmon: moortec,mr75203: adapt multipleOf for T-Head TH1520 The G and J coefficients provided by T-Head TH1520 manual (which calls diff --git a/SPECS/linux/0025-UPSTREAM-riscv-dts-thead-add-DPU-and-HDMI-device-tre.patch b/SPECS/linux/0025-UPSTREAM-riscv-dts-thead-add-DPU-and-HDMI-device-tre.patch index a9010769c1..f383f11b2e 100644 --- a/SPECS/linux/0025-UPSTREAM-riscv-dts-thead-add-DPU-and-HDMI-device-tre.patch +++ b/SPECS/linux/0025-UPSTREAM-riscv-dts-thead-add-DPU-and-HDMI-device-tre.patch @@ -1,7 +1,7 @@ -From ea2c1e85b699fc3c114e255f51d7630dd2d57654 Mon Sep 17 00:00:00 2001 +From cada81866815ff90f7d108bf24e4248f30638644 Mon Sep 17 00:00:00 2001 From: Icenowy Zheng Date: Thu, 29 Jan 2026 10:39:20 +0800 -Subject: [PATCH 025/269] UPSTREAM: riscv: dts: thead: add DPU and HDMI device +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: thead: add DPU and HDMI device tree nodes T-Head TH1520 SoC contains a Verisilicon DC8200 display controller diff --git a/SPECS/linux/0026-UPSTREAM-riscv-dts-thead-lichee-pi-4a-enable-HDMI.patch b/SPECS/linux/0026-UPSTREAM-riscv-dts-thead-lichee-pi-4a-enable-HDMI.patch index 91730f296f..f22f4acd8e 100644 --- a/SPECS/linux/0026-UPSTREAM-riscv-dts-thead-lichee-pi-4a-enable-HDMI.patch +++ b/SPECS/linux/0026-UPSTREAM-riscv-dts-thead-lichee-pi-4a-enable-HDMI.patch @@ -1,8 +1,7 @@ -From 51696f7b0480c9f64849dc1c3f893da4dda2fc76 Mon Sep 17 00:00:00 2001 +From 5a28dc8e0e5728a367d1e79fe2703ce452c017f6 Mon Sep 17 00:00:00 2001 From: Icenowy Zheng Date: Thu, 29 Jan 2026 10:39:21 +0800 -Subject: [PATCH 026/269] UPSTREAM: riscv: dts: thead: lichee-pi-4a: enable - HDMI +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: thead: lichee-pi-4a: enable HDMI Lichee Pi 4A board features a HDMI Type-A connector connected to the HDMI TX controller of TH1520 SoC. diff --git a/SPECS/linux/0027-UPSTREAM-riscv-dts-thead-th1520-add-coefficients-to-.patch b/SPECS/linux/0027-UPSTREAM-riscv-dts-thead-th1520-add-coefficients-to-.patch index 835fef3e37..ef4ba859b4 100644 --- a/SPECS/linux/0027-UPSTREAM-riscv-dts-thead-th1520-add-coefficients-to-.patch +++ b/SPECS/linux/0027-UPSTREAM-riscv-dts-thead-th1520-add-coefficients-to-.patch @@ -1,8 +1,8 @@ -From 7753a7edfccf1f16df111bbb87464d07c82ba49a Mon Sep 17 00:00:00 2001 +From eb079b0d7eaaf150988b0daa889f6334018c7848 Mon Sep 17 00:00:00 2001 From: Icenowy Zheng Date: Tue, 10 Mar 2026 00:24:57 +0800 -Subject: [PATCH 027/269] UPSTREAM: riscv: dts: thead: th1520: add coefficients - to the PVT node +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: thead: th1520: add coefficients to + the PVT node The manual of TH1520 contains a set of coefficients a little different to the driver default ones. diff --git a/SPECS/linux/0028-UPSTREAM-riscv-dts-thead-beaglev-ahead-enable-HDMI-o.patch b/SPECS/linux/0028-UPSTREAM-riscv-dts-thead-beaglev-ahead-enable-HDMI-o.patch index cea0b884ee..792f5dc903 100644 --- a/SPECS/linux/0028-UPSTREAM-riscv-dts-thead-beaglev-ahead-enable-HDMI-o.patch +++ b/SPECS/linux/0028-UPSTREAM-riscv-dts-thead-beaglev-ahead-enable-HDMI-o.patch @@ -1,8 +1,8 @@ -From 3751524813fc46f2b9cb044ed110fc489d5765a7 Mon Sep 17 00:00:00 2001 +From b77cd9567fbc0337667a601979b262a815c1e7c2 Mon Sep 17 00:00:00 2001 From: Robert Mazur Date: Wed, 25 Mar 2026 09:18:59 +0100 -Subject: [PATCH 028/269] UPSTREAM: riscv: dts: thead: beaglev-ahead: enable - HDMI output +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: thead: beaglev-ahead: enable HDMI + output The BeagleV Ahead board includes a micro HDMI connector (Type-D) wired to the TH1520 SoC's HDMI transmitter. diff --git a/SPECS/linux/0029-UPSTREAM-i2c-spacemit-move-i2c_xfer_msg.patch b/SPECS/linux/0029-UPSTREAM-i2c-spacemit-move-i2c_xfer_msg.patch index aef4b67538..d9cd408015 100644 --- a/SPECS/linux/0029-UPSTREAM-i2c-spacemit-move-i2c_xfer_msg.patch +++ b/SPECS/linux/0029-UPSTREAM-i2c-spacemit-move-i2c_xfer_msg.patch @@ -1,7 +1,7 @@ -From ca8f0147958660e97976db95f3e8944992cb2b00 Mon Sep 17 00:00:00 2001 +From 5b234af9b55bdbb9547c37df8d28cdb8abfae6ae Mon Sep 17 00:00:00 2001 From: Troy Mitchell Date: Sat, 7 Feb 2026 23:08:21 +0800 -Subject: [PATCH 029/269] UPSTREAM: i2c: spacemit: move i2c_xfer_msg() +Subject: [RUYI PATCH] UPSTREAM: i2c: spacemit: move i2c_xfer_msg() The upcoming PIO support requires a wait_pio_xfer() helper, which is invoked from xfer_msg(). diff --git a/SPECS/linux/0030-UPSTREAM-i2c-spacemit-introduce-pio-for-k1.patch b/SPECS/linux/0030-UPSTREAM-i2c-spacemit-introduce-pio-for-k1.patch index a5bc66e970..c486135fe9 100644 --- a/SPECS/linux/0030-UPSTREAM-i2c-spacemit-introduce-pio-for-k1.patch +++ b/SPECS/linux/0030-UPSTREAM-i2c-spacemit-introduce-pio-for-k1.patch @@ -1,7 +1,7 @@ -From 99d654e69ac2fce074257e7df304c05145c96d7f Mon Sep 17 00:00:00 2001 +From 6f59c024e794c022c26891390ee88fa3281b75e2 Mon Sep 17 00:00:00 2001 From: Troy Mitchell Date: Sat, 7 Feb 2026 23:08:22 +0800 -Subject: [PATCH 030/269] UPSTREAM: i2c: spacemit: introduce pio for k1 +Subject: [RUYI PATCH] UPSTREAM: i2c: spacemit: introduce pio for k1 This patch introduces I2C PIO functionality for the Spacemit K1 SoC, enabling the use of I2C in atomic context. diff --git a/SPECS/linux/0031-UPSTREAM-pinctrl-spacemit-return-ENOTSUPP-for-unsupp.patch b/SPECS/linux/0031-UPSTREAM-pinctrl-spacemit-return-ENOTSUPP-for-unsupp.patch index 884c34a81c..fd72379a0c 100644 --- a/SPECS/linux/0031-UPSTREAM-pinctrl-spacemit-return-ENOTSUPP-for-unsupp.patch +++ b/SPECS/linux/0031-UPSTREAM-pinctrl-spacemit-return-ENOTSUPP-for-unsupp.patch @@ -1,7 +1,7 @@ -From 37bfdd9267f3e05a571f741d27e2be7d95ac0c39 Mon Sep 17 00:00:00 2001 +From 6d60005d031747f97a95aeb53ada85deaad0485f Mon Sep 17 00:00:00 2001 From: Junhui Liu Date: Thu, 12 Mar 2026 16:42:42 +0800 -Subject: [PATCH 031/269] UPSTREAM: pinctrl: spacemit: return -ENOTSUPP for +Subject: [RUYI PATCH] UPSTREAM: pinctrl: spacemit: return -ENOTSUPP for unsupported pin configurations Return -ENOTSUPP instead of -EINVAL when encountering unsupported pin diff --git a/SPECS/linux/0032-UPSTREAM-gpio-spacemit-k1-Add-set_config-callback-su.patch b/SPECS/linux/0032-UPSTREAM-gpio-spacemit-k1-Add-set_config-callback-su.patch index 38d84d98b1..d543dda0d3 100644 --- a/SPECS/linux/0032-UPSTREAM-gpio-spacemit-k1-Add-set_config-callback-su.patch +++ b/SPECS/linux/0032-UPSTREAM-gpio-spacemit-k1-Add-set_config-callback-su.patch @@ -1,7 +1,7 @@ -From 7e8738b353b5990d25948e7c3537149c311beb52 Mon Sep 17 00:00:00 2001 +From eb0bfa60765ecbd42d2473d893ad3e767b94a7b3 Mon Sep 17 00:00:00 2001 From: Junhui Liu Date: Thu, 12 Mar 2026 16:42:43 +0800 -Subject: [PATCH 032/269] UPSTREAM: gpio: spacemit-k1: Add set_config callback +Subject: [RUYI PATCH] UPSTREAM: gpio: spacemit-k1: Add set_config callback support Assign gpiochip_generic_config() to the set_config() callback to support diff --git a/SPECS/linux/0033-UPSTREAM-riscv-dts-spacemit-Update-PMIC-supply-prope.patch b/SPECS/linux/0033-UPSTREAM-riscv-dts-spacemit-Update-PMIC-supply-prope.patch index b1736c4c3a..0652512036 100644 --- a/SPECS/linux/0033-UPSTREAM-riscv-dts-spacemit-Update-PMIC-supply-prope.patch +++ b/SPECS/linux/0033-UPSTREAM-riscv-dts-spacemit-Update-PMIC-supply-prope.patch @@ -1,7 +1,7 @@ -From f836055f93cdd62be774990e5acc58644439ac72 Mon Sep 17 00:00:00 2001 +From a24a5a9a5c99bae245862e7b456a4b3a713e48d8 Mon Sep 17 00:00:00 2001 From: Guodong Xu Date: Fri, 6 Feb 2026 10:32:04 +0800 -Subject: [PATCH 033/269] UPSTREAM: riscv: dts: spacemit: Update PMIC supply +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: spacemit: Update PMIC supply properties for BPI-F3 and Jupiter Use per-regulator supply names in pmic "spacemit,p1" node to specify diff --git a/SPECS/linux/0034-UPSTREAM-riscv-dts-spacemit-adapt-regulator-node-nam.patch b/SPECS/linux/0034-UPSTREAM-riscv-dts-spacemit-adapt-regulator-node-nam.patch index 1eda916afe..8134bdeaef 100644 --- a/SPECS/linux/0034-UPSTREAM-riscv-dts-spacemit-adapt-regulator-node-nam.patch +++ b/SPECS/linux/0034-UPSTREAM-riscv-dts-spacemit-adapt-regulator-node-nam.patch @@ -1,7 +1,7 @@ -From 9b4d81f61deba40c33135d9f87e3a1438f2b1ba4 Mon Sep 17 00:00:00 2001 +From 3dfde5da94b932865e0d30178d63853ab3782636 Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Thu, 26 Feb 2026 09:35:00 +0000 -Subject: [PATCH 034/269] UPSTREAM: riscv: dts: spacemit: adapt regulator node +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: spacemit: adapt regulator node name to preferred form The preferred node name for fixed-regulators has changed to pattern [1]: diff --git a/SPECS/linux/0035-UPSTREAM-riscv-dts-spacemit-Add-linux-pci-domain-to-.patch b/SPECS/linux/0035-UPSTREAM-riscv-dts-spacemit-Add-linux-pci-domain-to-.patch index a243f6745b..7022e905d4 100644 --- a/SPECS/linux/0035-UPSTREAM-riscv-dts-spacemit-Add-linux-pci-domain-to-.patch +++ b/SPECS/linux/0035-UPSTREAM-riscv-dts-spacemit-Add-linux-pci-domain-to-.patch @@ -1,8 +1,8 @@ -From 1dc3a2458237396ae40fc204ed4a33f22fbaafa6 Mon Sep 17 00:00:00 2001 +From 2bced42ebf32379078a1e7d4448a9ecb52e3b184 Mon Sep 17 00:00:00 2001 From: Chukun Pan Date: Mon, 9 Mar 2026 11:00:00 +0800 -Subject: [PATCH 035/269] UPSTREAM: riscv: dts: spacemit: Add - 'linux,pci-domain' to PCIe nodes for K1 +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: spacemit: Add 'linux,pci-domain' + to PCIe nodes for K1 The SpacemiT K1 SoC has 3 PCIe EP controller nodes. Add the 'linux,pci-domain' property to assign a PCI domain number to diff --git a/SPECS/linux/0036-UPSTREAM-dt-bindings-serial-8250-spacemit-fix-clock-.patch b/SPECS/linux/0036-UPSTREAM-dt-bindings-serial-8250-spacemit-fix-clock-.patch index 0bab6f7caa..4d8508cfa0 100644 --- a/SPECS/linux/0036-UPSTREAM-dt-bindings-serial-8250-spacemit-fix-clock-.patch +++ b/SPECS/linux/0036-UPSTREAM-dt-bindings-serial-8250-spacemit-fix-clock-.patch @@ -1,8 +1,8 @@ -From 25bb35a0f7a04d31cc53e31949bf5099a8a18a86 Mon Sep 17 00:00:00 2001 +From 8b4a39964f7a8d22973263c7046c64333b3ef7df Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Wed, 4 Mar 2026 07:19:39 +0000 -Subject: [PATCH 036/269] UPSTREAM: dt-bindings: serial: 8250: spacemit: fix - clock property for K3 SoC +Subject: [RUYI PATCH] UPSTREAM: dt-bindings: serial: 8250: spacemit: fix clock + property for K3 SoC The UART of SpacemiT K3 SoC has same clock property as K1 generation which request two clock sources, fix the binding otherwise will get DT check diff --git a/SPECS/linux/0037-UPSTREAM-riscv-dts-spacemit-k3-add-clock-tree.patch b/SPECS/linux/0037-UPSTREAM-riscv-dts-spacemit-k3-add-clock-tree.patch index 4a2776aa5d..448348461a 100644 --- a/SPECS/linux/0037-UPSTREAM-riscv-dts-spacemit-k3-add-clock-tree.patch +++ b/SPECS/linux/0037-UPSTREAM-riscv-dts-spacemit-k3-add-clock-tree.patch @@ -1,7 +1,7 @@ -From 0e4f6236a5b2381a2d6dfc9dbda71d77be9dd33f Mon Sep 17 00:00:00 2001 +From 596a2b899f247fbd19b7b573057be9d25628b728 Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Wed, 4 Mar 2026 07:36:42 +0000 -Subject: [PATCH 037/269] UPSTREAM: riscv: dts: spacemit: k3: add clock tree +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: spacemit: k3: add clock tree Add clock support to SpacemiT K3 SoC, the clock tree consist of several blocks which are APBC, APMU, DCIU, MPUM. diff --git a/SPECS/linux/0038-UPSTREAM-riscv-dts-spacemit-k3-add-pinctrl-support.patch b/SPECS/linux/0038-UPSTREAM-riscv-dts-spacemit-k3-add-pinctrl-support.patch index f4031fef2b..4626ad1703 100644 --- a/SPECS/linux/0038-UPSTREAM-riscv-dts-spacemit-k3-add-pinctrl-support.patch +++ b/SPECS/linux/0038-UPSTREAM-riscv-dts-spacemit-k3-add-pinctrl-support.patch @@ -1,8 +1,7 @@ -From e25c40f1fbc03b6e608a4ccf8117faa35d8b90a3 Mon Sep 17 00:00:00 2001 +From 5edf743bb22da241fe3135105a0ec1162a3767a2 Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Wed, 4 Mar 2026 07:36:43 +0000 -Subject: [PATCH 038/269] UPSTREAM: riscv: dts: spacemit: k3: add pinctrl - support +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: spacemit: k3: add pinctrl support Populate pinctrl node in Device Tree for SpacemiT K3 SoC, So devices can request pinctrl resource properly. diff --git a/SPECS/linux/0039-UPSTREAM-riscv-dts-spacemit-k3-add-GPIO-support.patch b/SPECS/linux/0039-UPSTREAM-riscv-dts-spacemit-k3-add-GPIO-support.patch index 5acb6b4410..8c0d6af2ad 100644 --- a/SPECS/linux/0039-UPSTREAM-riscv-dts-spacemit-k3-add-GPIO-support.patch +++ b/SPECS/linux/0039-UPSTREAM-riscv-dts-spacemit-k3-add-GPIO-support.patch @@ -1,7 +1,7 @@ -From 992854035ed63e3393e9176932efe97d6ce16d17 Mon Sep 17 00:00:00 2001 +From bbffe92b161825051ec7b5d36863f1df8c865108 Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Wed, 4 Mar 2026 07:36:44 +0000 -Subject: [PATCH 039/269] UPSTREAM: riscv: dts: spacemit: k3: add GPIO support +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: spacemit: k3: add GPIO support Add GPIO node in the Device Tree, so devices are able to request GPIO resource properly. diff --git a/SPECS/linux/0040-UPSTREAM-riscv-dts-spacemit-k3-add-full-resource-to-.patch b/SPECS/linux/0040-UPSTREAM-riscv-dts-spacemit-k3-add-full-resource-to-.patch index e945999f9c..10bb6cd027 100644 --- a/SPECS/linux/0040-UPSTREAM-riscv-dts-spacemit-k3-add-full-resource-to-.patch +++ b/SPECS/linux/0040-UPSTREAM-riscv-dts-spacemit-k3-add-full-resource-to-.patch @@ -1,8 +1,8 @@ -From ae51e3d6b1d2f029bd7d6144af175d833dbba69c Mon Sep 17 00:00:00 2001 +From d33095ec24c1fe93dcea23dcfea83ab07cbca1ae Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Wed, 4 Mar 2026 07:36:45 +0000 -Subject: [PATCH 040/269] UPSTREAM: riscv: dts: spacemit: k3: add full resource - to UART +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: spacemit: k3: add full resource to + UART Previously the UART rely on external bootloader to initialize clock, pinctrl and reset, to solve this, explicitly adding those resource in diff --git a/SPECS/linux/0041-UPSTREAM-dt-bindings-usb-dwc3-spacemit-add-support-f.patch b/SPECS/linux/0041-UPSTREAM-dt-bindings-usb-dwc3-spacemit-add-support-f.patch index 6cf4e150cd..88815fe933 100644 --- a/SPECS/linux/0041-UPSTREAM-dt-bindings-usb-dwc3-spacemit-add-support-f.patch +++ b/SPECS/linux/0041-UPSTREAM-dt-bindings-usb-dwc3-spacemit-add-support-f.patch @@ -1,8 +1,8 @@ -From eecefa404c1eb578a61d409769ed3963200e7eb3 Mon Sep 17 00:00:00 2001 +From 9f06c3f9b9dfd33262923be2f74fdaacce7b9480 Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Fri, 20 Mar 2026 07:15:37 +0000 -Subject: [PATCH 041/269] UPSTREAM: dt-bindings: usb: dwc3: spacemit: add - support for K3 SoC +Subject: [RUYI PATCH] UPSTREAM: dt-bindings: usb: dwc3: spacemit: add support + for K3 SoC Add compatible string for DWC3 USB controller found in SpacemiT K3 SoC. diff --git a/SPECS/linux/0042-UPSTREAM-usb-dwc3-dwc3-generic-plat-spacemit-add-sup.patch b/SPECS/linux/0042-UPSTREAM-usb-dwc3-dwc3-generic-plat-spacemit-add-sup.patch index 44a36b14b3..2b0848eaf7 100644 --- a/SPECS/linux/0042-UPSTREAM-usb-dwc3-dwc3-generic-plat-spacemit-add-sup.patch +++ b/SPECS/linux/0042-UPSTREAM-usb-dwc3-dwc3-generic-plat-spacemit-add-sup.patch @@ -1,7 +1,7 @@ -From 73d26018437e56ff543a9ea2ba45b8e6aa83b4c1 Mon Sep 17 00:00:00 2001 +From caa5dc9da8f5f5ebdd4992b644a245ff29b456b4 Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Fri, 20 Mar 2026 07:15:38 +0000 -Subject: [PATCH 042/269] UPSTREAM: usb: dwc3: dwc3-generic-plat: spacemit: add +Subject: [RUYI PATCH] UPSTREAM: usb: dwc3: dwc3-generic-plat: spacemit: add support for K3 SoC Add support for the DWC3 USB controller which found in SpacemiT K3 SoC. diff --git a/SPECS/linux/0043-UPSTREAM-usb-dwc3-Add-optional-VBUS-regulator-suppor.patch b/SPECS/linux/0043-UPSTREAM-usb-dwc3-Add-optional-VBUS-regulator-suppor.patch index 3b4f228a78..1a1bd3d8c8 100644 --- a/SPECS/linux/0043-UPSTREAM-usb-dwc3-Add-optional-VBUS-regulator-suppor.patch +++ b/SPECS/linux/0043-UPSTREAM-usb-dwc3-Add-optional-VBUS-regulator-suppor.patch @@ -1,8 +1,8 @@ -From ce5ab7f33a42ca6bc5aa4b3e848c771896729f2f Mon Sep 17 00:00:00 2001 +From 75dc9853f472ebfe220d2ed5e6392a3e9662d664 Mon Sep 17 00:00:00 2001 From: Chukun Pan Date: Thu, 26 Mar 2026 18:00:10 +0800 -Subject: [PATCH 043/269] UPSTREAM: usb: dwc3: Add optional VBUS regulator - support to SpacemiT K1 +Subject: [RUYI PATCH] UPSTREAM: usb: dwc3: Add optional VBUS regulator support + to SpacemiT K1 Some SpacemiT K1 boards (like OrangePi R2S) provide USB VBUS through a controllable regulator. Add support for the optional diff --git a/SPECS/linux/0044-UPSTREAM-riscv-dts-spacemit-reorder-phy-nodes-for-K1.patch b/SPECS/linux/0044-UPSTREAM-riscv-dts-spacemit-reorder-phy-nodes-for-K1.patch index 64a53311fe..588ddfa1eb 100644 --- a/SPECS/linux/0044-UPSTREAM-riscv-dts-spacemit-reorder-phy-nodes-for-K1.patch +++ b/SPECS/linux/0044-UPSTREAM-riscv-dts-spacemit-reorder-phy-nodes-for-K1.patch @@ -1,8 +1,7 @@ -From b42be3aff8da85420e9ab0f6af7413aeaab5d0d7 Mon Sep 17 00:00:00 2001 +From dff58898a5a601b29fa554f766e8325afaf9bbe6 Mon Sep 17 00:00:00 2001 From: Chukun Pan Date: Wed, 18 Mar 2026 18:00:00 +0800 -Subject: [PATCH 044/269] UPSTREAM: riscv: dts: spacemit: reorder phy nodes for - K1 +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: spacemit: reorder phy nodes for K1 Reorder the PHY nodes of USB and PCIe to the correct positions based on the register address. This improves the readability and maintainability diff --git a/SPECS/linux/0045-UPSTREAM-riscv-dts-spacemit-Add-ethernet-device-for-.patch b/SPECS/linux/0045-UPSTREAM-riscv-dts-spacemit-Add-ethernet-device-for-.patch index 1ee9c3a956..4c926ad28c 100644 --- a/SPECS/linux/0045-UPSTREAM-riscv-dts-spacemit-Add-ethernet-device-for-.patch +++ b/SPECS/linux/0045-UPSTREAM-riscv-dts-spacemit-Add-ethernet-device-for-.patch @@ -1,8 +1,8 @@ -From 59310ed3e36d6426ef719fc33d471760916abb5c Mon Sep 17 00:00:00 2001 +From faacc650f6105f56273160e96d47227c84967fb4 Mon Sep 17 00:00:00 2001 From: Inochi Amaoto Date: Thu, 26 Mar 2026 09:46:17 +0800 -Subject: [PATCH 045/269] UPSTREAM: riscv: dts: spacemit: Add ethernet device - for K3 +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: spacemit: Add ethernet device for + K3 Add all ethernet device nodes for K3 SoC. diff --git a/SPECS/linux/0046-UPSTREAM-riscv-dts-spacemit-add-LEDs-for-Milk-V-Jupi.patch b/SPECS/linux/0046-UPSTREAM-riscv-dts-spacemit-add-LEDs-for-Milk-V-Jupi.patch index 1bf4b3d27d..b7eefeebba 100644 --- a/SPECS/linux/0046-UPSTREAM-riscv-dts-spacemit-add-LEDs-for-Milk-V-Jupi.patch +++ b/SPECS/linux/0046-UPSTREAM-riscv-dts-spacemit-add-LEDs-for-Milk-V-Jupi.patch @@ -1,7 +1,7 @@ -From e6186278f475a79d90231662a47067e6f8a4bb4c Mon Sep 17 00:00:00 2001 +From 890d8a85d76089df416ad13de2ac512eba485ca2 Mon Sep 17 00:00:00 2001 From: Aurelien Jarno Date: Thu, 26 Mar 2026 19:35:29 +0100 -Subject: [PATCH 046/269] UPSTREAM: riscv: dts: spacemit: add LEDs for Milk-V +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: spacemit: add LEDs for Milk-V Jupiter board The Milk-V Jupiter board provides support for two LEDs through the front diff --git a/SPECS/linux/0047-UPSTREAM-riscv-dts-spacemit-add-24c04-eeprom-on-Milk.patch b/SPECS/linux/0047-UPSTREAM-riscv-dts-spacemit-add-24c04-eeprom-on-Milk.patch index 6bfb4643aa..677d2cc180 100644 --- a/SPECS/linux/0047-UPSTREAM-riscv-dts-spacemit-add-24c04-eeprom-on-Milk.patch +++ b/SPECS/linux/0047-UPSTREAM-riscv-dts-spacemit-add-24c04-eeprom-on-Milk.patch @@ -1,7 +1,7 @@ -From a40ad7fe714b297e95dcc53f1942fe61021d2603 Mon Sep 17 00:00:00 2001 +From 6cda85b74dcd76a96128ce64db0d23148a55a76a Mon Sep 17 00:00:00 2001 From: Aurelien Jarno Date: Thu, 26 Mar 2026 19:35:30 +0100 -Subject: [PATCH 047/269] UPSTREAM: riscv: dts: spacemit: add 24c04 eeprom on +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: spacemit: add 24c04 eeprom on Milk-V Jupiter The Milk-V Jupiter board includes a 24c04 eeprom on the i2c2 bus. The diff --git a/SPECS/linux/0048-UPSTREAM-riscv-dts-spacemit-add-i2c-aliases-on-Milk-.patch b/SPECS/linux/0048-UPSTREAM-riscv-dts-spacemit-add-i2c-aliases-on-Milk-.patch index eeabf645b8..45ab648574 100644 --- a/SPECS/linux/0048-UPSTREAM-riscv-dts-spacemit-add-i2c-aliases-on-Milk-.patch +++ b/SPECS/linux/0048-UPSTREAM-riscv-dts-spacemit-add-i2c-aliases-on-Milk-.patch @@ -1,7 +1,7 @@ -From 0529389e911bc07f3419c66a0f53a3b8a7b4ca01 Mon Sep 17 00:00:00 2001 +From ac84eec1a95c286939a124cc599fd1ee24a44c80 Mon Sep 17 00:00:00 2001 From: Aurelien Jarno Date: Thu, 26 Mar 2026 19:35:31 +0100 -Subject: [PATCH 048/269] UPSTREAM: riscv: dts: spacemit: add i2c aliases on +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: spacemit: add i2c aliases on Milk-V Jupiter Add i2c aliases for i2c2 and i2c8 on Milk-V Jupiter. This is useful to diff --git a/SPECS/linux/0049-UPSTREAM-riscv-dts-spacemit-enable-QSPI-and-add-SPI-.patch b/SPECS/linux/0049-UPSTREAM-riscv-dts-spacemit-enable-QSPI-and-add-SPI-.patch index 8a1186c84d..e0148df441 100644 --- a/SPECS/linux/0049-UPSTREAM-riscv-dts-spacemit-enable-QSPI-and-add-SPI-.patch +++ b/SPECS/linux/0049-UPSTREAM-riscv-dts-spacemit-enable-QSPI-and-add-SPI-.patch @@ -1,8 +1,8 @@ -From 509dec7e7670b6a2b7ad97b0e65a954ed524f149 Mon Sep 17 00:00:00 2001 +From 2247c72d83bcb1a74ae4beb888b88dcb6970194c Mon Sep 17 00:00:00 2001 From: Aurelien Jarno Date: Thu, 26 Mar 2026 19:35:32 +0100 -Subject: [PATCH 049/269] UPSTREAM: riscv: dts: spacemit: enable QSPI and add - SPI NOR on Milk-V Jupiter +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: spacemit: enable QSPI and add SPI + NOR on Milk-V Jupiter Add the QSPI controller node for the Milk-V Jupiter board and describe the attached SPI NOR flash (GD25Q64E). diff --git a/SPECS/linux/0050-UPSTREAM-riscv-dts-spacemit-enable-USB-3-ports-on-Mi.patch b/SPECS/linux/0050-UPSTREAM-riscv-dts-spacemit-enable-USB-3-ports-on-Mi.patch index ec96f5bb38..bab47c3a64 100644 --- a/SPECS/linux/0050-UPSTREAM-riscv-dts-spacemit-enable-USB-3-ports-on-Mi.patch +++ b/SPECS/linux/0050-UPSTREAM-riscv-dts-spacemit-enable-USB-3-ports-on-Mi.patch @@ -1,7 +1,7 @@ -From ce6dafb8880e4df7bafeb93591d67ad8d5a62e1a Mon Sep 17 00:00:00 2001 +From 6cdd3d4630e9e7ddd493231b4dd4d1204061c752 Mon Sep 17 00:00:00 2001 From: Aurelien Jarno Date: Thu, 26 Mar 2026 19:35:33 +0100 -Subject: [PATCH 050/269] UPSTREAM: riscv: dts: spacemit: enable USB 3 ports on +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: spacemit: enable USB 3 ports on Milk-V Jupiter Enable the DWC3 USB 3.0 controller (USB#2 port in the K1 datasheet) and diff --git a/SPECS/linux/0051-UPSTREAM-riscv-dts-spacemit-enable-PCIe-ports-on-Mil.patch b/SPECS/linux/0051-UPSTREAM-riscv-dts-spacemit-enable-PCIe-ports-on-Mil.patch index 418a45b9ec..1c3934af38 100644 --- a/SPECS/linux/0051-UPSTREAM-riscv-dts-spacemit-enable-PCIe-ports-on-Mil.patch +++ b/SPECS/linux/0051-UPSTREAM-riscv-dts-spacemit-enable-PCIe-ports-on-Mil.patch @@ -1,7 +1,7 @@ -From 6c69d39fdd805b24d6e022e57923a5f7ab0431eb Mon Sep 17 00:00:00 2001 +From 6774929b5a289c286924ed1fbccbc23ce4f6ac8f Mon Sep 17 00:00:00 2001 From: Aurelien Jarno Date: Thu, 26 Mar 2026 19:35:34 +0100 -Subject: [PATCH 051/269] UPSTREAM: riscv: dts: spacemit: enable PCIe ports on +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: spacemit: enable PCIe ports on Milk-V Jupiter Enable the two PCIe controller along with and their associated PHY. They diff --git a/SPECS/linux/0052-UPSTREAM-dt-bindings-i2c-spacemit-k3-Add-compatible.patch b/SPECS/linux/0052-UPSTREAM-dt-bindings-i2c-spacemit-k3-Add-compatible.patch index 61c6f55c28..522fbc5ab2 100644 --- a/SPECS/linux/0052-UPSTREAM-dt-bindings-i2c-spacemit-k3-Add-compatible.patch +++ b/SPECS/linux/0052-UPSTREAM-dt-bindings-i2c-spacemit-k3-Add-compatible.patch @@ -1,8 +1,7 @@ -From 855990996aab9c1d81b8177a453308574d856865 Mon Sep 17 00:00:00 2001 +From d44c703213fa190bb7cd9048479aee6529f56b60 Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Wed, 25 Mar 2026 09:49:24 +0000 -Subject: [PATCH 052/269] UPSTREAM: dt-bindings: i2c: spacemit: k3: Add - compatible +Subject: [RUYI PATCH] UPSTREAM: dt-bindings: i2c: spacemit: k3: Add compatible Add a compatible string for the I2C controller found in SpacemiT K3 SoC which use same I2C IP as K1, so make it fallback to K1 compatible. diff --git a/SPECS/linux/0053-UPSTREAM-dts-riscv-spacemit-k3-Add-i2c-nodes.patch b/SPECS/linux/0053-UPSTREAM-dts-riscv-spacemit-k3-Add-i2c-nodes.patch index de08066251..c09b0e5bf8 100644 --- a/SPECS/linux/0053-UPSTREAM-dts-riscv-spacemit-k3-Add-i2c-nodes.patch +++ b/SPECS/linux/0053-UPSTREAM-dts-riscv-spacemit-k3-Add-i2c-nodes.patch @@ -1,7 +1,7 @@ -From 710086905721646f4e792849cd56b0a30f5c236b Mon Sep 17 00:00:00 2001 +From d777fc59865dcb85f6c2ee360127c52a74f6df7d Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Fri, 27 Mar 2026 11:40:40 +0000 -Subject: [PATCH 053/269] UPSTREAM: dts: riscv: spacemit: k3: Add i2c nodes +Subject: [RUYI PATCH] UPSTREAM: dts: riscv: spacemit: k3: Add i2c nodes Populate all I2C devicetree nodes for SpacemiT K3 SoC. The controller of i2c3 is reserved for secure domain, and not available from Linux. The diff --git a/SPECS/linux/0054-UPSTREAM-dts-riscv-spacemit-k3-add-P1-PMIC-regulator.patch b/SPECS/linux/0054-UPSTREAM-dts-riscv-spacemit-k3-add-P1-PMIC-regulator.patch index 5c09b67f29..0823d9e55f 100644 --- a/SPECS/linux/0054-UPSTREAM-dts-riscv-spacemit-k3-add-P1-PMIC-regulator.patch +++ b/SPECS/linux/0054-UPSTREAM-dts-riscv-spacemit-k3-add-P1-PMIC-regulator.patch @@ -1,7 +1,7 @@ -From f63fb7efe62ee0dc3da55c70cdc7c3e1846e261b Mon Sep 17 00:00:00 2001 +From fe739b7c392e7a882052c2179abf27223c04b38a Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Fri, 27 Mar 2026 11:51:18 +0000 -Subject: [PATCH 054/269] UPSTREAM: dts: riscv: spacemit: k3: add P1 PMIC +Subject: [RUYI PATCH] UPSTREAM: dts: riscv: spacemit: k3: add P1 PMIC regulator tree Add the P1 PMIC's regulator topology tree for pico-itx board. diff --git a/SPECS/linux/0055-UPSTREAM-perf-symbol-Add-RISCV-case-in-get_plt_sizes.patch b/SPECS/linux/0055-UPSTREAM-perf-symbol-Add-RISCV-case-in-get_plt_sizes.patch index 4ee2cdf8a6..e3b3825c15 100644 --- a/SPECS/linux/0055-UPSTREAM-perf-symbol-Add-RISCV-case-in-get_plt_sizes.patch +++ b/SPECS/linux/0055-UPSTREAM-perf-symbol-Add-RISCV-case-in-get_plt_sizes.patch @@ -1,8 +1,7 @@ -From 1d2c4fd214e8c4fd57ed9e93d8240e30b3ad674d Mon Sep 17 00:00:00 2001 +From cfba0efefdea75250c07d3c2766d2e25a5f5cc94 Mon Sep 17 00:00:00 2001 From: Chen Pei Date: Tue, 17 Mar 2026 11:48:47 +0800 -Subject: [PATCH 055/269] UPSTREAM: perf symbol: Add RISCV case in - get_plt_sizes +Subject: [RUYI PATCH] UPSTREAM: perf symbol: Add RISCV case in get_plt_sizes According to RISC-V psABI specification, the PLT (Program Linkage Table) has the following layout: diff --git a/SPECS/linux/0056-UPSTREAM-riscv-Simplify-assignment-for-UTS_MACHINE.patch b/SPECS/linux/0056-UPSTREAM-riscv-Simplify-assignment-for-UTS_MACHINE.patch index 7a69760a9f..2b5547943a 100644 --- a/SPECS/linux/0056-UPSTREAM-riscv-Simplify-assignment-for-UTS_MACHINE.patch +++ b/SPECS/linux/0056-UPSTREAM-riscv-Simplify-assignment-for-UTS_MACHINE.patch @@ -1,7 +1,7 @@ -From 2a1d84bced9b3fa60b29773f122dfdae3c5c72ec Mon Sep 17 00:00:00 2001 +From 3548663d9ec9cb78ff9e36047f3e9463a2c219e1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Uwe=20Kleine-K=C3=B6nig?= Date: Sat, 4 Apr 2026 18:42:40 -0600 -Subject: [PATCH 056/269] UPSTREAM: riscv: Simplify assignment for UTS_MACHINE +Subject: [RUYI PATCH] UPSTREAM: riscv: Simplify assignment for UTS_MACHINE MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit diff --git a/SPECS/linux/0057-UPSTREAM-riscv-increase-COMMAND_LINE_SIZE-value-to-2.patch b/SPECS/linux/0057-UPSTREAM-riscv-increase-COMMAND_LINE_SIZE-value-to-2.patch index c19f707a47..d446b1a200 100644 --- a/SPECS/linux/0057-UPSTREAM-riscv-increase-COMMAND_LINE_SIZE-value-to-2.patch +++ b/SPECS/linux/0057-UPSTREAM-riscv-increase-COMMAND_LINE_SIZE-value-to-2.patch @@ -1,7 +1,7 @@ -From d74ae16ee8e39915cb8547a18f11abfab7621f82 Mon Sep 17 00:00:00 2001 +From 55f34890b7174492ac193e2942401366cade0b5b Mon Sep 17 00:00:00 2001 From: Austin Kim Date: Fri, 3 Apr 2026 19:28:47 -0600 -Subject: [PATCH 057/269] UPSTREAM: riscv: increase COMMAND_LINE_SIZE value to +Subject: [RUYI PATCH] UPSTREAM: riscv: increase COMMAND_LINE_SIZE value to 2048 SoC people may send many parameters to configure the drivers via kernel diff --git a/SPECS/linux/0058-UPSTREAM-riscv-acpi-update-FADT-revision-check-to-6..patch b/SPECS/linux/0058-UPSTREAM-riscv-acpi-update-FADT-revision-check-to-6..patch index ecf21a90ef..b672153e6f 100644 --- a/SPECS/linux/0058-UPSTREAM-riscv-acpi-update-FADT-revision-check-to-6..patch +++ b/SPECS/linux/0058-UPSTREAM-riscv-acpi-update-FADT-revision-check-to-6..patch @@ -1,8 +1,7 @@ -From 8841400b98d1855c6b7147cfcffd9adb0072b8d0 Mon Sep 17 00:00:00 2001 +From 9f65d8563b908295c1b15c136d55bbdfc8404d41 Mon Sep 17 00:00:00 2001 From: Yufeng Wang Date: Fri, 3 Apr 2026 19:28:47 -0600 -Subject: [PATCH 058/269] UPSTREAM: riscv: acpi: update FADT revision check to - 6.6 +Subject: [RUYI PATCH] UPSTREAM: riscv: acpi: update FADT revision check to 6.6 ACPI 6.6 is required for RISC-V as it introduces RISC-V specific tables such as RHCT (RISC-V Hart Capabilities Table) and diff --git a/SPECS/linux/0059-UPSTREAM-riscv-mm-WARN_ON-for-bad-addresses-in-vmemm.patch b/SPECS/linux/0059-UPSTREAM-riscv-mm-WARN_ON-for-bad-addresses-in-vmemm.patch index 9e083b7659..19d69e90fa 100644 --- a/SPECS/linux/0059-UPSTREAM-riscv-mm-WARN_ON-for-bad-addresses-in-vmemm.patch +++ b/SPECS/linux/0059-UPSTREAM-riscv-mm-WARN_ON-for-bad-addresses-in-vmemm.patch @@ -1,7 +1,7 @@ -From 6fcf52df0f09e8702771043b2309d24a592c6738 Mon Sep 17 00:00:00 2001 +From 2882b8c5d55e211d5a055174329abbbf006e052f Mon Sep 17 00:00:00 2001 From: Vivian Wang Date: Fri, 3 Apr 2026 19:28:47 -0600 -Subject: [PATCH 059/269] UPSTREAM: riscv: mm: WARN_ON() for bad addresses in +Subject: [RUYI PATCH] UPSTREAM: riscv: mm: WARN_ON() for bad addresses in vmemmap_populate() Similarly to the same check in arch/arm64/mm/mmu.c, in @@ -18,10 +18,10 @@ Signed-off-by: Han Gao 1 file changed, 2 insertions(+) diff --git a/arch/riscv/mm/init.c b/arch/riscv/mm/init.c -index 811e03786c56..c12590ab3d0e 100644 +index 1b221c3fe275..31007b426d54 100644 --- a/arch/riscv/mm/init.c +++ b/arch/riscv/mm/init.c -@@ -1453,6 +1453,8 @@ int __meminit vmemmap_check_pmd(pmd_t *pmdp, int node, +@@ -1478,6 +1478,8 @@ int __meminit vmemmap_check_pmd(pmd_t *pmdp, int node, int __meminit vmemmap_populate(unsigned long start, unsigned long end, int node, struct vmem_altmap *altmap) { diff --git a/SPECS/linux/0060-UPSTREAM-riscv-enable-HAVE_IOREMAP_PROT.patch b/SPECS/linux/0060-UPSTREAM-riscv-enable-HAVE_IOREMAP_PROT.patch index 21c0a0f336..e1926ed57f 100644 --- a/SPECS/linux/0060-UPSTREAM-riscv-enable-HAVE_IOREMAP_PROT.patch +++ b/SPECS/linux/0060-UPSTREAM-riscv-enable-HAVE_IOREMAP_PROT.patch @@ -1,7 +1,7 @@ -From 949e84cef2a3abd4c191ad5c3327a7d44d5a8548 Mon Sep 17 00:00:00 2001 +From 3ac9785b5e20daa4133d6b6758fa55af7ca5dd52 Mon Sep 17 00:00:00 2001 From: Yufeng Wang Date: Fri, 3 Apr 2026 19:28:47 -0600 -Subject: [PATCH 060/269] UPSTREAM: riscv: enable HAVE_IOREMAP_PROT +Subject: [RUYI PATCH] UPSTREAM: riscv: enable HAVE_IOREMAP_PROT RISC-V has implemented pte_pgprot() and selects GENERIC_IOREMAP, which provides a generic ioremap_prot() implementation. Enable diff --git a/SPECS/linux/0061-UPSTREAM-lib-string_kunit-add-correctness-test-for-s.patch b/SPECS/linux/0061-UPSTREAM-lib-string_kunit-add-correctness-test-for-s.patch index a311a0599c..82c7b05f25 100644 --- a/SPECS/linux/0061-UPSTREAM-lib-string_kunit-add-correctness-test-for-s.patch +++ b/SPECS/linux/0061-UPSTREAM-lib-string_kunit-add-correctness-test-for-s.patch @@ -1,7 +1,7 @@ -From a93839d7a5a7ce3fba6e6564ad126f5689b1ec64 Mon Sep 17 00:00:00 2001 +From afa22c63ff3a8e9a83984ead4323d920b10b0615 Mon Sep 17 00:00:00 2001 From: Feng Jiang Date: Fri, 3 Apr 2026 19:28:47 -0600 -Subject: [PATCH 061/269] UPSTREAM: lib/string_kunit: add correctness test for +Subject: [RUYI PATCH] UPSTREAM: lib/string_kunit: add correctness test for strlen() Add a KUnit test for strlen() to verify correctness across diff --git a/SPECS/linux/0062-UPSTREAM-lib-string_kunit-add-correctness-test-for-s.patch b/SPECS/linux/0062-UPSTREAM-lib-string_kunit-add-correctness-test-for-s.patch index 2a8a41431d..c8caceb04c 100644 --- a/SPECS/linux/0062-UPSTREAM-lib-string_kunit-add-correctness-test-for-s.patch +++ b/SPECS/linux/0062-UPSTREAM-lib-string_kunit-add-correctness-test-for-s.patch @@ -1,7 +1,7 @@ -From 2ed066d6e95ff3d4b13353e229f07ba72fa1ccbd Mon Sep 17 00:00:00 2001 +From f3f10c18fe356aaa640a91657a43ce861a75b1a3 Mon Sep 17 00:00:00 2001 From: Feng Jiang Date: Fri, 3 Apr 2026 19:28:47 -0600 -Subject: [PATCH 062/269] UPSTREAM: lib/string_kunit: add correctness test for +Subject: [RUYI PATCH] UPSTREAM: lib/string_kunit: add correctness test for strnlen() Add a KUnit test for strnlen() to verify correctness across diff --git a/SPECS/linux/0063-UPSTREAM-lib-string_kunit-add-correctness-test-for-s.patch b/SPECS/linux/0063-UPSTREAM-lib-string_kunit-add-correctness-test-for-s.patch index 9002396c98..a3056b9c83 100644 --- a/SPECS/linux/0063-UPSTREAM-lib-string_kunit-add-correctness-test-for-s.patch +++ b/SPECS/linux/0063-UPSTREAM-lib-string_kunit-add-correctness-test-for-s.patch @@ -1,7 +1,7 @@ -From 35bc12c89250a27187edba752adca38c1658acd1 Mon Sep 17 00:00:00 2001 +From 45e5a04263c7675d5f42be7a9449c3a3126a1de5 Mon Sep 17 00:00:00 2001 From: Feng Jiang Date: Fri, 3 Apr 2026 19:28:47 -0600 -Subject: [PATCH 063/269] UPSTREAM: lib/string_kunit: add correctness test for +Subject: [RUYI PATCH] UPSTREAM: lib/string_kunit: add correctness test for strrchr() Add a KUnit test for strrchr() to verify correctness across diff --git a/SPECS/linux/0064-UPSTREAM-lib-string_kunit-add-performance-benchmark-.patch b/SPECS/linux/0064-UPSTREAM-lib-string_kunit-add-performance-benchmark-.patch index 657756c664..5f33a9116a 100644 --- a/SPECS/linux/0064-UPSTREAM-lib-string_kunit-add-performance-benchmark-.patch +++ b/SPECS/linux/0064-UPSTREAM-lib-string_kunit-add-performance-benchmark-.patch @@ -1,7 +1,7 @@ -From e2ac3841583ad6b836c92211c5480be0a0a8567a Mon Sep 17 00:00:00 2001 +From e5ce3031ffa70c704a411387fe2093c26694de67 Mon Sep 17 00:00:00 2001 From: Feng Jiang Date: Fri, 3 Apr 2026 19:28:47 -0600 -Subject: [PATCH 064/269] UPSTREAM: lib/string_kunit: add performance benchmark +Subject: [RUYI PATCH] UPSTREAM: lib/string_kunit: add performance benchmark for strlen() Introduce a benchmarking framework to the string_kunit test suite to diff --git a/SPECS/linux/0065-UPSTREAM-lib-string_kunit-extend-benchmarks-to-strnl.patch b/SPECS/linux/0065-UPSTREAM-lib-string_kunit-extend-benchmarks-to-strnl.patch index 9894bcb319..63bd6642ea 100644 --- a/SPECS/linux/0065-UPSTREAM-lib-string_kunit-extend-benchmarks-to-strnl.patch +++ b/SPECS/linux/0065-UPSTREAM-lib-string_kunit-extend-benchmarks-to-strnl.patch @@ -1,7 +1,7 @@ -From 78f21c231152c5a7d7bea2fd2c558671ddb0cca7 Mon Sep 17 00:00:00 2001 +From 3ab46395f4240316d920f2d1412da3cf84a78dc9 Mon Sep 17 00:00:00 2001 From: Feng Jiang Date: Fri, 3 Apr 2026 19:28:47 -0600 -Subject: [PATCH 065/269] UPSTREAM: lib/string_kunit: extend benchmarks to +Subject: [RUYI PATCH] UPSTREAM: lib/string_kunit: extend benchmarks to strnlen() and chr searches Extend the string benchmarking suite to include strnlen(), strchr(), diff --git a/SPECS/linux/0066-UPSTREAM-riscv-lib-add-strnlen-implementation.patch b/SPECS/linux/0066-UPSTREAM-riscv-lib-add-strnlen-implementation.patch index 53e488bfc6..98993ef9b3 100644 --- a/SPECS/linux/0066-UPSTREAM-riscv-lib-add-strnlen-implementation.patch +++ b/SPECS/linux/0066-UPSTREAM-riscv-lib-add-strnlen-implementation.patch @@ -1,7 +1,7 @@ -From 105db5672657eef3c6dedce14524f8d3d3123f4a Mon Sep 17 00:00:00 2001 +From eb1f1b88db85183b4e0d29b7d676929a87af9d3f Mon Sep 17 00:00:00 2001 From: Feng Jiang Date: Fri, 3 Apr 2026 19:28:47 -0600 -Subject: [PATCH 066/269] UPSTREAM: riscv: lib: add strnlen() implementation +Subject: [RUYI PATCH] UPSTREAM: riscv: lib: add strnlen() implementation Add an optimized strnlen() implementation for RISC-V. This version includes a generic optimization and a Zbb-powered optimization using diff --git a/SPECS/linux/0067-UPSTREAM-riscv-lib-add-strchr-implementation.patch b/SPECS/linux/0067-UPSTREAM-riscv-lib-add-strchr-implementation.patch index 359a2a5dda..9791752ab5 100644 --- a/SPECS/linux/0067-UPSTREAM-riscv-lib-add-strchr-implementation.patch +++ b/SPECS/linux/0067-UPSTREAM-riscv-lib-add-strchr-implementation.patch @@ -1,7 +1,7 @@ -From 706a4890803c70dc8cedd84261f851bf99a6c86b Mon Sep 17 00:00:00 2001 +From 47ea0b035ac1607487388024968a520f56f0bd9b Mon Sep 17 00:00:00 2001 From: Feng Jiang Date: Fri, 3 Apr 2026 19:28:47 -0600 -Subject: [PATCH 067/269] UPSTREAM: riscv: lib: add strchr() implementation +Subject: [RUYI PATCH] UPSTREAM: riscv: lib: add strchr() implementation Add an assembly implementation of strchr() for RISC-V. diff --git a/SPECS/linux/0068-UPSTREAM-riscv-lib-add-strrchr-implementation.patch b/SPECS/linux/0068-UPSTREAM-riscv-lib-add-strrchr-implementation.patch index 0c0d319c32..d224deca7c 100644 --- a/SPECS/linux/0068-UPSTREAM-riscv-lib-add-strrchr-implementation.patch +++ b/SPECS/linux/0068-UPSTREAM-riscv-lib-add-strrchr-implementation.patch @@ -1,7 +1,7 @@ -From 9185bd24b1ae1baf984b706eb85d57f47217e26b Mon Sep 17 00:00:00 2001 +From c4246da8b2d60d3bedc9b83613a16f8d56d620cd Mon Sep 17 00:00:00 2001 From: Feng Jiang Date: Fri, 3 Apr 2026 19:28:47 -0600 -Subject: [PATCH 068/269] UPSTREAM: riscv: lib: add strrchr() implementation +Subject: [RUYI PATCH] UPSTREAM: riscv: lib: add strrchr() implementation Add an assembly implementation of strrchr() for RISC-V. diff --git a/SPECS/linux/0069-UPSTREAM-ASoC-spacemit-move-hw-constraints-from-hw_p.patch b/SPECS/linux/0069-UPSTREAM-ASoC-spacemit-move-hw-constraints-from-hw_p.patch index b75d894d7b..9ab2f88bd0 100644 --- a/SPECS/linux/0069-UPSTREAM-ASoC-spacemit-move-hw-constraints-from-hw_p.patch +++ b/SPECS/linux/0069-UPSTREAM-ASoC-spacemit-move-hw-constraints-from-hw_p.patch @@ -1,7 +1,7 @@ -From 694399354a2dca37e145726e522142fd92d5f3c7 Mon Sep 17 00:00:00 2001 +From df7dd57a3fddcaf65e709e99b459e1c78d2c91a8 Mon Sep 17 00:00:00 2001 From: Troy Mitchell Date: Wed, 29 Apr 2026 09:38:47 +0800 -Subject: [PATCH 069/269] UPSTREAM: ASoC: spacemit: move hw constraints from +Subject: [RUYI PATCH] UPSTREAM: ASoC: spacemit: move hw constraints from hw_params to startup Hardware constraints should be applied in the startup callback rather diff --git a/SPECS/linux/0070-UPSTREAM-ASoC-spacemit-adjust-FIFO-trigger-threshold.patch b/SPECS/linux/0070-UPSTREAM-ASoC-spacemit-adjust-FIFO-trigger-threshold.patch index 361d8b6205..7793515f68 100644 --- a/SPECS/linux/0070-UPSTREAM-ASoC-spacemit-adjust-FIFO-trigger-threshold.patch +++ b/SPECS/linux/0070-UPSTREAM-ASoC-spacemit-adjust-FIFO-trigger-threshold.patch @@ -1,8 +1,8 @@ -From d7f2529fa33a1b03694b1d36f7d1cd60ba258910 Mon Sep 17 00:00:00 2001 +From 3bc40b5fe7a89b0fefce7c8ef383f7ee85f075d1 Mon Sep 17 00:00:00 2001 From: Troy Mitchell Date: Wed, 29 Apr 2026 09:38:48 +0800 -Subject: [PATCH 070/269] UPSTREAM: ASoC: spacemit: adjust FIFO trigger - threshold to half FIFO size +Subject: [RUYI PATCH] UPSTREAM: ASoC: spacemit: adjust FIFO trigger threshold + to half FIFO size Set both TX and RX FIFO trigger thresholds (TFT/RFT) to 0xF (half of the 32-entry FIFO) instead of 5. This provides better DMA efficiency diff --git a/SPECS/linux/0071-UPSTREAM-clk-spacemit-k3-mark-top_dclk-as-CLK_IS_CRI.patch b/SPECS/linux/0071-UPSTREAM-clk-spacemit-k3-mark-top_dclk-as-CLK_IS_CRI.patch index 80bd255b66..eeb45e2b2d 100644 --- a/SPECS/linux/0071-UPSTREAM-clk-spacemit-k3-mark-top_dclk-as-CLK_IS_CRI.patch +++ b/SPECS/linux/0071-UPSTREAM-clk-spacemit-k3-mark-top_dclk-as-CLK_IS_CRI.patch @@ -1,7 +1,7 @@ -From 4b49c6fe6de7cf7ee9fefc9a9c9fe76db69ecde6 Mon Sep 17 00:00:00 2001 +From d7f7e2d348dbab7a1ba91d441165e6b7adfa1110 Mon Sep 17 00:00:00 2001 From: Troy Mitchell Date: Fri, 24 Apr 2026 16:20:32 +0800 -Subject: [PATCH 071/269] UPSTREAM: clk: spacemit: k3: mark top_dclk as +Subject: [RUYI PATCH] UPSTREAM: clk: spacemit: k3: mark top_dclk as CLK_IS_CRITICAL top_dclk is the DDR bus clock. If it is gated by clk_disable_unused, diff --git a/SPECS/linux/0072-UPSTREAM-ASoC-spacemit-fix-RX-DMA-params-not-set-whe.patch b/SPECS/linux/0072-UPSTREAM-ASoC-spacemit-fix-RX-DMA-params-not-set-whe.patch index df9be863a7..5443aa4c05 100644 --- a/SPECS/linux/0072-UPSTREAM-ASoC-spacemit-fix-RX-DMA-params-not-set-whe.patch +++ b/SPECS/linux/0072-UPSTREAM-ASoC-spacemit-fix-RX-DMA-params-not-set-whe.patch @@ -1,8 +1,8 @@ -From 63c515a59ebf4202f9383bcfe70604c7fd45d9a0 Mon Sep 17 00:00:00 2001 +From 3a012f1ebf343fe4ebc8990aaf7404eebf395ac6 Mon Sep 17 00:00:00 2001 From: Troy Mitchell Date: Wed, 29 Apr 2026 17:00:50 +0800 -Subject: [PATCH 072/269] UPSTREAM: ASoC: spacemit: fix RX DMA params not set - when TX is running +Subject: [RUYI PATCH] UPSTREAM: ASoC: spacemit: fix RX DMA params not set when + TX is running When TX is already running (SSCR_SSE is set), the hw_params callback returns early before setting up DMA parameters for the RX stream. This diff --git a/SPECS/linux/0073-UPSTREAM-dt-bindings-usb-Add-support-for-Terminus-FE.patch b/SPECS/linux/0073-UPSTREAM-dt-bindings-usb-Add-support-for-Terminus-FE.patch index dfad33f44a..630043867a 100644 --- a/SPECS/linux/0073-UPSTREAM-dt-bindings-usb-Add-support-for-Terminus-FE.patch +++ b/SPECS/linux/0073-UPSTREAM-dt-bindings-usb-Add-support-for-Terminus-FE.patch @@ -1,7 +1,7 @@ -From 547eed1c1fdf7efb31324f4c91f23f79921e4d85 Mon Sep 17 00:00:00 2001 +From 38c76b211a4eaf5b8c41d743248432b57c6b6d9b Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Thu, 19 Mar 2026 07:51:03 +0000 -Subject: [PATCH 073/269] UPSTREAM: dt-bindings: usb: Add support for Terminus +Subject: [RUYI PATCH] UPSTREAM: dt-bindings: usb: Add support for Terminus FE1.1s USB2.0 Hub controller Terminus FE1.1s is USB2.0 protocol compliant 4-port USB HUB, It support diff --git a/SPECS/linux/0074-UPSTREAM-usb-misc-onboard_usb_dev-Add-Terminus-FE1.1.patch b/SPECS/linux/0074-UPSTREAM-usb-misc-onboard_usb_dev-Add-Terminus-FE1.1.patch index c338380b70..bba3e23eb3 100644 --- a/SPECS/linux/0074-UPSTREAM-usb-misc-onboard_usb_dev-Add-Terminus-FE1.1.patch +++ b/SPECS/linux/0074-UPSTREAM-usb-misc-onboard_usb_dev-Add-Terminus-FE1.1.patch @@ -1,7 +1,7 @@ -From 393a81ec066f3f0be02d736b35215e61fc39ed08 Mon Sep 17 00:00:00 2001 +From df5d3328d768f9db710c64dc3145300fbfe9a795 Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Thu, 19 Mar 2026 07:51:04 +0000 -Subject: [PATCH 074/269] UPSTREAM: usb: misc: onboard_usb_dev: Add Terminus +Subject: [RUYI PATCH] UPSTREAM: usb: misc: onboard_usb_dev: Add Terminus FE1.1s USB2.0 Hub (1a40:0101) Terminus FE1.1s is USB2.0 protocol compliant 4-port USB HUB, It support diff --git a/SPECS/linux/0075-UPSTREAM-iommupt-Add-the-RISC-V-page-table-format.patch b/SPECS/linux/0075-UPSTREAM-iommupt-Add-the-RISC-V-page-table-format.patch index fa704aad1b..5cc22d8e81 100644 --- a/SPECS/linux/0075-UPSTREAM-iommupt-Add-the-RISC-V-page-table-format.patch +++ b/SPECS/linux/0075-UPSTREAM-iommupt-Add-the-RISC-V-page-table-format.patch @@ -1,7 +1,7 @@ -From 85bf2b20fd6fe1b4fee29c3f6a12f52206cdae78 Mon Sep 17 00:00:00 2001 +From c72a35372b822351a8ba9b1b87fd0eb71ee24e6d Mon Sep 17 00:00:00 2001 From: Jason Gunthorpe Date: Fri, 27 Feb 2026 11:25:36 -0400 -Subject: [PATCH 075/269] UPSTREAM: iommupt: Add the RISC-V page table format +Subject: [RUYI PATCH] UPSTREAM: iommupt: Add the RISC-V page table format The RISC-V format is a fairly simple 5 level page table not unlike the x86 one. It has optional support for a single contiguous page size of 64k (16 @@ -486,10 +486,10 @@ index 6a9a1acb5aad..fc5d0b5edadc 100644 struct pt_common common; }; diff --git a/include/linux/generic_pt/iommu.h b/include/linux/generic_pt/iommu.h -index 9eefbb74efd0..49d9addb98c5 100644 +index 43cc98c9c55f..dd0edd02a48a 100644 --- a/include/linux/generic_pt/iommu.h +++ b/include/linux/generic_pt/iommu.h -@@ -275,6 +275,17 @@ struct pt_iommu_vtdss_hw_info { +@@ -322,6 +322,17 @@ struct pt_iommu_vtdss_hw_info { IOMMU_FORMAT(vtdss, vtdss_pt); diff --git a/SPECS/linux/0076-UPSTREAM-iommu-riscv-Disable-SADE.patch b/SPECS/linux/0076-UPSTREAM-iommu-riscv-Disable-SADE.patch index 4119634580..8ba3beae44 100644 --- a/SPECS/linux/0076-UPSTREAM-iommu-riscv-Disable-SADE.patch +++ b/SPECS/linux/0076-UPSTREAM-iommu-riscv-Disable-SADE.patch @@ -1,7 +1,7 @@ -From 67145eb27fcf9d63cb376698b725d3152c12a344 Mon Sep 17 00:00:00 2001 +From 0d4f3d6072aa64dcf8264c20f390c5b3804e54b6 Mon Sep 17 00:00:00 2001 From: Jason Gunthorpe Date: Fri, 27 Feb 2026 11:25:37 -0400 -Subject: [PATCH 076/269] UPSTREAM: iommu/riscv: Disable SADE +Subject: [RUYI PATCH] UPSTREAM: iommu/riscv: Disable SADE In terms of the iommu subystem the SADE/GADE feature "3.4. IOMMU updating of PTE accessed (A) and dirty (D) updates" is called dirty tracking. diff --git a/SPECS/linux/0077-UPSTREAM-iommu-riscv-Use-the-generic-iommu-page-tabl.patch b/SPECS/linux/0077-UPSTREAM-iommu-riscv-Use-the-generic-iommu-page-tabl.patch index 0bec3d03b4..7fcca04320 100644 --- a/SPECS/linux/0077-UPSTREAM-iommu-riscv-Use-the-generic-iommu-page-tabl.patch +++ b/SPECS/linux/0077-UPSTREAM-iommu-riscv-Use-the-generic-iommu-page-tabl.patch @@ -1,8 +1,7 @@ -From ed50d3475f69d828a05b881a731b1852d092a1e8 Mon Sep 17 00:00:00 2001 +From 1715db28fd8764e226c22f04ef0788b8eeead1c3 Mon Sep 17 00:00:00 2001 From: Jason Gunthorpe Date: Fri, 27 Feb 2026 11:25:38 -0400 -Subject: [PATCH 077/269] UPSTREAM: iommu/riscv: Use the generic iommu page - table +Subject: [RUYI PATCH] UPSTREAM: iommu/riscv: Use the generic iommu page table This is a fairly straightforward conversion of the RISC-V iommu driver to use the generic iommu page table code. diff --git a/SPECS/linux/0078-UPSTREAM-iommu-riscv-Enable-SVNAPOT-support-for-cont.patch b/SPECS/linux/0078-UPSTREAM-iommu-riscv-Enable-SVNAPOT-support-for-cont.patch index 84318876e1..82c80b2cf0 100644 --- a/SPECS/linux/0078-UPSTREAM-iommu-riscv-Enable-SVNAPOT-support-for-cont.patch +++ b/SPECS/linux/0078-UPSTREAM-iommu-riscv-Enable-SVNAPOT-support-for-cont.patch @@ -1,7 +1,7 @@ -From 4eccbb21ec7749e9a380a211cd492d8201790b3c Mon Sep 17 00:00:00 2001 +From da61e60d428f734608bb453fc37d49b1ce449afd Mon Sep 17 00:00:00 2001 From: Jason Gunthorpe Date: Fri, 27 Feb 2026 11:25:39 -0400 -Subject: [PATCH 078/269] UPSTREAM: iommu/riscv: Enable SVNAPOT support for +Subject: [RUYI PATCH] UPSTREAM: iommu/riscv: Enable SVNAPOT support for contiguous ptes This turns on a 64k page size. The "RISC-V IOMMU Architecture diff --git a/SPECS/linux/0079-UPSTREAM-iommu-riscv-Allow-RISC_VIOMMU-to-COMPILE_TE.patch b/SPECS/linux/0079-UPSTREAM-iommu-riscv-Allow-RISC_VIOMMU-to-COMPILE_TE.patch index 24407c4974..12d0cc5214 100644 --- a/SPECS/linux/0079-UPSTREAM-iommu-riscv-Allow-RISC_VIOMMU-to-COMPILE_TE.patch +++ b/SPECS/linux/0079-UPSTREAM-iommu-riscv-Allow-RISC_VIOMMU-to-COMPILE_TE.patch @@ -1,8 +1,7 @@ -From 648ac33a730ff526540f0eccb16de8566029f9da Mon Sep 17 00:00:00 2001 +From 469c466637a1ccb4ffed886b2d6667267a70c218 Mon Sep 17 00:00:00 2001 From: Jason Gunthorpe Date: Fri, 27 Feb 2026 11:25:41 -0400 -Subject: [PATCH 079/269] UPSTREAM: iommu/riscv: Allow RISC_VIOMMU to - COMPILE_TEST +Subject: [RUYI PATCH] UPSTREAM: iommu/riscv: Allow RISC_VIOMMU to COMPILE_TEST This driver used to use a lot of page table constants from the architecture code which prevented COMPILE_TEST on other architectures. Now that iommupt diff --git a/SPECS/linux/0080-UPSTREAM-riscv-Define-__riscv_copy_-vec_-words-bytes.patch b/SPECS/linux/0080-UPSTREAM-riscv-Define-__riscv_copy_-vec_-words-bytes.patch index 533bd3939a..7456eb80f0 100644 --- a/SPECS/linux/0080-UPSTREAM-riscv-Define-__riscv_copy_-vec_-words-bytes.patch +++ b/SPECS/linux/0080-UPSTREAM-riscv-Define-__riscv_copy_-vec_-words-bytes.patch @@ -1,7 +1,7 @@ -From 7a7f7da197b8a725ccd0708c0899416e7d73dda2 Mon Sep 17 00:00:00 2001 +From 34543ba7fb1ecd51a87c4f643b632200b8d6c448 Mon Sep 17 00:00:00 2001 From: Nathan Chancellor Date: Wed, 29 Apr 2026 20:38:17 -0600 -Subject: [PATCH 080/269] UPSTREAM: riscv: Define +Subject: [RUYI PATCH] UPSTREAM: riscv: Define __riscv_copy_{,vec_}{words,bytes}_unaligned() using SYM_TYPED_FUNC_START After commit 67bdd7b01387 ("riscv: Split out measure_cycles() for diff --git a/SPECS/linux/0082-UPSTREAM-drm-amd-display-Add-min-clock-init-for-DML2.patch b/SPECS/linux/0081-UPSTREAM-drm-amd-display-Add-min-clock-init-for-DML2.patch similarity index 96% rename from SPECS/linux/0082-UPSTREAM-drm-amd-display-Add-min-clock-init-for-DML2.patch rename to SPECS/linux/0081-UPSTREAM-drm-amd-display-Add-min-clock-init-for-DML2.patch index c8bd563685..42a6de024d 100644 --- a/SPECS/linux/0082-UPSTREAM-drm-amd-display-Add-min-clock-init-for-DML2.patch +++ b/SPECS/linux/0081-UPSTREAM-drm-amd-display-Add-min-clock-init-for-DML2.patch @@ -1,8 +1,8 @@ -From 8c600c53e43b0fede5a5ed881f04f1b846a2ee98 Mon Sep 17 00:00:00 2001 +From 16c408532e6dbd202fa49f477cd44fb0c7c8207c Mon Sep 17 00:00:00 2001 From: Ovidiu Bunea Date: Tue, 10 Feb 2026 15:26:18 -0500 -Subject: [PATCH 082/269] UPSTREAM: drm/amd/display: Add min clock init for - DML21 mode programming +Subject: [RUYI PATCH] UPSTREAM: drm/amd/display: Add min clock init for DML21 + mode programming [WHY & HOW] 0 stream cases do not go through any DML validation which leaves DCN diff --git a/SPECS/linux/0081-UPSTREAM-riscv-mm-Fixup-no5lvl-failure-when-vaddr-is.patch b/SPECS/linux/0081-UPSTREAM-riscv-mm-Fixup-no5lvl-failure-when-vaddr-is.patch deleted file mode 100644 index c619aafd04..0000000000 --- a/SPECS/linux/0081-UPSTREAM-riscv-mm-Fixup-no5lvl-failure-when-vaddr-is.patch +++ /dev/null @@ -1,85 +0,0 @@ -From 2317b5fc8310beaff7198764bb2602cb64e84df9 Mon Sep 17 00:00:00 2001 -From: "Guo Ren (Alibaba DAMO Academy)" -Date: Sun, 25 Jan 2026 00:52:12 -0500 -Subject: [PATCH 081/269] UPSTREAM: riscv: mm: Fixup no5lvl failure when vaddr - is invalid -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -Unlike no4lvl, no5lvl still continues to detect satp, which -requires va=pa mapping. When pa=0x800000000000, no5lvl -would fail in Sv48 mode due to an illegal VA value of -0x800000000000. - -So, prevent detecting the satp flow for no5lvl, when -vaddr is invalid. Add the is_vaddr_valid() function for -checking. - -Fixes: 26e7aacb83df ("riscv: Allow to downgrade paging mode from the command line") -Cc: Alexandre Ghiti -Cc: Björn Töpel -Signed-off-by: Guo Ren (Alibaba DAMO Academy) -Tested-by: Fangyu Yu -Link: https://patch.msgid.link/20260125055212.433163-1-guoren@kernel.org -[pjw@kernel.org: cleaned up commit message] -Signed-off-by: Paul Walmsley -(cherry picked from commit db909bd7986c10da074917af3dae83a60fa65093) -Signed-off-by: Han Gao ---- - arch/riscv/mm/init.c | 25 +++++++++++++++++++++++++ - 1 file changed, 25 insertions(+) - -diff --git a/arch/riscv/mm/init.c b/arch/riscv/mm/init.c -index c12590ab3d0e..31007b426d54 100644 ---- a/arch/riscv/mm/init.c -+++ b/arch/riscv/mm/init.c -@@ -846,6 +846,27 @@ static void __init set_mmap_rnd_bits_max(void) - mmap_rnd_bits_max = MMAP_VA_BITS - PAGE_SHIFT - 3; - } - -+static bool __init is_vaddr_valid(unsigned long va) -+{ -+ unsigned long up = 0; -+ -+ switch (satp_mode) { -+ case SATP_MODE_39: -+ up = 1UL << 38; -+ break; -+ case SATP_MODE_48: -+ up = 1UL << 47; -+ break; -+ case SATP_MODE_57: -+ up = 1UL << 56; -+ break; -+ default: -+ return false; -+ } -+ -+ return (va < up) || (va >= (ULONG_MAX - up + 1)); -+} -+ - /* - * There is a simple way to determine if 4-level is supported by the - * underlying hardware: establish 1:1 mapping in 4-level page table mode -@@ -887,6 +908,9 @@ static __init void set_satp_mode(uintptr_t dtb_pa) - set_satp_mode_pmd + PMD_SIZE, - PMD_SIZE, PAGE_KERNEL_EXEC); - retry: -+ if (!is_vaddr_valid(set_satp_mode_pmd)) -+ goto out; -+ - create_pgd_mapping(early_pg_dir, - set_satp_mode_pmd, - pgtable_l5_enabled ? -@@ -909,6 +933,7 @@ static __init void set_satp_mode(uintptr_t dtb_pa) - disable_pgtable_l4(); - } - -+out: - memset(early_pg_dir, 0, PAGE_SIZE); - memset(early_p4d, 0, PAGE_SIZE); - memset(early_pud, 0, PAGE_SIZE); --- -2.53.0 - diff --git a/SPECS/linux/0083-UPSTREAM-drm-amd-display-Backport-dml21-DC_RUN_WITH_.patch b/SPECS/linux/0082-UPSTREAM-drm-amd-display-Backport-dml21-DC_RUN_WITH_.patch similarity index 95% rename from SPECS/linux/0083-UPSTREAM-drm-amd-display-Backport-dml21-DC_RUN_WITH_.patch rename to SPECS/linux/0082-UPSTREAM-drm-amd-display-Backport-dml21-DC_RUN_WITH_.patch index 33e64ffaf5..e3ca2dc6b7 100644 --- a/SPECS/linux/0083-UPSTREAM-drm-amd-display-Backport-dml21-DC_RUN_WITH_.patch +++ b/SPECS/linux/0082-UPSTREAM-drm-amd-display-Backport-dml21-DC_RUN_WITH_.patch @@ -1,7 +1,7 @@ -From a0b2a89dfeef479667ec1148740053b59f60ec23 Mon Sep 17 00:00:00 2001 +From fab74884e826254f5ab9b2b1c57c94225c37096b Mon Sep 17 00:00:00 2001 From: Xi Ruoyao Date: Mon, 11 May 2026 16:42:19 +0800 -Subject: [PATCH 083/269] UPSTREAM: drm/amd/display: Backport dml21 +Subject: [RUYI PATCH] UPSTREAM: drm/amd/display: Backport dml21 DC_RUN_WITH_PREEMPTION_ENABLED addition from DC 3.2.373 It's a part of the upstream commit e56e3cff2a1b ("drm/amd/display: Sync diff --git a/SPECS/linux/0083-UPSTREAM-drm-amd-display-Move-FPU-Guards-From-DML-To.patch b/SPECS/linux/0083-UPSTREAM-drm-amd-display-Move-FPU-Guards-From-DML-To.patch new file mode 100644 index 0000000000..160df5c013 --- /dev/null +++ b/SPECS/linux/0083-UPSTREAM-drm-amd-display-Move-FPU-Guards-From-DML-To.patch @@ -0,0 +1,2921 @@ +From 06d3a3080e44798d7b786bfd80432f4db9281cd0 Mon Sep 17 00:00:00 2001 +From: Rafal Ostrowski +Date: Tue, 24 Feb 2026 15:36:09 +0100 +Subject: [RUYI PATCH] UPSTREAM: drm/amd/display: Move FPU Guards From DML To + DC - Part 1 + +[Why] +FPU guards (DC_FP_START/DC_FP_END) are required to wrap around code that +can manipulates floats. To do this properly, the FPU guards must be used +in a file that is not compiled as a FPU unit. If the guards are used in +a file that is a FPU unit, other sections in the file that aren't guarded +may be end up being compiled to use FPU operations. + +[How] +Added DC_FP_START and DC_FP_END to DC functions that call DML functions +using FPU. + +Reviewed-by: Dillon Varone +Signed-off-by: Rafal Ostrowski +Signed-off-by: Alex Hung +Signed-off-by: Alex Deucher + +(cherry picked from commit 3539437f354bd24c98928a80d4db3a23fa2a7b19) +Signed-off-by: Xi Ruoyao +Signed-off-by: Han Gao +--- + .../gpu/drm/amd/display/amdgpu_dm/dc_fpu.c | 25 +- + .../gpu/drm/amd/display/amdgpu_dm/dc_fpu.h | 17 +- + .../display/dc/clk_mgr/dcn30/dcn30_clk_mgr.c | 2 - + .../display/dc/clk_mgr/dcn32/dcn32_clk_mgr.c | 2 - + drivers/gpu/drm/amd/display/dc/core/dc.c | 5 +- + .../gpu/drm/amd/display/dc/core/dc_state.c | 75 +- + .../gpu/drm/amd/display/dc/core/dc_stream.c | 15 +- + .../amd/display/dc/hwss/dcn401/dcn401_hwseq.c | 4 +- + .../dc/resource/dcn35/dcn35_resource.c | 10 +- + .../dc/resource/dcn35/dcn35_resource.h | 1 + + .../dc/resource/dcn351/dcn351_resource.c | 10 +- + .../dc/resource/dcn36/dcn36_resource.c | 4 +- + .../dc/resource/dcn401/dcn401_resource.c | 30 +- + .../dc/resource/dcn42/dcn42_resource.c | 2355 +++++++++++++++++ + 14 files changed, 2508 insertions(+), 47 deletions(-) + create mode 100644 drivers/gpu/drm/amd/display/dc/resource/dcn42/dcn42_resource.c + +diff --git a/drivers/gpu/drm/amd/display/amdgpu_dm/dc_fpu.c b/drivers/gpu/drm/amd/display/amdgpu_dm/dc_fpu.c +index e46f8ce41d87..8ba9b4f56f87 100644 +--- a/drivers/gpu/drm/amd/display/amdgpu_dm/dc_fpu.c ++++ b/drivers/gpu/drm/amd/display/amdgpu_dm/dc_fpu.c +@@ -53,11 +53,30 @@ inline void dc_assert_fp_enabled(void) + { + int depth; + +- depth = __this_cpu_read(fpu_recursion_depth); ++ depth = this_cpu_read(fpu_recursion_depth); + + ASSERT(depth >= 1); + } + ++/** ++ * dc_assert_fp_enabled - Check if FPU protection is enabled ++ * ++ * This function tells if the code is already under FPU protection or not. A ++ * function that works as an API for a set of FPU operations can use this ++ * function for checking if the caller invoked it after DC_FP_START(). For ++ * example, take a look at dcn20_fpu.c file. ++ * ++ * Similar to dc_assert_fp_enabled, but does not assert, returns status instead. ++ */ ++inline bool dc_is_fp_enabled(void) ++{ ++ int depth; ++ ++ depth = this_cpu_read(fpu_recursion_depth); ++ ++ return (depth >= 1); ++} ++ + /** + * dc_fpu_begin - Enables FPU protection + * @function_name: A string containing the function name for debug purposes +@@ -77,7 +96,7 @@ void dc_fpu_begin(const char *function_name, const int line) + + WARN_ON_ONCE(!in_task()); + preempt_disable(); +- depth = __this_cpu_inc_return(fpu_recursion_depth); ++ depth = this_cpu_inc_return(fpu_recursion_depth); + if (depth == 1) { + BUG_ON(!kernel_fpu_available()); + kernel_fpu_begin(); +@@ -100,7 +119,7 @@ void dc_fpu_end(const char *function_name, const int line) + { + int depth; + +- depth = __this_cpu_dec_return(fpu_recursion_depth); ++ depth = this_cpu_dec_return(fpu_recursion_depth); + if (depth == 0) { + kernel_fpu_end(); + } else { +diff --git a/drivers/gpu/drm/amd/display/amdgpu_dm/dc_fpu.h b/drivers/gpu/drm/amd/display/amdgpu_dm/dc_fpu.h +index 4e921632bc4e..5e95419d3798 100644 +--- a/drivers/gpu/drm/amd/display/amdgpu_dm/dc_fpu.h ++++ b/drivers/gpu/drm/amd/display/amdgpu_dm/dc_fpu.h +@@ -28,15 +28,30 @@ + #define __DC_FPU_H__ + + void dc_assert_fp_enabled(void); ++bool dc_is_fp_enabled(void); + void dc_fpu_begin(const char *function_name, const int line); + void dc_fpu_end(const char *function_name, const int line); + + #ifndef _LINUX_FPU_COMPILATION_UNIT + #define DC_FP_START() dc_fpu_begin(__func__, __LINE__) + #define DC_FP_END() dc_fpu_end(__func__, __LINE__) ++#ifdef CONFIG_DRM_AMD_DC_FP ++#define DC_RUN_WITH_PREEMPTION_ENABLED(code) \ ++ do { \ ++ bool dc_fp_enabled = dc_is_fp_enabled(); \ ++ if (dc_fp_enabled) \ ++ DC_FP_END(); \ ++ code; \ ++ if (dc_fp_enabled) \ ++ DC_FP_START(); \ ++ } while (0) ++#else ++#define DC_RUN_WITH_PREEMPTION_ENABLED(code) code ++#endif // !CONFIG_DRM_AMD_DC_FP + #else + #define DC_FP_START() BUILD_BUG() + #define DC_FP_END() BUILD_BUG() +-#endif ++#define DC_RUN_WITH_PREEMPTION_ENABLED(code) code ++#endif // !_LINUX_FPU_COMPILATION_UNIT + + #endif /* __DC_FPU_H__ */ +diff --git a/drivers/gpu/drm/amd/display/dc/clk_mgr/dcn30/dcn30_clk_mgr.c b/drivers/gpu/drm/amd/display/dc/clk_mgr/dcn30/dcn30_clk_mgr.c +index b0aba3a6f13c..e06f06158ac8 100644 +--- a/drivers/gpu/drm/amd/display/dc/clk_mgr/dcn30/dcn30_clk_mgr.c ++++ b/drivers/gpu/drm/amd/display/dc/clk_mgr/dcn30/dcn30_clk_mgr.c +@@ -421,10 +421,8 @@ static void dcn3_get_memclk_states_from_smu(struct clk_mgr *clk_mgr_base) + clk_mgr_base->bw_params->dc_mode_softmax_memclk = dcn30_smu_get_dc_mode_max_dpm_freq(clk_mgr, PPCLK_UCLK); + + /* Refresh bounding box */ +- DC_FP_START(); + clk_mgr_base->ctx->dc->res_pool->funcs->update_bw_bounding_box( + clk_mgr->base.ctx->dc, clk_mgr_base->bw_params); +- DC_FP_END(); + } + + static bool dcn3_is_smu_present(struct clk_mgr *clk_mgr_base) +diff --git a/drivers/gpu/drm/amd/display/dc/clk_mgr/dcn32/dcn32_clk_mgr.c b/drivers/gpu/drm/amd/display/dc/clk_mgr/dcn32/dcn32_clk_mgr.c +index 2856b0337e87..4007ab353ffd 100644 +--- a/drivers/gpu/drm/amd/display/dc/clk_mgr/dcn32/dcn32_clk_mgr.c ++++ b/drivers/gpu/drm/amd/display/dc/clk_mgr/dcn32/dcn32_clk_mgr.c +@@ -1059,11 +1059,9 @@ static void dcn32_get_memclk_states_from_smu(struct clk_mgr *clk_mgr_base) + if (!clk_mgr->dpm_present) + dcn32_patch_dpm_table(clk_mgr_base->bw_params); + +- DC_FP_START(); + /* Refresh bounding box */ + clk_mgr_base->ctx->dc->res_pool->funcs->update_bw_bounding_box( + clk_mgr->base.ctx->dc, clk_mgr_base->bw_params); +- DC_FP_END(); + } + + static bool dcn32_are_clock_states_equal(struct dc_clocks *a, +diff --git a/drivers/gpu/drm/amd/display/dc/core/dc.c b/drivers/gpu/drm/amd/display/dc/core/dc.c +index 73fde9df22d1..c406cc963b5a 100644 +--- a/drivers/gpu/drm/amd/display/dc/core/dc.c ++++ b/drivers/gpu/drm/amd/display/dc/core/dc.c +@@ -1165,11 +1165,8 @@ static bool dc_construct(struct dc *dc, + #ifdef CONFIG_DRM_AMD_DC_FP + dc->clk_mgr->force_smu_not_present = init_params->force_smu_not_present; + +- if (dc->res_pool->funcs->update_bw_bounding_box) { +- DC_FP_START(); ++ if (dc->res_pool->funcs->update_bw_bounding_box) + dc->res_pool->funcs->update_bw_bounding_box(dc, dc->clk_mgr->bw_params); +- DC_FP_END(); +- } + dc->soc_and_ip_translator = dc_create_soc_and_ip_translator(dc_ctx->dce_version); + if (!dc->soc_and_ip_translator) + goto fail; +diff --git a/drivers/gpu/drm/amd/display/dc/core/dc_state.c b/drivers/gpu/drm/amd/display/dc/core/dc_state.c +index a40e5c44143f..13d334c2cb6b 100644 +--- a/drivers/gpu/drm/amd/display/dc/core/dc_state.c ++++ b/drivers/gpu/drm/amd/display/dc/core/dc_state.c +@@ -205,19 +205,33 @@ struct dc_state *dc_state_create(struct dc *dc, struct dc_state_create_params *p + state->power_source = params ? params->power_source : DC_POWER_SOURCE_AC; + + #ifdef CONFIG_DRM_AMD_DC_FP ++ bool status; ++ + if (dc->debug.using_dml2) { +- if (!dml2_create(dc, &dc->dml2_options, &state->bw_ctx.dml2)) { ++ DC_FP_START(); ++ status = dml2_create(dc, &dc->dml2_options, &state->bw_ctx.dml2); ++ DC_FP_END(); ++ ++ if (!status) { + dc_state_release(state); + return NULL; + } + +- if (dc->caps.dcmode_power_limits_present && !dml2_create(dc, &dc->dml2_dc_power_options, &state->bw_ctx.dml2_dc_power_source)) { +- dc_state_release(state); +- return NULL; ++ if (dc->caps.dcmode_power_limits_present) { ++ bool status; ++ ++ DC_FP_START(); ++ status = dml2_create(dc, &dc->dml2_dc_power_options, &state->bw_ctx.dml2_dc_power_source); ++ DC_FP_END(); ++ ++ if (!status) { ++ dc_state_release(state); ++ return NULL; ++ } + } +- } +-#endif + ++ } ++#endif // CONFIG_DRM_AMD_DC_FP + kref_init(&state->refcount); + + return state; +@@ -235,14 +249,20 @@ void dc_state_copy(struct dc_state *dst_state, struct dc_state *src_state) + + #ifdef CONFIG_DRM_AMD_DC_FP + dst_state->bw_ctx.dml2 = dst_dml2; +- if (src_state->bw_ctx.dml2) ++ if (src_state->bw_ctx.dml2) { ++ DC_FP_START(); + dml2_copy(dst_state->bw_ctx.dml2, src_state->bw_ctx.dml2); ++ DC_FP_END(); ++ } + + dst_state->bw_ctx.dml2_dc_power_source = dst_dml2_dc_power_source; +- if (src_state->bw_ctx.dml2_dc_power_source) +- dml2_copy(dst_state->bw_ctx.dml2_dc_power_source, src_state->bw_ctx.dml2_dc_power_source); +-#endif + ++ if (src_state->bw_ctx.dml2_dc_power_source) { ++ DC_FP_START(); ++ dml2_copy(dst_state->bw_ctx.dml2_dc_power_source, src_state->bw_ctx.dml2_dc_power_source); ++ DC_FP_END(); ++ } ++#endif // CONFIG_DRM_AMD_DC_FP + /* context refcount should not be overridden */ + dst_state->refcount = refcount; + } +@@ -258,22 +278,35 @@ struct dc_state *dc_state_create_copy(struct dc_state *src_state) + dc_state_copy_internal(new_state, src_state); + + #ifdef CONFIG_DRM_AMD_DC_FP ++ bool status; ++ + new_state->bw_ctx.dml2 = NULL; + new_state->bw_ctx.dml2_dc_power_source = NULL; + +- if (src_state->bw_ctx.dml2 && +- !dml2_create_copy(&new_state->bw_ctx.dml2, src_state->bw_ctx.dml2)) { +- dc_state_release(new_state); +- return NULL; +- } ++ if (src_state->bw_ctx.dml2) { ++ DC_FP_START(); ++ status = dml2_create_copy(&new_state->bw_ctx.dml2, src_state->bw_ctx.dml2); ++ DC_FP_END(); + +- if (src_state->bw_ctx.dml2_dc_power_source && +- !dml2_create_copy(&new_state->bw_ctx.dml2_dc_power_source, src_state->bw_ctx.dml2_dc_power_source)) { +- dc_state_release(new_state); +- return NULL; ++ if (!status) { ++ dc_state_release(new_state); ++ return NULL; ++ } + } +-#endif + ++ ++ if (src_state->bw_ctx.dml2_dc_power_source) { ++ DC_FP_START(); ++ status = dml2_create_copy(&new_state->bw_ctx.dml2_dc_power_source, ++ src_state->bw_ctx.dml2_dc_power_source); ++ DC_FP_END(); ++ ++ if (!status) { ++ dc_state_release(new_state); ++ return NULL; ++ } ++ } ++#endif // CONFIG_DRM_AMD_DC_FP + kref_init(&new_state->refcount); + + return new_state; +@@ -351,11 +384,13 @@ static void dc_state_free(struct kref *kref) + dc_state_destruct(state); + + #ifdef CONFIG_DRM_AMD_DC_FP ++ DC_FP_START(); + dml2_destroy(state->bw_ctx.dml2); + state->bw_ctx.dml2 = 0; + + dml2_destroy(state->bw_ctx.dml2_dc_power_source); + state->bw_ctx.dml2_dc_power_source = 0; ++ DC_FP_END(); + #endif + + kvfree(state); +diff --git a/drivers/gpu/drm/amd/display/dc/core/dc_stream.c b/drivers/gpu/drm/amd/display/dc/core/dc_stream.c +index baf820e6eae8..dca64e1671f6 100644 +--- a/drivers/gpu/drm/amd/display/dc/core/dc_stream.c ++++ b/drivers/gpu/drm/amd/display/dc/core/dc_stream.c +@@ -42,6 +42,13 @@ + #define MAX(x, y) ((x > y) ? x : y) + #endif + ++#include "dc_fpu.h" ++ ++#if !defined(DC_RUN_WITH_PREEMPTION_ENABLED) ++#define DC_RUN_WITH_PREEMPTION_ENABLED(code) code ++#endif // !DC_RUN_WITH_PREEMPTION_ENABLED ++ ++ + /******************************************************************************* + * Private functions + ******************************************************************************/ +@@ -170,11 +177,15 @@ struct dc_stream_state *dc_create_stream_for_sink( + if (sink == NULL) + goto fail; + +- stream = kzalloc_obj(struct dc_stream_state, GFP_ATOMIC); ++ DC_RUN_WITH_PREEMPTION_ENABLED(stream = kzalloc_obj(struct dc_stream_state, GFP_ATOMIC)); ++ + if (stream == NULL) + goto fail; + +- stream->update_scratch = kzalloc((int32_t) dc_update_scratch_space_size(), GFP_ATOMIC); ++ DC_RUN_WITH_PREEMPTION_ENABLED(stream->update_scratch = ++ kzalloc((int32_t) dc_update_scratch_space_size(), ++ GFP_ATOMIC)); ++ + if (stream->update_scratch == NULL) + goto fail; + +diff --git a/drivers/gpu/drm/amd/display/dc/hwss/dcn401/dcn401_hwseq.c b/drivers/gpu/drm/amd/display/dc/hwss/dcn401/dcn401_hwseq.c +index 4dfb6c865831..a6c3a1f5fbfa 100644 +--- a/drivers/gpu/drm/amd/display/dc/hwss/dcn401/dcn401_hwseq.c ++++ b/drivers/gpu/drm/amd/display/dc/hwss/dcn401/dcn401_hwseq.c +@@ -371,8 +371,8 @@ void dcn401_init_hw(struct dc *dc) + dc->res_pool->funcs->update_bw_bounding_box && + dc->clk_mgr && dc->clk_mgr->bw_params) { + /* update bounding box if FAMS2 disabled, or if dchub clk has changed */ +- dc->res_pool->funcs->update_bw_bounding_box(dc, +- dc->clk_mgr->bw_params); ++ if (dc->clk_mgr) ++ dc->res_pool->funcs->update_bw_bounding_box(dc, dc->clk_mgr->bw_params); + } + } + } +diff --git a/drivers/gpu/drm/amd/display/dc/resource/dcn35/dcn35_resource.c b/drivers/gpu/drm/amd/display/dc/resource/dcn35/dcn35_resource.c +index 598b2f25881d..adbd23fcc9b7 100644 +--- a/drivers/gpu/drm/amd/display/dc/resource/dcn35/dcn35_resource.c ++++ b/drivers/gpu/drm/amd/display/dc/resource/dcn35/dcn35_resource.c +@@ -1773,9 +1773,11 @@ static enum dc_status dcn35_validate_bandwidth(struct dc *dc, + { + bool out = false; + ++ DC_FP_START(); + out = dml2_validate(dc, context, + context->power_source == DC_POWER_SOURCE_DC ? context->bw_ctx.dml2_dc_power_source : context->bw_ctx.dml2, + validate_mode); ++ DC_FP_END(); + + if (validate_mode != DC_VALIDATE_MODE_AND_PROGRAMMING) + return out ? DC_OK : DC_FAIL_BANDWIDTH_VALIDATE; +@@ -1809,6 +1811,12 @@ static int populate_dml_pipes_from_context_fpu(struct dc *dc, + return ret; + } + ++void dcn35_update_bw_bounding_box(struct dc *dc, struct clk_bw_params *bw_params) ++{ ++ DC_FP_START(); ++ dcn35_update_bw_bounding_box_fpu(dc, bw_params); ++ DC_FP_END(); ++} + static struct resource_funcs dcn35_res_pool_funcs = { + .destroy = dcn35_destroy_resource_pool, + .link_enc_create = dcn35_link_encoder_create, +@@ -1830,7 +1838,7 @@ static struct resource_funcs dcn35_res_pool_funcs = { + .find_first_free_match_stream_enc_for_link = dcn10_find_first_free_match_stream_enc_for_link, + .acquire_post_bldn_3dlut = dcn30_acquire_post_bldn_3dlut, + .release_post_bldn_3dlut = dcn30_release_post_bldn_3dlut, +- .update_bw_bounding_box = dcn35_update_bw_bounding_box_fpu, ++ .update_bw_bounding_box = dcn35_update_bw_bounding_box, + .patch_unknown_plane_state = dcn35_patch_unknown_plane_state, + .get_panel_config_defaults = dcn35_get_panel_config_defaults, + .get_preferred_eng_id_dpia = dcn35_get_preferred_eng_id_dpia, +diff --git a/drivers/gpu/drm/amd/display/dc/resource/dcn35/dcn35_resource.h b/drivers/gpu/drm/amd/display/dc/resource/dcn35/dcn35_resource.h +index 9c56ae76e0c7..6c2c61c711b9 100644 +--- a/drivers/gpu/drm/amd/display/dc/resource/dcn35/dcn35_resource.h ++++ b/drivers/gpu/drm/amd/display/dc/resource/dcn35/dcn35_resource.h +@@ -312,4 +312,5 @@ struct resource_pool *dcn35_create_resource_pool( + #define DPP_REG_LIST_DCN35_RI(id)\ + DPP_REG_LIST_DCN30_COMMON_RI(id) + ++void dcn35_update_bw_bounding_box(struct dc *dc, struct clk_bw_params *bw_params); + #endif /* _DCN35_RESOURCE_H_ */ +diff --git a/drivers/gpu/drm/amd/display/dc/resource/dcn351/dcn351_resource.c b/drivers/gpu/drm/amd/display/dc/resource/dcn351/dcn351_resource.c +index 7e15d07df7a3..dc70b771633f 100644 +--- a/drivers/gpu/drm/amd/display/dc/resource/dcn351/dcn351_resource.c ++++ b/drivers/gpu/drm/amd/display/dc/resource/dcn351/dcn351_resource.c +@@ -1753,9 +1753,11 @@ static enum dc_status dcn351_validate_bandwidth(struct dc *dc, + { + bool out = false; + ++ DC_FP_START(); + out = dml2_validate(dc, context, + context->power_source == DC_POWER_SOURCE_DC ? context->bw_ctx.dml2_dc_power_source : context->bw_ctx.dml2, + validate_mode); ++ DC_FP_END(); + + if (validate_mode != DC_VALIDATE_MODE_AND_PROGRAMMING) + return out ? DC_OK : DC_FAIL_BANDWIDTH_VALIDATE; +@@ -1782,6 +1784,12 @@ static int populate_dml_pipes_from_context_fpu(struct dc *dc, + + } + ++static void dcn351_update_bw_bounding_box(struct dc *dc, struct clk_bw_params *bw_params) ++{ ++ DC_FP_START(); ++ dcn351_update_bw_bounding_box_fpu(dc, bw_params); ++ DC_FP_END(); ++} + static struct resource_funcs dcn351_res_pool_funcs = { + .destroy = dcn351_destroy_resource_pool, + .link_enc_create = dcn35_link_encoder_create, +@@ -1803,7 +1811,7 @@ static struct resource_funcs dcn351_res_pool_funcs = { + .find_first_free_match_stream_enc_for_link = dcn10_find_first_free_match_stream_enc_for_link, + .acquire_post_bldn_3dlut = dcn30_acquire_post_bldn_3dlut, + .release_post_bldn_3dlut = dcn30_release_post_bldn_3dlut, +- .update_bw_bounding_box = dcn351_update_bw_bounding_box_fpu, ++ .update_bw_bounding_box = dcn351_update_bw_bounding_box, + .patch_unknown_plane_state = dcn35_patch_unknown_plane_state, + .get_panel_config_defaults = dcn35_get_panel_config_defaults, + .get_preferred_eng_id_dpia = dcn351_get_preferred_eng_id_dpia, +diff --git a/drivers/gpu/drm/amd/display/dc/resource/dcn36/dcn36_resource.c b/drivers/gpu/drm/amd/display/dc/resource/dcn36/dcn36_resource.c +index 83fee2ca61bf..2667a2e8b04f 100644 +--- a/drivers/gpu/drm/amd/display/dc/resource/dcn36/dcn36_resource.c ++++ b/drivers/gpu/drm/amd/display/dc/resource/dcn36/dcn36_resource.c +@@ -1760,9 +1760,11 @@ static enum dc_status dcn35_validate_bandwidth(struct dc *dc, + { + bool out = false; + ++ DC_FP_START(); + out = dml2_validate(dc, context, + context->power_source == DC_POWER_SOURCE_DC ? context->bw_ctx.dml2_dc_power_source : context->bw_ctx.dml2, + validate_mode); ++ DC_FP_END(); + + if (validate_mode != DC_VALIDATE_MODE_AND_PROGRAMMING) + return out ? DC_OK : DC_FAIL_BANDWIDTH_VALIDATE; +@@ -1810,7 +1812,7 @@ static struct resource_funcs dcn36_res_pool_funcs = { + .find_first_free_match_stream_enc_for_link = dcn10_find_first_free_match_stream_enc_for_link, + .acquire_post_bldn_3dlut = dcn30_acquire_post_bldn_3dlut, + .release_post_bldn_3dlut = dcn30_release_post_bldn_3dlut, +- .update_bw_bounding_box = dcn35_update_bw_bounding_box_fpu, ++ .update_bw_bounding_box = dcn35_update_bw_bounding_box, + .patch_unknown_plane_state = dcn20_patch_unknown_plane_state, + .get_panel_config_defaults = dcn35_get_panel_config_defaults, + .get_preferred_eng_id_dpia = dcn36_get_preferred_eng_id_dpia, +diff --git a/drivers/gpu/drm/amd/display/dc/resource/dcn401/dcn401_resource.c b/drivers/gpu/drm/amd/display/dc/resource/dcn401/dcn401_resource.c +index e37aab939a41..237d1a561da7 100644 +--- a/drivers/gpu/drm/amd/display/dc/resource/dcn401/dcn401_resource.c ++++ b/drivers/gpu/drm/amd/display/dc/resource/dcn401/dcn401_resource.c +@@ -1643,8 +1643,10 @@ static struct dc_cap_funcs cap_funcs = { + .get_subvp_en = dcn32_subvp_in_use, + }; + +-static void dcn401_update_bw_bounding_box(struct dc *dc, struct clk_bw_params *bw_params) ++static void dcn401_update_bw_bounding_box_fpu(struct dc *dc, struct clk_bw_params *bw_params) + { ++ dc_assert_fp_enabled(); ++ + /* re-calculate the available MALL size if required */ + if (bw_params->num_channels > 0) { + dc->caps.max_cab_allocation_bytes = dcn401_calc_num_avail_chans_for_mall( +@@ -1653,17 +1655,19 @@ static void dcn401_update_bw_bounding_box(struct dc *dc, struct clk_bw_params *b + dc->caps.mall_size_total = dc->caps.max_cab_allocation_bytes; + } + +- DC_FP_START(); +- + if (dc->debug.using_dml2 && dc->current_state && dc->current_state->bw_ctx.dml2) + dml2_reinit(dc, &dc->dml2_options, &dc->current_state->bw_ctx.dml2); + + if (dc->debug.using_dml2 && dc->current_state && dc->current_state->bw_ctx.dml2_dc_power_source) + dml2_reinit(dc, &dc->dml2_dc_power_options, &dc->current_state->bw_ctx.dml2_dc_power_source); ++} + ++static void dcn401_update_bw_bounding_box(struct dc *dc, struct clk_bw_params *bw_params) ++{ ++ DC_FP_START(); ++ dcn401_update_bw_bounding_box_fpu(dc, bw_params); + DC_FP_END(); + } +- + enum dc_status dcn401_patch_unknown_plane_state(struct dc_plane_state *plane_state) + { + plane_state->tiling_info.gfxversion = DcGfxAddr3; +@@ -1688,10 +1692,13 @@ enum dc_status dcn401_validate_bandwidth(struct dc *dc, + } + } + +- if (dc->debug.using_dml2) ++ if (dc->debug.using_dml2) { ++ DC_FP_START(); + status = dml2_validate(dc, context, + context->power_source == DC_POWER_SOURCE_DC ? context->bw_ctx.dml2_dc_power_source : context->bw_ctx.dml2, + validate_mode) ? DC_OK : DC_FAIL_BANDWIDTH_VALIDATE; ++ DC_FP_END(); ++ } + + if (validate_mode == DC_VALIDATE_MODE_AND_PROGRAMMING && status == DC_OK && dc_state_is_subvp_in_use(context)) { + /* check new stream configuration still supports cursor if subvp used */ +@@ -1710,10 +1717,13 @@ enum dc_status dcn401_validate_bandwidth(struct dc *dc, + + if (validate_mode == DC_VALIDATE_MODE_AND_PROGRAMMING && status == DC_FAIL_HW_CURSOR_SUPPORT) { + /* attempt to validate again with subvp disabled due to cursor */ +- if (dc->debug.using_dml2) ++ if (dc->debug.using_dml2) { ++ DC_FP_START(); + status = dml2_validate(dc, context, + context->power_source == DC_POWER_SOURCE_DC ? context->bw_ctx.dml2_dc_power_source : context->bw_ctx.dml2, + validate_mode) ? DC_OK : DC_FAIL_BANDWIDTH_VALIDATE; ++ DC_FP_END(); ++ } + } + + return status; +@@ -1722,9 +1732,13 @@ enum dc_status dcn401_validate_bandwidth(struct dc *dc, + void dcn401_prepare_mcache_programming(struct dc *dc, + struct dc_state *context) + { +- if (dc->debug.using_dml21) ++ if (dc->debug.using_dml21) { ++ DC_FP_START(); + dml2_prepare_mcache_programming(dc, context, +- context->power_source == DC_POWER_SOURCE_DC ? context->bw_ctx.dml2_dc_power_source : context->bw_ctx.dml2); ++ context->power_source == DC_POWER_SOURCE_DC ? ++ context->bw_ctx.dml2_dc_power_source : context->bw_ctx.dml2); ++ DC_FP_END(); ++ } + } + + static void dcn401_build_pipe_pix_clk_params(struct pipe_ctx *pipe_ctx) +diff --git a/drivers/gpu/drm/amd/display/dc/resource/dcn42/dcn42_resource.c b/drivers/gpu/drm/amd/display/dc/resource/dcn42/dcn42_resource.c +new file mode 100644 +index 000000000000..b9532ebcced4 +--- /dev/null ++++ b/drivers/gpu/drm/amd/display/dc/resource/dcn42/dcn42_resource.c +@@ -0,0 +1,2355 @@ ++// SPDX-License-Identifier: MIT ++// ++// Copyright 2026 Advanced Micro Devices, Inc. ++ ++#include "dm_services.h" ++#include "dc.h" ++ ++#include "dcn32/dcn32_init.h" ++#include "dcn42/dcn42_init.h" ++ ++#include "resource.h" ++#include "include/irq_service_interface.h" ++ ++#include "dcn42_resource.h" ++#include "dcn42_resource_fpu.h" ++#include "dcn20/dcn20_resource.h" ++#include "dcn30/dcn30_resource.h" ++#include "dcn31/dcn31_resource.h" ++#include "dcn32/dcn32_resource.h" ++#include "dcn35/dcn35_resource.h" ++#include "dcn321/dcn321_resource.h" ++#include "dcn401/dcn401_resource.h" ++ ++#include "dcn10/dcn10_ipp.h" ++#include "dcn35/dcn35_hubbub.h" ++#include "dcn42/dcn42_hubbub.h" ++#include "dcn401/dcn401_mpc.h" ++#include "dcn42/dcn42_mpc.h" ++#include "dcn35/dcn35_hubp.h" ++#include "dcn42/dcn42_hubp.h" ++#include "irq/dcn42/irq_service_dcn42.h" ++#include "dcn42/dcn42_dpp.h" ++#include "dcn401/dcn401_dsc.h" ++#include "dcn42/dcn42_optc.h" ++#include "dcn20/dcn20_hwseq.h" ++#include "dcn30/dcn30_hwseq.h" ++#include "dce110/dce110_hwseq.h" ++#include "dcn35/dcn35_opp.h" ++#include "dcn30/dcn30_vpg.h" ++#include "dcn31/dcn31_vpg.h" ++#include "dcn42/dcn42_dio_stream_encoder.h" ++#include "dcn42/dcn42_pg_cntl.h" ++#include "dcn31/dcn31_hpo_dp_stream_encoder.h" ++#include "dcn31/dcn31_hpo_dp_link_encoder.h" ++#include "dcn32/dcn32_hpo_dp_link_encoder.h" ++#include "dcn42/dcn42_hpo_dp_link_encoder.h" ++#include "dcn31/dcn31_apg.h" ++#include "dcn31/dcn31_dio_link_encoder.h" ++#include "dcn401/dcn401_dio_link_encoder.h" ++#include "dcn10/dcn10_link_encoder.h" ++#include "dcn321/dcn321_dio_link_encoder.h" ++#include "dce/dce_clock_source.h" ++#include "dce/dce_audio.h" ++#include "dce/dce_hwseq.h" ++#include "clk_mgr.h" ++#include "dio/virtual/virtual_stream_encoder.h" ++#include "dml/display_mode_vba.h" ++#include "dcn42/dcn42_dccg.h" ++#include "dcn10/dcn10_resource.h" ++#include "link_service.h" ++#include "dcn31/dcn31_panel_cntl.h" ++ ++#include "dcn30/dcn30_dwb.h" ++#include "dcn42/dcn42_mmhubbub.h" ++#include "dcn42/dcn42_dio_link_encoder.h" ++ ++#include "dcn/dcn_4_2_0_offset.h" ++#include "dcn/dcn_4_2_0_sh_mask.h" ++#include "dpcs/dpcs_4_0_0_offset.h" ++#include "dpcs/dpcs_4_0_0_sh_mask.h" ++ ++#include "reg_helper.h" ++#include "dce/dmub_abm.h" ++#include "dce/dmub_psr.h" ++#include "dce/dmub_replay.h" ++#include "dce/dce_aux.h" ++#include "dce/dce_i2c.h" ++ ++#include "dml/dcn30/display_mode_vba_30.h" ++#include "vm_helper.h" ++#include "dcn20/dcn20_vmid.h" ++ ++#include "dc_state_priv.h" ++#include "link_enc_cfg.h" ++ ++#include "dml2_0/dml2_wrapper.h" ++ ++#define regBIF_BX0_BIOS_SCRATCH_3 0x003b ++#define regBIF_BX0_BIOS_SCRATCH_3_BASE_IDX 1 ++#define regBIF_BX0_BIOS_SCRATCH_6 0x003e ++#define regBIF_BX0_BIOS_SCRATCH_6_BASE_IDX 1 ++ ++#define DC_LOGGER_INIT(logger) ++ ++enum dcn401_clk_src_array_id { ++ DCN401_CLK_SRC_PLL0, ++ DCN401_CLK_SRC_PLL1, ++ DCN401_CLK_SRC_PLL2, ++ DCN401_CLK_SRC_PLL3, ++ DCN401_CLK_SRC_PLL4, ++ DCN401_CLK_SRC_TOTAL ++}; ++ ++/* begin ++ * macros to expend register list macro defined in HW object header file ++ */ ++ ++/* DCN */ ++#define BASE_INNER(seg) ctx->dcn_reg_offsets[seg] ++ ++#define BASE(seg) BASE_INNER(seg) ++ ++#define SR(reg_name) \ ++ REG_STRUCT.reg_name = BASE(reg##reg_name##_BASE_IDX) + \ ++ reg##reg_name ++#define SR_ARR(reg_name, id) \ ++ REG_STRUCT[id].reg_name = BASE(reg##reg_name##_BASE_IDX) + \ ++ reg##reg_name ++#define SR_ARR_INIT(reg_name, id, value) \ ++ REG_STRUCT[id].reg_name = value ++ ++#define SRI(reg_name, block, id) \ ++ REG_STRUCT.reg_name = BASE(reg##block##id##_##reg_name##_BASE_IDX) + \ ++ reg##block##id##_##reg_name ++ ++#define SRI_ARR(reg_name, block, id) \ ++ REG_STRUCT[id].reg_name = BASE(reg##block##id##_##reg_name##_BASE_IDX) + \ ++ reg##block##id##_##reg_name ++ ++/* ++ * Used when a reg_name would otherwise begin with an integer ++ */ ++#define SRI_ARR_US(reg_name, block, id) \ ++ REG_STRUCT[id].reg_name = BASE(reg##block##id##reg_name##_BASE_IDX) + \ ++ reg##block##id##reg_name ++#define SR_ARR_I2C(reg_name, id) \ ++ REG_STRUCT[id - 1].reg_name = BASE(reg##reg_name##_BASE_IDX) + reg##reg_name ++ ++#define SRI_ARR_I2C(reg_name, block, id) \ ++ REG_STRUCT[id - 1].reg_name = BASE(reg##block##id##_##reg_name##_BASE_IDX) + \ ++ reg##block##id##_##reg_name ++ ++ ++#define SRI_ARR_ALPHABET(reg_name, block, index, id) \ ++ REG_STRUCT[index].reg_name = BASE(reg##block##id##_##reg_name##_BASE_IDX) + \ ++ reg##block##id##_##reg_name ++ ++#define SRI2(reg_name, block, id) \ ++ .reg_name = BASE(reg##reg_name##_BASE_IDX) + \ ++ reg##reg_name ++#define SRI2_ARR(reg_name, block, id) \ ++ REG_STRUCT[id].reg_name = BASE(reg##reg_name##_BASE_IDX) + \ ++ reg##reg_name ++ ++#define SRIR(var_name, reg_name, block, id) \ ++ .var_name = BASE(reg##block##id##_##reg_name##_BASE_IDX) + \ ++ reg##block##id##_##reg_name ++ ++#define SRII(reg_name, block, id) \ ++ REG_STRUCT.reg_name[id] = BASE(reg##block##id##_##reg_name##_BASE_IDX) + \ ++ reg##block##id##_##reg_name ++ ++#define SRII_ARR_2(reg_name, block, id, inst) \ ++ REG_STRUCT[inst].reg_name[id] = BASE(reg##block##id##_##reg_name##_BASE_IDX) + \ ++ reg##block##id##_##reg_name ++ ++#define SRII_MPC_RMU(reg_name, block, id) \ ++ .RMU##_##reg_name[id] = BASE(reg##block##id##_##reg_name##_BASE_IDX) + \ ++ reg##block##id##_##reg_name ++ ++#define SRII_DWB(reg_name, temp_name, block, id) \ ++ REG_STRUCT.reg_name[id] = \ ++ BASE(reg##block##id##_##temp_name##_BASE_IDX) + \ ++ reg##block##id##_##temp_name ++ ++#define DCCG_SRII(reg_name, block, id) \ ++ REG_STRUCT.block##_##reg_name[id] = \ ++ BASE(reg##block##id##_##reg_name##_BASE_IDX) + \ ++ reg##block##id##_##reg_name ++ ++#define SF_DWB2(reg_name, block, id, field_name, post_fix) \ ++ .field_name = reg_name##__##field_name##post_fix ++ ++#define VUPDATE_SRII(reg_name, block, id) \ ++ REG_STRUCT.reg_name[id] = BASE(reg##reg_name##_##block##id##_BASE_IDX) + \ ++ reg##reg_name##_##block##id ++ ++/* NBIO */ ++#define NBIO_BASE_INNER(seg) ctx->nbio_reg_offsets[seg] ++ ++#define NBIO_BASE(seg) \ ++ NBIO_BASE_INNER(seg) ++ ++#define NBIO_SR(reg_name) \ ++ REG_STRUCT.reg_name = NBIO_BASE(regBIF_BX0_##reg_name##_BASE_IDX) + \ ++ regBIF_BX0_##reg_name ++#define NBIO_SR_ARR(reg_name, id) \ ++ REG_STRUCT[id].reg_name = NBIO_BASE(regBIF_BX0_##reg_name##_BASE_IDX) + \ ++ regBIF_BX0_##reg_name ++ ++#define CTX ctx ++#define REG(reg_name) \ ++ (ctx->dcn_reg_offsets[reg##reg_name##_BASE_IDX] + reg##reg_name) ++ ++static struct bios_registers bios_regs; ++ ++#define bios_regs_init() \ ++ NBIO_SR(BIOS_SCRATCH_3), \ ++ NBIO_SR(BIOS_SCRATCH_6) ++ ++#define clk_src_regs_init(index, pllid) \ ++ CS_COMMON_REG_LIST_DCN42_RI(index, pllid) ++ ++static struct dce110_clk_src_regs clk_src_regs[5]; ++ ++static const struct dce110_clk_src_shift cs_shift = { ++ CS_COMMON_MASK_SH_LIST_DCN3_1_4(__SHIFT) ++}; ++static const struct dce110_clk_src_mask cs_mask = { ++ CS_COMMON_MASK_SH_LIST_DCN3_1_4(_MASK) ++}; ++#define abm_regs_init(id) \ ++ ABM_DCN42_REG_LIST_RI(id) ++ ++static struct dce_abm_registers abm_regs[4]; ++ ++static const struct dce_abm_shift abm_shift = { ++ ABM_MASK_SH_LIST_DCN42(__SHIFT)}; ++ ++static const struct dce_abm_mask abm_mask = { ++ ABM_MASK_SH_LIST_DCN42(_MASK)}; ++ ++#define audio_regs_init(id) \ ++ AUD_COMMON_REG_LIST_RI(id) ++ ++static struct dce_audio_registers audio_regs[5]; ++ ++static const struct dce_audio_shift audio_shift = { ++ DCN42_AUD_COMMON_MASK_SH_LIST(__SHIFT) ++}; ++ ++static const struct dce_audio_mask audio_mask = { ++ DCN42_AUD_COMMON_MASK_SH_LIST(_MASK) ++}; ++ ++#define vpg_regs_init(id) \ ++ VPG_DCN401_REG_LIST_RI(id) ++ ++static struct dcn31_vpg_registers vpg_regs[10]; ++ ++static const struct dcn31_vpg_shift vpg_shift = { ++ DCN31_VPG_MASK_SH_LIST(__SHIFT)}; ++ ++static const struct dcn31_vpg_mask vpg_mask = { ++ DCN31_VPG_MASK_SH_LIST(_MASK)}; ++ ++#define apg_regs_init(id) \ ++ APG_DCN31_REG_LIST_RI(id) ++ ++static struct dcn31_apg_registers apg_regs[10]; ++ ++static const struct dcn31_apg_shift apg_shift = { ++ DCN31_APG_MASK_SH_LIST(__SHIFT)}; ++ ++static const struct dcn31_apg_mask apg_mask = { ++ DCN31_APG_MASK_SH_LIST(_MASK)}; ++ ++#define stream_enc_regs_init(id) \ ++ SE_DCN42_REG_LIST_RI(id) ++ ++static struct dcn10_stream_enc_registers stream_enc_regs[5]; ++ ++static const struct dcn10_stream_encoder_shift se_shift = { ++ SE_COMMON_MASK_SH_LIST_DCN42(__SHIFT)}; ++ ++static const struct dcn10_stream_encoder_mask se_mask = { ++ SE_COMMON_MASK_SH_LIST_DCN42(_MASK)}; ++ ++#define aux_regs_init(id) \ ++ DCN2_AUX_REG_LIST_RI(id) ++ ++static struct dcn10_link_enc_aux_registers link_enc_aux_regs[5]; ++ ++#define hpd_regs_init(id) \ ++ HPD_REG_LIST_RI(id) ++ ++static struct dcn10_link_enc_hpd_registers link_enc_hpd_regs[5]; ++ ++#define link_regs_init(id, phyid) \ ++ LE_DCN401_REG_LIST_RI(id) ++ ++static struct dcn10_link_enc_registers link_enc_regs[5]; ++ ++static const struct dcn10_link_enc_shift le_shift = { ++ LINK_ENCODER_MASK_SH_LIST_DCN42(__SHIFT)}; ++ ++static const struct dcn10_link_enc_mask le_mask = { ++ LINK_ENCODER_MASK_SH_LIST_DCN42(_MASK)}; ++ ++#define hpo_dp_stream_encoder_reg_init(id) \ ++ DCN42_HPO_DP_STREAM_ENC_REG_LIST_RI(id) ++ ++static struct dcn31_hpo_dp_stream_encoder_registers hpo_dp_stream_enc_regs[4]; ++ ++static const struct dcn31_hpo_dp_stream_encoder_shift hpo_dp_se_shift = { ++ DCN4_2_HPO_DP_STREAM_ENC_MASK_SH_LIST(__SHIFT)}; ++ ++static const struct dcn31_hpo_dp_stream_encoder_mask hpo_dp_se_mask = { ++ DCN4_2_HPO_DP_STREAM_ENC_MASK_SH_LIST(_MASK)}; ++ ++#define hpo_dp_link_encoder_reg_init(id) \ ++ DCN42_HPO_DP_LINK_ENC_REG_LIST_RI(id) ++ ++static struct dcn31_hpo_dp_link_encoder_registers hpo_dp_link_enc_regs[4]; ++ ++static const struct dcn31_hpo_dp_link_encoder_shift hpo_dp_le_shift = { ++ DCN3_2_HPO_DP_LINK_ENC_MASK_SH_LIST(__SHIFT)}; ++ ++static const struct dcn31_hpo_dp_link_encoder_mask hpo_dp_le_mask = { ++ DCN3_2_HPO_DP_LINK_ENC_MASK_SH_LIST(_MASK)}; ++ ++#define dpp_regs_init(id) \ ++ DPP_REG_LIST_DCN42_COMMON_RI(id) ++ ++static struct dcn42_dpp_registers dpp_regs[4]; ++ ++static const struct dcn42_dpp_shift tf_shift = { ++ DPP_REG_LIST_SH_MASK_DCN42_COMMON(__SHIFT)}; ++ ++static const struct dcn42_dpp_mask tf_mask = { ++ DPP_REG_LIST_SH_MASK_DCN42_COMMON(_MASK)}; ++ ++#define opp_regs_init(id) \ ++ OPP_REG_LIST_DCN401_RI(id) ++ ++static struct dcn20_opp_registers opp_regs[4]; ++ ++static const struct dcn20_opp_shift opp_shift = { ++ OPP_MASK_SH_LIST_DCN20(__SHIFT)}; ++ ++static const struct dcn20_opp_mask opp_mask = { ++ OPP_MASK_SH_LIST_DCN20(_MASK)}; ++ ++#define aux_engine_regs_init(id) \ ++ AUX_COMMON_REG_LIST0_RI(id), SR_ARR_INIT(AUXN_IMPCAL, id, 0), \ ++ SR_ARR_INIT(AUXP_IMPCAL, id, 0), \ ++ SR_ARR_INIT(AUX_RESET_MASK, id, DP_AUX0_AUX_CONTROL__AUX_RESET_MASK), \ ++ SR_ARR_INIT(AUX_RESET_MASK, id, DP_AUX0_AUX_CONTROL__AUX_RESET_MASK) ++ ++static struct dce110_aux_registers aux_engine_regs[5]; ++ ++static const struct dce110_aux_registers_shift aux_shift = { ++ DCN_AUX_MASK_SH_LIST(__SHIFT)}; ++ ++static const struct dce110_aux_registers_mask aux_mask = { ++ DCN_AUX_MASK_SH_LIST(_MASK)}; ++ ++#define dwbc_regs_dcn401_init(id) \ ++ DWBC_COMMON_REG_LIST_DCN30_RI(id) ++ ++static struct dcn30_dwbc_registers dwbc401_regs[1]; ++ ++static const struct dcn30_dwbc_shift dwbc401_shift = { ++ DWBC_COMMON_MASK_SH_LIST_DCN30(__SHIFT)}; ++ ++static const struct dcn30_dwbc_mask dwbc401_mask = { ++ DWBC_COMMON_MASK_SH_LIST_DCN30(_MASK)}; ++ ++#define mcif_wb_regs_dcn3_init(id) \ ++ MCIF_WB_COMMON_REG_LIST_DCN3_5_RI(id) ++ ++static struct dcn35_mmhubbub_registers mcif_wb35_regs[1]; ++ ++static const struct dcn35_mmhubbub_shift mcif_wb35_shift = { ++ MCIF_WB_COMMON_MASK_SH_LIST_DCN3_5(__SHIFT)}; ++ ++static const struct dcn35_mmhubbub_mask mcif_wb35_mask = { ++ MCIF_WB_COMMON_MASK_SH_LIST_DCN3_5(_MASK)}; ++ ++#define dsc_regs_init(id) \ ++ DSC_REG_LIST_DCN401_RI(id) ++ ++static struct dcn401_dsc_registers dsc_regs[4]; ++ ++static const struct dcn401_dsc_shift dsc_shift = { ++ DSC_REG_LIST_SH_MASK_DCN401(__SHIFT)}; ++ ++static const struct dcn401_dsc_mask dsc_mask = { ++ DSC_REG_LIST_SH_MASK_DCN401(_MASK)}; ++ ++static struct dcn42_mpc_registers mpc_regs; ++ ++#define dcn_mpc_regs_init() \ ++ MPC_REG_LIST_DCN42(0), \ ++ MPC_REG_LIST_DCN42(1), \ ++ MPC_REG_LIST_DCN42(2), \ ++ MPC_REG_LIST_DCN42(3), \ ++ MPC_OUT_MUX_REG_LIST_DCN3_0_RI(0), \ ++ MPC_OUT_MUX_REG_LIST_DCN3_0_RI(1), \ ++ MPC_OUT_MUX_REG_LIST_DCN3_0_RI(2), \ ++ MPC_OUT_MUX_REG_LIST_DCN3_0_RI(3), \ ++ MPC_DWB_MUX_REG_LIST_DCN3_0_RI(0), \ ++ MPC_RMCM_REG_LIST_DCN42(0), \ ++ MPC_RMCM_REG_LIST_DCN42(1) ++ ++static const struct dcn42_mpc_shift mpc_shift = { ++ MPC_COMMON_MASK_SH_LIST_DCN42(__SHIFT)}; ++ ++static const struct dcn42_mpc_mask mpc_mask = { ++ MPC_COMMON_MASK_SH_LIST_DCN42(_MASK)}; ++ ++#define optc_regs_init(id) \ ++ OPTC_COMMON_REG_LIST_DCN42_RI(id) ++ ++static struct dcn_optc_registers optc_regs[4]; ++ ++static const struct dcn_optc_shift optc_shift = { ++ OPTC_COMMON_MASK_SH_LIST_DCN42(__SHIFT)}; ++ ++static const struct dcn_optc_mask optc_mask = { ++ OPTC_COMMON_MASK_SH_LIST_DCN42(_MASK)}; ++ ++#define hubp_regs_init(id) \ ++ HUBP_REG_LIST_DCN42_RI(id) ++ ++static struct dcn_hubp2_registers hubp_regs[4]; ++ ++static const struct dcn_hubp2_shift hubp_shift = { ++ HUBP_MASK_SH_LIST_DCN42(__SHIFT)}; ++ ++static const struct dcn_hubp2_mask hubp_mask = { ++ HUBP_MASK_SH_LIST_DCN42(_MASK)}; ++ ++static struct dcn_hubbub_registers hubbub_reg; ++ ++#define hubbub_reg_init() \ ++ HUBBUB_REG_LIST_DCN42(0) ++ ++static const struct dcn_hubbub_shift hubbub_shift = { ++ HUBBUB_MASK_SH_LIST_DCN4_2(__SHIFT)}; ++ ++static const struct dcn_hubbub_mask hubbub_mask = { ++ HUBBUB_MASK_SH_LIST_DCN4_2(_MASK)}; ++ ++static struct dccg_registers dccg_regs; ++ ++#define dccg_regs_init() \ ++ DCCG_REG_LIST_DCN42_RI() ++ ++static const struct dccg_shift dccg_shift = { ++ DCCG_MASK_SH_LIST_DCN42(__SHIFT)}; ++ ++static const struct dccg_mask dccg_mask = { ++ DCCG_MASK_SH_LIST_DCN42(_MASK)}; ++ ++static struct pg_cntl_registers pg_cntl_regs; ++ ++#define pg_cntl_dcn42_regs_init() \ ++ PG_CNTL_REG_LIST_DCN42() ++ ++static const struct pg_cntl_shift pg_cntl_shift = { ++ PG_CNTL_MASK_SH_LIST_DCN42(__SHIFT) ++}; ++ ++static const struct pg_cntl_mask pg_cntl_mask = { ++ PG_CNTL_MASK_SH_LIST_DCN42(_MASK) ++}; ++#define SRII2(reg_name_pre, reg_name_post, id) \ ++ .reg_name_pre##_##reg_name_post[id] = \ ++ BASE(reg##reg_name_pre##id##_##reg_name_post##_BASE_IDX) + \ ++ reg##reg_name_pre##id##_##reg_name_post ++ ++#define HWSEQ_DCN42_REG_LIST() \ ++ SR(DCHUBBUB_GLOBAL_TIMER_CNTL), \ ++ SR(DIO_MEM_PWR_CTRL), \ ++ SR(ODM_MEM_PWR_CTRL3), \ ++ SR(MMHUBBUB_MEM_PWR_CNTL), \ ++ SR(DCCG_GATE_DISABLE_CNTL), \ ++ SR(DCCG_GATE_DISABLE_CNTL2), \ ++ SR(DCFCLK_CNTL), \ ++ SR(DC_MEM_GLOBAL_PWR_REQ_CNTL), \ ++ SRII(PIXEL_RATE_CNTL, OTG, 0), \ ++ SRII(PIXEL_RATE_CNTL, OTG, 1), \ ++ SRII(PIXEL_RATE_CNTL, OTG, 2), \ ++ SRII(PIXEL_RATE_CNTL, OTG, 3),\ ++ SRII(PHYPLL_PIXEL_RATE_CNTL, OTG, 0), \ ++ SRII(PHYPLL_PIXEL_RATE_CNTL, OTG, 1), \ ++ SRII(PHYPLL_PIXEL_RATE_CNTL, OTG, 2), \ ++ SRII(PHYPLL_PIXEL_RATE_CNTL, OTG, 3),\ ++ SR(MICROSECOND_TIME_BASE_DIV), \ ++ SR(MILLISECOND_TIME_BASE_DIV), \ ++ SR(DISPCLK_FREQ_CHANGE_CNTL), \ ++ SR(RBBMIF_TIMEOUT_DIS), \ ++ SR(RBBMIF_TIMEOUT_DIS_2), \ ++ SR(DCHUBBUB_CRC_CTRL), \ ++ SR(DPP_TOP0_DPP_CRC_CTRL), \ ++ SR(DPP_TOP0_DPP_CRC_VAL_R), \ ++ SR(DPP_TOP0_DPP_CRC_VAL_G), \ ++ SR(DPP_TOP0_DPP_CRC_VAL_B), \ ++ SR(MPC_CRC_CTRL), \ ++ SR(MPC_CRC_RESULT_R), \ ++ SR(MPC_CRC_RESULT_G), \ ++ SR(MPC_CRC_RESULT_B), \ ++ SR(MPC_CRC_RESULT_A), \ ++ SR(DOMAIN0_PG_CONFIG), \ ++ SR(DOMAIN1_PG_CONFIG), \ ++ SR(DOMAIN2_PG_CONFIG), \ ++ SR(DOMAIN3_PG_CONFIG), \ ++ SR(DOMAIN16_PG_CONFIG), \ ++ SR(DOMAIN17_PG_CONFIG), \ ++ SR(DOMAIN18_PG_CONFIG), \ ++ SR(DOMAIN19_PG_CONFIG), \ ++ SR(DOMAIN22_PG_CONFIG), \ ++ SR(DOMAIN23_PG_CONFIG), \ ++ SR(DOMAIN24_PG_CONFIG), \ ++ SR(DOMAIN25_PG_CONFIG), \ ++ SR(DOMAIN26_PG_CONFIG), \ ++ SR(DOMAIN0_PG_STATUS), \ ++ SR(DOMAIN1_PG_STATUS), \ ++ SR(DOMAIN2_PG_STATUS), \ ++ SR(DOMAIN3_PG_STATUS), \ ++ SR(DOMAIN16_PG_STATUS), \ ++ SR(DOMAIN17_PG_STATUS), \ ++ SR(DOMAIN18_PG_STATUS), \ ++ SR(DOMAIN19_PG_STATUS), \ ++ SR(DOMAIN22_PG_STATUS), \ ++ SR(DOMAIN23_PG_STATUS), \ ++ SR(DOMAIN24_PG_STATUS), \ ++ SR(DOMAIN25_PG_STATUS), \ ++ SR(DOMAIN26_PG_STATUS), \ ++ SR(DC_IP_REQUEST_CNTL), \ ++ SR(AZALIA_AUDIO_DTO), \ ++ SR(HPO_TOP_HW_CONTROL), \ ++ SR(AZALIA_CONTROLLER_CLOCK_GATING) ++ ++static struct dce_hwseq_registers hwseq_reg; ++ ++#define hwseq_reg_init() \ ++ HWSEQ_DCN42_REG_LIST() ++ ++#define HWSEQ_DCN42_MASK_SH_LIST(mask_sh) \ ++ HWSEQ_DCN_MASK_SH_LIST(mask_sh), \ ++ HWS_SF(, DCHUBBUB_GLOBAL_TIMER_CNTL, DCHUBBUB_GLOBAL_TIMER_REFDIV, mask_sh), \ ++ HWS_SF(, DCHUBBUB_ARB_HOSTVM_CNTL, DISABLE_HOSTVM_FORCE_ALLOW_PSTATE, mask_sh), \ ++ HWS_SF(, DOMAIN0_PG_CONFIG, DOMAIN_POWER_FORCEON, mask_sh), \ ++ HWS_SF(, DOMAIN0_PG_CONFIG, DOMAIN_POWER_GATE, mask_sh), \ ++ HWS_SF(, DOMAIN1_PG_CONFIG, DOMAIN_POWER_FORCEON, mask_sh), \ ++ HWS_SF(, DOMAIN1_PG_CONFIG, DOMAIN_POWER_GATE, mask_sh), \ ++ HWS_SF(, DOMAIN2_PG_CONFIG, DOMAIN_POWER_FORCEON, mask_sh), \ ++ HWS_SF(, DOMAIN2_PG_CONFIG, DOMAIN_POWER_GATE, mask_sh), \ ++ HWS_SF(, DOMAIN3_PG_CONFIG, DOMAIN_POWER_FORCEON, mask_sh), \ ++ HWS_SF(, DOMAIN3_PG_CONFIG, DOMAIN_POWER_GATE, mask_sh), \ ++ HWS_SF(, DOMAIN16_PG_CONFIG, DOMAIN_POWER_FORCEON, mask_sh), \ ++ HWS_SF(, DOMAIN16_PG_CONFIG, DOMAIN_POWER_GATE, mask_sh), \ ++ HWS_SF(, DOMAIN17_PG_CONFIG, DOMAIN_POWER_FORCEON, mask_sh), \ ++ HWS_SF(, DOMAIN17_PG_CONFIG, DOMAIN_POWER_GATE, mask_sh), \ ++ HWS_SF(, DOMAIN18_PG_CONFIG, DOMAIN_POWER_FORCEON, mask_sh), \ ++ HWS_SF(, DOMAIN18_PG_CONFIG, DOMAIN_POWER_GATE, mask_sh), \ ++ HWS_SF(, DOMAIN19_PG_CONFIG, DOMAIN_POWER_FORCEON, mask_sh), \ ++ HWS_SF(, DOMAIN19_PG_CONFIG, DOMAIN_POWER_GATE, mask_sh), \ ++ HWS_SF(, DOMAIN22_PG_CONFIG, DOMAIN_POWER_FORCEON, mask_sh), \ ++ HWS_SF(, DOMAIN22_PG_CONFIG, DOMAIN_POWER_GATE, mask_sh), \ ++ HWS_SF(, DOMAIN23_PG_CONFIG, DOMAIN_POWER_FORCEON, mask_sh), \ ++ HWS_SF(, DOMAIN23_PG_CONFIG, DOMAIN_POWER_GATE, mask_sh), \ ++ HWS_SF(, DOMAIN24_PG_CONFIG, DOMAIN_POWER_FORCEON, mask_sh), \ ++ HWS_SF(, DOMAIN24_PG_CONFIG, DOMAIN_POWER_GATE, mask_sh), \ ++ HWS_SF(, DOMAIN25_PG_CONFIG, DOMAIN_POWER_FORCEON, mask_sh), \ ++ HWS_SF(, DOMAIN25_PG_CONFIG, DOMAIN_POWER_GATE, mask_sh), \ ++ HWS_SF(, DOMAIN26_PG_CONFIG, DOMAIN_POWER_FORCEON, mask_sh), \ ++ HWS_SF(, DOMAIN26_PG_CONFIG, DOMAIN_POWER_GATE, mask_sh), \ ++ HWS_SF(, DOMAIN0_PG_STATUS, DOMAIN_PGFSM_PWR_STATUS, mask_sh), \ ++ HWS_SF(, DOMAIN1_PG_STATUS, DOMAIN_PGFSM_PWR_STATUS, mask_sh), \ ++ HWS_SF(, DOMAIN2_PG_STATUS, DOMAIN_PGFSM_PWR_STATUS, mask_sh), \ ++ HWS_SF(, DOMAIN3_PG_STATUS, DOMAIN_PGFSM_PWR_STATUS, mask_sh), \ ++ HWS_SF(, DOMAIN16_PG_STATUS, DOMAIN_PGFSM_PWR_STATUS, mask_sh), \ ++ HWS_SF(, DOMAIN17_PG_STATUS, DOMAIN_PGFSM_PWR_STATUS, mask_sh), \ ++ HWS_SF(, DOMAIN18_PG_STATUS, DOMAIN_PGFSM_PWR_STATUS, mask_sh), \ ++ HWS_SF(, DOMAIN19_PG_STATUS, DOMAIN_PGFSM_PWR_STATUS, mask_sh), \ ++ HWS_SF(, DOMAIN22_PG_STATUS, DOMAIN_PGFSM_PWR_STATUS, mask_sh), \ ++ HWS_SF(, DOMAIN23_PG_STATUS, DOMAIN_PGFSM_PWR_STATUS, mask_sh), \ ++ HWS_SF(, DOMAIN24_PG_STATUS, DOMAIN_PGFSM_PWR_STATUS, mask_sh), \ ++ HWS_SF(, DOMAIN25_PG_STATUS, DOMAIN_PGFSM_PWR_STATUS, mask_sh), \ ++ HWS_SF(, DOMAIN26_PG_STATUS, DOMAIN_PGFSM_PWR_STATUS, mask_sh), \ ++ HWS_SF(, DC_IP_REQUEST_CNTL, IP_REQUEST_EN, mask_sh), \ ++ HWS_SF(, AZALIA_AUDIO_DTO, AZALIA_AUDIO_DTO_MODULE, mask_sh), \ ++ HWS_SF(, HPO_TOP_CLOCK_CONTROL, HPO_HDMISTREAMCLK_G_GATE_DIS, mask_sh), \ ++ HWS_SF(, HPO_TOP_HW_CONTROL, HPO_IO_EN, mask_sh), \ ++ HWS_SF(, ODM_MEM_PWR_CTRL3, ODM_MEM_UNASSIGNED_PWR_MODE, mask_sh), \ ++ HWS_SF(, ODM_MEM_PWR_CTRL3, ODM_MEM_VBLANK_PWR_MODE, mask_sh), \ ++ HWS_SF(, DIO_MEM_PWR_CTRL, I2C_LIGHT_SLEEP_FORCE, mask_sh), \ ++ HWS_SF(, DMU_CLK_CNTL, DISPCLK_R_DMU_GATE_DIS, mask_sh),\ ++ HWS_SF(, DMU_CLK_CNTL, DISPCLK_G_RBBMIF_GATE_DIS, mask_sh),\ ++ HWS_SF(, DMU_CLK_CNTL, RBBMIF_FGCG_REP_DIS, mask_sh),\ ++ HWS_SF(, DMU_CLK_CNTL, DPREFCLK_ALLOW_DS_CLKSTOP, mask_sh),\ ++ HWS_SF(, DMU_CLK_CNTL, DISPCLK_ALLOW_DS_CLKSTOP, mask_sh),\ ++ HWS_SF(, DMU_CLK_CNTL, DPPCLK_ALLOW_DS_CLKSTOP, mask_sh),\ ++ HWS_SF(, DMU_CLK_CNTL, DTBCLK_ALLOW_DS_CLKSTOP, mask_sh),\ ++ HWS_SF(, DMU_CLK_CNTL, DCFCLK_ALLOW_DS_CLKSTOP, mask_sh),\ ++ HWS_SF(, DMU_CLK_CNTL, DPIACLK_ALLOW_DS_CLKSTOP, mask_sh),\ ++ HWS_SF(, DMU_CLK_CNTL, LONO_FGCG_REP_DIS, mask_sh),\ ++ HWS_SF(, DMU_CLK_CNTL, LONO_DISPCLK_GATE_DISABLE, mask_sh),\ ++ HWS_SF(, DMU_CLK_CNTL, LONO_SOCCLK_GATE_DISABLE, mask_sh),\ ++ HWS_SF(, DMU_CLK_CNTL, LONO_DMCUBCLK_GATE_DISABLE, mask_sh),\ ++ HWS_SF(, DCCG_GATE_DISABLE_CNTL2, SYMCLKA_FE_GATE_DISABLE, mask_sh), \ ++ HWS_SF(, DCCG_GATE_DISABLE_CNTL2, SYMCLKB_FE_GATE_DISABLE, mask_sh), \ ++ HWS_SF(, DCCG_GATE_DISABLE_CNTL2, SYMCLKC_FE_GATE_DISABLE, mask_sh), \ ++ HWS_SF(, DCCG_GATE_DISABLE_CNTL2, SYMCLKD_FE_GATE_DISABLE, mask_sh), \ ++ HWS_SF(, DCCG_GATE_DISABLE_CNTL2, SYMCLKE_FE_GATE_DISABLE, mask_sh), \ ++ HWS_SF(, DCCG_GATE_DISABLE_CNTL2, HDMICHARCLK0_GATE_DISABLE, mask_sh), \ ++ HWS_SF(, DCCG_GATE_DISABLE_CNTL2, SYMCLKA_GATE_DISABLE, mask_sh), \ ++ HWS_SF(, DCCG_GATE_DISABLE_CNTL2, SYMCLKB_GATE_DISABLE, mask_sh), \ ++ HWS_SF(, DCCG_GATE_DISABLE_CNTL2, SYMCLKC_GATE_DISABLE, mask_sh), \ ++ HWS_SF(, DCCG_GATE_DISABLE_CNTL2, SYMCLKD_GATE_DISABLE, mask_sh), \ ++ HWS_SF(, DCCG_GATE_DISABLE_CNTL2, SYMCLKE_GATE_DISABLE, mask_sh), \ ++ HWS_SF(, DCCG_GATE_DISABLE_CNTL2, PHYASYMCLK_ROOT_GATE_DISABLE, mask_sh), \ ++ HWS_SF(, DCCG_GATE_DISABLE_CNTL2, PHYBSYMCLK_ROOT_GATE_DISABLE, mask_sh), \ ++ HWS_SF(, DCCG_GATE_DISABLE_CNTL2, PHYCSYMCLK_ROOT_GATE_DISABLE, mask_sh), \ ++ HWS_SF(, DCCG_GATE_DISABLE_CNTL2, PHYDSYMCLK_ROOT_GATE_DISABLE, mask_sh), \ ++ HWS_SF(, DCCG_GATE_DISABLE_CNTL2, PHYESYMCLK_ROOT_GATE_DISABLE, mask_sh),\ ++ HWS_SF(, DCCG_GATE_DISABLE_CNTL5, DTBCLK_P0_GATE_DISABLE, mask_sh),\ ++ HWS_SF(, DCCG_GATE_DISABLE_CNTL5, DTBCLK_P1_GATE_DISABLE, mask_sh),\ ++ HWS_SF(, DCCG_GATE_DISABLE_CNTL5, DTBCLK_P2_GATE_DISABLE, mask_sh),\ ++ HWS_SF(, DCCG_GATE_DISABLE_CNTL5, DTBCLK_P3_GATE_DISABLE, mask_sh),\ ++ HWS_SF(, DCCG_GATE_DISABLE_CNTL5, DPSTREAMCLK0_GATE_DISABLE, mask_sh),\ ++ HWS_SF(, DCCG_GATE_DISABLE_CNTL5, DPSTREAMCLK1_GATE_DISABLE, mask_sh),\ ++ HWS_SF(, DCCG_GATE_DISABLE_CNTL5, DPSTREAMCLK2_GATE_DISABLE, mask_sh),\ ++ HWS_SF(, DCCG_GATE_DISABLE_CNTL5, DPSTREAMCLK3_GATE_DISABLE, mask_sh),\ ++ HWS_SF(, DCCG_GATE_DISABLE_CNTL4, DPIASYMCLK0_GATE_DISABLE, mask_sh),\ ++ HWS_SF(, DCCG_GATE_DISABLE_CNTL4, DPIASYMCLK1_GATE_DISABLE, mask_sh),\ ++ HWS_SF(, DCCG_GATE_DISABLE_CNTL4, DPIASYMCLK2_GATE_DISABLE, mask_sh),\ ++ HWS_SF(, DCCG_GATE_DISABLE_CNTL4, DPIASYMCLK3_GATE_DISABLE, mask_sh),\ ++ HWS_SF(, DCCG_GATE_DISABLE_CNTL4, DPIASYMCLK4_GATE_DISABLE, mask_sh),\ ++ HWS_SF(, DCCG_GATE_DISABLE_CNTL4, DPIASYMCLK5_GATE_DISABLE, mask_sh) ++ ++static const struct dce_hwseq_shift hwseq_shift = { ++ HWSEQ_DCN42_MASK_SH_LIST(__SHIFT)}; ++ ++static const struct dce_hwseq_mask hwseq_mask = { ++ HWSEQ_DCN42_MASK_SH_LIST(_MASK)}; ++ ++#define vmid_regs_init(id) \ ++ DCN20_VMID_REG_LIST_RI(id) ++ ++static struct dcn_vmid_registers vmid_regs[16]; ++ ++static const struct dcn20_vmid_shift vmid_shifts = { ++ DCN20_VMID_MASK_SH_LIST(__SHIFT)}; ++ ++static const struct dcn20_vmid_mask vmid_masks = { ++ DCN20_VMID_MASK_SH_LIST(_MASK)}; ++ ++static const struct resource_caps res_cap_dcn42 = { ++ .num_timing_generator = 4, ++ .num_opp = 4, ++ .num_dpp = 4, ++ .num_video_plane = 4, ++ .num_audio = 5, ++ .num_stream_encoder = 5, ++ .num_dig_link_enc = 5, ++ .num_usb4_dpia = 6, ++ .num_hpo_dp_stream_encoder = 4, ++ .num_hpo_dp_link_encoder = 4, ++ .num_pll = 5, ++ .num_dwb = 1, ++ .num_ddc = 5, ++ .num_vmid = 16, ++ .num_mpc_3dlut = 2, ++ .num_dsc = 4, ++ .num_rmcm = 2, ++}; ++ ++static const struct dc_plane_cap plane_cap = { ++ .type = DC_PLANE_TYPE_DCN_UNIVERSAL, ++ .per_pixel_alpha = true, ++ ++ .pixel_format_support = { ++ .argb8888 = true, ++ .nv12 = true, ++ .fp16 = true, ++ .p010 = true, ++ .ayuv = false, ++ }, ++ ++ .max_upscale_factor = {.argb8888 = 16000, .nv12 = 16000, .fp16 = 16000}, ++ ++ // 6:1 downscaling ratio: 1000/6 = 166.666 ++ .max_downscale_factor = {.argb8888 = 167, .nv12 = 167, .fp16 = 167}, ++ ++ .min_width = 64, ++ .min_height = 64}; ++ ++static const struct dc_debug_options debug_defaults_drv = { ++ .disable_dmcu = true, ++ .force_abm_enable = false, ++ .clock_trace = true, ++ .disable_pplib_clock_request = false, ++ .disable_dpp_power_gate = true, ++ .disable_hubp_power_gate = true, ++ .disable_optc_power_gate = true, ++ .pipe_split_policy = MPC_SPLIT_AVOID, ++ .force_single_disp_pipe_split = false, ++ .disable_dcc = DCC_ENABLE, ++ .vsr_support = true, ++ .performance_trace = false, ++ .max_downscale_src_width = 4096, /*up to 4K for APU*/ ++ .disable_pplib_wm_range = false, ++ .scl_reset_length10 = true, ++ .sanity_checks = false, ++ .underflow_assert_delay_us = 0xFFFFFFFF, ++ .dwb_fi_phase = -1, // -1 = disable, ++ .dmub_command_table = true, ++ .pstate_enabled = true, ++ .enable_mem_low_power = { ++ .bits = { ++ .vga = false, ++ .i2c = true, ++ .dscl = true, ++ .cm = true, ++ .mpc = true, ++ .optc = true, ++ .vpg = true, ++ }}, ++ .root_clock_optimization = { ++ .bits = { ++ .dpp = true, ++ .dsc = true,/*dscclk and dsc pg*/ ++ .hdmistream = false, ++ .hdmichar = true, ++ .dpstream = true, ++ .symclk32_se = true, ++ .symclk32_le = true, ++ .symclk_fe = true, ++ .physymclk = false, ++ .dpiasymclk = true, ++ } ++ }, ++ .seamless_boot_odm_combine = DML_FAIL_SOURCE_PIXEL_FORMAT, ++ .enable_z9_disable_interface = true, /* Allow support for the PMFW interface for disable Z9*/ ++ .minimum_z8_residency_time = 1, /* Always allow when other conditions are met */ ++ .support_eDP1_5 = true, ++ .use_max_lb = true, ++ .force_disable_subvp = false, ++ .exit_idle_opt_for_cursor_updates = true, ++ .using_dml2 = true, ++ .using_dml21 = true, ++ .enable_single_display_2to1_odm_policy = true, ++ ++ // must match enable_single_display_2to1_odm_policy to support dynamic ODM transitions ++ .enable_double_buffered_dsc_pg_support = true, ++ .enable_dp_dig_pixel_rate_div_policy = 1, ++ .allow_sw_cursor_fallback = false, ++ .psp_disabled_wa = true, ++ .alloc_extra_way_for_cursor = true, ++ .min_prefetch_in_strobe_ns = 60000, // 60us ++ .disable_unbounded_requesting = false, ++ .dcc_meta_propagation_delay_us = 10, ++ .disable_timeout = true, ++ .min_disp_clk_khz = 50000, ++ .static_screen_wait_frames = 2, ++ .disable_z10 = false, ++ .ignore_pg = true, ++ .disable_stutter_for_wm_program = true, ++ .min_deep_sleep_dcfclk_khz = 8000, ++ .replay_skip_crtc_disabled = true, ++ .psr_skip_crtc_disable = true, ++}; ++ ++static const struct dc_check_config config_defaults = { ++ .enable_legacy_fast_update = false, ++}; ++ ++static struct dce_aux *dcn42_aux_engine_create( ++ struct dc_context *ctx, ++ uint32_t inst) ++{ ++ struct aux_engine_dce110 *aux_engine = ++ kzalloc(sizeof(struct aux_engine_dce110), GFP_KERNEL); ++ ++ if (!aux_engine) ++ return NULL; ++ ++#undef REG_STRUCT ++#define REG_STRUCT aux_engine_regs ++ aux_engine_regs_init(0), ++ aux_engine_regs_init(1), ++ aux_engine_regs_init(2), ++ aux_engine_regs_init(3), ++ aux_engine_regs_init(4); ++ ++ dce110_aux_engine_construct(aux_engine, ctx, inst, ++ SW_AUX_TIMEOUT_PERIOD_MULTIPLIER * AUX_TIMEOUT_PERIOD, ++ &aux_engine_regs[inst], ++ &aux_mask, ++ &aux_shift, ++ ctx->dc->caps.extended_aux_timeout_support); ++ ++ return &aux_engine->base; ++} ++ ++#define i2c_inst_regs_init(id) \ ++ I2C_HW_ENGINE_COMMON_REG_LIST_DCN30_RI(id) ++ ++static struct dce_i2c_registers i2c_hw_regs[5]; ++ ++static const struct dce_i2c_shift i2c_shifts = { ++ I2C_COMMON_MASK_SH_LIST_DCN35(__SHIFT) ++}; ++static const struct dce_i2c_mask i2c_masks = { ++ I2C_COMMON_MASK_SH_LIST_DCN35(_MASK) ++}; ++ ++/* ========================================================== */ ++ ++/* ++ * DPIA index | Preferred Encoder | Host Router ++ * 0 | C | 0 ++ * 1 | First Available | 0 ++ * 2 | D | 1 ++ * 3 | First Available | 1 ++ * 4 | E | 2 ++ * 5 | First Available | 2 ++ */ ++/* ========================================================== */ ++static const enum engine_id dpia_to_preferred_enc_id_table[] = { ++ ENGINE_ID_DIGC, ++ ENGINE_ID_DIGC, ++ ENGINE_ID_DIGD, ++ ENGINE_ID_DIGD, ++ ENGINE_ID_DIGE, ++ ENGINE_ID_DIGE ++}; ++ ++static enum engine_id dcn42_get_preferred_eng_id_dpia(unsigned int dpia_index) ++{ ++ return dpia_to_preferred_enc_id_table[dpia_index]; ++} ++ ++static struct dce_i2c_hw *dcn42_i2c_hw_create( ++ struct dc_context *ctx, ++ uint32_t inst) ++{ ++ struct dce_i2c_hw *dce_i2c_hw = ++ kzalloc(sizeof(struct dce_i2c_hw), GFP_KERNEL); ++ ++ if (!dce_i2c_hw) ++ return NULL; ++ ++#undef REG_STRUCT ++#define REG_STRUCT i2c_hw_regs ++ i2c_inst_regs_init(1), ++ i2c_inst_regs_init(2), ++ i2c_inst_regs_init(3), ++ i2c_inst_regs_init(4), ++ i2c_inst_regs_init(5); ++ dcn2_i2c_hw_construct(dce_i2c_hw, ctx, inst, ++ &i2c_hw_regs[inst], &i2c_shifts, &i2c_masks); ++ ++ return dce_i2c_hw; ++} ++ ++static struct clock_source *dcn42_clock_source_create( ++ struct dc_context *ctx, ++ struct dc_bios *bios, ++ enum clock_source_id id, ++ const struct dce110_clk_src_regs *regs, ++ bool dp_clk_src) ++{ ++ struct dce110_clk_src *clk_src = ++ kzalloc(sizeof(struct dce110_clk_src), GFP_KERNEL); ++ ++ if (!clk_src) ++ return NULL; ++ ++ if (dcn401_clk_src_construct(clk_src, ctx, bios, id, ++ regs, &cs_shift, &cs_mask)) { ++ clk_src->base.dp_clk_src = dp_clk_src; ++ return &clk_src->base; ++ } ++ ++ kfree(clk_src); ++ BREAK_TO_DEBUGGER(); ++ return NULL; ++} ++ ++static struct hubbub *dcn42_hubbub_create(struct dc_context *ctx) ++{ ++ int i; ++ ++ struct dcn20_hubbub *hubbub3 = kzalloc(sizeof(struct dcn20_hubbub), ++ GFP_KERNEL); ++ ++ if (!hubbub3) ++ return NULL; ++ ++#undef REG_STRUCT ++#define REG_STRUCT hubbub_reg ++ hubbub_reg_init(); ++ ++#undef REG_STRUCT ++#define REG_STRUCT vmid_regs ++ vmid_regs_init(0), ++ vmid_regs_init(1), ++ vmid_regs_init(2), ++ vmid_regs_init(3), ++ vmid_regs_init(4), ++ vmid_regs_init(5), ++ vmid_regs_init(6), ++ vmid_regs_init(7), ++ vmid_regs_init(8), ++ vmid_regs_init(9), ++ vmid_regs_init(10), ++ vmid_regs_init(11), ++ vmid_regs_init(12), ++ vmid_regs_init(13), ++ vmid_regs_init(14), ++ vmid_regs_init(15); ++ ++ hubbub42_construct(hubbub3, ctx, ++ &hubbub_reg, ++ &hubbub_shift, ++ &hubbub_mask, ++ DCN42_DEFAULT_DET_SIZE, ++ 8, ++ DCN42_CRB_SIZE_KB); ++ for (i = 0; i < res_cap_dcn42.num_vmid; i++) { ++ struct dcn20_vmid *vmid = &hubbub3->vmid[i]; ++ ++ vmid->ctx = ctx; ++ ++ vmid->regs = &vmid_regs[i]; ++ vmid->shifts = &vmid_shifts; ++ vmid->masks = &vmid_masks; ++ } ++ ++ return &hubbub3->base; ++} ++ ++static struct hubp *dcn42_hubp_create( ++ struct dc_context *ctx, ++ uint32_t inst) ++{ ++ struct dcn20_hubp *hubp2 = ++ kzalloc(sizeof(struct dcn20_hubp), GFP_KERNEL); ++ ++ if (!hubp2) ++ return NULL; ++ ++#undef REG_STRUCT ++#define REG_STRUCT hubp_regs ++ hubp_regs_init(0), ++ hubp_regs_init(1), ++ hubp_regs_init(2), ++ hubp_regs_init(3); ++ ++ if (hubp42_construct(hubp2, ctx, inst, ++ &hubp_regs[inst], &hubp_shift, &hubp_mask)) ++ return &hubp2->base; ++ ++ BREAK_TO_DEBUGGER(); ++ kfree(hubp2); ++ return NULL; ++} ++static const struct dc_panel_config dcn42_panel_config_defaults = { ++ .psr = { ++ .disable_psr = false, ++ .disallow_psrsu = false, ++ .disallow_replay = false, ++ }, ++ .ilr = { ++ .optimize_edp_link_rate = true, ++ }, ++}; ++ ++static void dcn42_dpp_destroy(struct dpp **dpp) ++{ ++ kfree(TO_DCN42_DPP(*dpp)); ++ *dpp = NULL; ++} ++ ++static struct dpp *dcn42_dpp_create( ++ struct dc_context *ctx, ++ uint32_t inst) ++{ ++ struct dcn42_dpp *dpp42 = ++ kzalloc(sizeof(struct dcn42_dpp), GFP_KERNEL); ++ ++ if (!dpp42) ++ return NULL; ++ ++#undef REG_STRUCT ++#define REG_STRUCT dpp_regs ++ dpp_regs_init(0), ++ dpp_regs_init(1), ++ dpp_regs_init(2), ++ dpp_regs_init(3); ++ ++ if (dpp42_construct(dpp42, ctx, inst, ++ &dpp_regs[inst], &tf_shift, &tf_mask)) ++ return &dpp42->base; ++ ++ BREAK_TO_DEBUGGER(); ++ kfree(dpp42); ++ return NULL; ++} ++ ++static struct mpc *dcn42_mpc_create( ++ struct dc_context *ctx, ++ int num_mpcc, ++ int num_rmu) ++{ ++ struct dcn42_mpc *mpc401 = kzalloc(sizeof(struct dcn42_mpc), ++ GFP_KERNEL); ++ ++ if (!mpc401) ++ return NULL; ++ ++#undef REG_STRUCT ++#define REG_STRUCT mpc_regs ++ dcn_mpc_regs_init(); ++ ++ dcn42_mpc_construct(mpc401, ctx, ++ &mpc_regs, ++ &mpc_shift, ++ &mpc_mask, ++ num_mpcc, ++ num_rmu); ++ ++ return &mpc401->base; ++} ++ ++static struct output_pixel_processor *dcn42_opp_create( ++ struct dc_context *ctx, uint32_t inst) ++{ ++ struct dcn20_opp *opp4 = ++ kzalloc(sizeof(struct dcn20_opp), GFP_KERNEL); ++ ++ if (!opp4) { ++ BREAK_TO_DEBUGGER(); ++ return NULL; ++ } ++ ++#undef REG_STRUCT ++#define REG_STRUCT opp_regs ++ opp_regs_init(0), ++ opp_regs_init(1), ++ opp_regs_init(2), ++ opp_regs_init(3); ++ dcn20_opp_construct(opp4, ctx, inst, ++ &opp_regs[inst], &opp_shift, &opp_mask); ++ return &opp4->base; ++} ++ ++static struct timing_generator *dcn42_timing_generator_create( ++ struct dc_context *ctx, ++ uint32_t instance) ++{ ++ struct optc *tgn10 = ++ kzalloc(sizeof(struct optc), GFP_KERNEL); ++ ++ if (!tgn10) ++ return NULL; ++#undef REG_STRUCT ++#define REG_STRUCT optc_regs ++ optc_regs_init(0), ++ optc_regs_init(1), ++ optc_regs_init(2), ++ optc_regs_init(3); ++ tgn10->base.inst = instance; ++ tgn10->base.ctx = ctx; ++ ++ tgn10->tg_regs = &optc_regs[instance]; ++ tgn10->tg_shift = &optc_shift; ++ tgn10->tg_mask = &optc_mask; ++ ++ dcn42_timing_generator_init(tgn10); ++ ++ return &tgn10->base; ++} ++ ++static const struct encoder_feature_support link_enc_feature = { ++ .max_hdmi_deep_color = COLOR_DEPTH_121212, ++ .max_hdmi_pixel_clock = 600000, ++ .hdmi_ycbcr420_supported = true, ++ .dp_ycbcr420_supported = true, ++ .fec_supported = true, ++ .flags.bits.IS_HBR2_CAPABLE = true, ++ .flags.bits.IS_HBR3_CAPABLE = true, ++ .flags.bits.IS_TPS3_CAPABLE = true, ++ .flags.bits.IS_TPS4_CAPABLE = true}; ++ ++static struct link_encoder *dcn42_link_encoder_create( ++ struct dc_context *ctx, ++ const struct encoder_init_data *enc_init_data) ++{ ++ struct dcn20_link_encoder *enc20 = ++ kzalloc(sizeof(struct dcn20_link_encoder), GFP_KERNEL); ++ ++ if (!enc20 || enc_init_data->hpd_source >= ARRAY_SIZE(link_enc_hpd_regs)) ++ return NULL; ++ ++#undef REG_STRUCT ++#define REG_STRUCT link_enc_aux_regs ++ aux_regs_init(0), ++ aux_regs_init(1), ++ aux_regs_init(2), ++ aux_regs_init(3), ++ aux_regs_init(4); ++#undef REG_STRUCT ++#define REG_STRUCT link_enc_hpd_regs ++ hpd_regs_init(0), ++ hpd_regs_init(1), ++ hpd_regs_init(2), ++ hpd_regs_init(3), ++ hpd_regs_init(4); ++#undef REG_STRUCT ++#define REG_STRUCT link_enc_regs ++ link_regs_init(0, A), ++ link_regs_init(1, B), ++ link_regs_init(2, C), ++ link_regs_init(3, D), ++ link_regs_init(4, E); ++ ++ dcn42_link_encoder_construct(enc20, ++ enc_init_data, ++ &link_enc_feature, ++ &link_enc_regs[enc_init_data->transmitter], ++ &link_enc_aux_regs[enc_init_data->channel - 1], ++ &link_enc_hpd_regs[enc_init_data->hpd_source], ++ &le_shift, ++ &le_mask); ++ return &enc20->enc10.base; ++} ++ ++static void read_dce_straps( ++ struct dc_context *ctx, ++ struct resource_straps *straps) ++{ ++ generic_reg_get(ctx, regDC_PINSTRAPS + BASE(regDC_PINSTRAPS_BASE_IDX), ++ FN(DC_PINSTRAPS, DC_PINSTRAPS_AUDIO), &straps->dc_pinstraps_audio); ++} ++ ++static struct audio *dcn42_create_audio( ++ struct dc_context *ctx, unsigned int inst) ++{ ++ ++#undef REG_STRUCT ++#define REG_STRUCT audio_regs ++ audio_regs_init(0), ++ audio_regs_init(1), ++ audio_regs_init(2), ++ audio_regs_init(3), ++ audio_regs_init(4); ++ ++ return dce_audio_create(ctx, inst, ++ &audio_regs[inst], &audio_shift, &audio_mask); ++} ++ ++static struct vpg *dcn42_vpg_create( ++ struct dc_context *ctx, ++ uint32_t inst) ++{ ++ struct dcn31_vpg *vpg4 = kzalloc(sizeof(struct dcn31_vpg), GFP_KERNEL); ++ ++ if (!vpg4) ++ return NULL; ++ ++#undef REG_STRUCT ++#define REG_STRUCT vpg_regs ++ vpg_regs_init(0), ++ vpg_regs_init(1), ++ vpg_regs_init(2), ++ vpg_regs_init(3), ++ vpg_regs_init(4), ++ vpg_regs_init(5), ++ vpg_regs_init(6), ++ vpg_regs_init(7), ++ vpg_regs_init(8), ++ vpg_regs_init(9); ++ vpg31_construct(vpg4, ctx, inst, ++ &vpg_regs[inst], ++ &vpg_shift, ++ &vpg_mask); ++ ++ return &vpg4->base; ++} ++ ++static struct apg *dcn42_apg_create( ++ struct dc_context *ctx, ++ uint32_t inst) ++{ ++ struct dcn31_apg *apg31 = kzalloc(sizeof(struct dcn31_apg), GFP_KERNEL); ++ ++ if (!apg31) ++ return NULL; ++ ++#undef REG_STRUCT ++#define REG_STRUCT apg_regs ++ apg_regs_init(0), ++ apg_regs_init(1), ++ apg_regs_init(2), ++ apg_regs_init(3), ++ apg_regs_init(4), ++ apg_regs_init(5), ++ apg_regs_init(6), ++ apg_regs_init(7), ++ apg_regs_init(8), ++ apg_regs_init(9); ++ ++ apg31_construct(apg31, ctx, inst, ++ &apg_regs[inst], ++ &apg_shift, ++ &apg_mask); ++ ++ return &apg31->base; ++} ++ ++static struct stream_encoder *dcn42_stream_encoder_create( ++ enum engine_id eng_id, ++ struct dc_context *ctx) ++{ ++ struct dcn10_stream_encoder *enc1; ++ struct vpg *vpg; ++ struct apg *apg; ++ ++ uint32_t vpg_inst; ++ uint32_t apg_inst; ++ ++ /* Mapping of VPG, DME register blocks to DIO block instance */ ++ if (eng_id <= ENGINE_ID_DIGE) { ++ vpg_inst = eng_id; ++ apg_inst = eng_id; ++ } else ++ return NULL; ++ ++ enc1 = kzalloc(sizeof(struct dcn10_stream_encoder), GFP_KERNEL); ++ vpg = dcn42_vpg_create(ctx, vpg_inst); ++ apg = dcn42_apg_create(ctx, apg_inst); ++ ++ if (!enc1 || !vpg || !apg) { ++ kfree(enc1); ++ kfree(vpg); ++ kfree(apg); ++ return NULL; ++ } ++#undef REG_STRUCT ++#define REG_STRUCT stream_enc_regs ++ stream_enc_regs_init(0), ++ stream_enc_regs_init(1), ++ stream_enc_regs_init(2), ++ stream_enc_regs_init(3), ++ stream_enc_regs_init(4); ++ ++ dcn42_dio_stream_encoder_construct(enc1, ctx, ctx->dc_bios, ++ eng_id, vpg, apg, ++ &stream_enc_regs[eng_id], ++ &se_shift, &se_mask); ++ return &enc1->base; ++} ++ ++static struct hpo_dp_stream_encoder *dcn42_hpo_dp_stream_encoder_create( ++ enum engine_id eng_id, ++ struct dc_context *ctx) ++{ ++ struct dcn31_hpo_dp_stream_encoder *hpo_dp_enc31; ++ struct vpg *vpg; ++ struct apg *apg; ++ uint32_t hpo_dp_inst; ++ uint32_t vpg_inst; ++ uint32_t apg_inst; ++ ++ ASSERT((eng_id >= ENGINE_ID_HPO_DP_0) && (eng_id <= ENGINE_ID_HPO_DP_3)); ++ hpo_dp_inst = eng_id - ENGINE_ID_HPO_DP_0; ++ ++ /* Mapping of VPG register blocks to HPO DP block instance: ++ * VPG[5] -> HPO_DP[0] ++ * VPG[6] -> HPO_DP[1] ++ * VPG[7] -> HPO_DP[2] ++ * VPG[8] -> HPO_DP[3] ++ */ ++ vpg_inst = hpo_dp_inst + 5; ++ ++ /* Mapping of APG register blocks to HPO DP block instance: ++ * APG[6] -> HPO_DP[0] ++ * APG[7] -> HPO_DP[1] ++ * APG[8] -> HPO_DP[2] ++ * APG[9] -> HPO_DP[3] ++ */ ++ apg_inst = hpo_dp_inst + 5; ++ ++ /* allocate HPO stream encoder and create VPG sub-block */ ++ hpo_dp_enc31 = kzalloc(sizeof(struct dcn31_hpo_dp_stream_encoder), GFP_KERNEL); ++ vpg = dcn42_vpg_create(ctx, vpg_inst); ++ apg = dcn42_apg_create(ctx, apg_inst); ++ ++ if (!hpo_dp_enc31 || !vpg || !apg) { ++ kfree(hpo_dp_enc31); ++ kfree(vpg); ++ kfree(apg); ++ return NULL; ++ } ++ ++#undef REG_STRUCT ++#define REG_STRUCT hpo_dp_stream_enc_regs ++ hpo_dp_stream_encoder_reg_init(0), ++ hpo_dp_stream_encoder_reg_init(1), ++ hpo_dp_stream_encoder_reg_init(2), ++ hpo_dp_stream_encoder_reg_init(3); ++ ++ dcn31_hpo_dp_stream_encoder_construct(hpo_dp_enc31, ctx, ctx->dc_bios, ++ hpo_dp_inst, eng_id, vpg, apg, ++ &hpo_dp_stream_enc_regs[hpo_dp_inst], ++ &hpo_dp_se_shift, &hpo_dp_se_mask); ++ ++ return &hpo_dp_enc31->base; ++} ++ ++static struct hpo_dp_link_encoder *dcn42_hpo_dp_link_encoder_create( ++ uint8_t inst, ++ struct dc_context *ctx) ++{ ++ struct dcn31_hpo_dp_link_encoder *hpo_dp_enc31; ++ ++ /* allocate HPO link encoder */ ++ hpo_dp_enc31 = kzalloc(sizeof(struct dcn31_hpo_dp_link_encoder), GFP_KERNEL); ++ if (!hpo_dp_enc31) ++ return NULL; /* out of memory */ ++ ++#undef REG_STRUCT ++#define REG_STRUCT hpo_dp_link_enc_regs ++ hpo_dp_link_encoder_reg_init(0), ++ hpo_dp_link_encoder_reg_init(1), ++ hpo_dp_link_encoder_reg_init(2), ++ hpo_dp_link_encoder_reg_init(3); ++ ++ hpo_dp_link_encoder42_construct(hpo_dp_enc31, ctx, inst, ++ &hpo_dp_link_enc_regs[inst], ++ &hpo_dp_le_shift, &hpo_dp_le_mask); ++ ++ return &hpo_dp_enc31->base; ++} ++ ++static struct dce_hwseq *dcn42_hwseq_create( ++ struct dc_context *ctx) ++{ ++ struct dce_hwseq *hws = kzalloc(sizeof(struct dce_hwseq), GFP_KERNEL); ++ ++#undef REG_STRUCT ++#define REG_STRUCT hwseq_reg ++ hwseq_reg_init(); ++ ++ if (hws) { ++ hws->ctx = ctx; ++ hws->regs = &hwseq_reg; ++ hws->shifts = &hwseq_shift; ++ hws->masks = &hwseq_mask; ++ } ++ ++ return hws; ++} ++ ++static const struct resource_create_funcs res_create_funcs = { ++ .read_dce_straps = read_dce_straps, ++ .create_audio = dcn42_create_audio, ++ .create_stream_encoder = dcn42_stream_encoder_create, ++ .create_hpo_dp_stream_encoder = dcn42_hpo_dp_stream_encoder_create, ++ .create_hpo_dp_link_encoder = dcn42_hpo_dp_link_encoder_create, ++ .create_hwseq = dcn42_hwseq_create, ++}; ++ ++static void dcn42_dsc_destroy(struct display_stream_compressor **dsc) ++{ ++ kfree(container_of(*dsc, struct dcn401_dsc, base)); ++ *dsc = NULL; ++} ++ ++static void dcn42_resource_destruct(struct dcn42_resource_pool *pool) ++{ ++ unsigned int i; ++ ++ for (i = 0; i < pool->base.stream_enc_count; i++) { ++ if (pool->base.stream_enc[i] != NULL) { ++ if (pool->base.stream_enc[i]->vpg != NULL) { ++ kfree(DCN31_VPG_FROM_VPG(pool->base.stream_enc[i]->vpg)); ++ pool->base.stream_enc[i]->vpg = NULL; ++ } ++ if (pool->base.stream_enc[i]->apg != NULL) { ++ kfree(DCN31_APG_FROM_APG(pool->base.stream_enc[i]->apg)); ++ pool->base.stream_enc[i]->apg = NULL; ++ } ++ kfree(DCN10STRENC_FROM_STRENC(pool->base.stream_enc[i])); ++ pool->base.stream_enc[i] = NULL; ++ } ++ } ++ ++ for (i = 0; i < pool->base.hpo_dp_stream_enc_count; i++) { ++ if (pool->base.hpo_dp_stream_enc[i] != NULL) { ++ if (pool->base.hpo_dp_stream_enc[i]->vpg != NULL) { ++ kfree(DCN31_VPG_FROM_VPG(pool->base.hpo_dp_stream_enc[i]->vpg)); ++ pool->base.hpo_dp_stream_enc[i]->vpg = NULL; ++ } ++ if (pool->base.hpo_dp_stream_enc[i]->apg != NULL) { ++ kfree(DCN31_APG_FROM_APG(pool->base.hpo_dp_stream_enc[i]->apg)); ++ pool->base.hpo_dp_stream_enc[i]->apg = NULL; ++ } ++ kfree(DCN3_1_HPO_DP_STREAM_ENC_FROM_HPO_STREAM_ENC(pool->base.hpo_dp_stream_enc[i])); ++ pool->base.hpo_dp_stream_enc[i] = NULL; ++ } ++ } ++ ++ for (i = 0; i < pool->base.hpo_dp_link_enc_count; i++) { ++ if (pool->base.hpo_dp_link_enc[i] != NULL) { ++ kfree(DCN3_1_HPO_DP_LINK_ENC_FROM_HPO_LINK_ENC(pool->base.hpo_dp_link_enc[i])); ++ pool->base.hpo_dp_link_enc[i] = NULL; ++ } ++ } ++ ++ for (i = 0; i < pool->base.res_cap->num_dsc; i++) { ++ if (pool->base.dscs[i] != NULL) ++ dcn42_dsc_destroy(&pool->base.dscs[i]); ++ } ++ ++ if (pool->base.mpc != NULL) { ++ kfree(TO_DCN20_MPC(pool->base.mpc)); ++ pool->base.mpc = NULL; ++ } ++ if (pool->base.hubbub != NULL) { ++ kfree(TO_DCN20_HUBBUB(pool->base.hubbub)); ++ pool->base.hubbub = NULL; ++ } ++ for (i = 0; i < pool->base.pipe_count; i++) { ++ if (pool->base.dpps[i] != NULL) ++ dcn42_dpp_destroy(&pool->base.dpps[i]); ++ ++ if (pool->base.ipps[i] != NULL) ++ pool->base.ipps[i]->funcs->ipp_destroy(&pool->base.ipps[i]); ++ ++ if (pool->base.hubps[i] != NULL) { ++ kfree(TO_DCN20_HUBP(pool->base.hubps[i])); ++ pool->base.hubps[i] = NULL; ++ } ++ ++ if (pool->base.irqs != NULL) ++ dal_irq_service_destroy(&pool->base.irqs); ++ } ++ ++ for (i = 0; i < pool->base.res_cap->num_ddc; i++) { ++ if (pool->base.engines[i] != NULL) ++ dce110_engine_destroy(&pool->base.engines[i]); ++ if (pool->base.hw_i2cs[i] != NULL) { ++ kfree(pool->base.hw_i2cs[i]); ++ pool->base.hw_i2cs[i] = NULL; ++ } ++ if (pool->base.sw_i2cs[i] != NULL) { ++ kfree(pool->base.sw_i2cs[i]); ++ pool->base.sw_i2cs[i] = NULL; ++ } ++ } ++ ++ for (i = 0; i < pool->base.res_cap->num_opp; i++) { ++ if (pool->base.opps[i] != NULL) ++ pool->base.opps[i]->funcs->opp_destroy(&pool->base.opps[i]); ++ } ++ ++ for (i = 0; i < pool->base.res_cap->num_timing_generator; i++) { ++ if (pool->base.timing_generators[i] != NULL) { ++ kfree(DCN10TG_FROM_TG(pool->base.timing_generators[i])); ++ pool->base.timing_generators[i] = NULL; ++ } ++ } ++ ++ for (i = 0; i < pool->base.res_cap->num_dwb; i++) { ++ if (pool->base.dwbc[i] != NULL) { ++ kfree(TO_DCN30_DWBC(pool->base.dwbc[i])); ++ pool->base.dwbc[i] = NULL; ++ } ++ if (pool->base.mcif_wb[i] != NULL) { ++ kfree(TO_DCN30_MMHUBBUB(pool->base.mcif_wb[i])); ++ pool->base.mcif_wb[i] = NULL; ++ } ++ } ++ ++ for (i = 0; i < pool->base.audio_count; i++) { ++ if (pool->base.audios[i]) ++ dce_aud_destroy(&pool->base.audios[i]); ++ } ++ ++ for (i = 0; i < pool->base.clk_src_count; i++) { ++ if (pool->base.clock_sources[i] != NULL) { ++ dcn20_clock_source_destroy(&pool->base.clock_sources[i]); ++ pool->base.clock_sources[i] = NULL; ++ } ++ } ++ ++ for (i = 0; i < pool->base.res_cap->num_mpc_3dlut; i++) { ++ if (pool->base.mpc_lut[i] != NULL) { ++ dc_3dlut_func_release(pool->base.mpc_lut[i]); ++ pool->base.mpc_lut[i] = NULL; ++ } ++ if (pool->base.mpc_shaper[i] != NULL) { ++ dc_transfer_func_release(pool->base.mpc_shaper[i]); ++ pool->base.mpc_shaper[i] = NULL; ++ } ++ } ++ ++ if (pool->base.dp_clock_source != NULL) { ++ dcn20_clock_source_destroy(&pool->base.dp_clock_source); ++ pool->base.dp_clock_source = NULL; ++ } ++ ++ for (i = 0; i < pool->base.res_cap->num_timing_generator; i++) { ++ if (pool->base.multiple_abms[i] != NULL) ++ dce_abm_destroy(&pool->base.multiple_abms[i]); ++ } ++ ++ if (pool->base.psr != NULL) ++ dmub_psr_destroy(&pool->base.psr); ++ ++ if (pool->base.pg_cntl != NULL) ++ dcn_pg_cntl_destroy(&pool->base.pg_cntl); ++ if (pool->base.dccg != NULL) ++ dcn_dccg_destroy(&pool->base.dccg); ++ ++ if (pool->base.oem_device != NULL) { ++ struct dc *dc = pool->base.oem_device->ctx->dc; ++ ++ dc->link_srv->destroy_ddc_service(&pool->base.oem_device); ++ } ++} ++ ++static void dcn42_build_pipe_pix_clk_params(struct pipe_ctx *pipe_ctx) ++{ ++ const struct dc_stream_state *stream = pipe_ctx->stream; ++ struct dc_link *link = stream->link; ++ struct link_encoder *link_enc = pipe_ctx->link_res.dio_link_enc; ++ struct pixel_clk_params *pixel_clk_params = &pipe_ctx->stream_res.pix_clk_params; ++ ++ pixel_clk_params->requested_pix_clk_100hz = stream->timing.pix_clk_100hz; ++ ++ if (pipe_ctx->dsc_padding_params.dsc_hactive_padding != 0) ++ pixel_clk_params->requested_pix_clk_100hz = pipe_ctx->dsc_padding_params.dsc_pix_clk_100hz; ++ ++ if (!pipe_ctx->stream->ctx->dc->config.unify_link_enc_assignment) ++ link_enc = link_enc_cfg_get_link_enc(link); ++ if (link_enc) ++ pixel_clk_params->encoder_object_id = link_enc->id; ++ ++ pixel_clk_params->signal_type = pipe_ctx->stream->signal; ++ pixel_clk_params->controller_id = pipe_ctx->stream_res.tg->inst + 1; ++ /* TODO: un-hardcode*/ ++ ++ /* TODO - DP2.0 HW: calculate requested_sym_clk for UHBR rates */ ++ ++ pixel_clk_params->requested_sym_clk = LINK_RATE_LOW * ++ LINK_RATE_REF_FREQ_IN_KHZ; ++ pixel_clk_params->flags.ENABLE_SS = 0; ++ pixel_clk_params->color_depth = ++ stream->timing.display_color_depth; ++ pixel_clk_params->flags.DISPLAY_BLANKED = 1; ++ pixel_clk_params->pixel_encoding = stream->timing.pixel_encoding; ++ ++ if (stream->timing.pixel_encoding == PIXEL_ENCODING_YCBCR422) ++ pixel_clk_params->color_depth = COLOR_DEPTH_888; ++ ++ if (stream->timing.timing_3d_format == TIMING_3D_FORMAT_HW_FRAME_PACKING) ++ pixel_clk_params->requested_pix_clk_100hz *= 2; ++ if (dc_is_tmds_signal(stream->signal) && ++ stream->timing.pixel_encoding == PIXEL_ENCODING_YCBCR420) ++ pixel_clk_params->requested_pix_clk_100hz /= 2; ++ ++ pipe_ctx->clock_source->funcs->get_pix_clk_dividers( ++ pipe_ctx->clock_source, ++ &pipe_ctx->stream_res.pix_clk_params, ++ &pipe_ctx->pll_settings); ++ ++ pixel_clk_params->dio_se_pix_per_cycle = 1; ++ if (dc_is_tmds_signal(stream->signal) && ++ stream->timing.pixel_encoding == PIXEL_ENCODING_YCBCR420) { ++ pixel_clk_params->dio_se_pix_per_cycle = 2; ++ } else if (dc_is_dp_signal(stream->signal)) { ++ /* round up to nearest power of 2, or max at 8 pixels per cycle */ ++ if (pixel_clk_params->requested_pix_clk_100hz > 4 * stream->ctx->dc->clk_mgr->dprefclk_khz * 10) { ++ pixel_clk_params->dio_se_pix_per_cycle = 8; ++ } else if (pixel_clk_params->requested_pix_clk_100hz > 2 * stream->ctx->dc->clk_mgr->dprefclk_khz * 10) { ++ pixel_clk_params->dio_se_pix_per_cycle = 4; ++ } else if (pixel_clk_params->requested_pix_clk_100hz > stream->ctx->dc->clk_mgr->dprefclk_khz * 10) { ++ pixel_clk_params->dio_se_pix_per_cycle = 2; ++ } else { ++ pixel_clk_params->dio_se_pix_per_cycle = 1; ++ } ++ } ++} ++ ++static bool dcn42_dwbc_create(struct dc_context *ctx, struct resource_pool *pool) ++{ ++ int i; ++ uint32_t dwb_count = pool->res_cap->num_dwb; ++ ++ for (i = 0; i < dwb_count; i++) { ++ struct dcn30_dwbc *dwbc42 = kzalloc(sizeof(struct dcn30_dwbc), ++ GFP_KERNEL); ++ ++ if (!dwbc42) { ++ dm_error("DC: failed to create dwbc42!\n"); ++ return false; ++ } ++ ++#undef REG_STRUCT ++#define REG_STRUCT dwbc401_regs ++ dwbc_regs_dcn401_init(0); ++ ++ dcn30_dwbc_construct(dwbc42, ctx, ++ &dwbc401_regs[i], ++ &dwbc401_shift, ++ &dwbc401_mask, ++ i); ++ ++ pool->dwbc[i] = &dwbc42->base; ++ } ++ return true; ++} ++ ++static void dcn42_mmhubbub_init(struct dcn30_mmhubbub *mcif_wb30, ++ struct dc_context *ctx) ++{ ++ dcn42_mmhubbub_set_fgcg( ++ mcif_wb30, ++ ctx->dc->debug.enable_fine_grain_clock_gating.bits.mmhubbub); ++} ++ ++static bool dcn42_mmhubbub_create(struct dc_context *ctx, struct resource_pool *pool) ++{ ++ int i; ++ uint32_t pipe_count = pool->res_cap->num_dwb; ++ ++ for (i = 0; i < pipe_count; i++) { ++ struct dcn30_mmhubbub *mcif_wb30 = kzalloc(sizeof(struct dcn30_mmhubbub), ++ GFP_KERNEL); ++ ++ if (!mcif_wb30) { ++ dm_error("DC: failed to create mcif_wb30!\n"); ++ return false; ++ } ++ ++#undef REG_STRUCT ++#define REG_STRUCT mcif_wb35_regs ++ mcif_wb_regs_dcn3_init(0); ++ ++ dcn35_mmhubbub_construct(mcif_wb30, ctx, ++ &mcif_wb35_regs[i], ++ &mcif_wb35_shift, ++ &mcif_wb35_mask, ++ i); ++ ++ dcn42_mmhubbub_init(mcif_wb30, ctx); ++ ++ pool->mcif_wb[i] = &mcif_wb30->base; ++ } ++ return true; ++} ++ ++static struct display_stream_compressor *dcn42_dsc_create( ++ struct dc_context *ctx, uint32_t inst) ++{ ++ struct dcn401_dsc *dsc = ++ kzalloc(sizeof(struct dcn401_dsc), GFP_KERNEL); ++ ++ if (!dsc) { ++ BREAK_TO_DEBUGGER(); ++ return NULL; ++ } ++ ++#undef REG_STRUCT ++#define REG_STRUCT dsc_regs ++ dsc_regs_init(0), ++ dsc_regs_init(1), ++ dsc_regs_init(2), ++ dsc_regs_init(3); ++ ++ dsc401_construct(dsc, ctx, inst, &dsc_regs[inst], &dsc_shift, &dsc_mask); ++ dsc401_set_fgcg(dsc, ctx->dc->debug.enable_fine_grain_clock_gating.bits.dsc); ++ ++ dsc->max_image_width = 5760; ++ ++ return &dsc->base; ++} ++ ++static void dcn42_destroy_resource_pool(struct resource_pool **pool) ++{ ++ struct dcn42_resource_pool *dcn42_pool = TO_DCN42_RES_POOL(*pool); ++ ++ dcn42_resource_destruct(dcn42_pool); ++ kfree(dcn42_pool); ++ *pool = NULL; ++} ++ ++static struct dc_cap_funcs cap_funcs = { ++ .get_dcc_compression_cap = dcn20_get_dcc_compression_cap}; ++ ++static void dcn42_update_bw_bounding_box_fpu(struct dc *dc, struct clk_bw_params *bw_params) ++{ ++ dc_assert_fp_enabled(); ++ ++ if (dc->current_state && dc->current_state->bw_ctx.dml2) ++ dml2_reinit(dc, &dc->dml2_options, &dc->current_state->bw_ctx.dml2); ++} ++ ++static void dcn42_update_bw_bounding_box(struct dc *dc, struct clk_bw_params *bw_params) ++{ ++ DC_FP_START(); ++ dcn42_update_bw_bounding_box_fpu(dc, bw_params); ++ DC_FP_END(); ++} ++enum dc_status dcn42_validate_bandwidth(struct dc *dc, ++ struct dc_state *context, ++ enum dc_validate_mode validate_mode) ++{ ++ bool out = false; ++ ++ DC_FP_START(); ++ ++ out = dml2_validate(dc, context, context->bw_ctx.dml2, ++ validate_mode); ++ ++ if (validate_mode == DC_VALIDATE_MODE_AND_PROGRAMMING) { ++ /*not required for mode enumeration*/ ++ dcn42_decide_zstate_support(dc, context); ++ } ++ ++ DC_FP_END(); ++ ++ return out ? DC_OK : DC_FAIL_BANDWIDTH_VALIDATE; ++} ++void dcn42_prepare_mcache_programming(struct dc *dc, ++ struct dc_state *context) ++{ ++ if (dc->debug.using_dml21) { ++ DC_FP_START(); ++ dml2_prepare_mcache_programming(dc, context, ++ context->power_source == DC_POWER_SOURCE_DC ? ++ context->bw_ctx.dml2_dc_power_source : context->bw_ctx.dml2); ++ DC_FP_END(); ++ } ++} ++/* Create a minimal link encoder object not associated with a particular ++ * physical connector. ++ * resource_funcs.link_enc_create_minimal ++ */ ++static struct link_encoder *dcn42_link_enc_create_minimal( ++ struct dc_context *ctx, enum engine_id eng_id) ++{ ++ struct dcn20_link_encoder *enc20; ++ ++ if ((eng_id - ENGINE_ID_DIGA) > ctx->dc->res_pool->res_cap->num_dig_link_enc) ++ return NULL; ++ ++ enc20 = kzalloc(sizeof(struct dcn20_link_encoder), GFP_KERNEL); ++ if (!enc20) ++ return NULL; ++ ++ dcn31_link_encoder_construct_minimal( ++ enc20, ++ ctx, ++ &link_enc_feature, ++ &link_enc_regs[eng_id - ENGINE_ID_DIGA], ++ eng_id); ++ ++ return &enc20->enc10.base; ++} ++static void dcn42_get_panel_config_defaults(struct dc_panel_config *panel_config) ++{ ++ *panel_config = dcn42_panel_config_defaults; ++} ++static unsigned int dcn42_get_max_hw_cursor_size(const struct dc *dc, ++ struct dc_state *state, ++ const struct dc_stream_state *stream) ++{ ++ return dc->caps.max_cursor_size; ++} ++static struct resource_funcs dcn42_res_pool_funcs = { ++ .destroy = dcn42_destroy_resource_pool, ++ .link_enc_create = dcn42_link_encoder_create, ++ .link_enc_create_minimal = dcn42_link_enc_create_minimal, ++ .link_encs_assign = link_enc_cfg_link_encs_assign, ++ .link_enc_unassign = link_enc_cfg_link_enc_unassign, ++ .panel_cntl_create = dcn32_panel_cntl_create, ++ .validate_bandwidth = dcn42_validate_bandwidth, ++ .calculate_wm_and_dlg = NULL, ++ .populate_dml_pipes = NULL, ++ .acquire_free_pipe_as_secondary_dpp_pipe = dcn32_acquire_free_pipe_as_secondary_dpp_pipe, ++ .acquire_free_pipe_as_secondary_opp_head = dcn32_acquire_free_pipe_as_secondary_opp_head, ++ .release_pipe = dcn20_release_pipe, ++ .add_stream_to_ctx = dcn30_add_stream_to_ctx, ++ .add_dsc_to_stream_resource = dcn20_add_dsc_to_stream_resource, ++ .remove_stream_from_ctx = dcn20_remove_stream_from_ctx, ++ .populate_dml_writeback_from_context = dcn30_populate_dml_writeback_from_context, ++ .set_mcif_arb_params = dcn30_set_mcif_arb_params, ++ .find_first_free_match_stream_enc_for_link = dcn10_find_first_free_match_stream_enc_for_link, ++ .acquire_post_bldn_3dlut = dcn32_acquire_post_bldn_3dlut, ++ .release_post_bldn_3dlut = dcn32_release_post_bldn_3dlut, ++ .update_bw_bounding_box = dcn42_update_bw_bounding_box, ++ .patch_unknown_plane_state = dcn35_patch_unknown_plane_state, ++ .get_panel_config_defaults = dcn42_get_panel_config_defaults, ++ .get_preferred_eng_id_dpia = dcn42_get_preferred_eng_id_dpia, ++ .update_soc_for_wm_a = dcn30_update_soc_for_wm_a, ++ .add_phantom_pipes = dcn32_add_phantom_pipes, ++ .calculate_mall_ways_from_bytes = dcn32_calculate_mall_ways_from_bytes, ++ .prepare_mcache_programming = dcn42_prepare_mcache_programming, ++ .build_pipe_pix_clk_params = dcn42_build_pipe_pix_clk_params, ++ .get_power_profile = dcn401_get_power_profile, ++ .get_vstartup_for_pipe = dcn401_get_vstartup_for_pipe, ++ .get_max_hw_cursor_size = dcn42_get_max_hw_cursor_size, ++ .get_default_tiling_info = dcn10_get_default_tiling_info ++}; ++ ++static uint32_t read_pipe_fuses(struct dc_context *ctx) ++{ ++ uint32_t value = REG_READ(CC_DC_PIPE_DIS); ++ ++ if (value == 0 && ctx->dce_environment == DCE_ENV_DIAG) ++ value = 0xF; ++ /* DCN401 support max 4 pipes */ ++ value = value & 0xf; ++ return value; ++} ++ ++static bool dcn42_resource_construct( ++ uint8_t num_virtual_links, ++ struct dc *dc, ++ struct dcn42_resource_pool *pool) ++{ ++ int i, j; ++ struct dc_context *ctx = dc->ctx; ++ struct irq_service_init_data init_data; ++ uint32_t pipe_fuses; ++ uint32_t num_pipes; ++ ++#undef REG_STRUCT ++#define REG_STRUCT bios_regs ++ bios_regs_init(); ++ ++#undef REG_STRUCT ++#define REG_STRUCT clk_src_regs ++ clk_src_regs_init(0, A), ++ clk_src_regs_init(1, B), ++ clk_src_regs_init(2, C), ++ clk_src_regs_init(3, D), ++ clk_src_regs_init(4, E); ++ ++#undef REG_STRUCT ++#define REG_STRUCT abm_regs ++ abm_regs_init(0), ++ abm_regs_init(1), ++ abm_regs_init(2), ++ abm_regs_init(3); ++#undef REG_STRUCT ++#define REG_STRUCT dccg_regs ++ dccg_regs_init(); ++ ++ ctx->dc_bios->regs = &bios_regs; ++ ++ pool->base.res_cap = &res_cap_dcn42; ++ ++ /* max number of pipes for ASIC before checking for pipe fuses */ ++ num_pipes = pool->base.res_cap->num_dpp; ++ pipe_fuses = read_pipe_fuses(ctx); ++ ++ for (i = 0; i < pool->base.res_cap->num_dpp; i++) ++ if (pipe_fuses & 1 << i) ++ num_pipes--; ++ ++ if (pipe_fuses & 1) ++ ASSERT(0); // Unexpected - Pipe 0 should always be fully functional! ++ ++ if (pipe_fuses & CC_DC_PIPE_DIS__DC_FULL_DIS_MASK) ++ ASSERT(0); // Entire DCN is harvested! ++ ++ pool->base.funcs = &dcn42_res_pool_funcs; ++ ++ /************************************************* ++ * Resource + asic cap harcoding * ++ *************************************************/ ++ pool->base.underlay_pipe_index = (unsigned int)NO_UNDERLAY_PIPE; ++ pool->base.timing_generator_count = pool->base.res_cap->num_timing_generator; ++ pool->base.pipe_count = num_pipes; ++ pool->base.mpcc_count = num_pipes; ++ dc->caps.ips_v2_support = true; ++ dc->caps.max_downscale_ratio = 600; ++ dc->caps.i2c_speed_in_khz = 100; ++ dc->caps.i2c_speed_in_khz_hdcp = 100; /*1.4 w/a applied by default*/ ++ /* TODO: Bring max cursor size back to 256 after subvp cursor corruption is fixed*/ ++ dc->caps.max_cursor_size = 64; ++ dc->caps.max_buffered_cursor_size = 64; ++ dc->caps.cursor_not_scaled = true; ++ dc->caps.min_horizontal_blanking_period = 80; ++ dc->caps.dmdata_alloc_size = 2048; ++ dc->caps.mall_size_per_mem_channel = 4; ++ /* total size = mall per channel * num channels * 1024 * 1024 */ ++ dc->caps.mall_size_total = dc->caps.mall_size_per_mem_channel * ++ dc->ctx->dc_bios->vram_info.num_chans * 1048576; ++ dc->caps.cursor_cache_size = dc->caps.max_cursor_size * dc->caps.max_cursor_size * 8; ++ dc->caps.cache_line_size = 64; ++ dc->caps.cache_num_ways = 16; ++ ++ /* Calculate the available MALL space */ ++ dc->caps.max_cab_allocation_bytes = ++ dcn32_calc_num_avail_chans_for_mall(dc, dc->ctx->dc_bios->vram_info.num_chans) * ++ dc->caps.mall_size_per_mem_channel * 1024 * 1024; ++ dc->caps.mall_size_total = dc->caps.max_cab_allocation_bytes; ++ ++ dc->caps.subvp_fw_processing_delay_us = 15; ++ dc->caps.subvp_drr_max_vblank_margin_us = 40; ++ dc->caps.subvp_prefetch_end_to_mall_start_us = 15; ++ dc->caps.subvp_swath_height_margin_lines = 16; ++ dc->caps.subvp_pstate_allow_width_us = 20; ++ dc->caps.subvp_vertical_int_margin_us = 30; ++ dc->caps.subvp_drr_vblank_start_margin_us = 100; // 100us margin ++ ++ dc->caps.max_slave_planes = 2; ++ dc->caps.max_slave_yuv_planes = 2; ++ dc->caps.max_slave_rgb_planes = 2; ++ dc->caps.post_blend_color_processing = true; ++ dc->caps.force_dp_tps4_for_cp2520 = true; ++ if (dc->config.forceHBR2CP2520) ++ dc->caps.force_dp_tps4_for_cp2520 = false; ++ dc->caps.dp_hdmi21_pcon_support = true; ++ dc->caps.dp_hpo = true; ++ dc->caps.edp_dsc_support = true; ++ dc->caps.extended_aux_timeout_support = true; ++ dc->caps.dmcub_support = true; ++ dc->caps.is_apu = true; ++ dc->caps.seamless_odm = true; ++ dc->caps.zstate_support = true; ++ dc->caps.ips_support = true; ++ dc->caps.max_v_total = (1 << 15) - 1; ++ dc->caps.vtotal_limited_by_fp2 = true; ++ ++ dc->caps.seamless_odm = true; ++ dc->caps.zstate_support = true; ++ dc->caps.ips_support = true; ++ dc->caps.max_v_total = (1 << 15) - 1; ++ dc->caps.vtotal_limited_by_fp2 = true; ++ ++ /* Color pipeline capabilities */ ++ dc->caps.color.dpp.dcn_arch = 1; ++ dc->caps.color.dpp.input_lut_shared = 0; ++ dc->caps.color.dpp.icsc = 1; ++ dc->caps.color.dpp.dgam_ram = 0; // must use gamma_corr ++ dc->caps.color.dpp.dgam_rom_caps.srgb = 1; ++ dc->caps.color.dpp.dgam_rom_caps.bt2020 = 1; ++ dc->caps.color.dpp.dgam_rom_caps.gamma2_2 = 1; ++ dc->caps.color.dpp.dgam_rom_caps.pq = 1; ++ dc->caps.color.dpp.dgam_rom_caps.hlg = 1; ++ dc->caps.color.dpp.post_csc = 1; ++ dc->caps.color.dpp.gamma_corr = 1; ++ dc->caps.color.dpp.dgam_rom_for_yuv = 0; ++ ++ dc->caps.color.dpp.hw_3d_lut = 0; ++ dc->caps.color.dpp.ogam_ram = 0; ++ // no OGAM ROM on DCN2 and later ASICs ++ dc->caps.color.dpp.ogam_rom_caps.srgb = 0; ++ dc->caps.color.dpp.ogam_rom_caps.bt2020 = 0; ++ dc->caps.color.dpp.ogam_rom_caps.gamma2_2 = 0; ++ dc->caps.color.dpp.ogam_rom_caps.pq = 0; ++ dc->caps.color.dpp.ogam_rom_caps.hlg = 0; ++ dc->caps.color.dpp.ocsc = 0; ++ ++ dc->caps.color.mpc.gamut_remap = 1; ++ //configurable to be before or after BLND in MPCC ++ dc->caps.color.mpc.num_3dluts = pool->base.res_cap->num_mpc_3dlut; ++ dc->caps.color.mpc.num_rmcm_3dluts = 2; ++ dc->caps.color.mpc.ogam_ram = 1; ++ dc->caps.color.mpc.ogam_rom_caps.srgb = 0; ++ dc->caps.color.mpc.ogam_rom_caps.bt2020 = 0; ++ dc->caps.color.mpc.ogam_rom_caps.gamma2_2 = 0; ++ dc->caps.color.mpc.ogam_rom_caps.pq = 0; ++ dc->caps.color.mpc.ogam_rom_caps.hlg = 0; ++ dc->caps.color.mpc.ocsc = 1; ++ dc->caps.color.mpc.preblend = true; ++ dc->caps.color.mpc.mcm_3d_lut_caps.dma_3d_lut = 1; ++ dc->caps.color.mpc.mcm_3d_lut_caps.lut_dim_caps.dim_9 = 1; ++ dc->caps.color.mpc.mcm_3d_lut_caps.lut_dim_caps.dim_17 = 1; ++ dc->caps.color.mpc.mcm_3d_lut_caps.mem_layout_support.linear_1d = 1; ++ dc->caps.color.mpc.mcm_3d_lut_caps.mem_layout_support.swizzle_3d_bgr = 1; ++ dc->caps.color.mpc.mcm_3d_lut_caps.mem_layout_support.swizzle_3d_rgb = 1; ++ dc->caps.color.mpc.mcm_3d_lut_caps.mem_format_support.unorm_12msb = 1; ++ dc->caps.color.mpc.mcm_3d_lut_caps.mem_format_support.unorm_12lsb = 1; ++ dc->caps.color.mpc.mcm_3d_lut_caps.mem_format_support.float_fp1_5_10 = 1; ++ dc->caps.color.mpc.mcm_3d_lut_caps.mem_pixel_order_support.order_rgba = 1; ++ dc->caps.color.mpc.mcm_3d_lut_caps.mem_pixel_order_support.order_bgra = 1; ++ dc->caps.color.mpc.rmcm_3d_lut_caps.dma_3d_lut = 1; ++ dc->caps.color.mpc.rmcm_3d_lut_caps.lut_dim_caps.dim_17 = 1; ++ dc->caps.color.mpc.rmcm_3d_lut_caps.lut_dim_caps.dim_33 = 1; ++ dc->caps.color.mpc.rmcm_3d_lut_caps.mem_layout_support.linear_1d = 1; ++ dc->caps.color.mpc.rmcm_3d_lut_caps.mem_layout_support.swizzle_3d_bgr = 1; ++ dc->caps.color.mpc.rmcm_3d_lut_caps.mem_layout_support.swizzle_3d_rgb = 1; ++ dc->caps.color.mpc.rmcm_3d_lut_caps.mem_format_support.unorm_12msb = 1; ++ dc->caps.color.mpc.rmcm_3d_lut_caps.mem_format_support.unorm_12lsb = 1; ++ dc->caps.color.mpc.rmcm_3d_lut_caps.mem_format_support.float_fp1_5_10 = 1; ++ dc->caps.color.mpc.rmcm_3d_lut_caps.mem_pixel_order_support.order_rgba = 1; ++ dc->caps.color.mpc.rmcm_3d_lut_caps.mem_pixel_order_support.order_bgra = 1; ++ ++ dc->caps.num_of_host_routers = 3; ++ dc->caps.num_of_dpias_per_host_router = 2; ++ ++ /* max_disp_clock_khz_at_vmin is slightly lower than the STA value in order ++ * to provide some margin. ++ * It's expected for furture ASIC to have equal or higher value, in order to ++ * have determinstic power improvement from generate to genration. ++ * (i.e., we should not expect new ASIC generation with lower vmin rate) ++ */ ++ dc->caps.max_disp_clock_khz_at_vmin = 650000; ++ dc->config.use_spl = true; ++ dc->config.prefer_easf = true; ++ ++ dc->config.dcn_sharpness_range.sdr_rgb_min = 0; ++ dc->config.dcn_sharpness_range.sdr_rgb_max = 1750; ++ dc->config.dcn_sharpness_range.sdr_rgb_mid = 750; ++ dc->config.dcn_sharpness_range.sdr_yuv_min = 0; ++ dc->config.dcn_sharpness_range.sdr_yuv_max = 3500; ++ dc->config.dcn_sharpness_range.sdr_yuv_mid = 1500; ++ dc->config.dcn_sharpness_range.hdr_rgb_min = 0; ++ dc->config.dcn_sharpness_range.hdr_rgb_max = 2750; ++ dc->config.dcn_sharpness_range.hdr_rgb_mid = 1500; ++ ++ dc->config.dcn_override_sharpness_range.sdr_rgb_min = 0; ++ dc->config.dcn_override_sharpness_range.sdr_rgb_max = 3250; ++ dc->config.dcn_override_sharpness_range.sdr_rgb_mid = 1250; ++ dc->config.dcn_override_sharpness_range.sdr_yuv_min = 0; ++ dc->config.dcn_override_sharpness_range.sdr_yuv_max = 3500; ++ dc->config.dcn_override_sharpness_range.sdr_yuv_mid = 1500; ++ dc->config.dcn_override_sharpness_range.hdr_rgb_min = 0; ++ dc->config.dcn_override_sharpness_range.hdr_rgb_max = 2750; ++ dc->config.dcn_override_sharpness_range.hdr_rgb_mid = 1500; ++ ++ dc->config.use_pipe_ctx_sync_logic = true; ++ dc->config.dc_mode_clk_limit_support = false; ++ dc->config.enable_windowed_mpo_odm = true; ++ /* Use psp mailbox to enable assr */ ++ dc->config.use_assr_psp_message = true; ++ /* dcn42 and afterward always support external panel replay */ ++ dc->config.frame_update_cmd_version2 = true; ++ ++ /* read VBIOS LTTPR caps */ ++ { ++ if (ctx->dc_bios->funcs->get_lttpr_caps) { ++ enum bp_result bp_query_result; ++ uint8_t is_vbios_lttpr_enable = 0; ++ ++ bp_query_result = ctx->dc_bios->funcs->get_lttpr_caps(ctx->dc_bios, &is_vbios_lttpr_enable); ++ dc->caps.vbios_lttpr_enable = (bp_query_result == BP_RESULT_OK) && !!is_vbios_lttpr_enable; ++ } ++ ++ dc->caps.vbios_lttpr_aware = true; ++ } ++ dc->check_config = config_defaults; ++ ++ if (dc->ctx->dce_environment == DCE_ENV_PRODUCTION_DRV) ++ dc->debug = debug_defaults_drv; ++ ++ /*HW default is to have all the FGCG enabled, SW no need to program them*/ ++ dc->debug.enable_fine_grain_clock_gating.u32All = 0xFFFF; ++ // Init the vm_helper ++ if (dc->vm_helper) ++ vm_helper_init(dc->vm_helper, 16); ++ ++ /************************************************* ++ * Create resources * ++ *************************************************/ ++ ++ /* Clock Sources for Pixel Clock*/ ++ pool->base.clock_sources[DCN401_CLK_SRC_PLL0] = ++ dcn42_clock_source_create(ctx, ctx->dc_bios, ++ CLOCK_SOURCE_COMBO_PHY_PLL0, ++ &clk_src_regs[0], false); ++ pool->base.clock_sources[DCN401_CLK_SRC_PLL1] = ++ dcn42_clock_source_create(ctx, ctx->dc_bios, ++ CLOCK_SOURCE_COMBO_PHY_PLL1, ++ &clk_src_regs[1], false); ++ pool->base.clock_sources[DCN401_CLK_SRC_PLL2] = ++ dcn42_clock_source_create(ctx, ctx->dc_bios, ++ CLOCK_SOURCE_COMBO_PHY_PLL2, ++ &clk_src_regs[2], false); ++ pool->base.clock_sources[DCN401_CLK_SRC_PLL3] = ++ dcn42_clock_source_create(ctx, ctx->dc_bios, ++ CLOCK_SOURCE_COMBO_PHY_PLL3, ++ &clk_src_regs[3], false); ++ pool->base.clock_sources[DCN401_CLK_SRC_PLL4] = ++ dcn42_clock_source_create(ctx, ctx->dc_bios, ++ CLOCK_SOURCE_COMBO_PHY_PLL4, ++ &clk_src_regs[4], false); ++ ++ pool->base.clk_src_count = DCN401_CLK_SRC_TOTAL; ++ ++ /* todo: not reuse phy_pll registers */ ++ pool->base.dp_clock_source = ++ dcn42_clock_source_create(ctx, ctx->dc_bios, ++ CLOCK_SOURCE_ID_DP_DTO, ++ &clk_src_regs[0], true); ++ ++ for (i = 0; i < pool->base.clk_src_count; i++) { ++ if (pool->base.clock_sources[i] == NULL) { ++ dm_error("DC: failed to create clock sources!\n"); ++ BREAK_TO_DEBUGGER(); ++ goto create_fail; ++ } ++ } ++ ++ /* DCCG */ ++ pool->base.dccg = dccg42_create(ctx, &dccg_regs, &dccg_shift, &dccg_mask); ++ if (pool->base.dccg == NULL) { ++ dm_error("DC: failed to create dccg!\n"); ++ BREAK_TO_DEBUGGER(); ++ goto create_fail; ++ } ++ ++#undef REG_STRUCT ++#define REG_STRUCT pg_cntl_regs ++ pg_cntl_dcn42_regs_init(); ++ ++ pool->base.pg_cntl = pg_cntl42_create(ctx, &pg_cntl_regs, &pg_cntl_shift, &pg_cntl_mask); ++ if (pool->base.pg_cntl == NULL) { ++ dm_error("DC: failed to create power gate control!\n"); ++ BREAK_TO_DEBUGGER(); ++ goto create_fail; ++ } ++ /* IRQ Service */ ++ init_data.ctx = dc->ctx; ++ pool->base.irqs = dal_irq_service_dcn42_create(&init_data); ++ if (!pool->base.irqs) ++ goto create_fail; ++ ++ /* HUBBUB */ ++ pool->base.hubbub = dcn42_hubbub_create(ctx); ++ if (pool->base.hubbub == NULL) { ++ BREAK_TO_DEBUGGER(); ++ dm_error("DC: failed to create hubbub!\n"); ++ goto create_fail; ++ } ++ ++ /* HUBPs, DPPs, OPPs, TGs, ABMs */ ++ for (i = 0, j = 0; i < pool->base.res_cap->num_timing_generator; i++) { ++ /* if pipe is disabled, skip instance of HW pipe, ++ * i.e, skip ASIC register instance ++ */ ++ if (pipe_fuses & 1 << i) ++ continue; ++ ++ pool->base.hubps[j] = dcn42_hubp_create(ctx, i); ++ if (pool->base.hubps[j] == NULL) { ++ BREAK_TO_DEBUGGER(); ++ dm_error( ++ "DC: failed to create hubps!\n"); ++ goto create_fail; ++ } ++ ++ pool->base.dpps[j] = dcn42_dpp_create(ctx, i); ++ if (pool->base.dpps[j] == NULL) { ++ BREAK_TO_DEBUGGER(); ++ dm_error( ++ "DC: failed to create dpps!\n"); ++ goto create_fail; ++ } ++ ++ pool->base.opps[j] = dcn42_opp_create(ctx, i); ++ if (pool->base.opps[j] == NULL) { ++ BREAK_TO_DEBUGGER(); ++ dm_error( ++ "DC: failed to create output pixel processor!\n"); ++ goto create_fail; ++ } ++ ++ pool->base.timing_generators[j] = dcn42_timing_generator_create( ++ ctx, i); ++ if (pool->base.timing_generators[j] == NULL) { ++ BREAK_TO_DEBUGGER(); ++ dm_error("DC: failed to create tg!\n"); ++ goto create_fail; ++ } ++ ++ pool->base.multiple_abms[j] = dmub_abm_create(ctx, ++ &abm_regs[i], ++ &abm_shift, ++ &abm_mask); ++ if (pool->base.multiple_abms[j] == NULL) { ++ dm_error("DC: failed to create abm for pipe %d!\n", i); ++ BREAK_TO_DEBUGGER(); ++ goto create_fail; ++ } ++ ++ /* index for resource pool arrays for next valid pipe */ ++ j++; ++ } ++ ++ /* PSR */ ++ pool->base.psr = dmub_psr_create(ctx); ++ if (pool->base.psr == NULL) { ++ dm_error("DC: failed to create psr obj!\n"); ++ BREAK_TO_DEBUGGER(); ++ goto create_fail; ++ } ++ ++ /* Replay */ ++ pool->base.replay = dmub_replay_create(ctx); ++ if (pool->base.replay == NULL) { ++ dm_error("DC: failed to create replay obj!\n"); ++ BREAK_TO_DEBUGGER(); ++ goto create_fail; ++ } ++ ++ /* MPCCs */ ++ pool->base.mpc = dcn42_mpc_create(ctx, pool->base.res_cap->num_timing_generator, ++ pool->base.res_cap->num_mpc_3dlut); ++ if (pool->base.mpc == NULL) { ++ BREAK_TO_DEBUGGER(); ++ dm_error("DC: failed to create mpc!\n"); ++ goto create_fail; ++ } ++ ++ /* DSCs */ ++ for (i = 0; i < pool->base.res_cap->num_dsc; i++) { ++ pool->base.dscs[i] = dcn42_dsc_create(ctx, i); ++ if (pool->base.dscs[i] == NULL) { ++ BREAK_TO_DEBUGGER(); ++ dm_error("DC: failed to create display stream compressor %d!\n", i); ++ goto create_fail; ++ } ++ } ++ ++ /* DWB */ ++ if (!dcn42_dwbc_create(ctx, &pool->base)) { ++ BREAK_TO_DEBUGGER(); ++ dm_error("DC: failed to create dwbc!\n"); ++ goto create_fail; ++ } ++ ++ /* MMHUBBUB */ ++ if (!dcn42_mmhubbub_create(ctx, &pool->base)) { ++ BREAK_TO_DEBUGGER(); ++ dm_error("DC: failed to create mcif_wb!\n"); ++ goto create_fail; ++ } ++ ++ /* AUX and I2C */ ++ for (i = 0; i < pool->base.res_cap->num_ddc; i++) { ++ pool->base.engines[i] = dcn42_aux_engine_create(ctx, i); ++ ++ if (pool->base.engines[i] == NULL) { ++ BREAK_TO_DEBUGGER(); ++ dm_error( ++ "DC:failed to create aux engine!!\n"); ++ goto create_fail; ++ } ++ pool->base.hw_i2cs[i] = dcn42_i2c_hw_create(ctx, i); ++ if (pool->base.hw_i2cs[i] == NULL) { ++ BREAK_TO_DEBUGGER(); ++ dm_error( ++ "DC:failed to create hw i2c!!\n"); ++ goto create_fail; ++ } ++ pool->base.sw_i2cs[i] = NULL; ++ } ++ /* DCN4.2 has 6 DPIA */ ++ pool->base.usb4_dpia_count = dc->caps.num_of_host_routers * dc->caps.num_of_dpias_per_host_router; ++ if (dc->debug.dpia_debug.bits.disable_dpia) ++ pool->base.usb4_dpia_count = 0; ++ ++ /* Audio, HWSeq, Stream Encoders including HPO and virtual, MPC 3D LUTs */ ++ if (!resource_construct(num_virtual_links, dc, &pool->base, ++ &res_create_funcs)) ++ goto create_fail; ++ ++ /* HW Sequencer init functions and Plane caps */ ++ dcn42_hw_sequencer_init_functions(dc); ++ ++ dc->caps.max_planes = pool->base.pipe_count; ++ ++ for (i = 0; i < dc->caps.max_planes; ++i) ++ dc->caps.planes[i] = plane_cap; ++ ++ dc->caps.max_odm_combine_factor = 4; ++ ++ dc->cap_funcs = cap_funcs; ++ dc->dcn_ip->max_num_dpp = pool->base.pipe_count; ++ ++ // For now enable SDPIF_REQUEST_RATE_LIMIT on DCN4_01 when vram_info.num_chans provided ++ if (dc->config.sdpif_request_limit_words_per_umc == 0) ++ dc->config.sdpif_request_limit_words_per_umc = 16; ++ ++ dc->dml2_options.dcn_pipe_count = pool->base.pipe_count; ++ /*this will use real soc clock table*/ ++ dc->dml2_options.use_native_soc_bb_construction = true; ++ dc->dml2_options.minimize_dispclk_using_odm = false; ++ if (dc->config.EnableMinDispClkODM) ++ dc->dml2_options.minimize_dispclk_using_odm = true; ++ dc->dml2_options.enable_windowed_mpo_odm = dc->config.enable_windowed_mpo_odm; ++ dc->dml2_options.map_dc_pipes_with_callbacks = true; ++ dc->dml2_options.force_tdlut_enable = true; ++ ++ resource_init_common_dml2_callbacks(dc, &dc->dml2_options); ++ dc->dml2_options.callbacks.can_support_mclk_switch_using_fw_based_vblank_stretch = ++ &dcn30_can_support_mclk_switch_using_fw_based_vblank_stretch; ++ dc->dml2_options.svp_pstate.callbacks.release_dsc = &dcn20_release_dsc; ++ dc->dml2_options.svp_pstate.callbacks.calculate_mall_ways_from_bytes = ++ pool->base.funcs->calculate_mall_ways_from_bytes; ++ ++ dc->dml2_options.svp_pstate.subvp_fw_processing_delay_us = dc->caps.subvp_fw_processing_delay_us; ++ dc->dml2_options.svp_pstate.subvp_prefetch_end_to_mall_start_us = dc->caps.subvp_prefetch_end_to_mall_start_us; ++ dc->dml2_options.svp_pstate.subvp_pstate_allow_width_us = dc->caps.subvp_pstate_allow_width_us; ++ dc->dml2_options.svp_pstate.subvp_swath_height_margin_lines = dc->caps.subvp_swath_height_margin_lines; ++ ++ dc->dml2_options.svp_pstate.force_disable_subvp = dc->debug.force_disable_subvp; ++ dc->dml2_options.svp_pstate.force_enable_subvp = dc->debug.force_subvp_mclk_switch; ++ ++ dc->dml2_options.mall_cfg.cache_line_size_bytes = dc->caps.cache_line_size; ++ dc->dml2_options.mall_cfg.cache_num_ways = dc->caps.cache_num_ways; ++ dc->dml2_options.mall_cfg.max_cab_allocation_bytes = ++ dc->caps.max_cab_allocation_bytes; ++ dc->dml2_options.mall_cfg.mblk_height_4bpe_pixels = DCN3_2_MBLK_HEIGHT_4BPE; ++ dc->dml2_options.mall_cfg.mblk_height_8bpe_pixels = DCN3_2_MBLK_HEIGHT_8BPE; ++ dc->dml2_options.mall_cfg.mblk_size_bytes = DCN3_2_MALL_MBLK_SIZE_BYTES; ++ dc->dml2_options.mall_cfg.mblk_width_pixels = DCN3_2_MBLK_WIDTH; ++ ++ dc->dml2_options.max_segments_per_hubp = 24; ++ dc->dml2_options.det_segment_size = DCN42_CRB_SEGMENT_SIZE_KB; ++ dc->dml2_options.gpuvm_enable = true; ++ dc->dml2_options.hostvm_enable = true; ++ ++ /* SPL */ ++ dc->caps.scl_caps.sharpener_support = true; ++ ++ return true; ++ ++create_fail: ++ ++ dcn42_resource_destruct(pool); ++ ++ return false; ++} ++struct resource_pool *dcn42_create_resource_pool( ++ const struct dc_init_data *init_data, ++ struct dc *dc) ++{ ++ struct dcn42_resource_pool *pool = ++ kzalloc(sizeof(struct dcn401_resource_pool), GFP_KERNEL); ++ ++ if (!pool) ++ return NULL; ++ ++ if (dcn42_resource_construct(init_data->num_virtual_links, dc, pool)) ++ return &pool->base; ++ ++ BREAK_TO_DEBUGGER(); ++ kfree(pool); ++ return NULL; ++} +-- +2.53.0 + diff --git a/SPECS/linux/0084-UPSTREAM-drm-amd-display-Move-FPU-Guards-From-DML-To.patch b/SPECS/linux/0084-UPSTREAM-drm-amd-display-Move-FPU-Guards-From-DML-To.patch index eefb74761d..503e0c9301 100644 --- a/SPECS/linux/0084-UPSTREAM-drm-amd-display-Move-FPU-Guards-From-DML-To.patch +++ b/SPECS/linux/0084-UPSTREAM-drm-amd-display-Move-FPU-Guards-From-DML-To.patch @@ -1,8 +1,8 @@ -From 029ac5da40e6ae95acc9fde9e66c8338d1fa3b87 Mon Sep 17 00:00:00 2001 +From 99a084f5cd5c82834c436119b161e4c598ec7b06 Mon Sep 17 00:00:00 2001 From: Rafal Ostrowski -Date: Tue, 24 Feb 2026 15:36:09 +0100 -Subject: [PATCH 084/269] UPSTREAM: drm/amd/display: Move FPU Guards From DML - To DC - Part 1 +Date: Wed, 18 Feb 2026 16:19:47 +0100 +Subject: [RUYI PATCH] UPSTREAM: drm/amd/display: Move FPU Guards From DML To + DC - Part 2 [Why] FPU guards (DC_FP_START/DC_FP_END) are required to wrap around code that @@ -12,2910 +12,1130 @@ a file that is a FPU unit, other sections in the file that aren't guarded may be end up being compiled to use FPU operations. [How] -Added DC_FP_START and DC_FP_END to DC functions that call DML functions -using FPU. +Removed DC_FP_START and DC_FP_END. Reviewed-by: Dillon Varone Signed-off-by: Rafal Ostrowski Signed-off-by: Alex Hung +Signed-off-by: Chuanyu Tseng Signed-off-by: Alex Deucher -(cherry picked from commit 3539437f354bd24c98928a80d4db3a23fa2a7b19) +(cherry picked from commit 4bb2f0721ed8a2a70f864b9358bd6cd4d92199b3) Signed-off-by: Xi Ruoyao Signed-off-by: Han Gao --- - .../gpu/drm/amd/display/amdgpu_dm/dc_fpu.c | 25 +- - .../gpu/drm/amd/display/amdgpu_dm/dc_fpu.h | 17 +- - .../display/dc/clk_mgr/dcn30/dcn30_clk_mgr.c | 2 - - .../display/dc/clk_mgr/dcn32/dcn32_clk_mgr.c | 2 - - drivers/gpu/drm/amd/display/dc/core/dc.c | 5 +- - .../gpu/drm/amd/display/dc/core/dc_state.c | 75 +- - .../gpu/drm/amd/display/dc/core/dc_stream.c | 15 +- - .../amd/display/dc/hwss/dcn401/dcn401_hwseq.c | 4 +- - .../dc/resource/dcn35/dcn35_resource.c | 10 +- - .../dc/resource/dcn35/dcn35_resource.h | 1 + - .../dc/resource/dcn351/dcn351_resource.c | 10 +- - .../dc/resource/dcn36/dcn36_resource.c | 4 +- - .../dc/resource/dcn401/dcn401_resource.c | 30 +- - .../dc/resource/dcn42/dcn42_resource.c | 2355 +++++++++++++++++ - 14 files changed, 2508 insertions(+), 47 deletions(-) - create mode 100644 drivers/gpu/drm/amd/display/dc/resource/dcn42/dcn42_resource.c + .../gpu/drm/amd/display/dc/dml2_0/Makefile | 73 +--- + .../display/dc/dml2_0/dml21/dml21_wrapper.c | 379 +---------------- + .../display/dc/dml2_0/dml21/dml21_wrapper.h | 30 -- + .../dc/dml2_0/dml21/dml21_wrapper_fpu.c | 381 ++++++++++++++++++ + .../dc/dml2_0/dml21/dml21_wrapper_fpu.h | 60 +++ + .../drm/amd/display/dc/dml2_0/dml2_wrapper.c | 21 +- + .../amd/display/dc/dml2_0/dml2_wrapper_fpu.c | 9 +- + 7 files changed, 484 insertions(+), 469 deletions(-) + create mode 100644 drivers/gpu/drm/amd/display/dc/dml2_0/dml21/dml21_wrapper_fpu.c + create mode 100644 drivers/gpu/drm/amd/display/dc/dml2_0/dml21/dml21_wrapper_fpu.h -diff --git a/drivers/gpu/drm/amd/display/amdgpu_dm/dc_fpu.c b/drivers/gpu/drm/amd/display/amdgpu_dm/dc_fpu.c -index e46f8ce41d87..8ba9b4f56f87 100644 ---- a/drivers/gpu/drm/amd/display/amdgpu_dm/dc_fpu.c -+++ b/drivers/gpu/drm/amd/display/amdgpu_dm/dc_fpu.c -@@ -53,11 +53,30 @@ inline void dc_assert_fp_enabled(void) - { - int depth; +diff --git a/drivers/gpu/drm/amd/display/dc/dml2_0/Makefile b/drivers/gpu/drm/amd/display/dc/dml2_0/Makefile +index 30cfc0848792..a094cfa78260 100644 +--- a/drivers/gpu/drm/amd/display/dc/dml2_0/Makefile ++++ b/drivers/gpu/drm/amd/display/dc/dml2_0/Makefile +@@ -53,25 +53,29 @@ subdir-ccflags-y += -I$(FULL_AMD_DISPLAY_PATH)/dc/dml2_0/dml21/src/inc + subdir-ccflags-y += -I$(FULL_AMD_DISPLAY_PATH)/dc/dml2_0/dml21/inc + subdir-ccflags-y += -I$(FULL_AMD_DISPLAY_PATH)/dc/dml2_0/dml21/ -- depth = __this_cpu_read(fpu_recursion_depth); -+ depth = this_cpu_read(fpu_recursion_depth); +-CFLAGS_$(AMDDALPATH)/dc/dml2_0/display_mode_core.o := $(dml2_ccflags) $(frame_warn_flag) +-CFLAGS_$(AMDDALPATH)/dc/dml2_0/display_mode_util.o := $(dml2_ccflags) +-CFLAGS_$(AMDDALPATH)/dc/dml2_0/dml2_wrapper_fpu.o := $(dml2_ccflags) +-CFLAGS_$(AMDDALPATH)/dc/dml2_0/dml2_utils.o := $(dml2_ccflags) +-CFLAGS_$(AMDDALPATH)/dc/dml2_0/dml2_policy.o := $(dml2_ccflags) +-CFLAGS_$(AMDDALPATH)/dc/dml2_0/dml2_translation_helper.o := $(dml2_ccflags) +-CFLAGS_$(AMDDALPATH)/dc/dml2_0/dml2_mall_phantom.o := $(dml2_ccflags) +-CFLAGS_$(AMDDALPATH)/dc/dml2_0/dml_display_rq_dlg_calc.o := $(dml2_ccflags) +-CFLAGS_$(AMDDALPATH)/dc/dml2_0/dml2_dc_resource_mgmt.o := $(dml2_ccflags) ++# Add FPU flags to all dml2 files by default, remove NO_FPU flags. ++# FPU flags step 1: Find all .c files in dal/dc/dml2_0 and it's subfolders ++DML2_ABS_PATH := $(FULL_AMD_DISPLAY_PATH)/dc/dml2_0 ++DML2_C_FILES := $(shell find $(DML2_ABS_PATH) -name '*.c' -type f) ++ ++# FPU flags step 2: Convert to .o and make paths relative to $(AMDDALPATH)/dc/dml2_0/ ++DML2_RELATIVE_O_FILES := $(patsubst $(DML2_ABS_PATH)/%,dc/dml2_0/%,$(patsubst %.c,%.o,$(DML2_C_FILES))) - ASSERT(depth >= 1); - } ++# FPU flags step 3: Apply FPU flags to all .o files from dal/dc/dml2_0 and it's subfolders ++$(foreach obj,$(DML2_RELATIVE_O_FILES),$(eval CFLAGS_$(AMDDALPATH)/$(obj) := $(dml2_ccflags))) ++$(foreach obj,$(DML2_RELATIVE_O_FILES),$(eval CFLAGS_REMOVE_$(AMDDALPATH)/$(obj) := $(dml2_rcflags))) ++ ++# FPU flags step 4: Replace CFLAGS per file for files with additional flags beyond dml2_ccflags and dml2_rcflags ++CFLAGS_$(AMDDALPATH)/dc/dml2_0/display_mode_core.o := $(dml2_ccflags) $(frame_warn_flag) ++CFLAGS_$(AMDDALPATH)/dc/dml2_0/dml21/src/dml2_core/dml2_core_dcn4_calcs.o := $(dml2_ccflags) $(frame_warn_flag) ++CFLAGS_$(AMDDALPATH)/dc/dml2_0/dml21/src/dml2_core/dml2_core_utils.o := $(dml2_ccflags) $(frame_warn_flag) ++CFLAGS_$(AMDDALPATH)/dc/dml2_0/dml2_wrapper.o := $(dml2_rcflags) ++CFLAGS_$(AMDDALPATH)/dc/dml2_0/dml21/dml21_wrapper.o := $(dml2_rcflags) + CFLAGS_REMOVE_$(AMDDALPATH)/dc/dml2_0/display_mode_core.o := $(dml2_rcflags) +-CFLAGS_REMOVE_$(AMDDALPATH)/dc/dml2_0/display_mode_util.o := $(dml2_rcflags) +-CFLAGS_REMOVE_$(AMDDALPATH)/dc/dml2_0/dml2_wrapper_fpu.o := $(dml2_rcflags) +-CFLAGS_REMOVE_$(AMDDALPATH)/dc/dml2_0/dml2_utils.o := $(dml2_rcflags) +-CFLAGS_REMOVE_$(AMDDALPATH)/dc/dml2_0/dml2_policy.o := $(dml2_rcflags) +-CFLAGS_REMOVE_$(AMDDALPATH)/dc/dml2_0/dml2_translation_helper.o := $(dml2_rcflags) +-CFLAGS_REMOVE_$(AMDDALPATH)/dc/dml2_0/dml2_mall_phantom.o := $(dml2_rcflags) +-CFLAGS_REMOVE_$(AMDDALPATH)/dc/dml2_0/dml_display_rq_dlg_calc.o := $(dml2_rcflags) +-CFLAGS_REMOVE_$(AMDDALPATH)/dc/dml2_0/dml2_dc_resource_mgmt.o := $(dml2_rcflags) ++CFLAGS_REMOVE_$(AMDDALPATH)/dc/dml2_0/dml21/src/dml2_core/dml2_core_dcn4_calcs.o := $(dml2_rcflags) ++CFLAGS_REMOVE_$(AMDDALPATH)/dc/dml2_0/dml21/src/dml2_core/dml2_core_utils.o := $(dml2_rcflags) ++CFLAGS_REMOVE_$(AMDDALPATH)/dc/dml2_0/dml2_wrapper.o := $(dml2_ccflags) ++CFLAGS_REMOVE_$(AMDDALPATH)/dc/dml2_0/dml21/dml21_wrapper.o := $(dml2_ccflags) -+/** -+ * dc_assert_fp_enabled - Check if FPU protection is enabled -+ * -+ * This function tells if the code is already under FPU protection or not. A -+ * function that works as an API for a set of FPU operations can use this -+ * function for checking if the caller invoked it after DC_FP_START(). For -+ * example, take a look at dcn20_fpu.c file. -+ * -+ * Similar to dc_assert_fp_enabled, but does not assert, returns status instead. -+ */ -+inline bool dc_is_fp_enabled(void) -+{ -+ int depth; -+ -+ depth = this_cpu_read(fpu_recursion_depth); -+ -+ return (depth >= 1); -+} -+ - /** - * dc_fpu_begin - Enables FPU protection - * @function_name: A string containing the function name for debug purposes -@@ -77,7 +96,7 @@ void dc_fpu_begin(const char *function_name, const int line) - - WARN_ON_ONCE(!in_task()); - preempt_disable(); -- depth = __this_cpu_inc_return(fpu_recursion_depth); -+ depth = this_cpu_inc_return(fpu_recursion_depth); - if (depth == 1) { - BUG_ON(!kernel_fpu_available()); - kernel_fpu_begin(); -@@ -100,7 +119,7 @@ void dc_fpu_end(const char *function_name, const int line) - { - int depth; - -- depth = __this_cpu_dec_return(fpu_recursion_depth); -+ depth = this_cpu_dec_return(fpu_recursion_depth); - if (depth == 0) { - kernel_fpu_end(); - } else { -diff --git a/drivers/gpu/drm/amd/display/amdgpu_dm/dc_fpu.h b/drivers/gpu/drm/amd/display/amdgpu_dm/dc_fpu.h -index 4e921632bc4e..5e95419d3798 100644 ---- a/drivers/gpu/drm/amd/display/amdgpu_dm/dc_fpu.h -+++ b/drivers/gpu/drm/amd/display/amdgpu_dm/dc_fpu.h -@@ -28,15 +28,30 @@ - #define __DC_FPU_H__ - - void dc_assert_fp_enabled(void); -+bool dc_is_fp_enabled(void); - void dc_fpu_begin(const char *function_name, const int line); - void dc_fpu_end(const char *function_name, const int line); + DML2 = display_mode_core.o display_mode_util.o dml2_wrapper_fpu.o dml2_wrapper.o \ + dml2_utils.o dml2_policy.o dml2_translation_helper.o dml2_dc_resource_mgmt.o dml2_mall_phantom.o \ +@@ -81,40 +85,6 @@ AMD_DAL_DML2 = $(addprefix $(AMDDALPATH)/dc/dml2_0/,$(DML2)) - #ifndef _LINUX_FPU_COMPILATION_UNIT - #define DC_FP_START() dc_fpu_begin(__func__, __LINE__) - #define DC_FP_END() dc_fpu_end(__func__, __LINE__) -+#ifdef CONFIG_DRM_AMD_DC_FP -+#define DC_RUN_WITH_PREEMPTION_ENABLED(code) \ -+ do { \ -+ bool dc_fp_enabled = dc_is_fp_enabled(); \ -+ if (dc_fp_enabled) \ -+ DC_FP_END(); \ -+ code; \ -+ if (dc_fp_enabled) \ -+ DC_FP_START(); \ -+ } while (0) -+#else -+#define DC_RUN_WITH_PREEMPTION_ENABLED(code) code -+#endif // !CONFIG_DRM_AMD_DC_FP - #else - #define DC_FP_START() BUILD_BUG() - #define DC_FP_END() BUILD_BUG() --#endif -+#define DC_RUN_WITH_PREEMPTION_ENABLED(code) code -+#endif // !_LINUX_FPU_COMPILATION_UNIT + AMD_DISPLAY_FILES += $(AMD_DAL_DML2) - #endif /* __DC_FPU_H__ */ -diff --git a/drivers/gpu/drm/amd/display/dc/clk_mgr/dcn30/dcn30_clk_mgr.c b/drivers/gpu/drm/amd/display/dc/clk_mgr/dcn30/dcn30_clk_mgr.c -index b0aba3a6f13c..e06f06158ac8 100644 ---- a/drivers/gpu/drm/amd/display/dc/clk_mgr/dcn30/dcn30_clk_mgr.c -+++ b/drivers/gpu/drm/amd/display/dc/clk_mgr/dcn30/dcn30_clk_mgr.c -@@ -421,10 +421,8 @@ static void dcn3_get_memclk_states_from_smu(struct clk_mgr *clk_mgr_base) - clk_mgr_base->bw_params->dc_mode_softmax_memclk = dcn30_smu_get_dc_mode_max_dpm_freq(clk_mgr, PPCLK_UCLK); - - /* Refresh bounding box */ -- DC_FP_START(); - clk_mgr_base->ctx->dc->res_pool->funcs->update_bw_bounding_box( - clk_mgr->base.ctx->dc, clk_mgr_base->bw_params); -- DC_FP_END(); - } - - static bool dcn3_is_smu_present(struct clk_mgr *clk_mgr_base) -diff --git a/drivers/gpu/drm/amd/display/dc/clk_mgr/dcn32/dcn32_clk_mgr.c b/drivers/gpu/drm/amd/display/dc/clk_mgr/dcn32/dcn32_clk_mgr.c -index 2856b0337e87..4007ab353ffd 100644 ---- a/drivers/gpu/drm/amd/display/dc/clk_mgr/dcn32/dcn32_clk_mgr.c -+++ b/drivers/gpu/drm/amd/display/dc/clk_mgr/dcn32/dcn32_clk_mgr.c -@@ -1059,11 +1059,9 @@ static void dcn32_get_memclk_states_from_smu(struct clk_mgr *clk_mgr_base) - if (!clk_mgr->dpm_present) - dcn32_patch_dpm_table(clk_mgr_base->bw_params); - -- DC_FP_START(); - /* Refresh bounding box */ - clk_mgr_base->ctx->dc->res_pool->funcs->update_bw_bounding_box( - clk_mgr->base.ctx->dc, clk_mgr_base->bw_params); -- DC_FP_END(); - } - - static bool dcn32_are_clock_states_equal(struct dc_clocks *a, -diff --git a/drivers/gpu/drm/amd/display/dc/core/dc.c b/drivers/gpu/drm/amd/display/dc/core/dc.c -index 3e87b6a553be..0686141af3eb 100644 ---- a/drivers/gpu/drm/amd/display/dc/core/dc.c -+++ b/drivers/gpu/drm/amd/display/dc/core/dc.c -@@ -1165,11 +1165,8 @@ static bool dc_construct(struct dc *dc, - #ifdef CONFIG_DRM_AMD_DC_FP - dc->clk_mgr->force_smu_not_present = init_params->force_smu_not_present; - -- if (dc->res_pool->funcs->update_bw_bounding_box) { -- DC_FP_START(); -+ if (dc->res_pool->funcs->update_bw_bounding_box) - dc->res_pool->funcs->update_bw_bounding_box(dc, dc->clk_mgr->bw_params); -- DC_FP_END(); -- } - dc->soc_and_ip_translator = dc_create_soc_and_ip_translator(dc_ctx->dce_version); - if (!dc->soc_and_ip_translator) - goto fail; -diff --git a/drivers/gpu/drm/amd/display/dc/core/dc_state.c b/drivers/gpu/drm/amd/display/dc/core/dc_state.c -index a40e5c44143f..13d334c2cb6b 100644 ---- a/drivers/gpu/drm/amd/display/dc/core/dc_state.c -+++ b/drivers/gpu/drm/amd/display/dc/core/dc_state.c -@@ -205,19 +205,33 @@ struct dc_state *dc_state_create(struct dc *dc, struct dc_state_create_params *p - state->power_source = params ? params->power_source : DC_POWER_SOURCE_AC; - - #ifdef CONFIG_DRM_AMD_DC_FP -+ bool status; -+ - if (dc->debug.using_dml2) { -- if (!dml2_create(dc, &dc->dml2_options, &state->bw_ctx.dml2)) { -+ DC_FP_START(); -+ status = dml2_create(dc, &dc->dml2_options, &state->bw_ctx.dml2); -+ DC_FP_END(); -+ -+ if (!status) { - dc_state_release(state); - return NULL; - } - -- if (dc->caps.dcmode_power_limits_present && !dml2_create(dc, &dc->dml2_dc_power_options, &state->bw_ctx.dml2_dc_power_source)) { -- dc_state_release(state); -- return NULL; -+ if (dc->caps.dcmode_power_limits_present) { -+ bool status; -+ -+ DC_FP_START(); -+ status = dml2_create(dc, &dc->dml2_dc_power_options, &state->bw_ctx.dml2_dc_power_source); -+ DC_FP_END(); -+ -+ if (!status) { -+ dc_state_release(state); -+ return NULL; -+ } - } -- } --#endif - -+ } -+#endif // CONFIG_DRM_AMD_DC_FP - kref_init(&state->refcount); - - return state; -@@ -235,14 +249,20 @@ void dc_state_copy(struct dc_state *dst_state, struct dc_state *src_state) - - #ifdef CONFIG_DRM_AMD_DC_FP - dst_state->bw_ctx.dml2 = dst_dml2; -- if (src_state->bw_ctx.dml2) -+ if (src_state->bw_ctx.dml2) { -+ DC_FP_START(); - dml2_copy(dst_state->bw_ctx.dml2, src_state->bw_ctx.dml2); -+ DC_FP_END(); -+ } +-CFLAGS_$(AMDDALPATH)/dc/dml2_0/dml21/src/dml2_core/dml2_core_dcn4.o := $(dml2_ccflags) +-CFLAGS_$(AMDDALPATH)/dc/dml2_0/dml21/src/dml2_core/dml2_core_dcn4_calcs.o := $(dml2_ccflags) $(frame_warn_flag) +-CFLAGS_$(AMDDALPATH)/dc/dml2_0/dml21/src/dml2_core/dml2_core_utils.o := $(dml2_ccflags) $(frame_warn_flag) +-CFLAGS_$(AMDDALPATH)/dc/dml2_0/dml21/src/dml2_top/dml2_top_interfaces.o := $(dml2_ccflags) +-CFLAGS_$(AMDDALPATH)/dc/dml2_0/dml21/src/dml2_top/dml2_top_soc15.o := $(dml2_ccflags) +-CFLAGS_$(AMDDALPATH)/dc/dml2_0/dml21/src/dml2_core/dml2_core_factory.o := $(dml2_ccflags) +-CFLAGS_$(AMDDALPATH)/dc/dml2_0/dml21/src/dml2_dpmm/dml2_dpmm_dcn4.o := $(dml2_ccflags) +-CFLAGS_$(AMDDALPATH)/dc/dml2_0/dml21/src/dml2_dpmm/dml2_dpmm_factory.o := $(dml2_ccflags) +-CFLAGS_$(AMDDALPATH)/dc/dml2_0/dml21/src/dml2_mcg/dml2_mcg_dcn4.o := $(dml2_ccflags) +-CFLAGS_$(AMDDALPATH)/dc/dml2_0/dml21/src/dml2_mcg/dml2_mcg_factory.o := $(dml2_ccflags) +-CFLAGS_$(AMDDALPATH)/dc/dml2_0/dml21/src/dml2_pmo/dml2_pmo_dcn3.o := $(dml2_ccflags) +-CFLAGS_$(AMDDALPATH)/dc/dml2_0/dml21/src/dml2_pmo/dml2_pmo_dcn4_fams2.o := $(dml2_ccflags) +-CFLAGS_$(AMDDALPATH)/dc/dml2_0/dml21/src/dml2_pmo/dml2_pmo_factory.o := $(dml2_ccflags) +-CFLAGS_$(AMDDALPATH)/dc/dml2_0/dml21/src/dml2_standalone_libraries/lib_float_math.o := $(dml2_ccflags) +-CFLAGS_$(AMDDALPATH)/dc/dml2_0/dml21/dml21_translation_helper.o := $(dml2_ccflags) +-CFLAGS_$(AMDDALPATH)/dc/dml2_0/dml21/dml21_utils.o := $(dml2_ccflags) +- +-CFLAGS_REMOVE_$(AMDDALPATH)/dc/dml2_0/dml21/src/dml2_core/dml2_core_dcn4.o := $(dml2_rcflags) +-CFLAGS_REMOVE_$(AMDDALPATH)/dc/dml2_0/dml21/src/dml2_core/dml2_core_dcn4_calcs.o := $(dml2_rcflags) +-CFLAGS_REMOVE_$(AMDDALPATH)/dc/dml2_0/dml21/src/dml2_core/dml2_core_factory.o := $(dml2_rcflags) +-CFLAGS_REMOVE_$(AMDDALPATH)/dc/dml2_0/dml21/src/dml2_core/dml2_core_utils.o := $(dml2_rcflags) +-CFLAGS_REMOVE_$(AMDDALPATH)/dc/dml2_0/dml21/src/dml2_top/dml2_top_interfaces.o := $(dml2_rcflags) +-CFLAGS_REMOVE_$(AMDDALPATH)/dc/dml2_0/dml21/src/dml2_top/dml2_top_soc15.o := $(dml2_rcflags) +-CFLAGS_REMOVE_$(AMDDALPATH)/dc/dml2_0/dml21/src/dml2_dpmm/dml2_dpmm_dcn4.o := $(dml2_rcflags) +-CFLAGS_REMOVE_$(AMDDALPATH)/dc/dml2_0/dml21/src/dml2_dpmm/dml2_dpmm_factory.o := $(dml2_rcflags) +-CFLAGS_REMOVE_$(AMDDALPATH)/dc/dml2_0/dml21/src/dml2_mcg/dml2_mcg_dcn4.o := $(dml2_rcflags) +-CFLAGS_REMOVE_$(AMDDALPATH)/dc/dml2_0/dml21/src/dml2_mcg/dml2_mcg_factory.o := $(dml2_rcflags) +-CFLAGS_REMOVE_$(AMDDALPATH)/dc/dml2_0/dml21/src/dml2_pmo/dml2_pmo_dcn3.o := $(dml2_rcflags) +-CFLAGS_REMOVE_$(AMDDALPATH)/dc/dml2_0/dml21/src/dml2_pmo/dml2_pmo_dcn4_fams2.o := $(dml2_rcflags) +-CFLAGS_REMOVE_$(AMDDALPATH)/dc/dml2_0/dml21/src/dml2_pmo/dml2_pmo_factory.o := $(dml2_rcflags) +-CFLAGS_REMOVE_$(AMDDALPATH)/dc/dml2_0/dml21/src/dml2_standalone_libraries/lib_float_math.o := $(dml2_rcflags) +-CFLAGS_REMOVE_$(AMDDALPATH)/dc/dml2_0/dml21/dml21_translation_helper.o := $(dml2_rcflags) +-CFLAGS_REMOVE_$(AMDDALPATH)/dc/dml2_0/dml21/dml21_utils.o := $(dml2_rcflags) +- + DML21 := src/dml2_top/dml2_top_interfaces.o + DML21 += src/dml2_top/dml2_top_soc15.o + DML21 += src/dml2_core/dml2_core_dcn4.o +@@ -131,6 +101,7 @@ DML21 += src/dml2_pmo/dml2_pmo_dcn4_fams2.o + DML21 += src/dml2_standalone_libraries/lib_float_math.o + DML21 += dml21_translation_helper.o + DML21 += dml21_wrapper.o ++DML21 += dml21_wrapper_fpu.o + DML21 += dml21_utils.o - dst_state->bw_ctx.dml2_dc_power_source = dst_dml2_dc_power_source; -- if (src_state->bw_ctx.dml2_dc_power_source) -- dml2_copy(dst_state->bw_ctx.dml2_dc_power_source, src_state->bw_ctx.dml2_dc_power_source); --#endif + AMD_DAL_DML21 = $(addprefix $(AMDDALPATH)/dc/dml2_0/dml21/,$(DML21)) +diff --git a/drivers/gpu/drm/amd/display/dc/dml2_0/dml21/dml21_wrapper.c b/drivers/gpu/drm/amd/display/dc/dml2_0/dml21/dml21_wrapper.c +index 2623e917ec28..1a98578f223c 100644 +--- a/drivers/gpu/drm/amd/display/dc/dml2_0/dml21/dml21_wrapper.c ++++ b/drivers/gpu/drm/amd/display/dc/dml2_0/dml21/dml21_wrapper.c +@@ -9,6 +9,10 @@ + #include "dml21_utils.h" + #include "dml21_translation_helper.h" + #include "dml2_dc_resource_mgmt.h" ++#include "dml2_wrapper.h" ++#include "dml2_wrapper_fpu.h" ++#include "dml21_wrapper.h" ++#include "dml21_wrapper_fpu.h" + #include "dc_fpu.h" -+ if (src_state->bw_ctx.dml2_dc_power_source) { -+ DC_FP_START(); -+ dml2_copy(dst_state->bw_ctx.dml2_dc_power_source, src_state->bw_ctx.dml2_dc_power_source); -+ DC_FP_END(); -+ } -+#endif // CONFIG_DRM_AMD_DC_FP - /* context refcount should not be overridden */ - dst_state->refcount = refcount; + #if !defined(DC_RUN_WITH_PREEMPTION_ENABLED) +@@ -40,44 +44,11 @@ static bool dml21_allocate_memory(struct dml2_context **dml_ctx) + return true; } -@@ -258,22 +278,35 @@ struct dc_state *dc_state_create_copy(struct dc_state *src_state) - dc_state_copy_internal(new_state, src_state); - #ifdef CONFIG_DRM_AMD_DC_FP -+ bool status; -+ - new_state->bw_ctx.dml2 = NULL; - new_state->bw_ctx.dml2_dc_power_source = NULL; - -- if (src_state->bw_ctx.dml2 && -- !dml2_create_copy(&new_state->bw_ctx.dml2, src_state->bw_ctx.dml2)) { -- dc_state_release(new_state); -- return NULL; +-static void dml21_populate_configuration_options(const struct dc *in_dc, +- struct dml2_context *dml_ctx, +- const struct dml2_configuration_options *config) +-{ +- dml_ctx->config = *config; +- +- /* UCLK P-State options */ +- if (in_dc->debug.dml21_force_pstate_method) { +- dml_ctx->config.pmo.force_pstate_method_enable = true; +- for (int i = 0; i < MAX_PIPES; i++) +- dml_ctx->config.pmo.force_pstate_method_values[i] = in_dc->debug.dml21_force_pstate_method_values[i]; +- } else { +- dml_ctx->config.pmo.force_pstate_method_enable = false; - } -+ if (src_state->bw_ctx.dml2) { -+ DC_FP_START(); -+ status = dml2_create_copy(&new_state->bw_ctx.dml2, src_state->bw_ctx.dml2); -+ DC_FP_END(); - -- if (src_state->bw_ctx.dml2_dc_power_source && -- !dml2_create_copy(&new_state->bw_ctx.dml2_dc_power_source, src_state->bw_ctx.dml2_dc_power_source)) { -- dc_state_release(new_state); -- return NULL; -+ if (!status) { -+ dc_state_release(new_state); -+ return NULL; -+ } - } --#endif - -+ -+ if (src_state->bw_ctx.dml2_dc_power_source) { -+ DC_FP_START(); -+ status = dml2_create_copy(&new_state->bw_ctx.dml2_dc_power_source, -+ src_state->bw_ctx.dml2_dc_power_source); -+ DC_FP_END(); -+ -+ if (!status) { -+ dc_state_release(new_state); -+ return NULL; -+ } -+ } -+#endif // CONFIG_DRM_AMD_DC_FP - kref_init(&new_state->refcount); - - return new_state; -@@ -351,11 +384,13 @@ static void dc_state_free(struct kref *kref) - dc_state_destruct(state); - - #ifdef CONFIG_DRM_AMD_DC_FP -+ DC_FP_START(); - dml2_destroy(state->bw_ctx.dml2); - state->bw_ctx.dml2 = 0; - - dml2_destroy(state->bw_ctx.dml2_dc_power_source); - state->bw_ctx.dml2_dc_power_source = 0; -+ DC_FP_END(); - #endif - - kvfree(state); -diff --git a/drivers/gpu/drm/amd/display/dc/core/dc_stream.c b/drivers/gpu/drm/amd/display/dc/core/dc_stream.c -index baf820e6eae8..dca64e1671f6 100644 ---- a/drivers/gpu/drm/amd/display/dc/core/dc_stream.c -+++ b/drivers/gpu/drm/amd/display/dc/core/dc_stream.c -@@ -42,6 +42,13 @@ - #define MAX(x, y) ((x > y) ? x : y) - #endif - -+#include "dc_fpu.h" -+ -+#if !defined(DC_RUN_WITH_PREEMPTION_ENABLED) -+#define DC_RUN_WITH_PREEMPTION_ENABLED(code) code -+#endif // !DC_RUN_WITH_PREEMPTION_ENABLED -+ -+ - /******************************************************************************* - * Private functions - ******************************************************************************/ -@@ -170,11 +177,15 @@ struct dc_stream_state *dc_create_stream_for_sink( - if (sink == NULL) - goto fail; - -- stream = kzalloc_obj(struct dc_stream_state, GFP_ATOMIC); -+ DC_RUN_WITH_PREEMPTION_ENABLED(stream = kzalloc_obj(struct dc_stream_state, GFP_ATOMIC)); -+ - if (stream == NULL) - goto fail; - -- stream->update_scratch = kzalloc((int32_t) dc_update_scratch_space_size(), GFP_ATOMIC); -+ DC_RUN_WITH_PREEMPTION_ENABLED(stream->update_scratch = -+ kzalloc((int32_t) dc_update_scratch_space_size(), -+ GFP_ATOMIC)); -+ - if (stream->update_scratch == NULL) - goto fail; - -diff --git a/drivers/gpu/drm/amd/display/dc/hwss/dcn401/dcn401_hwseq.c b/drivers/gpu/drm/amd/display/dc/hwss/dcn401/dcn401_hwseq.c -index 4dfb6c865831..a6c3a1f5fbfa 100644 ---- a/drivers/gpu/drm/amd/display/dc/hwss/dcn401/dcn401_hwseq.c -+++ b/drivers/gpu/drm/amd/display/dc/hwss/dcn401/dcn401_hwseq.c -@@ -371,8 +371,8 @@ void dcn401_init_hw(struct dc *dc) - dc->res_pool->funcs->update_bw_bounding_box && - dc->clk_mgr && dc->clk_mgr->bw_params) { - /* update bounding box if FAMS2 disabled, or if dchub clk has changed */ -- dc->res_pool->funcs->update_bw_bounding_box(dc, -- dc->clk_mgr->bw_params); -+ if (dc->clk_mgr) -+ dc->res_pool->funcs->update_bw_bounding_box(dc, dc->clk_mgr->bw_params); - } - } - } -diff --git a/drivers/gpu/drm/amd/display/dc/resource/dcn35/dcn35_resource.c b/drivers/gpu/drm/amd/display/dc/resource/dcn35/dcn35_resource.c -index 598b2f25881d..adbd23fcc9b7 100644 ---- a/drivers/gpu/drm/amd/display/dc/resource/dcn35/dcn35_resource.c -+++ b/drivers/gpu/drm/amd/display/dc/resource/dcn35/dcn35_resource.c -@@ -1773,9 +1773,11 @@ static enum dc_status dcn35_validate_bandwidth(struct dc *dc, - { - bool out = false; - -+ DC_FP_START(); - out = dml2_validate(dc, context, - context->power_source == DC_POWER_SOURCE_DC ? context->bw_ctx.dml2_dc_power_source : context->bw_ctx.dml2, - validate_mode); -+ DC_FP_END(); - - if (validate_mode != DC_VALIDATE_MODE_AND_PROGRAMMING) - return out ? DC_OK : DC_FAIL_BANDWIDTH_VALIDATE; -@@ -1809,6 +1811,12 @@ static int populate_dml_pipes_from_context_fpu(struct dc *dc, - return ret; - } - -+void dcn35_update_bw_bounding_box(struct dc *dc, struct clk_bw_params *bw_params) -+{ -+ DC_FP_START(); -+ dcn35_update_bw_bounding_box_fpu(dc, bw_params); -+ DC_FP_END(); -+} - static struct resource_funcs dcn35_res_pool_funcs = { - .destroy = dcn35_destroy_resource_pool, - .link_enc_create = dcn35_link_encoder_create, -@@ -1830,7 +1838,7 @@ static struct resource_funcs dcn35_res_pool_funcs = { - .find_first_free_match_stream_enc_for_link = dcn10_find_first_free_match_stream_enc_for_link, - .acquire_post_bldn_3dlut = dcn30_acquire_post_bldn_3dlut, - .release_post_bldn_3dlut = dcn30_release_post_bldn_3dlut, -- .update_bw_bounding_box = dcn35_update_bw_bounding_box_fpu, -+ .update_bw_bounding_box = dcn35_update_bw_bounding_box, - .patch_unknown_plane_state = dcn35_patch_unknown_plane_state, - .get_panel_config_defaults = dcn35_get_panel_config_defaults, - .get_preferred_eng_id_dpia = dcn35_get_preferred_eng_id_dpia, -diff --git a/drivers/gpu/drm/amd/display/dc/resource/dcn35/dcn35_resource.h b/drivers/gpu/drm/amd/display/dc/resource/dcn35/dcn35_resource.h -index 9c56ae76e0c7..6c2c61c711b9 100644 ---- a/drivers/gpu/drm/amd/display/dc/resource/dcn35/dcn35_resource.h -+++ b/drivers/gpu/drm/amd/display/dc/resource/dcn35/dcn35_resource.h -@@ -312,4 +312,5 @@ struct resource_pool *dcn35_create_resource_pool( - #define DPP_REG_LIST_DCN35_RI(id)\ - DPP_REG_LIST_DCN30_COMMON_RI(id) - -+void dcn35_update_bw_bounding_box(struct dc *dc, struct clk_bw_params *bw_params); - #endif /* _DCN35_RESOURCE_H_ */ -diff --git a/drivers/gpu/drm/amd/display/dc/resource/dcn351/dcn351_resource.c b/drivers/gpu/drm/amd/display/dc/resource/dcn351/dcn351_resource.c -index 7e15d07df7a3..dc70b771633f 100644 ---- a/drivers/gpu/drm/amd/display/dc/resource/dcn351/dcn351_resource.c -+++ b/drivers/gpu/drm/amd/display/dc/resource/dcn351/dcn351_resource.c -@@ -1753,9 +1753,11 @@ static enum dc_status dcn351_validate_bandwidth(struct dc *dc, - { - bool out = false; - -+ DC_FP_START(); - out = dml2_validate(dc, context, - context->power_source == DC_POWER_SOURCE_DC ? context->bw_ctx.dml2_dc_power_source : context->bw_ctx.dml2, - validate_mode); -+ DC_FP_END(); - - if (validate_mode != DC_VALIDATE_MODE_AND_PROGRAMMING) - return out ? DC_OK : DC_FAIL_BANDWIDTH_VALIDATE; -@@ -1782,6 +1784,12 @@ static int populate_dml_pipes_from_context_fpu(struct dc *dc, - - } - -+static void dcn351_update_bw_bounding_box(struct dc *dc, struct clk_bw_params *bw_params) -+{ -+ DC_FP_START(); -+ dcn351_update_bw_bounding_box_fpu(dc, bw_params); -+ DC_FP_END(); -+} - static struct resource_funcs dcn351_res_pool_funcs = { - .destroy = dcn351_destroy_resource_pool, - .link_enc_create = dcn35_link_encoder_create, -@@ -1803,7 +1811,7 @@ static struct resource_funcs dcn351_res_pool_funcs = { - .find_first_free_match_stream_enc_for_link = dcn10_find_first_free_match_stream_enc_for_link, - .acquire_post_bldn_3dlut = dcn30_acquire_post_bldn_3dlut, - .release_post_bldn_3dlut = dcn30_release_post_bldn_3dlut, -- .update_bw_bounding_box = dcn351_update_bw_bounding_box_fpu, -+ .update_bw_bounding_box = dcn351_update_bw_bounding_box, - .patch_unknown_plane_state = dcn35_patch_unknown_plane_state, - .get_panel_config_defaults = dcn35_get_panel_config_defaults, - .get_preferred_eng_id_dpia = dcn351_get_preferred_eng_id_dpia, -diff --git a/drivers/gpu/drm/amd/display/dc/resource/dcn36/dcn36_resource.c b/drivers/gpu/drm/amd/display/dc/resource/dcn36/dcn36_resource.c -index 83fee2ca61bf..2667a2e8b04f 100644 ---- a/drivers/gpu/drm/amd/display/dc/resource/dcn36/dcn36_resource.c -+++ b/drivers/gpu/drm/amd/display/dc/resource/dcn36/dcn36_resource.c -@@ -1760,9 +1760,11 @@ static enum dc_status dcn35_validate_bandwidth(struct dc *dc, - { - bool out = false; - -+ DC_FP_START(); - out = dml2_validate(dc, context, - context->power_source == DC_POWER_SOURCE_DC ? context->bw_ctx.dml2_dc_power_source : context->bw_ctx.dml2, - validate_mode); -+ DC_FP_END(); - - if (validate_mode != DC_VALIDATE_MODE_AND_PROGRAMMING) - return out ? DC_OK : DC_FAIL_BANDWIDTH_VALIDATE; -@@ -1810,7 +1812,7 @@ static struct resource_funcs dcn36_res_pool_funcs = { - .find_first_free_match_stream_enc_for_link = dcn10_find_first_free_match_stream_enc_for_link, - .acquire_post_bldn_3dlut = dcn30_acquire_post_bldn_3dlut, - .release_post_bldn_3dlut = dcn30_release_post_bldn_3dlut, -- .update_bw_bounding_box = dcn35_update_bw_bounding_box_fpu, -+ .update_bw_bounding_box = dcn35_update_bw_bounding_box, - .patch_unknown_plane_state = dcn20_patch_unknown_plane_state, - .get_panel_config_defaults = dcn35_get_panel_config_defaults, - .get_preferred_eng_id_dpia = dcn36_get_preferred_eng_id_dpia, -diff --git a/drivers/gpu/drm/amd/display/dc/resource/dcn401/dcn401_resource.c b/drivers/gpu/drm/amd/display/dc/resource/dcn401/dcn401_resource.c -index e37aab939a41..237d1a561da7 100644 ---- a/drivers/gpu/drm/amd/display/dc/resource/dcn401/dcn401_resource.c -+++ b/drivers/gpu/drm/amd/display/dc/resource/dcn401/dcn401_resource.c -@@ -1643,8 +1643,10 @@ static struct dc_cap_funcs cap_funcs = { - .get_subvp_en = dcn32_subvp_in_use, - }; - --static void dcn401_update_bw_bounding_box(struct dc *dc, struct clk_bw_params *bw_params) -+static void dcn401_update_bw_bounding_box_fpu(struct dc *dc, struct clk_bw_params *bw_params) - { -+ dc_assert_fp_enabled(); -+ - /* re-calculate the available MALL size if required */ - if (bw_params->num_channels > 0) { - dc->caps.max_cab_allocation_bytes = dcn401_calc_num_avail_chans_for_mall( -@@ -1653,17 +1655,19 @@ static void dcn401_update_bw_bounding_box(struct dc *dc, struct clk_bw_params *b - dc->caps.mall_size_total = dc->caps.max_cab_allocation_bytes; - } - +-} +- +-static void dml21_init(const struct dc *in_dc, struct dml2_context *dml_ctx, const struct dml2_configuration_options *config) +-{ +- +- dml_ctx->architecture = dml2_architecture_21; +- +- dml21_populate_configuration_options(in_dc, dml_ctx, config); +- - DC_FP_START(); - - if (dc->debug.using_dml2 && dc->current_state && dc->current_state->bw_ctx.dml2) - dml2_reinit(dc, &dc->dml2_options, &dc->current_state->bw_ctx.dml2); - - if (dc->debug.using_dml2 && dc->current_state && dc->current_state->bw_ctx.dml2_dc_power_source) - dml2_reinit(dc, &dc->dml2_dc_power_options, &dc->current_state->bw_ctx.dml2_dc_power_source); -+} - -+static void dcn401_update_bw_bounding_box(struct dc *dc, struct clk_bw_params *bw_params) -+{ -+ DC_FP_START(); -+ dcn401_update_bw_bounding_box_fpu(dc, bw_params); - DC_FP_END(); - } +- dml21_populate_dml_init_params(&dml_ctx->v21.dml_init, &dml_ctx->config, in_dc); +- +- dml2_initialize_instance(&dml_ctx->v21.dml_init); +- +- DC_FP_END(); +-} - - enum dc_status dcn401_patch_unknown_plane_state(struct dc_plane_state *plane_state) + bool dml21_create(const struct dc *in_dc, struct dml2_context **dml_ctx, const struct dml2_configuration_options *config) { - plane_state->tiling_info.gfxversion = DcGfxAddr3; -@@ -1688,10 +1692,13 @@ enum dc_status dcn401_validate_bandwidth(struct dc *dc, - } - } - -- if (dc->debug.using_dml2) -+ if (dc->debug.using_dml2) { -+ DC_FP_START(); - status = dml2_validate(dc, context, - context->power_source == DC_POWER_SOURCE_DC ? context->bw_ctx.dml2_dc_power_source : context->bw_ctx.dml2, - validate_mode) ? DC_OK : DC_FAIL_BANDWIDTH_VALIDATE; -+ DC_FP_END(); -+ } - - if (validate_mode == DC_VALIDATE_MODE_AND_PROGRAMMING && status == DC_OK && dc_state_is_subvp_in_use(context)) { - /* check new stream configuration still supports cursor if subvp used */ -@@ -1710,10 +1717,13 @@ enum dc_status dcn401_validate_bandwidth(struct dc *dc, + /* Allocate memory for initializing DML21 instance */ +- if (!dml21_allocate_memory(dml_ctx)) { ++ if (!dml21_allocate_memory(dml_ctx)) + return false; +- } - if (validate_mode == DC_VALIDATE_MODE_AND_PROGRAMMING && status == DC_FAIL_HW_CURSOR_SUPPORT) { - /* attempt to validate again with subvp disabled due to cursor */ -- if (dc->debug.using_dml2) -+ if (dc->debug.using_dml2) { -+ DC_FP_START(); - status = dml2_validate(dc, context, - context->power_source == DC_POWER_SOURCE_DC ? context->bw_ctx.dml2_dc_power_source : context->bw_ctx.dml2, - validate_mode) ? DC_OK : DC_FAIL_BANDWIDTH_VALIDATE; -+ DC_FP_END(); -+ } - } + dml21_init(in_dc, *dml_ctx, config); - return status; -@@ -1722,9 +1732,13 @@ enum dc_status dcn401_validate_bandwidth(struct dc *dc, - void dcn401_prepare_mcache_programming(struct dc *dc, - struct dc_state *context) - { -- if (dc->debug.using_dml21) -+ if (dc->debug.using_dml21) { -+ DC_FP_START(); - dml2_prepare_mcache_programming(dc, context, -- context->power_source == DC_POWER_SOURCE_DC ? context->bw_ctx.dml2_dc_power_source : context->bw_ctx.dml2); -+ context->power_source == DC_POWER_SOURCE_DC ? -+ context->bw_ctx.dml2_dc_power_source : context->bw_ctx.dml2); -+ DC_FP_END(); -+ } +@@ -90,337 +61,6 @@ void dml21_destroy(struct dml2_context *dml2) + vfree(dml2->v21.mode_programming.programming); } - static void dcn401_build_pipe_pix_clk_params(struct pipe_ctx *pipe_ctx) -diff --git a/drivers/gpu/drm/amd/display/dc/resource/dcn42/dcn42_resource.c b/drivers/gpu/drm/amd/display/dc/resource/dcn42/dcn42_resource.c -new file mode 100644 -index 000000000000..b9532ebcced4 ---- /dev/null -+++ b/drivers/gpu/drm/amd/display/dc/resource/dcn42/dcn42_resource.c -@@ -0,0 +1,2355 @@ -+// SPDX-License-Identifier: MIT -+// -+// Copyright 2026 Advanced Micro Devices, Inc. -+ -+#include "dm_services.h" -+#include "dc.h" -+ -+#include "dcn32/dcn32_init.h" -+#include "dcn42/dcn42_init.h" -+ -+#include "resource.h" -+#include "include/irq_service_interface.h" -+ -+#include "dcn42_resource.h" -+#include "dcn42_resource_fpu.h" -+#include "dcn20/dcn20_resource.h" -+#include "dcn30/dcn30_resource.h" -+#include "dcn31/dcn31_resource.h" -+#include "dcn32/dcn32_resource.h" -+#include "dcn35/dcn35_resource.h" -+#include "dcn321/dcn321_resource.h" -+#include "dcn401/dcn401_resource.h" -+ -+#include "dcn10/dcn10_ipp.h" -+#include "dcn35/dcn35_hubbub.h" -+#include "dcn42/dcn42_hubbub.h" -+#include "dcn401/dcn401_mpc.h" -+#include "dcn42/dcn42_mpc.h" -+#include "dcn35/dcn35_hubp.h" -+#include "dcn42/dcn42_hubp.h" -+#include "irq/dcn42/irq_service_dcn42.h" -+#include "dcn42/dcn42_dpp.h" -+#include "dcn401/dcn401_dsc.h" -+#include "dcn42/dcn42_optc.h" -+#include "dcn20/dcn20_hwseq.h" -+#include "dcn30/dcn30_hwseq.h" -+#include "dce110/dce110_hwseq.h" -+#include "dcn35/dcn35_opp.h" -+#include "dcn30/dcn30_vpg.h" -+#include "dcn31/dcn31_vpg.h" -+#include "dcn42/dcn42_dio_stream_encoder.h" -+#include "dcn42/dcn42_pg_cntl.h" -+#include "dcn31/dcn31_hpo_dp_stream_encoder.h" -+#include "dcn31/dcn31_hpo_dp_link_encoder.h" -+#include "dcn32/dcn32_hpo_dp_link_encoder.h" -+#include "dcn42/dcn42_hpo_dp_link_encoder.h" -+#include "dcn31/dcn31_apg.h" -+#include "dcn31/dcn31_dio_link_encoder.h" -+#include "dcn401/dcn401_dio_link_encoder.h" -+#include "dcn10/dcn10_link_encoder.h" -+#include "dcn321/dcn321_dio_link_encoder.h" -+#include "dce/dce_clock_source.h" -+#include "dce/dce_audio.h" -+#include "dce/dce_hwseq.h" -+#include "clk_mgr.h" -+#include "dio/virtual/virtual_stream_encoder.h" -+#include "dml/display_mode_vba.h" -+#include "dcn42/dcn42_dccg.h" -+#include "dcn10/dcn10_resource.h" -+#include "link_service.h" -+#include "dcn31/dcn31_panel_cntl.h" -+ -+#include "dcn30/dcn30_dwb.h" -+#include "dcn42/dcn42_mmhubbub.h" -+#include "dcn42/dcn42_dio_link_encoder.h" -+ -+#include "dcn/dcn_4_2_0_offset.h" -+#include "dcn/dcn_4_2_0_sh_mask.h" -+#include "dpcs/dpcs_4_0_0_offset.h" -+#include "dpcs/dpcs_4_0_0_sh_mask.h" -+ -+#include "reg_helper.h" -+#include "dce/dmub_abm.h" -+#include "dce/dmub_psr.h" -+#include "dce/dmub_replay.h" -+#include "dce/dce_aux.h" -+#include "dce/dce_i2c.h" -+ -+#include "dml/dcn30/display_mode_vba_30.h" -+#include "vm_helper.h" -+#include "dcn20/dcn20_vmid.h" -+ -+#include "dc_state_priv.h" -+#include "link_enc_cfg.h" -+ -+#include "dml2_0/dml2_wrapper.h" -+ -+#define regBIF_BX0_BIOS_SCRATCH_3 0x003b -+#define regBIF_BX0_BIOS_SCRATCH_3_BASE_IDX 1 -+#define regBIF_BX0_BIOS_SCRATCH_6 0x003e -+#define regBIF_BX0_BIOS_SCRATCH_6_BASE_IDX 1 -+ -+#define DC_LOGGER_INIT(logger) -+ -+enum dcn401_clk_src_array_id { -+ DCN401_CLK_SRC_PLL0, -+ DCN401_CLK_SRC_PLL1, -+ DCN401_CLK_SRC_PLL2, -+ DCN401_CLK_SRC_PLL3, -+ DCN401_CLK_SRC_PLL4, -+ DCN401_CLK_SRC_TOTAL -+}; -+ -+/* begin -+ * macros to expend register list macro defined in HW object header file -+ */ -+ -+/* DCN */ -+#define BASE_INNER(seg) ctx->dcn_reg_offsets[seg] -+ -+#define BASE(seg) BASE_INNER(seg) -+ -+#define SR(reg_name) \ -+ REG_STRUCT.reg_name = BASE(reg##reg_name##_BASE_IDX) + \ -+ reg##reg_name -+#define SR_ARR(reg_name, id) \ -+ REG_STRUCT[id].reg_name = BASE(reg##reg_name##_BASE_IDX) + \ -+ reg##reg_name -+#define SR_ARR_INIT(reg_name, id, value) \ -+ REG_STRUCT[id].reg_name = value -+ -+#define SRI(reg_name, block, id) \ -+ REG_STRUCT.reg_name = BASE(reg##block##id##_##reg_name##_BASE_IDX) + \ -+ reg##block##id##_##reg_name -+ -+#define SRI_ARR(reg_name, block, id) \ -+ REG_STRUCT[id].reg_name = BASE(reg##block##id##_##reg_name##_BASE_IDX) + \ -+ reg##block##id##_##reg_name -+ -+/* -+ * Used when a reg_name would otherwise begin with an integer -+ */ -+#define SRI_ARR_US(reg_name, block, id) \ -+ REG_STRUCT[id].reg_name = BASE(reg##block##id##reg_name##_BASE_IDX) + \ -+ reg##block##id##reg_name -+#define SR_ARR_I2C(reg_name, id) \ -+ REG_STRUCT[id - 1].reg_name = BASE(reg##reg_name##_BASE_IDX) + reg##reg_name -+ -+#define SRI_ARR_I2C(reg_name, block, id) \ -+ REG_STRUCT[id - 1].reg_name = BASE(reg##block##id##_##reg_name##_BASE_IDX) + \ -+ reg##block##id##_##reg_name -+ -+ -+#define SRI_ARR_ALPHABET(reg_name, block, index, id) \ -+ REG_STRUCT[index].reg_name = BASE(reg##block##id##_##reg_name##_BASE_IDX) + \ -+ reg##block##id##_##reg_name -+ -+#define SRI2(reg_name, block, id) \ -+ .reg_name = BASE(reg##reg_name##_BASE_IDX) + \ -+ reg##reg_name -+#define SRI2_ARR(reg_name, block, id) \ -+ REG_STRUCT[id].reg_name = BASE(reg##reg_name##_BASE_IDX) + \ -+ reg##reg_name -+ -+#define SRIR(var_name, reg_name, block, id) \ -+ .var_name = BASE(reg##block##id##_##reg_name##_BASE_IDX) + \ -+ reg##block##id##_##reg_name -+ -+#define SRII(reg_name, block, id) \ -+ REG_STRUCT.reg_name[id] = BASE(reg##block##id##_##reg_name##_BASE_IDX) + \ -+ reg##block##id##_##reg_name -+ -+#define SRII_ARR_2(reg_name, block, id, inst) \ -+ REG_STRUCT[inst].reg_name[id] = BASE(reg##block##id##_##reg_name##_BASE_IDX) + \ -+ reg##block##id##_##reg_name -+ -+#define SRII_MPC_RMU(reg_name, block, id) \ -+ .RMU##_##reg_name[id] = BASE(reg##block##id##_##reg_name##_BASE_IDX) + \ -+ reg##block##id##_##reg_name -+ -+#define SRII_DWB(reg_name, temp_name, block, id) \ -+ REG_STRUCT.reg_name[id] = \ -+ BASE(reg##block##id##_##temp_name##_BASE_IDX) + \ -+ reg##block##id##_##temp_name -+ -+#define DCCG_SRII(reg_name, block, id) \ -+ REG_STRUCT.block##_##reg_name[id] = \ -+ BASE(reg##block##id##_##reg_name##_BASE_IDX) + \ -+ reg##block##id##_##reg_name -+ -+#define SF_DWB2(reg_name, block, id, field_name, post_fix) \ -+ .field_name = reg_name##__##field_name##post_fix -+ -+#define VUPDATE_SRII(reg_name, block, id) \ -+ REG_STRUCT.reg_name[id] = BASE(reg##reg_name##_##block##id##_BASE_IDX) + \ -+ reg##reg_name##_##block##id -+ -+/* NBIO */ -+#define NBIO_BASE_INNER(seg) ctx->nbio_reg_offsets[seg] -+ -+#define NBIO_BASE(seg) \ -+ NBIO_BASE_INNER(seg) -+ -+#define NBIO_SR(reg_name) \ -+ REG_STRUCT.reg_name = NBIO_BASE(regBIF_BX0_##reg_name##_BASE_IDX) + \ -+ regBIF_BX0_##reg_name -+#define NBIO_SR_ARR(reg_name, id) \ -+ REG_STRUCT[id].reg_name = NBIO_BASE(regBIF_BX0_##reg_name##_BASE_IDX) + \ -+ regBIF_BX0_##reg_name -+ -+#define CTX ctx -+#define REG(reg_name) \ -+ (ctx->dcn_reg_offsets[reg##reg_name##_BASE_IDX] + reg##reg_name) -+ -+static struct bios_registers bios_regs; -+ -+#define bios_regs_init() \ -+ NBIO_SR(BIOS_SCRATCH_3), \ -+ NBIO_SR(BIOS_SCRATCH_6) -+ -+#define clk_src_regs_init(index, pllid) \ -+ CS_COMMON_REG_LIST_DCN42_RI(index, pllid) -+ -+static struct dce110_clk_src_regs clk_src_regs[5]; -+ -+static const struct dce110_clk_src_shift cs_shift = { -+ CS_COMMON_MASK_SH_LIST_DCN3_1_4(__SHIFT) -+}; -+static const struct dce110_clk_src_mask cs_mask = { -+ CS_COMMON_MASK_SH_LIST_DCN3_1_4(_MASK) -+}; -+#define abm_regs_init(id) \ -+ ABM_DCN42_REG_LIST_RI(id) -+ -+static struct dce_abm_registers abm_regs[4]; -+ -+static const struct dce_abm_shift abm_shift = { -+ ABM_MASK_SH_LIST_DCN42(__SHIFT)}; -+ -+static const struct dce_abm_mask abm_mask = { -+ ABM_MASK_SH_LIST_DCN42(_MASK)}; -+ -+#define audio_regs_init(id) \ -+ AUD_COMMON_REG_LIST_RI(id) -+ -+static struct dce_audio_registers audio_regs[5]; -+ -+static const struct dce_audio_shift audio_shift = { -+ DCN42_AUD_COMMON_MASK_SH_LIST(__SHIFT) -+}; -+ -+static const struct dce_audio_mask audio_mask = { -+ DCN42_AUD_COMMON_MASK_SH_LIST(_MASK) -+}; -+ -+#define vpg_regs_init(id) \ -+ VPG_DCN401_REG_LIST_RI(id) -+ -+static struct dcn31_vpg_registers vpg_regs[10]; -+ -+static const struct dcn31_vpg_shift vpg_shift = { -+ DCN31_VPG_MASK_SH_LIST(__SHIFT)}; -+ -+static const struct dcn31_vpg_mask vpg_mask = { -+ DCN31_VPG_MASK_SH_LIST(_MASK)}; -+ -+#define apg_regs_init(id) \ -+ APG_DCN31_REG_LIST_RI(id) -+ -+static struct dcn31_apg_registers apg_regs[10]; -+ -+static const struct dcn31_apg_shift apg_shift = { -+ DCN31_APG_MASK_SH_LIST(__SHIFT)}; -+ -+static const struct dcn31_apg_mask apg_mask = { -+ DCN31_APG_MASK_SH_LIST(_MASK)}; -+ -+#define stream_enc_regs_init(id) \ -+ SE_DCN42_REG_LIST_RI(id) -+ -+static struct dcn10_stream_enc_registers stream_enc_regs[5]; -+ -+static const struct dcn10_stream_encoder_shift se_shift = { -+ SE_COMMON_MASK_SH_LIST_DCN42(__SHIFT)}; -+ -+static const struct dcn10_stream_encoder_mask se_mask = { -+ SE_COMMON_MASK_SH_LIST_DCN42(_MASK)}; -+ -+#define aux_regs_init(id) \ -+ DCN2_AUX_REG_LIST_RI(id) -+ -+static struct dcn10_link_enc_aux_registers link_enc_aux_regs[5]; -+ -+#define hpd_regs_init(id) \ -+ HPD_REG_LIST_RI(id) -+ -+static struct dcn10_link_enc_hpd_registers link_enc_hpd_regs[5]; -+ -+#define link_regs_init(id, phyid) \ -+ LE_DCN401_REG_LIST_RI(id) -+ -+static struct dcn10_link_enc_registers link_enc_regs[5]; -+ -+static const struct dcn10_link_enc_shift le_shift = { -+ LINK_ENCODER_MASK_SH_LIST_DCN42(__SHIFT)}; -+ -+static const struct dcn10_link_enc_mask le_mask = { -+ LINK_ENCODER_MASK_SH_LIST_DCN42(_MASK)}; -+ -+#define hpo_dp_stream_encoder_reg_init(id) \ -+ DCN42_HPO_DP_STREAM_ENC_REG_LIST_RI(id) -+ -+static struct dcn31_hpo_dp_stream_encoder_registers hpo_dp_stream_enc_regs[4]; -+ -+static const struct dcn31_hpo_dp_stream_encoder_shift hpo_dp_se_shift = { -+ DCN4_2_HPO_DP_STREAM_ENC_MASK_SH_LIST(__SHIFT)}; -+ -+static const struct dcn31_hpo_dp_stream_encoder_mask hpo_dp_se_mask = { -+ DCN4_2_HPO_DP_STREAM_ENC_MASK_SH_LIST(_MASK)}; -+ -+#define hpo_dp_link_encoder_reg_init(id) \ -+ DCN42_HPO_DP_LINK_ENC_REG_LIST_RI(id) -+ -+static struct dcn31_hpo_dp_link_encoder_registers hpo_dp_link_enc_regs[4]; -+ -+static const struct dcn31_hpo_dp_link_encoder_shift hpo_dp_le_shift = { -+ DCN3_2_HPO_DP_LINK_ENC_MASK_SH_LIST(__SHIFT)}; -+ -+static const struct dcn31_hpo_dp_link_encoder_mask hpo_dp_le_mask = { -+ DCN3_2_HPO_DP_LINK_ENC_MASK_SH_LIST(_MASK)}; -+ -+#define dpp_regs_init(id) \ -+ DPP_REG_LIST_DCN42_COMMON_RI(id) -+ -+static struct dcn42_dpp_registers dpp_regs[4]; -+ -+static const struct dcn42_dpp_shift tf_shift = { -+ DPP_REG_LIST_SH_MASK_DCN42_COMMON(__SHIFT)}; -+ -+static const struct dcn42_dpp_mask tf_mask = { -+ DPP_REG_LIST_SH_MASK_DCN42_COMMON(_MASK)}; -+ -+#define opp_regs_init(id) \ -+ OPP_REG_LIST_DCN401_RI(id) -+ -+static struct dcn20_opp_registers opp_regs[4]; -+ -+static const struct dcn20_opp_shift opp_shift = { -+ OPP_MASK_SH_LIST_DCN20(__SHIFT)}; -+ -+static const struct dcn20_opp_mask opp_mask = { -+ OPP_MASK_SH_LIST_DCN20(_MASK)}; -+ -+#define aux_engine_regs_init(id) \ -+ AUX_COMMON_REG_LIST0_RI(id), SR_ARR_INIT(AUXN_IMPCAL, id, 0), \ -+ SR_ARR_INIT(AUXP_IMPCAL, id, 0), \ -+ SR_ARR_INIT(AUX_RESET_MASK, id, DP_AUX0_AUX_CONTROL__AUX_RESET_MASK), \ -+ SR_ARR_INIT(AUX_RESET_MASK, id, DP_AUX0_AUX_CONTROL__AUX_RESET_MASK) -+ -+static struct dce110_aux_registers aux_engine_regs[5]; -+ -+static const struct dce110_aux_registers_shift aux_shift = { -+ DCN_AUX_MASK_SH_LIST(__SHIFT)}; -+ -+static const struct dce110_aux_registers_mask aux_mask = { -+ DCN_AUX_MASK_SH_LIST(_MASK)}; -+ -+#define dwbc_regs_dcn401_init(id) \ -+ DWBC_COMMON_REG_LIST_DCN30_RI(id) -+ -+static struct dcn30_dwbc_registers dwbc401_regs[1]; -+ -+static const struct dcn30_dwbc_shift dwbc401_shift = { -+ DWBC_COMMON_MASK_SH_LIST_DCN30(__SHIFT)}; -+ -+static const struct dcn30_dwbc_mask dwbc401_mask = { -+ DWBC_COMMON_MASK_SH_LIST_DCN30(_MASK)}; -+ -+#define mcif_wb_regs_dcn3_init(id) \ -+ MCIF_WB_COMMON_REG_LIST_DCN3_5_RI(id) -+ -+static struct dcn35_mmhubbub_registers mcif_wb35_regs[1]; -+ -+static const struct dcn35_mmhubbub_shift mcif_wb35_shift = { -+ MCIF_WB_COMMON_MASK_SH_LIST_DCN3_5(__SHIFT)}; -+ -+static const struct dcn35_mmhubbub_mask mcif_wb35_mask = { -+ MCIF_WB_COMMON_MASK_SH_LIST_DCN3_5(_MASK)}; -+ -+#define dsc_regs_init(id) \ -+ DSC_REG_LIST_DCN401_RI(id) -+ -+static struct dcn401_dsc_registers dsc_regs[4]; -+ -+static const struct dcn401_dsc_shift dsc_shift = { -+ DSC_REG_LIST_SH_MASK_DCN401(__SHIFT)}; -+ -+static const struct dcn401_dsc_mask dsc_mask = { -+ DSC_REG_LIST_SH_MASK_DCN401(_MASK)}; -+ -+static struct dcn42_mpc_registers mpc_regs; -+ -+#define dcn_mpc_regs_init() \ -+ MPC_REG_LIST_DCN42(0), \ -+ MPC_REG_LIST_DCN42(1), \ -+ MPC_REG_LIST_DCN42(2), \ -+ MPC_REG_LIST_DCN42(3), \ -+ MPC_OUT_MUX_REG_LIST_DCN3_0_RI(0), \ -+ MPC_OUT_MUX_REG_LIST_DCN3_0_RI(1), \ -+ MPC_OUT_MUX_REG_LIST_DCN3_0_RI(2), \ -+ MPC_OUT_MUX_REG_LIST_DCN3_0_RI(3), \ -+ MPC_DWB_MUX_REG_LIST_DCN3_0_RI(0), \ -+ MPC_RMCM_REG_LIST_DCN42(0), \ -+ MPC_RMCM_REG_LIST_DCN42(1) -+ -+static const struct dcn42_mpc_shift mpc_shift = { -+ MPC_COMMON_MASK_SH_LIST_DCN42(__SHIFT)}; -+ -+static const struct dcn42_mpc_mask mpc_mask = { -+ MPC_COMMON_MASK_SH_LIST_DCN42(_MASK)}; -+ -+#define optc_regs_init(id) \ -+ OPTC_COMMON_REG_LIST_DCN42_RI(id) -+ -+static struct dcn_optc_registers optc_regs[4]; -+ -+static const struct dcn_optc_shift optc_shift = { -+ OPTC_COMMON_MASK_SH_LIST_DCN42(__SHIFT)}; -+ -+static const struct dcn_optc_mask optc_mask = { -+ OPTC_COMMON_MASK_SH_LIST_DCN42(_MASK)}; -+ -+#define hubp_regs_init(id) \ -+ HUBP_REG_LIST_DCN42_RI(id) -+ -+static struct dcn_hubp2_registers hubp_regs[4]; -+ -+static const struct dcn_hubp2_shift hubp_shift = { -+ HUBP_MASK_SH_LIST_DCN42(__SHIFT)}; -+ -+static const struct dcn_hubp2_mask hubp_mask = { -+ HUBP_MASK_SH_LIST_DCN42(_MASK)}; -+ -+static struct dcn_hubbub_registers hubbub_reg; -+ -+#define hubbub_reg_init() \ -+ HUBBUB_REG_LIST_DCN42(0) -+ -+static const struct dcn_hubbub_shift hubbub_shift = { -+ HUBBUB_MASK_SH_LIST_DCN4_2(__SHIFT)}; -+ -+static const struct dcn_hubbub_mask hubbub_mask = { -+ HUBBUB_MASK_SH_LIST_DCN4_2(_MASK)}; -+ -+static struct dccg_registers dccg_regs; -+ -+#define dccg_regs_init() \ -+ DCCG_REG_LIST_DCN42_RI() -+ -+static const struct dccg_shift dccg_shift = { -+ DCCG_MASK_SH_LIST_DCN42(__SHIFT)}; -+ -+static const struct dccg_mask dccg_mask = { -+ DCCG_MASK_SH_LIST_DCN42(_MASK)}; -+ -+static struct pg_cntl_registers pg_cntl_regs; -+ -+#define pg_cntl_dcn42_regs_init() \ -+ PG_CNTL_REG_LIST_DCN42() -+ -+static const struct pg_cntl_shift pg_cntl_shift = { -+ PG_CNTL_MASK_SH_LIST_DCN42(__SHIFT) -+}; -+ -+static const struct pg_cntl_mask pg_cntl_mask = { -+ PG_CNTL_MASK_SH_LIST_DCN42(_MASK) -+}; -+#define SRII2(reg_name_pre, reg_name_post, id) \ -+ .reg_name_pre##_##reg_name_post[id] = \ -+ BASE(reg##reg_name_pre##id##_##reg_name_post##_BASE_IDX) + \ -+ reg##reg_name_pre##id##_##reg_name_post -+ -+#define HWSEQ_DCN42_REG_LIST() \ -+ SR(DCHUBBUB_GLOBAL_TIMER_CNTL), \ -+ SR(DIO_MEM_PWR_CTRL), \ -+ SR(ODM_MEM_PWR_CTRL3), \ -+ SR(MMHUBBUB_MEM_PWR_CNTL), \ -+ SR(DCCG_GATE_DISABLE_CNTL), \ -+ SR(DCCG_GATE_DISABLE_CNTL2), \ -+ SR(DCFCLK_CNTL), \ -+ SR(DC_MEM_GLOBAL_PWR_REQ_CNTL), \ -+ SRII(PIXEL_RATE_CNTL, OTG, 0), \ -+ SRII(PIXEL_RATE_CNTL, OTG, 1), \ -+ SRII(PIXEL_RATE_CNTL, OTG, 2), \ -+ SRII(PIXEL_RATE_CNTL, OTG, 3),\ -+ SRII(PHYPLL_PIXEL_RATE_CNTL, OTG, 0), \ -+ SRII(PHYPLL_PIXEL_RATE_CNTL, OTG, 1), \ -+ SRII(PHYPLL_PIXEL_RATE_CNTL, OTG, 2), \ -+ SRII(PHYPLL_PIXEL_RATE_CNTL, OTG, 3),\ -+ SR(MICROSECOND_TIME_BASE_DIV), \ -+ SR(MILLISECOND_TIME_BASE_DIV), \ -+ SR(DISPCLK_FREQ_CHANGE_CNTL), \ -+ SR(RBBMIF_TIMEOUT_DIS), \ -+ SR(RBBMIF_TIMEOUT_DIS_2), \ -+ SR(DCHUBBUB_CRC_CTRL), \ -+ SR(DPP_TOP0_DPP_CRC_CTRL), \ -+ SR(DPP_TOP0_DPP_CRC_VAL_R), \ -+ SR(DPP_TOP0_DPP_CRC_VAL_G), \ -+ SR(DPP_TOP0_DPP_CRC_VAL_B), \ -+ SR(MPC_CRC_CTRL), \ -+ SR(MPC_CRC_RESULT_R), \ -+ SR(MPC_CRC_RESULT_G), \ -+ SR(MPC_CRC_RESULT_B), \ -+ SR(MPC_CRC_RESULT_A), \ -+ SR(DOMAIN0_PG_CONFIG), \ -+ SR(DOMAIN1_PG_CONFIG), \ -+ SR(DOMAIN2_PG_CONFIG), \ -+ SR(DOMAIN3_PG_CONFIG), \ -+ SR(DOMAIN16_PG_CONFIG), \ -+ SR(DOMAIN17_PG_CONFIG), \ -+ SR(DOMAIN18_PG_CONFIG), \ -+ SR(DOMAIN19_PG_CONFIG), \ -+ SR(DOMAIN22_PG_CONFIG), \ -+ SR(DOMAIN23_PG_CONFIG), \ -+ SR(DOMAIN24_PG_CONFIG), \ -+ SR(DOMAIN25_PG_CONFIG), \ -+ SR(DOMAIN26_PG_CONFIG), \ -+ SR(DOMAIN0_PG_STATUS), \ -+ SR(DOMAIN1_PG_STATUS), \ -+ SR(DOMAIN2_PG_STATUS), \ -+ SR(DOMAIN3_PG_STATUS), \ -+ SR(DOMAIN16_PG_STATUS), \ -+ SR(DOMAIN17_PG_STATUS), \ -+ SR(DOMAIN18_PG_STATUS), \ -+ SR(DOMAIN19_PG_STATUS), \ -+ SR(DOMAIN22_PG_STATUS), \ -+ SR(DOMAIN23_PG_STATUS), \ -+ SR(DOMAIN24_PG_STATUS), \ -+ SR(DOMAIN25_PG_STATUS), \ -+ SR(DOMAIN26_PG_STATUS), \ -+ SR(DC_IP_REQUEST_CNTL), \ -+ SR(AZALIA_AUDIO_DTO), \ -+ SR(HPO_TOP_HW_CONTROL), \ -+ SR(AZALIA_CONTROLLER_CLOCK_GATING) -+ -+static struct dce_hwseq_registers hwseq_reg; -+ -+#define hwseq_reg_init() \ -+ HWSEQ_DCN42_REG_LIST() -+ -+#define HWSEQ_DCN42_MASK_SH_LIST(mask_sh) \ -+ HWSEQ_DCN_MASK_SH_LIST(mask_sh), \ -+ HWS_SF(, DCHUBBUB_GLOBAL_TIMER_CNTL, DCHUBBUB_GLOBAL_TIMER_REFDIV, mask_sh), \ -+ HWS_SF(, DCHUBBUB_ARB_HOSTVM_CNTL, DISABLE_HOSTVM_FORCE_ALLOW_PSTATE, mask_sh), \ -+ HWS_SF(, DOMAIN0_PG_CONFIG, DOMAIN_POWER_FORCEON, mask_sh), \ -+ HWS_SF(, DOMAIN0_PG_CONFIG, DOMAIN_POWER_GATE, mask_sh), \ -+ HWS_SF(, DOMAIN1_PG_CONFIG, DOMAIN_POWER_FORCEON, mask_sh), \ -+ HWS_SF(, DOMAIN1_PG_CONFIG, DOMAIN_POWER_GATE, mask_sh), \ -+ HWS_SF(, DOMAIN2_PG_CONFIG, DOMAIN_POWER_FORCEON, mask_sh), \ -+ HWS_SF(, DOMAIN2_PG_CONFIG, DOMAIN_POWER_GATE, mask_sh), \ -+ HWS_SF(, DOMAIN3_PG_CONFIG, DOMAIN_POWER_FORCEON, mask_sh), \ -+ HWS_SF(, DOMAIN3_PG_CONFIG, DOMAIN_POWER_GATE, mask_sh), \ -+ HWS_SF(, DOMAIN16_PG_CONFIG, DOMAIN_POWER_FORCEON, mask_sh), \ -+ HWS_SF(, DOMAIN16_PG_CONFIG, DOMAIN_POWER_GATE, mask_sh), \ -+ HWS_SF(, DOMAIN17_PG_CONFIG, DOMAIN_POWER_FORCEON, mask_sh), \ -+ HWS_SF(, DOMAIN17_PG_CONFIG, DOMAIN_POWER_GATE, mask_sh), \ -+ HWS_SF(, DOMAIN18_PG_CONFIG, DOMAIN_POWER_FORCEON, mask_sh), \ -+ HWS_SF(, DOMAIN18_PG_CONFIG, DOMAIN_POWER_GATE, mask_sh), \ -+ HWS_SF(, DOMAIN19_PG_CONFIG, DOMAIN_POWER_FORCEON, mask_sh), \ -+ HWS_SF(, DOMAIN19_PG_CONFIG, DOMAIN_POWER_GATE, mask_sh), \ -+ HWS_SF(, DOMAIN22_PG_CONFIG, DOMAIN_POWER_FORCEON, mask_sh), \ -+ HWS_SF(, DOMAIN22_PG_CONFIG, DOMAIN_POWER_GATE, mask_sh), \ -+ HWS_SF(, DOMAIN23_PG_CONFIG, DOMAIN_POWER_FORCEON, mask_sh), \ -+ HWS_SF(, DOMAIN23_PG_CONFIG, DOMAIN_POWER_GATE, mask_sh), \ -+ HWS_SF(, DOMAIN24_PG_CONFIG, DOMAIN_POWER_FORCEON, mask_sh), \ -+ HWS_SF(, DOMAIN24_PG_CONFIG, DOMAIN_POWER_GATE, mask_sh), \ -+ HWS_SF(, DOMAIN25_PG_CONFIG, DOMAIN_POWER_FORCEON, mask_sh), \ -+ HWS_SF(, DOMAIN25_PG_CONFIG, DOMAIN_POWER_GATE, mask_sh), \ -+ HWS_SF(, DOMAIN26_PG_CONFIG, DOMAIN_POWER_FORCEON, mask_sh), \ -+ HWS_SF(, DOMAIN26_PG_CONFIG, DOMAIN_POWER_GATE, mask_sh), \ -+ HWS_SF(, DOMAIN0_PG_STATUS, DOMAIN_PGFSM_PWR_STATUS, mask_sh), \ -+ HWS_SF(, DOMAIN1_PG_STATUS, DOMAIN_PGFSM_PWR_STATUS, mask_sh), \ -+ HWS_SF(, DOMAIN2_PG_STATUS, DOMAIN_PGFSM_PWR_STATUS, mask_sh), \ -+ HWS_SF(, DOMAIN3_PG_STATUS, DOMAIN_PGFSM_PWR_STATUS, mask_sh), \ -+ HWS_SF(, DOMAIN16_PG_STATUS, DOMAIN_PGFSM_PWR_STATUS, mask_sh), \ -+ HWS_SF(, DOMAIN17_PG_STATUS, DOMAIN_PGFSM_PWR_STATUS, mask_sh), \ -+ HWS_SF(, DOMAIN18_PG_STATUS, DOMAIN_PGFSM_PWR_STATUS, mask_sh), \ -+ HWS_SF(, DOMAIN19_PG_STATUS, DOMAIN_PGFSM_PWR_STATUS, mask_sh), \ -+ HWS_SF(, DOMAIN22_PG_STATUS, DOMAIN_PGFSM_PWR_STATUS, mask_sh), \ -+ HWS_SF(, DOMAIN23_PG_STATUS, DOMAIN_PGFSM_PWR_STATUS, mask_sh), \ -+ HWS_SF(, DOMAIN24_PG_STATUS, DOMAIN_PGFSM_PWR_STATUS, mask_sh), \ -+ HWS_SF(, DOMAIN25_PG_STATUS, DOMAIN_PGFSM_PWR_STATUS, mask_sh), \ -+ HWS_SF(, DOMAIN26_PG_STATUS, DOMAIN_PGFSM_PWR_STATUS, mask_sh), \ -+ HWS_SF(, DC_IP_REQUEST_CNTL, IP_REQUEST_EN, mask_sh), \ -+ HWS_SF(, AZALIA_AUDIO_DTO, AZALIA_AUDIO_DTO_MODULE, mask_sh), \ -+ HWS_SF(, HPO_TOP_CLOCK_CONTROL, HPO_HDMISTREAMCLK_G_GATE_DIS, mask_sh), \ -+ HWS_SF(, HPO_TOP_HW_CONTROL, HPO_IO_EN, mask_sh), \ -+ HWS_SF(, ODM_MEM_PWR_CTRL3, ODM_MEM_UNASSIGNED_PWR_MODE, mask_sh), \ -+ HWS_SF(, ODM_MEM_PWR_CTRL3, ODM_MEM_VBLANK_PWR_MODE, mask_sh), \ -+ HWS_SF(, DIO_MEM_PWR_CTRL, I2C_LIGHT_SLEEP_FORCE, mask_sh), \ -+ HWS_SF(, DMU_CLK_CNTL, DISPCLK_R_DMU_GATE_DIS, mask_sh),\ -+ HWS_SF(, DMU_CLK_CNTL, DISPCLK_G_RBBMIF_GATE_DIS, mask_sh),\ -+ HWS_SF(, DMU_CLK_CNTL, RBBMIF_FGCG_REP_DIS, mask_sh),\ -+ HWS_SF(, DMU_CLK_CNTL, DPREFCLK_ALLOW_DS_CLKSTOP, mask_sh),\ -+ HWS_SF(, DMU_CLK_CNTL, DISPCLK_ALLOW_DS_CLKSTOP, mask_sh),\ -+ HWS_SF(, DMU_CLK_CNTL, DPPCLK_ALLOW_DS_CLKSTOP, mask_sh),\ -+ HWS_SF(, DMU_CLK_CNTL, DTBCLK_ALLOW_DS_CLKSTOP, mask_sh),\ -+ HWS_SF(, DMU_CLK_CNTL, DCFCLK_ALLOW_DS_CLKSTOP, mask_sh),\ -+ HWS_SF(, DMU_CLK_CNTL, DPIACLK_ALLOW_DS_CLKSTOP, mask_sh),\ -+ HWS_SF(, DMU_CLK_CNTL, LONO_FGCG_REP_DIS, mask_sh),\ -+ HWS_SF(, DMU_CLK_CNTL, LONO_DISPCLK_GATE_DISABLE, mask_sh),\ -+ HWS_SF(, DMU_CLK_CNTL, LONO_SOCCLK_GATE_DISABLE, mask_sh),\ -+ HWS_SF(, DMU_CLK_CNTL, LONO_DMCUBCLK_GATE_DISABLE, mask_sh),\ -+ HWS_SF(, DCCG_GATE_DISABLE_CNTL2, SYMCLKA_FE_GATE_DISABLE, mask_sh), \ -+ HWS_SF(, DCCG_GATE_DISABLE_CNTL2, SYMCLKB_FE_GATE_DISABLE, mask_sh), \ -+ HWS_SF(, DCCG_GATE_DISABLE_CNTL2, SYMCLKC_FE_GATE_DISABLE, mask_sh), \ -+ HWS_SF(, DCCG_GATE_DISABLE_CNTL2, SYMCLKD_FE_GATE_DISABLE, mask_sh), \ -+ HWS_SF(, DCCG_GATE_DISABLE_CNTL2, SYMCLKE_FE_GATE_DISABLE, mask_sh), \ -+ HWS_SF(, DCCG_GATE_DISABLE_CNTL2, HDMICHARCLK0_GATE_DISABLE, mask_sh), \ -+ HWS_SF(, DCCG_GATE_DISABLE_CNTL2, SYMCLKA_GATE_DISABLE, mask_sh), \ -+ HWS_SF(, DCCG_GATE_DISABLE_CNTL2, SYMCLKB_GATE_DISABLE, mask_sh), \ -+ HWS_SF(, DCCG_GATE_DISABLE_CNTL2, SYMCLKC_GATE_DISABLE, mask_sh), \ -+ HWS_SF(, DCCG_GATE_DISABLE_CNTL2, SYMCLKD_GATE_DISABLE, mask_sh), \ -+ HWS_SF(, DCCG_GATE_DISABLE_CNTL2, SYMCLKE_GATE_DISABLE, mask_sh), \ -+ HWS_SF(, DCCG_GATE_DISABLE_CNTL2, PHYASYMCLK_ROOT_GATE_DISABLE, mask_sh), \ -+ HWS_SF(, DCCG_GATE_DISABLE_CNTL2, PHYBSYMCLK_ROOT_GATE_DISABLE, mask_sh), \ -+ HWS_SF(, DCCG_GATE_DISABLE_CNTL2, PHYCSYMCLK_ROOT_GATE_DISABLE, mask_sh), \ -+ HWS_SF(, DCCG_GATE_DISABLE_CNTL2, PHYDSYMCLK_ROOT_GATE_DISABLE, mask_sh), \ -+ HWS_SF(, DCCG_GATE_DISABLE_CNTL2, PHYESYMCLK_ROOT_GATE_DISABLE, mask_sh),\ -+ HWS_SF(, DCCG_GATE_DISABLE_CNTL5, DTBCLK_P0_GATE_DISABLE, mask_sh),\ -+ HWS_SF(, DCCG_GATE_DISABLE_CNTL5, DTBCLK_P1_GATE_DISABLE, mask_sh),\ -+ HWS_SF(, DCCG_GATE_DISABLE_CNTL5, DTBCLK_P2_GATE_DISABLE, mask_sh),\ -+ HWS_SF(, DCCG_GATE_DISABLE_CNTL5, DTBCLK_P3_GATE_DISABLE, mask_sh),\ -+ HWS_SF(, DCCG_GATE_DISABLE_CNTL5, DPSTREAMCLK0_GATE_DISABLE, mask_sh),\ -+ HWS_SF(, DCCG_GATE_DISABLE_CNTL5, DPSTREAMCLK1_GATE_DISABLE, mask_sh),\ -+ HWS_SF(, DCCG_GATE_DISABLE_CNTL5, DPSTREAMCLK2_GATE_DISABLE, mask_sh),\ -+ HWS_SF(, DCCG_GATE_DISABLE_CNTL5, DPSTREAMCLK3_GATE_DISABLE, mask_sh),\ -+ HWS_SF(, DCCG_GATE_DISABLE_CNTL4, DPIASYMCLK0_GATE_DISABLE, mask_sh),\ -+ HWS_SF(, DCCG_GATE_DISABLE_CNTL4, DPIASYMCLK1_GATE_DISABLE, mask_sh),\ -+ HWS_SF(, DCCG_GATE_DISABLE_CNTL4, DPIASYMCLK2_GATE_DISABLE, mask_sh),\ -+ HWS_SF(, DCCG_GATE_DISABLE_CNTL4, DPIASYMCLK3_GATE_DISABLE, mask_sh),\ -+ HWS_SF(, DCCG_GATE_DISABLE_CNTL4, DPIASYMCLK4_GATE_DISABLE, mask_sh),\ -+ HWS_SF(, DCCG_GATE_DISABLE_CNTL4, DPIASYMCLK5_GATE_DISABLE, mask_sh) -+ -+static const struct dce_hwseq_shift hwseq_shift = { -+ HWSEQ_DCN42_MASK_SH_LIST(__SHIFT)}; -+ -+static const struct dce_hwseq_mask hwseq_mask = { -+ HWSEQ_DCN42_MASK_SH_LIST(_MASK)}; -+ -+#define vmid_regs_init(id) \ -+ DCN20_VMID_REG_LIST_RI(id) -+ -+static struct dcn_vmid_registers vmid_regs[16]; -+ -+static const struct dcn20_vmid_shift vmid_shifts = { -+ DCN20_VMID_MASK_SH_LIST(__SHIFT)}; -+ -+static const struct dcn20_vmid_mask vmid_masks = { -+ DCN20_VMID_MASK_SH_LIST(_MASK)}; -+ -+static const struct resource_caps res_cap_dcn42 = { -+ .num_timing_generator = 4, -+ .num_opp = 4, -+ .num_dpp = 4, -+ .num_video_plane = 4, -+ .num_audio = 5, -+ .num_stream_encoder = 5, -+ .num_dig_link_enc = 5, -+ .num_usb4_dpia = 6, -+ .num_hpo_dp_stream_encoder = 4, -+ .num_hpo_dp_link_encoder = 4, -+ .num_pll = 5, -+ .num_dwb = 1, -+ .num_ddc = 5, -+ .num_vmid = 16, -+ .num_mpc_3dlut = 2, -+ .num_dsc = 4, -+ .num_rmcm = 2, -+}; -+ -+static const struct dc_plane_cap plane_cap = { -+ .type = DC_PLANE_TYPE_DCN_UNIVERSAL, -+ .per_pixel_alpha = true, -+ -+ .pixel_format_support = { -+ .argb8888 = true, -+ .nv12 = true, -+ .fp16 = true, -+ .p010 = true, -+ .ayuv = false, -+ }, -+ -+ .max_upscale_factor = {.argb8888 = 16000, .nv12 = 16000, .fp16 = 16000}, -+ -+ // 6:1 downscaling ratio: 1000/6 = 166.666 -+ .max_downscale_factor = {.argb8888 = 167, .nv12 = 167, .fp16 = 167}, -+ -+ .min_width = 64, -+ .min_height = 64}; -+ -+static const struct dc_debug_options debug_defaults_drv = { -+ .disable_dmcu = true, -+ .force_abm_enable = false, -+ .clock_trace = true, -+ .disable_pplib_clock_request = false, -+ .disable_dpp_power_gate = true, -+ .disable_hubp_power_gate = true, -+ .disable_optc_power_gate = true, -+ .pipe_split_policy = MPC_SPLIT_AVOID, -+ .force_single_disp_pipe_split = false, -+ .disable_dcc = DCC_ENABLE, -+ .vsr_support = true, -+ .performance_trace = false, -+ .max_downscale_src_width = 4096, /*up to 4K for APU*/ -+ .disable_pplib_wm_range = false, -+ .scl_reset_length10 = true, -+ .sanity_checks = false, -+ .underflow_assert_delay_us = 0xFFFFFFFF, -+ .dwb_fi_phase = -1, // -1 = disable, -+ .dmub_command_table = true, -+ .pstate_enabled = true, -+ .enable_mem_low_power = { -+ .bits = { -+ .vga = false, -+ .i2c = true, -+ .dscl = true, -+ .cm = true, -+ .mpc = true, -+ .optc = true, -+ .vpg = true, -+ }}, -+ .root_clock_optimization = { -+ .bits = { -+ .dpp = true, -+ .dsc = true,/*dscclk and dsc pg*/ -+ .hdmistream = false, -+ .hdmichar = true, -+ .dpstream = true, -+ .symclk32_se = true, -+ .symclk32_le = true, -+ .symclk_fe = true, -+ .physymclk = false, -+ .dpiasymclk = true, -+ } -+ }, -+ .seamless_boot_odm_combine = DML_FAIL_SOURCE_PIXEL_FORMAT, -+ .enable_z9_disable_interface = true, /* Allow support for the PMFW interface for disable Z9*/ -+ .minimum_z8_residency_time = 1, /* Always allow when other conditions are met */ -+ .support_eDP1_5 = true, -+ .use_max_lb = true, -+ .force_disable_subvp = false, -+ .exit_idle_opt_for_cursor_updates = true, -+ .using_dml2 = true, -+ .using_dml21 = true, -+ .enable_single_display_2to1_odm_policy = true, -+ -+ // must match enable_single_display_2to1_odm_policy to support dynamic ODM transitions -+ .enable_double_buffered_dsc_pg_support = true, -+ .enable_dp_dig_pixel_rate_div_policy = 1, -+ .allow_sw_cursor_fallback = false, -+ .psp_disabled_wa = true, -+ .alloc_extra_way_for_cursor = true, -+ .min_prefetch_in_strobe_ns = 60000, // 60us -+ .disable_unbounded_requesting = false, -+ .dcc_meta_propagation_delay_us = 10, -+ .disable_timeout = true, -+ .min_disp_clk_khz = 50000, -+ .static_screen_wait_frames = 2, -+ .disable_z10 = false, -+ .ignore_pg = true, -+ .disable_stutter_for_wm_program = true, -+ .min_deep_sleep_dcfclk_khz = 8000, -+ .replay_skip_crtc_disabled = true, -+ .psr_skip_crtc_disable = true, -+}; -+ -+static const struct dc_check_config config_defaults = { -+ .enable_legacy_fast_update = false, -+}; -+ -+static struct dce_aux *dcn42_aux_engine_create( -+ struct dc_context *ctx, -+ uint32_t inst) -+{ -+ struct aux_engine_dce110 *aux_engine = -+ kzalloc(sizeof(struct aux_engine_dce110), GFP_KERNEL); -+ -+ if (!aux_engine) -+ return NULL; -+ -+#undef REG_STRUCT -+#define REG_STRUCT aux_engine_regs -+ aux_engine_regs_init(0), -+ aux_engine_regs_init(1), -+ aux_engine_regs_init(2), -+ aux_engine_regs_init(3), -+ aux_engine_regs_init(4); -+ -+ dce110_aux_engine_construct(aux_engine, ctx, inst, -+ SW_AUX_TIMEOUT_PERIOD_MULTIPLIER * AUX_TIMEOUT_PERIOD, -+ &aux_engine_regs[inst], -+ &aux_mask, -+ &aux_shift, -+ ctx->dc->caps.extended_aux_timeout_support); -+ -+ return &aux_engine->base; -+} -+ -+#define i2c_inst_regs_init(id) \ -+ I2C_HW_ENGINE_COMMON_REG_LIST_DCN30_RI(id) -+ -+static struct dce_i2c_registers i2c_hw_regs[5]; -+ -+static const struct dce_i2c_shift i2c_shifts = { -+ I2C_COMMON_MASK_SH_LIST_DCN35(__SHIFT) -+}; -+static const struct dce_i2c_mask i2c_masks = { -+ I2C_COMMON_MASK_SH_LIST_DCN35(_MASK) -+}; -+ -+/* ========================================================== */ -+ -+/* -+ * DPIA index | Preferred Encoder | Host Router -+ * 0 | C | 0 -+ * 1 | First Available | 0 -+ * 2 | D | 1 -+ * 3 | First Available | 1 -+ * 4 | E | 2 -+ * 5 | First Available | 2 -+ */ -+/* ========================================================== */ -+static const enum engine_id dpia_to_preferred_enc_id_table[] = { -+ ENGINE_ID_DIGC, -+ ENGINE_ID_DIGC, -+ ENGINE_ID_DIGD, -+ ENGINE_ID_DIGD, -+ ENGINE_ID_DIGE, -+ ENGINE_ID_DIGE -+}; -+ -+static enum engine_id dcn42_get_preferred_eng_id_dpia(unsigned int dpia_index) -+{ -+ return dpia_to_preferred_enc_id_table[dpia_index]; -+} -+ -+static struct dce_i2c_hw *dcn42_i2c_hw_create( -+ struct dc_context *ctx, -+ uint32_t inst) -+{ -+ struct dce_i2c_hw *dce_i2c_hw = -+ kzalloc(sizeof(struct dce_i2c_hw), GFP_KERNEL); -+ -+ if (!dce_i2c_hw) -+ return NULL; -+ -+#undef REG_STRUCT -+#define REG_STRUCT i2c_hw_regs -+ i2c_inst_regs_init(1), -+ i2c_inst_regs_init(2), -+ i2c_inst_regs_init(3), -+ i2c_inst_regs_init(4), -+ i2c_inst_regs_init(5); -+ dcn2_i2c_hw_construct(dce_i2c_hw, ctx, inst, -+ &i2c_hw_regs[inst], &i2c_shifts, &i2c_masks); -+ -+ return dce_i2c_hw; -+} -+ -+static struct clock_source *dcn42_clock_source_create( -+ struct dc_context *ctx, -+ struct dc_bios *bios, -+ enum clock_source_id id, -+ const struct dce110_clk_src_regs *regs, -+ bool dp_clk_src) -+{ -+ struct dce110_clk_src *clk_src = -+ kzalloc(sizeof(struct dce110_clk_src), GFP_KERNEL); -+ -+ if (!clk_src) -+ return NULL; -+ -+ if (dcn401_clk_src_construct(clk_src, ctx, bios, id, -+ regs, &cs_shift, &cs_mask)) { -+ clk_src->base.dp_clk_src = dp_clk_src; -+ return &clk_src->base; -+ } -+ -+ kfree(clk_src); -+ BREAK_TO_DEBUGGER(); -+ return NULL; -+} -+ -+static struct hubbub *dcn42_hubbub_create(struct dc_context *ctx) -+{ -+ int i; -+ -+ struct dcn20_hubbub *hubbub3 = kzalloc(sizeof(struct dcn20_hubbub), -+ GFP_KERNEL); -+ -+ if (!hubbub3) -+ return NULL; -+ -+#undef REG_STRUCT -+#define REG_STRUCT hubbub_reg -+ hubbub_reg_init(); -+ -+#undef REG_STRUCT -+#define REG_STRUCT vmid_regs -+ vmid_regs_init(0), -+ vmid_regs_init(1), -+ vmid_regs_init(2), -+ vmid_regs_init(3), -+ vmid_regs_init(4), -+ vmid_regs_init(5), -+ vmid_regs_init(6), -+ vmid_regs_init(7), -+ vmid_regs_init(8), -+ vmid_regs_init(9), -+ vmid_regs_init(10), -+ vmid_regs_init(11), -+ vmid_regs_init(12), -+ vmid_regs_init(13), -+ vmid_regs_init(14), -+ vmid_regs_init(15); -+ -+ hubbub42_construct(hubbub3, ctx, -+ &hubbub_reg, -+ &hubbub_shift, -+ &hubbub_mask, -+ DCN42_DEFAULT_DET_SIZE, -+ 8, -+ DCN42_CRB_SIZE_KB); -+ for (i = 0; i < res_cap_dcn42.num_vmid; i++) { -+ struct dcn20_vmid *vmid = &hubbub3->vmid[i]; -+ -+ vmid->ctx = ctx; -+ -+ vmid->regs = &vmid_regs[i]; -+ vmid->shifts = &vmid_shifts; -+ vmid->masks = &vmid_masks; -+ } -+ -+ return &hubbub3->base; -+} -+ -+static struct hubp *dcn42_hubp_create( -+ struct dc_context *ctx, -+ uint32_t inst) -+{ -+ struct dcn20_hubp *hubp2 = -+ kzalloc(sizeof(struct dcn20_hubp), GFP_KERNEL); -+ -+ if (!hubp2) -+ return NULL; -+ -+#undef REG_STRUCT -+#define REG_STRUCT hubp_regs -+ hubp_regs_init(0), -+ hubp_regs_init(1), -+ hubp_regs_init(2), -+ hubp_regs_init(3); -+ -+ if (hubp42_construct(hubp2, ctx, inst, -+ &hubp_regs[inst], &hubp_shift, &hubp_mask)) -+ return &hubp2->base; -+ -+ BREAK_TO_DEBUGGER(); -+ kfree(hubp2); -+ return NULL; -+} -+static const struct dc_panel_config dcn42_panel_config_defaults = { -+ .psr = { -+ .disable_psr = false, -+ .disallow_psrsu = false, -+ .disallow_replay = false, -+ }, -+ .ilr = { -+ .optimize_edp_link_rate = true, -+ }, -+}; -+ -+static void dcn42_dpp_destroy(struct dpp **dpp) -+{ -+ kfree(TO_DCN42_DPP(*dpp)); -+ *dpp = NULL; -+} -+ -+static struct dpp *dcn42_dpp_create( -+ struct dc_context *ctx, -+ uint32_t inst) -+{ -+ struct dcn42_dpp *dpp42 = -+ kzalloc(sizeof(struct dcn42_dpp), GFP_KERNEL); -+ -+ if (!dpp42) -+ return NULL; -+ -+#undef REG_STRUCT -+#define REG_STRUCT dpp_regs -+ dpp_regs_init(0), -+ dpp_regs_init(1), -+ dpp_regs_init(2), -+ dpp_regs_init(3); -+ -+ if (dpp42_construct(dpp42, ctx, inst, -+ &dpp_regs[inst], &tf_shift, &tf_mask)) -+ return &dpp42->base; -+ -+ BREAK_TO_DEBUGGER(); -+ kfree(dpp42); -+ return NULL; -+} -+ -+static struct mpc *dcn42_mpc_create( -+ struct dc_context *ctx, -+ int num_mpcc, -+ int num_rmu) -+{ -+ struct dcn42_mpc *mpc401 = kzalloc(sizeof(struct dcn42_mpc), -+ GFP_KERNEL); -+ -+ if (!mpc401) -+ return NULL; -+ -+#undef REG_STRUCT -+#define REG_STRUCT mpc_regs -+ dcn_mpc_regs_init(); -+ -+ dcn42_mpc_construct(mpc401, ctx, -+ &mpc_regs, -+ &mpc_shift, -+ &mpc_mask, -+ num_mpcc, -+ num_rmu); -+ -+ return &mpc401->base; -+} -+ -+static struct output_pixel_processor *dcn42_opp_create( -+ struct dc_context *ctx, uint32_t inst) -+{ -+ struct dcn20_opp *opp4 = -+ kzalloc(sizeof(struct dcn20_opp), GFP_KERNEL); -+ -+ if (!opp4) { -+ BREAK_TO_DEBUGGER(); -+ return NULL; -+ } -+ -+#undef REG_STRUCT -+#define REG_STRUCT opp_regs -+ opp_regs_init(0), -+ opp_regs_init(1), -+ opp_regs_init(2), -+ opp_regs_init(3); -+ dcn20_opp_construct(opp4, ctx, inst, -+ &opp_regs[inst], &opp_shift, &opp_mask); -+ return &opp4->base; -+} -+ -+static struct timing_generator *dcn42_timing_generator_create( -+ struct dc_context *ctx, -+ uint32_t instance) -+{ -+ struct optc *tgn10 = -+ kzalloc(sizeof(struct optc), GFP_KERNEL); -+ -+ if (!tgn10) -+ return NULL; -+#undef REG_STRUCT -+#define REG_STRUCT optc_regs -+ optc_regs_init(0), -+ optc_regs_init(1), -+ optc_regs_init(2), -+ optc_regs_init(3); -+ tgn10->base.inst = instance; -+ tgn10->base.ctx = ctx; -+ -+ tgn10->tg_regs = &optc_regs[instance]; -+ tgn10->tg_shift = &optc_shift; -+ tgn10->tg_mask = &optc_mask; -+ -+ dcn42_timing_generator_init(tgn10); -+ -+ return &tgn10->base; -+} -+ -+static const struct encoder_feature_support link_enc_feature = { -+ .max_hdmi_deep_color = COLOR_DEPTH_121212, -+ .max_hdmi_pixel_clock = 600000, -+ .hdmi_ycbcr420_supported = true, -+ .dp_ycbcr420_supported = true, -+ .fec_supported = true, -+ .flags.bits.IS_HBR2_CAPABLE = true, -+ .flags.bits.IS_HBR3_CAPABLE = true, -+ .flags.bits.IS_TPS3_CAPABLE = true, -+ .flags.bits.IS_TPS4_CAPABLE = true}; -+ -+static struct link_encoder *dcn42_link_encoder_create( -+ struct dc_context *ctx, -+ const struct encoder_init_data *enc_init_data) -+{ -+ struct dcn20_link_encoder *enc20 = -+ kzalloc(sizeof(struct dcn20_link_encoder), GFP_KERNEL); -+ -+ if (!enc20 || enc_init_data->hpd_source >= ARRAY_SIZE(link_enc_hpd_regs)) -+ return NULL; -+ -+#undef REG_STRUCT -+#define REG_STRUCT link_enc_aux_regs -+ aux_regs_init(0), -+ aux_regs_init(1), -+ aux_regs_init(2), -+ aux_regs_init(3), -+ aux_regs_init(4); -+#undef REG_STRUCT -+#define REG_STRUCT link_enc_hpd_regs -+ hpd_regs_init(0), -+ hpd_regs_init(1), -+ hpd_regs_init(2), -+ hpd_regs_init(3), -+ hpd_regs_init(4); -+#undef REG_STRUCT -+#define REG_STRUCT link_enc_regs -+ link_regs_init(0, A), -+ link_regs_init(1, B), -+ link_regs_init(2, C), -+ link_regs_init(3, D), -+ link_regs_init(4, E); -+ -+ dcn42_link_encoder_construct(enc20, -+ enc_init_data, -+ &link_enc_feature, -+ &link_enc_regs[enc_init_data->transmitter], -+ &link_enc_aux_regs[enc_init_data->channel - 1], -+ &link_enc_hpd_regs[enc_init_data->hpd_source], -+ &le_shift, -+ &le_mask); -+ return &enc20->enc10.base; -+} -+ -+static void read_dce_straps( -+ struct dc_context *ctx, -+ struct resource_straps *straps) -+{ -+ generic_reg_get(ctx, regDC_PINSTRAPS + BASE(regDC_PINSTRAPS_BASE_IDX), -+ FN(DC_PINSTRAPS, DC_PINSTRAPS_AUDIO), &straps->dc_pinstraps_audio); -+} -+ -+static struct audio *dcn42_create_audio( -+ struct dc_context *ctx, unsigned int inst) -+{ -+ -+#undef REG_STRUCT -+#define REG_STRUCT audio_regs -+ audio_regs_init(0), -+ audio_regs_init(1), -+ audio_regs_init(2), -+ audio_regs_init(3), -+ audio_regs_init(4); -+ -+ return dce_audio_create(ctx, inst, -+ &audio_regs[inst], &audio_shift, &audio_mask); -+} -+ -+static struct vpg *dcn42_vpg_create( -+ struct dc_context *ctx, -+ uint32_t inst) -+{ -+ struct dcn31_vpg *vpg4 = kzalloc(sizeof(struct dcn31_vpg), GFP_KERNEL); -+ -+ if (!vpg4) -+ return NULL; -+ -+#undef REG_STRUCT -+#define REG_STRUCT vpg_regs -+ vpg_regs_init(0), -+ vpg_regs_init(1), -+ vpg_regs_init(2), -+ vpg_regs_init(3), -+ vpg_regs_init(4), -+ vpg_regs_init(5), -+ vpg_regs_init(6), -+ vpg_regs_init(7), -+ vpg_regs_init(8), -+ vpg_regs_init(9); -+ vpg31_construct(vpg4, ctx, inst, -+ &vpg_regs[inst], -+ &vpg_shift, -+ &vpg_mask); -+ -+ return &vpg4->base; -+} -+ -+static struct apg *dcn42_apg_create( -+ struct dc_context *ctx, -+ uint32_t inst) -+{ -+ struct dcn31_apg *apg31 = kzalloc(sizeof(struct dcn31_apg), GFP_KERNEL); -+ -+ if (!apg31) -+ return NULL; -+ -+#undef REG_STRUCT -+#define REG_STRUCT apg_regs -+ apg_regs_init(0), -+ apg_regs_init(1), -+ apg_regs_init(2), -+ apg_regs_init(3), -+ apg_regs_init(4), -+ apg_regs_init(5), -+ apg_regs_init(6), -+ apg_regs_init(7), -+ apg_regs_init(8), -+ apg_regs_init(9); -+ -+ apg31_construct(apg31, ctx, inst, -+ &apg_regs[inst], -+ &apg_shift, -+ &apg_mask); -+ -+ return &apg31->base; -+} -+ -+static struct stream_encoder *dcn42_stream_encoder_create( -+ enum engine_id eng_id, -+ struct dc_context *ctx) -+{ -+ struct dcn10_stream_encoder *enc1; -+ struct vpg *vpg; -+ struct apg *apg; -+ -+ uint32_t vpg_inst; -+ uint32_t apg_inst; -+ -+ /* Mapping of VPG, DME register blocks to DIO block instance */ -+ if (eng_id <= ENGINE_ID_DIGE) { -+ vpg_inst = eng_id; -+ apg_inst = eng_id; -+ } else -+ return NULL; -+ -+ enc1 = kzalloc(sizeof(struct dcn10_stream_encoder), GFP_KERNEL); -+ vpg = dcn42_vpg_create(ctx, vpg_inst); -+ apg = dcn42_apg_create(ctx, apg_inst); -+ -+ if (!enc1 || !vpg || !apg) { -+ kfree(enc1); -+ kfree(vpg); -+ kfree(apg); -+ return NULL; -+ } -+#undef REG_STRUCT -+#define REG_STRUCT stream_enc_regs -+ stream_enc_regs_init(0), -+ stream_enc_regs_init(1), -+ stream_enc_regs_init(2), -+ stream_enc_regs_init(3), -+ stream_enc_regs_init(4); -+ -+ dcn42_dio_stream_encoder_construct(enc1, ctx, ctx->dc_bios, -+ eng_id, vpg, apg, -+ &stream_enc_regs[eng_id], -+ &se_shift, &se_mask); -+ return &enc1->base; -+} -+ -+static struct hpo_dp_stream_encoder *dcn42_hpo_dp_stream_encoder_create( -+ enum engine_id eng_id, -+ struct dc_context *ctx) +-static void dml21_calculate_rq_and_dlg_params(const struct dc *dc, struct dc_state *context, struct resource_context *out_new_hw_state, +- struct dml2_context *in_ctx, unsigned int pipe_cnt) +-{ +- unsigned int dml_prog_idx = 0, dc_pipe_index = 0, num_dpps_required = 0; +- struct dml2_per_plane_programming *pln_prog = NULL; +- struct dml2_per_stream_programming *stream_prog = NULL; +- struct pipe_ctx *dc_main_pipes[__DML2_WRAPPER_MAX_STREAMS_PLANES__]; +- struct pipe_ctx *dc_phantom_pipes[__DML2_WRAPPER_MAX_STREAMS_PLANES__] = {0}; +- int num_pipes; +- unsigned int dml_phantom_prog_idx; +- +- context->bw_ctx.bw.dcn.clk.dppclk_khz = 0; +- +- /* copy global DCHUBBUB arbiter registers */ +- memcpy(&context->bw_ctx.bw.dcn.arb_regs, &in_ctx->v21.mode_programming.programming->global_regs.arb_regs, sizeof(struct dml2_display_arb_regs)); +- +- /* legacy only */ +- context->bw_ctx.bw.dcn.compbuf_size_kb = (int)in_ctx->v21.mode_programming.programming->global_regs.arb_regs.compbuf_size * 64; +- +- context->bw_ctx.bw.dcn.mall_ss_size_bytes = 0; +- context->bw_ctx.bw.dcn.mall_ss_psr_active_size_bytes = 0; +- context->bw_ctx.bw.dcn.mall_subvp_size_bytes = 0; +- +- /* phantom's start after main planes */ +- dml_phantom_prog_idx = in_ctx->v21.mode_programming.programming->display_config.num_planes; +- +- for (dml_prog_idx = 0; dml_prog_idx < DML2_MAX_PLANES; dml_prog_idx++) { +- pln_prog = &in_ctx->v21.mode_programming.programming->plane_programming[dml_prog_idx]; +- +- if (!pln_prog->plane_descriptor) +- continue; +- +- stream_prog = &in_ctx->v21.mode_programming.programming->stream_programming[pln_prog->plane_descriptor->stream_index]; +- num_dpps_required = pln_prog->num_dpps_required; +- +- if (num_dpps_required == 0) { +- continue; +- } +- num_pipes = dml21_find_dc_pipes_for_plane(dc, context, in_ctx, dc_main_pipes, dc_phantom_pipes, dml_prog_idx); +- +- if (num_pipes <= 0) +- continue; +- +- /* program each pipe */ +- for (dc_pipe_index = 0; dc_pipe_index < num_pipes; dc_pipe_index++) { +- dml21_program_dc_pipe(in_ctx, context, dc_main_pipes[dc_pipe_index], pln_prog, stream_prog); +- +- if (pln_prog->phantom_plane.valid && dc_phantom_pipes[dc_pipe_index]) { +- dml21_program_dc_pipe(in_ctx, context, dc_phantom_pipes[dc_pipe_index], pln_prog, stream_prog); +- } +- } +- +- /* copy per plane mcache allocation */ +- memcpy(&context->bw_ctx.bw.dcn.mcache_allocations[dml_prog_idx], &pln_prog->mcache_allocation, sizeof(struct dml2_mcache_surface_allocation)); +- if (pln_prog->phantom_plane.valid) { +- memcpy(&context->bw_ctx.bw.dcn.mcache_allocations[dml_phantom_prog_idx], +- &pln_prog->phantom_plane.mcache_allocation, +- sizeof(struct dml2_mcache_surface_allocation)); +- +- dml_phantom_prog_idx++; +- } +- } +- +- /* assign global clocks */ +- context->bw_ctx.bw.dcn.clk.bw_dppclk_khz = context->bw_ctx.bw.dcn.clk.dppclk_khz; +- context->bw_ctx.bw.dcn.clk.bw_dispclk_khz = context->bw_ctx.bw.dcn.clk.dispclk_khz; +- if (in_ctx->v21.dml_init.soc_bb.clk_table.dispclk.num_clk_values > 1) { +- context->bw_ctx.bw.dcn.clk.max_supported_dispclk_khz = +- in_ctx->v21.dml_init.soc_bb.clk_table.dispclk.clk_values_khz[in_ctx->v21.dml_init.soc_bb.clk_table.dispclk.num_clk_values] * 1000; +- } else { +- context->bw_ctx.bw.dcn.clk.max_supported_dispclk_khz = in_ctx->v21.dml_init.soc_bb.clk_table.dispclk.clk_values_khz[0] * 1000; +- } +- +- if (in_ctx->v21.dml_init.soc_bb.clk_table.dppclk.num_clk_values > 1) { +- context->bw_ctx.bw.dcn.clk.max_supported_dppclk_khz = +- in_ctx->v21.dml_init.soc_bb.clk_table.dppclk.clk_values_khz[in_ctx->v21.dml_init.soc_bb.clk_table.dppclk.num_clk_values] * 1000; +- } else { +- context->bw_ctx.bw.dcn.clk.max_supported_dppclk_khz = in_ctx->v21.dml_init.soc_bb.clk_table.dppclk.clk_values_khz[0] * 1000; +- } +- +- /* get global mall allocation */ +- if (dc->res_pool->funcs->calculate_mall_ways_from_bytes) { +- context->bw_ctx.bw.dcn.clk.num_ways = dc->res_pool->funcs->calculate_mall_ways_from_bytes(dc, context->bw_ctx.bw.dcn.mall_subvp_size_bytes); +- } else { +- context->bw_ctx.bw.dcn.clk.num_ways = 0; +- } +-} +- +-static void dml21_prepare_mcache_params(struct dml2_context *dml_ctx, struct dc_state *context, struct dc_mcache_params *mcache_params) +-{ +- int dc_plane_idx = 0; +- int dml_prog_idx, stream_idx, plane_idx; +- struct dml2_per_plane_programming *pln_prog = NULL; +- +- for (stream_idx = 0; stream_idx < context->stream_count; stream_idx++) { +- for (plane_idx = 0; plane_idx < context->stream_status[stream_idx].plane_count; plane_idx++) { +- dml_prog_idx = map_plane_to_dml21_display_cfg(dml_ctx, context->streams[stream_idx]->stream_id, context->stream_status[stream_idx].plane_states[plane_idx], context); +- if (dml_prog_idx == INVALID) { +- continue; +- } +- pln_prog = &dml_ctx->v21.mode_programming.programming->plane_programming[dml_prog_idx]; +- mcache_params[dc_plane_idx].valid = pln_prog->mcache_allocation.valid; +- mcache_params[dc_plane_idx].num_mcaches_plane0 = pln_prog->mcache_allocation.num_mcaches_plane0; +- mcache_params[dc_plane_idx].num_mcaches_plane1 = pln_prog->mcache_allocation.num_mcaches_plane1; +- mcache_params[dc_plane_idx].requires_dedicated_mall_mcache = pln_prog->mcache_allocation.requires_dedicated_mall_mcache; +- mcache_params[dc_plane_idx].last_slice_sharing.plane0_plane1 = pln_prog->mcache_allocation.last_slice_sharing.plane0_plane1; +- memcpy(mcache_params[dc_plane_idx].mcache_x_offsets_plane0, +- pln_prog->mcache_allocation.mcache_x_offsets_plane0, +- sizeof(int) * (DML2_MAX_MCACHES + 1)); +- memcpy(mcache_params[dc_plane_idx].mcache_x_offsets_plane1, +- pln_prog->mcache_allocation.mcache_x_offsets_plane1, +- sizeof(int) * (DML2_MAX_MCACHES + 1)); +- dc_plane_idx++; +- } +- } +-} +- +-static bool dml21_mode_check_and_programming(const struct dc *in_dc, struct dc_state *context, struct dml2_context *dml_ctx) +-{ +- bool result = false; +- struct dml2_build_mode_programming_in_out *mode_programming = &dml_ctx->v21.mode_programming; +- struct dc_mcache_params mcache_params[MAX_PLANES] = {0}; +- +- memset(&dml_ctx->v21.display_config, 0, sizeof(struct dml2_display_cfg)); +- memset(&dml_ctx->v21.dml_to_dc_pipe_mapping, 0, sizeof(struct dml2_dml_to_dc_pipe_mapping)); +- memset(&dml_ctx->v21.mode_programming.dml2_instance->scratch.build_mode_programming_locals.mode_programming_params, 0, sizeof(struct dml2_core_mode_programming_in_out)); +- +- if (!context) +- return true; +- +- if (context->stream_count == 0) { +- dml21_init_min_clocks_for_dc_state(dml_ctx, context); +- dml21_build_fams2_programming(in_dc, context, dml_ctx); +- return true; +- } +- +- /* scrub phantom's from current dc_state */ +- dml_ctx->config.svp_pstate.callbacks.remove_phantom_streams_and_planes(in_dc, context); +- dml_ctx->config.svp_pstate.callbacks.release_phantom_streams_and_planes(in_dc, context); +- +- /* Populate stream, plane mappings and other fields in display config. */ +- result = dml21_map_dc_state_into_dml_display_cfg(in_dc, context, dml_ctx); +- if (!result) +- return false; +- +- DC_FP_START(); +- result = dml2_build_mode_programming(mode_programming); +- DC_FP_END(); +- if (!result) +- return false; +- +- /* Check and map HW resources */ +- if (result && !dml_ctx->config.skip_hw_state_mapping) { +- dml21_map_hw_resources(dml_ctx); +- dml2_map_dc_pipes(dml_ctx, context, NULL, &dml_ctx->v21.dml_to_dc_pipe_mapping, in_dc->current_state); +- /* if subvp phantoms are present, expand them into dc context */ +- dml21_handle_phantom_streams_planes(in_dc, context, dml_ctx); +- +- if (in_dc->res_pool->funcs->program_mcache_pipe_config) { +- //Prepare mcache params for each plane based on mcache output from DML +- dml21_prepare_mcache_params(dml_ctx, context, mcache_params); +- +- //populate mcache regs to each pipe +- dml_ctx->config.callbacks.allocate_mcache(context, mcache_params); +- } +- } +- +- /* Copy DML CLK, WM and REG outputs to bandwidth context */ +- if (result && !dml_ctx->config.skip_hw_state_mapping) { +- dml21_calculate_rq_and_dlg_params(in_dc, context, &context->res_ctx, dml_ctx, in_dc->res_pool->pipe_count); +- dml21_copy_clocks_to_dc_state(dml_ctx, context); +- dml21_extract_watermark_sets(in_dc, &context->bw_ctx.bw.dcn.watermarks, dml_ctx); +- dml21_build_fams2_programming(in_dc, context, dml_ctx); +- } +- +- return true; +-} +- +-static bool dml21_check_mode_support(const struct dc *in_dc, struct dc_state *context, struct dml2_context *dml_ctx) +-{ +- bool is_supported = false; +- struct dml2_initialize_instance_in_out *dml_init = &dml_ctx->v21.dml_init; +- struct dml2_check_mode_supported_in_out *mode_support = &dml_ctx->v21.mode_support; +- +- memset(&dml_ctx->v21.display_config, 0, sizeof(struct dml2_display_cfg)); +- memset(&dml_ctx->v21.dml_to_dc_pipe_mapping, 0, sizeof(struct dml2_dml_to_dc_pipe_mapping)); +- memset(&dml_ctx->v21.mode_programming.dml2_instance->scratch.check_mode_supported_locals.mode_support_params, 0, sizeof(struct dml2_core_mode_support_in_out)); +- +- if (!context || context->stream_count == 0) +- return true; +- +- /* Scrub phantom's from current dc_state */ +- dml_ctx->config.svp_pstate.callbacks.remove_phantom_streams_and_planes(in_dc, context); +- dml_ctx->config.svp_pstate.callbacks.release_phantom_streams_and_planes(in_dc, context); +- +- mode_support->dml2_instance = dml_init->dml2_instance; +- dml21_map_dc_state_into_dml_display_cfg(in_dc, context, dml_ctx); +- dml_ctx->v21.mode_programming.dml2_instance->scratch.build_mode_programming_locals.mode_programming_params.programming = dml_ctx->v21.mode_programming.programming; +- DC_FP_START(); +- is_supported = dml2_check_mode_supported(mode_support); +- DC_FP_END(); +- if (!is_supported) +- return false; +- +- return true; +-} +- +-bool dml21_validate(const struct dc *in_dc, struct dc_state *context, struct dml2_context *dml_ctx, +- enum dc_validate_mode validate_mode) +-{ +- bool out = false; +- +- /* Use dml21_check_mode_support for DC_VALIDATE_MODE_ONLY and DC_VALIDATE_MODE_AND_STATE_INDEX path */ +- if (validate_mode != DC_VALIDATE_MODE_AND_PROGRAMMING) +- out = dml21_check_mode_support(in_dc, context, dml_ctx); +- else +- out = dml21_mode_check_and_programming(in_dc, context, dml_ctx); +- +- return out; +-} +- +-void dml21_prepare_mcache_programming(struct dc *in_dc, struct dc_state *context, struct dml2_context *dml_ctx) +-{ +- unsigned int dml_prog_idx, dml_phantom_prog_idx, dc_pipe_index; +- int num_pipes; +- struct pipe_ctx *dc_main_pipes[__DML2_WRAPPER_MAX_STREAMS_PLANES__]; +- struct pipe_ctx *dc_phantom_pipes[__DML2_WRAPPER_MAX_STREAMS_PLANES__] = {0}; +- +- struct dml2_per_plane_programming *pln_prog = NULL; +- struct dml2_plane_mcache_configuration_descriptor *mcache_config = NULL; +- struct prepare_mcache_programming_locals *l = &dml_ctx->v21.scratch.prepare_mcache_locals; +- +- if (context->stream_count == 0) { +- return; +- } +- +- memset(&l->build_mcache_programming_params, 0, sizeof(struct dml2_build_mcache_programming_in_out)); +- l->build_mcache_programming_params.dml2_instance = dml_ctx->v21.dml_init.dml2_instance; +- +- /* phantom's start after main planes */ +- dml_phantom_prog_idx = dml_ctx->v21.mode_programming.programming->display_config.num_planes; +- +- /* Build mcache programming parameters per plane per pipe */ +- for (dml_prog_idx = 0; dml_prog_idx < dml_ctx->v21.mode_programming.programming->display_config.num_planes; dml_prog_idx++) { +- pln_prog = &dml_ctx->v21.mode_programming.programming->plane_programming[dml_prog_idx]; +- +- mcache_config = &l->build_mcache_programming_params.mcache_configurations[dml_prog_idx]; +- memset(mcache_config, 0, sizeof(struct dml2_plane_mcache_configuration_descriptor)); +- mcache_config->plane_descriptor = pln_prog->plane_descriptor; +- mcache_config->mcache_allocation = &context->bw_ctx.bw.dcn.mcache_allocations[dml_prog_idx]; +- mcache_config->num_pipes = pln_prog->num_dpps_required; +- l->build_mcache_programming_params.num_configurations++; +- +- if (pln_prog->num_dpps_required == 0) { +- continue; +- } +- +- num_pipes = dml21_find_dc_pipes_for_plane(in_dc, context, dml_ctx, dc_main_pipes, dc_phantom_pipes, dml_prog_idx); +- if (num_pipes <= 0 || dc_main_pipes[0]->stream == NULL || +- dc_main_pipes[0]->plane_state == NULL) +- continue; +- +- /* get config for each pipe */ +- for (dc_pipe_index = 0; dc_pipe_index < num_pipes; dc_pipe_index++) { +- ASSERT(dc_main_pipes[dc_pipe_index]); +- dml21_get_pipe_mcache_config(context, dc_main_pipes[dc_pipe_index], pln_prog, &mcache_config->pipe_configurations[dc_pipe_index]); +- } +- +- /* get config for each phantom pipe */ +- if (pln_prog->phantom_plane.valid && +- dc_phantom_pipes[0] && +- dc_main_pipes[0]->stream && +- dc_phantom_pipes[0]->plane_state) { +- mcache_config = &l->build_mcache_programming_params.mcache_configurations[dml_phantom_prog_idx]; +- memset(mcache_config, 0, sizeof(struct dml2_plane_mcache_configuration_descriptor)); +- mcache_config->plane_descriptor = pln_prog->plane_descriptor; +- mcache_config->mcache_allocation = &context->bw_ctx.bw.dcn.mcache_allocations[dml_phantom_prog_idx]; +- mcache_config->num_pipes = pln_prog->num_dpps_required; +- l->build_mcache_programming_params.num_configurations++; +- +- for (dc_pipe_index = 0; dc_pipe_index < num_pipes; dc_pipe_index++) { +- ASSERT(dc_phantom_pipes[dc_pipe_index]); +- dml21_get_pipe_mcache_config(context, dc_phantom_pipes[dc_pipe_index], pln_prog, &mcache_config->pipe_configurations[dc_pipe_index]); +- } +- +- /* increment phantom index */ +- dml_phantom_prog_idx++; +- } +- } +- +- /* Call to generate mcache programming per plane per pipe for the given display configuration */ +- dml2_build_mcache_programming(&l->build_mcache_programming_params); +- +- /* get per plane per pipe mcache programming */ +- for (dml_prog_idx = 0; dml_prog_idx < dml_ctx->v21.mode_programming.programming->display_config.num_planes; dml_prog_idx++) { +- pln_prog = &dml_ctx->v21.mode_programming.programming->plane_programming[dml_prog_idx]; +- +- num_pipes = dml21_find_dc_pipes_for_plane(in_dc, context, dml_ctx, dc_main_pipes, dc_phantom_pipes, dml_prog_idx); +- if (num_pipes <= 0 || dc_main_pipes[0]->stream == NULL || +- dc_main_pipes[0]->plane_state == NULL) +- continue; +- +- /* get config for each pipe */ +- for (dc_pipe_index = 0; dc_pipe_index < num_pipes; dc_pipe_index++) { +- ASSERT(dc_main_pipes[dc_pipe_index]); +- if (l->build_mcache_programming_params.per_plane_pipe_mcache_regs[dml_prog_idx][dc_pipe_index]) { +- memcpy(&dc_main_pipes[dc_pipe_index]->mcache_regs, +- l->build_mcache_programming_params.per_plane_pipe_mcache_regs[dml_prog_idx][dc_pipe_index], +- sizeof(struct dml2_hubp_pipe_mcache_regs)); +- } +- } +- +- /* get config for each phantom pipe */ +- if (pln_prog->phantom_plane.valid && +- dc_phantom_pipes[0] && +- dc_main_pipes[0]->stream && +- dc_phantom_pipes[0]->plane_state) { +- for (dc_pipe_index = 0; dc_pipe_index < num_pipes; dc_pipe_index++) { +- ASSERT(dc_phantom_pipes[dc_pipe_index]); +- if (l->build_mcache_programming_params.per_plane_pipe_mcache_regs[dml_phantom_prog_idx][dc_pipe_index]) { +- memcpy(&dc_phantom_pipes[dc_pipe_index]->mcache_regs, +- l->build_mcache_programming_params.per_plane_pipe_mcache_regs[dml_phantom_prog_idx][dc_pipe_index], +- sizeof(struct dml2_hubp_pipe_mcache_regs)); +- } +- } +- /* increment phantom index */ +- dml_phantom_prog_idx++; +- } +- } +-} +- + void dml21_copy(struct dml2_context *dst_dml_ctx, + struct dml2_context *src_dml_ctx) + { +@@ -446,12 +86,8 @@ void dml21_copy(struct dml2_context *dst_dml_ctx, + + dst_dml_ctx->v21.mode_programming.programming = dst_dml2_programming; + +- DC_FP_START(); +- + /* need to initialize copied instance for internal references to be correct */ + dml2_initialize_instance(&dst_dml_ctx->v21.dml_init); +- +- DC_FP_END(); + } + + bool dml21_create_copy(struct dml2_context **dst_dml_ctx, +@@ -466,8 +102,3 @@ bool dml21_create_copy(struct dml2_context **dst_dml_ctx, + return true; + } + +-void dml21_reinit(const struct dc *in_dc, struct dml2_context *dml_ctx, const struct dml2_configuration_options *config) +-{ +- dml21_init(in_dc, dml_ctx, config); +-} +- +diff --git a/drivers/gpu/drm/amd/display/dc/dml2_0/dml21/dml21_wrapper.h b/drivers/gpu/drm/amd/display/dc/dml2_0/dml21/dml21_wrapper.h +index b508bbcc0e16..c4813c51251b 100644 +--- a/drivers/gpu/drm/amd/display/dc/dml2_0/dml21/dml21_wrapper.h ++++ b/drivers/gpu/drm/amd/display/dc/dml2_0/dml21/dml21_wrapper.h +@@ -34,36 +34,6 @@ void dml21_copy(struct dml2_context *dst_dml_ctx, + struct dml2_context *src_dml_ctx); + bool dml21_create_copy(struct dml2_context **dst_dml_ctx, + struct dml2_context *src_dml_ctx); +-void dml21_reinit(const struct dc *in_dc, struct dml2_context *dml_ctx, const struct dml2_configuration_options *config); +- +-/** +- * dml21_validate - Determines if a display configuration is supported or not. +- * @in_dc: dc. +- * @context: dc_state to be validated. +- * @dml_ctx: dml21 context. +- * @validate_mode: DC_VALIDATE_MODE_ONLY and DC_VALIDATE_MODE_AND_STATE_INDEX +- * will not populate context.res_ctx. +- * +- * Based on fast_validate option internally would call: +- * +- * -dml21_mode_check_and_programming - for DC_VALIDATE_MODE_AND_PROGRAMMING option +- * Calculates if dc_state can be supported on the input display +- * configuration. If supported, generates the necessary HW +- * programming for the new dc_state. +- * +- * -dml21_check_mode_support - for DC_VALIDATE_MODE_ONLY and DC_VALIDATE_MODE_AND_STATE_INDEX option +- * Calculates if dc_state can be supported for the input display +- * config. +- * +- * Context: Two threads may not invoke this function concurrently unless they reference +- * separate dc_states for validation. +- * Return: True if mode is supported, false otherwise. +- */ +-bool dml21_validate(const struct dc *in_dc, struct dc_state *context, struct dml2_context *dml_ctx, +- enum dc_validate_mode validate_mode); +- +-/* Prepare hubp mcache_regs for hubp mcache ID and split coordinate programming */ +-void dml21_prepare_mcache_programming(struct dc *in_dc, struct dc_state *context, struct dml2_context *dml_ctx); + + /* Structure for inputting external SOCBB and DCNIP values for tool based debugging. */ + struct socbb_ip_params_external { +diff --git a/drivers/gpu/drm/amd/display/dc/dml2_0/dml21/dml21_wrapper_fpu.c b/drivers/gpu/drm/amd/display/dc/dml2_0/dml21/dml21_wrapper_fpu.c +new file mode 100644 +index 000000000000..d5885bbd14c4 +--- /dev/null ++++ b/drivers/gpu/drm/amd/display/dc/dml2_0/dml21/dml21_wrapper_fpu.c +@@ -0,0 +1,381 @@ ++// SPDX-License-Identifier: MIT ++// ++// Copyright 2024 Advanced Micro Devices, Inc. ++ ++#include "dml2_internal_types.h" ++#include "dml_top.h" ++#include "dml2_core_dcn4_calcs.h" ++#include "dml2_internal_shared_types.h" ++#include "dml21_utils.h" ++#include "dml21_translation_helper.h" ++#include "dml2_dc_resource_mgmt.h" ++#include "dml2_wrapper.h" ++#include "dml2_wrapper_fpu.h" ++#include "dml21_wrapper.h" ++#include "dml21_wrapper_fpu.h" ++ ++#define INVALID -1 ++ ++static void dml21_populate_configuration_options(const struct dc *in_dc, ++ struct dml2_context *dml_ctx, ++ const struct dml2_configuration_options *config) +{ -+ struct dcn31_hpo_dp_stream_encoder *hpo_dp_enc31; -+ struct vpg *vpg; -+ struct apg *apg; -+ uint32_t hpo_dp_inst; -+ uint32_t vpg_inst; -+ uint32_t apg_inst; -+ -+ ASSERT((eng_id >= ENGINE_ID_HPO_DP_0) && (eng_id <= ENGINE_ID_HPO_DP_3)); -+ hpo_dp_inst = eng_id - ENGINE_ID_HPO_DP_0; -+ -+ /* Mapping of VPG register blocks to HPO DP block instance: -+ * VPG[5] -> HPO_DP[0] -+ * VPG[6] -> HPO_DP[1] -+ * VPG[7] -> HPO_DP[2] -+ * VPG[8] -> HPO_DP[3] -+ */ -+ vpg_inst = hpo_dp_inst + 5; -+ -+ /* Mapping of APG register blocks to HPO DP block instance: -+ * APG[6] -> HPO_DP[0] -+ * APG[7] -> HPO_DP[1] -+ * APG[8] -> HPO_DP[2] -+ * APG[9] -> HPO_DP[3] -+ */ -+ apg_inst = hpo_dp_inst + 5; -+ -+ /* allocate HPO stream encoder and create VPG sub-block */ -+ hpo_dp_enc31 = kzalloc(sizeof(struct dcn31_hpo_dp_stream_encoder), GFP_KERNEL); -+ vpg = dcn42_vpg_create(ctx, vpg_inst); -+ apg = dcn42_apg_create(ctx, apg_inst); -+ -+ if (!hpo_dp_enc31 || !vpg || !apg) { -+ kfree(hpo_dp_enc31); -+ kfree(vpg); -+ kfree(apg); -+ return NULL; ++ dml_ctx->config = *config; ++ ++ /* UCLK P-State options */ ++ if (in_dc->debug.dml21_force_pstate_method) { ++ dml_ctx->config.pmo.force_pstate_method_enable = true; ++ for (int i = 0; i < MAX_PIPES; i++) ++ dml_ctx->config.pmo.force_pstate_method_values[i] = in_dc->debug.dml21_force_pstate_method_values[i]; ++ } else { ++ dml_ctx->config.pmo.force_pstate_method_enable = false; + } -+ -+#undef REG_STRUCT -+#define REG_STRUCT hpo_dp_stream_enc_regs -+ hpo_dp_stream_encoder_reg_init(0), -+ hpo_dp_stream_encoder_reg_init(1), -+ hpo_dp_stream_encoder_reg_init(2), -+ hpo_dp_stream_encoder_reg_init(3); -+ -+ dcn31_hpo_dp_stream_encoder_construct(hpo_dp_enc31, ctx, ctx->dc_bios, -+ hpo_dp_inst, eng_id, vpg, apg, -+ &hpo_dp_stream_enc_regs[hpo_dp_inst], -+ &hpo_dp_se_shift, &hpo_dp_se_mask); -+ -+ return &hpo_dp_enc31->base; -+} -+ -+static struct hpo_dp_link_encoder *dcn42_hpo_dp_link_encoder_create( -+ uint8_t inst, -+ struct dc_context *ctx) -+{ -+ struct dcn31_hpo_dp_link_encoder *hpo_dp_enc31; -+ -+ /* allocate HPO link encoder */ -+ hpo_dp_enc31 = kzalloc(sizeof(struct dcn31_hpo_dp_link_encoder), GFP_KERNEL); -+ if (!hpo_dp_enc31) -+ return NULL; /* out of memory */ -+ -+#undef REG_STRUCT -+#define REG_STRUCT hpo_dp_link_enc_regs -+ hpo_dp_link_encoder_reg_init(0), -+ hpo_dp_link_encoder_reg_init(1), -+ hpo_dp_link_encoder_reg_init(2), -+ hpo_dp_link_encoder_reg_init(3); -+ -+ hpo_dp_link_encoder42_construct(hpo_dp_enc31, ctx, inst, -+ &hpo_dp_link_enc_regs[inst], -+ &hpo_dp_le_shift, &hpo_dp_le_mask); -+ -+ return &hpo_dp_enc31->base; +} + -+static struct dce_hwseq *dcn42_hwseq_create( -+ struct dc_context *ctx) ++void dml21_init(const struct dc *in_dc, struct dml2_context *dml_ctx, const struct dml2_configuration_options *config) +{ -+ struct dce_hwseq *hws = kzalloc(sizeof(struct dce_hwseq), GFP_KERNEL); ++ dml_ctx->architecture = dml2_architecture_21; + -+#undef REG_STRUCT -+#define REG_STRUCT hwseq_reg -+ hwseq_reg_init(); ++ dml21_populate_configuration_options(in_dc, dml_ctx, config); + -+ if (hws) { -+ hws->ctx = ctx; -+ hws->regs = &hwseq_reg; -+ hws->shifts = &hwseq_shift; -+ hws->masks = &hwseq_mask; -+ } ++ dml21_populate_dml_init_params(&dml_ctx->v21.dml_init, &dml_ctx->config, in_dc); + -+ return hws; ++ dml2_initialize_instance(&dml_ctx->v21.dml_init); +} + -+static const struct resource_create_funcs res_create_funcs = { -+ .read_dce_straps = read_dce_straps, -+ .create_audio = dcn42_create_audio, -+ .create_stream_encoder = dcn42_stream_encoder_create, -+ .create_hpo_dp_stream_encoder = dcn42_hpo_dp_stream_encoder_create, -+ .create_hpo_dp_link_encoder = dcn42_hpo_dp_link_encoder_create, -+ .create_hwseq = dcn42_hwseq_create, -+}; -+ -+static void dcn42_dsc_destroy(struct display_stream_compressor **dsc) ++void dml21_reinit(const struct dc *in_dc, struct dml2_context *dml_ctx, const struct dml2_configuration_options *config) +{ -+ kfree(container_of(*dsc, struct dcn401_dsc, base)); -+ *dsc = NULL; ++ dml21_init(in_dc, dml_ctx, config); +} + -+static void dcn42_resource_destruct(struct dcn42_resource_pool *pool) ++static void dml21_calculate_rq_and_dlg_params(const struct dc *dc, struct dc_state *context, struct resource_context *out_new_hw_state, ++ struct dml2_context *in_ctx, unsigned int pipe_cnt) +{ -+ unsigned int i; ++ unsigned int dml_prog_idx = 0, dc_pipe_index = 0, num_dpps_required = 0; ++ struct dml2_per_plane_programming *pln_prog = NULL; ++ struct dml2_per_stream_programming *stream_prog = NULL; ++ struct pipe_ctx *dc_main_pipes[__DML2_WRAPPER_MAX_STREAMS_PLANES__]; ++ struct pipe_ctx *dc_phantom_pipes[__DML2_WRAPPER_MAX_STREAMS_PLANES__] = {0}; ++ int num_pipes; ++ unsigned int dml_phantom_prog_idx; + -+ for (i = 0; i < pool->base.stream_enc_count; i++) { -+ if (pool->base.stream_enc[i] != NULL) { -+ if (pool->base.stream_enc[i]->vpg != NULL) { -+ kfree(DCN31_VPG_FROM_VPG(pool->base.stream_enc[i]->vpg)); -+ pool->base.stream_enc[i]->vpg = NULL; -+ } -+ if (pool->base.stream_enc[i]->apg != NULL) { -+ kfree(DCN31_APG_FROM_APG(pool->base.stream_enc[i]->apg)); -+ pool->base.stream_enc[i]->apg = NULL; -+ } -+ kfree(DCN10STRENC_FROM_STRENC(pool->base.stream_enc[i])); -+ pool->base.stream_enc[i] = NULL; -+ } -+ } ++ context->bw_ctx.bw.dcn.clk.dppclk_khz = 0; + -+ for (i = 0; i < pool->base.hpo_dp_stream_enc_count; i++) { -+ if (pool->base.hpo_dp_stream_enc[i] != NULL) { -+ if (pool->base.hpo_dp_stream_enc[i]->vpg != NULL) { -+ kfree(DCN31_VPG_FROM_VPG(pool->base.hpo_dp_stream_enc[i]->vpg)); -+ pool->base.hpo_dp_stream_enc[i]->vpg = NULL; -+ } -+ if (pool->base.hpo_dp_stream_enc[i]->apg != NULL) { -+ kfree(DCN31_APG_FROM_APG(pool->base.hpo_dp_stream_enc[i]->apg)); -+ pool->base.hpo_dp_stream_enc[i]->apg = NULL; -+ } -+ kfree(DCN3_1_HPO_DP_STREAM_ENC_FROM_HPO_STREAM_ENC(pool->base.hpo_dp_stream_enc[i])); -+ pool->base.hpo_dp_stream_enc[i] = NULL; -+ } -+ } ++ /* copy global DCHUBBUB arbiter registers */ ++ memcpy(&context->bw_ctx.bw.dcn.arb_regs, &in_ctx->v21.mode_programming.programming->global_regs.arb_regs, sizeof(struct dml2_display_arb_regs)); + -+ for (i = 0; i < pool->base.hpo_dp_link_enc_count; i++) { -+ if (pool->base.hpo_dp_link_enc[i] != NULL) { -+ kfree(DCN3_1_HPO_DP_LINK_ENC_FROM_HPO_LINK_ENC(pool->base.hpo_dp_link_enc[i])); -+ pool->base.hpo_dp_link_enc[i] = NULL; -+ } -+ } ++ /* legacy only */ ++ context->bw_ctx.bw.dcn.compbuf_size_kb = (int)in_ctx->v21.mode_programming.programming->global_regs.arb_regs.compbuf_size * 64; + -+ for (i = 0; i < pool->base.res_cap->num_dsc; i++) { -+ if (pool->base.dscs[i] != NULL) -+ dcn42_dsc_destroy(&pool->base.dscs[i]); -+ } ++ context->bw_ctx.bw.dcn.mall_ss_size_bytes = 0; ++ context->bw_ctx.bw.dcn.mall_ss_psr_active_size_bytes = 0; ++ context->bw_ctx.bw.dcn.mall_subvp_size_bytes = 0; + -+ if (pool->base.mpc != NULL) { -+ kfree(TO_DCN20_MPC(pool->base.mpc)); -+ pool->base.mpc = NULL; -+ } -+ if (pool->base.hubbub != NULL) { -+ kfree(TO_DCN20_HUBBUB(pool->base.hubbub)); -+ pool->base.hubbub = NULL; -+ } -+ for (i = 0; i < pool->base.pipe_count; i++) { -+ if (pool->base.dpps[i] != NULL) -+ dcn42_dpp_destroy(&pool->base.dpps[i]); ++ /* phantom's start after main planes */ ++ dml_phantom_prog_idx = in_ctx->v21.mode_programming.programming->display_config.num_planes; + -+ if (pool->base.ipps[i] != NULL) -+ pool->base.ipps[i]->funcs->ipp_destroy(&pool->base.ipps[i]); ++ for (dml_prog_idx = 0; dml_prog_idx < DML2_MAX_PLANES; dml_prog_idx++) { ++ pln_prog = &in_ctx->v21.mode_programming.programming->plane_programming[dml_prog_idx]; + -+ if (pool->base.hubps[i] != NULL) { -+ kfree(TO_DCN20_HUBP(pool->base.hubps[i])); -+ pool->base.hubps[i] = NULL; -+ } ++ if (!pln_prog->plane_descriptor) ++ continue; + -+ if (pool->base.irqs != NULL) -+ dal_irq_service_destroy(&pool->base.irqs); -+ } ++ stream_prog = &in_ctx->v21.mode_programming.programming->stream_programming[pln_prog->plane_descriptor->stream_index]; ++ num_dpps_required = pln_prog->num_dpps_required; + -+ for (i = 0; i < pool->base.res_cap->num_ddc; i++) { -+ if (pool->base.engines[i] != NULL) -+ dce110_engine_destroy(&pool->base.engines[i]); -+ if (pool->base.hw_i2cs[i] != NULL) { -+ kfree(pool->base.hw_i2cs[i]); -+ pool->base.hw_i2cs[i] = NULL; -+ } -+ if (pool->base.sw_i2cs[i] != NULL) { -+ kfree(pool->base.sw_i2cs[i]); -+ pool->base.sw_i2cs[i] = NULL; ++ if (num_dpps_required == 0) { ++ continue; + } -+ } ++ num_pipes = dml21_find_dc_pipes_for_plane(dc, context, in_ctx, dc_main_pipes, dc_phantom_pipes, dml_prog_idx); + -+ for (i = 0; i < pool->base.res_cap->num_opp; i++) { -+ if (pool->base.opps[i] != NULL) -+ pool->base.opps[i]->funcs->opp_destroy(&pool->base.opps[i]); -+ } ++ if (num_pipes <= 0) ++ continue; + -+ for (i = 0; i < pool->base.res_cap->num_timing_generator; i++) { -+ if (pool->base.timing_generators[i] != NULL) { -+ kfree(DCN10TG_FROM_TG(pool->base.timing_generators[i])); -+ pool->base.timing_generators[i] = NULL; -+ } -+ } ++ /* program each pipe */ ++ for (dc_pipe_index = 0; dc_pipe_index < num_pipes; dc_pipe_index++) { ++ dml21_program_dc_pipe(in_ctx, context, dc_main_pipes[dc_pipe_index], pln_prog, stream_prog); + -+ for (i = 0; i < pool->base.res_cap->num_dwb; i++) { -+ if (pool->base.dwbc[i] != NULL) { -+ kfree(TO_DCN30_DWBC(pool->base.dwbc[i])); -+ pool->base.dwbc[i] = NULL; -+ } -+ if (pool->base.mcif_wb[i] != NULL) { -+ kfree(TO_DCN30_MMHUBBUB(pool->base.mcif_wb[i])); -+ pool->base.mcif_wb[i] = NULL; ++ if (pln_prog->phantom_plane.valid && dc_phantom_pipes[dc_pipe_index]) { ++ dml21_program_dc_pipe(in_ctx, context, dc_phantom_pipes[dc_pipe_index], pln_prog, stream_prog); ++ } + } -+ } -+ -+ for (i = 0; i < pool->base.audio_count; i++) { -+ if (pool->base.audios[i]) -+ dce_aud_destroy(&pool->base.audios[i]); -+ } + -+ for (i = 0; i < pool->base.clk_src_count; i++) { -+ if (pool->base.clock_sources[i] != NULL) { -+ dcn20_clock_source_destroy(&pool->base.clock_sources[i]); -+ pool->base.clock_sources[i] = NULL; -+ } -+ } ++ /* copy per plane mcache allocation */ ++ memcpy(&context->bw_ctx.bw.dcn.mcache_allocations[dml_prog_idx], &pln_prog->mcache_allocation, sizeof(struct dml2_mcache_surface_allocation)); ++ if (pln_prog->phantom_plane.valid) { ++ memcpy(&context->bw_ctx.bw.dcn.mcache_allocations[dml_phantom_prog_idx], ++ &pln_prog->phantom_plane.mcache_allocation, ++ sizeof(struct dml2_mcache_surface_allocation)); + -+ for (i = 0; i < pool->base.res_cap->num_mpc_3dlut; i++) { -+ if (pool->base.mpc_lut[i] != NULL) { -+ dc_3dlut_func_release(pool->base.mpc_lut[i]); -+ pool->base.mpc_lut[i] = NULL; ++ dml_phantom_prog_idx++; + } -+ if (pool->base.mpc_shaper[i] != NULL) { -+ dc_transfer_func_release(pool->base.mpc_shaper[i]); -+ pool->base.mpc_shaper[i] = NULL; -+ } -+ } -+ -+ if (pool->base.dp_clock_source != NULL) { -+ dcn20_clock_source_destroy(&pool->base.dp_clock_source); -+ pool->base.dp_clock_source = NULL; + } + -+ for (i = 0; i < pool->base.res_cap->num_timing_generator; i++) { -+ if (pool->base.multiple_abms[i] != NULL) -+ dce_abm_destroy(&pool->base.multiple_abms[i]); ++ /* assign global clocks */ ++ context->bw_ctx.bw.dcn.clk.bw_dppclk_khz = context->bw_ctx.bw.dcn.clk.dppclk_khz; ++ context->bw_ctx.bw.dcn.clk.bw_dispclk_khz = context->bw_ctx.bw.dcn.clk.dispclk_khz; ++ if (in_ctx->v21.dml_init.soc_bb.clk_table.dispclk.num_clk_values > 1) { ++ context->bw_ctx.bw.dcn.clk.max_supported_dispclk_khz = ++ in_ctx->v21.dml_init.soc_bb.clk_table.dispclk.clk_values_khz[in_ctx->v21.dml_init.soc_bb.clk_table.dispclk.num_clk_values] * 1000; ++ } else { ++ context->bw_ctx.bw.dcn.clk.max_supported_dispclk_khz = in_ctx->v21.dml_init.soc_bb.clk_table.dispclk.clk_values_khz[0] * 1000; + } + -+ if (pool->base.psr != NULL) -+ dmub_psr_destroy(&pool->base.psr); -+ -+ if (pool->base.pg_cntl != NULL) -+ dcn_pg_cntl_destroy(&pool->base.pg_cntl); -+ if (pool->base.dccg != NULL) -+ dcn_dccg_destroy(&pool->base.dccg); -+ -+ if (pool->base.oem_device != NULL) { -+ struct dc *dc = pool->base.oem_device->ctx->dc; -+ -+ dc->link_srv->destroy_ddc_service(&pool->base.oem_device); ++ if (in_ctx->v21.dml_init.soc_bb.clk_table.dppclk.num_clk_values > 1) { ++ context->bw_ctx.bw.dcn.clk.max_supported_dppclk_khz = ++ in_ctx->v21.dml_init.soc_bb.clk_table.dppclk.clk_values_khz[in_ctx->v21.dml_init.soc_bb.clk_table.dppclk.num_clk_values] * 1000; ++ } else { ++ context->bw_ctx.bw.dcn.clk.max_supported_dppclk_khz = in_ctx->v21.dml_init.soc_bb.clk_table.dppclk.clk_values_khz[0] * 1000; + } -+} + -+static void dcn42_build_pipe_pix_clk_params(struct pipe_ctx *pipe_ctx) -+{ -+ const struct dc_stream_state *stream = pipe_ctx->stream; -+ struct dc_link *link = stream->link; -+ struct link_encoder *link_enc = pipe_ctx->link_res.dio_link_enc; -+ struct pixel_clk_params *pixel_clk_params = &pipe_ctx->stream_res.pix_clk_params; -+ -+ pixel_clk_params->requested_pix_clk_100hz = stream->timing.pix_clk_100hz; -+ -+ if (pipe_ctx->dsc_padding_params.dsc_hactive_padding != 0) -+ pixel_clk_params->requested_pix_clk_100hz = pipe_ctx->dsc_padding_params.dsc_pix_clk_100hz; -+ -+ if (!pipe_ctx->stream->ctx->dc->config.unify_link_enc_assignment) -+ link_enc = link_enc_cfg_get_link_enc(link); -+ if (link_enc) -+ pixel_clk_params->encoder_object_id = link_enc->id; -+ -+ pixel_clk_params->signal_type = pipe_ctx->stream->signal; -+ pixel_clk_params->controller_id = pipe_ctx->stream_res.tg->inst + 1; -+ /* TODO: un-hardcode*/ -+ -+ /* TODO - DP2.0 HW: calculate requested_sym_clk for UHBR rates */ -+ -+ pixel_clk_params->requested_sym_clk = LINK_RATE_LOW * -+ LINK_RATE_REF_FREQ_IN_KHZ; -+ pixel_clk_params->flags.ENABLE_SS = 0; -+ pixel_clk_params->color_depth = -+ stream->timing.display_color_depth; -+ pixel_clk_params->flags.DISPLAY_BLANKED = 1; -+ pixel_clk_params->pixel_encoding = stream->timing.pixel_encoding; -+ -+ if (stream->timing.pixel_encoding == PIXEL_ENCODING_YCBCR422) -+ pixel_clk_params->color_depth = COLOR_DEPTH_888; -+ -+ if (stream->timing.timing_3d_format == TIMING_3D_FORMAT_HW_FRAME_PACKING) -+ pixel_clk_params->requested_pix_clk_100hz *= 2; -+ if (dc_is_tmds_signal(stream->signal) && -+ stream->timing.pixel_encoding == PIXEL_ENCODING_YCBCR420) -+ pixel_clk_params->requested_pix_clk_100hz /= 2; -+ -+ pipe_ctx->clock_source->funcs->get_pix_clk_dividers( -+ pipe_ctx->clock_source, -+ &pipe_ctx->stream_res.pix_clk_params, -+ &pipe_ctx->pll_settings); -+ -+ pixel_clk_params->dio_se_pix_per_cycle = 1; -+ if (dc_is_tmds_signal(stream->signal) && -+ stream->timing.pixel_encoding == PIXEL_ENCODING_YCBCR420) { -+ pixel_clk_params->dio_se_pix_per_cycle = 2; -+ } else if (dc_is_dp_signal(stream->signal)) { -+ /* round up to nearest power of 2, or max at 8 pixels per cycle */ -+ if (pixel_clk_params->requested_pix_clk_100hz > 4 * stream->ctx->dc->clk_mgr->dprefclk_khz * 10) { -+ pixel_clk_params->dio_se_pix_per_cycle = 8; -+ } else if (pixel_clk_params->requested_pix_clk_100hz > 2 * stream->ctx->dc->clk_mgr->dprefclk_khz * 10) { -+ pixel_clk_params->dio_se_pix_per_cycle = 4; -+ } else if (pixel_clk_params->requested_pix_clk_100hz > stream->ctx->dc->clk_mgr->dprefclk_khz * 10) { -+ pixel_clk_params->dio_se_pix_per_cycle = 2; -+ } else { -+ pixel_clk_params->dio_se_pix_per_cycle = 1; -+ } ++ /* get global mall allocation */ ++ if (dc->res_pool->funcs->calculate_mall_ways_from_bytes) { ++ context->bw_ctx.bw.dcn.clk.num_ways = dc->res_pool->funcs->calculate_mall_ways_from_bytes(dc, context->bw_ctx.bw.dcn.mall_subvp_size_bytes); ++ } else { ++ context->bw_ctx.bw.dcn.clk.num_ways = 0; + } +} + -+static bool dcn42_dwbc_create(struct dc_context *ctx, struct resource_pool *pool) ++static void dml21_prepare_mcache_params(struct dml2_context *dml_ctx, struct dc_state *context, struct dc_mcache_params *mcache_params) +{ -+ int i; -+ uint32_t dwb_count = pool->res_cap->num_dwb; -+ -+ for (i = 0; i < dwb_count; i++) { -+ struct dcn30_dwbc *dwbc42 = kzalloc(sizeof(struct dcn30_dwbc), -+ GFP_KERNEL); -+ -+ if (!dwbc42) { -+ dm_error("DC: failed to create dwbc42!\n"); -+ return false; ++ int dc_plane_idx = 0; ++ int dml_prog_idx, stream_idx, plane_idx; ++ struct dml2_per_plane_programming *pln_prog = NULL; ++ ++ for (stream_idx = 0; stream_idx < context->stream_count; stream_idx++) { ++ for (plane_idx = 0; plane_idx < context->stream_status[stream_idx].plane_count; plane_idx++) { ++ dml_prog_idx = map_plane_to_dml21_display_cfg(dml_ctx, context->streams[stream_idx]->stream_id, context->stream_status[stream_idx].plane_states[plane_idx], context); ++ if (dml_prog_idx == INVALID) { ++ continue; ++ } ++ pln_prog = &dml_ctx->v21.mode_programming.programming->plane_programming[dml_prog_idx]; ++ mcache_params[dc_plane_idx].valid = pln_prog->mcache_allocation.valid; ++ mcache_params[dc_plane_idx].num_mcaches_plane0 = pln_prog->mcache_allocation.num_mcaches_plane0; ++ mcache_params[dc_plane_idx].num_mcaches_plane1 = pln_prog->mcache_allocation.num_mcaches_plane1; ++ mcache_params[dc_plane_idx].requires_dedicated_mall_mcache = pln_prog->mcache_allocation.requires_dedicated_mall_mcache; ++ mcache_params[dc_plane_idx].last_slice_sharing.plane0_plane1 = pln_prog->mcache_allocation.last_slice_sharing.plane0_plane1; ++ memcpy(mcache_params[dc_plane_idx].mcache_x_offsets_plane0, ++ pln_prog->mcache_allocation.mcache_x_offsets_plane0, ++ sizeof(int) * (DML2_MAX_MCACHES + 1)); ++ memcpy(mcache_params[dc_plane_idx].mcache_x_offsets_plane1, ++ pln_prog->mcache_allocation.mcache_x_offsets_plane1, ++ sizeof(int) * (DML2_MAX_MCACHES + 1)); ++ dc_plane_idx++; + } -+ -+#undef REG_STRUCT -+#define REG_STRUCT dwbc401_regs -+ dwbc_regs_dcn401_init(0); -+ -+ dcn30_dwbc_construct(dwbc42, ctx, -+ &dwbc401_regs[i], -+ &dwbc401_shift, -+ &dwbc401_mask, -+ i); -+ -+ pool->dwbc[i] = &dwbc42->base; + } -+ return true; +} + -+static void dcn42_mmhubbub_init(struct dcn30_mmhubbub *mcif_wb30, -+ struct dc_context *ctx) ++static bool dml21_check_mode_support(const struct dc *in_dc, struct dc_state *context, struct dml2_context *dml_ctx) +{ -+ dcn42_mmhubbub_set_fgcg( -+ mcif_wb30, -+ ctx->dc->debug.enable_fine_grain_clock_gating.bits.mmhubbub); -+} ++ bool is_supported = false; ++ struct dml2_initialize_instance_in_out *dml_init = &dml_ctx->v21.dml_init; ++ struct dml2_check_mode_supported_in_out *mode_support = &dml_ctx->v21.mode_support; + -+static bool dcn42_mmhubbub_create(struct dc_context *ctx, struct resource_pool *pool) -+{ -+ int i; -+ uint32_t pipe_count = pool->res_cap->num_dwb; ++ memset(&dml_ctx->v21.display_config, 0, sizeof(struct dml2_display_cfg)); ++ memset(&dml_ctx->v21.dml_to_dc_pipe_mapping, 0, sizeof(struct dml2_dml_to_dc_pipe_mapping)); ++ memset(&dml_ctx->v21.mode_programming.dml2_instance->scratch.check_mode_supported_locals.mode_support_params, 0, sizeof(struct dml2_core_mode_support_in_out)); + -+ for (i = 0; i < pipe_count; i++) { -+ struct dcn30_mmhubbub *mcif_wb30 = kzalloc(sizeof(struct dcn30_mmhubbub), -+ GFP_KERNEL); ++ if (!context || context->stream_count == 0) ++ return true; + -+ if (!mcif_wb30) { -+ dm_error("DC: failed to create mcif_wb30!\n"); -+ return false; -+ } ++ /* Scrub phantom's from current dc_state */ ++ dml_ctx->config.svp_pstate.callbacks.remove_phantom_streams_and_planes(in_dc, context); ++ dml_ctx->config.svp_pstate.callbacks.release_phantom_streams_and_planes(in_dc, context); + -+#undef REG_STRUCT -+#define REG_STRUCT mcif_wb35_regs -+ mcif_wb_regs_dcn3_init(0); ++ mode_support->dml2_instance = dml_init->dml2_instance; ++ dml21_map_dc_state_into_dml_display_cfg(in_dc, context, dml_ctx); ++ dml_ctx->v21.mode_programming.dml2_instance->scratch.build_mode_programming_locals.mode_programming_params.programming = dml_ctx->v21.mode_programming.programming; + -+ dcn35_mmhubbub_construct(mcif_wb30, ctx, -+ &mcif_wb35_regs[i], -+ &mcif_wb35_shift, -+ &mcif_wb35_mask, -+ i); ++ is_supported = dml2_check_mode_supported(mode_support); + -+ dcn42_mmhubbub_init(mcif_wb30, ctx); ++ if (!is_supported) ++ return false; + -+ pool->mcif_wb[i] = &mcif_wb30->base; -+ } + return true; +} + -+static struct display_stream_compressor *dcn42_dsc_create( -+ struct dc_context *ctx, uint32_t inst) ++static bool dml21_mode_check_and_programming(const struct dc *in_dc, struct dc_state *context, struct dml2_context *dml_ctx) +{ -+ struct dcn401_dsc *dsc = -+ kzalloc(sizeof(struct dcn401_dsc), GFP_KERNEL); ++ bool result = false; ++ struct dml2_build_mode_programming_in_out *mode_programming = &dml_ctx->v21.mode_programming; ++ struct dc_mcache_params mcache_params[MAX_PLANES] = {0}; ++ ++ memset(&dml_ctx->v21.display_config, 0, sizeof(struct dml2_display_cfg)); ++ memset(&dml_ctx->v21.dml_to_dc_pipe_mapping, 0, sizeof(struct dml2_dml_to_dc_pipe_mapping)); ++ memset(&dml_ctx->v21.mode_programming.dml2_instance->scratch.build_mode_programming_locals.mode_programming_params, 0, sizeof(struct dml2_core_mode_programming_in_out)); ++ ++ if (!context) ++ return true; + -+ if (!dsc) { -+ BREAK_TO_DEBUGGER(); -+ return NULL; ++ if (context->stream_count == 0) { ++ dml21_init_min_clocks_for_dc_state(dml_ctx, context); ++ dml21_build_fams2_programming(in_dc, context, dml_ctx); ++ return true; + } + -+#undef REG_STRUCT -+#define REG_STRUCT dsc_regs -+ dsc_regs_init(0), -+ dsc_regs_init(1), -+ dsc_regs_init(2), -+ dsc_regs_init(3); ++ /* scrub phantom's from current dc_state */ ++ dml_ctx->config.svp_pstate.callbacks.remove_phantom_streams_and_planes(in_dc, context); ++ dml_ctx->config.svp_pstate.callbacks.release_phantom_streams_and_planes(in_dc, context); + -+ dsc401_construct(dsc, ctx, inst, &dsc_regs[inst], &dsc_shift, &dsc_mask); -+ dsc401_set_fgcg(dsc, ctx->dc->debug.enable_fine_grain_clock_gating.bits.dsc); ++ /* Populate stream, plane mappings and other fields in display config. */ ++ result = dml21_map_dc_state_into_dml_display_cfg(in_dc, context, dml_ctx); ++ if (!result) ++ return false; + -+ dsc->max_image_width = 5760; ++ result = dml2_build_mode_programming(mode_programming); + -+ return &dsc->base; -+} ++ if (!result) ++ return false; + -+static void dcn42_destroy_resource_pool(struct resource_pool **pool) -+{ -+ struct dcn42_resource_pool *dcn42_pool = TO_DCN42_RES_POOL(*pool); ++ /* Check and map HW resources */ ++ if (result && !dml_ctx->config.skip_hw_state_mapping) { ++ dml21_map_hw_resources(dml_ctx); ++ dml2_map_dc_pipes(dml_ctx, context, NULL, &dml_ctx->v21.dml_to_dc_pipe_mapping, in_dc->current_state); ++ /* if subvp phantoms are present, expand them into dc context */ ++ dml21_handle_phantom_streams_planes(in_dc, context, dml_ctx); + -+ dcn42_resource_destruct(dcn42_pool); -+ kfree(dcn42_pool); -+ *pool = NULL; -+} ++ if (in_dc->res_pool->funcs->program_mcache_pipe_config) { ++ //Prepare mcache params for each plane based on mcache output from DML ++ dml21_prepare_mcache_params(dml_ctx, context, mcache_params); + -+static struct dc_cap_funcs cap_funcs = { -+ .get_dcc_compression_cap = dcn20_get_dcc_compression_cap}; ++ //populate mcache regs to each pipe ++ dml_ctx->config.callbacks.allocate_mcache(context, mcache_params); ++ } ++ } + -+static void dcn42_update_bw_bounding_box_fpu(struct dc *dc, struct clk_bw_params *bw_params) -+{ -+ dc_assert_fp_enabled(); ++ /* Copy DML CLK, WM and REG outputs to bandwidth context */ ++ if (result && !dml_ctx->config.skip_hw_state_mapping) { ++ dml21_calculate_rq_and_dlg_params(in_dc, context, &context->res_ctx, dml_ctx, in_dc->res_pool->pipe_count); ++ dml21_copy_clocks_to_dc_state(dml_ctx, context); ++ dml21_extract_watermark_sets(in_dc, &context->bw_ctx.bw.dcn.watermarks, dml_ctx); ++ dml21_build_fams2_programming(in_dc, context, dml_ctx); ++ } + -+ if (dc->current_state && dc->current_state->bw_ctx.dml2) -+ dml2_reinit(dc, &dc->dml2_options, &dc->current_state->bw_ctx.dml2); ++ return true; +} + -+static void dcn42_update_bw_bounding_box(struct dc *dc, struct clk_bw_params *bw_params) -+{ -+ DC_FP_START(); -+ dcn42_update_bw_bounding_box_fpu(dc, bw_params); -+ DC_FP_END(); -+} -+enum dc_status dcn42_validate_bandwidth(struct dc *dc, -+ struct dc_state *context, -+ enum dc_validate_mode validate_mode) ++bool dml21_validate(const struct dc *in_dc, struct dc_state *context, struct dml2_context *dml_ctx, ++ enum dc_validate_mode validate_mode) +{ + bool out = false; + -+ DC_FP_START(); -+ -+ out = dml2_validate(dc, context, context->bw_ctx.dml2, -+ validate_mode); -+ -+ if (validate_mode == DC_VALIDATE_MODE_AND_PROGRAMMING) { -+ /*not required for mode enumeration*/ -+ dcn42_decide_zstate_support(dc, context); -+ } -+ -+ DC_FP_END(); ++ /* Use dml21_check_mode_support for DC_VALIDATE_MODE_ONLY and DC_VALIDATE_MODE_AND_STATE_INDEX path */ ++ if (validate_mode != DC_VALIDATE_MODE_AND_PROGRAMMING) ++ out = dml21_check_mode_support(in_dc, context, dml_ctx); ++ else ++ out = dml21_mode_check_and_programming(in_dc, context, dml_ctx); + -+ return out ? DC_OK : DC_FAIL_BANDWIDTH_VALIDATE; -+} -+void dcn42_prepare_mcache_programming(struct dc *dc, -+ struct dc_state *context) -+{ -+ if (dc->debug.using_dml21) { -+ DC_FP_START(); -+ dml2_prepare_mcache_programming(dc, context, -+ context->power_source == DC_POWER_SOURCE_DC ? -+ context->bw_ctx.dml2_dc_power_source : context->bw_ctx.dml2); -+ DC_FP_END(); -+ } ++ return out; +} -+/* Create a minimal link encoder object not associated with a particular -+ * physical connector. -+ * resource_funcs.link_enc_create_minimal -+ */ -+static struct link_encoder *dcn42_link_enc_create_minimal( -+ struct dc_context *ctx, enum engine_id eng_id) -+{ -+ struct dcn20_link_encoder *enc20; -+ -+ if ((eng_id - ENGINE_ID_DIGA) > ctx->dc->res_pool->res_cap->num_dig_link_enc) -+ return NULL; + -+ enc20 = kzalloc(sizeof(struct dcn20_link_encoder), GFP_KERNEL); -+ if (!enc20) -+ return NULL; -+ -+ dcn31_link_encoder_construct_minimal( -+ enc20, -+ ctx, -+ &link_enc_feature, -+ &link_enc_regs[eng_id - ENGINE_ID_DIGA], -+ eng_id); -+ -+ return &enc20->enc10.base; -+} -+static void dcn42_get_panel_config_defaults(struct dc_panel_config *panel_config) -+{ -+ *panel_config = dcn42_panel_config_defaults; -+} -+static unsigned int dcn42_get_max_hw_cursor_size(const struct dc *dc, -+ struct dc_state *state, -+ const struct dc_stream_state *stream) -+{ -+ return dc->caps.max_cursor_size; -+} -+static struct resource_funcs dcn42_res_pool_funcs = { -+ .destroy = dcn42_destroy_resource_pool, -+ .link_enc_create = dcn42_link_encoder_create, -+ .link_enc_create_minimal = dcn42_link_enc_create_minimal, -+ .link_encs_assign = link_enc_cfg_link_encs_assign, -+ .link_enc_unassign = link_enc_cfg_link_enc_unassign, -+ .panel_cntl_create = dcn32_panel_cntl_create, -+ .validate_bandwidth = dcn42_validate_bandwidth, -+ .calculate_wm_and_dlg = NULL, -+ .populate_dml_pipes = NULL, -+ .acquire_free_pipe_as_secondary_dpp_pipe = dcn32_acquire_free_pipe_as_secondary_dpp_pipe, -+ .acquire_free_pipe_as_secondary_opp_head = dcn32_acquire_free_pipe_as_secondary_opp_head, -+ .release_pipe = dcn20_release_pipe, -+ .add_stream_to_ctx = dcn30_add_stream_to_ctx, -+ .add_dsc_to_stream_resource = dcn20_add_dsc_to_stream_resource, -+ .remove_stream_from_ctx = dcn20_remove_stream_from_ctx, -+ .populate_dml_writeback_from_context = dcn30_populate_dml_writeback_from_context, -+ .set_mcif_arb_params = dcn30_set_mcif_arb_params, -+ .find_first_free_match_stream_enc_for_link = dcn10_find_first_free_match_stream_enc_for_link, -+ .acquire_post_bldn_3dlut = dcn32_acquire_post_bldn_3dlut, -+ .release_post_bldn_3dlut = dcn32_release_post_bldn_3dlut, -+ .update_bw_bounding_box = dcn42_update_bw_bounding_box, -+ .patch_unknown_plane_state = dcn35_patch_unknown_plane_state, -+ .get_panel_config_defaults = dcn42_get_panel_config_defaults, -+ .get_preferred_eng_id_dpia = dcn42_get_preferred_eng_id_dpia, -+ .update_soc_for_wm_a = dcn30_update_soc_for_wm_a, -+ .add_phantom_pipes = dcn32_add_phantom_pipes, -+ .calculate_mall_ways_from_bytes = dcn32_calculate_mall_ways_from_bytes, -+ .prepare_mcache_programming = dcn42_prepare_mcache_programming, -+ .build_pipe_pix_clk_params = dcn42_build_pipe_pix_clk_params, -+ .get_power_profile = dcn401_get_power_profile, -+ .get_vstartup_for_pipe = dcn401_get_vstartup_for_pipe, -+ .get_max_hw_cursor_size = dcn42_get_max_hw_cursor_size, -+ .get_default_tiling_info = dcn10_get_default_tiling_info -+}; -+ -+static uint32_t read_pipe_fuses(struct dc_context *ctx) ++void dml21_prepare_mcache_programming(struct dc *in_dc, struct dc_state *context, struct dml2_context *dml_ctx) +{ -+ uint32_t value = REG_READ(CC_DC_PIPE_DIS); -+ -+ if (value == 0 && ctx->dce_environment == DCE_ENV_DIAG) -+ value = 0xF; -+ /* DCN401 support max 4 pipes */ -+ value = value & 0xf; -+ return value; -+} ++ unsigned int dml_prog_idx, dml_phantom_prog_idx, dc_pipe_index; ++ int num_pipes; ++ struct pipe_ctx *dc_main_pipes[__DML2_WRAPPER_MAX_STREAMS_PLANES__]; ++ struct pipe_ctx *dc_phantom_pipes[__DML2_WRAPPER_MAX_STREAMS_PLANES__] = {0}; + -+static bool dcn42_resource_construct( -+ uint8_t num_virtual_links, -+ struct dc *dc, -+ struct dcn42_resource_pool *pool) -+{ -+ int i, j; -+ struct dc_context *ctx = dc->ctx; -+ struct irq_service_init_data init_data; -+ uint32_t pipe_fuses; -+ uint32_t num_pipes; -+ -+#undef REG_STRUCT -+#define REG_STRUCT bios_regs -+ bios_regs_init(); -+ -+#undef REG_STRUCT -+#define REG_STRUCT clk_src_regs -+ clk_src_regs_init(0, A), -+ clk_src_regs_init(1, B), -+ clk_src_regs_init(2, C), -+ clk_src_regs_init(3, D), -+ clk_src_regs_init(4, E); -+ -+#undef REG_STRUCT -+#define REG_STRUCT abm_regs -+ abm_regs_init(0), -+ abm_regs_init(1), -+ abm_regs_init(2), -+ abm_regs_init(3); -+#undef REG_STRUCT -+#define REG_STRUCT dccg_regs -+ dccg_regs_init(); -+ -+ ctx->dc_bios->regs = &bios_regs; -+ -+ pool->base.res_cap = &res_cap_dcn42; -+ -+ /* max number of pipes for ASIC before checking for pipe fuses */ -+ num_pipes = pool->base.res_cap->num_dpp; -+ pipe_fuses = read_pipe_fuses(ctx); -+ -+ for (i = 0; i < pool->base.res_cap->num_dpp; i++) -+ if (pipe_fuses & 1 << i) -+ num_pipes--; -+ -+ if (pipe_fuses & 1) -+ ASSERT(0); // Unexpected - Pipe 0 should always be fully functional! -+ -+ if (pipe_fuses & CC_DC_PIPE_DIS__DC_FULL_DIS_MASK) -+ ASSERT(0); // Entire DCN is harvested! -+ -+ pool->base.funcs = &dcn42_res_pool_funcs; -+ -+ /************************************************* -+ * Resource + asic cap harcoding * -+ *************************************************/ -+ pool->base.underlay_pipe_index = (unsigned int)NO_UNDERLAY_PIPE; -+ pool->base.timing_generator_count = pool->base.res_cap->num_timing_generator; -+ pool->base.pipe_count = num_pipes; -+ pool->base.mpcc_count = num_pipes; -+ dc->caps.ips_v2_support = true; -+ dc->caps.max_downscale_ratio = 600; -+ dc->caps.i2c_speed_in_khz = 100; -+ dc->caps.i2c_speed_in_khz_hdcp = 100; /*1.4 w/a applied by default*/ -+ /* TODO: Bring max cursor size back to 256 after subvp cursor corruption is fixed*/ -+ dc->caps.max_cursor_size = 64; -+ dc->caps.max_buffered_cursor_size = 64; -+ dc->caps.cursor_not_scaled = true; -+ dc->caps.min_horizontal_blanking_period = 80; -+ dc->caps.dmdata_alloc_size = 2048; -+ dc->caps.mall_size_per_mem_channel = 4; -+ /* total size = mall per channel * num channels * 1024 * 1024 */ -+ dc->caps.mall_size_total = dc->caps.mall_size_per_mem_channel * -+ dc->ctx->dc_bios->vram_info.num_chans * 1048576; -+ dc->caps.cursor_cache_size = dc->caps.max_cursor_size * dc->caps.max_cursor_size * 8; -+ dc->caps.cache_line_size = 64; -+ dc->caps.cache_num_ways = 16; -+ -+ /* Calculate the available MALL space */ -+ dc->caps.max_cab_allocation_bytes = -+ dcn32_calc_num_avail_chans_for_mall(dc, dc->ctx->dc_bios->vram_info.num_chans) * -+ dc->caps.mall_size_per_mem_channel * 1024 * 1024; -+ dc->caps.mall_size_total = dc->caps.max_cab_allocation_bytes; -+ -+ dc->caps.subvp_fw_processing_delay_us = 15; -+ dc->caps.subvp_drr_max_vblank_margin_us = 40; -+ dc->caps.subvp_prefetch_end_to_mall_start_us = 15; -+ dc->caps.subvp_swath_height_margin_lines = 16; -+ dc->caps.subvp_pstate_allow_width_us = 20; -+ dc->caps.subvp_vertical_int_margin_us = 30; -+ dc->caps.subvp_drr_vblank_start_margin_us = 100; // 100us margin -+ -+ dc->caps.max_slave_planes = 2; -+ dc->caps.max_slave_yuv_planes = 2; -+ dc->caps.max_slave_rgb_planes = 2; -+ dc->caps.post_blend_color_processing = true; -+ dc->caps.force_dp_tps4_for_cp2520 = true; -+ if (dc->config.forceHBR2CP2520) -+ dc->caps.force_dp_tps4_for_cp2520 = false; -+ dc->caps.dp_hdmi21_pcon_support = true; -+ dc->caps.dp_hpo = true; -+ dc->caps.edp_dsc_support = true; -+ dc->caps.extended_aux_timeout_support = true; -+ dc->caps.dmcub_support = true; -+ dc->caps.is_apu = true; -+ dc->caps.seamless_odm = true; -+ dc->caps.zstate_support = true; -+ dc->caps.ips_support = true; -+ dc->caps.max_v_total = (1 << 15) - 1; -+ dc->caps.vtotal_limited_by_fp2 = true; -+ -+ dc->caps.seamless_odm = true; -+ dc->caps.zstate_support = true; -+ dc->caps.ips_support = true; -+ dc->caps.max_v_total = (1 << 15) - 1; -+ dc->caps.vtotal_limited_by_fp2 = true; -+ -+ /* Color pipeline capabilities */ -+ dc->caps.color.dpp.dcn_arch = 1; -+ dc->caps.color.dpp.input_lut_shared = 0; -+ dc->caps.color.dpp.icsc = 1; -+ dc->caps.color.dpp.dgam_ram = 0; // must use gamma_corr -+ dc->caps.color.dpp.dgam_rom_caps.srgb = 1; -+ dc->caps.color.dpp.dgam_rom_caps.bt2020 = 1; -+ dc->caps.color.dpp.dgam_rom_caps.gamma2_2 = 1; -+ dc->caps.color.dpp.dgam_rom_caps.pq = 1; -+ dc->caps.color.dpp.dgam_rom_caps.hlg = 1; -+ dc->caps.color.dpp.post_csc = 1; -+ dc->caps.color.dpp.gamma_corr = 1; -+ dc->caps.color.dpp.dgam_rom_for_yuv = 0; -+ -+ dc->caps.color.dpp.hw_3d_lut = 0; -+ dc->caps.color.dpp.ogam_ram = 0; -+ // no OGAM ROM on DCN2 and later ASICs -+ dc->caps.color.dpp.ogam_rom_caps.srgb = 0; -+ dc->caps.color.dpp.ogam_rom_caps.bt2020 = 0; -+ dc->caps.color.dpp.ogam_rom_caps.gamma2_2 = 0; -+ dc->caps.color.dpp.ogam_rom_caps.pq = 0; -+ dc->caps.color.dpp.ogam_rom_caps.hlg = 0; -+ dc->caps.color.dpp.ocsc = 0; -+ -+ dc->caps.color.mpc.gamut_remap = 1; -+ //configurable to be before or after BLND in MPCC -+ dc->caps.color.mpc.num_3dluts = pool->base.res_cap->num_mpc_3dlut; -+ dc->caps.color.mpc.num_rmcm_3dluts = 2; -+ dc->caps.color.mpc.ogam_ram = 1; -+ dc->caps.color.mpc.ogam_rom_caps.srgb = 0; -+ dc->caps.color.mpc.ogam_rom_caps.bt2020 = 0; -+ dc->caps.color.mpc.ogam_rom_caps.gamma2_2 = 0; -+ dc->caps.color.mpc.ogam_rom_caps.pq = 0; -+ dc->caps.color.mpc.ogam_rom_caps.hlg = 0; -+ dc->caps.color.mpc.ocsc = 1; -+ dc->caps.color.mpc.preblend = true; -+ dc->caps.color.mpc.mcm_3d_lut_caps.dma_3d_lut = 1; -+ dc->caps.color.mpc.mcm_3d_lut_caps.lut_dim_caps.dim_9 = 1; -+ dc->caps.color.mpc.mcm_3d_lut_caps.lut_dim_caps.dim_17 = 1; -+ dc->caps.color.mpc.mcm_3d_lut_caps.mem_layout_support.linear_1d = 1; -+ dc->caps.color.mpc.mcm_3d_lut_caps.mem_layout_support.swizzle_3d_bgr = 1; -+ dc->caps.color.mpc.mcm_3d_lut_caps.mem_layout_support.swizzle_3d_rgb = 1; -+ dc->caps.color.mpc.mcm_3d_lut_caps.mem_format_support.unorm_12msb = 1; -+ dc->caps.color.mpc.mcm_3d_lut_caps.mem_format_support.unorm_12lsb = 1; -+ dc->caps.color.mpc.mcm_3d_lut_caps.mem_format_support.float_fp1_5_10 = 1; -+ dc->caps.color.mpc.mcm_3d_lut_caps.mem_pixel_order_support.order_rgba = 1; -+ dc->caps.color.mpc.mcm_3d_lut_caps.mem_pixel_order_support.order_bgra = 1; -+ dc->caps.color.mpc.rmcm_3d_lut_caps.dma_3d_lut = 1; -+ dc->caps.color.mpc.rmcm_3d_lut_caps.lut_dim_caps.dim_17 = 1; -+ dc->caps.color.mpc.rmcm_3d_lut_caps.lut_dim_caps.dim_33 = 1; -+ dc->caps.color.mpc.rmcm_3d_lut_caps.mem_layout_support.linear_1d = 1; -+ dc->caps.color.mpc.rmcm_3d_lut_caps.mem_layout_support.swizzle_3d_bgr = 1; -+ dc->caps.color.mpc.rmcm_3d_lut_caps.mem_layout_support.swizzle_3d_rgb = 1; -+ dc->caps.color.mpc.rmcm_3d_lut_caps.mem_format_support.unorm_12msb = 1; -+ dc->caps.color.mpc.rmcm_3d_lut_caps.mem_format_support.unorm_12lsb = 1; -+ dc->caps.color.mpc.rmcm_3d_lut_caps.mem_format_support.float_fp1_5_10 = 1; -+ dc->caps.color.mpc.rmcm_3d_lut_caps.mem_pixel_order_support.order_rgba = 1; -+ dc->caps.color.mpc.rmcm_3d_lut_caps.mem_pixel_order_support.order_bgra = 1; -+ -+ dc->caps.num_of_host_routers = 3; -+ dc->caps.num_of_dpias_per_host_router = 2; -+ -+ /* max_disp_clock_khz_at_vmin is slightly lower than the STA value in order -+ * to provide some margin. -+ * It's expected for furture ASIC to have equal or higher value, in order to -+ * have determinstic power improvement from generate to genration. -+ * (i.e., we should not expect new ASIC generation with lower vmin rate) -+ */ -+ dc->caps.max_disp_clock_khz_at_vmin = 650000; -+ dc->config.use_spl = true; -+ dc->config.prefer_easf = true; -+ -+ dc->config.dcn_sharpness_range.sdr_rgb_min = 0; -+ dc->config.dcn_sharpness_range.sdr_rgb_max = 1750; -+ dc->config.dcn_sharpness_range.sdr_rgb_mid = 750; -+ dc->config.dcn_sharpness_range.sdr_yuv_min = 0; -+ dc->config.dcn_sharpness_range.sdr_yuv_max = 3500; -+ dc->config.dcn_sharpness_range.sdr_yuv_mid = 1500; -+ dc->config.dcn_sharpness_range.hdr_rgb_min = 0; -+ dc->config.dcn_sharpness_range.hdr_rgb_max = 2750; -+ dc->config.dcn_sharpness_range.hdr_rgb_mid = 1500; -+ -+ dc->config.dcn_override_sharpness_range.sdr_rgb_min = 0; -+ dc->config.dcn_override_sharpness_range.sdr_rgb_max = 3250; -+ dc->config.dcn_override_sharpness_range.sdr_rgb_mid = 1250; -+ dc->config.dcn_override_sharpness_range.sdr_yuv_min = 0; -+ dc->config.dcn_override_sharpness_range.sdr_yuv_max = 3500; -+ dc->config.dcn_override_sharpness_range.sdr_yuv_mid = 1500; -+ dc->config.dcn_override_sharpness_range.hdr_rgb_min = 0; -+ dc->config.dcn_override_sharpness_range.hdr_rgb_max = 2750; -+ dc->config.dcn_override_sharpness_range.hdr_rgb_mid = 1500; -+ -+ dc->config.use_pipe_ctx_sync_logic = true; -+ dc->config.dc_mode_clk_limit_support = false; -+ dc->config.enable_windowed_mpo_odm = true; -+ /* Use psp mailbox to enable assr */ -+ dc->config.use_assr_psp_message = true; -+ /* dcn42 and afterward always support external panel replay */ -+ dc->config.frame_update_cmd_version2 = true; -+ -+ /* read VBIOS LTTPR caps */ -+ { -+ if (ctx->dc_bios->funcs->get_lttpr_caps) { -+ enum bp_result bp_query_result; -+ uint8_t is_vbios_lttpr_enable = 0; -+ -+ bp_query_result = ctx->dc_bios->funcs->get_lttpr_caps(ctx->dc_bios, &is_vbios_lttpr_enable); -+ dc->caps.vbios_lttpr_enable = (bp_query_result == BP_RESULT_OK) && !!is_vbios_lttpr_enable; -+ } ++ struct dml2_per_plane_programming *pln_prog = NULL; ++ struct dml2_plane_mcache_configuration_descriptor *mcache_config = NULL; ++ struct prepare_mcache_programming_locals *l = &dml_ctx->v21.scratch.prepare_mcache_locals; + -+ dc->caps.vbios_lttpr_aware = true; -+ } -+ dc->check_config = config_defaults; -+ -+ if (dc->ctx->dce_environment == DCE_ENV_PRODUCTION_DRV) -+ dc->debug = debug_defaults_drv; -+ -+ /*HW default is to have all the FGCG enabled, SW no need to program them*/ -+ dc->debug.enable_fine_grain_clock_gating.u32All = 0xFFFF; -+ // Init the vm_helper -+ if (dc->vm_helper) -+ vm_helper_init(dc->vm_helper, 16); -+ -+ /************************************************* -+ * Create resources * -+ *************************************************/ -+ -+ /* Clock Sources for Pixel Clock*/ -+ pool->base.clock_sources[DCN401_CLK_SRC_PLL0] = -+ dcn42_clock_source_create(ctx, ctx->dc_bios, -+ CLOCK_SOURCE_COMBO_PHY_PLL0, -+ &clk_src_regs[0], false); -+ pool->base.clock_sources[DCN401_CLK_SRC_PLL1] = -+ dcn42_clock_source_create(ctx, ctx->dc_bios, -+ CLOCK_SOURCE_COMBO_PHY_PLL1, -+ &clk_src_regs[1], false); -+ pool->base.clock_sources[DCN401_CLK_SRC_PLL2] = -+ dcn42_clock_source_create(ctx, ctx->dc_bios, -+ CLOCK_SOURCE_COMBO_PHY_PLL2, -+ &clk_src_regs[2], false); -+ pool->base.clock_sources[DCN401_CLK_SRC_PLL3] = -+ dcn42_clock_source_create(ctx, ctx->dc_bios, -+ CLOCK_SOURCE_COMBO_PHY_PLL3, -+ &clk_src_regs[3], false); -+ pool->base.clock_sources[DCN401_CLK_SRC_PLL4] = -+ dcn42_clock_source_create(ctx, ctx->dc_bios, -+ CLOCK_SOURCE_COMBO_PHY_PLL4, -+ &clk_src_regs[4], false); -+ -+ pool->base.clk_src_count = DCN401_CLK_SRC_TOTAL; -+ -+ /* todo: not reuse phy_pll registers */ -+ pool->base.dp_clock_source = -+ dcn42_clock_source_create(ctx, ctx->dc_bios, -+ CLOCK_SOURCE_ID_DP_DTO, -+ &clk_src_regs[0], true); -+ -+ for (i = 0; i < pool->base.clk_src_count; i++) { -+ if (pool->base.clock_sources[i] == NULL) { -+ dm_error("DC: failed to create clock sources!\n"); -+ BREAK_TO_DEBUGGER(); -+ goto create_fail; -+ } ++ if (context->stream_count == 0) { ++ return; + } + -+ /* DCCG */ -+ pool->base.dccg = dccg42_create(ctx, &dccg_regs, &dccg_shift, &dccg_mask); -+ if (pool->base.dccg == NULL) { -+ dm_error("DC: failed to create dccg!\n"); -+ BREAK_TO_DEBUGGER(); -+ goto create_fail; -+ } ++ memset(&l->build_mcache_programming_params, 0, sizeof(struct dml2_build_mcache_programming_in_out)); ++ l->build_mcache_programming_params.dml2_instance = dml_ctx->v21.dml_init.dml2_instance; + -+#undef REG_STRUCT -+#define REG_STRUCT pg_cntl_regs -+ pg_cntl_dcn42_regs_init(); ++ /* phantom's start after main planes */ ++ dml_phantom_prog_idx = dml_ctx->v21.mode_programming.programming->display_config.num_planes; + -+ pool->base.pg_cntl = pg_cntl42_create(ctx, &pg_cntl_regs, &pg_cntl_shift, &pg_cntl_mask); -+ if (pool->base.pg_cntl == NULL) { -+ dm_error("DC: failed to create power gate control!\n"); -+ BREAK_TO_DEBUGGER(); -+ goto create_fail; -+ } -+ /* IRQ Service */ -+ init_data.ctx = dc->ctx; -+ pool->base.irqs = dal_irq_service_dcn42_create(&init_data); -+ if (!pool->base.irqs) -+ goto create_fail; -+ -+ /* HUBBUB */ -+ pool->base.hubbub = dcn42_hubbub_create(ctx); -+ if (pool->base.hubbub == NULL) { -+ BREAK_TO_DEBUGGER(); -+ dm_error("DC: failed to create hubbub!\n"); -+ goto create_fail; -+ } ++ /* Build mcache programming parameters per plane per pipe */ ++ for (dml_prog_idx = 0; dml_prog_idx < dml_ctx->v21.mode_programming.programming->display_config.num_planes; dml_prog_idx++) { ++ pln_prog = &dml_ctx->v21.mode_programming.programming->plane_programming[dml_prog_idx]; + -+ /* HUBPs, DPPs, OPPs, TGs, ABMs */ -+ for (i = 0, j = 0; i < pool->base.res_cap->num_timing_generator; i++) { -+ /* if pipe is disabled, skip instance of HW pipe, -+ * i.e, skip ASIC register instance -+ */ -+ if (pipe_fuses & 1 << i) -+ continue; ++ mcache_config = &l->build_mcache_programming_params.mcache_configurations[dml_prog_idx]; ++ memset(mcache_config, 0, sizeof(struct dml2_plane_mcache_configuration_descriptor)); ++ mcache_config->plane_descriptor = pln_prog->plane_descriptor; ++ mcache_config->mcache_allocation = &context->bw_ctx.bw.dcn.mcache_allocations[dml_prog_idx]; ++ mcache_config->num_pipes = pln_prog->num_dpps_required; ++ l->build_mcache_programming_params.num_configurations++; + -+ pool->base.hubps[j] = dcn42_hubp_create(ctx, i); -+ if (pool->base.hubps[j] == NULL) { -+ BREAK_TO_DEBUGGER(); -+ dm_error( -+ "DC: failed to create hubps!\n"); -+ goto create_fail; ++ if (pln_prog->num_dpps_required == 0) { ++ continue; + } + -+ pool->base.dpps[j] = dcn42_dpp_create(ctx, i); -+ if (pool->base.dpps[j] == NULL) { -+ BREAK_TO_DEBUGGER(); -+ dm_error( -+ "DC: failed to create dpps!\n"); -+ goto create_fail; -+ } ++ num_pipes = dml21_find_dc_pipes_for_plane(in_dc, context, dml_ctx, dc_main_pipes, dc_phantom_pipes, dml_prog_idx); ++ if (num_pipes <= 0 || dc_main_pipes[0]->stream == NULL || ++ dc_main_pipes[0]->plane_state == NULL) ++ continue; + -+ pool->base.opps[j] = dcn42_opp_create(ctx, i); -+ if (pool->base.opps[j] == NULL) { -+ BREAK_TO_DEBUGGER(); -+ dm_error( -+ "DC: failed to create output pixel processor!\n"); -+ goto create_fail; ++ /* get config for each pipe */ ++ for (dc_pipe_index = 0; dc_pipe_index < num_pipes; dc_pipe_index++) { ++ ASSERT(dc_main_pipes[dc_pipe_index]); ++ dml21_get_pipe_mcache_config(context, dc_main_pipes[dc_pipe_index], pln_prog, &mcache_config->pipe_configurations[dc_pipe_index]); + } + -+ pool->base.timing_generators[j] = dcn42_timing_generator_create( -+ ctx, i); -+ if (pool->base.timing_generators[j] == NULL) { -+ BREAK_TO_DEBUGGER(); -+ dm_error("DC: failed to create tg!\n"); -+ goto create_fail; -+ } ++ /* get config for each phantom pipe */ ++ if (pln_prog->phantom_plane.valid && ++ dc_phantom_pipes[0] && ++ dc_main_pipes[0]->stream && ++ dc_phantom_pipes[0]->plane_state) { ++ mcache_config = &l->build_mcache_programming_params.mcache_configurations[dml_phantom_prog_idx]; ++ memset(mcache_config, 0, sizeof(struct dml2_plane_mcache_configuration_descriptor)); ++ mcache_config->plane_descriptor = pln_prog->plane_descriptor; ++ mcache_config->mcache_allocation = &context->bw_ctx.bw.dcn.mcache_allocations[dml_phantom_prog_idx]; ++ mcache_config->num_pipes = pln_prog->num_dpps_required; ++ l->build_mcache_programming_params.num_configurations++; ++ ++ for (dc_pipe_index = 0; dc_pipe_index < num_pipes; dc_pipe_index++) { ++ ASSERT(dc_phantom_pipes[dc_pipe_index]); ++ dml21_get_pipe_mcache_config(context, dc_phantom_pipes[dc_pipe_index], pln_prog, &mcache_config->pipe_configurations[dc_pipe_index]); ++ } + -+ pool->base.multiple_abms[j] = dmub_abm_create(ctx, -+ &abm_regs[i], -+ &abm_shift, -+ &abm_mask); -+ if (pool->base.multiple_abms[j] == NULL) { -+ dm_error("DC: failed to create abm for pipe %d!\n", i); -+ BREAK_TO_DEBUGGER(); -+ goto create_fail; ++ /* increment phantom index */ ++ dml_phantom_prog_idx++; + } -+ -+ /* index for resource pool arrays for next valid pipe */ -+ j++; + } + -+ /* PSR */ -+ pool->base.psr = dmub_psr_create(ctx); -+ if (pool->base.psr == NULL) { -+ dm_error("DC: failed to create psr obj!\n"); -+ BREAK_TO_DEBUGGER(); -+ goto create_fail; -+ } ++ /* Call to generate mcache programming per plane per pipe for the given display configuration */ ++ dml2_build_mcache_programming(&l->build_mcache_programming_params); + -+ /* Replay */ -+ pool->base.replay = dmub_replay_create(ctx); -+ if (pool->base.replay == NULL) { -+ dm_error("DC: failed to create replay obj!\n"); -+ BREAK_TO_DEBUGGER(); -+ goto create_fail; -+ } ++ /* get per plane per pipe mcache programming */ ++ for (dml_prog_idx = 0; dml_prog_idx < dml_ctx->v21.mode_programming.programming->display_config.num_planes; dml_prog_idx++) { ++ pln_prog = &dml_ctx->v21.mode_programming.programming->plane_programming[dml_prog_idx]; + -+ /* MPCCs */ -+ pool->base.mpc = dcn42_mpc_create(ctx, pool->base.res_cap->num_timing_generator, -+ pool->base.res_cap->num_mpc_3dlut); -+ if (pool->base.mpc == NULL) { -+ BREAK_TO_DEBUGGER(); -+ dm_error("DC: failed to create mpc!\n"); -+ goto create_fail; -+ } ++ num_pipes = dml21_find_dc_pipes_for_plane(in_dc, context, dml_ctx, dc_main_pipes, dc_phantom_pipes, dml_prog_idx); ++ if (num_pipes <= 0 || dc_main_pipes[0]->stream == NULL || ++ dc_main_pipes[0]->plane_state == NULL) ++ continue; + -+ /* DSCs */ -+ for (i = 0; i < pool->base.res_cap->num_dsc; i++) { -+ pool->base.dscs[i] = dcn42_dsc_create(ctx, i); -+ if (pool->base.dscs[i] == NULL) { -+ BREAK_TO_DEBUGGER(); -+ dm_error("DC: failed to create display stream compressor %d!\n", i); -+ goto create_fail; ++ /* get config for each pipe */ ++ for (dc_pipe_index = 0; dc_pipe_index < num_pipes; dc_pipe_index++) { ++ ASSERT(dc_main_pipes[dc_pipe_index]); ++ if (l->build_mcache_programming_params.per_plane_pipe_mcache_regs[dml_prog_idx][dc_pipe_index]) { ++ memcpy(&dc_main_pipes[dc_pipe_index]->mcache_regs, ++ l->build_mcache_programming_params.per_plane_pipe_mcache_regs[dml_prog_idx][dc_pipe_index], ++ sizeof(struct dml2_hubp_pipe_mcache_regs)); ++ } + } -+ } + -+ /* DWB */ -+ if (!dcn42_dwbc_create(ctx, &pool->base)) { -+ BREAK_TO_DEBUGGER(); -+ dm_error("DC: failed to create dwbc!\n"); -+ goto create_fail; ++ /* get config for each phantom pipe */ ++ if (pln_prog->phantom_plane.valid && ++ dc_phantom_pipes[0] && ++ dc_main_pipes[0]->stream && ++ dc_phantom_pipes[0]->plane_state) { ++ for (dc_pipe_index = 0; dc_pipe_index < num_pipes; dc_pipe_index++) { ++ ASSERT(dc_phantom_pipes[dc_pipe_index]); ++ if (l->build_mcache_programming_params.per_plane_pipe_mcache_regs[dml_phantom_prog_idx][dc_pipe_index]) { ++ memcpy(&dc_phantom_pipes[dc_pipe_index]->mcache_regs, ++ l->build_mcache_programming_params.per_plane_pipe_mcache_regs[dml_phantom_prog_idx][dc_pipe_index], ++ sizeof(struct dml2_hubp_pipe_mcache_regs)); ++ } ++ } ++ /* increment phantom index */ ++ dml_phantom_prog_idx++; ++ } + } ++} + -+ /* MMHUBBUB */ -+ if (!dcn42_mmhubbub_create(ctx, &pool->base)) { -+ BREAK_TO_DEBUGGER(); -+ dm_error("DC: failed to create mcif_wb!\n"); -+ goto create_fail; -+ } + -+ /* AUX and I2C */ -+ for (i = 0; i < pool->base.res_cap->num_ddc; i++) { -+ pool->base.engines[i] = dcn42_aux_engine_create(ctx, i); +diff --git a/drivers/gpu/drm/amd/display/dc/dml2_0/dml21/dml21_wrapper_fpu.h b/drivers/gpu/drm/amd/display/dc/dml2_0/dml21/dml21_wrapper_fpu.h +new file mode 100644 +index 000000000000..2972c6eed21a +--- /dev/null ++++ b/drivers/gpu/drm/amd/display/dc/dml2_0/dml21/dml21_wrapper_fpu.h +@@ -0,0 +1,60 @@ ++// SPDX-License-Identifier: MIT ++// ++// Copyright 2024 Advanced Micro Devices, Inc. + -+ if (pool->base.engines[i] == NULL) { -+ BREAK_TO_DEBUGGER(); -+ dm_error( -+ "DC:failed to create aux engine!!\n"); -+ goto create_fail; -+ } -+ pool->base.hw_i2cs[i] = dcn42_i2c_hw_create(ctx, i); -+ if (pool->base.hw_i2cs[i] == NULL) { -+ BREAK_TO_DEBUGGER(); -+ dm_error( -+ "DC:failed to create hw i2c!!\n"); -+ goto create_fail; -+ } -+ pool->base.sw_i2cs[i] = NULL; -+ } -+ /* DCN4.2 has 6 DPIA */ -+ pool->base.usb4_dpia_count = dc->caps.num_of_host_routers * dc->caps.num_of_dpias_per_host_router; -+ if (dc->debug.dpia_debug.bits.disable_dpia) -+ pool->base.usb4_dpia_count = 0; -+ -+ /* Audio, HWSeq, Stream Encoders including HPO and virtual, MPC 3D LUTs */ -+ if (!resource_construct(num_virtual_links, dc, &pool->base, -+ &res_create_funcs)) -+ goto create_fail; -+ -+ /* HW Sequencer init functions and Plane caps */ -+ dcn42_hw_sequencer_init_functions(dc); -+ -+ dc->caps.max_planes = pool->base.pipe_count; -+ -+ for (i = 0; i < dc->caps.max_planes; ++i) -+ dc->caps.planes[i] = plane_cap; -+ -+ dc->caps.max_odm_combine_factor = 4; -+ -+ dc->cap_funcs = cap_funcs; -+ dc->dcn_ip->max_num_dpp = pool->base.pipe_count; -+ -+ // For now enable SDPIF_REQUEST_RATE_LIMIT on DCN4_01 when vram_info.num_chans provided -+ if (dc->config.sdpif_request_limit_words_per_umc == 0) -+ dc->config.sdpif_request_limit_words_per_umc = 16; -+ -+ dc->dml2_options.dcn_pipe_count = pool->base.pipe_count; -+ /*this will use real soc clock table*/ -+ dc->dml2_options.use_native_soc_bb_construction = true; -+ dc->dml2_options.minimize_dispclk_using_odm = false; -+ if (dc->config.EnableMinDispClkODM) -+ dc->dml2_options.minimize_dispclk_using_odm = true; -+ dc->dml2_options.enable_windowed_mpo_odm = dc->config.enable_windowed_mpo_odm; -+ dc->dml2_options.map_dc_pipes_with_callbacks = true; -+ dc->dml2_options.force_tdlut_enable = true; -+ -+ resource_init_common_dml2_callbacks(dc, &dc->dml2_options); -+ dc->dml2_options.callbacks.can_support_mclk_switch_using_fw_based_vblank_stretch = -+ &dcn30_can_support_mclk_switch_using_fw_based_vblank_stretch; -+ dc->dml2_options.svp_pstate.callbacks.release_dsc = &dcn20_release_dsc; -+ dc->dml2_options.svp_pstate.callbacks.calculate_mall_ways_from_bytes = -+ pool->base.funcs->calculate_mall_ways_from_bytes; -+ -+ dc->dml2_options.svp_pstate.subvp_fw_processing_delay_us = dc->caps.subvp_fw_processing_delay_us; -+ dc->dml2_options.svp_pstate.subvp_prefetch_end_to_mall_start_us = dc->caps.subvp_prefetch_end_to_mall_start_us; -+ dc->dml2_options.svp_pstate.subvp_pstate_allow_width_us = dc->caps.subvp_pstate_allow_width_us; -+ dc->dml2_options.svp_pstate.subvp_swath_height_margin_lines = dc->caps.subvp_swath_height_margin_lines; -+ -+ dc->dml2_options.svp_pstate.force_disable_subvp = dc->debug.force_disable_subvp; -+ dc->dml2_options.svp_pstate.force_enable_subvp = dc->debug.force_subvp_mclk_switch; -+ -+ dc->dml2_options.mall_cfg.cache_line_size_bytes = dc->caps.cache_line_size; -+ dc->dml2_options.mall_cfg.cache_num_ways = dc->caps.cache_num_ways; -+ dc->dml2_options.mall_cfg.max_cab_allocation_bytes = -+ dc->caps.max_cab_allocation_bytes; -+ dc->dml2_options.mall_cfg.mblk_height_4bpe_pixels = DCN3_2_MBLK_HEIGHT_4BPE; -+ dc->dml2_options.mall_cfg.mblk_height_8bpe_pixels = DCN3_2_MBLK_HEIGHT_8BPE; -+ dc->dml2_options.mall_cfg.mblk_size_bytes = DCN3_2_MALL_MBLK_SIZE_BYTES; -+ dc->dml2_options.mall_cfg.mblk_width_pixels = DCN3_2_MBLK_WIDTH; -+ -+ dc->dml2_options.max_segments_per_hubp = 24; -+ dc->dml2_options.det_segment_size = DCN42_CRB_SEGMENT_SIZE_KB; -+ dc->dml2_options.gpuvm_enable = true; -+ dc->dml2_options.hostvm_enable = true; -+ -+ /* SPL */ -+ dc->caps.scl_caps.sharpener_support = true; ++#ifndef _DML21_WRAPPER_FPU_H_ ++#define _DML21_WRAPPER_FPU_H_ + -+ return true; ++#include "os_types.h" ++#include "dml_top_soc_parameter_types.h" ++#include "dml_top_display_cfg_types.h" + -+create_fail: ++struct dc; ++struct dc_state; ++struct dml2_configuration_options; ++struct dml2_context; ++enum dc_validate_mode; + -+ dcn42_resource_destruct(pool); ++/** ++ * dml21_init - Initialize DML21 context ++ * @in_dc: dc. ++ * @dml_ctx: DML21 context to initialize. ++ * @config: dml21 configuration options. ++ * ++ * Performs FPU-requiring initialization. Must be called with FPU protection. ++ */ ++void dml21_init(const struct dc *in_dc, struct dml2_context *dml_ctx, const struct dml2_configuration_options *config); + -+ return false; -+} -+struct resource_pool *dcn42_create_resource_pool( -+ const struct dc_init_data *init_data, -+ struct dc *dc) -+{ -+ struct dcn42_resource_pool *pool = -+ kzalloc(sizeof(struct dcn401_resource_pool), GFP_KERNEL); ++/** ++ * dml21_validate - Determines if a display configuration is supported or not. ++ * @in_dc: dc. ++ * @context: dc_state to be validated. ++ * @dml_ctx: dml21 context. ++ * @validate_mode: DC_VALIDATE_MODE_ONLY and DC_VALIDATE_MODE_AND_STATE_INDEX ++ * will not populate context.res_ctx. ++ * ++ * Based on fast_validate option internally would call: ++ * ++ * -dml21_mode_check_and_programming - for DC_VALIDATE_MODE_AND_PROGRAMMING option ++ * Calculates if dc_state can be supported on the input display ++ * configuration. If supported, generates the necessary HW ++ * programming for the new dc_state. ++ * ++ * -dml21_check_mode_support - for DC_VALIDATE_MODE_ONLY and DC_VALIDATE_MODE_AND_STATE_INDEX option ++ * Calculates if dc_state can be supported for the input display ++ * config. ++ * ++ * Context: Two threads may not invoke this function concurrently unless they reference ++ * separate dc_states for validation. ++ * Return: True if mode is supported, false otherwise. ++ */ + -+ if (!pool) -+ return NULL; ++void dml21_reinit(const struct dc *in_dc, struct dml2_context *dml_ctx, ++ const struct dml2_configuration_options *config); ++bool dml21_validate(const struct dc *in_dc, struct dc_state *context, struct dml2_context *dml_ctx, ++ enum dc_validate_mode validate_mode); ++ ++/* Prepare hubp mcache_regs for hubp mcache ID and split coordinate programming */ ++void dml21_prepare_mcache_programming(struct dc *in_dc, struct dc_state *context, struct dml2_context *dml_ctx); ++ ++#endif /* _DML21_WRAPPER_FPU_H_ */ +diff --git a/drivers/gpu/drm/amd/display/dc/dml2_0/dml2_wrapper.c b/drivers/gpu/drm/amd/display/dc/dml2_0/dml2_wrapper.c +index 307186eb6af0..9215e38343ba 100644 +--- a/drivers/gpu/drm/amd/display/dc/dml2_0/dml2_wrapper.c ++++ b/drivers/gpu/drm/amd/display/dc/dml2_0/dml2_wrapper.c +@@ -6,7 +6,20 @@ + */ + + #include "dml2_internal_types.h" ++#include "dml2_wrapper.h" + #include "dml2_wrapper_fpu.h" ++#include "dml21_wrapper.h" ++#include "dml21_wrapper_fpu.h" ++ ++#include "dc_fpu.h" + -+ if (dcn42_resource_construct(init_data->num_virtual_links, dc, pool)) -+ return &pool->base; ++struct dml2_context *dml2_allocate_memory(void) ++{ ++ struct dml2_context *dml2; + -+ BREAK_TO_DEBUGGER(); -+ kfree(pool); -+ return NULL; ++ DC_RUN_WITH_PREEMPTION_ENABLED(dml2 = vzalloc(sizeof(struct dml2_context))); ++ return dml2; +} + + bool dml2_validate(const struct dc *in_dc, struct dc_state *context, struct dml2_context *dml2, + enum dc_validate_mode validate_mode) +@@ -23,16 +36,12 @@ bool dml2_validate(const struct dc *in_dc, struct dc_state *context, struct dml2 + return out; + } + +- DC_FP_START(); +- + /* Use dml_validate_only for DC_VALIDATE_MODE_ONLY and DC_VALIDATE_MODE_AND_STATE_INDEX path */ + if (validate_mode != DC_VALIDATE_MODE_AND_PROGRAMMING) + out = dml2_validate_only(context, validate_mode); + else + out = dml2_validate_and_build_resource(in_dc, context, validate_mode); + +- DC_FP_END(); +- + return out; + } + +@@ -70,15 +79,11 @@ static void dml2_init(const struct dc *in_dc, const struct dml2_configuration_op + break; + } + +- DC_FP_START(); +- + initialize_dml2_ip_params(*dml2, in_dc, &(*dml2)->v20.dml_core_ctx.ip); + + initialize_dml2_soc_bbox(*dml2, in_dc, &(*dml2)->v20.dml_core_ctx.soc); + + initialize_dml2_soc_states(*dml2, in_dc, &(*dml2)->v20.dml_core_ctx.soc, &(*dml2)->v20.dml_core_ctx.states); +- +- DC_FP_END(); + } + + bool dml2_create(const struct dc *in_dc, const struct dml2_configuration_options *config, struct dml2_context **dml2) +diff --git a/drivers/gpu/drm/amd/display/dc/dml2_0/dml2_wrapper_fpu.c b/drivers/gpu/drm/amd/display/dc/dml2_0/dml2_wrapper_fpu.c +index 203eef747262..66624cfc27b1 100644 +--- a/drivers/gpu/drm/amd/display/dc/dml2_0/dml2_wrapper_fpu.c ++++ b/drivers/gpu/drm/amd/display/dc/dml2_0/dml2_wrapper_fpu.c +@@ -31,8 +31,10 @@ + #include "dml2_translation_helper.h" + #include "dml2_mall_phantom.h" + #include "dml2_dc_resource_mgmt.h" +-#include "dml21_wrapper.h" ++#include "dml2_wrapper.h" + #include "dml2_wrapper_fpu.h" ++#include "dml21_wrapper.h" ++#include "dml21_wrapper_fpu.h" + + void initialize_dml2_ip_params(struct dml2_context *dml2, const struct dc *in_dc, struct ip_params_st *out) + { +@@ -546,11 +548,6 @@ void dml2_apply_debug_options(const struct dc *dc, struct dml2_context *dml2) + } + } + +-inline struct dml2_context *dml2_allocate_memory(void) +-{ +- return (struct dml2_context *) vzalloc(sizeof(struct dml2_context)); +-} +- + void dml2_destroy(struct dml2_context *dml2) + { + if (!dml2) -- 2.53.0 diff --git a/SPECS/linux/0085-UPSTREAM-drm-amd-display-Move-FPU-Guards-From-DML-To.patch b/SPECS/linux/0085-UPSTREAM-drm-amd-display-Move-FPU-Guards-From-DML-To.patch index 380bf545d3..40867c1019 100644 --- a/SPECS/linux/0085-UPSTREAM-drm-amd-display-Move-FPU-Guards-From-DML-To.patch +++ b/SPECS/linux/0085-UPSTREAM-drm-amd-display-Move-FPU-Guards-From-DML-To.patch @@ -1,8 +1,8 @@ -From eea09df44b0a77d8a7e7b34fc22b8a10148a2f73 Mon Sep 17 00:00:00 2001 +From 053fbb2bf5b5e7db5b0adb9ce4933e320a3b3bd6 Mon Sep 17 00:00:00 2001 From: Rafal Ostrowski -Date: Wed, 18 Feb 2026 16:19:47 +0100 -Subject: [PATCH 085/269] UPSTREAM: drm/amd/display: Move FPU Guards From DML - To DC - Part 2 +Date: Mon, 23 Feb 2026 06:13:32 +0100 +Subject: [RUYI PATCH] UPSTREAM: drm/amd/display: Move FPU Guards From DML To + DC - Part 3 [Why] FPU guards (DC_FP_START/DC_FP_END) are required to wrap around code that @@ -12,1130 +12,110 @@ a file that is a FPU unit, other sections in the file that aren't guarded may be end up being compiled to use FPU operations. [How] -Removed DC_FP_START and DC_FP_END. +Added DC_FP_START and DC_FP_END to DC functions that call DML functions +using FPU. Reviewed-by: Dillon Varone Signed-off-by: Rafal Ostrowski Signed-off-by: Alex Hung -Signed-off-by: Chuanyu Tseng Signed-off-by: Alex Deucher -(cherry picked from commit 4bb2f0721ed8a2a70f864b9358bd6cd4d92199b3) +(cherry picked from commit 32c1c35b6d8bd8b7ea9ab3d1454b56b605f17dd1) Signed-off-by: Xi Ruoyao Signed-off-by: Han Gao --- - .../gpu/drm/amd/display/dc/dml2_0/Makefile | 73 +--- - .../display/dc/dml2_0/dml21/dml21_wrapper.c | 379 +---------------- - .../display/dc/dml2_0/dml21/dml21_wrapper.h | 30 -- - .../dc/dml2_0/dml21/dml21_wrapper_fpu.c | 381 ++++++++++++++++++ - .../dc/dml2_0/dml21/dml21_wrapper_fpu.h | 60 +++ - .../drm/amd/display/dc/dml2_0/dml2_wrapper.c | 21 +- - .../amd/display/dc/dml2_0/dml2_wrapper_fpu.c | 9 +- - 7 files changed, 484 insertions(+), 469 deletions(-) - create mode 100644 drivers/gpu/drm/amd/display/dc/dml2_0/dml21/dml21_wrapper_fpu.c - create mode 100644 drivers/gpu/drm/amd/display/dc/dml2_0/dml21/dml21_wrapper_fpu.h + drivers/gpu/drm/amd/display/dc/dml2_0/Makefile | 1 + + drivers/gpu/drm/amd/display/dc/dml2_0/dml21/dml21_wrapper.c | 1 + + .../gpu/drm/amd/display/dc/dml2_0/dml21/dml21_wrapper_fpu.c | 4 +--- + .../gpu/drm/amd/display/dc/dml2_0/dml21/dml21_wrapper_fpu.h | 2 +- + drivers/gpu/drm/amd/display/dc/dml2_0/dml2_wrapper.c | 6 +++++- + 5 files changed, 9 insertions(+), 5 deletions(-) diff --git a/drivers/gpu/drm/amd/display/dc/dml2_0/Makefile b/drivers/gpu/drm/amd/display/dc/dml2_0/Makefile -index 30cfc0848792..a094cfa78260 100644 +index a094cfa78260..145ff97ed560 100644 --- a/drivers/gpu/drm/amd/display/dc/dml2_0/Makefile +++ b/drivers/gpu/drm/amd/display/dc/dml2_0/Makefile -@@ -53,25 +53,29 @@ subdir-ccflags-y += -I$(FULL_AMD_DISPLAY_PATH)/dc/dml2_0/dml21/src/inc - subdir-ccflags-y += -I$(FULL_AMD_DISPLAY_PATH)/dc/dml2_0/dml21/inc - subdir-ccflags-y += -I$(FULL_AMD_DISPLAY_PATH)/dc/dml2_0/dml21/ - --CFLAGS_$(AMDDALPATH)/dc/dml2_0/display_mode_core.o := $(dml2_ccflags) $(frame_warn_flag) --CFLAGS_$(AMDDALPATH)/dc/dml2_0/display_mode_util.o := $(dml2_ccflags) --CFLAGS_$(AMDDALPATH)/dc/dml2_0/dml2_wrapper_fpu.o := $(dml2_ccflags) --CFLAGS_$(AMDDALPATH)/dc/dml2_0/dml2_utils.o := $(dml2_ccflags) --CFLAGS_$(AMDDALPATH)/dc/dml2_0/dml2_policy.o := $(dml2_ccflags) --CFLAGS_$(AMDDALPATH)/dc/dml2_0/dml2_translation_helper.o := $(dml2_ccflags) --CFLAGS_$(AMDDALPATH)/dc/dml2_0/dml2_mall_phantom.o := $(dml2_ccflags) --CFLAGS_$(AMDDALPATH)/dc/dml2_0/dml_display_rq_dlg_calc.o := $(dml2_ccflags) --CFLAGS_$(AMDDALPATH)/dc/dml2_0/dml2_dc_resource_mgmt.o := $(dml2_ccflags) -+# Add FPU flags to all dml2 files by default, remove NO_FPU flags. -+# FPU flags step 1: Find all .c files in dal/dc/dml2_0 and it's subfolders -+DML2_ABS_PATH := $(FULL_AMD_DISPLAY_PATH)/dc/dml2_0 -+DML2_C_FILES := $(shell find $(DML2_ABS_PATH) -name '*.c' -type f) -+ -+# FPU flags step 2: Convert to .o and make paths relative to $(AMDDALPATH)/dc/dml2_0/ -+DML2_RELATIVE_O_FILES := $(patsubst $(DML2_ABS_PATH)/%,dc/dml2_0/%,$(patsubst %.c,%.o,$(DML2_C_FILES))) - -+# FPU flags step 3: Apply FPU flags to all .o files from dal/dc/dml2_0 and it's subfolders -+$(foreach obj,$(DML2_RELATIVE_O_FILES),$(eval CFLAGS_$(AMDDALPATH)/$(obj) := $(dml2_ccflags))) -+$(foreach obj,$(DML2_RELATIVE_O_FILES),$(eval CFLAGS_REMOVE_$(AMDDALPATH)/$(obj) := $(dml2_rcflags))) -+ -+# FPU flags step 4: Replace CFLAGS per file for files with additional flags beyond dml2_ccflags and dml2_rcflags -+CFLAGS_$(AMDDALPATH)/dc/dml2_0/display_mode_core.o := $(dml2_ccflags) $(frame_warn_flag) -+CFLAGS_$(AMDDALPATH)/dc/dml2_0/dml21/src/dml2_core/dml2_core_dcn4_calcs.o := $(dml2_ccflags) $(frame_warn_flag) -+CFLAGS_$(AMDDALPATH)/dc/dml2_0/dml21/src/dml2_core/dml2_core_utils.o := $(dml2_ccflags) $(frame_warn_flag) -+CFLAGS_$(AMDDALPATH)/dc/dml2_0/dml2_wrapper.o := $(dml2_rcflags) -+CFLAGS_$(AMDDALPATH)/dc/dml2_0/dml21/dml21_wrapper.o := $(dml2_rcflags) - CFLAGS_REMOVE_$(AMDDALPATH)/dc/dml2_0/display_mode_core.o := $(dml2_rcflags) --CFLAGS_REMOVE_$(AMDDALPATH)/dc/dml2_0/display_mode_util.o := $(dml2_rcflags) --CFLAGS_REMOVE_$(AMDDALPATH)/dc/dml2_0/dml2_wrapper_fpu.o := $(dml2_rcflags) --CFLAGS_REMOVE_$(AMDDALPATH)/dc/dml2_0/dml2_utils.o := $(dml2_rcflags) --CFLAGS_REMOVE_$(AMDDALPATH)/dc/dml2_0/dml2_policy.o := $(dml2_rcflags) --CFLAGS_REMOVE_$(AMDDALPATH)/dc/dml2_0/dml2_translation_helper.o := $(dml2_rcflags) --CFLAGS_REMOVE_$(AMDDALPATH)/dc/dml2_0/dml2_mall_phantom.o := $(dml2_rcflags) --CFLAGS_REMOVE_$(AMDDALPATH)/dc/dml2_0/dml_display_rq_dlg_calc.o := $(dml2_rcflags) --CFLAGS_REMOVE_$(AMDDALPATH)/dc/dml2_0/dml2_dc_resource_mgmt.o := $(dml2_rcflags) -+CFLAGS_REMOVE_$(AMDDALPATH)/dc/dml2_0/dml21/src/dml2_core/dml2_core_dcn4_calcs.o := $(dml2_rcflags) -+CFLAGS_REMOVE_$(AMDDALPATH)/dc/dml2_0/dml21/src/dml2_core/dml2_core_utils.o := $(dml2_rcflags) -+CFLAGS_REMOVE_$(AMDDALPATH)/dc/dml2_0/dml2_wrapper.o := $(dml2_ccflags) -+CFLAGS_REMOVE_$(AMDDALPATH)/dc/dml2_0/dml21/dml21_wrapper.o := $(dml2_ccflags) - - DML2 = display_mode_core.o display_mode_util.o dml2_wrapper_fpu.o dml2_wrapper.o \ - dml2_utils.o dml2_policy.o dml2_translation_helper.o dml2_dc_resource_mgmt.o dml2_mall_phantom.o \ -@@ -81,40 +85,6 @@ AMD_DAL_DML2 = $(addprefix $(AMDDALPATH)/dc/dml2_0/,$(DML2)) +@@ -85,6 +85,7 @@ AMD_DAL_DML2 = $(addprefix $(AMDDALPATH)/dc/dml2_0/,$(DML2)) AMD_DISPLAY_FILES += $(AMD_DAL_DML2) --CFLAGS_$(AMDDALPATH)/dc/dml2_0/dml21/src/dml2_core/dml2_core_dcn4.o := $(dml2_ccflags) --CFLAGS_$(AMDDALPATH)/dc/dml2_0/dml21/src/dml2_core/dml2_core_dcn4_calcs.o := $(dml2_ccflags) $(frame_warn_flag) --CFLAGS_$(AMDDALPATH)/dc/dml2_0/dml21/src/dml2_core/dml2_core_utils.o := $(dml2_ccflags) $(frame_warn_flag) --CFLAGS_$(AMDDALPATH)/dc/dml2_0/dml21/src/dml2_top/dml2_top_interfaces.o := $(dml2_ccflags) --CFLAGS_$(AMDDALPATH)/dc/dml2_0/dml21/src/dml2_top/dml2_top_soc15.o := $(dml2_ccflags) --CFLAGS_$(AMDDALPATH)/dc/dml2_0/dml21/src/dml2_core/dml2_core_factory.o := $(dml2_ccflags) --CFLAGS_$(AMDDALPATH)/dc/dml2_0/dml21/src/dml2_dpmm/dml2_dpmm_dcn4.o := $(dml2_ccflags) --CFLAGS_$(AMDDALPATH)/dc/dml2_0/dml21/src/dml2_dpmm/dml2_dpmm_factory.o := $(dml2_ccflags) --CFLAGS_$(AMDDALPATH)/dc/dml2_0/dml21/src/dml2_mcg/dml2_mcg_dcn4.o := $(dml2_ccflags) --CFLAGS_$(AMDDALPATH)/dc/dml2_0/dml21/src/dml2_mcg/dml2_mcg_factory.o := $(dml2_ccflags) --CFLAGS_$(AMDDALPATH)/dc/dml2_0/dml21/src/dml2_pmo/dml2_pmo_dcn3.o := $(dml2_ccflags) --CFLAGS_$(AMDDALPATH)/dc/dml2_0/dml21/src/dml2_pmo/dml2_pmo_dcn4_fams2.o := $(dml2_ccflags) --CFLAGS_$(AMDDALPATH)/dc/dml2_0/dml21/src/dml2_pmo/dml2_pmo_factory.o := $(dml2_ccflags) --CFLAGS_$(AMDDALPATH)/dc/dml2_0/dml21/src/dml2_standalone_libraries/lib_float_math.o := $(dml2_ccflags) --CFLAGS_$(AMDDALPATH)/dc/dml2_0/dml21/dml21_translation_helper.o := $(dml2_ccflags) --CFLAGS_$(AMDDALPATH)/dc/dml2_0/dml21/dml21_utils.o := $(dml2_ccflags) -- --CFLAGS_REMOVE_$(AMDDALPATH)/dc/dml2_0/dml21/src/dml2_core/dml2_core_dcn4.o := $(dml2_rcflags) --CFLAGS_REMOVE_$(AMDDALPATH)/dc/dml2_0/dml21/src/dml2_core/dml2_core_dcn4_calcs.o := $(dml2_rcflags) --CFLAGS_REMOVE_$(AMDDALPATH)/dc/dml2_0/dml21/src/dml2_core/dml2_core_factory.o := $(dml2_rcflags) --CFLAGS_REMOVE_$(AMDDALPATH)/dc/dml2_0/dml21/src/dml2_core/dml2_core_utils.o := $(dml2_rcflags) --CFLAGS_REMOVE_$(AMDDALPATH)/dc/dml2_0/dml21/src/dml2_top/dml2_top_interfaces.o := $(dml2_rcflags) --CFLAGS_REMOVE_$(AMDDALPATH)/dc/dml2_0/dml21/src/dml2_top/dml2_top_soc15.o := $(dml2_rcflags) --CFLAGS_REMOVE_$(AMDDALPATH)/dc/dml2_0/dml21/src/dml2_dpmm/dml2_dpmm_dcn4.o := $(dml2_rcflags) --CFLAGS_REMOVE_$(AMDDALPATH)/dc/dml2_0/dml21/src/dml2_dpmm/dml2_dpmm_factory.o := $(dml2_rcflags) --CFLAGS_REMOVE_$(AMDDALPATH)/dc/dml2_0/dml21/src/dml2_mcg/dml2_mcg_dcn4.o := $(dml2_rcflags) --CFLAGS_REMOVE_$(AMDDALPATH)/dc/dml2_0/dml21/src/dml2_mcg/dml2_mcg_factory.o := $(dml2_rcflags) --CFLAGS_REMOVE_$(AMDDALPATH)/dc/dml2_0/dml21/src/dml2_pmo/dml2_pmo_dcn3.o := $(dml2_rcflags) --CFLAGS_REMOVE_$(AMDDALPATH)/dc/dml2_0/dml21/src/dml2_pmo/dml2_pmo_dcn4_fams2.o := $(dml2_rcflags) --CFLAGS_REMOVE_$(AMDDALPATH)/dc/dml2_0/dml21/src/dml2_pmo/dml2_pmo_factory.o := $(dml2_rcflags) --CFLAGS_REMOVE_$(AMDDALPATH)/dc/dml2_0/dml21/src/dml2_standalone_libraries/lib_float_math.o := $(dml2_rcflags) --CFLAGS_REMOVE_$(AMDDALPATH)/dc/dml2_0/dml21/dml21_translation_helper.o := $(dml2_rcflags) --CFLAGS_REMOVE_$(AMDDALPATH)/dc/dml2_0/dml21/dml21_utils.o := $(dml2_rcflags) -- ++ DML21 := src/dml2_top/dml2_top_interfaces.o DML21 += src/dml2_top/dml2_top_soc15.o DML21 += src/dml2_core/dml2_core_dcn4.o -@@ -131,6 +101,7 @@ DML21 += src/dml2_pmo/dml2_pmo_dcn4_fams2.o - DML21 += src/dml2_standalone_libraries/lib_float_math.o - DML21 += dml21_translation_helper.o - DML21 += dml21_wrapper.o -+DML21 += dml21_wrapper_fpu.o - DML21 += dml21_utils.o - - AMD_DAL_DML21 = $(addprefix $(AMDDALPATH)/dc/dml2_0/dml21/,$(DML21)) diff --git a/drivers/gpu/drm/amd/display/dc/dml2_0/dml21/dml21_wrapper.c b/drivers/gpu/drm/amd/display/dc/dml2_0/dml21/dml21_wrapper.c -index 2623e917ec28..1a98578f223c 100644 +index 1a98578f223c..7398f8b69adb 100644 --- a/drivers/gpu/drm/amd/display/dc/dml2_0/dml21/dml21_wrapper.c +++ b/drivers/gpu/drm/amd/display/dc/dml2_0/dml21/dml21_wrapper.c -@@ -9,6 +9,10 @@ - #include "dml21_utils.h" - #include "dml21_translation_helper.h" - #include "dml2_dc_resource_mgmt.h" -+#include "dml2_wrapper.h" -+#include "dml2_wrapper_fpu.h" -+#include "dml21_wrapper.h" -+#include "dml21_wrapper_fpu.h" - #include "dc_fpu.h" +@@ -38,6 +38,7 @@ static bool dml21_allocate_memory(struct dml2_context **dml_ctx) + (*dml_ctx)->v21.mode_programming.display_config = (*dml_ctx)->v21.mode_support.display_config; - #if !defined(DC_RUN_WITH_PREEMPTION_ENABLED) -@@ -40,44 +44,11 @@ static bool dml21_allocate_memory(struct dml2_context **dml_ctx) - return true; - } - --static void dml21_populate_configuration_options(const struct dc *in_dc, -- struct dml2_context *dml_ctx, -- const struct dml2_configuration_options *config) --{ -- dml_ctx->config = *config; -- -- /* UCLK P-State options */ -- if (in_dc->debug.dml21_force_pstate_method) { -- dml_ctx->config.pmo.force_pstate_method_enable = true; -- for (int i = 0; i < MAX_PIPES; i++) -- dml_ctx->config.pmo.force_pstate_method_values[i] = in_dc->debug.dml21_force_pstate_method_values[i]; -- } else { -- dml_ctx->config.pmo.force_pstate_method_enable = false; -- } --} -- --static void dml21_init(const struct dc *in_dc, struct dml2_context *dml_ctx, const struct dml2_configuration_options *config) --{ -- -- dml_ctx->architecture = dml2_architecture_21; -- -- dml21_populate_configuration_options(in_dc, dml_ctx, config); -- -- DC_FP_START(); -- -- dml21_populate_dml_init_params(&dml_ctx->v21.dml_init, &dml_ctx->config, in_dc); -- -- dml2_initialize_instance(&dml_ctx->v21.dml_init); -- -- DC_FP_END(); --} -- - bool dml21_create(const struct dc *in_dc, struct dml2_context **dml_ctx, const struct dml2_configuration_options *config) - { - /* Allocate memory for initializing DML21 instance */ -- if (!dml21_allocate_memory(dml_ctx)) { -+ if (!dml21_allocate_memory(dml_ctx)) + DC_RUN_WITH_PREEMPTION_ENABLED((*dml_ctx)->v21.mode_programming.programming = vzalloc(sizeof(struct dml2_display_cfg_programming))); ++ + if (!((*dml_ctx)->v21.mode_programming.programming)) return false; -- } - - dml21_init(in_dc, *dml_ctx, config); - -@@ -90,337 +61,6 @@ void dml21_destroy(struct dml2_context *dml2) - vfree(dml2->v21.mode_programming.programming); - } - --static void dml21_calculate_rq_and_dlg_params(const struct dc *dc, struct dc_state *context, struct resource_context *out_new_hw_state, -- struct dml2_context *in_ctx, unsigned int pipe_cnt) --{ -- unsigned int dml_prog_idx = 0, dc_pipe_index = 0, num_dpps_required = 0; -- struct dml2_per_plane_programming *pln_prog = NULL; -- struct dml2_per_stream_programming *stream_prog = NULL; -- struct pipe_ctx *dc_main_pipes[__DML2_WRAPPER_MAX_STREAMS_PLANES__]; -- struct pipe_ctx *dc_phantom_pipes[__DML2_WRAPPER_MAX_STREAMS_PLANES__] = {0}; -- int num_pipes; -- unsigned int dml_phantom_prog_idx; -- -- context->bw_ctx.bw.dcn.clk.dppclk_khz = 0; -- -- /* copy global DCHUBBUB arbiter registers */ -- memcpy(&context->bw_ctx.bw.dcn.arb_regs, &in_ctx->v21.mode_programming.programming->global_regs.arb_regs, sizeof(struct dml2_display_arb_regs)); -- -- /* legacy only */ -- context->bw_ctx.bw.dcn.compbuf_size_kb = (int)in_ctx->v21.mode_programming.programming->global_regs.arb_regs.compbuf_size * 64; -- -- context->bw_ctx.bw.dcn.mall_ss_size_bytes = 0; -- context->bw_ctx.bw.dcn.mall_ss_psr_active_size_bytes = 0; -- context->bw_ctx.bw.dcn.mall_subvp_size_bytes = 0; -- -- /* phantom's start after main planes */ -- dml_phantom_prog_idx = in_ctx->v21.mode_programming.programming->display_config.num_planes; -- -- for (dml_prog_idx = 0; dml_prog_idx < DML2_MAX_PLANES; dml_prog_idx++) { -- pln_prog = &in_ctx->v21.mode_programming.programming->plane_programming[dml_prog_idx]; -- -- if (!pln_prog->plane_descriptor) -- continue; -- -- stream_prog = &in_ctx->v21.mode_programming.programming->stream_programming[pln_prog->plane_descriptor->stream_index]; -- num_dpps_required = pln_prog->num_dpps_required; -- -- if (num_dpps_required == 0) { -- continue; -- } -- num_pipes = dml21_find_dc_pipes_for_plane(dc, context, in_ctx, dc_main_pipes, dc_phantom_pipes, dml_prog_idx); -- -- if (num_pipes <= 0) -- continue; -- -- /* program each pipe */ -- for (dc_pipe_index = 0; dc_pipe_index < num_pipes; dc_pipe_index++) { -- dml21_program_dc_pipe(in_ctx, context, dc_main_pipes[dc_pipe_index], pln_prog, stream_prog); -- -- if (pln_prog->phantom_plane.valid && dc_phantom_pipes[dc_pipe_index]) { -- dml21_program_dc_pipe(in_ctx, context, dc_phantom_pipes[dc_pipe_index], pln_prog, stream_prog); -- } -- } -- -- /* copy per plane mcache allocation */ -- memcpy(&context->bw_ctx.bw.dcn.mcache_allocations[dml_prog_idx], &pln_prog->mcache_allocation, sizeof(struct dml2_mcache_surface_allocation)); -- if (pln_prog->phantom_plane.valid) { -- memcpy(&context->bw_ctx.bw.dcn.mcache_allocations[dml_phantom_prog_idx], -- &pln_prog->phantom_plane.mcache_allocation, -- sizeof(struct dml2_mcache_surface_allocation)); -- -- dml_phantom_prog_idx++; -- } -- } -- -- /* assign global clocks */ -- context->bw_ctx.bw.dcn.clk.bw_dppclk_khz = context->bw_ctx.bw.dcn.clk.dppclk_khz; -- context->bw_ctx.bw.dcn.clk.bw_dispclk_khz = context->bw_ctx.bw.dcn.clk.dispclk_khz; -- if (in_ctx->v21.dml_init.soc_bb.clk_table.dispclk.num_clk_values > 1) { -- context->bw_ctx.bw.dcn.clk.max_supported_dispclk_khz = -- in_ctx->v21.dml_init.soc_bb.clk_table.dispclk.clk_values_khz[in_ctx->v21.dml_init.soc_bb.clk_table.dispclk.num_clk_values] * 1000; -- } else { -- context->bw_ctx.bw.dcn.clk.max_supported_dispclk_khz = in_ctx->v21.dml_init.soc_bb.clk_table.dispclk.clk_values_khz[0] * 1000; -- } -- -- if (in_ctx->v21.dml_init.soc_bb.clk_table.dppclk.num_clk_values > 1) { -- context->bw_ctx.bw.dcn.clk.max_supported_dppclk_khz = -- in_ctx->v21.dml_init.soc_bb.clk_table.dppclk.clk_values_khz[in_ctx->v21.dml_init.soc_bb.clk_table.dppclk.num_clk_values] * 1000; -- } else { -- context->bw_ctx.bw.dcn.clk.max_supported_dppclk_khz = in_ctx->v21.dml_init.soc_bb.clk_table.dppclk.clk_values_khz[0] * 1000; -- } -- -- /* get global mall allocation */ -- if (dc->res_pool->funcs->calculate_mall_ways_from_bytes) { -- context->bw_ctx.bw.dcn.clk.num_ways = dc->res_pool->funcs->calculate_mall_ways_from_bytes(dc, context->bw_ctx.bw.dcn.mall_subvp_size_bytes); -- } else { -- context->bw_ctx.bw.dcn.clk.num_ways = 0; -- } --} -- --static void dml21_prepare_mcache_params(struct dml2_context *dml_ctx, struct dc_state *context, struct dc_mcache_params *mcache_params) --{ -- int dc_plane_idx = 0; -- int dml_prog_idx, stream_idx, plane_idx; -- struct dml2_per_plane_programming *pln_prog = NULL; -- -- for (stream_idx = 0; stream_idx < context->stream_count; stream_idx++) { -- for (plane_idx = 0; plane_idx < context->stream_status[stream_idx].plane_count; plane_idx++) { -- dml_prog_idx = map_plane_to_dml21_display_cfg(dml_ctx, context->streams[stream_idx]->stream_id, context->stream_status[stream_idx].plane_states[plane_idx], context); -- if (dml_prog_idx == INVALID) { -- continue; -- } -- pln_prog = &dml_ctx->v21.mode_programming.programming->plane_programming[dml_prog_idx]; -- mcache_params[dc_plane_idx].valid = pln_prog->mcache_allocation.valid; -- mcache_params[dc_plane_idx].num_mcaches_plane0 = pln_prog->mcache_allocation.num_mcaches_plane0; -- mcache_params[dc_plane_idx].num_mcaches_plane1 = pln_prog->mcache_allocation.num_mcaches_plane1; -- mcache_params[dc_plane_idx].requires_dedicated_mall_mcache = pln_prog->mcache_allocation.requires_dedicated_mall_mcache; -- mcache_params[dc_plane_idx].last_slice_sharing.plane0_plane1 = pln_prog->mcache_allocation.last_slice_sharing.plane0_plane1; -- memcpy(mcache_params[dc_plane_idx].mcache_x_offsets_plane0, -- pln_prog->mcache_allocation.mcache_x_offsets_plane0, -- sizeof(int) * (DML2_MAX_MCACHES + 1)); -- memcpy(mcache_params[dc_plane_idx].mcache_x_offsets_plane1, -- pln_prog->mcache_allocation.mcache_x_offsets_plane1, -- sizeof(int) * (DML2_MAX_MCACHES + 1)); -- dc_plane_idx++; -- } -- } --} -- --static bool dml21_mode_check_and_programming(const struct dc *in_dc, struct dc_state *context, struct dml2_context *dml_ctx) --{ -- bool result = false; -- struct dml2_build_mode_programming_in_out *mode_programming = &dml_ctx->v21.mode_programming; -- struct dc_mcache_params mcache_params[MAX_PLANES] = {0}; -- -- memset(&dml_ctx->v21.display_config, 0, sizeof(struct dml2_display_cfg)); -- memset(&dml_ctx->v21.dml_to_dc_pipe_mapping, 0, sizeof(struct dml2_dml_to_dc_pipe_mapping)); -- memset(&dml_ctx->v21.mode_programming.dml2_instance->scratch.build_mode_programming_locals.mode_programming_params, 0, sizeof(struct dml2_core_mode_programming_in_out)); -- -- if (!context) -- return true; -- -- if (context->stream_count == 0) { -- dml21_init_min_clocks_for_dc_state(dml_ctx, context); -- dml21_build_fams2_programming(in_dc, context, dml_ctx); -- return true; -- } -- -- /* scrub phantom's from current dc_state */ -- dml_ctx->config.svp_pstate.callbacks.remove_phantom_streams_and_planes(in_dc, context); -- dml_ctx->config.svp_pstate.callbacks.release_phantom_streams_and_planes(in_dc, context); -- -- /* Populate stream, plane mappings and other fields in display config. */ -- result = dml21_map_dc_state_into_dml_display_cfg(in_dc, context, dml_ctx); -- if (!result) -- return false; -- -- DC_FP_START(); -- result = dml2_build_mode_programming(mode_programming); -- DC_FP_END(); -- if (!result) -- return false; -- -- /* Check and map HW resources */ -- if (result && !dml_ctx->config.skip_hw_state_mapping) { -- dml21_map_hw_resources(dml_ctx); -- dml2_map_dc_pipes(dml_ctx, context, NULL, &dml_ctx->v21.dml_to_dc_pipe_mapping, in_dc->current_state); -- /* if subvp phantoms are present, expand them into dc context */ -- dml21_handle_phantom_streams_planes(in_dc, context, dml_ctx); -- -- if (in_dc->res_pool->funcs->program_mcache_pipe_config) { -- //Prepare mcache params for each plane based on mcache output from DML -- dml21_prepare_mcache_params(dml_ctx, context, mcache_params); -- -- //populate mcache regs to each pipe -- dml_ctx->config.callbacks.allocate_mcache(context, mcache_params); -- } -- } -- -- /* Copy DML CLK, WM and REG outputs to bandwidth context */ -- if (result && !dml_ctx->config.skip_hw_state_mapping) { -- dml21_calculate_rq_and_dlg_params(in_dc, context, &context->res_ctx, dml_ctx, in_dc->res_pool->pipe_count); -- dml21_copy_clocks_to_dc_state(dml_ctx, context); -- dml21_extract_watermark_sets(in_dc, &context->bw_ctx.bw.dcn.watermarks, dml_ctx); -- dml21_build_fams2_programming(in_dc, context, dml_ctx); -- } -- -- return true; --} -- --static bool dml21_check_mode_support(const struct dc *in_dc, struct dc_state *context, struct dml2_context *dml_ctx) --{ -- bool is_supported = false; -- struct dml2_initialize_instance_in_out *dml_init = &dml_ctx->v21.dml_init; -- struct dml2_check_mode_supported_in_out *mode_support = &dml_ctx->v21.mode_support; -- -- memset(&dml_ctx->v21.display_config, 0, sizeof(struct dml2_display_cfg)); -- memset(&dml_ctx->v21.dml_to_dc_pipe_mapping, 0, sizeof(struct dml2_dml_to_dc_pipe_mapping)); -- memset(&dml_ctx->v21.mode_programming.dml2_instance->scratch.check_mode_supported_locals.mode_support_params, 0, sizeof(struct dml2_core_mode_support_in_out)); -- -- if (!context || context->stream_count == 0) -- return true; -- -- /* Scrub phantom's from current dc_state */ -- dml_ctx->config.svp_pstate.callbacks.remove_phantom_streams_and_planes(in_dc, context); -- dml_ctx->config.svp_pstate.callbacks.release_phantom_streams_and_planes(in_dc, context); -- -- mode_support->dml2_instance = dml_init->dml2_instance; -- dml21_map_dc_state_into_dml_display_cfg(in_dc, context, dml_ctx); -- dml_ctx->v21.mode_programming.dml2_instance->scratch.build_mode_programming_locals.mode_programming_params.programming = dml_ctx->v21.mode_programming.programming; -- DC_FP_START(); -- is_supported = dml2_check_mode_supported(mode_support); -- DC_FP_END(); -- if (!is_supported) -- return false; -- -- return true; --} -- --bool dml21_validate(const struct dc *in_dc, struct dc_state *context, struct dml2_context *dml_ctx, -- enum dc_validate_mode validate_mode) --{ -- bool out = false; -- -- /* Use dml21_check_mode_support for DC_VALIDATE_MODE_ONLY and DC_VALIDATE_MODE_AND_STATE_INDEX path */ -- if (validate_mode != DC_VALIDATE_MODE_AND_PROGRAMMING) -- out = dml21_check_mode_support(in_dc, context, dml_ctx); -- else -- out = dml21_mode_check_and_programming(in_dc, context, dml_ctx); -- -- return out; --} -- --void dml21_prepare_mcache_programming(struct dc *in_dc, struct dc_state *context, struct dml2_context *dml_ctx) --{ -- unsigned int dml_prog_idx, dml_phantom_prog_idx, dc_pipe_index; -- int num_pipes; -- struct pipe_ctx *dc_main_pipes[__DML2_WRAPPER_MAX_STREAMS_PLANES__]; -- struct pipe_ctx *dc_phantom_pipes[__DML2_WRAPPER_MAX_STREAMS_PLANES__] = {0}; -- -- struct dml2_per_plane_programming *pln_prog = NULL; -- struct dml2_plane_mcache_configuration_descriptor *mcache_config = NULL; -- struct prepare_mcache_programming_locals *l = &dml_ctx->v21.scratch.prepare_mcache_locals; -- -- if (context->stream_count == 0) { -- return; -- } -- -- memset(&l->build_mcache_programming_params, 0, sizeof(struct dml2_build_mcache_programming_in_out)); -- l->build_mcache_programming_params.dml2_instance = dml_ctx->v21.dml_init.dml2_instance; -- -- /* phantom's start after main planes */ -- dml_phantom_prog_idx = dml_ctx->v21.mode_programming.programming->display_config.num_planes; -- -- /* Build mcache programming parameters per plane per pipe */ -- for (dml_prog_idx = 0; dml_prog_idx < dml_ctx->v21.mode_programming.programming->display_config.num_planes; dml_prog_idx++) { -- pln_prog = &dml_ctx->v21.mode_programming.programming->plane_programming[dml_prog_idx]; -- -- mcache_config = &l->build_mcache_programming_params.mcache_configurations[dml_prog_idx]; -- memset(mcache_config, 0, sizeof(struct dml2_plane_mcache_configuration_descriptor)); -- mcache_config->plane_descriptor = pln_prog->plane_descriptor; -- mcache_config->mcache_allocation = &context->bw_ctx.bw.dcn.mcache_allocations[dml_prog_idx]; -- mcache_config->num_pipes = pln_prog->num_dpps_required; -- l->build_mcache_programming_params.num_configurations++; -- -- if (pln_prog->num_dpps_required == 0) { -- continue; -- } -- -- num_pipes = dml21_find_dc_pipes_for_plane(in_dc, context, dml_ctx, dc_main_pipes, dc_phantom_pipes, dml_prog_idx); -- if (num_pipes <= 0 || dc_main_pipes[0]->stream == NULL || -- dc_main_pipes[0]->plane_state == NULL) -- continue; -- -- /* get config for each pipe */ -- for (dc_pipe_index = 0; dc_pipe_index < num_pipes; dc_pipe_index++) { -- ASSERT(dc_main_pipes[dc_pipe_index]); -- dml21_get_pipe_mcache_config(context, dc_main_pipes[dc_pipe_index], pln_prog, &mcache_config->pipe_configurations[dc_pipe_index]); -- } -- -- /* get config for each phantom pipe */ -- if (pln_prog->phantom_plane.valid && -- dc_phantom_pipes[0] && -- dc_main_pipes[0]->stream && -- dc_phantom_pipes[0]->plane_state) { -- mcache_config = &l->build_mcache_programming_params.mcache_configurations[dml_phantom_prog_idx]; -- memset(mcache_config, 0, sizeof(struct dml2_plane_mcache_configuration_descriptor)); -- mcache_config->plane_descriptor = pln_prog->plane_descriptor; -- mcache_config->mcache_allocation = &context->bw_ctx.bw.dcn.mcache_allocations[dml_phantom_prog_idx]; -- mcache_config->num_pipes = pln_prog->num_dpps_required; -- l->build_mcache_programming_params.num_configurations++; -- -- for (dc_pipe_index = 0; dc_pipe_index < num_pipes; dc_pipe_index++) { -- ASSERT(dc_phantom_pipes[dc_pipe_index]); -- dml21_get_pipe_mcache_config(context, dc_phantom_pipes[dc_pipe_index], pln_prog, &mcache_config->pipe_configurations[dc_pipe_index]); -- } -- -- /* increment phantom index */ -- dml_phantom_prog_idx++; -- } -- } -- -- /* Call to generate mcache programming per plane per pipe for the given display configuration */ -- dml2_build_mcache_programming(&l->build_mcache_programming_params); -- -- /* get per plane per pipe mcache programming */ -- for (dml_prog_idx = 0; dml_prog_idx < dml_ctx->v21.mode_programming.programming->display_config.num_planes; dml_prog_idx++) { -- pln_prog = &dml_ctx->v21.mode_programming.programming->plane_programming[dml_prog_idx]; -- -- num_pipes = dml21_find_dc_pipes_for_plane(in_dc, context, dml_ctx, dc_main_pipes, dc_phantom_pipes, dml_prog_idx); -- if (num_pipes <= 0 || dc_main_pipes[0]->stream == NULL || -- dc_main_pipes[0]->plane_state == NULL) -- continue; -- -- /* get config for each pipe */ -- for (dc_pipe_index = 0; dc_pipe_index < num_pipes; dc_pipe_index++) { -- ASSERT(dc_main_pipes[dc_pipe_index]); -- if (l->build_mcache_programming_params.per_plane_pipe_mcache_regs[dml_prog_idx][dc_pipe_index]) { -- memcpy(&dc_main_pipes[dc_pipe_index]->mcache_regs, -- l->build_mcache_programming_params.per_plane_pipe_mcache_regs[dml_prog_idx][dc_pipe_index], -- sizeof(struct dml2_hubp_pipe_mcache_regs)); -- } -- } -- -- /* get config for each phantom pipe */ -- if (pln_prog->phantom_plane.valid && -- dc_phantom_pipes[0] && -- dc_main_pipes[0]->stream && -- dc_phantom_pipes[0]->plane_state) { -- for (dc_pipe_index = 0; dc_pipe_index < num_pipes; dc_pipe_index++) { -- ASSERT(dc_phantom_pipes[dc_pipe_index]); -- if (l->build_mcache_programming_params.per_plane_pipe_mcache_regs[dml_phantom_prog_idx][dc_pipe_index]) { -- memcpy(&dc_phantom_pipes[dc_pipe_index]->mcache_regs, -- l->build_mcache_programming_params.per_plane_pipe_mcache_regs[dml_phantom_prog_idx][dc_pipe_index], -- sizeof(struct dml2_hubp_pipe_mcache_regs)); -- } -- } -- /* increment phantom index */ -- dml_phantom_prog_idx++; -- } -- } --} -- - void dml21_copy(struct dml2_context *dst_dml_ctx, - struct dml2_context *src_dml_ctx) - { -@@ -446,12 +86,8 @@ void dml21_copy(struct dml2_context *dst_dml_ctx, - dst_dml_ctx->v21.mode_programming.programming = dst_dml2_programming; - -- DC_FP_START(); -- - /* need to initialize copied instance for internal references to be correct */ - dml2_initialize_instance(&dst_dml_ctx->v21.dml_init); -- -- DC_FP_END(); - } +diff --git a/drivers/gpu/drm/amd/display/dc/dml2_0/dml21/dml21_wrapper_fpu.c b/drivers/gpu/drm/amd/display/dc/dml2_0/dml21/dml21_wrapper_fpu.c +index d5885bbd14c4..f3abfdbe6805 100644 +--- a/drivers/gpu/drm/amd/display/dc/dml2_0/dml21/dml21_wrapper_fpu.c ++++ b/drivers/gpu/drm/amd/display/dc/dml2_0/dml21/dml21_wrapper_fpu.c +@@ -1,6 +1,6 @@ + // SPDX-License-Identifier: MIT + // +-// Copyright 2024 Advanced Micro Devices, Inc. ++// Copyright 2026 Advanced Micro Devices, Inc. - bool dml21_create_copy(struct dml2_context **dst_dml_ctx, -@@ -466,8 +102,3 @@ bool dml21_create_copy(struct dml2_context **dst_dml_ctx, - return true; + #include "dml2_internal_types.h" + #include "dml_top.h" +@@ -377,5 +377,3 @@ void dml21_prepare_mcache_programming(struct dc *in_dc, struct dc_state *context + } + } } - --void dml21_reinit(const struct dc *in_dc, struct dml2_context *dml_ctx, const struct dml2_configuration_options *config) --{ -- dml21_init(in_dc, dml_ctx, config); --} -- -diff --git a/drivers/gpu/drm/amd/display/dc/dml2_0/dml21/dml21_wrapper.h b/drivers/gpu/drm/amd/display/dc/dml2_0/dml21/dml21_wrapper.h -index b508bbcc0e16..c4813c51251b 100644 ---- a/drivers/gpu/drm/amd/display/dc/dml2_0/dml21/dml21_wrapper.h -+++ b/drivers/gpu/drm/amd/display/dc/dml2_0/dml21/dml21_wrapper.h -@@ -34,36 +34,6 @@ void dml21_copy(struct dml2_context *dst_dml_ctx, - struct dml2_context *src_dml_ctx); - bool dml21_create_copy(struct dml2_context **dst_dml_ctx, - struct dml2_context *src_dml_ctx); --void dml21_reinit(const struct dc *in_dc, struct dml2_context *dml_ctx, const struct dml2_configuration_options *config); - --/** -- * dml21_validate - Determines if a display configuration is supported or not. -- * @in_dc: dc. -- * @context: dc_state to be validated. -- * @dml_ctx: dml21 context. -- * @validate_mode: DC_VALIDATE_MODE_ONLY and DC_VALIDATE_MODE_AND_STATE_INDEX -- * will not populate context.res_ctx. -- * -- * Based on fast_validate option internally would call: -- * -- * -dml21_mode_check_and_programming - for DC_VALIDATE_MODE_AND_PROGRAMMING option -- * Calculates if dc_state can be supported on the input display -- * configuration. If supported, generates the necessary HW -- * programming for the new dc_state. -- * -- * -dml21_check_mode_support - for DC_VALIDATE_MODE_ONLY and DC_VALIDATE_MODE_AND_STATE_INDEX option -- * Calculates if dc_state can be supported for the input display -- * config. -- * -- * Context: Two threads may not invoke this function concurrently unless they reference -- * separate dc_states for validation. -- * Return: True if mode is supported, false otherwise. -- */ --bool dml21_validate(const struct dc *in_dc, struct dc_state *context, struct dml2_context *dml_ctx, -- enum dc_validate_mode validate_mode); - --/* Prepare hubp mcache_regs for hubp mcache ID and split coordinate programming */ --void dml21_prepare_mcache_programming(struct dc *in_dc, struct dc_state *context, struct dml2_context *dml_ctx); - - /* Structure for inputting external SOCBB and DCNIP values for tool based debugging. */ - struct socbb_ip_params_external { -diff --git a/drivers/gpu/drm/amd/display/dc/dml2_0/dml21/dml21_wrapper_fpu.c b/drivers/gpu/drm/amd/display/dc/dml2_0/dml21/dml21_wrapper_fpu.c -new file mode 100644 -index 000000000000..d5885bbd14c4 ---- /dev/null -+++ b/drivers/gpu/drm/amd/display/dc/dml2_0/dml21/dml21_wrapper_fpu.c -@@ -0,0 +1,381 @@ -+// SPDX-License-Identifier: MIT -+// -+// Copyright 2024 Advanced Micro Devices, Inc. -+ -+#include "dml2_internal_types.h" -+#include "dml_top.h" -+#include "dml2_core_dcn4_calcs.h" -+#include "dml2_internal_shared_types.h" -+#include "dml21_utils.h" -+#include "dml21_translation_helper.h" -+#include "dml2_dc_resource_mgmt.h" -+#include "dml2_wrapper.h" -+#include "dml2_wrapper_fpu.h" -+#include "dml21_wrapper.h" -+#include "dml21_wrapper_fpu.h" -+ -+#define INVALID -1 -+ -+static void dml21_populate_configuration_options(const struct dc *in_dc, -+ struct dml2_context *dml_ctx, -+ const struct dml2_configuration_options *config) -+{ -+ dml_ctx->config = *config; -+ -+ /* UCLK P-State options */ -+ if (in_dc->debug.dml21_force_pstate_method) { -+ dml_ctx->config.pmo.force_pstate_method_enable = true; -+ for (int i = 0; i < MAX_PIPES; i++) -+ dml_ctx->config.pmo.force_pstate_method_values[i] = in_dc->debug.dml21_force_pstate_method_values[i]; -+ } else { -+ dml_ctx->config.pmo.force_pstate_method_enable = false; -+ } -+} -+ -+void dml21_init(const struct dc *in_dc, struct dml2_context *dml_ctx, const struct dml2_configuration_options *config) -+{ -+ dml_ctx->architecture = dml2_architecture_21; -+ -+ dml21_populate_configuration_options(in_dc, dml_ctx, config); -+ -+ dml21_populate_dml_init_params(&dml_ctx->v21.dml_init, &dml_ctx->config, in_dc); -+ -+ dml2_initialize_instance(&dml_ctx->v21.dml_init); -+} -+ -+void dml21_reinit(const struct dc *in_dc, struct dml2_context *dml_ctx, const struct dml2_configuration_options *config) -+{ -+ dml21_init(in_dc, dml_ctx, config); -+} -+ -+static void dml21_calculate_rq_and_dlg_params(const struct dc *dc, struct dc_state *context, struct resource_context *out_new_hw_state, -+ struct dml2_context *in_ctx, unsigned int pipe_cnt) -+{ -+ unsigned int dml_prog_idx = 0, dc_pipe_index = 0, num_dpps_required = 0; -+ struct dml2_per_plane_programming *pln_prog = NULL; -+ struct dml2_per_stream_programming *stream_prog = NULL; -+ struct pipe_ctx *dc_main_pipes[__DML2_WRAPPER_MAX_STREAMS_PLANES__]; -+ struct pipe_ctx *dc_phantom_pipes[__DML2_WRAPPER_MAX_STREAMS_PLANES__] = {0}; -+ int num_pipes; -+ unsigned int dml_phantom_prog_idx; -+ -+ context->bw_ctx.bw.dcn.clk.dppclk_khz = 0; -+ -+ /* copy global DCHUBBUB arbiter registers */ -+ memcpy(&context->bw_ctx.bw.dcn.arb_regs, &in_ctx->v21.mode_programming.programming->global_regs.arb_regs, sizeof(struct dml2_display_arb_regs)); -+ -+ /* legacy only */ -+ context->bw_ctx.bw.dcn.compbuf_size_kb = (int)in_ctx->v21.mode_programming.programming->global_regs.arb_regs.compbuf_size * 64; -+ -+ context->bw_ctx.bw.dcn.mall_ss_size_bytes = 0; -+ context->bw_ctx.bw.dcn.mall_ss_psr_active_size_bytes = 0; -+ context->bw_ctx.bw.dcn.mall_subvp_size_bytes = 0; -+ -+ /* phantom's start after main planes */ -+ dml_phantom_prog_idx = in_ctx->v21.mode_programming.programming->display_config.num_planes; -+ -+ for (dml_prog_idx = 0; dml_prog_idx < DML2_MAX_PLANES; dml_prog_idx++) { -+ pln_prog = &in_ctx->v21.mode_programming.programming->plane_programming[dml_prog_idx]; -+ -+ if (!pln_prog->plane_descriptor) -+ continue; -+ -+ stream_prog = &in_ctx->v21.mode_programming.programming->stream_programming[pln_prog->plane_descriptor->stream_index]; -+ num_dpps_required = pln_prog->num_dpps_required; -+ -+ if (num_dpps_required == 0) { -+ continue; -+ } -+ num_pipes = dml21_find_dc_pipes_for_plane(dc, context, in_ctx, dc_main_pipes, dc_phantom_pipes, dml_prog_idx); -+ -+ if (num_pipes <= 0) -+ continue; -+ -+ /* program each pipe */ -+ for (dc_pipe_index = 0; dc_pipe_index < num_pipes; dc_pipe_index++) { -+ dml21_program_dc_pipe(in_ctx, context, dc_main_pipes[dc_pipe_index], pln_prog, stream_prog); -+ -+ if (pln_prog->phantom_plane.valid && dc_phantom_pipes[dc_pipe_index]) { -+ dml21_program_dc_pipe(in_ctx, context, dc_phantom_pipes[dc_pipe_index], pln_prog, stream_prog); -+ } -+ } -+ -+ /* copy per plane mcache allocation */ -+ memcpy(&context->bw_ctx.bw.dcn.mcache_allocations[dml_prog_idx], &pln_prog->mcache_allocation, sizeof(struct dml2_mcache_surface_allocation)); -+ if (pln_prog->phantom_plane.valid) { -+ memcpy(&context->bw_ctx.bw.dcn.mcache_allocations[dml_phantom_prog_idx], -+ &pln_prog->phantom_plane.mcache_allocation, -+ sizeof(struct dml2_mcache_surface_allocation)); -+ -+ dml_phantom_prog_idx++; -+ } -+ } -+ -+ /* assign global clocks */ -+ context->bw_ctx.bw.dcn.clk.bw_dppclk_khz = context->bw_ctx.bw.dcn.clk.dppclk_khz; -+ context->bw_ctx.bw.dcn.clk.bw_dispclk_khz = context->bw_ctx.bw.dcn.clk.dispclk_khz; -+ if (in_ctx->v21.dml_init.soc_bb.clk_table.dispclk.num_clk_values > 1) { -+ context->bw_ctx.bw.dcn.clk.max_supported_dispclk_khz = -+ in_ctx->v21.dml_init.soc_bb.clk_table.dispclk.clk_values_khz[in_ctx->v21.dml_init.soc_bb.clk_table.dispclk.num_clk_values] * 1000; -+ } else { -+ context->bw_ctx.bw.dcn.clk.max_supported_dispclk_khz = in_ctx->v21.dml_init.soc_bb.clk_table.dispclk.clk_values_khz[0] * 1000; -+ } -+ -+ if (in_ctx->v21.dml_init.soc_bb.clk_table.dppclk.num_clk_values > 1) { -+ context->bw_ctx.bw.dcn.clk.max_supported_dppclk_khz = -+ in_ctx->v21.dml_init.soc_bb.clk_table.dppclk.clk_values_khz[in_ctx->v21.dml_init.soc_bb.clk_table.dppclk.num_clk_values] * 1000; -+ } else { -+ context->bw_ctx.bw.dcn.clk.max_supported_dppclk_khz = in_ctx->v21.dml_init.soc_bb.clk_table.dppclk.clk_values_khz[0] * 1000; -+ } -+ -+ /* get global mall allocation */ -+ if (dc->res_pool->funcs->calculate_mall_ways_from_bytes) { -+ context->bw_ctx.bw.dcn.clk.num_ways = dc->res_pool->funcs->calculate_mall_ways_from_bytes(dc, context->bw_ctx.bw.dcn.mall_subvp_size_bytes); -+ } else { -+ context->bw_ctx.bw.dcn.clk.num_ways = 0; -+ } -+} -+ -+static void dml21_prepare_mcache_params(struct dml2_context *dml_ctx, struct dc_state *context, struct dc_mcache_params *mcache_params) -+{ -+ int dc_plane_idx = 0; -+ int dml_prog_idx, stream_idx, plane_idx; -+ struct dml2_per_plane_programming *pln_prog = NULL; -+ -+ for (stream_idx = 0; stream_idx < context->stream_count; stream_idx++) { -+ for (plane_idx = 0; plane_idx < context->stream_status[stream_idx].plane_count; plane_idx++) { -+ dml_prog_idx = map_plane_to_dml21_display_cfg(dml_ctx, context->streams[stream_idx]->stream_id, context->stream_status[stream_idx].plane_states[plane_idx], context); -+ if (dml_prog_idx == INVALID) { -+ continue; -+ } -+ pln_prog = &dml_ctx->v21.mode_programming.programming->plane_programming[dml_prog_idx]; -+ mcache_params[dc_plane_idx].valid = pln_prog->mcache_allocation.valid; -+ mcache_params[dc_plane_idx].num_mcaches_plane0 = pln_prog->mcache_allocation.num_mcaches_plane0; -+ mcache_params[dc_plane_idx].num_mcaches_plane1 = pln_prog->mcache_allocation.num_mcaches_plane1; -+ mcache_params[dc_plane_idx].requires_dedicated_mall_mcache = pln_prog->mcache_allocation.requires_dedicated_mall_mcache; -+ mcache_params[dc_plane_idx].last_slice_sharing.plane0_plane1 = pln_prog->mcache_allocation.last_slice_sharing.plane0_plane1; -+ memcpy(mcache_params[dc_plane_idx].mcache_x_offsets_plane0, -+ pln_prog->mcache_allocation.mcache_x_offsets_plane0, -+ sizeof(int) * (DML2_MAX_MCACHES + 1)); -+ memcpy(mcache_params[dc_plane_idx].mcache_x_offsets_plane1, -+ pln_prog->mcache_allocation.mcache_x_offsets_plane1, -+ sizeof(int) * (DML2_MAX_MCACHES + 1)); -+ dc_plane_idx++; -+ } -+ } -+} -+ -+static bool dml21_check_mode_support(const struct dc *in_dc, struct dc_state *context, struct dml2_context *dml_ctx) -+{ -+ bool is_supported = false; -+ struct dml2_initialize_instance_in_out *dml_init = &dml_ctx->v21.dml_init; -+ struct dml2_check_mode_supported_in_out *mode_support = &dml_ctx->v21.mode_support; -+ -+ memset(&dml_ctx->v21.display_config, 0, sizeof(struct dml2_display_cfg)); -+ memset(&dml_ctx->v21.dml_to_dc_pipe_mapping, 0, sizeof(struct dml2_dml_to_dc_pipe_mapping)); -+ memset(&dml_ctx->v21.mode_programming.dml2_instance->scratch.check_mode_supported_locals.mode_support_params, 0, sizeof(struct dml2_core_mode_support_in_out)); -+ -+ if (!context || context->stream_count == 0) -+ return true; -+ -+ /* Scrub phantom's from current dc_state */ -+ dml_ctx->config.svp_pstate.callbacks.remove_phantom_streams_and_planes(in_dc, context); -+ dml_ctx->config.svp_pstate.callbacks.release_phantom_streams_and_planes(in_dc, context); -+ -+ mode_support->dml2_instance = dml_init->dml2_instance; -+ dml21_map_dc_state_into_dml_display_cfg(in_dc, context, dml_ctx); -+ dml_ctx->v21.mode_programming.dml2_instance->scratch.build_mode_programming_locals.mode_programming_params.programming = dml_ctx->v21.mode_programming.programming; -+ -+ is_supported = dml2_check_mode_supported(mode_support); -+ -+ if (!is_supported) -+ return false; -+ -+ return true; -+} -+ -+static bool dml21_mode_check_and_programming(const struct dc *in_dc, struct dc_state *context, struct dml2_context *dml_ctx) -+{ -+ bool result = false; -+ struct dml2_build_mode_programming_in_out *mode_programming = &dml_ctx->v21.mode_programming; -+ struct dc_mcache_params mcache_params[MAX_PLANES] = {0}; -+ -+ memset(&dml_ctx->v21.display_config, 0, sizeof(struct dml2_display_cfg)); -+ memset(&dml_ctx->v21.dml_to_dc_pipe_mapping, 0, sizeof(struct dml2_dml_to_dc_pipe_mapping)); -+ memset(&dml_ctx->v21.mode_programming.dml2_instance->scratch.build_mode_programming_locals.mode_programming_params, 0, sizeof(struct dml2_core_mode_programming_in_out)); -+ -+ if (!context) -+ return true; -+ -+ if (context->stream_count == 0) { -+ dml21_init_min_clocks_for_dc_state(dml_ctx, context); -+ dml21_build_fams2_programming(in_dc, context, dml_ctx); -+ return true; -+ } -+ -+ /* scrub phantom's from current dc_state */ -+ dml_ctx->config.svp_pstate.callbacks.remove_phantom_streams_and_planes(in_dc, context); -+ dml_ctx->config.svp_pstate.callbacks.release_phantom_streams_and_planes(in_dc, context); -+ -+ /* Populate stream, plane mappings and other fields in display config. */ -+ result = dml21_map_dc_state_into_dml_display_cfg(in_dc, context, dml_ctx); -+ if (!result) -+ return false; -+ -+ result = dml2_build_mode_programming(mode_programming); -+ -+ if (!result) -+ return false; -+ -+ /* Check and map HW resources */ -+ if (result && !dml_ctx->config.skip_hw_state_mapping) { -+ dml21_map_hw_resources(dml_ctx); -+ dml2_map_dc_pipes(dml_ctx, context, NULL, &dml_ctx->v21.dml_to_dc_pipe_mapping, in_dc->current_state); -+ /* if subvp phantoms are present, expand them into dc context */ -+ dml21_handle_phantom_streams_planes(in_dc, context, dml_ctx); -+ -+ if (in_dc->res_pool->funcs->program_mcache_pipe_config) { -+ //Prepare mcache params for each plane based on mcache output from DML -+ dml21_prepare_mcache_params(dml_ctx, context, mcache_params); -+ -+ //populate mcache regs to each pipe -+ dml_ctx->config.callbacks.allocate_mcache(context, mcache_params); -+ } -+ } -+ -+ /* Copy DML CLK, WM and REG outputs to bandwidth context */ -+ if (result && !dml_ctx->config.skip_hw_state_mapping) { -+ dml21_calculate_rq_and_dlg_params(in_dc, context, &context->res_ctx, dml_ctx, in_dc->res_pool->pipe_count); -+ dml21_copy_clocks_to_dc_state(dml_ctx, context); -+ dml21_extract_watermark_sets(in_dc, &context->bw_ctx.bw.dcn.watermarks, dml_ctx); -+ dml21_build_fams2_programming(in_dc, context, dml_ctx); -+ } -+ -+ return true; -+} -+ -+bool dml21_validate(const struct dc *in_dc, struct dc_state *context, struct dml2_context *dml_ctx, -+ enum dc_validate_mode validate_mode) -+{ -+ bool out = false; -+ -+ /* Use dml21_check_mode_support for DC_VALIDATE_MODE_ONLY and DC_VALIDATE_MODE_AND_STATE_INDEX path */ -+ if (validate_mode != DC_VALIDATE_MODE_AND_PROGRAMMING) -+ out = dml21_check_mode_support(in_dc, context, dml_ctx); -+ else -+ out = dml21_mode_check_and_programming(in_dc, context, dml_ctx); -+ -+ return out; -+} -+ -+void dml21_prepare_mcache_programming(struct dc *in_dc, struct dc_state *context, struct dml2_context *dml_ctx) -+{ -+ unsigned int dml_prog_idx, dml_phantom_prog_idx, dc_pipe_index; -+ int num_pipes; -+ struct pipe_ctx *dc_main_pipes[__DML2_WRAPPER_MAX_STREAMS_PLANES__]; -+ struct pipe_ctx *dc_phantom_pipes[__DML2_WRAPPER_MAX_STREAMS_PLANES__] = {0}; -+ -+ struct dml2_per_plane_programming *pln_prog = NULL; -+ struct dml2_plane_mcache_configuration_descriptor *mcache_config = NULL; -+ struct prepare_mcache_programming_locals *l = &dml_ctx->v21.scratch.prepare_mcache_locals; -+ -+ if (context->stream_count == 0) { -+ return; -+ } -+ -+ memset(&l->build_mcache_programming_params, 0, sizeof(struct dml2_build_mcache_programming_in_out)); -+ l->build_mcache_programming_params.dml2_instance = dml_ctx->v21.dml_init.dml2_instance; -+ -+ /* phantom's start after main planes */ -+ dml_phantom_prog_idx = dml_ctx->v21.mode_programming.programming->display_config.num_planes; -+ -+ /* Build mcache programming parameters per plane per pipe */ -+ for (dml_prog_idx = 0; dml_prog_idx < dml_ctx->v21.mode_programming.programming->display_config.num_planes; dml_prog_idx++) { -+ pln_prog = &dml_ctx->v21.mode_programming.programming->plane_programming[dml_prog_idx]; -+ -+ mcache_config = &l->build_mcache_programming_params.mcache_configurations[dml_prog_idx]; -+ memset(mcache_config, 0, sizeof(struct dml2_plane_mcache_configuration_descriptor)); -+ mcache_config->plane_descriptor = pln_prog->plane_descriptor; -+ mcache_config->mcache_allocation = &context->bw_ctx.bw.dcn.mcache_allocations[dml_prog_idx]; -+ mcache_config->num_pipes = pln_prog->num_dpps_required; -+ l->build_mcache_programming_params.num_configurations++; -+ -+ if (pln_prog->num_dpps_required == 0) { -+ continue; -+ } -+ -+ num_pipes = dml21_find_dc_pipes_for_plane(in_dc, context, dml_ctx, dc_main_pipes, dc_phantom_pipes, dml_prog_idx); -+ if (num_pipes <= 0 || dc_main_pipes[0]->stream == NULL || -+ dc_main_pipes[0]->plane_state == NULL) -+ continue; -+ -+ /* get config for each pipe */ -+ for (dc_pipe_index = 0; dc_pipe_index < num_pipes; dc_pipe_index++) { -+ ASSERT(dc_main_pipes[dc_pipe_index]); -+ dml21_get_pipe_mcache_config(context, dc_main_pipes[dc_pipe_index], pln_prog, &mcache_config->pipe_configurations[dc_pipe_index]); -+ } -+ -+ /* get config for each phantom pipe */ -+ if (pln_prog->phantom_plane.valid && -+ dc_phantom_pipes[0] && -+ dc_main_pipes[0]->stream && -+ dc_phantom_pipes[0]->plane_state) { -+ mcache_config = &l->build_mcache_programming_params.mcache_configurations[dml_phantom_prog_idx]; -+ memset(mcache_config, 0, sizeof(struct dml2_plane_mcache_configuration_descriptor)); -+ mcache_config->plane_descriptor = pln_prog->plane_descriptor; -+ mcache_config->mcache_allocation = &context->bw_ctx.bw.dcn.mcache_allocations[dml_phantom_prog_idx]; -+ mcache_config->num_pipes = pln_prog->num_dpps_required; -+ l->build_mcache_programming_params.num_configurations++; -+ -+ for (dc_pipe_index = 0; dc_pipe_index < num_pipes; dc_pipe_index++) { -+ ASSERT(dc_phantom_pipes[dc_pipe_index]); -+ dml21_get_pipe_mcache_config(context, dc_phantom_pipes[dc_pipe_index], pln_prog, &mcache_config->pipe_configurations[dc_pipe_index]); -+ } -+ -+ /* increment phantom index */ -+ dml_phantom_prog_idx++; -+ } -+ } -+ -+ /* Call to generate mcache programming per plane per pipe for the given display configuration */ -+ dml2_build_mcache_programming(&l->build_mcache_programming_params); -+ -+ /* get per plane per pipe mcache programming */ -+ for (dml_prog_idx = 0; dml_prog_idx < dml_ctx->v21.mode_programming.programming->display_config.num_planes; dml_prog_idx++) { -+ pln_prog = &dml_ctx->v21.mode_programming.programming->plane_programming[dml_prog_idx]; -+ -+ num_pipes = dml21_find_dc_pipes_for_plane(in_dc, context, dml_ctx, dc_main_pipes, dc_phantom_pipes, dml_prog_idx); -+ if (num_pipes <= 0 || dc_main_pipes[0]->stream == NULL || -+ dc_main_pipes[0]->plane_state == NULL) -+ continue; -+ -+ /* get config for each pipe */ -+ for (dc_pipe_index = 0; dc_pipe_index < num_pipes; dc_pipe_index++) { -+ ASSERT(dc_main_pipes[dc_pipe_index]); -+ if (l->build_mcache_programming_params.per_plane_pipe_mcache_regs[dml_prog_idx][dc_pipe_index]) { -+ memcpy(&dc_main_pipes[dc_pipe_index]->mcache_regs, -+ l->build_mcache_programming_params.per_plane_pipe_mcache_regs[dml_prog_idx][dc_pipe_index], -+ sizeof(struct dml2_hubp_pipe_mcache_regs)); -+ } -+ } -+ -+ /* get config for each phantom pipe */ -+ if (pln_prog->phantom_plane.valid && -+ dc_phantom_pipes[0] && -+ dc_main_pipes[0]->stream && -+ dc_phantom_pipes[0]->plane_state) { -+ for (dc_pipe_index = 0; dc_pipe_index < num_pipes; dc_pipe_index++) { -+ ASSERT(dc_phantom_pipes[dc_pipe_index]); -+ if (l->build_mcache_programming_params.per_plane_pipe_mcache_regs[dml_phantom_prog_idx][dc_pipe_index]) { -+ memcpy(&dc_phantom_pipes[dc_pipe_index]->mcache_regs, -+ l->build_mcache_programming_params.per_plane_pipe_mcache_regs[dml_phantom_prog_idx][dc_pipe_index], -+ sizeof(struct dml2_hubp_pipe_mcache_regs)); -+ } -+ } -+ /* increment phantom index */ -+ dml_phantom_prog_idx++; -+ } -+ } -+} -+ -+ diff --git a/drivers/gpu/drm/amd/display/dc/dml2_0/dml21/dml21_wrapper_fpu.h b/drivers/gpu/drm/amd/display/dc/dml2_0/dml21/dml21_wrapper_fpu.h -new file mode 100644 -index 000000000000..2972c6eed21a ---- /dev/null +index 2972c6eed21a..e5d9a456645f 100644 +--- a/drivers/gpu/drm/amd/display/dc/dml2_0/dml21/dml21_wrapper_fpu.h +++ b/drivers/gpu/drm/amd/display/dc/dml2_0/dml21/dml21_wrapper_fpu.h -@@ -0,0 +1,60 @@ -+// SPDX-License-Identifier: MIT -+// -+// Copyright 2024 Advanced Micro Devices, Inc. -+ -+#ifndef _DML21_WRAPPER_FPU_H_ -+#define _DML21_WRAPPER_FPU_H_ -+ -+#include "os_types.h" -+#include "dml_top_soc_parameter_types.h" -+#include "dml_top_display_cfg_types.h" -+ -+struct dc; -+struct dc_state; -+struct dml2_configuration_options; -+struct dml2_context; -+enum dc_validate_mode; -+ -+/** -+ * dml21_init - Initialize DML21 context -+ * @in_dc: dc. -+ * @dml_ctx: DML21 context to initialize. -+ * @config: dml21 configuration options. -+ * -+ * Performs FPU-requiring initialization. Must be called with FPU protection. -+ */ -+void dml21_init(const struct dc *in_dc, struct dml2_context *dml_ctx, const struct dml2_configuration_options *config); -+ -+/** -+ * dml21_validate - Determines if a display configuration is supported or not. -+ * @in_dc: dc. -+ * @context: dc_state to be validated. -+ * @dml_ctx: dml21 context. -+ * @validate_mode: DC_VALIDATE_MODE_ONLY and DC_VALIDATE_MODE_AND_STATE_INDEX -+ * will not populate context.res_ctx. -+ * -+ * Based on fast_validate option internally would call: -+ * -+ * -dml21_mode_check_and_programming - for DC_VALIDATE_MODE_AND_PROGRAMMING option -+ * Calculates if dc_state can be supported on the input display -+ * configuration. If supported, generates the necessary HW -+ * programming for the new dc_state. -+ * -+ * -dml21_check_mode_support - for DC_VALIDATE_MODE_ONLY and DC_VALIDATE_MODE_AND_STATE_INDEX option -+ * Calculates if dc_state can be supported for the input display -+ * config. -+ * -+ * Context: Two threads may not invoke this function concurrently unless they reference -+ * separate dc_states for validation. -+ * Return: True if mode is supported, false otherwise. -+ */ -+ -+void dml21_reinit(const struct dc *in_dc, struct dml2_context *dml_ctx, -+ const struct dml2_configuration_options *config); -+bool dml21_validate(const struct dc *in_dc, struct dc_state *context, struct dml2_context *dml_ctx, -+ enum dc_validate_mode validate_mode); -+ -+/* Prepare hubp mcache_regs for hubp mcache ID and split coordinate programming */ -+void dml21_prepare_mcache_programming(struct dc *in_dc, struct dc_state *context, struct dml2_context *dml_ctx); -+ -+#endif /* _DML21_WRAPPER_FPU_H_ */ +@@ -1,6 +1,6 @@ + // SPDX-License-Identifier: MIT + // +-// Copyright 2024 Advanced Micro Devices, Inc. ++// Copyright 2026 Advanced Micro Devices, Inc. + + #ifndef _DML21_WRAPPER_FPU_H_ + #define _DML21_WRAPPER_FPU_H_ diff --git a/drivers/gpu/drm/amd/display/dc/dml2_0/dml2_wrapper.c b/drivers/gpu/drm/amd/display/dc/dml2_0/dml2_wrapper.c -index 307186eb6af0..9215e38343ba 100644 +index 9215e38343ba..f4d45875d0be 100644 --- a/drivers/gpu/drm/amd/display/dc/dml2_0/dml2_wrapper.c +++ b/drivers/gpu/drm/amd/display/dc/dml2_0/dml2_wrapper.c -@@ -6,7 +6,20 @@ - */ - - #include "dml2_internal_types.h" -+#include "dml2_wrapper.h" - #include "dml2_wrapper_fpu.h" -+#include "dml21_wrapper.h" -+#include "dml21_wrapper_fpu.h" -+ -+#include "dc_fpu.h" -+ -+struct dml2_context *dml2_allocate_memory(void) -+{ -+ struct dml2_context *dml2; -+ -+ DC_RUN_WITH_PREEMPTION_ENABLED(dml2 = vzalloc(sizeof(struct dml2_context))); -+ return dml2; -+} +@@ -13,6 +13,10 @@ - bool dml2_validate(const struct dc *in_dc, struct dc_state *context, struct dml2_context *dml2, - enum dc_validate_mode validate_mode) -@@ -23,16 +36,12 @@ bool dml2_validate(const struct dc *in_dc, struct dc_state *context, struct dml2 - return out; - } - -- DC_FP_START(); -- - /* Use dml_validate_only for DC_VALIDATE_MODE_ONLY and DC_VALIDATE_MODE_AND_STATE_INDEX path */ - if (validate_mode != DC_VALIDATE_MODE_AND_PROGRAMMING) - out = dml2_validate_only(context, validate_mode); - else - out = dml2_validate_and_build_resource(in_dc, context, validate_mode); + #include "dc_fpu.h" -- DC_FP_END(); -- - return out; ++#if !defined(DC_RUN_WITH_PREEMPTION_ENABLED) ++#define DC_RUN_WITH_PREEMPTION_ENABLED(code) code ++#endif // !DC_RUN_WITH_PREEMPTION_ENABLED ++ + struct dml2_context *dml2_allocate_memory(void) + { + struct dml2_context *dml2; +@@ -20,7 +24,6 @@ struct dml2_context *dml2_allocate_memory(void) + DC_RUN_WITH_PREEMPTION_ENABLED(dml2 = vzalloc(sizeof(struct dml2_context))); + return dml2; } - -@@ -70,15 +79,11 @@ static void dml2_init(const struct dc *in_dc, const struct dml2_configuration_op - break; - } - -- DC_FP_START(); - - initialize_dml2_ip_params(*dml2, in_dc, &(*dml2)->v20.dml_core_ctx.ip); - + bool dml2_validate(const struct dc *in_dc, struct dc_state *context, struct dml2_context *dml2, + enum dc_validate_mode validate_mode) + { +@@ -84,6 +87,7 @@ static void dml2_init(const struct dc *in_dc, const struct dml2_configuration_op initialize_dml2_soc_bbox(*dml2, in_dc, &(*dml2)->v20.dml_core_ctx.soc); initialize_dml2_soc_states(*dml2, in_dc, &(*dml2)->v20.dml_core_ctx.soc, &(*dml2)->v20.dml_core_ctx.states); -- -- DC_FP_END(); ++ } bool dml2_create(const struct dc *in_dc, const struct dml2_configuration_options *config, struct dml2_context **dml2) -diff --git a/drivers/gpu/drm/amd/display/dc/dml2_0/dml2_wrapper_fpu.c b/drivers/gpu/drm/amd/display/dc/dml2_0/dml2_wrapper_fpu.c -index 203eef747262..66624cfc27b1 100644 ---- a/drivers/gpu/drm/amd/display/dc/dml2_0/dml2_wrapper_fpu.c -+++ b/drivers/gpu/drm/amd/display/dc/dml2_0/dml2_wrapper_fpu.c -@@ -31,8 +31,10 @@ - #include "dml2_translation_helper.h" - #include "dml2_mall_phantom.h" - #include "dml2_dc_resource_mgmt.h" --#include "dml21_wrapper.h" -+#include "dml2_wrapper.h" - #include "dml2_wrapper_fpu.h" -+#include "dml21_wrapper.h" -+#include "dml21_wrapper_fpu.h" - - void initialize_dml2_ip_params(struct dml2_context *dml2, const struct dc *in_dc, struct ip_params_st *out) - { -@@ -546,11 +548,6 @@ void dml2_apply_debug_options(const struct dc *dc, struct dml2_context *dml2) - } - } - --inline struct dml2_context *dml2_allocate_memory(void) --{ -- return (struct dml2_context *) vzalloc(sizeof(struct dml2_context)); --} -- - void dml2_destroy(struct dml2_context *dml2) - { - if (!dml2) -- 2.53.0 diff --git a/SPECS/linux/0087-UPSTREAM-drm-amd-display-Fix-dc_is_fp_enabled-name-m.patch b/SPECS/linux/0086-UPSTREAM-drm-amd-display-Fix-dc_is_fp_enabled-name-m.patch similarity index 92% rename from SPECS/linux/0087-UPSTREAM-drm-amd-display-Fix-dc_is_fp_enabled-name-m.patch rename to SPECS/linux/0086-UPSTREAM-drm-amd-display-Fix-dc_is_fp_enabled-name-m.patch index 60900d1ea5..e032411d0b 100644 --- a/SPECS/linux/0087-UPSTREAM-drm-amd-display-Fix-dc_is_fp_enabled-name-m.patch +++ b/SPECS/linux/0086-UPSTREAM-drm-amd-display-Fix-dc_is_fp_enabled-name-m.patch @@ -1,7 +1,7 @@ -From 1504c2ef8d5f42fa4f97aeb696e9258f9a5ba7fb Mon Sep 17 00:00:00 2001 +From 134378a7c59f0d83e59a534520ce4f89315994a6 Mon Sep 17 00:00:00 2001 From: Srinivasan Shanmugam Date: Mon, 30 Mar 2026 08:26:03 +0530 -Subject: [PATCH 087/269] UPSTREAM: drm/amd/display: Fix dc_is_fp_enabled name +Subject: [RUYI PATCH] UPSTREAM: drm/amd/display: Fix dc_is_fp_enabled name mismatch Fix incorrect function name in comment to match dc_is_fp_enabled. diff --git a/SPECS/linux/0086-UPSTREAM-drm-amd-display-Move-FPU-Guards-From-DML-To.patch b/SPECS/linux/0086-UPSTREAM-drm-amd-display-Move-FPU-Guards-From-DML-To.patch deleted file mode 100644 index 994eedb336..0000000000 --- a/SPECS/linux/0086-UPSTREAM-drm-amd-display-Move-FPU-Guards-From-DML-To.patch +++ /dev/null @@ -1,121 +0,0 @@ -From d1c805734f00c654953f0c7f1b1db76674d6d762 Mon Sep 17 00:00:00 2001 -From: Rafal Ostrowski -Date: Mon, 23 Feb 2026 06:13:32 +0100 -Subject: [PATCH 086/269] UPSTREAM: drm/amd/display: Move FPU Guards From DML - To DC - Part 3 - -[Why] -FPU guards (DC_FP_START/DC_FP_END) are required to wrap around code that -can manipulates floats. To do this properly, the FPU guards must be used -in a file that is not compiled as a FPU unit. If the guards are used in -a file that is a FPU unit, other sections in the file that aren't guarded -may be end up being compiled to use FPU operations. - -[How] -Added DC_FP_START and DC_FP_END to DC functions that call DML functions -using FPU. - -Reviewed-by: Dillon Varone -Signed-off-by: Rafal Ostrowski -Signed-off-by: Alex Hung -Signed-off-by: Alex Deucher - -(cherry picked from commit 32c1c35b6d8bd8b7ea9ab3d1454b56b605f17dd1) -Signed-off-by: Xi Ruoyao -Signed-off-by: Han Gao ---- - drivers/gpu/drm/amd/display/dc/dml2_0/Makefile | 1 + - drivers/gpu/drm/amd/display/dc/dml2_0/dml21/dml21_wrapper.c | 1 + - .../gpu/drm/amd/display/dc/dml2_0/dml21/dml21_wrapper_fpu.c | 4 +--- - .../gpu/drm/amd/display/dc/dml2_0/dml21/dml21_wrapper_fpu.h | 2 +- - drivers/gpu/drm/amd/display/dc/dml2_0/dml2_wrapper.c | 6 +++++- - 5 files changed, 9 insertions(+), 5 deletions(-) - -diff --git a/drivers/gpu/drm/amd/display/dc/dml2_0/Makefile b/drivers/gpu/drm/amd/display/dc/dml2_0/Makefile -index a094cfa78260..145ff97ed560 100644 ---- a/drivers/gpu/drm/amd/display/dc/dml2_0/Makefile -+++ b/drivers/gpu/drm/amd/display/dc/dml2_0/Makefile -@@ -85,6 +85,7 @@ AMD_DAL_DML2 = $(addprefix $(AMDDALPATH)/dc/dml2_0/,$(DML2)) - - AMD_DISPLAY_FILES += $(AMD_DAL_DML2) - -+ - DML21 := src/dml2_top/dml2_top_interfaces.o - DML21 += src/dml2_top/dml2_top_soc15.o - DML21 += src/dml2_core/dml2_core_dcn4.o -diff --git a/drivers/gpu/drm/amd/display/dc/dml2_0/dml21/dml21_wrapper.c b/drivers/gpu/drm/amd/display/dc/dml2_0/dml21/dml21_wrapper.c -index 1a98578f223c..7398f8b69adb 100644 ---- a/drivers/gpu/drm/amd/display/dc/dml2_0/dml21/dml21_wrapper.c -+++ b/drivers/gpu/drm/amd/display/dc/dml2_0/dml21/dml21_wrapper.c -@@ -38,6 +38,7 @@ static bool dml21_allocate_memory(struct dml2_context **dml_ctx) - (*dml_ctx)->v21.mode_programming.display_config = (*dml_ctx)->v21.mode_support.display_config; - - DC_RUN_WITH_PREEMPTION_ENABLED((*dml_ctx)->v21.mode_programming.programming = vzalloc(sizeof(struct dml2_display_cfg_programming))); -+ - if (!((*dml_ctx)->v21.mode_programming.programming)) - return false; - -diff --git a/drivers/gpu/drm/amd/display/dc/dml2_0/dml21/dml21_wrapper_fpu.c b/drivers/gpu/drm/amd/display/dc/dml2_0/dml21/dml21_wrapper_fpu.c -index d5885bbd14c4..f3abfdbe6805 100644 ---- a/drivers/gpu/drm/amd/display/dc/dml2_0/dml21/dml21_wrapper_fpu.c -+++ b/drivers/gpu/drm/amd/display/dc/dml2_0/dml21/dml21_wrapper_fpu.c -@@ -1,6 +1,6 @@ - // SPDX-License-Identifier: MIT - // --// Copyright 2024 Advanced Micro Devices, Inc. -+// Copyright 2026 Advanced Micro Devices, Inc. - - #include "dml2_internal_types.h" - #include "dml_top.h" -@@ -377,5 +377,3 @@ void dml21_prepare_mcache_programming(struct dc *in_dc, struct dc_state *context - } - } - } -- -- -diff --git a/drivers/gpu/drm/amd/display/dc/dml2_0/dml21/dml21_wrapper_fpu.h b/drivers/gpu/drm/amd/display/dc/dml2_0/dml21/dml21_wrapper_fpu.h -index 2972c6eed21a..e5d9a456645f 100644 ---- a/drivers/gpu/drm/amd/display/dc/dml2_0/dml21/dml21_wrapper_fpu.h -+++ b/drivers/gpu/drm/amd/display/dc/dml2_0/dml21/dml21_wrapper_fpu.h -@@ -1,6 +1,6 @@ - // SPDX-License-Identifier: MIT - // --// Copyright 2024 Advanced Micro Devices, Inc. -+// Copyright 2026 Advanced Micro Devices, Inc. - - #ifndef _DML21_WRAPPER_FPU_H_ - #define _DML21_WRAPPER_FPU_H_ -diff --git a/drivers/gpu/drm/amd/display/dc/dml2_0/dml2_wrapper.c b/drivers/gpu/drm/amd/display/dc/dml2_0/dml2_wrapper.c -index 9215e38343ba..f4d45875d0be 100644 ---- a/drivers/gpu/drm/amd/display/dc/dml2_0/dml2_wrapper.c -+++ b/drivers/gpu/drm/amd/display/dc/dml2_0/dml2_wrapper.c -@@ -13,6 +13,10 @@ - - #include "dc_fpu.h" - -+#if !defined(DC_RUN_WITH_PREEMPTION_ENABLED) -+#define DC_RUN_WITH_PREEMPTION_ENABLED(code) code -+#endif // !DC_RUN_WITH_PREEMPTION_ENABLED -+ - struct dml2_context *dml2_allocate_memory(void) - { - struct dml2_context *dml2; -@@ -20,7 +24,6 @@ struct dml2_context *dml2_allocate_memory(void) - DC_RUN_WITH_PREEMPTION_ENABLED(dml2 = vzalloc(sizeof(struct dml2_context))); - return dml2; - } -- - bool dml2_validate(const struct dc *in_dc, struct dc_state *context, struct dml2_context *dml2, - enum dc_validate_mode validate_mode) - { -@@ -84,6 +87,7 @@ static void dml2_init(const struct dc *in_dc, const struct dml2_configuration_op - initialize_dml2_soc_bbox(*dml2, in_dc, &(*dml2)->v20.dml_core_ctx.soc); - - initialize_dml2_soc_states(*dml2, in_dc, &(*dml2)->v20.dml_core_ctx.soc, &(*dml2)->v20.dml_core_ctx.states); -+ - } - - bool dml2_create(const struct dc *in_dc, const struct dml2_configuration_options *config, struct dml2_context **dml2) --- -2.53.0 - diff --git a/SPECS/linux/0088-UPSTREAM-drm-amd-display-Fix-fpu-guard-warning.patch b/SPECS/linux/0087-UPSTREAM-drm-amd-display-Fix-fpu-guard-warning.patch similarity index 99% rename from SPECS/linux/0088-UPSTREAM-drm-amd-display-Fix-fpu-guard-warning.patch rename to SPECS/linux/0087-UPSTREAM-drm-amd-display-Fix-fpu-guard-warning.patch index 9abd0fd825..93545d02e2 100644 --- a/SPECS/linux/0088-UPSTREAM-drm-amd-display-Fix-fpu-guard-warning.patch +++ b/SPECS/linux/0087-UPSTREAM-drm-amd-display-Fix-fpu-guard-warning.patch @@ -1,7 +1,7 @@ -From f3347cd6f975caa2e4d778d8149f1d0840e93fab Mon Sep 17 00:00:00 2001 +From f65592b337dff36ed7f9e68f9925ad168fc51eea Mon Sep 17 00:00:00 2001 From: Wayne Lin Date: Wed, 8 Apr 2026 15:01:27 +0800 -Subject: [PATCH 088/269] UPSTREAM: drm/amd/display: Fix fpu guard warning +Subject: [RUYI PATCH] UPSTREAM: drm/amd/display: Fix fpu guard warning [Why] Due to improper fpu guarding, we encounter this warning during boot up: diff --git a/SPECS/linux/0089-UPSTREAM-drm-amd-display-Move-dml2_destroy-to-non-FP.patch b/SPECS/linux/0088-UPSTREAM-drm-amd-display-Move-dml2_destroy-to-non-FP.patch similarity index 95% rename from SPECS/linux/0089-UPSTREAM-drm-amd-display-Move-dml2_destroy-to-non-FP.patch rename to SPECS/linux/0088-UPSTREAM-drm-amd-display-Move-dml2_destroy-to-non-FP.patch index 6abe63a384..4f901104b0 100644 --- a/SPECS/linux/0089-UPSTREAM-drm-amd-display-Move-dml2_destroy-to-non-FP.patch +++ b/SPECS/linux/0088-UPSTREAM-drm-amd-display-Move-dml2_destroy-to-non-FP.patch @@ -1,8 +1,8 @@ -From dca9f035818a772eb7c352d4d7af9a93f52b1a85 Mon Sep 17 00:00:00 2001 +From 5aba73ab30772b737710fcf864858f19e775db94 Mon Sep 17 00:00:00 2001 From: Rafal Ostrowski Date: Fri, 10 Apr 2026 09:09:57 +0200 -Subject: [PATCH 089/269] UPSTREAM: drm/amd/display: Move dml2_destroy to - non-FPU compilation unit +Subject: [RUYI PATCH] UPSTREAM: drm/amd/display: Move dml2_destroy to non-FPU + compilation unit On PREEMPT_RT kernels, vfree() can sleep because spin_lock is converted to rt_mutex. dml2_destroy() calls vfree() while inside diff --git a/SPECS/linux/0090-UPSTREAM-spi-dt-bindings-fsl-qspi-support-SpacemiT-K.patch b/SPECS/linux/0089-UPSTREAM-spi-dt-bindings-fsl-qspi-support-SpacemiT-K.patch similarity index 90% rename from SPECS/linux/0090-UPSTREAM-spi-dt-bindings-fsl-qspi-support-SpacemiT-K.patch rename to SPECS/linux/0089-UPSTREAM-spi-dt-bindings-fsl-qspi-support-SpacemiT-K.patch index 8ac08f1cc1..e44e3b451e 100644 --- a/SPECS/linux/0090-UPSTREAM-spi-dt-bindings-fsl-qspi-support-SpacemiT-K.patch +++ b/SPECS/linux/0089-UPSTREAM-spi-dt-bindings-fsl-qspi-support-SpacemiT-K.patch @@ -1,8 +1,8 @@ -From 5ec915293feef5fd6d1716c6691d15f640ea8394 Mon Sep 17 00:00:00 2001 +From b13057276442efd583b5a358c5ed98d7da47fe0b Mon Sep 17 00:00:00 2001 From: Zhengyu He Date: Thu, 21 May 2026 22:44:45 +0800 -Subject: [PATCH 090/269] UPSTREAM: spi: dt-bindings: fsl-qspi: support - SpacemiT K3 +Subject: [RUYI PATCH] UPSTREAM: spi: dt-bindings: fsl-qspi: support SpacemiT + K3 Add the SpacemiT K3 QSPI compatible to the fsl-qspi binding. diff --git a/SPECS/linux/0091-UPSTREAM-RISC-V-KVM-Fix-NULL-pointer-dereference-in-.patch b/SPECS/linux/0090-UPSTREAM-RISC-V-KVM-Fix-NULL-pointer-dereference-in-.patch similarity index 90% rename from SPECS/linux/0091-UPSTREAM-RISC-V-KVM-Fix-NULL-pointer-dereference-in-.patch rename to SPECS/linux/0090-UPSTREAM-RISC-V-KVM-Fix-NULL-pointer-dereference-in-.patch index b941ac8653..e6a1442424 100644 --- a/SPECS/linux/0091-UPSTREAM-RISC-V-KVM-Fix-NULL-pointer-dereference-in-.patch +++ b/SPECS/linux/0090-UPSTREAM-RISC-V-KVM-Fix-NULL-pointer-dereference-in-.patch @@ -1,8 +1,8 @@ -From 43ea280e7d9cbb6f77bcb9e7c8cc486a16f778d7 Mon Sep 17 00:00:00 2001 +From 5c8035de1f4ce6da6803b94fd7191b019d32c10c Mon Sep 17 00:00:00 2001 From: Jiakai Xu Date: Sun, 17 May 2026 12:44:14 +0000 -Subject: [PATCH 091/269] UPSTREAM: RISC-V: KVM: Fix NULL pointer dereference - in SBI v0.1 SEND_IPI handler +Subject: [RUYI PATCH] UPSTREAM: RISC-V: KVM: Fix NULL pointer dereference in + SBI v0.1 SEND_IPI handler The SBI v0.1 SEND_IPI handler iterates over the hart mask and calls kvm_get_vcpu_by_id() to find the target vcpu for each set bit. When a diff --git a/SPECS/linux/0092-FROMGIT-drm-imagination-Count-paired-job-fence-as-de.patch b/SPECS/linux/0091-FROMGIT-drm-imagination-Count-paired-job-fence-as-de.patch similarity index 97% rename from SPECS/linux/0092-FROMGIT-drm-imagination-Count-paired-job-fence-as-de.patch rename to SPECS/linux/0091-FROMGIT-drm-imagination-Count-paired-job-fence-as-de.patch index 6d53177813..fbac681a57 100644 --- a/SPECS/linux/0092-FROMGIT-drm-imagination-Count-paired-job-fence-as-de.patch +++ b/SPECS/linux/0091-FROMGIT-drm-imagination-Count-paired-job-fence-as-de.patch @@ -1,7 +1,7 @@ -From 69e51f88e3011f83d1134588f24cd8cbea380400 Mon Sep 17 00:00:00 2001 +From 3cd6bd0e3abdbe08f4ac52fbf67489af438a18ac Mon Sep 17 00:00:00 2001 From: Alessio Belle Date: Mon, 30 Mar 2026 08:56:36 +0100 -Subject: [PATCH 092/269] FROMGIT: drm/imagination: Count paired job fence as +Subject: [RUYI PATCH] FROMGIT: drm/imagination: Count paired job fence as dependency in prepare_job() The DRM scheduler's prepare_job() callback counts the remaining diff --git a/SPECS/linux/0093-FROMGIT-drm-imagination-Fit-paired-fragment-job-in-t.patch b/SPECS/linux/0092-FROMGIT-drm-imagination-Fit-paired-fragment-job-in-t.patch similarity index 97% rename from SPECS/linux/0093-FROMGIT-drm-imagination-Fit-paired-fragment-job-in-t.patch rename to SPECS/linux/0092-FROMGIT-drm-imagination-Fit-paired-fragment-job-in-t.patch index d57af6d2ca..6e773fbb07 100644 --- a/SPECS/linux/0093-FROMGIT-drm-imagination-Fit-paired-fragment-job-in-t.patch +++ b/SPECS/linux/0092-FROMGIT-drm-imagination-Fit-paired-fragment-job-in-t.patch @@ -1,8 +1,8 @@ -From 9ee437d02899afa205572331c93a75c1e8cde99d Mon Sep 17 00:00:00 2001 +From 6dd7524e32972a6684d9ea52b45a39acb09abd6e Mon Sep 17 00:00:00 2001 From: Alessio Belle Date: Mon, 30 Mar 2026 08:56:37 +0100 -Subject: [PATCH 093/269] FROMGIT: drm/imagination: Fit paired fragment job in - the correct CCCB +Subject: [RUYI PATCH] FROMGIT: drm/imagination: Fit paired fragment job in the + correct CCCB For geometry jobs with a paired fragment job, at the moment, the DRM scheduler's prepare_job() callback: diff --git a/SPECS/linux/0094-FROMGIT-drm-imagination-Skip-check-on-paired-job-fen.patch b/SPECS/linux/0093-FROMGIT-drm-imagination-Skip-check-on-paired-job-fen.patch similarity index 92% rename from SPECS/linux/0094-FROMGIT-drm-imagination-Skip-check-on-paired-job-fen.patch rename to SPECS/linux/0093-FROMGIT-drm-imagination-Skip-check-on-paired-job-fen.patch index 64143f2001..74594178b2 100644 --- a/SPECS/linux/0094-FROMGIT-drm-imagination-Skip-check-on-paired-job-fen.patch +++ b/SPECS/linux/0093-FROMGIT-drm-imagination-Skip-check-on-paired-job-fen.patch @@ -1,8 +1,8 @@ -From 0dbd21bbbae5d3f96c2f2305e1a2c8f78ff80f4b Mon Sep 17 00:00:00 2001 +From dd23ef7bdc2ac11bf359ac4e35134cf7437f7aaa Mon Sep 17 00:00:00 2001 From: Alessio Belle Date: Mon, 30 Mar 2026 08:56:38 +0100 -Subject: [PATCH 094/269] FROMGIT: drm/imagination: Skip check on paired job - fence during job submission +Subject: [RUYI PATCH] FROMGIT: drm/imagination: Skip check on paired job fence + during job submission While submitting a paired fragment job, there is no need to manually look for, and skip, the paired job fence, as the existing logic to diff --git a/SPECS/linux/0095-FROMGIT-drm-imagination-Rename-pvr_queue_fence_is_uf.patch b/SPECS/linux/0094-FROMGIT-drm-imagination-Rename-pvr_queue_fence_is_uf.patch similarity index 96% rename from SPECS/linux/0095-FROMGIT-drm-imagination-Rename-pvr_queue_fence_is_uf.patch rename to SPECS/linux/0094-FROMGIT-drm-imagination-Rename-pvr_queue_fence_is_uf.patch index da66ae494e..d34168ca7c 100644 --- a/SPECS/linux/0095-FROMGIT-drm-imagination-Rename-pvr_queue_fence_is_uf.patch +++ b/SPECS/linux/0094-FROMGIT-drm-imagination-Rename-pvr_queue_fence_is_uf.patch @@ -1,7 +1,7 @@ -From e8f3bc206ee85d21bb4eae5e98ecef8dd447b761 Mon Sep 17 00:00:00 2001 +From 43271ba3eaad7deddb1dde4c8fd30db70bb45060 Mon Sep 17 00:00:00 2001 From: Alessio Belle Date: Mon, 30 Mar 2026 08:56:39 +0100 -Subject: [PATCH 095/269] FROMGIT: drm/imagination: Rename +Subject: [RUYI PATCH] FROMGIT: drm/imagination: Rename pvr_queue_fence_is_ufo_backed() to reflect usage This function is only used by the synchronization code to figure out if diff --git a/SPECS/linux/0096-FROMGIT-drm-imagination-Rename-fence-returned-by-pvr.patch b/SPECS/linux/0095-FROMGIT-drm-imagination-Rename-fence-returned-by-pvr.patch similarity index 96% rename from SPECS/linux/0096-FROMGIT-drm-imagination-Rename-fence-returned-by-pvr.patch rename to SPECS/linux/0095-FROMGIT-drm-imagination-Rename-fence-returned-by-pvr.patch index 47d08f0b63..c43b23068b 100644 --- a/SPECS/linux/0096-FROMGIT-drm-imagination-Rename-fence-returned-by-pvr.patch +++ b/SPECS/linux/0095-FROMGIT-drm-imagination-Rename-fence-returned-by-pvr.patch @@ -1,7 +1,7 @@ -From 72b191a84d353cc97af41ead4f4695317b88ecd0 Mon Sep 17 00:00:00 2001 +From 8f014ec8d9921b4eb82fdf46c0f5f143823f1ffa Mon Sep 17 00:00:00 2001 From: Alessio Belle Date: Mon, 30 Mar 2026 08:56:40 +0100 -Subject: [PATCH 096/269] FROMGIT: drm/imagination: Rename fence returned by +Subject: [RUYI PATCH] FROMGIT: drm/imagination: Rename fence returned by pvr_queue_job_arm() Rename from done_fence to finished_fence, both because the function diff --git a/SPECS/linux/0097-FROMGIT-drm-imagination-Move-repeated-job-fence-chec.patch b/SPECS/linux/0096-FROMGIT-drm-imagination-Move-repeated-job-fence-chec.patch similarity index 93% rename from SPECS/linux/0097-FROMGIT-drm-imagination-Move-repeated-job-fence-chec.patch rename to SPECS/linux/0096-FROMGIT-drm-imagination-Move-repeated-job-fence-chec.patch index 0093bcf9ed..0e971bf591 100644 --- a/SPECS/linux/0097-FROMGIT-drm-imagination-Move-repeated-job-fence-chec.patch +++ b/SPECS/linux/0096-FROMGIT-drm-imagination-Move-repeated-job-fence-chec.patch @@ -1,8 +1,8 @@ -From d8558c3607f492513e6ee7fa6701c6fd0e573362 Mon Sep 17 00:00:00 2001 +From 52422ac4da13b730145d8e78ce1721d6270be75c Mon Sep 17 00:00:00 2001 From: Alessio Belle Date: Mon, 30 Mar 2026 08:56:41 +0100 -Subject: [PATCH 097/269] FROMGIT: drm/imagination: Move repeated job fence - check to its own function +Subject: [RUYI PATCH] FROMGIT: drm/imagination: Move repeated job fence check + to its own function This should make the code slightly clearer. diff --git a/SPECS/linux/0098-FROMGIT-drm-imagination-Update-check-to-skip-prepare.patch b/SPECS/linux/0097-FROMGIT-drm-imagination-Update-check-to-skip-prepare.patch similarity index 93% rename from SPECS/linux/0098-FROMGIT-drm-imagination-Update-check-to-skip-prepare.patch rename to SPECS/linux/0097-FROMGIT-drm-imagination-Update-check-to-skip-prepare.patch index 9e309106b7..6acf36f266 100644 --- a/SPECS/linux/0098-FROMGIT-drm-imagination-Update-check-to-skip-prepare.patch +++ b/SPECS/linux/0097-FROMGIT-drm-imagination-Update-check-to-skip-prepare.patch @@ -1,7 +1,7 @@ -From 809e55c67e3046c1ccc3b263331905f522e66803 Mon Sep 17 00:00:00 2001 +From 14fed2db734ad9b5ea26b14dd292952c5874d2cb Mon Sep 17 00:00:00 2001 From: Alessio Belle Date: Mon, 30 Mar 2026 08:56:42 +0100 -Subject: [PATCH 098/269] FROMGIT: drm/imagination: Update check to skip +Subject: [RUYI PATCH] FROMGIT: drm/imagination: Update check to skip prepare_job() for fragment jobs By the time prepare_job() is called on a paired fragment job, the paired diff --git a/SPECS/linux/0099-FROMGIT-drm-imagination-Minor-improvements-to-job-su.patch b/SPECS/linux/0098-FROMGIT-drm-imagination-Minor-improvements-to-job-su.patch similarity index 97% rename from SPECS/linux/0099-FROMGIT-drm-imagination-Minor-improvements-to-job-su.patch rename to SPECS/linux/0098-FROMGIT-drm-imagination-Minor-improvements-to-job-su.patch index e56a639e80..19cf1860d6 100644 --- a/SPECS/linux/0099-FROMGIT-drm-imagination-Minor-improvements-to-job-su.patch +++ b/SPECS/linux/0098-FROMGIT-drm-imagination-Minor-improvements-to-job-su.patch @@ -1,7 +1,7 @@ -From 6f4479babf597988b85595b1a29b711f80187e51 Mon Sep 17 00:00:00 2001 +From 9000ca766038755f68ac40535f91a63a56a24a7d Mon Sep 17 00:00:00 2001 From: Alessio Belle Date: Mon, 30 Mar 2026 08:56:43 +0100 -Subject: [PATCH 099/269] FROMGIT: drm/imagination: Minor improvements to job +Subject: [RUYI PATCH] FROMGIT: drm/imagination: Minor improvements to job submission code documentation Mixed list of clarifications and typo fixes. diff --git a/SPECS/linux/0100-FROMGIT-perf-riscv-Fix-discarded-const-qualifier-in-.patch b/SPECS/linux/0099-FROMGIT-perf-riscv-Fix-discarded-const-qualifier-in-.patch similarity index 91% rename from SPECS/linux/0100-FROMGIT-perf-riscv-Fix-discarded-const-qualifier-in-.patch rename to SPECS/linux/0099-FROMGIT-perf-riscv-Fix-discarded-const-qualifier-in-.patch index 7fe1e258dc..8e1a11be69 100644 --- a/SPECS/linux/0100-FROMGIT-perf-riscv-Fix-discarded-const-qualifier-in-.patch +++ b/SPECS/linux/0099-FROMGIT-perf-riscv-Fix-discarded-const-qualifier-in-.patch @@ -1,7 +1,7 @@ -From fff3f054f2721439f30dcf585d98548549e45d10 Mon Sep 17 00:00:00 2001 +From 4bc187a7ae04fd6f14affbe24207e65104ef2873 Mon Sep 17 00:00:00 2001 From: Li Guan Date: Thu, 14 May 2026 02:07:21 +0800 -Subject: [PATCH 100/269] FROMGIT: perf riscv: Fix discarded const qualifier in +Subject: [RUYI PATCH] FROMGIT: perf riscv: Fix discarded const qualifier in _get_field() The assignment of strrchr() return values to non-const char * variables diff --git a/SPECS/linux/0101-FROMLIST-riscv-errata-Add-ERRATA_THEAD_WRITE_ONCE-fi.patch b/SPECS/linux/0100-FROMLIST-riscv-errata-Add-ERRATA_THEAD_WRITE_ONCE-fi.patch similarity index 97% rename from SPECS/linux/0101-FROMLIST-riscv-errata-Add-ERRATA_THEAD_WRITE_ONCE-fi.patch rename to SPECS/linux/0100-FROMLIST-riscv-errata-Add-ERRATA_THEAD_WRITE_ONCE-fi.patch index 810eb880f6..52a21aa1f2 100644 --- a/SPECS/linux/0101-FROMLIST-riscv-errata-Add-ERRATA_THEAD_WRITE_ONCE-fi.patch +++ b/SPECS/linux/0100-FROMLIST-riscv-errata-Add-ERRATA_THEAD_WRITE_ONCE-fi.patch @@ -1,7 +1,7 @@ -From 7a3d95daa11682847c590b162fda46eecc325a79 Mon Sep 17 00:00:00 2001 +From 824b4cc1c11d0573893e0bd4ab0ef33d102dc70d Mon Sep 17 00:00:00 2001 From: "Guo Ren (Alibaba DAMO Academy)" Date: Tue, 21 Apr 2026 10:31:40 -0400 -Subject: [PATCH 101/269] FROMLIST: riscv: errata: Add ERRATA_THEAD_WRITE_ONCE +Subject: [RUYI PATCH] FROMLIST: riscv: errata: Add ERRATA_THEAD_WRITE_ONCE fixup The early version of XuanTie C910 core has a store merge buffer diff --git a/SPECS/linux/0102-FROMLIST-PCI-Add-per-device-flag-to-disable-native-P.patch b/SPECS/linux/0101-FROMLIST-PCI-Add-per-device-flag-to-disable-native-P.patch similarity index 93% rename from SPECS/linux/0102-FROMLIST-PCI-Add-per-device-flag-to-disable-native-P.patch rename to SPECS/linux/0101-FROMLIST-PCI-Add-per-device-flag-to-disable-native-P.patch index 7922b4f42c..8ec35826a2 100644 --- a/SPECS/linux/0102-FROMLIST-PCI-Add-per-device-flag-to-disable-native-P.patch +++ b/SPECS/linux/0101-FROMLIST-PCI-Add-per-device-flag-to-disable-native-P.patch @@ -1,7 +1,7 @@ -From 42c5c51b8056c7e2ef089845396c3b5d49a40c3e Mon Sep 17 00:00:00 2001 +From 81bcad1f694cf955ef27ce08af5269e0948aa9b9 Mon Sep 17 00:00:00 2001 From: Han Gao Date: Wed, 1 Apr 2026 01:56:57 +0800 -Subject: [PATCH 102/269] FROMLIST: PCI: Add per-device flag to disable native +Subject: [RUYI PATCH] FROMLIST: PCI: Add per-device flag to disable native PCIe port services Add PCI_DEV_FLAGS_NO_PORT_SERVICES to allow quirks to prevent the PCIe diff --git a/SPECS/linux/0103-FROMLIST-PCI-Add-quirk-to-disable-PCIe-port-services.patch b/SPECS/linux/0102-FROMLIST-PCI-Add-quirk-to-disable-PCIe-port-services.patch similarity index 93% rename from SPECS/linux/0103-FROMLIST-PCI-Add-quirk-to-disable-PCIe-port-services.patch rename to SPECS/linux/0102-FROMLIST-PCI-Add-quirk-to-disable-PCIe-port-services.patch index a6db8479cc..5f6b4ab250 100644 --- a/SPECS/linux/0103-FROMLIST-PCI-Add-quirk-to-disable-PCIe-port-services.patch +++ b/SPECS/linux/0102-FROMLIST-PCI-Add-quirk-to-disable-PCIe-port-services.patch @@ -1,8 +1,8 @@ -From 4380130b07aadfb32a3c593a6c54e095a41680cc Mon Sep 17 00:00:00 2001 +From 6afc65d86d351f958dc63d13cf5c0131f9d0a18c Mon Sep 17 00:00:00 2001 From: Han Gao Date: Wed, 1 Apr 2026 01:56:58 +0800 -Subject: [PATCH 103/269] FROMLIST: PCI: Add quirk to disable PCIe port - services on Sophgo SG2042 +Subject: [RUYI PATCH] FROMLIST: PCI: Add quirk to disable PCIe port services + on Sophgo SG2042 SG2042's PCIe root ports [1f1c:2042] fail to deliver MSI interrupts to downstream devices when native port services are enabled. Devices under diff --git a/SPECS/linux/0104-FROMLIST-PCI-Release-BAR0-of-an-integrated-bridge-to.patch b/SPECS/linux/0103-FROMLIST-PCI-Release-BAR0-of-an-integrated-bridge-to.patch similarity index 95% rename from SPECS/linux/0104-FROMLIST-PCI-Release-BAR0-of-an-integrated-bridge-to.patch rename to SPECS/linux/0103-FROMLIST-PCI-Release-BAR0-of-an-integrated-bridge-to.patch index c0dc9f9334..c5542d1485 100644 --- a/SPECS/linux/0104-FROMLIST-PCI-Release-BAR0-of-an-integrated-bridge-to.patch +++ b/SPECS/linux/0103-FROMLIST-PCI-Release-BAR0-of-an-integrated-bridge-to.patch @@ -1,8 +1,8 @@ -From 5c68926836e8bffeb8797d0dbbae85e57e5361b3 Mon Sep 17 00:00:00 2001 +From 7f371b937b7456a98377ea1782d3c5be557575ae Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ilpo=20J=C3=A4rvinen?= Date: Thu, 18 Sep 2025 13:58:56 -0700 -Subject: [PATCH 104/269] FROMLIST: PCI: Release BAR0 of an integrated bridge - to allow GPU BAR resize +Subject: [RUYI PATCH] FROMLIST: PCI: Release BAR0 of an integrated bridge to + allow GPU BAR resize MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit diff --git a/SPECS/linux/0105-BACKPORT-FROMLIST-drm-ttm-save-the-device-s-DMA-cohe.patch b/SPECS/linux/0104-BACKPORT-FROMLIST-drm-ttm-save-the-device-s-DMA-cohe.patch similarity index 93% rename from SPECS/linux/0105-BACKPORT-FROMLIST-drm-ttm-save-the-device-s-DMA-cohe.patch rename to SPECS/linux/0104-BACKPORT-FROMLIST-drm-ttm-save-the-device-s-DMA-cohe.patch index 87009b73a3..23bde87695 100644 --- a/SPECS/linux/0105-BACKPORT-FROMLIST-drm-ttm-save-the-device-s-DMA-cohe.patch +++ b/SPECS/linux/0104-BACKPORT-FROMLIST-drm-ttm-save-the-device-s-DMA-cohe.patch @@ -1,7 +1,7 @@ -From 1b29f8468abaa1b00f904c1f5bef01d1363004e2 Mon Sep 17 00:00:00 2001 +From 4811bb3593988f7d2664075e64d33362e979cc78 Mon Sep 17 00:00:00 2001 From: Icenowy Zheng Date: Sat, 29 Jun 2024 13:22:46 +0800 -Subject: [PATCH 105/269] BACKPORT: FROMLIST: drm/ttm: save the device's DMA +Subject: [RUYI PATCH] BACKPORT: FROMLIST: drm/ttm: save the device's DMA coherency status in ttm_device Currently TTM utilizes cached memory regardless of whether the device diff --git a/SPECS/linux/0106-BACKPORT-FROMLIST-drm-ttm-downgrade-cached-to-write_.patch b/SPECS/linux/0105-BACKPORT-FROMLIST-drm-ttm-downgrade-cached-to-write_.patch similarity index 97% rename from SPECS/linux/0106-BACKPORT-FROMLIST-drm-ttm-downgrade-cached-to-write_.patch rename to SPECS/linux/0105-BACKPORT-FROMLIST-drm-ttm-downgrade-cached-to-write_.patch index fa6bd7d82e..18a2d98d9c 100644 --- a/SPECS/linux/0106-BACKPORT-FROMLIST-drm-ttm-downgrade-cached-to-write_.patch +++ b/SPECS/linux/0105-BACKPORT-FROMLIST-drm-ttm-downgrade-cached-to-write_.patch @@ -1,7 +1,7 @@ -From 039ca5547669325bda4c70f6de5a941b49e79b34 Mon Sep 17 00:00:00 2001 +From b56a98bdc8376d49764e9ad76282c11b50865470 Mon Sep 17 00:00:00 2001 From: Icenowy Zheng Date: Sat, 29 Jun 2024 13:22:47 +0800 -Subject: [PATCH 106/269] BACKPORT: FROMLIST: drm/ttm: downgrade cached to +Subject: [RUYI PATCH] BACKPORT: FROMLIST: drm/ttm: downgrade cached to write_combined when snooping not available As we can now acquire the presence of the full DMA coherency (snooping diff --git a/SPECS/linux/0107-FROMLIST-NFU-riscv-dts-thead-Add-CPU-clock-and-OPP-t.patch b/SPECS/linux/0106-FROMLIST-NFU-riscv-dts-thead-Add-CPU-clock-and-OPP-t.patch similarity index 94% rename from SPECS/linux/0107-FROMLIST-NFU-riscv-dts-thead-Add-CPU-clock-and-OPP-t.patch rename to SPECS/linux/0106-FROMLIST-NFU-riscv-dts-thead-Add-CPU-clock-and-OPP-t.patch index b375df8b9b..e7d5b702db 100644 --- a/SPECS/linux/0107-FROMLIST-NFU-riscv-dts-thead-Add-CPU-clock-and-OPP-t.patch +++ b/SPECS/linux/0106-FROMLIST-NFU-riscv-dts-thead-Add-CPU-clock-and-OPP-t.patch @@ -1,8 +1,8 @@ -From f7b9e23e1bb52ebf95c370b784964d3dc9d8aff0 Mon Sep 17 00:00:00 2001 +From e943f5af6d04d50b23df629eaefa1671e406a4bd Mon Sep 17 00:00:00 2001 From: Yao Zi Date: Thu, 20 Nov 2025 13:14:16 +0000 -Subject: [PATCH 107/269] FROMLIST: NFU: riscv: dts: thead: Add CPU clock and - OPP table for TH1520 +Subject: [RUYI PATCH] FROMLIST: NFU: riscv: dts: thead: Add CPU clock and OPP + table for TH1520 Add operating point table for CPU cores, and wire up clocks for CPU nodes. diff --git a/SPECS/linux/0108-FROMLIST-rust-export-BINDGEN_TARGET-from-a-separate-.patch b/SPECS/linux/0107-FROMLIST-rust-export-BINDGEN_TARGET-from-a-separate-.patch similarity index 94% rename from SPECS/linux/0108-FROMLIST-rust-export-BINDGEN_TARGET-from-a-separate-.patch rename to SPECS/linux/0107-FROMLIST-rust-export-BINDGEN_TARGET-from-a-separate-.patch index 89ed12acba..6fbab11aa9 100644 --- a/SPECS/linux/0108-FROMLIST-rust-export-BINDGEN_TARGET-from-a-separate-.patch +++ b/SPECS/linux/0107-FROMLIST-rust-export-BINDGEN_TARGET-from-a-separate-.patch @@ -1,7 +1,7 @@ -From 50895f69b2de1cb8e4d7882744aeb703c68de8c0 Mon Sep 17 00:00:00 2001 +From 6acf0575cf5ef17a313cb81bc0c4e4e5743dac56 Mon Sep 17 00:00:00 2001 From: Asuna Yang Date: Tue, 30 Dec 2025 17:47:54 +0100 -Subject: [PATCH 108/269] FROMLIST: rust: export BINDGEN_TARGET from a separate +Subject: [RUYI PATCH] FROMLIST: rust: export BINDGEN_TARGET from a separate Makefile A subsequent commit will add a new function `bindgen-option` to @@ -29,7 +29,7 @@ Signed-off-by: Han Gao create mode 100644 scripts/Makefile.rust diff --git a/Makefile b/Makefile -index a95f0b3d26bf..12a202e10fe1 100644 +index d2a1c3a1ab44..ee78bc154ee9 100644 --- a/Makefile +++ b/Makefile @@ -728,9 +728,10 @@ ifneq ($(findstring clang,$(CC_VERSION_TEXT)),) diff --git a/SPECS/linux/0109-FROMLIST-rust-generate-a-fatal-error-if-BINDGEN_TARG.patch b/SPECS/linux/0108-FROMLIST-rust-generate-a-fatal-error-if-BINDGEN_TARG.patch similarity index 93% rename from SPECS/linux/0109-FROMLIST-rust-generate-a-fatal-error-if-BINDGEN_TARG.patch rename to SPECS/linux/0108-FROMLIST-rust-generate-a-fatal-error-if-BINDGEN_TARG.patch index ee02f4253f..56ec421586 100644 --- a/SPECS/linux/0109-FROMLIST-rust-generate-a-fatal-error-if-BINDGEN_TARG.patch +++ b/SPECS/linux/0108-FROMLIST-rust-generate-a-fatal-error-if-BINDGEN_TARG.patch @@ -1,8 +1,8 @@ -From 43aeaabfcdc3ef135294f3ff9ad674214c66ea15 Mon Sep 17 00:00:00 2001 +From 99e56bc7e6cb217e32c1cd9acf36b38ddf739aaa Mon Sep 17 00:00:00 2001 From: Asuna Yang Date: Tue, 30 Dec 2025 17:47:55 +0100 -Subject: [PATCH 109/269] FROMLIST: rust: generate a fatal error if - BINDGEN_TARGET is undefined +Subject: [RUYI PATCH] FROMLIST: rust: generate a fatal error if BINDGEN_TARGET + is undefined Generate a friendly fatal error if the target triplet is undefined for bindgen, rather than having the compiler generate obscure error messages diff --git a/SPECS/linux/0110-FROMLIST-rust-add-a-Kconfig-function-to-test-for-sup.patch b/SPECS/linux/0109-FROMLIST-rust-add-a-Kconfig-function-to-test-for-sup.patch similarity index 91% rename from SPECS/linux/0110-FROMLIST-rust-add-a-Kconfig-function-to-test-for-sup.patch rename to SPECS/linux/0109-FROMLIST-rust-add-a-Kconfig-function-to-test-for-sup.patch index 0fbf3f1532..4d90fa621b 100644 --- a/SPECS/linux/0110-FROMLIST-rust-add-a-Kconfig-function-to-test-for-sup.patch +++ b/SPECS/linux/0109-FROMLIST-rust-add-a-Kconfig-function-to-test-for-sup.patch @@ -1,7 +1,7 @@ -From 183abdb6e9049001ddc924585b6fdd557260b1f1 Mon Sep 17 00:00:00 2001 +From 695941c48f54eaf2d9571a60e931545aa0646d38 Mon Sep 17 00:00:00 2001 From: Asuna Yang Date: Tue, 30 Dec 2025 17:47:56 +0100 -Subject: [PATCH 110/269] FROMLIST: rust: add a Kconfig function to test for +Subject: [RUYI PATCH] FROMLIST: rust: add a Kconfig function to test for support of bindgen options Add a new `bindgen-backend-option` Kconfig function to test whether the diff --git a/SPECS/linux/0111-FROMLIST-RISC-V-handle-extension-configs-for-bindgen.patch b/SPECS/linux/0110-FROMLIST-RISC-V-handle-extension-configs-for-bindgen.patch similarity index 97% rename from SPECS/linux/0111-FROMLIST-RISC-V-handle-extension-configs-for-bindgen.patch rename to SPECS/linux/0110-FROMLIST-RISC-V-handle-extension-configs-for-bindgen.patch index b21e87d9c9..8a84f0cb1a 100644 --- a/SPECS/linux/0111-FROMLIST-RISC-V-handle-extension-configs-for-bindgen.patch +++ b/SPECS/linux/0110-FROMLIST-RISC-V-handle-extension-configs-for-bindgen.patch @@ -1,8 +1,8 @@ -From 95ae77c238fd1d3bf911e2bc963f3e0ee0c2a626 Mon Sep 17 00:00:00 2001 +From bb5b174c339f21b29b70aa4066deff3d12c67d57 Mon Sep 17 00:00:00 2001 From: Asuna Yang Date: Tue, 30 Dec 2025 17:47:57 +0100 -Subject: [PATCH 111/269] FROMLIST: RISC-V: handle extension configs for - bindgen, re-enable gcc + rust builds +Subject: [RUYI PATCH] FROMLIST: RISC-V: handle extension configs for bindgen, + re-enable gcc + rust builds Commit 33549fcf37ec ("RISC-V: disallow gcc + rust builds") disabled GCC + Rust builds for RISC-V due to differences in extension handling diff --git a/SPECS/linux/0112-FROMLIST-dt-bindings-mmc-spacemit-sdhci-add-reset-su.patch b/SPECS/linux/0111-FROMLIST-dt-bindings-mmc-spacemit-sdhci-add-reset-su.patch similarity index 91% rename from SPECS/linux/0112-FROMLIST-dt-bindings-mmc-spacemit-sdhci-add-reset-su.patch rename to SPECS/linux/0111-FROMLIST-dt-bindings-mmc-spacemit-sdhci-add-reset-su.patch index 11019b7de3..81053adce1 100644 --- a/SPECS/linux/0112-FROMLIST-dt-bindings-mmc-spacemit-sdhci-add-reset-su.patch +++ b/SPECS/linux/0111-FROMLIST-dt-bindings-mmc-spacemit-sdhci-add-reset-su.patch @@ -1,7 +1,7 @@ -From aeb31419784677a87248ff06272de73ff9786ec4 Mon Sep 17 00:00:00 2001 +From 6e620bf424d37f6c38f9673b3fe7c9b2d43663d7 Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Sun, 21 Dec 2025 16:20:26 +0800 -Subject: [PATCH 112/269] FROMLIST: dt-bindings: mmc: spacemit,sdhci: add reset +Subject: [RUYI PATCH] FROMLIST: dt-bindings: mmc: spacemit,sdhci: add reset support The SpacemiT SDHCI controller has two reset lines, one connect to AXI bus diff --git a/SPECS/linux/0113-FROMLIST-mfd-simple-mfd-i2c-add-a-reboot-cell-for-th.patch b/SPECS/linux/0112-FROMLIST-mfd-simple-mfd-i2c-add-a-reboot-cell-for-th.patch similarity index 84% rename from SPECS/linux/0113-FROMLIST-mfd-simple-mfd-i2c-add-a-reboot-cell-for-th.patch rename to SPECS/linux/0112-FROMLIST-mfd-simple-mfd-i2c-add-a-reboot-cell-for-th.patch index f0ca20bc70..e5ecaae954 100644 --- a/SPECS/linux/0113-FROMLIST-mfd-simple-mfd-i2c-add-a-reboot-cell-for-th.patch +++ b/SPECS/linux/0112-FROMLIST-mfd-simple-mfd-i2c-add-a-reboot-cell-for-th.patch @@ -1,8 +1,8 @@ -From 5d374798992af7036555dc0a8fc3e295b90dabf2 Mon Sep 17 00:00:00 2001 +From 6eabd498399cf0d21a39ed6c1c658d478009c8a3 Mon Sep 17 00:00:00 2001 From: Aurelien Jarno Date: Mon, 3 Nov 2025 00:02:00 +0100 -Subject: [PATCH 113/269] FROMLIST: mfd: simple-mfd-i2c: add a reboot cell for - the SpacemiT P1 chip +Subject: [RUYI PATCH] FROMLIST: mfd: simple-mfd-i2c: add a reboot cell for the + SpacemiT P1 chip Add a "spacemit-p1-reboot" cell for the SpacemiT P1 chip. diff --git a/SPECS/linux/0114-FROMLIST-regulator-spacemit-MFD_SPACEMIT_P1-as-depen.patch b/SPECS/linux/0113-FROMLIST-regulator-spacemit-MFD_SPACEMIT_P1-as-depen.patch similarity index 91% rename from SPECS/linux/0114-FROMLIST-regulator-spacemit-MFD_SPACEMIT_P1-as-depen.patch rename to SPECS/linux/0113-FROMLIST-regulator-spacemit-MFD_SPACEMIT_P1-as-depen.patch index 69fb72ab3a..acd1ec7be3 100644 --- a/SPECS/linux/0114-FROMLIST-regulator-spacemit-MFD_SPACEMIT_P1-as-depen.patch +++ b/SPECS/linux/0113-FROMLIST-regulator-spacemit-MFD_SPACEMIT_P1-as-depen.patch @@ -1,7 +1,7 @@ -From a41d659ee4ecfe909099727cd1a3215d78bff00c Mon Sep 17 00:00:00 2001 +From 976165527481e44220f9bc835db53aa0c66bd96c Mon Sep 17 00:00:00 2001 From: Troy Mitchell Date: Thu, 8 Jan 2026 16:38:54 +0800 -Subject: [PATCH 114/269] FROMLIST: regulator: spacemit: MFD_SPACEMIT_P1 as +Subject: [RUYI PATCH] FROMLIST: regulator: spacemit: MFD_SPACEMIT_P1 as dependencies REGULATOR_SPACEMIT_P1 is a subdevice of P1 and should depend on diff --git a/SPECS/linux/0115-FROMLIST-rtc-spacemit-default-module-when-MFD_SPACEM.patch b/SPECS/linux/0114-FROMLIST-rtc-spacemit-default-module-when-MFD_SPACEM.patch similarity index 90% rename from SPECS/linux/0115-FROMLIST-rtc-spacemit-default-module-when-MFD_SPACEM.patch rename to SPECS/linux/0114-FROMLIST-rtc-spacemit-default-module-when-MFD_SPACEM.patch index 2db92d4f7d..4fa974501c 100644 --- a/SPECS/linux/0115-FROMLIST-rtc-spacemit-default-module-when-MFD_SPACEM.patch +++ b/SPECS/linux/0114-FROMLIST-rtc-spacemit-default-module-when-MFD_SPACEM.patch @@ -1,7 +1,7 @@ -From 088a477295ecdf9de9b20588affe5345edc597af Mon Sep 17 00:00:00 2001 +From 3bc961796efe1b697fbf81f5cd6f48fe21f71d43 Mon Sep 17 00:00:00 2001 From: Troy Mitchell Date: Thu, 8 Jan 2026 16:38:56 +0800 -Subject: [PATCH 115/269] FROMLIST: rtc: spacemit: default module when +Subject: [RUYI PATCH] FROMLIST: rtc: spacemit: default module when MFD_SPACEMIT_P1 is enabled The RTC driver defaulted to the same value as MFD_SPACEMIT_P1, which diff --git a/SPECS/linux/0116-FROMLIST-spi-dt-bindings-add-SpacemiT-K1-SPI-support.patch b/SPECS/linux/0115-FROMLIST-spi-dt-bindings-add-SpacemiT-K1-SPI-support.patch similarity index 95% rename from SPECS/linux/0116-FROMLIST-spi-dt-bindings-add-SpacemiT-K1-SPI-support.patch rename to SPECS/linux/0115-FROMLIST-spi-dt-bindings-add-SpacemiT-K1-SPI-support.patch index 59799fea39..6668a8d3da 100644 --- a/SPECS/linux/0116-FROMLIST-spi-dt-bindings-add-SpacemiT-K1-SPI-support.patch +++ b/SPECS/linux/0115-FROMLIST-spi-dt-bindings-add-SpacemiT-K1-SPI-support.patch @@ -1,8 +1,7 @@ -From 3dcb56851d49cf4c3bfe780bcc4ba987abcfeb0b Mon Sep 17 00:00:00 2001 +From d8fc3735923c949b5513f0ef5bd06d3d34b9b6a8 Mon Sep 17 00:00:00 2001 From: Alex Elder Date: Sat, 2 May 2026 21:30:51 -0400 -Subject: [PATCH 116/269] FROMLIST: spi: dt-bindings: add SpacemiT K1 SPI - support +Subject: [RUYI PATCH] FROMLIST: spi: dt-bindings: add SpacemiT K1 SPI support Add support for the SPI controller implemented by the SpacemiT K1 SoC. diff --git a/SPECS/linux/0117-FROMLIST-spi-spacemit-introduce-SpacemiT-K1-SPI-cont.patch b/SPECS/linux/0116-FROMLIST-spi-spacemit-introduce-SpacemiT-K1-SPI-cont.patch similarity index 99% rename from SPECS/linux/0117-FROMLIST-spi-spacemit-introduce-SpacemiT-K1-SPI-cont.patch rename to SPECS/linux/0116-FROMLIST-spi-spacemit-introduce-SpacemiT-K1-SPI-cont.patch index 2ff18ca4cc..df413fe625 100644 --- a/SPECS/linux/0117-FROMLIST-spi-spacemit-introduce-SpacemiT-K1-SPI-cont.patch +++ b/SPECS/linux/0116-FROMLIST-spi-spacemit-introduce-SpacemiT-K1-SPI-cont.patch @@ -1,7 +1,7 @@ -From d5fd2de289d1bf633ef2fbabb3f87eba7354c647 Mon Sep 17 00:00:00 2001 +From 733d647fce838e188c739aa90fdc75c68e51b0d1 Mon Sep 17 00:00:00 2001 From: Alex Elder Date: Sat, 2 May 2026 21:30:52 -0400 -Subject: [PATCH 117/269] FROMLIST: spi: spacemit: introduce SpacemiT K1 SPI +Subject: [RUYI PATCH] FROMLIST: spi: spacemit: introduce SpacemiT K1 SPI controller driver This patch introduces the driver for the SPI controller found in the diff --git a/SPECS/linux/0118-FROMLIST-riscv-dts-spacemit-define-a-SPI-controller-.patch b/SPECS/linux/0117-FROMLIST-riscv-dts-spacemit-define-a-SPI-controller-.patch similarity index 95% rename from SPECS/linux/0118-FROMLIST-riscv-dts-spacemit-define-a-SPI-controller-.patch rename to SPECS/linux/0117-FROMLIST-riscv-dts-spacemit-define-a-SPI-controller-.patch index e8d49f2ca8..0ceba63b3b 100644 --- a/SPECS/linux/0118-FROMLIST-riscv-dts-spacemit-define-a-SPI-controller-.patch +++ b/SPECS/linux/0117-FROMLIST-riscv-dts-spacemit-define-a-SPI-controller-.patch @@ -1,8 +1,8 @@ -From 3802a494e2d8776f95e83f6e5c837a0874c253b2 Mon Sep 17 00:00:00 2001 +From 433bacac564903a66f585a95f0d7d049c4eb5331 Mon Sep 17 00:00:00 2001 From: Alex Elder Date: Sat, 2 May 2026 21:30:53 -0400 -Subject: [PATCH 118/269] FROMLIST: riscv: dts: spacemit: define a SPI - controller node +Subject: [RUYI PATCH] FROMLIST: riscv: dts: spacemit: define a SPI controller + node Define a node for the fourth SoC SPI controller (number 3) on the SpacemiT K1 SoC. diff --git a/SPECS/linux/0119-FROMLIST-dt-bindings-thermal-Add-SpacemiT-K1-thermal.patch b/SPECS/linux/0118-FROMLIST-dt-bindings-thermal-Add-SpacemiT-K1-thermal.patch similarity index 94% rename from SPECS/linux/0119-FROMLIST-dt-bindings-thermal-Add-SpacemiT-K1-thermal.patch rename to SPECS/linux/0118-FROMLIST-dt-bindings-thermal-Add-SpacemiT-K1-thermal.patch index 4255953faf..660d7d81de 100644 --- a/SPECS/linux/0119-FROMLIST-dt-bindings-thermal-Add-SpacemiT-K1-thermal.patch +++ b/SPECS/linux/0118-FROMLIST-dt-bindings-thermal-Add-SpacemiT-K1-thermal.patch @@ -1,8 +1,8 @@ -From ec3e1c1aa94069e48e58c4ea4273dbd998d90803 Mon Sep 17 00:00:00 2001 +From cade37fccf4287ccd5b5b76d84fa6f23e88e32b2 Mon Sep 17 00:00:00 2001 From: Shuwei Wu Date: Mon, 27 Apr 2026 15:15:15 +0800 -Subject: [PATCH 119/269] FROMLIST: dt-bindings: thermal: Add SpacemiT K1 - thermal sensor +Subject: [RUYI PATCH] FROMLIST: dt-bindings: thermal: Add SpacemiT K1 thermal + sensor Document the SpacemiT K1 Thermal Sensor, which supports monitoring temperatures for five zones: soc, package, gpu, cluster0, diff --git a/SPECS/linux/0120-FROMLIST-thermal-spacemit-k1-Add-thermal-sensor-supp.patch b/SPECS/linux/0119-FROMLIST-thermal-spacemit-k1-Add-thermal-sensor-supp.patch similarity index 98% rename from SPECS/linux/0120-FROMLIST-thermal-spacemit-k1-Add-thermal-sensor-supp.patch rename to SPECS/linux/0119-FROMLIST-thermal-spacemit-k1-Add-thermal-sensor-supp.patch index fd38eca8b1..76e0a2491a 100644 --- a/SPECS/linux/0120-FROMLIST-thermal-spacemit-k1-Add-thermal-sensor-supp.patch +++ b/SPECS/linux/0119-FROMLIST-thermal-spacemit-k1-Add-thermal-sensor-supp.patch @@ -1,7 +1,7 @@ -From 895c9bf4639434336ee6d5f9d8f6750f4718c072 Mon Sep 17 00:00:00 2001 +From e1e51fe8098039cfa37eef351f66125d38079ac5 Mon Sep 17 00:00:00 2001 From: Shuwei Wu Date: Mon, 27 Apr 2026 15:15:16 +0800 -Subject: [PATCH 120/269] FROMLIST: thermal: spacemit: k1: Add thermal sensor +Subject: [RUYI PATCH] FROMLIST: thermal: spacemit: k1: Add thermal sensor support The thermal sensor on K1 supports monitoring five temperature zones. diff --git a/SPECS/linux/0121-FROMLIST-riscv-dts-spacemit-Add-thermal-sensor-for-K.patch b/SPECS/linux/0120-FROMLIST-riscv-dts-spacemit-Add-thermal-sensor-for-K.patch similarity index 95% rename from SPECS/linux/0121-FROMLIST-riscv-dts-spacemit-Add-thermal-sensor-for-K.patch rename to SPECS/linux/0120-FROMLIST-riscv-dts-spacemit-Add-thermal-sensor-for-K.patch index 1a3a0bf8d8..a0407f4b91 100644 --- a/SPECS/linux/0121-FROMLIST-riscv-dts-spacemit-Add-thermal-sensor-for-K.patch +++ b/SPECS/linux/0120-FROMLIST-riscv-dts-spacemit-Add-thermal-sensor-for-K.patch @@ -1,8 +1,8 @@ -From 36561b9bc6e0b2704f4d2fa97ed3d6d146842d0e Mon Sep 17 00:00:00 2001 +From 9c37fe5edcd25afac729c2dbcf48b40ef2de06a5 Mon Sep 17 00:00:00 2001 From: Shuwei Wu Date: Mon, 27 Apr 2026 15:15:17 +0800 -Subject: [PATCH 121/269] FROMLIST: riscv: dts: spacemit: Add thermal sensor - for K1 SoC +Subject: [RUYI PATCH] FROMLIST: riscv: dts: spacemit: Add thermal sensor for + K1 SoC Include the Thermal Sensor node in the SpacemiT K1 dtsi with definitions for registers, clocks, and interrupts. diff --git a/SPECS/linux/0122-FROMLIST-net-spacemit-Free-rings-of-memory-after-unm.patch b/SPECS/linux/0121-FROMLIST-net-spacemit-Free-rings-of-memory-after-unm.patch similarity index 92% rename from SPECS/linux/0122-FROMLIST-net-spacemit-Free-rings-of-memory-after-unm.patch rename to SPECS/linux/0121-FROMLIST-net-spacemit-Free-rings-of-memory-after-unm.patch index 5a0f474570..49a230187c 100644 --- a/SPECS/linux/0122-FROMLIST-net-spacemit-Free-rings-of-memory-after-unm.patch +++ b/SPECS/linux/0121-FROMLIST-net-spacemit-Free-rings-of-memory-after-unm.patch @@ -1,7 +1,7 @@ -From ebf8d5dd8aadfb8248b1a8efac678486f96d0b37 Mon Sep 17 00:00:00 2001 +From cc245f283a04934061e450ad020c5ef035bfd744 Mon Sep 17 00:00:00 2001 From: Vivian Wang Date: Tue, 3 Mar 2026 17:24:21 +0800 -Subject: [PATCH 122/269] FROMLIST: net: spacemit: Free rings of memory after +Subject: [RUYI PATCH] FROMLIST: net: spacemit: Free rings of memory after unmapping DMA In emac_free_{tx,rx}_resources, call dma_free_coherent() to unmap DMA diff --git a/SPECS/linux/0123-FROMLIST-riscv-mm-Extract-helper-mark_new_valid_map.patch b/SPECS/linux/0122-FROMLIST-riscv-mm-Extract-helper-mark_new_valid_map.patch similarity index 92% rename from SPECS/linux/0123-FROMLIST-riscv-mm-Extract-helper-mark_new_valid_map.patch rename to SPECS/linux/0122-FROMLIST-riscv-mm-Extract-helper-mark_new_valid_map.patch index 1c7be92113..b44ff51416 100644 --- a/SPECS/linux/0123-FROMLIST-riscv-mm-Extract-helper-mark_new_valid_map.patch +++ b/SPECS/linux/0122-FROMLIST-riscv-mm-Extract-helper-mark_new_valid_map.patch @@ -1,8 +1,7 @@ -From ff5797e0c0c241485e19663b8acf6325074ec17b Mon Sep 17 00:00:00 2001 +From 0b454a34dd5bc855e817eaf43baf0ee8f831ba7a Mon Sep 17 00:00:00 2001 From: Vivian Wang Date: Tue, 3 Mar 2026 13:29:45 +0800 -Subject: [PATCH 123/269] FROMLIST: riscv: mm: Extract helper - mark_new_valid_map() +Subject: [RUYI PATCH] FROMLIST: riscv: mm: Extract helper mark_new_valid_map() In preparation of a future patch using the same mechanism for non-vmalloc addresses, extract the mark_new_valid_map() helper from diff --git a/SPECS/linux/0124-FROMLIST-riscv-kfence-Call-mark_new_valid_map-for-kf.patch b/SPECS/linux/0123-FROMLIST-riscv-kfence-Call-mark_new_valid_map-for-kf.patch similarity index 94% rename from SPECS/linux/0124-FROMLIST-riscv-kfence-Call-mark_new_valid_map-for-kf.patch rename to SPECS/linux/0123-FROMLIST-riscv-kfence-Call-mark_new_valid_map-for-kf.patch index 6db618e22d..5f7959bf8e 100644 --- a/SPECS/linux/0124-FROMLIST-riscv-kfence-Call-mark_new_valid_map-for-kf.patch +++ b/SPECS/linux/0123-FROMLIST-riscv-kfence-Call-mark_new_valid_map-for-kf.patch @@ -1,8 +1,8 @@ -From 953e866bd2868d60b84a8b2716d4bd5891982912 Mon Sep 17 00:00:00 2001 +From ba5b054467f0ae1657d12706b2a39f2bf80f9276 Mon Sep 17 00:00:00 2001 From: Vivian Wang Date: Tue, 3 Mar 2026 13:29:46 +0800 -Subject: [PATCH 124/269] FROMLIST: riscv: kfence: Call mark_new_valid_map() - for kfence_unprotect() +Subject: [RUYI PATCH] FROMLIST: riscv: kfence: Call mark_new_valid_map() for + kfence_unprotect() In kfence_protect_page(), which kfence_unprotect() calls, we cannot send IPIs to other CPUs to ask them to flush TLB. This may lead to those CPUs diff --git a/SPECS/linux/0125-FROMLIST-riscv-mm-Rename-new_vmalloc-into-new_valid_.patch b/SPECS/linux/0124-FROMLIST-riscv-mm-Rename-new_vmalloc-into-new_valid_.patch similarity index 97% rename from SPECS/linux/0125-FROMLIST-riscv-mm-Rename-new_vmalloc-into-new_valid_.patch rename to SPECS/linux/0124-FROMLIST-riscv-mm-Rename-new_vmalloc-into-new_valid_.patch index 893a4ae540..8af6383ea3 100644 --- a/SPECS/linux/0125-FROMLIST-riscv-mm-Rename-new_vmalloc-into-new_valid_.patch +++ b/SPECS/linux/0124-FROMLIST-riscv-mm-Rename-new_vmalloc-into-new_valid_.patch @@ -1,7 +1,7 @@ -From 7d70e3532028f70ac125619d349c917ab7ff7923 Mon Sep 17 00:00:00 2001 +From 6553a8ba35d78ec2ded4d52da12072e84db3ce22 Mon Sep 17 00:00:00 2001 From: Vivian Wang Date: Tue, 3 Mar 2026 13:29:47 +0800 -Subject: [PATCH 125/269] FROMLIST: riscv: mm: Rename new_vmalloc into +Subject: [RUYI PATCH] FROMLIST: riscv: mm: Rename new_vmalloc into new_valid_map_cpus Since this mechanism is now used for the kfence pool, which comes from diff --git a/SPECS/linux/0126-FROMLIST-riscv-mm-Use-the-bitmap-API-for-new_valid_m.patch b/SPECS/linux/0125-FROMLIST-riscv-mm-Use-the-bitmap-API-for-new_valid_m.patch similarity index 93% rename from SPECS/linux/0126-FROMLIST-riscv-mm-Use-the-bitmap-API-for-new_valid_m.patch rename to SPECS/linux/0125-FROMLIST-riscv-mm-Use-the-bitmap-API-for-new_valid_m.patch index f1c4af4d8a..95bccdf8bd 100644 --- a/SPECS/linux/0126-FROMLIST-riscv-mm-Use-the-bitmap-API-for-new_valid_m.patch +++ b/SPECS/linux/0125-FROMLIST-riscv-mm-Use-the-bitmap-API-for-new_valid_m.patch @@ -1,7 +1,7 @@ -From 07319b14298d9f2641ea664cab0933b8c7fca581 Mon Sep 17 00:00:00 2001 +From 9eb13102c442bf93088b8ac5680c9032b0848510 Mon Sep 17 00:00:00 2001 From: Vivian Wang Date: Tue, 3 Mar 2026 13:29:48 +0800 -Subject: [PATCH 126/269] FROMLIST: riscv: mm: Use the bitmap API for +Subject: [RUYI PATCH] FROMLIST: riscv: mm: Use the bitmap API for new_valid_map_cpus The bitmap was defined with incorrect size. Fix it by using the proper diff --git a/SPECS/linux/0127-FROMLIST-riscv-mm-Unconditionally-sfence.vma-for-spu.patch b/SPECS/linux/0126-FROMLIST-riscv-mm-Unconditionally-sfence.vma-for-spu.patch similarity index 91% rename from SPECS/linux/0127-FROMLIST-riscv-mm-Unconditionally-sfence.vma-for-spu.patch rename to SPECS/linux/0126-FROMLIST-riscv-mm-Unconditionally-sfence.vma-for-spu.patch index 430b0c3907..590f90547d 100644 --- a/SPECS/linux/0127-FROMLIST-riscv-mm-Unconditionally-sfence.vma-for-spu.patch +++ b/SPECS/linux/0126-FROMLIST-riscv-mm-Unconditionally-sfence.vma-for-spu.patch @@ -1,7 +1,7 @@ -From 3c479e3b1dd3b20319a72b8ae77846c27af6c57c Mon Sep 17 00:00:00 2001 +From 713703016771c386212d26118b4866a02b2514aa Mon Sep 17 00:00:00 2001 From: Vivian Wang Date: Tue, 3 Mar 2026 13:29:49 +0800 -Subject: [PATCH 127/269] FROMLIST: riscv: mm: Unconditionally sfence.vma for +Subject: [RUYI PATCH] FROMLIST: riscv: mm: Unconditionally sfence.vma for spurious fault Svvptc does not guarantee that it's safe to just return here. Since we diff --git a/SPECS/linux/0128-FROMLIST-dt-bindings-phy-spacemit-k3-add-USB2-PHY-su.patch b/SPECS/linux/0127-FROMLIST-dt-bindings-phy-spacemit-k3-add-USB2-PHY-su.patch similarity index 89% rename from SPECS/linux/0128-FROMLIST-dt-bindings-phy-spacemit-k3-add-USB2-PHY-su.patch rename to SPECS/linux/0127-FROMLIST-dt-bindings-phy-spacemit-k3-add-USB2-PHY-su.patch index a87ce87af7..ec049f6b61 100644 --- a/SPECS/linux/0128-FROMLIST-dt-bindings-phy-spacemit-k3-add-USB2-PHY-su.patch +++ b/SPECS/linux/0127-FROMLIST-dt-bindings-phy-spacemit-k3-add-USB2-PHY-su.patch @@ -1,8 +1,8 @@ -From ee591c3164cc4cd6e943c01fed1b7516d3115c01 Mon Sep 17 00:00:00 2001 +From 0a4410e39c44fa731ee3b176d1d428524ae04483 Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Thu, 5 Mar 2026 01:00:51 +0000 -Subject: [PATCH 128/269] FROMLIST: dt-bindings: phy: spacemit: k3: add USB2 - PHY support +Subject: [RUYI PATCH] FROMLIST: dt-bindings: phy: spacemit: k3: add USB2 PHY + support Introduce a compatible string for the USB2 PHY in SpacemiT K3 SoC. The IP of USB2 PHY mostly shares the same functionalities with K1 SoC, while has diff --git a/SPECS/linux/0129-FROMLIST-phy-k1-usb-k3-add-USB2-PHY-support.patch b/SPECS/linux/0128-FROMLIST-phy-k1-usb-k3-add-USB2-PHY-support.patch similarity index 86% rename from SPECS/linux/0129-FROMLIST-phy-k1-usb-k3-add-USB2-PHY-support.patch rename to SPECS/linux/0128-FROMLIST-phy-k1-usb-k3-add-USB2-PHY-support.patch index 30dfa51538..92a0f38e70 100644 --- a/SPECS/linux/0129-FROMLIST-phy-k1-usb-k3-add-USB2-PHY-support.patch +++ b/SPECS/linux/0128-FROMLIST-phy-k1-usb-k3-add-USB2-PHY-support.patch @@ -1,7 +1,7 @@ -From d5d54543f300e7133c1defa99cb41ba372e43044 Mon Sep 17 00:00:00 2001 +From 5dca9dff6d2cb4e3926899a0fc5f2b33df7bee2d Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Thu, 5 Mar 2026 01:00:52 +0000 -Subject: [PATCH 129/269] FROMLIST: phy: k1-usb: k3: add USB2 PHY support +Subject: [RUYI PATCH] FROMLIST: phy: k1-usb: k3: add USB2 PHY support Add USB2 PHY support for SpacemiT K3 SoC. @@ -17,7 +17,7 @@ Signed-off-by: Han Gao 1 file changed, 29 insertions(+), 5 deletions(-) diff --git a/drivers/phy/spacemit/phy-k1-usb2.c b/drivers/phy/spacemit/phy-k1-usb2.c -index 9215d0b223b2..87b943d9111f 100644 +index e8c1e26428a9..8df12eeb20b1 100644 --- a/drivers/phy/spacemit/phy-k1-usb2.c +++ b/drivers/phy/spacemit/phy-k1-usb2.c @@ -51,6 +51,9 @@ @@ -30,7 +30,7 @@ index 9215d0b223b2..87b943d9111f 100644 #define PHY_PLL_DIV_CFG 0x98 #define PHY_FDIV_FRACT_8_15 GENMASK(7, 0) #define PHY_FDIV_FRACT_16_19 GENMASK(11, 8) -@@ -145,7 +148,7 @@ static int spacemit_usb2phy_exit(struct phy *phy) +@@ -144,7 +147,7 @@ static int spacemit_usb2phy_exit(struct phy *phy) return 0; } @@ -39,7 +39,7 @@ index 9215d0b223b2..87b943d9111f 100644 { struct spacemit_usb2phy *sphy = phy_get_drvdata(phy); -@@ -155,10 +158,27 @@ static int spacemit_usb2phy_disconnect(struct phy *phy, int port) +@@ -154,10 +157,27 @@ static int spacemit_usb2phy_disconnect(struct phy *phy, int port) return 0; } @@ -69,7 +69,7 @@ index 9215d0b223b2..87b943d9111f 100644 .owner = THIS_MODULE, }; -@@ -167,12 +187,15 @@ static int spacemit_usb2phy_probe(struct platform_device *pdev) +@@ -166,12 +186,15 @@ static int spacemit_usb2phy_probe(struct platform_device *pdev) struct phy_provider *phy_provider; struct device *dev = &pdev->dev; struct spacemit_usb2phy *sphy; @@ -85,7 +85,7 @@ index 9215d0b223b2..87b943d9111f 100644 sphy->clk = devm_clk_get_prepared(&pdev->dev, NULL); if (IS_ERR(sphy->clk)) return dev_err_probe(dev, PTR_ERR(sphy->clk), "Failed to get clock\n"); -@@ -185,7 +208,7 @@ static int spacemit_usb2phy_probe(struct platform_device *pdev) +@@ -184,7 +207,7 @@ static int spacemit_usb2phy_probe(struct platform_device *pdev) if (IS_ERR(sphy->regmap_base)) return dev_err_probe(dev, PTR_ERR(sphy->regmap_base), "Failed to init regmap\n"); @@ -94,7 +94,7 @@ index 9215d0b223b2..87b943d9111f 100644 if (IS_ERR(sphy->phy)) return dev_err_probe(dev, PTR_ERR(sphy->phy), "Failed to create phy\n"); -@@ -196,7 +219,8 @@ static int spacemit_usb2phy_probe(struct platform_device *pdev) +@@ -195,7 +218,8 @@ static int spacemit_usb2phy_probe(struct platform_device *pdev) } static const struct of_device_id spacemit_usb2phy_dt_match[] = { diff --git a/SPECS/linux/0130-FROMLIST-cpufreq-dt-platdev-Add-SpacemiT-K1-SoC-to-t.patch b/SPECS/linux/0129-FROMLIST-cpufreq-dt-platdev-Add-SpacemiT-K1-SoC-to-t.patch similarity index 87% rename from SPECS/linux/0130-FROMLIST-cpufreq-dt-platdev-Add-SpacemiT-K1-SoC-to-t.patch rename to SPECS/linux/0129-FROMLIST-cpufreq-dt-platdev-Add-SpacemiT-K1-SoC-to-t.patch index 20096dcf1a..34edf00e47 100644 --- a/SPECS/linux/0130-FROMLIST-cpufreq-dt-platdev-Add-SpacemiT-K1-SoC-to-t.patch +++ b/SPECS/linux/0129-FROMLIST-cpufreq-dt-platdev-Add-SpacemiT-K1-SoC-to-t.patch @@ -1,7 +1,7 @@ -From 93260e630e5f737d66d521e03ffe4164195b9c19 Mon Sep 17 00:00:00 2001 +From e204510910d0cbedbec37ecd9f005f0ea7e8a48c Mon Sep 17 00:00:00 2001 From: Shuwei Wu Date: Fri, 10 Apr 2026 15:58:22 +0800 -Subject: [PATCH 130/269] FROMLIST: cpufreq: dt-platdev: Add SpacemiT K1 SoC to +Subject: [RUYI PATCH] FROMLIST: cpufreq: dt-platdev: Add SpacemiT K1 SoC to the allowlist The SpacemiT K1 SoC uses standard device tree based CPU frequency diff --git a/SPECS/linux/0131-FROMLIST-riscv-dts-spacemit-Add-cpu-scaling-for-K1-S.patch b/SPECS/linux/0130-FROMLIST-riscv-dts-spacemit-Add-cpu-scaling-for-K1-S.patch similarity index 98% rename from SPECS/linux/0131-FROMLIST-riscv-dts-spacemit-Add-cpu-scaling-for-K1-S.patch rename to SPECS/linux/0130-FROMLIST-riscv-dts-spacemit-Add-cpu-scaling-for-K1-S.patch index c21481600e..c5dd599ec4 100644 --- a/SPECS/linux/0131-FROMLIST-riscv-dts-spacemit-Add-cpu-scaling-for-K1-S.patch +++ b/SPECS/linux/0130-FROMLIST-riscv-dts-spacemit-Add-cpu-scaling-for-K1-S.patch @@ -1,8 +1,8 @@ -From 1c542475e77927275f0b16032bcff2f190fdf824 Mon Sep 17 00:00:00 2001 +From 6ff0bd0a75092fcbda5aa2dea35243a387189529 Mon Sep 17 00:00:00 2001 From: Shuwei Wu Date: Fri, 10 Apr 2026 15:58:23 +0800 -Subject: [PATCH 131/269] FROMLIST: riscv: dts: spacemit: Add cpu scaling for - K1 SoC +Subject: [RUYI PATCH] FROMLIST: riscv: dts: spacemit: Add cpu scaling for K1 + SoC Add Operating Performance Points (OPP) tables and CPU clock properties for the two clusters in the SpacemiT K1 SoC. diff --git a/SPECS/linux/0132-FROMLIST-riscv-mm-Define-DIRECT_MAP_PHYSMEM_END.patch b/SPECS/linux/0131-FROMLIST-riscv-mm-Define-DIRECT_MAP_PHYSMEM_END.patch similarity index 92% rename from SPECS/linux/0132-FROMLIST-riscv-mm-Define-DIRECT_MAP_PHYSMEM_END.patch rename to SPECS/linux/0131-FROMLIST-riscv-mm-Define-DIRECT_MAP_PHYSMEM_END.patch index 9f59780622..d1474576e1 100644 --- a/SPECS/linux/0132-FROMLIST-riscv-mm-Define-DIRECT_MAP_PHYSMEM_END.patch +++ b/SPECS/linux/0131-FROMLIST-riscv-mm-Define-DIRECT_MAP_PHYSMEM_END.patch @@ -1,7 +1,7 @@ -From 053bf74ad61df8d4c2912718c964ad44be477870 Mon Sep 17 00:00:00 2001 +From a95c08468425de1ec00fa17e195760c6107b1ef8 Mon Sep 17 00:00:00 2001 From: Vivian Wang Date: Mon, 9 Mar 2026 19:09:38 +0800 -Subject: [PATCH 132/269] FROMLIST: riscv: mm: Define DIRECT_MAP_PHYSMEM_END +Subject: [RUYI PATCH] FROMLIST: riscv: mm: Define DIRECT_MAP_PHYSMEM_END On RISC-V, the actual mappable range of physical address space is dependent on the current MMU mode i.e. satp_mode (See diff --git a/SPECS/linux/0133-FROMLIST-drm-verisilicon-add-max-cursor-size-to-HWDB.patch b/SPECS/linux/0132-FROMLIST-drm-verisilicon-add-max-cursor-size-to-HWDB.patch similarity index 94% rename from SPECS/linux/0133-FROMLIST-drm-verisilicon-add-max-cursor-size-to-HWDB.patch rename to SPECS/linux/0132-FROMLIST-drm-verisilicon-add-max-cursor-size-to-HWDB.patch index bb7cd8254a..902f724ce2 100644 --- a/SPECS/linux/0133-FROMLIST-drm-verisilicon-add-max-cursor-size-to-HWDB.patch +++ b/SPECS/linux/0132-FROMLIST-drm-verisilicon-add-max-cursor-size-to-HWDB.patch @@ -1,8 +1,7 @@ -From ac07aeb50f9558c4545d9287c3f5da4e674a01f7 Mon Sep 17 00:00:00 2001 +From 53c96bbf1a32cded7eaa89f038265bcac7fb85bc Mon Sep 17 00:00:00 2001 From: Icenowy Zheng Date: Thu, 7 May 2026 01:56:09 +0800 -Subject: [PATCH 133/269] FROMLIST: drm: verisilicon: add max cursor size to - HWDB +Subject: [RUYI PATCH] FROMLIST: drm: verisilicon: add max cursor size to HWDB Different display controller variants support different maximum cursor size. All known DC8200 variants support both 32x32 and 64x64, but some diff --git a/SPECS/linux/0134-FROMLIST-drm-verisilicon-add-support-for-cursor-plan.patch b/SPECS/linux/0133-FROMLIST-drm-verisilicon-add-support-for-cursor-plan.patch similarity index 98% rename from SPECS/linux/0134-FROMLIST-drm-verisilicon-add-support-for-cursor-plan.patch rename to SPECS/linux/0133-FROMLIST-drm-verisilicon-add-support-for-cursor-plan.patch index e688ea09f3..a9043b3c17 100644 --- a/SPECS/linux/0134-FROMLIST-drm-verisilicon-add-support-for-cursor-plan.patch +++ b/SPECS/linux/0133-FROMLIST-drm-verisilicon-add-support-for-cursor-plan.patch @@ -1,7 +1,7 @@ -From fbf6185a7777dd8459eb01b40a7dfeec88373ae1 Mon Sep 17 00:00:00 2001 +From bf5b108a86e16d7f5cd676a3b422db4ae0c45933 Mon Sep 17 00:00:00 2001 From: Icenowy Zheng Date: Thu, 7 May 2026 01:56:10 +0800 -Subject: [PATCH 134/269] FROMLIST: drm: verisilicon: add support for cursor +Subject: [RUYI PATCH] FROMLIST: drm: verisilicon: add support for cursor planes Verisilicon display controllers support hardware cursors per output diff --git a/SPECS/linux/0135-FROMLIST-riscv-add-UltraRISC-SoC-family-Kconfig-supp.patch b/SPECS/linux/0134-FROMLIST-riscv-add-UltraRISC-SoC-family-Kconfig-supp.patch similarity index 87% rename from SPECS/linux/0135-FROMLIST-riscv-add-UltraRISC-SoC-family-Kconfig-supp.patch rename to SPECS/linux/0134-FROMLIST-riscv-add-UltraRISC-SoC-family-Kconfig-supp.patch index 64028e9e3b..3e5c4be24b 100644 --- a/SPECS/linux/0135-FROMLIST-riscv-add-UltraRISC-SoC-family-Kconfig-supp.patch +++ b/SPECS/linux/0134-FROMLIST-riscv-add-UltraRISC-SoC-family-Kconfig-supp.patch @@ -1,7 +1,7 @@ -From 19ea9f3c21f0f43352ac64c89ac71a5af8b3abc1 Mon Sep 17 00:00:00 2001 +From 4ceb8038ae51d5afad023646a49af3b603cbd853 Mon Sep 17 00:00:00 2001 From: Jia Wang Date: Mon, 27 Apr 2026 09:32:10 +0800 -Subject: [PATCH 135/269] FROMLIST: riscv: add UltraRISC SoC family Kconfig +Subject: [RUYI PATCH] FROMLIST: riscv: add UltraRISC SoC family Kconfig support The first SoC in the UltraRISC series is UR-DP1000, containing octa diff --git a/SPECS/linux/0136-FROMLIST-dt-bindings-PCI-Add-UltraRISC-DP1000-PCIe-c.patch b/SPECS/linux/0135-FROMLIST-dt-bindings-PCI-Add-UltraRISC-DP1000-PCIe-c.patch similarity index 96% rename from SPECS/linux/0136-FROMLIST-dt-bindings-PCI-Add-UltraRISC-DP1000-PCIe-c.patch rename to SPECS/linux/0135-FROMLIST-dt-bindings-PCI-Add-UltraRISC-DP1000-PCIe-c.patch index 980b4cc8b0..e33e2d422f 100644 --- a/SPECS/linux/0136-FROMLIST-dt-bindings-PCI-Add-UltraRISC-DP1000-PCIe-c.patch +++ b/SPECS/linux/0135-FROMLIST-dt-bindings-PCI-Add-UltraRISC-DP1000-PCIe-c.patch @@ -1,7 +1,7 @@ -From b4ad3f8c3b2e8519370ec127039db7e5b8ce80b8 Mon Sep 17 00:00:00 2001 +From 4c1c3438ee690500d08ee4adfe2e7f660fd1a535 Mon Sep 17 00:00:00 2001 From: Jia Wang Date: Mon, 27 Apr 2026 09:32:11 +0800 -Subject: [PATCH 136/269] FROMLIST: dt-bindings: PCI: Add UltraRISC DP1000 PCIe +Subject: [RUYI PATCH] FROMLIST: dt-bindings: PCI: Add UltraRISC DP1000 PCIe controller Add UltraRISC DP1000 SoC PCIe controller devicetree bindings. diff --git a/SPECS/linux/0137-FROMLIST-PCI-ultrarisc-Add-UltraRISC-DP1000-PCIe-Roo.patch b/SPECS/linux/0136-FROMLIST-PCI-ultrarisc-Add-UltraRISC-DP1000-PCIe-Roo.patch similarity index 98% rename from SPECS/linux/0137-FROMLIST-PCI-ultrarisc-Add-UltraRISC-DP1000-PCIe-Roo.patch rename to SPECS/linux/0136-FROMLIST-PCI-ultrarisc-Add-UltraRISC-DP1000-PCIe-Roo.patch index 5f54b8d51b..74684f14ad 100644 --- a/SPECS/linux/0137-FROMLIST-PCI-ultrarisc-Add-UltraRISC-DP1000-PCIe-Roo.patch +++ b/SPECS/linux/0136-FROMLIST-PCI-ultrarisc-Add-UltraRISC-DP1000-PCIe-Roo.patch @@ -1,8 +1,8 @@ -From 2c16bc472ac3f12ba2ca57fd8bffaf404720328a Mon Sep 17 00:00:00 2001 +From b90ec0b785a09a3a90b5d837f2983c0b5b267b66 Mon Sep 17 00:00:00 2001 From: Xincheng Zhang Date: Mon, 27 Apr 2026 09:32:12 +0800 -Subject: [PATCH 137/269] FROMLIST: PCI: ultrarisc: Add UltraRISC DP1000 PCIe - Root Complex driver +Subject: [RUYI PATCH] FROMLIST: PCI: ultrarisc: Add UltraRISC DP1000 PCIe Root + Complex driver Add DP1000 SoC PCIe Root Complex driver. diff --git a/SPECS/linux/0138-FROMLIST-serial-8250_dwlib-move-DesignWare-register-.patch b/SPECS/linux/0137-FROMLIST-serial-8250_dwlib-move-DesignWare-register-.patch similarity index 97% rename from SPECS/linux/0138-FROMLIST-serial-8250_dwlib-move-DesignWare-register-.patch rename to SPECS/linux/0137-FROMLIST-serial-8250_dwlib-move-DesignWare-register-.patch index e259c9364a..462ca9d0dd 100644 --- a/SPECS/linux/0138-FROMLIST-serial-8250_dwlib-move-DesignWare-register-.patch +++ b/SPECS/linux/0137-FROMLIST-serial-8250_dwlib-move-DesignWare-register-.patch @@ -1,8 +1,8 @@ -From a413eaa6f0bf79e6e5da432fa3876b976feb3e76 Mon Sep 17 00:00:00 2001 +From f5c471276113f304468e2b1da532ee386e484f8e Mon Sep 17 00:00:00 2001 From: Jia Wang Date: Tue, 28 Apr 2026 13:26:26 +0800 -Subject: [PATCH 138/269] FROMLIST: serial: 8250_dwlib: move DesignWare - register definitions to header +Subject: [RUYI PATCH] FROMLIST: serial: 8250_dwlib: move DesignWare register + definitions to header Move the DW_UART_* register offsets and CPR bit/field definitions from 8250_dwlib.c into 8250_dwlib.h so they can be shared by 8250_dw and diff --git a/SPECS/linux/0139-FROMLIST-serial-8250_dw-build-Renesas-RZN1-CPR-value.patch b/SPECS/linux/0138-FROMLIST-serial-8250_dw-build-Renesas-RZN1-CPR-value.patch similarity index 93% rename from SPECS/linux/0139-FROMLIST-serial-8250_dw-build-Renesas-RZN1-CPR-value.patch rename to SPECS/linux/0138-FROMLIST-serial-8250_dw-build-Renesas-RZN1-CPR-value.patch index ac282470b2..f6e0952475 100644 --- a/SPECS/linux/0139-FROMLIST-serial-8250_dw-build-Renesas-RZN1-CPR-value.patch +++ b/SPECS/linux/0138-FROMLIST-serial-8250_dw-build-Renesas-RZN1-CPR-value.patch @@ -1,8 +1,8 @@ -From 39c2888c6ba610ef47ee68f885afa8a1cd57177e Mon Sep 17 00:00:00 2001 +From 44aacbdd590f85d438612b9d80b533f5337a3319 Mon Sep 17 00:00:00 2001 From: Jia Wang Date: Tue, 28 Apr 2026 13:26:27 +0800 -Subject: [PATCH 139/269] FROMLIST: serial: 8250_dw: build Renesas RZN1 CPR - value from DW_UART_CPR_* definitions +Subject: [RUYI PATCH] FROMLIST: serial: 8250_dw: build Renesas RZN1 CPR value + from DW_UART_CPR_* definitions Replace the magic CPR value for Renesas RZ/N1 with a composition using DW_UART_CPR_* bit/field definitions and FIELD_PREP_CONST(). diff --git a/SPECS/linux/0140-FROMLIST-dt-bindings-serial-snps-dw-apb-uart-Add-Ult.patch b/SPECS/linux/0139-FROMLIST-dt-bindings-serial-snps-dw-apb-uart-Add-Ult.patch similarity index 89% rename from SPECS/linux/0140-FROMLIST-dt-bindings-serial-snps-dw-apb-uart-Add-Ult.patch rename to SPECS/linux/0139-FROMLIST-dt-bindings-serial-snps-dw-apb-uart-Add-Ult.patch index ac0dd8d0a1..08b007d216 100644 --- a/SPECS/linux/0140-FROMLIST-dt-bindings-serial-snps-dw-apb-uart-Add-Ult.patch +++ b/SPECS/linux/0139-FROMLIST-dt-bindings-serial-snps-dw-apb-uart-Add-Ult.patch @@ -1,7 +1,7 @@ -From babb0a7321dac7cb22438c4491e49c4c5dcaf9e8 Mon Sep 17 00:00:00 2001 +From e9f2699713d75d3fbfd2af658ef3ef2e5ee30301 Mon Sep 17 00:00:00 2001 From: Jia Wang Date: Tue, 28 Apr 2026 13:26:28 +0800 -Subject: [PATCH 140/269] FROMLIST: dt-bindings: serial: snps-dw-apb-uart: Add +Subject: [RUYI PATCH] FROMLIST: dt-bindings: serial: snps-dw-apb-uart: Add UltraRISC DP1000 UART UltraRISC DP1000 integrates a Synopsys DesignWare APB UART, but it does diff --git a/SPECS/linux/0141-FROMLIST-serial-8250_dw-Use-a-fixed-CPR-value-for-Ul.patch b/SPECS/linux/0140-FROMLIST-serial-8250_dw-Use-a-fixed-CPR-value-for-Ul.patch similarity index 93% rename from SPECS/linux/0141-FROMLIST-serial-8250_dw-Use-a-fixed-CPR-value-for-Ul.patch rename to SPECS/linux/0140-FROMLIST-serial-8250_dw-Use-a-fixed-CPR-value-for-Ul.patch index b9c3380733..da0c498a26 100644 --- a/SPECS/linux/0141-FROMLIST-serial-8250_dw-Use-a-fixed-CPR-value-for-Ul.patch +++ b/SPECS/linux/0140-FROMLIST-serial-8250_dw-Use-a-fixed-CPR-value-for-Ul.patch @@ -1,7 +1,7 @@ -From 10f1d34297dfbadb9eea6a28c96d5c809aa20f91 Mon Sep 17 00:00:00 2001 +From c4e8f76e621f53412ee8a11e088ada66a92bed4d Mon Sep 17 00:00:00 2001 From: Jia Wang Date: Tue, 28 Apr 2026 13:26:29 +0800 -Subject: [PATCH 141/269] FROMLIST: serial: 8250_dw: Use a fixed CPR value for +Subject: [RUYI PATCH] FROMLIST: serial: 8250_dw: Use a fixed CPR value for UltraRISC DP1000 UART The UltraRISC DP1000 UART does not provide the standard CPR register used diff --git a/SPECS/linux/0142-FROMLIST-riscv-disable-local-interrupts-and-stop-oth.patch b/SPECS/linux/0141-FROMLIST-riscv-disable-local-interrupts-and-stop-oth.patch similarity index 93% rename from SPECS/linux/0142-FROMLIST-riscv-disable-local-interrupts-and-stop-oth.patch rename to SPECS/linux/0141-FROMLIST-riscv-disable-local-interrupts-and-stop-oth.patch index 9caf4ff05b..7db751bf74 100644 --- a/SPECS/linux/0142-FROMLIST-riscv-disable-local-interrupts-and-stop-oth.patch +++ b/SPECS/linux/0141-FROMLIST-riscv-disable-local-interrupts-and-stop-oth.patch @@ -1,8 +1,8 @@ -From 5dd50075a3c2fe22bfb8fefd766c5c1a389cd284 Mon Sep 17 00:00:00 2001 +From 131debb680565f50ee2525b83e97b04e46b00545 Mon Sep 17 00:00:00 2001 From: Troy Mitchell Date: Tue, 17 Mar 2026 16:48:06 +0800 -Subject: [PATCH 142/269] FROMLIST: riscv: disable local interrupts and stop - other CPUs before reboot/shutdown +Subject: [RUYI PATCH] FROMLIST: riscv: disable local interrupts and stop other + CPUs before reboot/shutdown Currently, the RISC-V implementation of machine_restart(), machine_halt(), and machine_power_off() invokes the kernel teardown chains (e.g., diff --git a/SPECS/linux/0143-FROMLIST-drm-bridge-th1520-dw-hdmi-Fix-error-check-o.patch b/SPECS/linux/0142-FROMLIST-drm-bridge-th1520-dw-hdmi-Fix-error-check-o.patch similarity index 87% rename from SPECS/linux/0143-FROMLIST-drm-bridge-th1520-dw-hdmi-Fix-error-check-o.patch rename to SPECS/linux/0142-FROMLIST-drm-bridge-th1520-dw-hdmi-Fix-error-check-o.patch index 50d8d31ab2..ad1d2cab5a 100644 --- a/SPECS/linux/0143-FROMLIST-drm-bridge-th1520-dw-hdmi-Fix-error-check-o.patch +++ b/SPECS/linux/0142-FROMLIST-drm-bridge-th1520-dw-hdmi-Fix-error-check-o.patch @@ -1,8 +1,8 @@ -From 0c3c70a4e3ecac979a30390e88135d285dcfaee2 Mon Sep 17 00:00:00 2001 +From 5f2aefa86c8ab39b1e1e3d1022f5e1bd16898f49 Mon Sep 17 00:00:00 2001 From: Felix Gu Date: Sat, 21 Mar 2026 03:12:10 +0800 -Subject: [PATCH 143/269] FROMLIST: drm/bridge: th1520-dw-hdmi: Fix error check - on dw_hdmi_probe() return value +Subject: [RUYI PATCH] FROMLIST: drm/bridge: th1520-dw-hdmi: Fix error check on + dw_hdmi_probe() return value The error check after calling dw_hdmi_probe() was incorrectly checking the struct pointer hdmi instead of the probe result hdmi->dw_hdmi. diff --git a/SPECS/linux/0144-FROMLIST-drm-bridge-th1520-dw-hdmi-Fix-remove-callba.patch b/SPECS/linux/0143-FROMLIST-drm-bridge-th1520-dw-hdmi-Fix-remove-callba.patch similarity index 91% rename from SPECS/linux/0144-FROMLIST-drm-bridge-th1520-dw-hdmi-Fix-remove-callba.patch rename to SPECS/linux/0143-FROMLIST-drm-bridge-th1520-dw-hdmi-Fix-remove-callba.patch index 0e50864ebf..855db71c4c 100644 --- a/SPECS/linux/0144-FROMLIST-drm-bridge-th1520-dw-hdmi-Fix-remove-callba.patch +++ b/SPECS/linux/0143-FROMLIST-drm-bridge-th1520-dw-hdmi-Fix-remove-callba.patch @@ -1,7 +1,7 @@ -From f4cc5e60f5930e3ede96e55e0e4119dcacb45d59 Mon Sep 17 00:00:00 2001 +From b5f3e1b5bd3d82b9b5a0221d6a962b3aa6033743 Mon Sep 17 00:00:00 2001 From: Felix Gu Date: Sat, 21 Mar 2026 03:12:11 +0800 -Subject: [PATCH 144/269] FROMLIST: drm/bridge: th1520-dw-hdmi: Fix remove() +Subject: [RUYI PATCH] FROMLIST: drm/bridge: th1520-dw-hdmi: Fix remove() callback This driver stores struct th1520_hdmi * in platform drvdata, but diff --git a/SPECS/linux/0145-FROMLIST-riscv-dts-spacemit-Enable-i2c8-adapter-for-.patch b/SPECS/linux/0144-FROMLIST-riscv-dts-spacemit-Enable-i2c8-adapter-for-.patch similarity index 85% rename from SPECS/linux/0145-FROMLIST-riscv-dts-spacemit-Enable-i2c8-adapter-for-.patch rename to SPECS/linux/0144-FROMLIST-riscv-dts-spacemit-Enable-i2c8-adapter-for-.patch index 0e9c120ca8..ee635c7005 100644 --- a/SPECS/linux/0145-FROMLIST-riscv-dts-spacemit-Enable-i2c8-adapter-for-.patch +++ b/SPECS/linux/0144-FROMLIST-riscv-dts-spacemit-Enable-i2c8-adapter-for-.patch @@ -1,8 +1,8 @@ -From aa0efe15dee89d51832adf1cf57ec4a170d5e8c9 Mon Sep 17 00:00:00 2001 +From 700995cb9d605ce5b3366518752a851af8d3326c Mon Sep 17 00:00:00 2001 From: Han Gao Date: Tue, 7 Apr 2026 23:28:14 +0800 -Subject: [PATCH 145/269] FROMLIST: riscv: dts: spacemit: Enable i2c8 adapter - for OrangePi RV2 +Subject: [RUYI PATCH] FROMLIST: riscv: dts: spacemit: Enable i2c8 adapter for + OrangePi RV2 The adapter is used to access the SpacemiT P1 PMIC present in this board. diff --git a/SPECS/linux/0146-FROMLIST-riscv-dts-spacemit-Define-the-P1-PMIC-regul.patch b/SPECS/linux/0145-FROMLIST-riscv-dts-spacemit-Define-the-P1-PMIC-regul.patch similarity index 96% rename from SPECS/linux/0146-FROMLIST-riscv-dts-spacemit-Define-the-P1-PMIC-regul.patch rename to SPECS/linux/0145-FROMLIST-riscv-dts-spacemit-Define-the-P1-PMIC-regul.patch index 69771bdcc9..90ef2c1156 100644 --- a/SPECS/linux/0146-FROMLIST-riscv-dts-spacemit-Define-the-P1-PMIC-regul.patch +++ b/SPECS/linux/0145-FROMLIST-riscv-dts-spacemit-Define-the-P1-PMIC-regul.patch @@ -1,7 +1,7 @@ -From bd90155ca797fae5beba5173554c2cb0562d7fe3 Mon Sep 17 00:00:00 2001 +From 56f4ec657e083a7aaffa8767283dd189218c43b2 Mon Sep 17 00:00:00 2001 From: Han Gao Date: Tue, 7 Apr 2026 23:28:15 +0800 -Subject: [PATCH 146/269] FROMLIST: riscv: dts: spacemit: Define the P1 PMIC +Subject: [RUYI PATCH] FROMLIST: riscv: dts: spacemit: Define the P1 PMIC regulators for OrangePi RV2 Define the DC power input and the 4v power as fixed regulator supplies. diff --git a/SPECS/linux/0147-FROMLIST-riscv-dts-spacemit-Enable-USB3.0-PCIe-on-Or.patch b/SPECS/linux/0146-FROMLIST-riscv-dts-spacemit-Enable-USB3.0-PCIe-on-Or.patch similarity index 95% rename from SPECS/linux/0147-FROMLIST-riscv-dts-spacemit-Enable-USB3.0-PCIe-on-Or.patch rename to SPECS/linux/0146-FROMLIST-riscv-dts-spacemit-Enable-USB3.0-PCIe-on-Or.patch index db035fcf76..b0d14d8271 100644 --- a/SPECS/linux/0147-FROMLIST-riscv-dts-spacemit-Enable-USB3.0-PCIe-on-Or.patch +++ b/SPECS/linux/0146-FROMLIST-riscv-dts-spacemit-Enable-USB3.0-PCIe-on-Or.patch @@ -1,7 +1,7 @@ -From 038ef50cae35bfa3b89955b6abe063defc86463e Mon Sep 17 00:00:00 2001 +From 5d0f24dd65b72dbb618134d237e6499604fb1d4d Mon Sep 17 00:00:00 2001 From: Han Gao Date: Tue, 7 Apr 2026 23:28:16 +0800 -Subject: [PATCH 147/269] FROMLIST: riscv: dts: spacemit: Enable USB3.0/PCIe on +Subject: [RUYI PATCH] FROMLIST: riscv: dts: spacemit: Enable USB3.0/PCIe on OrangePi RV2 Enable the DWC3 USB 3.0 controller and its associated usbphy2 on the diff --git a/SPECS/linux/0148-FROMLIST-dt-bindings-dmaengine-Add-SpacemiT-K3-DMA-c.patch b/SPECS/linux/0147-FROMLIST-dt-bindings-dmaengine-Add-SpacemiT-K3-DMA-c.patch similarity index 90% rename from SPECS/linux/0148-FROMLIST-dt-bindings-dmaengine-Add-SpacemiT-K3-DMA-c.patch rename to SPECS/linux/0147-FROMLIST-dt-bindings-dmaengine-Add-SpacemiT-K3-DMA-c.patch index b3cd4043a4..b863322935 100644 --- a/SPECS/linux/0148-FROMLIST-dt-bindings-dmaengine-Add-SpacemiT-K3-DMA-c.patch +++ b/SPECS/linux/0147-FROMLIST-dt-bindings-dmaengine-Add-SpacemiT-K3-DMA-c.patch @@ -1,7 +1,7 @@ -From 160157e79b5b7c5fc765b4fd0935350d8d7e2f48 Mon Sep 17 00:00:00 2001 +From d0837aaa4d6a3063a6b97a5535f6679b1933032f Mon Sep 17 00:00:00 2001 From: Guodong Xu Date: Mon, 18 May 2026 11:32:41 +0800 -Subject: [PATCH 148/269] FROMLIST: dt-bindings: dmaengine: Add SpacemiT K3 DMA +Subject: [RUYI PATCH] FROMLIST: dt-bindings: dmaengine: Add SpacemiT K3 DMA compatible string Add the "spacemit,k3-pdma" compatible string for the SpacemiT K3 SoC. diff --git a/SPECS/linux/0149-FROMLIST-dmaengine-mmp_pdma-refactor-DRCMR-access-wi.patch b/SPECS/linux/0148-FROMLIST-dmaengine-mmp_pdma-refactor-DRCMR-access-wi.patch similarity index 96% rename from SPECS/linux/0149-FROMLIST-dmaengine-mmp_pdma-refactor-DRCMR-access-wi.patch rename to SPECS/linux/0148-FROMLIST-dmaengine-mmp_pdma-refactor-DRCMR-access-wi.patch index 6ae87c4c57..b218432893 100644 --- a/SPECS/linux/0149-FROMLIST-dmaengine-mmp_pdma-refactor-DRCMR-access-wi.patch +++ b/SPECS/linux/0148-FROMLIST-dmaengine-mmp_pdma-refactor-DRCMR-access-wi.patch @@ -1,7 +1,7 @@ -From c77791957eebac9b456023cdd2cf2c43977cb1e5 Mon Sep 17 00:00:00 2001 +From 65fb68c807f41ac5e1415fd0a7c5375c481e65e6 Mon Sep 17 00:00:00 2001 From: Guodong Xu Date: Mon, 18 May 2026 11:32:42 +0800 -Subject: [PATCH 149/269] FROMLIST: dmaengine: mmp_pdma: refactor DRCMR access +Subject: [RUYI PATCH] FROMLIST: dmaengine: mmp_pdma: refactor DRCMR access with helper function Refactor the DRCMR macro into a helper function mmp_pdma_get_drcmr() diff --git a/SPECS/linux/0150-FROMLIST-dmaengine-mmp_pdma-add-SpacemiT-K3-support.patch b/SPECS/linux/0149-FROMLIST-dmaengine-mmp_pdma-add-SpacemiT-K3-support.patch similarity index 93% rename from SPECS/linux/0150-FROMLIST-dmaengine-mmp_pdma-add-SpacemiT-K3-support.patch rename to SPECS/linux/0149-FROMLIST-dmaengine-mmp_pdma-add-SpacemiT-K3-support.patch index f9f97be744..b15e718019 100644 --- a/SPECS/linux/0150-FROMLIST-dmaengine-mmp_pdma-add-SpacemiT-K3-support.patch +++ b/SPECS/linux/0149-FROMLIST-dmaengine-mmp_pdma-add-SpacemiT-K3-support.patch @@ -1,8 +1,7 @@ -From feef998462c7a50d6c1a3a570afc8267c0d46b66 Mon Sep 17 00:00:00 2001 +From b8a50cdaa7d0bff7f1b9ec74c15bbe8792f0b5d2 Mon Sep 17 00:00:00 2001 From: Guodong Xu Date: Mon, 18 May 2026 11:32:43 +0800 -Subject: [PATCH 150/269] FROMLIST: dmaengine: mmp_pdma: add SpacemiT K3 - support +Subject: [RUYI PATCH] FROMLIST: dmaengine: mmp_pdma: add SpacemiT K3 support SpacemiT K3 reuses most of the PDMA IP design found on K1, with one difference being the extended DRCMR base address. Add "spacemit,k3-pdma" diff --git a/SPECS/linux/0151-FROMLIST-riscv-dts-spacemit-Add-PDMA-controller-node.patch b/SPECS/linux/0150-FROMLIST-riscv-dts-spacemit-Add-PDMA-controller-node.patch similarity index 91% rename from SPECS/linux/0151-FROMLIST-riscv-dts-spacemit-Add-PDMA-controller-node.patch rename to SPECS/linux/0150-FROMLIST-riscv-dts-spacemit-Add-PDMA-controller-node.patch index 5fdc627d16..637ca762bd 100644 --- a/SPECS/linux/0151-FROMLIST-riscv-dts-spacemit-Add-PDMA-controller-node.patch +++ b/SPECS/linux/0150-FROMLIST-riscv-dts-spacemit-Add-PDMA-controller-node.patch @@ -1,8 +1,8 @@ -From cc845c0f3caec5002618afb0d37d8a21f074669f Mon Sep 17 00:00:00 2001 +From 6d0191c0fcdb94c4ec4bb0d35877e0726b9dab07 Mon Sep 17 00:00:00 2001 From: Troy Mitchell Date: Mon, 18 May 2026 11:32:44 +0800 -Subject: [PATCH 151/269] FROMLIST: riscv: dts: spacemit: Add PDMA controller - node for K3 SoC +Subject: [RUYI PATCH] FROMLIST: riscv: dts: spacemit: Add PDMA controller node + for K3 SoC Add the Peripheral DMA (PDMA) controller node for the SpacemiT K3 SoC. The PDMA controller provides general-purpose DMA capabilities for various diff --git a/SPECS/linux/0152-FROMLIST-dt-bindings-pci-sophgo-Add-dma-coherent-pro.patch b/SPECS/linux/0151-FROMLIST-dt-bindings-pci-sophgo-Add-dma-coherent-pro.patch similarity index 88% rename from SPECS/linux/0152-FROMLIST-dt-bindings-pci-sophgo-Add-dma-coherent-pro.patch rename to SPECS/linux/0151-FROMLIST-dt-bindings-pci-sophgo-Add-dma-coherent-pro.patch index 48eb95ca98..cc4dced099 100644 --- a/SPECS/linux/0152-FROMLIST-dt-bindings-pci-sophgo-Add-dma-coherent-pro.patch +++ b/SPECS/linux/0151-FROMLIST-dt-bindings-pci-sophgo-Add-dma-coherent-pro.patch @@ -1,7 +1,7 @@ -From 98ed5beb5c0df96d799b8b2112e88c75eb9e4411 Mon Sep 17 00:00:00 2001 +From ef2259484eb886e83a743eb0fb85396ae726253d Mon Sep 17 00:00:00 2001 From: Han Gao Date: Wed, 1 Apr 2026 01:12:47 +0800 -Subject: [PATCH 152/269] FROMLIST: dt-bindings: pci: sophgo: Add dma-coherent +Subject: [RUYI PATCH] FROMLIST: dt-bindings: pci: sophgo: Add dma-coherent property for SG2042 Add dma-coherent as an allowed property in the SG2042 PCIe host diff --git a/SPECS/linux/0153-FROMLIST-riscv-dts-sophgo-Add-dma-coherent-to-SG2042.patch b/SPECS/linux/0152-FROMLIST-riscv-dts-sophgo-Add-dma-coherent-to-SG2042.patch similarity index 90% rename from SPECS/linux/0153-FROMLIST-riscv-dts-sophgo-Add-dma-coherent-to-SG2042.patch rename to SPECS/linux/0152-FROMLIST-riscv-dts-sophgo-Add-dma-coherent-to-SG2042.patch index 917c44c2d1..ea9d075150 100644 --- a/SPECS/linux/0153-FROMLIST-riscv-dts-sophgo-Add-dma-coherent-to-SG2042.patch +++ b/SPECS/linux/0152-FROMLIST-riscv-dts-sophgo-Add-dma-coherent-to-SG2042.patch @@ -1,8 +1,8 @@ -From 5580c0e6f96b1acb5943c89775d0868923971140 Mon Sep 17 00:00:00 2001 +From 6a48070cef58869aa59cd42f8f26b3dd0e5c49f8 Mon Sep 17 00:00:00 2001 From: Han Gao Date: Wed, 1 Apr 2026 01:12:48 +0800 -Subject: [PATCH 153/269] FROMLIST: riscv: dts: sophgo: Add dma-coherent to - SG2042 PCIe controllers +Subject: [RUYI PATCH] FROMLIST: riscv: dts: sophgo: Add dma-coherent to SG2042 + PCIe controllers SG2042's PCIe root complexes are cache-coherent with the CPU. Mark all four PCIe controller nodes (pcie_rc0 through pcie_rc3) as dma-coherent diff --git a/SPECS/linux/0154-FROMLIST-riscv-mm-fix-SWIOTLB-initialization-for-sys.patch b/SPECS/linux/0153-FROMLIST-riscv-mm-fix-SWIOTLB-initialization-for-sys.patch similarity index 95% rename from SPECS/linux/0154-FROMLIST-riscv-mm-fix-SWIOTLB-initialization-for-sys.patch rename to SPECS/linux/0153-FROMLIST-riscv-mm-fix-SWIOTLB-initialization-for-sys.patch index 0f777aacfd..c83a096754 100644 --- a/SPECS/linux/0154-FROMLIST-riscv-mm-fix-SWIOTLB-initialization-for-sys.patch +++ b/SPECS/linux/0153-FROMLIST-riscv-mm-fix-SWIOTLB-initialization-for-sys.patch @@ -1,7 +1,7 @@ -From 04603d2f196993532da9e1ef6b3713730436cf02 Mon Sep 17 00:00:00 2001 +From e3e108aff62eff53e4f412baa7fabf6d978c40b7 Mon Sep 17 00:00:00 2001 From: Troy Mitchell Date: Tue, 31 Mar 2026 15:37:22 +0800 -Subject: [PATCH 154/269] FROMLIST: riscv: mm: fix SWIOTLB initialization for +Subject: [RUYI PATCH] FROMLIST: riscv: mm: fix SWIOTLB initialization for systems with DRAM above 4GB On RISC-V platforms where the entire physical memory (DRAM) resides diff --git a/SPECS/linux/0155-FROMLIST-riscv-dts-spacemit-k1-bananapi-f3-Add-vcc5v.patch b/SPECS/linux/0154-FROMLIST-riscv-dts-spacemit-k1-bananapi-f3-Add-vcc5v.patch similarity index 93% rename from SPECS/linux/0155-FROMLIST-riscv-dts-spacemit-k1-bananapi-f3-Add-vcc5v.patch rename to SPECS/linux/0154-FROMLIST-riscv-dts-spacemit-k1-bananapi-f3-Add-vcc5v.patch index 4fc897a8fd..84f9a21e79 100644 --- a/SPECS/linux/0155-FROMLIST-riscv-dts-spacemit-k1-bananapi-f3-Add-vcc5v.patch +++ b/SPECS/linux/0154-FROMLIST-riscv-dts-spacemit-k1-bananapi-f3-Add-vcc5v.patch @@ -1,7 +1,7 @@ -From 3c2245ed9830e05da47d63716c0ac4c9a78af636 Mon Sep 17 00:00:00 2001 +From 44033f13478c7f3f26e6705b85ae6f83b176f321 Mon Sep 17 00:00:00 2001 From: Anand Moon Date: Wed, 25 Mar 2026 13:46:08 +0530 -Subject: [PATCH 155/269] FROMLIST: riscv: dts: spacemit: k1-bananapi-f3: Add +Subject: [RUYI PATCH] FROMLIST: riscv: dts: spacemit: k1-bananapi-f3: Add vcc5v0_sys regulator for Banana Pi F3 Define the system 5V fixed regulator (vcc5v0_sys) supplied by the diff --git a/SPECS/linux/0156-FROMLIST-riscv-dts-spacemit-k1-bananapi-f3-Update-US.patch b/SPECS/linux/0155-FROMLIST-riscv-dts-spacemit-k1-bananapi-f3-Update-US.patch similarity index 91% rename from SPECS/linux/0156-FROMLIST-riscv-dts-spacemit-k1-bananapi-f3-Update-US.patch rename to SPECS/linux/0155-FROMLIST-riscv-dts-spacemit-k1-bananapi-f3-Update-US.patch index aae63697d7..96a20961d6 100644 --- a/SPECS/linux/0156-FROMLIST-riscv-dts-spacemit-k1-bananapi-f3-Update-US.patch +++ b/SPECS/linux/0155-FROMLIST-riscv-dts-spacemit-k1-bananapi-f3-Update-US.patch @@ -1,8 +1,8 @@ -From 5a7a9c09553404d805ba2a541a042fc0dab79d5b Mon Sep 17 00:00:00 2001 +From 991b7ddc9cbb2fe0b192da9dc3c966798a76fb34 Mon Sep 17 00:00:00 2001 From: Anand Moon Date: Wed, 25 Mar 2026 13:46:09 +0530 -Subject: [PATCH 156/269] FROMLIST: riscv: dts: spacemit: k1-bananapi-f3: - Update USB regulator on onboard usb and lable +Subject: [RUYI PATCH] FROMLIST: riscv: dts: spacemit: k1-bananapi-f3: Update + USB regulator on onboard usb and lable Update the USB regulator labels to align with the board schematics and power hierarchy. This change renames the regulator to reg_5v_vbus and diff --git a/SPECS/linux/0157-FROMLIST-riscv-dts-spacemit-k1-bananapi-f3-Correct-U.patch b/SPECS/linux/0156-FROMLIST-riscv-dts-spacemit-k1-bananapi-f3-Correct-U.patch similarity index 90% rename from SPECS/linux/0157-FROMLIST-riscv-dts-spacemit-k1-bananapi-f3-Correct-U.patch rename to SPECS/linux/0156-FROMLIST-riscv-dts-spacemit-k1-bananapi-f3-Correct-U.patch index 5512dc6e71..1e7c334a5f 100644 --- a/SPECS/linux/0157-FROMLIST-riscv-dts-spacemit-k1-bananapi-f3-Correct-U.patch +++ b/SPECS/linux/0156-FROMLIST-riscv-dts-spacemit-k1-bananapi-f3-Correct-U.patch @@ -1,8 +1,8 @@ -From da8f5b2b1d60f5b0b72549b9b7773385fe35add4 Mon Sep 17 00:00:00 2001 +From 39032540d6be640b22fd899399a58ce67564fe04 Mon Sep 17 00:00:00 2001 From: Anand Moon Date: Wed, 25 Mar 2026 13:46:10 +0530 -Subject: [PATCH 157/269] FROMLIST: riscv: dts: spacemit: k1-bananapi-f3: - Correct USB hub power hierarchy +Subject: [RUYI PATCH] FROMLIST: riscv: dts: spacemit: k1-bananapi-f3: Correct + USB hub power hierarchy MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit diff --git a/SPECS/linux/0158-FROMLIST-riscv-dts-sophgo-sg2044-use-hex-for-CPU-uni.patch b/SPECS/linux/0157-FROMLIST-riscv-dts-sophgo-sg2044-use-hex-for-CPU-uni.patch similarity index 99% rename from SPECS/linux/0158-FROMLIST-riscv-dts-sophgo-sg2044-use-hex-for-CPU-uni.patch rename to SPECS/linux/0157-FROMLIST-riscv-dts-sophgo-sg2044-use-hex-for-CPU-uni.patch index 7617ba837f..0ee8e7e184 100644 --- a/SPECS/linux/0158-FROMLIST-riscv-dts-sophgo-sg2044-use-hex-for-CPU-uni.patch +++ b/SPECS/linux/0157-FROMLIST-riscv-dts-sophgo-sg2044-use-hex-for-CPU-uni.patch @@ -1,7 +1,7 @@ -From dbe5e1f0b07c36921019f4e244b17172c9733368 Mon Sep 17 00:00:00 2001 +From a0ed813a7bf3b0aa23cacb63d4619915ccbf459d Mon Sep 17 00:00:00 2001 From: Inochi Amaoto Date: Sun, 26 Apr 2026 09:34:48 +0800 -Subject: [PATCH 158/269] FROMLIST: riscv: dts: sophgo: sg2044: use hex for CPU +Subject: [RUYI PATCH] FROMLIST: riscv: dts: sophgo: sg2044: use hex for CPU unit address Previous the CPU unit address cpu of sg2044 use decimal, it is diff --git a/SPECS/linux/0159-FROMLIST-riscv-dts-sophgo-sg2042-use-hex-for-CPU-uni.patch b/SPECS/linux/0158-FROMLIST-riscv-dts-sophgo-sg2042-use-hex-for-CPU-uni.patch similarity index 99% rename from SPECS/linux/0159-FROMLIST-riscv-dts-sophgo-sg2042-use-hex-for-CPU-uni.patch rename to SPECS/linux/0158-FROMLIST-riscv-dts-sophgo-sg2042-use-hex-for-CPU-uni.patch index 7255bba9d2..7792b9d251 100644 --- a/SPECS/linux/0159-FROMLIST-riscv-dts-sophgo-sg2042-use-hex-for-CPU-uni.patch +++ b/SPECS/linux/0158-FROMLIST-riscv-dts-sophgo-sg2042-use-hex-for-CPU-uni.patch @@ -1,7 +1,7 @@ -From 578b44f1182da116c41440033cf90ba82ff1d047 Mon Sep 17 00:00:00 2001 +From 37b60b1ba3b2f03748f06d3f8895549fc4344860 Mon Sep 17 00:00:00 2001 From: Inochi Amaoto Date: Sun, 26 Apr 2026 09:34:49 +0800 -Subject: [PATCH 159/269] FROMLIST: riscv: dts: sophgo: sg2042: use hex for CPU +Subject: [RUYI PATCH] FROMLIST: riscv: dts: sophgo: sg2042: use hex for CPU unit address Previous the CPU unit address cpu of sg2042 use decimal, it is diff --git a/SPECS/linux/0160-FROMLIST-riscv-Fix-fast_unaligned_access_speed_key-n.patch b/SPECS/linux/0159-FROMLIST-riscv-Fix-fast_unaligned_access_speed_key-n.patch similarity index 93% rename from SPECS/linux/0160-FROMLIST-riscv-Fix-fast_unaligned_access_speed_key-n.patch rename to SPECS/linux/0159-FROMLIST-riscv-Fix-fast_unaligned_access_speed_key-n.patch index 64bc647c0d..30acf3c22e 100644 --- a/SPECS/linux/0160-FROMLIST-riscv-Fix-fast_unaligned_access_speed_key-n.patch +++ b/SPECS/linux/0159-FROMLIST-riscv-Fix-fast_unaligned_access_speed_key-n.patch @@ -1,8 +1,8 @@ -From cb761e8c8b38e1f04d0dda5b0ac5c6a75c828a58 Mon Sep 17 00:00:00 2001 +From 71f39070c3ca464a6f2e1961a956feb9cae1ff73 Mon Sep 17 00:00:00 2001 From: Nam Cao Date: Tue, 7 Apr 2026 14:06:39 +0200 -Subject: [PATCH 160/269] FROMLIST: riscv: Fix fast_unaligned_access_speed_key - not getting initialized +Subject: [RUYI PATCH] FROMLIST: riscv: Fix fast_unaligned_access_speed_key not + getting initialized The static key fast_unaligned_access_speed_key is supposed to be initialized after check_unaligned_access_all_cpus() has been completed. diff --git a/SPECS/linux/0161-FROMLIST-riscv-dts-sophgo-reduce-SG2042-MSI-count-to.patch b/SPECS/linux/0160-FROMLIST-riscv-dts-sophgo-reduce-SG2042-MSI-count-to.patch similarity index 89% rename from SPECS/linux/0161-FROMLIST-riscv-dts-sophgo-reduce-SG2042-MSI-count-to.patch rename to SPECS/linux/0160-FROMLIST-riscv-dts-sophgo-reduce-SG2042-MSI-count-to.patch index 8bfa3108e4..a8925bed5b 100644 --- a/SPECS/linux/0161-FROMLIST-riscv-dts-sophgo-reduce-SG2042-MSI-count-to.patch +++ b/SPECS/linux/0160-FROMLIST-riscv-dts-sophgo-reduce-SG2042-MSI-count-to.patch @@ -1,8 +1,8 @@ -From c73cbd2225648501d74ab4898bf20bed55227168 Mon Sep 17 00:00:00 2001 +From 3a363472297ffb6712b64b5421abbe5abc73bd3f Mon Sep 17 00:00:00 2001 From: Icenowy Zheng Date: Wed, 8 Apr 2026 00:01:43 +0800 -Subject: [PATCH 161/269] FROMLIST: riscv: dts: sophgo: reduce SG2042 MSI count - to 16 +Subject: [RUYI PATCH] FROMLIST: riscv: dts: sophgo: reduce SG2042 MSI count to + 16 The SG2042 MSI controller has one 32-bit doorbell register, and each bit corresponds to an interrupt. At a glance, it seems that the MSI diff --git a/SPECS/linux/0162-FROMLIST-dt-bindings-pwm-marvell-pxa-pwm-Add-Spacemi.patch b/SPECS/linux/0161-FROMLIST-dt-bindings-pwm-marvell-pxa-pwm-Add-Spacemi.patch similarity index 94% rename from SPECS/linux/0162-FROMLIST-dt-bindings-pwm-marvell-pxa-pwm-Add-Spacemi.patch rename to SPECS/linux/0161-FROMLIST-dt-bindings-pwm-marvell-pxa-pwm-Add-Spacemi.patch index dd4c766187..be498ba15e 100644 --- a/SPECS/linux/0162-FROMLIST-dt-bindings-pwm-marvell-pxa-pwm-Add-Spacemi.patch +++ b/SPECS/linux/0161-FROMLIST-dt-bindings-pwm-marvell-pxa-pwm-Add-Spacemi.patch @@ -1,7 +1,7 @@ -From 0cb24c01f69fc12abb2a05c7be2c30aecbfb22a1 Mon Sep 17 00:00:00 2001 +From adc7e690dfd95f19848554f1988a4ddfd4128cee Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Tue, 28 Apr 2026 10:46:50 +0000 -Subject: [PATCH 162/269] FROMLIST: dt-bindings: pwm: marvell,pxa-pwm: Add +Subject: [RUYI PATCH] FROMLIST: dt-bindings: pwm: marvell,pxa-pwm: Add SpacemiT K3 PWM support The PWM controller in SpacemiT K3 SoC reuse the same IP as previous K1 diff --git a/SPECS/linux/0163-FROMLIST-pwm-pxa-Add-optional-bus-clock.patch b/SPECS/linux/0162-FROMLIST-pwm-pxa-Add-optional-bus-clock.patch similarity index 92% rename from SPECS/linux/0163-FROMLIST-pwm-pxa-Add-optional-bus-clock.patch rename to SPECS/linux/0162-FROMLIST-pwm-pxa-Add-optional-bus-clock.patch index 6c119665a7..a7f5dc8119 100644 --- a/SPECS/linux/0163-FROMLIST-pwm-pxa-Add-optional-bus-clock.patch +++ b/SPECS/linux/0162-FROMLIST-pwm-pxa-Add-optional-bus-clock.patch @@ -1,7 +1,7 @@ -From 5856b37386e4f77fb317991ddf6e92158cd1e66a Mon Sep 17 00:00:00 2001 +From 154b97ebf13307c699408106e72e156ea53f3a5e Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Tue, 28 Apr 2026 10:46:51 +0000 -Subject: [PATCH 163/269] FROMLIST: pwm: pxa: Add optional bus clock +Subject: [RUYI PATCH] FROMLIST: pwm: pxa: Add optional bus clock Add one secondary optional bus clock for the PWM PXA driver, also keep it compatible with old single clock. diff --git a/SPECS/linux/0164-FROMLIST-riscv-ftrace-select-HAVE_BUILDTIME_MCOUNT_S.patch b/SPECS/linux/0163-FROMLIST-riscv-ftrace-select-HAVE_BUILDTIME_MCOUNT_S.patch similarity index 93% rename from SPECS/linux/0164-FROMLIST-riscv-ftrace-select-HAVE_BUILDTIME_MCOUNT_S.patch rename to SPECS/linux/0163-FROMLIST-riscv-ftrace-select-HAVE_BUILDTIME_MCOUNT_S.patch index fbdfad92de..9fd9f08770 100644 --- a/SPECS/linux/0164-FROMLIST-riscv-ftrace-select-HAVE_BUILDTIME_MCOUNT_S.patch +++ b/SPECS/linux/0163-FROMLIST-riscv-ftrace-select-HAVE_BUILDTIME_MCOUNT_S.patch @@ -1,7 +1,7 @@ -From 48ae5ff61edb51994790faefc3b2d90ad30a1d27 Mon Sep 17 00:00:00 2001 +From 2a9e46f7beb8ddf7a72e2a6fd50d373ea0f72d6b Mon Sep 17 00:00:00 2001 From: Chen Pei Date: Thu, 9 Apr 2026 19:47:36 +0800 -Subject: [PATCH 164/269] FROMLIST: riscv: ftrace: select +Subject: [RUYI PATCH] FROMLIST: riscv: ftrace: select HAVE_BUILDTIME_MCOUNT_SORT RISC-V already satisfies all prerequisites for build-time mcount sorting: diff --git a/SPECS/linux/0165-FROMLIST-riscv-dts-spacemit-enable-USB3-on-OrangePi-.patch b/SPECS/linux/0164-FROMLIST-riscv-dts-spacemit-enable-USB3-on-OrangePi-.patch similarity index 90% rename from SPECS/linux/0165-FROMLIST-riscv-dts-spacemit-enable-USB3-on-OrangePi-.patch rename to SPECS/linux/0164-FROMLIST-riscv-dts-spacemit-enable-USB3-on-OrangePi-.patch index 983ef875b9..5a21fce0a2 100644 --- a/SPECS/linux/0165-FROMLIST-riscv-dts-spacemit-enable-USB3-on-OrangePi-.patch +++ b/SPECS/linux/0164-FROMLIST-riscv-dts-spacemit-enable-USB3-on-OrangePi-.patch @@ -1,8 +1,8 @@ -From 1416a000f1deffb86bfb1570180379385b1fb5a8 Mon Sep 17 00:00:00 2001 +From 01b3027d390d13a17f99b6e1e79066cf1f77b798 Mon Sep 17 00:00:00 2001 From: Chukun Pan Date: Mon, 18 May 2026 18:00:30 +0800 -Subject: [PATCH 165/269] FROMLIST: riscv: dts: spacemit: enable USB3 on - OrangePi R2S +Subject: [RUYI PATCH] FROMLIST: riscv: dts: spacemit: enable USB3 on OrangePi + R2S Enable the DWC3 USB3.0 controller and its associated PHY on the OrangePi R2S. The USB regulator provides VBUS for USB2 and USB3 diff --git a/SPECS/linux/0166-FROMLIST-dts-riscv-spacemit-correct-32k-clock-freque.patch b/SPECS/linux/0165-FROMLIST-dts-riscv-spacemit-correct-32k-clock-freque.patch similarity index 91% rename from SPECS/linux/0166-FROMLIST-dts-riscv-spacemit-correct-32k-clock-freque.patch rename to SPECS/linux/0165-FROMLIST-dts-riscv-spacemit-correct-32k-clock-freque.patch index c519c182d4..c00b9bd1c8 100644 --- a/SPECS/linux/0166-FROMLIST-dts-riscv-spacemit-correct-32k-clock-freque.patch +++ b/SPECS/linux/0165-FROMLIST-dts-riscv-spacemit-correct-32k-clock-freque.patch @@ -1,7 +1,7 @@ -From 5158f04aea351ebe25a91e303f522c482219d8ac Mon Sep 17 00:00:00 2001 +From 83a769e5b90e7ead2b105395822b7add9a03f8dd Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Tue, 28 Apr 2026 10:57:29 +0000 -Subject: [PATCH 166/269] FROMLIST: dts: riscv: spacemit: correct 32k clock +Subject: [RUYI PATCH] FROMLIST: dts: riscv: spacemit: correct 32k clock frequency The 32k oscillator's clock frequency is actually 32768Hz, so correct it. diff --git a/SPECS/linux/0167-FROMLIST-ASoC-dt-bindings-add-SpacemiT-K3-SoC-compat.patch b/SPECS/linux/0166-FROMLIST-ASoC-dt-bindings-add-SpacemiT-K3-SoC-compat.patch similarity index 94% rename from SPECS/linux/0167-FROMLIST-ASoC-dt-bindings-add-SpacemiT-K3-SoC-compat.patch rename to SPECS/linux/0166-FROMLIST-ASoC-dt-bindings-add-SpacemiT-K3-SoC-compat.patch index 25df9a3f24..0f9b6528a5 100644 --- a/SPECS/linux/0167-FROMLIST-ASoC-dt-bindings-add-SpacemiT-K3-SoC-compat.patch +++ b/SPECS/linux/0166-FROMLIST-ASoC-dt-bindings-add-SpacemiT-K3-SoC-compat.patch @@ -1,7 +1,7 @@ -From f15066d6184dab3b026b242a47bc0f4a40c709ac Mon Sep 17 00:00:00 2001 +From c4760914af72008c33f318fd488152162f8bdea0 Mon Sep 17 00:00:00 2001 From: Troy Mitchell Date: Thu, 7 May 2026 15:33:09 +0800 -Subject: [PATCH 167/269] FROMLIST: ASoC: dt-bindings: add SpacemiT K3 SoC +Subject: [RUYI PATCH] FROMLIST: ASoC: dt-bindings: add SpacemiT K3 SoC compatible Add the spacemit,k3-i2s compatible string for the K3 SoC I2S diff --git a/SPECS/linux/0168-FROMLIST-ASoC-spacemit-add-K3-SoC-support-with-addit.patch b/SPECS/linux/0167-FROMLIST-ASoC-spacemit-add-K3-SoC-support-with-addit.patch similarity index 96% rename from SPECS/linux/0168-FROMLIST-ASoC-spacemit-add-K3-SoC-support-with-addit.patch rename to SPECS/linux/0167-FROMLIST-ASoC-spacemit-add-K3-SoC-support-with-addit.patch index a248bd3b81..cd37b281e1 100644 --- a/SPECS/linux/0168-FROMLIST-ASoC-spacemit-add-K3-SoC-support-with-addit.patch +++ b/SPECS/linux/0167-FROMLIST-ASoC-spacemit-add-K3-SoC-support-with-addit.patch @@ -1,7 +1,7 @@ -From 43c50acbe91b2659301b094a07091c3d00cd990a Mon Sep 17 00:00:00 2001 +From b3edfe872c910ef2cc43efbef8ad09e83eca5a3c Mon Sep 17 00:00:00 2001 From: Troy Mitchell Date: Thu, 7 May 2026 15:33:10 +0800 -Subject: [PATCH 168/269] FROMLIST: ASoC: spacemit: add K3 SoC support with +Subject: [RUYI PATCH] FROMLIST: ASoC: spacemit: add K3 SoC support with additional clocks Add support for the SpacemiT K3 SoC I2S controller, which shares the diff --git a/SPECS/linux/0169-FROMLIST-ASoC-soc-dai-add-shared-BCLK-clock-for-cros.patch b/SPECS/linux/0168-FROMLIST-ASoC-soc-dai-add-shared-BCLK-clock-for-cros.patch similarity index 95% rename from SPECS/linux/0169-FROMLIST-ASoC-soc-dai-add-shared-BCLK-clock-for-cros.patch rename to SPECS/linux/0168-FROMLIST-ASoC-soc-dai-add-shared-BCLK-clock-for-cros.patch index d89234c0e1..d013b1f727 100644 --- a/SPECS/linux/0169-FROMLIST-ASoC-soc-dai-add-shared-BCLK-clock-for-cros.patch +++ b/SPECS/linux/0168-FROMLIST-ASoC-soc-dai-add-shared-BCLK-clock-for-cros.patch @@ -1,7 +1,7 @@ -From e82a58667f6827baa3a0747173b70f2aca5ffdcc Mon Sep 17 00:00:00 2001 +From 272949e114db6624dac92d1e35c258fb2eebdfd3 Mon Sep 17 00:00:00 2001 From: Troy Mitchell Date: Thu, 7 May 2026 18:31:42 +0800 -Subject: [PATCH 169/269] FROMLIST: ASoC: soc-dai: add shared BCLK clock for +Subject: [RUYI PATCH] FROMLIST: ASoC: soc-dai: add shared BCLK clock for cross-DAI rate constraints Add a bclk field to struct snd_soc_dai and a helper function diff --git a/SPECS/linux/0170-FROMLIST-ASoC-soc-pcm-constrain-hw_params-when-DAIs-.patch b/SPECS/linux/0169-FROMLIST-ASoC-soc-pcm-constrain-hw_params-when-DAIs-.patch similarity index 97% rename from SPECS/linux/0170-FROMLIST-ASoC-soc-pcm-constrain-hw_params-when-DAIs-.patch rename to SPECS/linux/0169-FROMLIST-ASoC-soc-pcm-constrain-hw_params-when-DAIs-.patch index 000f3412f4..83e8423579 100644 --- a/SPECS/linux/0170-FROMLIST-ASoC-soc-pcm-constrain-hw_params-when-DAIs-.patch +++ b/SPECS/linux/0169-FROMLIST-ASoC-soc-pcm-constrain-hw_params-when-DAIs-.patch @@ -1,8 +1,8 @@ -From e6e96efdd436fa1a59572e2721849344b82dabc2 Mon Sep 17 00:00:00 2001 +From 66096bfd05e0316c7838c30bba12410413cbdad3 Mon Sep 17 00:00:00 2001 From: Troy Mitchell Date: Thu, 7 May 2026 18:31:43 +0800 -Subject: [PATCH 170/269] FROMLIST: ASoC: soc-pcm: constrain hw_params when - DAIs share the same BCLK +Subject: [RUYI PATCH] FROMLIST: ASoC: soc-pcm: constrain hw_params when DAIs + share the same BCLK When multiple CPU DAIs on the same sound card share the same physical BCLK, add a hw_rule during PCM open that constrains the sample rate so diff --git a/SPECS/linux/0171-FROMLIST-ASoC-spacemit-declare-shared-BCLK-for-cross.patch b/SPECS/linux/0170-FROMLIST-ASoC-spacemit-declare-shared-BCLK-for-cross.patch similarity index 88% rename from SPECS/linux/0171-FROMLIST-ASoC-spacemit-declare-shared-BCLK-for-cross.patch rename to SPECS/linux/0170-FROMLIST-ASoC-spacemit-declare-shared-BCLK-for-cross.patch index 941b463690..8d17b9576d 100644 --- a/SPECS/linux/0171-FROMLIST-ASoC-spacemit-declare-shared-BCLK-for-cross.patch +++ b/SPECS/linux/0170-FROMLIST-ASoC-spacemit-declare-shared-BCLK-for-cross.patch @@ -1,7 +1,7 @@ -From b7ed2c30e3a5e372ad354bd57dbc0b83a25dba54 Mon Sep 17 00:00:00 2001 +From 23652a508a6fbb1f987b179bb7d2426487ef2c05 Mon Sep 17 00:00:00 2001 From: Troy Mitchell Date: Thu, 7 May 2026 18:31:44 +0800 -Subject: [PATCH 171/269] FROMLIST: ASoC: spacemit: declare shared BCLK for +Subject: [RUYI PATCH] FROMLIST: ASoC: spacemit: declare shared BCLK for cross-DAI rate constraint On SpacemiT K3, multiple I2S controllers share the same physical BCLK diff --git a/SPECS/linux/0172-FROMLIST-spi-spacemit-add-u64-cast-to-NSEC_PER_SEC-t.patch b/SPECS/linux/0171-FROMLIST-spi-spacemit-add-u64-cast-to-NSEC_PER_SEC-t.patch similarity index 90% rename from SPECS/linux/0172-FROMLIST-spi-spacemit-add-u64-cast-to-NSEC_PER_SEC-t.patch rename to SPECS/linux/0171-FROMLIST-spi-spacemit-add-u64-cast-to-NSEC_PER_SEC-t.patch index 7a08281e0b..e4230da117 100644 --- a/SPECS/linux/0172-FROMLIST-spi-spacemit-add-u64-cast-to-NSEC_PER_SEC-t.patch +++ b/SPECS/linux/0171-FROMLIST-spi-spacemit-add-u64-cast-to-NSEC_PER_SEC-t.patch @@ -1,8 +1,8 @@ -From 21ce5b152db764c417d765d7cee20c8c2d1b5361 Mon Sep 17 00:00:00 2001 +From d68e168e3794a58f2b7152664616c8a5cdd81dc9 Mon Sep 17 00:00:00 2001 From: Guodong Xu Date: Tue, 5 May 2026 09:53:34 -0400 -Subject: [PATCH 172/269] FROMLIST: spi: spacemit: add u64 cast to NSEC_PER_SEC - to avoid 32-bit overflow +Subject: [RUYI PATCH] FROMLIST: spi: spacemit: add u64 cast to NSEC_PER_SEC to + avoid 32-bit overflow NSEC_PER_SEC expands to the long constant 1000000000L, so NSEC_PER_SEC * BITS_PER_BYTE (8 * 10^9) overflows on 32-bit-long architectures diff --git a/SPECS/linux/0173-FROMLIST-dt-bindings-clock-thead-add-TH1520-MISC-sub.patch b/SPECS/linux/0172-FROMLIST-dt-bindings-clock-thead-add-TH1520-MISC-sub.patch similarity index 94% rename from SPECS/linux/0173-FROMLIST-dt-bindings-clock-thead-add-TH1520-MISC-sub.patch rename to SPECS/linux/0172-FROMLIST-dt-bindings-clock-thead-add-TH1520-MISC-sub.patch index 297de179be..c33a14fce2 100644 --- a/SPECS/linux/0173-FROMLIST-dt-bindings-clock-thead-add-TH1520-MISC-sub.patch +++ b/SPECS/linux/0172-FROMLIST-dt-bindings-clock-thead-add-TH1520-MISC-sub.patch @@ -1,7 +1,7 @@ -From 9f5261ef8101423c2511ae1382c0eabd1c404d35 Mon Sep 17 00:00:00 2001 +From 6e1d2e49773e175bd613d1f1e0440e76432144f0 Mon Sep 17 00:00:00 2001 From: Icenowy Zheng Date: Thu, 7 May 2026 16:16:59 +0800 -Subject: [PATCH 173/269] FROMLIST: dt-bindings: clock: thead: add TH1520 MISC +Subject: [RUYI PATCH] FROMLIST: dt-bindings: clock: thead: add TH1520 MISC subsys clock controller TH1520 has a subsystem clock controller called MISC_SUBSYS in its diff --git a/SPECS/linux/0174-FROMLIST-clk-thead-th1520-ap-add-support-for-MISC-su.patch b/SPECS/linux/0173-FROMLIST-clk-thead-th1520-ap-add-support-for-MISC-su.patch similarity index 96% rename from SPECS/linux/0174-FROMLIST-clk-thead-th1520-ap-add-support-for-MISC-su.patch rename to SPECS/linux/0173-FROMLIST-clk-thead-th1520-ap-add-support-for-MISC-su.patch index 0ad2aa214c..8f3d31999b 100644 --- a/SPECS/linux/0174-FROMLIST-clk-thead-th1520-ap-add-support-for-MISC-su.patch +++ b/SPECS/linux/0173-FROMLIST-clk-thead-th1520-ap-add-support-for-MISC-su.patch @@ -1,7 +1,7 @@ -From 42a7744b7b5a08ac30d50468811909e076f5a212 Mon Sep 17 00:00:00 2001 +From 5e228b661c56cbb53366dd07a949a977bbe6c2a2 Mon Sep 17 00:00:00 2001 From: Icenowy Zheng Date: Thu, 7 May 2026 16:17:00 +0800 -Subject: [PATCH 174/269] FROMLIST: clk: thead: th1520-ap: add support for MISC +Subject: [RUYI PATCH] FROMLIST: clk: thead: th1520-ap: add support for MISC subsys clocks The TH1520 SoC contains a MISC_SUBSYS clock controller, which allows diff --git a/SPECS/linux/0175-FROMLIST-riscv-dts-thead-add-device-tree-node-for-MI.patch b/SPECS/linux/0174-FROMLIST-riscv-dts-thead-add-device-tree-node-for-MI.patch similarity index 94% rename from SPECS/linux/0175-FROMLIST-riscv-dts-thead-add-device-tree-node-for-MI.patch rename to SPECS/linux/0174-FROMLIST-riscv-dts-thead-add-device-tree-node-for-MI.patch index 740d8b2462..8fdc644c33 100644 --- a/SPECS/linux/0175-FROMLIST-riscv-dts-thead-add-device-tree-node-for-MI.patch +++ b/SPECS/linux/0174-FROMLIST-riscv-dts-thead-add-device-tree-node-for-MI.patch @@ -1,7 +1,7 @@ -From 6d8edd783e0a7d8e0fffc9f59afdf9aca52cef62 Mon Sep 17 00:00:00 2001 +From 778f859c641c76dc18d95224b4a57b9bbdbcc08b Mon Sep 17 00:00:00 2001 From: Icenowy Zheng Date: Thu, 7 May 2026 16:17:01 +0800 -Subject: [PATCH 175/269] FROMLIST: riscv: dts: thead: add device tree node for +Subject: [RUYI PATCH] FROMLIST: riscv: dts: thead: add device tree node for MISC clock controller The MISC_SUBSYS clock controller on TH1520 SoC is a clock controller diff --git a/SPECS/linux/0176-FROMLIST-dt-bindings-phy-add-binding-for-T-Head-TH15.patch b/SPECS/linux/0175-FROMLIST-dt-bindings-phy-add-binding-for-T-Head-TH15.patch similarity index 94% rename from SPECS/linux/0176-FROMLIST-dt-bindings-phy-add-binding-for-T-Head-TH15.patch rename to SPECS/linux/0175-FROMLIST-dt-bindings-phy-add-binding-for-T-Head-TH15.patch index 8baf862c7f..b5ec17729f 100644 --- a/SPECS/linux/0176-FROMLIST-dt-bindings-phy-add-binding-for-T-Head-TH15.patch +++ b/SPECS/linux/0175-FROMLIST-dt-bindings-phy-add-binding-for-T-Head-TH15.patch @@ -1,7 +1,7 @@ -From 6fcf319c3fa563b388bd5ed30e8d105d09ad9fcf Mon Sep 17 00:00:00 2001 +From 8620cc18faf9431ecca7af32d3d19d04aeb36358 Mon Sep 17 00:00:00 2001 From: Icenowy Zheng Date: Thu, 7 May 2026 16:17:02 +0800 -Subject: [PATCH 176/269] FROMLIST: dt-bindings: phy: add binding for T-Head +Subject: [RUYI PATCH] FROMLIST: dt-bindings: phy: add binding for T-Head TH1520 USB PHY The TH1520 SoC features a Synopsys USB 3.0 FemtoPHY with some custom diff --git a/SPECS/linux/0177-FROMLIST-phy-add-a-driver-for-T-Head-TH1520-USB-PHY.patch b/SPECS/linux/0176-FROMLIST-phy-add-a-driver-for-T-Head-TH1520-USB-PHY.patch similarity index 98% rename from SPECS/linux/0177-FROMLIST-phy-add-a-driver-for-T-Head-TH1520-USB-PHY.patch rename to SPECS/linux/0176-FROMLIST-phy-add-a-driver-for-T-Head-TH1520-USB-PHY.patch index d1ac0ab273..d0c6b0f877 100644 --- a/SPECS/linux/0177-FROMLIST-phy-add-a-driver-for-T-Head-TH1520-USB-PHY.patch +++ b/SPECS/linux/0176-FROMLIST-phy-add-a-driver-for-T-Head-TH1520-USB-PHY.patch @@ -1,7 +1,7 @@ -From 8dfb3f35a8fe62724dfade3c5f458c94951ffb21 Mon Sep 17 00:00:00 2001 +From 2235071fae0b39e9cecef57fcbe3435aaa4fbaa7 Mon Sep 17 00:00:00 2001 From: Icenowy Zheng Date: Thu, 7 May 2026 16:17:03 +0800 -Subject: [PATCH 177/269] FROMLIST: phy: add a driver for T-Head TH1520 USB PHY +Subject: [RUYI PATCH] FROMLIST: phy: add a driver for T-Head TH1520 USB PHY The USB PHY on T-Head TH1520 SoC is a Synopsys USB 3.0 FemtoPHY, with some PHY parameters exported as another system controller along with it. diff --git a/SPECS/linux/0178-FROMLIST-riscv-dts-thead-add-device-nodes-for-USB.patch b/SPECS/linux/0177-FROMLIST-riscv-dts-thead-add-device-nodes-for-USB.patch similarity index 93% rename from SPECS/linux/0178-FROMLIST-riscv-dts-thead-add-device-nodes-for-USB.patch rename to SPECS/linux/0177-FROMLIST-riscv-dts-thead-add-device-nodes-for-USB.patch index 51cec06625..c14c946574 100644 --- a/SPECS/linux/0178-FROMLIST-riscv-dts-thead-add-device-nodes-for-USB.patch +++ b/SPECS/linux/0177-FROMLIST-riscv-dts-thead-add-device-nodes-for-USB.patch @@ -1,7 +1,7 @@ -From 2b1c32d8eb39d09e3079eff6a81db2741d53f699 Mon Sep 17 00:00:00 2001 +From adb387aac2d84509b474f9a538aaf8564db53c48 Mon Sep 17 00:00:00 2001 From: Icenowy Zheng Date: Thu, 7 May 2026 16:17:04 +0800 -Subject: [PATCH 178/269] FROMLIST: riscv: dts: thead: add device nodes for USB +Subject: [RUYI PATCH] FROMLIST: riscv: dts: thead: add device nodes for USB The TH1520 SoC contains a Synopsys DesignWare Cores SuperSpeed USB3.0 Dual Role Device controller in addition to a USB2+USB3 combo PHY based diff --git a/SPECS/linux/0179-FROMLIST-dt-bindings-gpio-dwapb-allow-GPIO-hogs.patch b/SPECS/linux/0178-FROMLIST-dt-bindings-gpio-dwapb-allow-GPIO-hogs.patch similarity index 90% rename from SPECS/linux/0179-FROMLIST-dt-bindings-gpio-dwapb-allow-GPIO-hogs.patch rename to SPECS/linux/0178-FROMLIST-dt-bindings-gpio-dwapb-allow-GPIO-hogs.patch index 42cca6cc78..817f70b272 100644 --- a/SPECS/linux/0179-FROMLIST-dt-bindings-gpio-dwapb-allow-GPIO-hogs.patch +++ b/SPECS/linux/0178-FROMLIST-dt-bindings-gpio-dwapb-allow-GPIO-hogs.patch @@ -1,7 +1,7 @@ -From 8d5b44b9e1e20e8c11a156cf05f4eebc2353ad11 Mon Sep 17 00:00:00 2001 +From cef20c021cd1981f24a02368ab1150f185f2350d Mon Sep 17 00:00:00 2001 From: Icenowy Zheng Date: Thu, 7 May 2026 16:17:05 +0800 -Subject: [PATCH 179/269] FROMLIST: dt-bindings: gpio: dwapb: allow GPIO hogs +Subject: [RUYI PATCH] FROMLIST: dt-bindings: gpio: dwapb: allow GPIO hogs GPIO hogs are described in the gpio.txt binding as automatic default GPIO configuration items. diff --git a/SPECS/linux/0180-FROMLIST-dt-bindings-usb-vialab-vl817-allow-ports-pr.patch b/SPECS/linux/0179-FROMLIST-dt-bindings-usb-vialab-vl817-allow-ports-pr.patch similarity index 91% rename from SPECS/linux/0180-FROMLIST-dt-bindings-usb-vialab-vl817-allow-ports-pr.patch rename to SPECS/linux/0179-FROMLIST-dt-bindings-usb-vialab-vl817-allow-ports-pr.patch index 22bd8dd71b..afe5007550 100644 --- a/SPECS/linux/0180-FROMLIST-dt-bindings-usb-vialab-vl817-allow-ports-pr.patch +++ b/SPECS/linux/0179-FROMLIST-dt-bindings-usb-vialab-vl817-allow-ports-pr.patch @@ -1,7 +1,7 @@ -From f6873f8ca0bd852d3067add9fd953473f73c2de1 Mon Sep 17 00:00:00 2001 +From 0a04aab4ab49a84e24d260494d417c46aa61c5dc Mon Sep 17 00:00:00 2001 From: Icenowy Zheng Date: Thu, 7 May 2026 16:17:06 +0800 -Subject: [PATCH 180/269] FROMLIST: dt-bindings: usb: vialab,vl817: allow ports +Subject: [RUYI PATCH] FROMLIST: dt-bindings: usb: vialab,vl817: allow ports property As a USB hub device, VL817 can surely be connected to external USB diff --git a/SPECS/linux/0181-FROMLIST-riscv-dts-thead-lpi4a-sort-nodes.patch b/SPECS/linux/0180-FROMLIST-riscv-dts-thead-lpi4a-sort-nodes.patch similarity index 91% rename from SPECS/linux/0181-FROMLIST-riscv-dts-thead-lpi4a-sort-nodes.patch rename to SPECS/linux/0180-FROMLIST-riscv-dts-thead-lpi4a-sort-nodes.patch index 7146f8ade4..1b39142a86 100644 --- a/SPECS/linux/0181-FROMLIST-riscv-dts-thead-lpi4a-sort-nodes.patch +++ b/SPECS/linux/0180-FROMLIST-riscv-dts-thead-lpi4a-sort-nodes.patch @@ -1,7 +1,7 @@ -From dc3c3a6909f7928d49cdab3d3bdb993d2479b115 Mon Sep 17 00:00:00 2001 +From 4fbacbaa261eb5d38e67abce3e1befcc95b5e2d9 Mon Sep 17 00:00:00 2001 From: Icenowy Zheng Date: Thu, 7 May 2026 16:17:07 +0800 -Subject: [PATCH 181/269] FROMLIST: riscv: dts: thead: lpi4a: sort nodes +Subject: [RUYI PATCH] FROMLIST: riscv: dts: thead: lpi4a: sort nodes Although "D" and "H" are earlier in the alphabet than "P", the DPU and HDMI nodes were added after PADCTRL node in the Lichee Pi 4A device tree. diff --git a/SPECS/linux/0182-FROMLIST-riscv-dts-thead-Add-TH1520-I2C-nodes.patch b/SPECS/linux/0181-FROMLIST-riscv-dts-thead-Add-TH1520-I2C-nodes.patch similarity index 95% rename from SPECS/linux/0182-FROMLIST-riscv-dts-thead-Add-TH1520-I2C-nodes.patch rename to SPECS/linux/0181-FROMLIST-riscv-dts-thead-Add-TH1520-I2C-nodes.patch index 0ff8c75983..598fdf7c83 100644 --- a/SPECS/linux/0182-FROMLIST-riscv-dts-thead-Add-TH1520-I2C-nodes.patch +++ b/SPECS/linux/0181-FROMLIST-riscv-dts-thead-Add-TH1520-I2C-nodes.patch @@ -1,7 +1,7 @@ -From c7a47dd3521c7febaa5ede78663f085807685032 Mon Sep 17 00:00:00 2001 +From cafa4873834e652c5a0d0c10d04b073018eb693e Mon Sep 17 00:00:00 2001 From: Thomas Bonnefille Date: Thu, 7 May 2026 16:17:08 +0800 -Subject: [PATCH 182/269] FROMLIST: riscv: dts: thead: Add TH1520 I2C nodes +Subject: [RUYI PATCH] FROMLIST: riscv: dts: thead: Add TH1520 I2C nodes Add nodes for the six I2C on the T-Head TH1520 RISCV SoC. diff --git a/SPECS/linux/0183-FROMLIST-riscv-dts-thead-Add-Lichee-Pi-4A-IO-expansi.patch b/SPECS/linux/0182-FROMLIST-riscv-dts-thead-Add-Lichee-Pi-4A-IO-expansi.patch similarity index 96% rename from SPECS/linux/0183-FROMLIST-riscv-dts-thead-Add-Lichee-Pi-4A-IO-expansi.patch rename to SPECS/linux/0182-FROMLIST-riscv-dts-thead-Add-Lichee-Pi-4A-IO-expansi.patch index 34135c4498..be6a55fdc9 100644 --- a/SPECS/linux/0183-FROMLIST-riscv-dts-thead-Add-Lichee-Pi-4A-IO-expansi.patch +++ b/SPECS/linux/0182-FROMLIST-riscv-dts-thead-Add-Lichee-Pi-4A-IO-expansi.patch @@ -1,7 +1,7 @@ -From 0e52d852a2853088113fbb11979bc851ee0f8a6b Mon Sep 17 00:00:00 2001 +From 832edb826bfc6ad14779e6747d859479b5e59f0d Mon Sep 17 00:00:00 2001 From: Emil Renner Berthing Date: Thu, 7 May 2026 16:17:09 +0800 -Subject: [PATCH 183/269] FROMLIST: riscv: dts: thead: Add Lichee Pi 4A IO +Subject: [RUYI PATCH] FROMLIST: riscv: dts: thead: Add Lichee Pi 4A IO expansions Lichee Pi 4A has 3 I2C IO expansion chips onboard, connected to the diff --git a/SPECS/linux/0184-FROMLIST-riscv-dts-thead-enable-USB3-ports-on-Lichee.patch b/SPECS/linux/0183-FROMLIST-riscv-dts-thead-enable-USB3-ports-on-Lichee.patch similarity index 97% rename from SPECS/linux/0184-FROMLIST-riscv-dts-thead-enable-USB3-ports-on-Lichee.patch rename to SPECS/linux/0183-FROMLIST-riscv-dts-thead-enable-USB3-ports-on-Lichee.patch index 5714a613dd..2e34019ffe 100644 --- a/SPECS/linux/0184-FROMLIST-riscv-dts-thead-enable-USB3-ports-on-Lichee.patch +++ b/SPECS/linux/0183-FROMLIST-riscv-dts-thead-enable-USB3-ports-on-Lichee.patch @@ -1,8 +1,8 @@ -From 58e325861135f55c3f4ebd4ff1736e24ce4cab23 Mon Sep 17 00:00:00 2001 +From d3badbf1b23048af57179cfcec360e6ef0cf7dd6 Mon Sep 17 00:00:00 2001 From: Icenowy Zheng Date: Thu, 7 May 2026 16:17:10 +0800 -Subject: [PATCH 184/269] FROMLIST: riscv: dts: thead: enable USB3 ports on - Lichee Pi 4A +Subject: [RUYI PATCH] FROMLIST: riscv: dts: thead: enable USB3 ports on Lichee + Pi 4A The Lichee Pi 4A board features an onboard VIA VL817 hub connected to the SoC's USB3 as upstream and 4 USB-3.0-capable Type-A ports as diff --git a/SPECS/linux/0185-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-add-PMIC-a.patch b/SPECS/linux/0184-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-add-PMIC-a.patch similarity index 96% rename from SPECS/linux/0185-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-add-PMIC-a.patch rename to SPECS/linux/0184-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-add-PMIC-a.patch index 3453b93aff..17eee76dbc 100644 --- a/SPECS/linux/0185-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-add-PMIC-a.patch +++ b/SPECS/linux/0184-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-add-PMIC-a.patch @@ -1,8 +1,8 @@ -From d7abfc2f279a779aef9008818f768a37ea7165f8 Mon Sep 17 00:00:00 2001 +From f91c86761a676a6def0062c510b6f899f130594d Mon Sep 17 00:00:00 2001 From: Andre Heider Date: Mon, 11 May 2026 13:11:08 +0200 -Subject: [PATCH 185/269] FROMLIST: riscv: dts: spacemit: k1-musepi-pro: add - PMIC and power infrastructure +Subject: [RUYI PATCH] FROMLIST: riscv: dts: spacemit: k1-musepi-pro: add PMIC + and power infrastructure Enable i2c8 and add the connected SpacemiT P1 PMIC with its related regulators for the board's power infrastructure and voltage regulation support. diff --git a/SPECS/linux/0186-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-add-24c04-.patch b/SPECS/linux/0185-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-add-24c04-.patch similarity index 93% rename from SPECS/linux/0186-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-add-24c04-.patch rename to SPECS/linux/0185-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-add-24c04-.patch index a6d86d0898..d8bfd3b274 100644 --- a/SPECS/linux/0186-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-add-24c04-.patch +++ b/SPECS/linux/0185-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-add-24c04-.patch @@ -1,8 +1,8 @@ -From 995f8dadb985b9e2b9f46f811c8da53f6417c3dd Mon Sep 17 00:00:00 2001 +From 12a8cc9f5246bcadbedac2fc1996bad23c7d8aad Mon Sep 17 00:00:00 2001 From: Andre Heider Date: Mon, 11 May 2026 13:11:09 +0200 -Subject: [PATCH 186/269] FROMLIST: riscv: dts: spacemit: k1-musepi-pro: add - 24c04 eeprom +Subject: [RUYI PATCH] FROMLIST: riscv: dts: spacemit: k1-musepi-pro: add 24c04 + eeprom Enable i2c2 and add the connected 24c04 EEPROM. diff --git a/SPECS/linux/0187-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-enable-QSP.patch b/SPECS/linux/0186-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-enable-QSP.patch similarity index 93% rename from SPECS/linux/0187-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-enable-QSP.patch rename to SPECS/linux/0186-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-enable-QSP.patch index 8f9eb11fd8..173fae484b 100644 --- a/SPECS/linux/0187-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-enable-QSP.patch +++ b/SPECS/linux/0186-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-enable-QSP.patch @@ -1,7 +1,7 @@ -From 45cce5c72228a0d7f4bd2cbec2e1c727b0a54156 Mon Sep 17 00:00:00 2001 +From f0f8b9aeeaae60885412298ddbb582e104d70779 Mon Sep 17 00:00:00 2001 From: Andre Heider Date: Mon, 11 May 2026 13:11:10 +0200 -Subject: [PATCH 187/269] FROMLIST: riscv: dts: spacemit: k1-musepi-pro: enable +Subject: [RUYI PATCH] FROMLIST: riscv: dts: spacemit: k1-musepi-pro: enable QSPI and add SPI NOR Add the QSPI controller node and describe the attached SPI NOR flash diff --git a/SPECS/linux/0188-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-enable-USB.patch b/SPECS/linux/0187-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-enable-USB.patch similarity index 94% rename from SPECS/linux/0188-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-enable-USB.patch rename to SPECS/linux/0187-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-enable-USB.patch index 86e883eaa8..fcb615cf16 100644 --- a/SPECS/linux/0188-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-enable-USB.patch +++ b/SPECS/linux/0187-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-enable-USB.patch @@ -1,7 +1,7 @@ -From d4a6e3d29be27afe5a7e2e108fb4589c09cc706c Mon Sep 17 00:00:00 2001 +From 2358a06c27c3563427c49c2fe6795489a92ac5fe Mon Sep 17 00:00:00 2001 From: Andre Heider Date: Mon, 11 May 2026 13:11:11 +0200 -Subject: [PATCH 188/269] FROMLIST: riscv: dts: spacemit: k1-musepi-pro: enable +Subject: [RUYI PATCH] FROMLIST: riscv: dts: spacemit: k1-musepi-pro: enable USB 3 ports Enable the DWC3 USB 3.0 controller, its associated combo_phy (USB 3 PHY) diff --git a/SPECS/linux/0189-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-enable-PCI.patch b/SPECS/linux/0188-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-enable-PCI.patch similarity index 93% rename from SPECS/linux/0189-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-enable-PCI.patch rename to SPECS/linux/0188-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-enable-PCI.patch index f91edb97ae..6d04857fce 100644 --- a/SPECS/linux/0189-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-enable-PCI.patch +++ b/SPECS/linux/0188-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-enable-PCI.patch @@ -1,7 +1,7 @@ -From 92f38746463cee8bf5ce9e0865395cc42916f4b8 Mon Sep 17 00:00:00 2001 +From abcae120491875c48ac27e34bc7e44032f98aa74 Mon Sep 17 00:00:00 2001 From: Andre Heider Date: Mon, 11 May 2026 13:11:12 +0200 -Subject: [PATCH 189/269] FROMLIST: riscv: dts: spacemit: k1-musepi-pro: enable +Subject: [RUYI PATCH] FROMLIST: riscv: dts: spacemit: k1-musepi-pro: enable PCIe ports Enable the two PCIe controller along with and their associated PHYs. They diff --git a/SPECS/linux/0190-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-set-defaul.patch b/SPECS/linux/0189-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-set-defaul.patch similarity index 86% rename from SPECS/linux/0190-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-set-defaul.patch rename to SPECS/linux/0189-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-set-defaul.patch index f09e4da77c..4afd6fc002 100644 --- a/SPECS/linux/0190-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-set-defaul.patch +++ b/SPECS/linux/0189-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-set-defaul.patch @@ -1,7 +1,7 @@ -From a6d24b6871f64be6ccd4cf9faadd5ce285d1fe89 Mon Sep 17 00:00:00 2001 +From 9d245b851f25f33e7aeedcca69e79dcc99eca382 Mon Sep 17 00:00:00 2001 From: Andre Heider Date: Mon, 11 May 2026 13:11:13 +0200 -Subject: [PATCH 190/269] FROMLIST: riscv: dts: spacemit: k1-musepi-pro: set +Subject: [RUYI PATCH] FROMLIST: riscv: dts: spacemit: k1-musepi-pro: set default console baud rate Allow serial output with the same uboot/opensbi settings so the diff --git a/SPECS/linux/0191-FROMLIST-riscv-dts-spacemit-k3-Add-pwm-support.patch b/SPECS/linux/0190-FROMLIST-riscv-dts-spacemit-k3-Add-pwm-support.patch similarity index 99% rename from SPECS/linux/0191-FROMLIST-riscv-dts-spacemit-k3-Add-pwm-support.patch rename to SPECS/linux/0190-FROMLIST-riscv-dts-spacemit-k3-Add-pwm-support.patch index c675ba835a..68f84796b6 100644 --- a/SPECS/linux/0191-FROMLIST-riscv-dts-spacemit-k3-Add-pwm-support.patch +++ b/SPECS/linux/0190-FROMLIST-riscv-dts-spacemit-k3-Add-pwm-support.patch @@ -1,7 +1,7 @@ -From 7b577c9368e036c3b216da7cc99ea8d358d245af Mon Sep 17 00:00:00 2001 +From ad5777851494c5ce59eea0ddbebec62813ed07b0 Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Thu, 21 May 2026 00:24:41 +0000 -Subject: [PATCH 191/269] FROMLIST: riscv: dts: spacemit: k3: Add pwm support +Subject: [RUYI PATCH] FROMLIST: riscv: dts: spacemit: k3: Add pwm support Populate all pwm device tree nodes for SpacemiT K3 SoC, also documents the pinctrl info which would easily help to enable them in future. diff --git a/SPECS/linux/0192-FROMLIST-riscv-use-sysfs_emit-in-cpu_show_ghostwrite.patch b/SPECS/linux/0191-FROMLIST-riscv-use-sysfs_emit-in-cpu_show_ghostwrite.patch similarity index 92% rename from SPECS/linux/0192-FROMLIST-riscv-use-sysfs_emit-in-cpu_show_ghostwrite.patch rename to SPECS/linux/0191-FROMLIST-riscv-use-sysfs_emit-in-cpu_show_ghostwrite.patch index 481e2735ae..7ac9015ac8 100644 --- a/SPECS/linux/0192-FROMLIST-riscv-use-sysfs_emit-in-cpu_show_ghostwrite.patch +++ b/SPECS/linux/0191-FROMLIST-riscv-use-sysfs_emit-in-cpu_show_ghostwrite.patch @@ -1,8 +1,7 @@ -From bbc7a70aa1948aca2a192478199bbf79ef230f71 Mon Sep 17 00:00:00 2001 +From a773430e58defdd7194bab2ab807bfb82c0c559f Mon Sep 17 00:00:00 2001 From: Thorsten Blum Date: Sun, 10 May 2026 18:54:21 +0200 -Subject: [PATCH 192/269] FROMLIST: riscv: use sysfs_emit in - cpu_show_ghostwrite +Subject: [RUYI PATCH] FROMLIST: riscv: use sysfs_emit in cpu_show_ghostwrite Replace sprintf() with sysfs_emit() in cpu_show_ghostwrite(), which is preferred for formatting sysfs output because it provides safer bounds diff --git a/SPECS/linux/0193-FROMLIST-clk-spacemit-k3-Switch-to-pll2_d6-as-parent.patch b/SPECS/linux/0192-FROMLIST-clk-spacemit-k3-Switch-to-pll2_d6-as-parent.patch similarity index 94% rename from SPECS/linux/0193-FROMLIST-clk-spacemit-k3-Switch-to-pll2_d6-as-parent.patch rename to SPECS/linux/0192-FROMLIST-clk-spacemit-k3-Switch-to-pll2_d6-as-parent.patch index 4bb975bf93..04ed2e0b9c 100644 --- a/SPECS/linux/0193-FROMLIST-clk-spacemit-k3-Switch-to-pll2_d6-as-parent.patch +++ b/SPECS/linux/0192-FROMLIST-clk-spacemit-k3-Switch-to-pll2_d6-as-parent.patch @@ -1,8 +1,8 @@ -From d6d6ac90557ca0f05b488e7b1611d103d382da16 Mon Sep 17 00:00:00 2001 +From 44f4371399644fae2ccd90247b656bb6cc6fc81b Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Mon, 11 May 2026 02:59:09 +0000 -Subject: [PATCH 193/269] FROMLIST: clk: spacemit: k3: Switch to pll2_d6 as - parent for PCIe clock +Subject: [RUYI PATCH] FROMLIST: clk: spacemit: k3: Switch to pll2_d6 as parent + for PCIe clock According to SpacemiT updated docs, the PCIe master and slave clock's parent is the pll2_d6 clock, so fix it. diff --git a/SPECS/linux/0194-FROMLIST-clk-spacemit-k3-Fix-PCIe-clock-register-off.patch b/SPECS/linux/0193-FROMLIST-clk-spacemit-k3-Fix-PCIe-clock-register-off.patch similarity index 89% rename from SPECS/linux/0194-FROMLIST-clk-spacemit-k3-Fix-PCIe-clock-register-off.patch rename to SPECS/linux/0193-FROMLIST-clk-spacemit-k3-Fix-PCIe-clock-register-off.patch index 633f4c4a66..8179e0b767 100644 --- a/SPECS/linux/0194-FROMLIST-clk-spacemit-k3-Fix-PCIe-clock-register-off.patch +++ b/SPECS/linux/0193-FROMLIST-clk-spacemit-k3-Fix-PCIe-clock-register-off.patch @@ -1,7 +1,7 @@ -From 70b9b0ec24333ca936dc7801bd41a024638df5f1 Mon Sep 17 00:00:00 2001 +From bbe98d4268d3ea7a6409b6f5e7c3d4c623dae6e5 Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Mon, 11 May 2026 02:59:10 +0000 -Subject: [PATCH 194/269] FROMLIST: clk: spacemit: k3: Fix PCIe clock register +Subject: [RUYI PATCH] FROMLIST: clk: spacemit: k3: Fix PCIe clock register offset The offset of PCIe Clock CTRL register for port B and C controller was diff --git a/SPECS/linux/0195-FROMLIST-dt-bindings-soc-spacemit-k3-Add-PCIe-DBI-cl.patch b/SPECS/linux/0194-FROMLIST-dt-bindings-soc-spacemit-k3-Add-PCIe-DBI-cl.patch similarity index 87% rename from SPECS/linux/0195-FROMLIST-dt-bindings-soc-spacemit-k3-Add-PCIe-DBI-cl.patch rename to SPECS/linux/0194-FROMLIST-dt-bindings-soc-spacemit-k3-Add-PCIe-DBI-cl.patch index bac6ba44e2..7a11430d66 100644 --- a/SPECS/linux/0195-FROMLIST-dt-bindings-soc-spacemit-k3-Add-PCIe-DBI-cl.patch +++ b/SPECS/linux/0194-FROMLIST-dt-bindings-soc-spacemit-k3-Add-PCIe-DBI-cl.patch @@ -1,8 +1,8 @@ -From a3b545b4e292f534e6d6c9eb903da2ef36a22eb0 Mon Sep 17 00:00:00 2001 +From 019132af91999a1420a1c23e25749db9251e9670 Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Mon, 11 May 2026 02:59:11 +0000 -Subject: [PATCH 195/269] FROMLIST: dt-bindings: soc: spacemit: k3: Add PCIe - DBI clock IDs +Subject: [RUYI PATCH] FROMLIST: dt-bindings: soc: spacemit: k3: Add PCIe DBI + clock IDs Add clock IDs of PCIe DBI (Data Bus Interface) clock. diff --git a/SPECS/linux/0196-FROMLIST-clk-spacemit-k3-Add-PCIe-DBI-clock.patch b/SPECS/linux/0195-FROMLIST-clk-spacemit-k3-Add-PCIe-DBI-clock.patch similarity index 96% rename from SPECS/linux/0196-FROMLIST-clk-spacemit-k3-Add-PCIe-DBI-clock.patch rename to SPECS/linux/0195-FROMLIST-clk-spacemit-k3-Add-PCIe-DBI-clock.patch index aec843bdcd..8ac95ac323 100644 --- a/SPECS/linux/0196-FROMLIST-clk-spacemit-k3-Add-PCIe-DBI-clock.patch +++ b/SPECS/linux/0195-FROMLIST-clk-spacemit-k3-Add-PCIe-DBI-clock.patch @@ -1,7 +1,7 @@ -From f4322934df6fc56a1bea44fb085640ac14707bbf Mon Sep 17 00:00:00 2001 +From 4dede721f5c618685b4d73c90e1777282922b1c5 Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Mon, 11 May 2026 02:59:12 +0000 -Subject: [PATCH 196/269] FROMLIST: clk: spacemit: k3: Add PCIe DBI clock +Subject: [RUYI PATCH] FROMLIST: clk: spacemit: k3: Add PCIe DBI clock Add PCIe DBI (Data Bus Interface) clock which was missing, This will support PCIe driver to explicitly request and enable all clocks that diff --git a/SPECS/linux/0197-FROMLIST-riscv-dts-spacemit-enable-eMMC-for-OrangePi.patch b/SPECS/linux/0196-FROMLIST-riscv-dts-spacemit-enable-eMMC-for-OrangePi.patch similarity index 87% rename from SPECS/linux/0197-FROMLIST-riscv-dts-spacemit-enable-eMMC-for-OrangePi.patch rename to SPECS/linux/0196-FROMLIST-riscv-dts-spacemit-enable-eMMC-for-OrangePi.patch index 865af440be..37a358c998 100644 --- a/SPECS/linux/0197-FROMLIST-riscv-dts-spacemit-enable-eMMC-for-OrangePi.patch +++ b/SPECS/linux/0196-FROMLIST-riscv-dts-spacemit-enable-eMMC-for-OrangePi.patch @@ -1,8 +1,8 @@ -From 1220579655cb94a0b94e890b59774a9c0815568d Mon Sep 17 00:00:00 2001 +From 085a6662d8b51206c637a4888081191cf0993a6c Mon Sep 17 00:00:00 2001 From: Chukun Pan Date: Sat, 9 May 2026 18:00:00 +0800 -Subject: [PATCH 197/269] FROMLIST: riscv: dts: spacemit: enable eMMC for - OrangePi RV2 +Subject: [RUYI PATCH] FROMLIST: riscv: dts: spacemit: enable eMMC for OrangePi + RV2 The OrangePi RV2 board has one eMMC slot, so enable eMMC. Tested using a 16 GiB AJTD4R eMMC module. diff --git a/SPECS/linux/0198-FROMLIST-i2c-spacemit-configure-ILCR-IWCR-for-accura.patch b/SPECS/linux/0197-FROMLIST-i2c-spacemit-configure-ILCR-IWCR-for-accura.patch similarity index 98% rename from SPECS/linux/0198-FROMLIST-i2c-spacemit-configure-ILCR-IWCR-for-accura.patch rename to SPECS/linux/0197-FROMLIST-i2c-spacemit-configure-ILCR-IWCR-for-accura.patch index 3331f44d1d..858f8cfd6b 100644 --- a/SPECS/linux/0198-FROMLIST-i2c-spacemit-configure-ILCR-IWCR-for-accura.patch +++ b/SPECS/linux/0197-FROMLIST-i2c-spacemit-configure-ILCR-IWCR-for-accura.patch @@ -1,7 +1,7 @@ -From 1b181785b1c0a6e016879d81595128ee131433ea Mon Sep 17 00:00:00 2001 +From feb984c8595a2b43ffb1bb60afa09a83f18e83ed Mon Sep 17 00:00:00 2001 From: Troy Mitchell Date: Fri, 8 May 2026 15:25:24 +0800 -Subject: [PATCH 198/269] FROMLIST: i2c: spacemit: configure ILCR/IWCR for +Subject: [RUYI PATCH] FROMLIST: i2c: spacemit: configure ILCR/IWCR for accurate SCL frequency The SpacemiT I2C controller's SCL (Serial Clock Line) frequency for diff --git a/SPECS/linux/0199-FROMLIST-i2c-spacemit-drop-warning-when-clock-freque.patch b/SPECS/linux/0198-FROMLIST-i2c-spacemit-drop-warning-when-clock-freque.patch similarity index 93% rename from SPECS/linux/0199-FROMLIST-i2c-spacemit-drop-warning-when-clock-freque.patch rename to SPECS/linux/0198-FROMLIST-i2c-spacemit-drop-warning-when-clock-freque.patch index 60b5463b93..2c2c1857d5 100644 --- a/SPECS/linux/0199-FROMLIST-i2c-spacemit-drop-warning-when-clock-freque.patch +++ b/SPECS/linux/0198-FROMLIST-i2c-spacemit-drop-warning-when-clock-freque.patch @@ -1,7 +1,7 @@ -From b8c017440462cc188a5442037eaec7c798914775 Mon Sep 17 00:00:00 2001 +From c69aff2f94c47f9051ff3f2326ea0b61dccfc8e1 Mon Sep 17 00:00:00 2001 From: Troy Mitchell Date: Fri, 8 May 2026 15:25:25 +0800 -Subject: [PATCH 199/269] FROMLIST: i2c: spacemit: drop warning when +Subject: [RUYI PATCH] FROMLIST: i2c: spacemit: drop warning when clock-frequency property is absent The clock-frequency property is optional according to the DT binding. diff --git a/SPECS/linux/0200-FROMLIST-dt-bindings-mmc-spacemit-sdhci-add-pinctrl-.patch b/SPECS/linux/0199-FROMLIST-dt-bindings-mmc-spacemit-sdhci-add-pinctrl-.patch similarity index 91% rename from SPECS/linux/0200-FROMLIST-dt-bindings-mmc-spacemit-sdhci-add-pinctrl-.patch rename to SPECS/linux/0199-FROMLIST-dt-bindings-mmc-spacemit-sdhci-add-pinctrl-.patch index 00f1043680..a49d35520a 100644 --- a/SPECS/linux/0200-FROMLIST-dt-bindings-mmc-spacemit-sdhci-add-pinctrl-.patch +++ b/SPECS/linux/0199-FROMLIST-dt-bindings-mmc-spacemit-sdhci-add-pinctrl-.patch @@ -1,8 +1,8 @@ -From f78a8061bda3844f94a1eae5bb6521b25e7a0bd0 Mon Sep 17 00:00:00 2001 +From 0bf2f2078011bd701cd96e23b4365a9edf483605 Mon Sep 17 00:00:00 2001 From: Iker Pedrosa Date: Mon, 11 May 2026 10:53:56 +0200 -Subject: [PATCH 200/269] FROMLIST: dt-bindings: mmc: spacemit,sdhci: add - pinctrl support for voltage switching +Subject: [RUYI PATCH] FROMLIST: dt-bindings: mmc: spacemit,sdhci: add pinctrl + support for voltage switching Document pinctrl properties to support voltage-dependent pin configuration switching for UHS-I SD card modes. diff --git a/SPECS/linux/0201-FROMLIST-mmc-sdhci-of-k1-enable-essential-clock-infr.patch b/SPECS/linux/0200-FROMLIST-mmc-sdhci-of-k1-enable-essential-clock-infr.patch similarity index 94% rename from SPECS/linux/0201-FROMLIST-mmc-sdhci-of-k1-enable-essential-clock-infr.patch rename to SPECS/linux/0200-FROMLIST-mmc-sdhci-of-k1-enable-essential-clock-infr.patch index befba09c8a..3d862cc4bf 100644 --- a/SPECS/linux/0201-FROMLIST-mmc-sdhci-of-k1-enable-essential-clock-infr.patch +++ b/SPECS/linux/0200-FROMLIST-mmc-sdhci-of-k1-enable-essential-clock-infr.patch @@ -1,7 +1,7 @@ -From d543dce040ee8f89d24e66d00c34ae476a9ffa8b Mon Sep 17 00:00:00 2001 +From 8c4241419ff3d46df6431269b3f523b095a6fa7b Mon Sep 17 00:00:00 2001 From: Iker Pedrosa Date: Mon, 11 May 2026 10:53:57 +0200 -Subject: [PATCH 201/269] FROMLIST: mmc: sdhci-of-k1: enable essential clock +Subject: [RUYI PATCH] FROMLIST: mmc: sdhci-of-k1: enable essential clock infrastructure for SD operation Ensure SD card pins receive clock signals by enabling pad clock diff --git a/SPECS/linux/0202-FROMLIST-mmc-sdhci-of-k1-add-regulator-and-pinctrl-v.patch b/SPECS/linux/0201-FROMLIST-mmc-sdhci-of-k1-add-regulator-and-pinctrl-v.patch similarity index 96% rename from SPECS/linux/0202-FROMLIST-mmc-sdhci-of-k1-add-regulator-and-pinctrl-v.patch rename to SPECS/linux/0201-FROMLIST-mmc-sdhci-of-k1-add-regulator-and-pinctrl-v.patch index fb11073de1..81362419d5 100644 --- a/SPECS/linux/0202-FROMLIST-mmc-sdhci-of-k1-add-regulator-and-pinctrl-v.patch +++ b/SPECS/linux/0201-FROMLIST-mmc-sdhci-of-k1-add-regulator-and-pinctrl-v.patch @@ -1,7 +1,7 @@ -From 4e8659e6189f05da42274b2f8aaecb02d4dd4f96 Mon Sep 17 00:00:00 2001 +From 39fde1b63254ea21184494734c21d26a70f27b72 Mon Sep 17 00:00:00 2001 From: Iker Pedrosa Date: Mon, 11 May 2026 10:53:58 +0200 -Subject: [PATCH 202/269] FROMLIST: mmc: sdhci-of-k1: add regulator and pinctrl +Subject: [RUYI PATCH] FROMLIST: mmc: sdhci-of-k1: add regulator and pinctrl voltage switching support Add voltage switching infrastructure for UHS-I modes by integrating both diff --git a/SPECS/linux/0203-FROMLIST-mmc-sdhci-of-k1-add-comprehensive-SDR-tunin.patch b/SPECS/linux/0202-FROMLIST-mmc-sdhci-of-k1-add-comprehensive-SDR-tunin.patch similarity index 98% rename from SPECS/linux/0203-FROMLIST-mmc-sdhci-of-k1-add-comprehensive-SDR-tunin.patch rename to SPECS/linux/0202-FROMLIST-mmc-sdhci-of-k1-add-comprehensive-SDR-tunin.patch index 0c94367660..6646ffc1ec 100644 --- a/SPECS/linux/0203-FROMLIST-mmc-sdhci-of-k1-add-comprehensive-SDR-tunin.patch +++ b/SPECS/linux/0202-FROMLIST-mmc-sdhci-of-k1-add-comprehensive-SDR-tunin.patch @@ -1,8 +1,8 @@ -From 0ae178fac6f2e58e9f5710357bd259631f15fa7e Mon Sep 17 00:00:00 2001 +From 94dc78e875ba604207c250e239f0a6778fa9d74a Mon Sep 17 00:00:00 2001 From: Iker Pedrosa Date: Mon, 11 May 2026 10:53:59 +0200 -Subject: [PATCH 203/269] FROMLIST: mmc: sdhci-of-k1: add comprehensive SDR - tuning support +Subject: [RUYI PATCH] FROMLIST: mmc: sdhci-of-k1: add comprehensive SDR tuning + support MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit diff --git a/SPECS/linux/0204-FROMLIST-riscv-dts-spacemit-k1-add-SD-card-controlle.patch b/SPECS/linux/0203-FROMLIST-riscv-dts-spacemit-k1-add-SD-card-controlle.patch similarity index 96% rename from SPECS/linux/0204-FROMLIST-riscv-dts-spacemit-k1-add-SD-card-controlle.patch rename to SPECS/linux/0203-FROMLIST-riscv-dts-spacemit-k1-add-SD-card-controlle.patch index ca51dc676d..15598d191f 100644 --- a/SPECS/linux/0204-FROMLIST-riscv-dts-spacemit-k1-add-SD-card-controlle.patch +++ b/SPECS/linux/0203-FROMLIST-riscv-dts-spacemit-k1-add-SD-card-controlle.patch @@ -1,7 +1,7 @@ -From cd98b0f82ec00dbc4ce5fcaf71e78f1a53a5fc77 Mon Sep 17 00:00:00 2001 +From caad245a3c358af9443ce06c4d8ab79191b28709 Mon Sep 17 00:00:00 2001 From: Iker Pedrosa Date: Fri, 15 May 2026 12:48:59 +0200 -Subject: [PATCH 204/269] FROMLIST: riscv: dts: spacemit: k1: add SD card +Subject: [RUYI PATCH] FROMLIST: riscv: dts: spacemit: k1: add SD card controller and pinctrl support Add SD card controller infrastructure for SpacemiT K1 SoC with complete diff --git a/SPECS/linux/0205-FROMLIST-riscv-dts-spacemit-k1-orangepi-rv2-add-SD-c.patch b/SPECS/linux/0204-FROMLIST-riscv-dts-spacemit-k1-orangepi-rv2-add-SD-c.patch similarity index 92% rename from SPECS/linux/0205-FROMLIST-riscv-dts-spacemit-k1-orangepi-rv2-add-SD-c.patch rename to SPECS/linux/0204-FROMLIST-riscv-dts-spacemit-k1-orangepi-rv2-add-SD-c.patch index e8b49a8c9c..3535201c26 100644 --- a/SPECS/linux/0205-FROMLIST-riscv-dts-spacemit-k1-orangepi-rv2-add-SD-c.patch +++ b/SPECS/linux/0204-FROMLIST-riscv-dts-spacemit-k1-orangepi-rv2-add-SD-c.patch @@ -1,8 +1,8 @@ -From aface59b77b31d881dcc65adfb6e521b5c38604d Mon Sep 17 00:00:00 2001 +From f7cc846d57fe7d2e3a40125c103f110237c5c6bb Mon Sep 17 00:00:00 2001 From: Iker Pedrosa Date: Fri, 15 May 2026 12:49:00 +0200 -Subject: [PATCH 205/269] FROMLIST: riscv: dts: spacemit: k1-orangepi-rv2: add - SD card support with UHS modes +Subject: [RUYI PATCH] FROMLIST: riscv: dts: spacemit: k1-orangepi-rv2: add SD + card support with UHS modes Add complete SD card controller support with UHS high-speed modes. diff --git a/SPECS/linux/0206-FROMLIST-riscv-dts-spacemit-k1-bananapi-f3-add-SD-ca.patch b/SPECS/linux/0205-FROMLIST-riscv-dts-spacemit-k1-bananapi-f3-add-SD-ca.patch similarity index 93% rename from SPECS/linux/0206-FROMLIST-riscv-dts-spacemit-k1-bananapi-f3-add-SD-ca.patch rename to SPECS/linux/0205-FROMLIST-riscv-dts-spacemit-k1-bananapi-f3-add-SD-ca.patch index 373cef797d..64cdab51e8 100644 --- a/SPECS/linux/0206-FROMLIST-riscv-dts-spacemit-k1-bananapi-f3-add-SD-ca.patch +++ b/SPECS/linux/0205-FROMLIST-riscv-dts-spacemit-k1-bananapi-f3-add-SD-ca.patch @@ -1,8 +1,8 @@ -From 0a3b6f9ff4a910ed5cb31bb169d35abbda4f28c8 Mon Sep 17 00:00:00 2001 +From 37fe9b7f8a42515c66f664767b4a9c584340ea16 Mon Sep 17 00:00:00 2001 From: Iker Pedrosa Date: Fri, 15 May 2026 12:49:01 +0200 -Subject: [PATCH 206/269] FROMLIST: riscv: dts: spacemit: k1-bananapi-f3: add - SD card support with UHS modes +Subject: [RUYI PATCH] FROMLIST: riscv: dts: spacemit: k1-bananapi-f3: add SD + card support with UHS modes Add complete SD card controller support with UHS high-speed modes. diff --git a/SPECS/linux/0207-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-add-SD-car.patch b/SPECS/linux/0206-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-add-SD-car.patch similarity index 95% rename from SPECS/linux/0207-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-add-SD-car.patch rename to SPECS/linux/0206-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-add-SD-car.patch index 77381028df..c719fedcde 100644 --- a/SPECS/linux/0207-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-add-SD-car.patch +++ b/SPECS/linux/0206-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-add-SD-car.patch @@ -1,7 +1,7 @@ -From 87215d8ac4bdb3c68db95d70e7586e7eff4b304e Mon Sep 17 00:00:00 2001 +From eaefeed7d7ce8a2654aab69f1e84d5e767b38d83 Mon Sep 17 00:00:00 2001 From: Trevor Gamblin Date: Fri, 15 May 2026 12:49:02 +0200 -Subject: [PATCH 207/269] FROMLIST: riscv: dts: spacemit: k1-musepi-pro: add SD +Subject: [RUYI PATCH] FROMLIST: riscv: dts: spacemit: k1-musepi-pro: add SD card support with UHS modes Update the Muse Pi Pro devicetree with SD card support to match what diff --git a/SPECS/linux/0208-FROMLIST-riscv-dts-thead-Enable-wifi-on-the-BeagleV-.patch b/SPECS/linux/0207-FROMLIST-riscv-dts-thead-Enable-wifi-on-the-BeagleV-.patch similarity index 94% rename from SPECS/linux/0208-FROMLIST-riscv-dts-thead-Enable-wifi-on-the-BeagleV-.patch rename to SPECS/linux/0207-FROMLIST-riscv-dts-thead-Enable-wifi-on-the-BeagleV-.patch index 181b9c2bb9..783acaa1c8 100644 --- a/SPECS/linux/0208-FROMLIST-riscv-dts-thead-Enable-wifi-on-the-BeagleV-.patch +++ b/SPECS/linux/0207-FROMLIST-riscv-dts-thead-Enable-wifi-on-the-BeagleV-.patch @@ -1,7 +1,7 @@ -From 007d756f29c8ccb5746866f75acf9be79a24984a Mon Sep 17 00:00:00 2001 +From 678318a03d0cb8348eaa0490f1a93d6fffee90bf Mon Sep 17 00:00:00 2001 From: Thomas Gerner Date: Thu, 14 May 2026 20:32:01 +0200 -Subject: [PATCH 208/269] FROMLIST: riscv: dts: thead: Enable wifi on the +Subject: [RUYI PATCH] FROMLIST: riscv: dts: thead: Enable wifi on the BeagleV-Ahead The BeagleV-Ahead board uses an AP6203BM WiFi chip from AMPAK Technology diff --git a/SPECS/linux/0209-FROMLIST-riscv-module-Use-generic-cmp_int-instead-of.patch b/SPECS/linux/0208-FROMLIST-riscv-module-Use-generic-cmp_int-instead-of.patch similarity index 89% rename from SPECS/linux/0209-FROMLIST-riscv-module-Use-generic-cmp_int-instead-of.patch rename to SPECS/linux/0208-FROMLIST-riscv-module-Use-generic-cmp_int-instead-of.patch index 5c86e309ed..1f3cf3e18b 100644 --- a/SPECS/linux/0209-FROMLIST-riscv-module-Use-generic-cmp_int-instead-of.patch +++ b/SPECS/linux/0208-FROMLIST-riscv-module-Use-generic-cmp_int-instead-of.patch @@ -1,8 +1,8 @@ -From 3b0fcc9dcb7af84ad62bc1f7d7e16769c8389416 Mon Sep 17 00:00:00 2001 +From ed9ce6669c079d867ab5bb717a384142dadf4bdc Mon Sep 17 00:00:00 2001 From: Florian Schmaus Date: Tue, 12 May 2026 08:32:31 +0200 -Subject: [PATCH 209/269] FROMLIST: riscv: module: Use generic cmp_int() - instead of custom cmp_3way() +Subject: [RUYI PATCH] FROMLIST: riscv: module: Use generic cmp_int() instead + of custom cmp_3way() The module-sections.c file defines a custom cmp_3way() macro to perform 3-way comparisons during relocation sorting. diff --git a/SPECS/linux/0210-FROMLIST-iommu-riscv-Advertise-Svpbmt-support-to-gen.patch b/SPECS/linux/0209-FROMLIST-iommu-riscv-Advertise-Svpbmt-support-to-gen.patch similarity index 93% rename from SPECS/linux/0210-FROMLIST-iommu-riscv-Advertise-Svpbmt-support-to-gen.patch rename to SPECS/linux/0209-FROMLIST-iommu-riscv-Advertise-Svpbmt-support-to-gen.patch index 1f6d5aab49..160b86a4f9 100644 --- a/SPECS/linux/0210-FROMLIST-iommu-riscv-Advertise-Svpbmt-support-to-gen.patch +++ b/SPECS/linux/0209-FROMLIST-iommu-riscv-Advertise-Svpbmt-support-to-gen.patch @@ -1,7 +1,7 @@ -From 7d26b62732498fd8de555381d67c2a667be46c22 Mon Sep 17 00:00:00 2001 +From 0253b4ea6ea21dadd263134ea8198a6911aabc84 Mon Sep 17 00:00:00 2001 From: Fangyu Yu Date: Tue, 12 May 2026 15:41:41 +0800 -Subject: [PATCH 210/269] FROMLIST: iommu/riscv: Advertise Svpbmt support to +Subject: [RUYI PATCH] FROMLIST: iommu/riscv: Advertise Svpbmt support to generic page table The RISC-V IOMMU can optionally support Svpbmt page-based memory types diff --git a/SPECS/linux/0211-FROMLIST-iommupt-Encode-IOMMU_MMIO-IOMMU_CACHE-via-R.patch b/SPECS/linux/0210-FROMLIST-iommupt-Encode-IOMMU_MMIO-IOMMU_CACHE-via-R.patch similarity index 94% rename from SPECS/linux/0211-FROMLIST-iommupt-Encode-IOMMU_MMIO-IOMMU_CACHE-via-R.patch rename to SPECS/linux/0210-FROMLIST-iommupt-Encode-IOMMU_MMIO-IOMMU_CACHE-via-R.patch index 4084697a8e..474c4800d9 100644 --- a/SPECS/linux/0211-FROMLIST-iommupt-Encode-IOMMU_MMIO-IOMMU_CACHE-via-R.patch +++ b/SPECS/linux/0210-FROMLIST-iommupt-Encode-IOMMU_MMIO-IOMMU_CACHE-via-R.patch @@ -1,7 +1,7 @@ -From 18958837a677d934210c25cc58e100d5fe0600ca Mon Sep 17 00:00:00 2001 +From 3f4dc1cff28419797eb12a08c6e0a799ba8b2af7 Mon Sep 17 00:00:00 2001 From: Fangyu Yu Date: Tue, 12 May 2026 15:41:42 +0800 -Subject: [PATCH 211/269] FROMLIST: iommupt: Encode IOMMU_MMIO/IOMMU_CACHE via +Subject: [RUYI PATCH] FROMLIST: iommupt: Encode IOMMU_MMIO/IOMMU_CACHE via RISC-V Svpbmt bits When the RISC-V IOMMU page table format support Svpbmt, PBMT provides diff --git a/SPECS/linux/0212-FROMLIST-riscv-propagate-insert_resource-result-from.patch b/SPECS/linux/0211-FROMLIST-riscv-propagate-insert_resource-result-from.patch similarity index 89% rename from SPECS/linux/0212-FROMLIST-riscv-propagate-insert_resource-result-from.patch rename to SPECS/linux/0211-FROMLIST-riscv-propagate-insert_resource-result-from.patch index 156e3d4264..5737d0c50a 100644 --- a/SPECS/linux/0212-FROMLIST-riscv-propagate-insert_resource-result-from.patch +++ b/SPECS/linux/0211-FROMLIST-riscv-propagate-insert_resource-result-from.patch @@ -1,8 +1,8 @@ -From 84223fb743681c104a937d6bc4f7b2c6f4c1eabe Mon Sep 17 00:00:00 2001 +From 21e9bbcaa1df24387f7d8f44bf242d87c457e2c1 Mon Sep 17 00:00:00 2001 From: Thorsten Blum Date: Tue, 12 May 2026 19:20:35 +0200 -Subject: [PATCH 212/269] FROMLIST: riscv: propagate insert_resource result - from add_resource +Subject: [RUYI PATCH] FROMLIST: riscv: propagate insert_resource result from + add_resource Currently, add_resource() returns 1 on success, even though its callers only check for negative values. Instead, propagate the insert_resource() diff --git a/SPECS/linux/0213-FROMLIST-PCI-spacemit-k1-Add-device-data-support.patch b/SPECS/linux/0212-FROMLIST-PCI-spacemit-k1-Add-device-data-support.patch similarity index 95% rename from SPECS/linux/0213-FROMLIST-PCI-spacemit-k1-Add-device-data-support.patch rename to SPECS/linux/0212-FROMLIST-PCI-spacemit-k1-Add-device-data-support.patch index e16339c3a5..8c7e1177f2 100644 --- a/SPECS/linux/0213-FROMLIST-PCI-spacemit-k1-Add-device-data-support.patch +++ b/SPECS/linux/0212-FROMLIST-PCI-spacemit-k1-Add-device-data-support.patch @@ -1,7 +1,7 @@ -From 5083a26dd498eb6005324b0c93a37963c86bcb04 Mon Sep 17 00:00:00 2001 +From 74d8d264cef04f124939fdbfab858d192638c9fa Mon Sep 17 00:00:00 2001 From: Inochi Amaoto Date: Sun, 17 May 2026 09:48:36 +0800 -Subject: [PATCH 213/269] FROMLIST: PCI: spacemit-k1: Add device data support +Subject: [RUYI PATCH] FROMLIST: PCI: spacemit-k1: Add device data support To reuse the K1 PCIe driver logic for K3 PCIe controller, add device data to handle the K1 specific logic and make room for the incoming diff --git a/SPECS/linux/0214-FROMLIST-PCI-spacemit-k1-Add-multiple-PHY-handles-su.patch b/SPECS/linux/0213-FROMLIST-PCI-spacemit-k1-Add-multiple-PHY-handles-su.patch similarity index 93% rename from SPECS/linux/0214-FROMLIST-PCI-spacemit-k1-Add-multiple-PHY-handles-su.patch rename to SPECS/linux/0213-FROMLIST-PCI-spacemit-k1-Add-multiple-PHY-handles-su.patch index 217f05a09f..5efb51e682 100644 --- a/SPECS/linux/0214-FROMLIST-PCI-spacemit-k1-Add-multiple-PHY-handles-su.patch +++ b/SPECS/linux/0213-FROMLIST-PCI-spacemit-k1-Add-multiple-PHY-handles-su.patch @@ -1,7 +1,7 @@ -From 272e1fdd4e5a07efc1c210921a7d452990eb7ab5 Mon Sep 17 00:00:00 2001 +From 7aa0a33b40a08e38337613071fbad3832acf9c99 Mon Sep 17 00:00:00 2001 From: Inochi Amaoto Date: Sun, 17 May 2026 09:48:37 +0800 -Subject: [PATCH 214/269] FROMLIST: PCI: spacemit-k1: Add multiple PHY handles +Subject: [RUYI PATCH] FROMLIST: PCI: spacemit-k1: Add multiple PHY handles support The PCIe controller on Spacemit K3 may use multiple PHYs at the diff --git a/SPECS/linux/0215-FROMLIST-dt-bindings-PCI-snps-dw-pcie-Add-msi-parent.patch b/SPECS/linux/0214-FROMLIST-dt-bindings-PCI-snps-dw-pcie-Add-msi-parent.patch similarity index 88% rename from SPECS/linux/0215-FROMLIST-dt-bindings-PCI-snps-dw-pcie-Add-msi-parent.patch rename to SPECS/linux/0214-FROMLIST-dt-bindings-PCI-snps-dw-pcie-Add-msi-parent.patch index 4d37ece85f..23ac18b95c 100644 --- a/SPECS/linux/0215-FROMLIST-dt-bindings-PCI-snps-dw-pcie-Add-msi-parent.patch +++ b/SPECS/linux/0214-FROMLIST-dt-bindings-PCI-snps-dw-pcie-Add-msi-parent.patch @@ -1,8 +1,8 @@ -From 8e35eff72e16f5c7c57298b80e892d486d9f73ee Mon Sep 17 00:00:00 2001 +From 71f1e15e0295ded6f0576bee186b3dcbe7418a4b Mon Sep 17 00:00:00 2001 From: Inochi Amaoto Date: Sun, 17 May 2026 09:48:38 +0800 -Subject: [PATCH 215/269] FROMLIST: dt-bindings: PCI: snps,dw-pcie: Add - msi-parent for MSI handle check +Subject: [RUYI PATCH] FROMLIST: dt-bindings: PCI: snps,dw-pcie: Add msi-parent + for MSI handle check The IMSIC device on RISC-V based system does not require ID remapping for MSI. So this device only needs "msi-parent" diff --git a/SPECS/linux/0216-FROMLIST-dt-bindings-PCI-spacemit-Introduce-Spacemit.patch b/SPECS/linux/0215-FROMLIST-dt-bindings-PCI-spacemit-Introduce-Spacemit.patch similarity index 96% rename from SPECS/linux/0216-FROMLIST-dt-bindings-PCI-spacemit-Introduce-Spacemit.patch rename to SPECS/linux/0215-FROMLIST-dt-bindings-PCI-spacemit-Introduce-Spacemit.patch index 50cd8db1b2..c422427553 100644 --- a/SPECS/linux/0216-FROMLIST-dt-bindings-PCI-spacemit-Introduce-Spacemit.patch +++ b/SPECS/linux/0215-FROMLIST-dt-bindings-PCI-spacemit-Introduce-Spacemit.patch @@ -1,8 +1,8 @@ -From adf247eee6cdc403295d25b65e1c79c9b21a6400 Mon Sep 17 00:00:00 2001 +From dd7888dc0e7e490cb363053a7a3addb9ffa7ca7a Mon Sep 17 00:00:00 2001 From: Inochi Amaoto Date: Sun, 17 May 2026 09:48:39 +0800 -Subject: [PATCH 216/269] FROMLIST: dt-bindings: PCI: spacemit: Introduce - Spacemit K3 PCIe host controller +Subject: [RUYI PATCH] FROMLIST: dt-bindings: PCI: spacemit: Introduce Spacemit + K3 PCIe host controller Add binding support for the PCIe controller on the SpacemiT K3 SoC. This controller is almost a standard Synopsys DesignWare PCIe IP, diff --git a/SPECS/linux/0217-FROMLIST-PCI-spacemit-k1-Add-Spacemit-K3-PCIe-host-c.patch b/SPECS/linux/0216-FROMLIST-PCI-spacemit-k1-Add-Spacemit-K3-PCIe-host-c.patch similarity index 98% rename from SPECS/linux/0217-FROMLIST-PCI-spacemit-k1-Add-Spacemit-K3-PCIe-host-c.patch rename to SPECS/linux/0216-FROMLIST-PCI-spacemit-k1-Add-Spacemit-K3-PCIe-host-c.patch index 5b2edeaced..61b5755897 100644 --- a/SPECS/linux/0217-FROMLIST-PCI-spacemit-k1-Add-Spacemit-K3-PCIe-host-c.patch +++ b/SPECS/linux/0216-FROMLIST-PCI-spacemit-k1-Add-Spacemit-K3-PCIe-host-c.patch @@ -1,7 +1,7 @@ -From e86cf9b33a5b81087cde57897d41d5cd4d7d1d1b Mon Sep 17 00:00:00 2001 +From febdac3aadf3c9ea634d522fd7fe470452b7cf74 Mon Sep 17 00:00:00 2001 From: Inochi Amaoto Date: Sun, 17 May 2026 09:48:40 +0800 -Subject: [PATCH 217/269] FROMLIST: PCI: spacemit-k1: Add Spacemit K3 PCIe host +Subject: [RUYI PATCH] FROMLIST: PCI: spacemit-k1: Add Spacemit K3 PCIe host controller support The PCIe controller on Spacemit K3 is almost a standard Synopsys diff --git a/SPECS/linux/0218-FROMLIST-riscv-dts-spacemit-enable-QSPI-for-OrangePi.patch b/SPECS/linux/0217-FROMLIST-riscv-dts-spacemit-enable-QSPI-for-OrangePi.patch similarity index 91% rename from SPECS/linux/0218-FROMLIST-riscv-dts-spacemit-enable-QSPI-for-OrangePi.patch rename to SPECS/linux/0217-FROMLIST-riscv-dts-spacemit-enable-QSPI-for-OrangePi.patch index f4956d8bc5..98dcb8492e 100644 --- a/SPECS/linux/0218-FROMLIST-riscv-dts-spacemit-enable-QSPI-for-OrangePi.patch +++ b/SPECS/linux/0217-FROMLIST-riscv-dts-spacemit-enable-QSPI-for-OrangePi.patch @@ -1,8 +1,8 @@ -From 35088f1c6265377974a29e7aa290aa73eac02a9a Mon Sep 17 00:00:00 2001 +From 61340a2a8ae64c8740ab040576fb1d9bea07fc58 Mon Sep 17 00:00:00 2001 From: Chukun Pan Date: Sat, 16 May 2026 16:00:30 +0800 -Subject: [PATCH 218/269] FROMLIST: riscv: dts: spacemit: enable QSPI for - OrangePi RV2 +Subject: [RUYI PATCH] FROMLIST: riscv: dts: spacemit: enable QSPI for OrangePi + RV2 Enable the QSPI controller and the XM25QU128C SPI NOR flash on the OrangePi RV2 board. Add a flash partition layout from vendor UBoot. diff --git a/SPECS/linux/0219-FROMLIST-clk-spacemit-k3-fix-USB2-bus-clock.patch b/SPECS/linux/0218-FROMLIST-clk-spacemit-k3-fix-USB2-bus-clock.patch similarity index 91% rename from SPECS/linux/0219-FROMLIST-clk-spacemit-k3-fix-USB2-bus-clock.patch rename to SPECS/linux/0218-FROMLIST-clk-spacemit-k3-fix-USB2-bus-clock.patch index f0f8dd457a..5d3268855e 100644 --- a/SPECS/linux/0219-FROMLIST-clk-spacemit-k3-fix-USB2-bus-clock.patch +++ b/SPECS/linux/0218-FROMLIST-clk-spacemit-k3-fix-USB2-bus-clock.patch @@ -1,7 +1,7 @@ -From 08190175da636a932c84b39350e5345ee141177a Mon Sep 17 00:00:00 2001 +From 8e4787ffe8325bb4111e9e44d0a4886930c0e5a4 Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Mon, 18 May 2026 02:58:36 +0000 -Subject: [PATCH 219/269] FROMLIST: clk: spacemit: k3: fix USB2 bus clock +Subject: [RUYI PATCH] FROMLIST: clk: spacemit: k3: fix USB2 bus clock According to SpacemiT K3's updated docs, the USB2 ahb reset and USB2 bus clock enable bit was wrongly swapped, the correct one should be: diff --git a/SPECS/linux/0220-FROMLIST-reset-spacemit-k3-fix-USB2-ahb-reset.patch b/SPECS/linux/0219-FROMLIST-reset-spacemit-k3-fix-USB2-ahb-reset.patch similarity index 92% rename from SPECS/linux/0220-FROMLIST-reset-spacemit-k3-fix-USB2-ahb-reset.patch rename to SPECS/linux/0219-FROMLIST-reset-spacemit-k3-fix-USB2-ahb-reset.patch index 54d56f708f..34d5815700 100644 --- a/SPECS/linux/0220-FROMLIST-reset-spacemit-k3-fix-USB2-ahb-reset.patch +++ b/SPECS/linux/0219-FROMLIST-reset-spacemit-k3-fix-USB2-ahb-reset.patch @@ -1,7 +1,7 @@ -From f2d5da0de66720fbd8559833fec9c741b14561aa Mon Sep 17 00:00:00 2001 +From 2c8a1059a57e140eb7f436c07c1e0e83a92b875c Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Mon, 18 May 2026 02:58:37 +0000 -Subject: [PATCH 220/269] FROMLIST: reset: spacemit: k3: fix USB2 ahb reset +Subject: [RUYI PATCH] FROMLIST: reset: spacemit: k3: fix USB2 ahb reset According to SpacemiT K3's updated docs, the USB2 ahb reset and USB2 bus clock enable bit was wrongly swapped, the correct one should be: diff --git a/SPECS/linux/0221-FROMLIST-dts-riscv-spacemit-k3-Fix-I-O-power-setting.patch b/SPECS/linux/0220-FROMLIST-dts-riscv-spacemit-k3-Fix-I-O-power-setting.patch similarity index 89% rename from SPECS/linux/0221-FROMLIST-dts-riscv-spacemit-k3-Fix-I-O-power-setting.patch rename to SPECS/linux/0220-FROMLIST-dts-riscv-spacemit-k3-Fix-I-O-power-setting.patch index 3d533964b5..5846641bcf 100644 --- a/SPECS/linux/0221-FROMLIST-dts-riscv-spacemit-k3-Fix-I-O-power-setting.patch +++ b/SPECS/linux/0220-FROMLIST-dts-riscv-spacemit-k3-Fix-I-O-power-setting.patch @@ -1,7 +1,7 @@ -From 4e41ddc8ca87d9f8af5fc6a06cf8f0ec3d2427b5 Mon Sep 17 00:00:00 2001 +From 82547ce6fda10b18258c6ef6f9a0fee803d962f3 Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Mon, 18 May 2026 20:58:16 +0000 -Subject: [PATCH 221/269] FROMLIST: dts: riscv: spacemit: k3: Fix I/O power +Subject: [RUYI PATCH] FROMLIST: dts: riscv: spacemit: k3: Fix I/O power settings SpacemiT K3 SoC support dual-voltage I/O power domain, while initially diff --git a/SPECS/linux/0222-FROMLIST-riscv-dts-spacemit-set-console-baud-rate-on.patch b/SPECS/linux/0221-FROMLIST-riscv-dts-spacemit-set-console-baud-rate-on.patch similarity index 87% rename from SPECS/linux/0222-FROMLIST-riscv-dts-spacemit-set-console-baud-rate-on.patch rename to SPECS/linux/0221-FROMLIST-riscv-dts-spacemit-set-console-baud-rate-on.patch index 688004b815..67feb59219 100644 --- a/SPECS/linux/0222-FROMLIST-riscv-dts-spacemit-set-console-baud-rate-on.patch +++ b/SPECS/linux/0221-FROMLIST-riscv-dts-spacemit-set-console-baud-rate-on.patch @@ -1,8 +1,8 @@ -From f766775d018c48f5d30f3624f61b4f877339fb90 Mon Sep 17 00:00:00 2001 +From 32d50ad9cd58eb6c4efdd9ae3ac8ebb32a4811d9 Mon Sep 17 00:00:00 2001 From: Aurelien Jarno Date: Tue, 19 May 2026 06:12:35 +0200 -Subject: [PATCH 222/269] FROMLIST: riscv: dts: spacemit: set console baud rate - on Milk-V Jupiter +Subject: [RUYI PATCH] FROMLIST: riscv: dts: spacemit: set console baud rate on + Milk-V Jupiter Because the default console's baud rate is not set, defconfig kernels do not have any serial output on this platform. Set the baud rate to diff --git a/SPECS/linux/0223-FROMLIST-riscv-dts-spacemit-sort-aliases-on-Milk-V-J.patch b/SPECS/linux/0222-FROMLIST-riscv-dts-spacemit-sort-aliases-on-Milk-V-J.patch similarity index 85% rename from SPECS/linux/0223-FROMLIST-riscv-dts-spacemit-sort-aliases-on-Milk-V-J.patch rename to SPECS/linux/0222-FROMLIST-riscv-dts-spacemit-sort-aliases-on-Milk-V-J.patch index 7327e80ee4..53621ccfff 100644 --- a/SPECS/linux/0223-FROMLIST-riscv-dts-spacemit-sort-aliases-on-Milk-V-J.patch +++ b/SPECS/linux/0222-FROMLIST-riscv-dts-spacemit-sort-aliases-on-Milk-V-J.patch @@ -1,8 +1,8 @@ -From 6128e54f91614fb865cc2a199ad8a0863bda4c0b Mon Sep 17 00:00:00 2001 +From 8fdf182774d531383f86706f101b38b408aeec32 Mon Sep 17 00:00:00 2001 From: Aurelien Jarno Date: Tue, 19 May 2026 06:12:36 +0200 -Subject: [PATCH 223/269] FROMLIST: riscv: dts: spacemit: sort aliases on - Milk-V Jupiter +Subject: [RUYI PATCH] FROMLIST: riscv: dts: spacemit: sort aliases on Milk-V + Jupiter Before adding more aliases, just sort them. diff --git a/SPECS/linux/0224-FROMLIST-riscv-dts-spacemit-enable-eMMC-on-Milk-V-Ju.patch b/SPECS/linux/0223-FROMLIST-riscv-dts-spacemit-enable-eMMC-on-Milk-V-Ju.patch similarity index 91% rename from SPECS/linux/0224-FROMLIST-riscv-dts-spacemit-enable-eMMC-on-Milk-V-Ju.patch rename to SPECS/linux/0223-FROMLIST-riscv-dts-spacemit-enable-eMMC-on-Milk-V-Ju.patch index f03bb6861c..f81025f5b1 100644 --- a/SPECS/linux/0224-FROMLIST-riscv-dts-spacemit-enable-eMMC-on-Milk-V-Ju.patch +++ b/SPECS/linux/0223-FROMLIST-riscv-dts-spacemit-enable-eMMC-on-Milk-V-Ju.patch @@ -1,7 +1,7 @@ -From dc50a13ede34e19d736820e60bd21c2d91b699f7 Mon Sep 17 00:00:00 2001 +From 2f5d64a37f4d7c48f2862000bb8c5b565b635cbe Mon Sep 17 00:00:00 2001 From: Aurelien Jarno Date: Tue, 19 May 2026 06:12:37 +0200 -Subject: [PATCH 224/269] FROMLIST: riscv: dts: spacemit: enable eMMC on Milk-V +Subject: [RUYI PATCH] FROMLIST: riscv: dts: spacemit: enable eMMC on Milk-V Jupiter The Milk-V Jupiter board has a connector for an eMMC module. Add an diff --git a/SPECS/linux/0225-FROMLIST-riscv-dts-spacemit-enable-SD-card-support-o.patch b/SPECS/linux/0224-FROMLIST-riscv-dts-spacemit-enable-SD-card-support-o.patch similarity index 92% rename from SPECS/linux/0225-FROMLIST-riscv-dts-spacemit-enable-SD-card-support-o.patch rename to SPECS/linux/0224-FROMLIST-riscv-dts-spacemit-enable-SD-card-support-o.patch index 788954b8e5..0167e51037 100644 --- a/SPECS/linux/0225-FROMLIST-riscv-dts-spacemit-enable-SD-card-support-o.patch +++ b/SPECS/linux/0224-FROMLIST-riscv-dts-spacemit-enable-SD-card-support-o.patch @@ -1,8 +1,8 @@ -From 68410f0eb5da8629511f67c27d0c22ddc6e3620d Mon Sep 17 00:00:00 2001 +From 9307972d78fcb63ca4a6ab2649ecc9ea02b3a81d Mon Sep 17 00:00:00 2001 From: Aurelien Jarno Date: Tue, 19 May 2026 06:12:38 +0200 -Subject: [PATCH 225/269] FROMLIST: riscv: dts: spacemit: enable SD card - support on Milk-V Jupiter +Subject: [RUYI PATCH] FROMLIST: riscv: dts: spacemit: enable SD card support + on Milk-V Jupiter Add complete SD card controller support with UHS high-speed modes. diff --git a/SPECS/linux/0226-FROMLIST-riscv-dts-spacemit-fix-uboot-partition-offs.patch b/SPECS/linux/0225-FROMLIST-riscv-dts-spacemit-fix-uboot-partition-offs.patch similarity index 87% rename from SPECS/linux/0226-FROMLIST-riscv-dts-spacemit-fix-uboot-partition-offs.patch rename to SPECS/linux/0225-FROMLIST-riscv-dts-spacemit-fix-uboot-partition-offs.patch index 9acec9e924..c23d55b77d 100644 --- a/SPECS/linux/0226-FROMLIST-riscv-dts-spacemit-fix-uboot-partition-offs.patch +++ b/SPECS/linux/0225-FROMLIST-riscv-dts-spacemit-fix-uboot-partition-offs.patch @@ -1,7 +1,7 @@ -From 209e289be72e52635b68fe9aef7e3a9d827a3caa Mon Sep 17 00:00:00 2001 +From 627095821b3f2df8c21de5a90f4a079221c28700 Mon Sep 17 00:00:00 2001 From: Aurelien Jarno Date: Tue, 19 May 2026 06:12:39 +0200 -Subject: [PATCH 226/269] FROMLIST: riscv: dts: spacemit: fix uboot partition +Subject: [RUYI PATCH] FROMLIST: riscv: dts: spacemit: fix uboot partition offset on Milk-V Jupiter Correct the uboot partition node name to match its actual offset. diff --git a/SPECS/linux/0227-FROMLIST-riscv-dts-spacemit-add-QSPI-support-for-K3-.patch b/SPECS/linux/0226-FROMLIST-riscv-dts-spacemit-add-QSPI-support-for-K3-.patch similarity index 96% rename from SPECS/linux/0227-FROMLIST-riscv-dts-spacemit-add-QSPI-support-for-K3-.patch rename to SPECS/linux/0226-FROMLIST-riscv-dts-spacemit-add-QSPI-support-for-K3-.patch index 812d5b9c0d..10790b084f 100644 --- a/SPECS/linux/0227-FROMLIST-riscv-dts-spacemit-add-QSPI-support-for-K3-.patch +++ b/SPECS/linux/0226-FROMLIST-riscv-dts-spacemit-add-QSPI-support-for-K3-.patch @@ -1,8 +1,8 @@ -From 00c51e0e7b6a409822a4324c95371a736ce8d836 Mon Sep 17 00:00:00 2001 +From a9a19c8a5026751d6ef99c2bae387e79f7ba093f Mon Sep 17 00:00:00 2001 From: Zhengyu He Date: Thu, 21 May 2026 22:44:46 +0800 -Subject: [PATCH 227/269] FROMLIST: riscv: dts: spacemit: add QSPI support for - K3 Pico-ITX +Subject: [RUYI PATCH] FROMLIST: riscv: dts: spacemit: add QSPI support for K3 + Pico-ITX Add K3 QSPI controller node into k3.dtsi, and add related pinmux configuration. diff --git a/SPECS/linux/0228-FROMLIST-pinctrl-spacemit-fix-NULL-check-in-spacemit.patch b/SPECS/linux/0227-FROMLIST-pinctrl-spacemit-fix-NULL-check-in-spacemit.patch similarity index 92% rename from SPECS/linux/0228-FROMLIST-pinctrl-spacemit-fix-NULL-check-in-spacemit.patch rename to SPECS/linux/0227-FROMLIST-pinctrl-spacemit-fix-NULL-check-in-spacemit.patch index 9cb7203d99..19fd9159dc 100644 --- a/SPECS/linux/0228-FROMLIST-pinctrl-spacemit-fix-NULL-check-in-spacemit.patch +++ b/SPECS/linux/0227-FROMLIST-pinctrl-spacemit-fix-NULL-check-in-spacemit.patch @@ -1,7 +1,7 @@ -From aa63c1d8256a65d1899cd336a9dc430b3b5b760e Mon Sep 17 00:00:00 2001 +From 018b260159b4f2877431463dff0b5ad5384a40a0 Mon Sep 17 00:00:00 2001 From: Han Gao Date: Wed, 20 May 2026 00:40:07 +0800 -Subject: [PATCH 228/269] FROMLIST: pinctrl: spacemit: fix NULL check in +Subject: [RUYI PATCH] FROMLIST: pinctrl: spacemit: fix NULL check in spacemit_pin_set_config spacemit_pin_set_config() looks up the per-pin descriptor with diff --git a/SPECS/linux/0229-FROMLIST-riscv-unconditionally-select-ARCH_KEEP_MEMB.patch b/SPECS/linux/0228-FROMLIST-riscv-unconditionally-select-ARCH_KEEP_MEMB.patch similarity index 88% rename from SPECS/linux/0229-FROMLIST-riscv-unconditionally-select-ARCH_KEEP_MEMB.patch rename to SPECS/linux/0228-FROMLIST-riscv-unconditionally-select-ARCH_KEEP_MEMB.patch index 71b566d342..66d62a1182 100644 --- a/SPECS/linux/0229-FROMLIST-riscv-unconditionally-select-ARCH_KEEP_MEMB.patch +++ b/SPECS/linux/0228-FROMLIST-riscv-unconditionally-select-ARCH_KEEP_MEMB.patch @@ -1,7 +1,7 @@ -From 33445409b8c34a18dc9adbc0b571556f8b78dc1d Mon Sep 17 00:00:00 2001 +From 6b750345486592b1da0cd9ad6425db6948e605d4 Mon Sep 17 00:00:00 2001 From: Han Gao Date: Wed, 20 May 2026 00:55:46 +0800 -Subject: [PATCH 229/269] FROMLIST: riscv: unconditionally select +Subject: [RUYI PATCH] FROMLIST: riscv: unconditionally select ARCH_KEEP_MEMBLOCK Select ARCH_KEEP_MEMBLOCK unconditionally. kexec requires memblock diff --git a/SPECS/linux/0230-FROMLIST-riscv-kexec_file-Constrain-segment-placemen.patch b/SPECS/linux/0229-FROMLIST-riscv-kexec_file-Constrain-segment-placemen.patch similarity index 92% rename from SPECS/linux/0230-FROMLIST-riscv-kexec_file-Constrain-segment-placemen.patch rename to SPECS/linux/0229-FROMLIST-riscv-kexec_file-Constrain-segment-placemen.patch index b8f5f806b7..ad190dc255 100644 --- a/SPECS/linux/0230-FROMLIST-riscv-kexec_file-Constrain-segment-placemen.patch +++ b/SPECS/linux/0229-FROMLIST-riscv-kexec_file-Constrain-segment-placemen.patch @@ -1,8 +1,8 @@ -From 08ceb81a4fd20f88e3b88dec762e7f55e3a05a72 Mon Sep 17 00:00:00 2001 +From 52284947498fc778578169b72bd26106a8545dd8 Mon Sep 17 00:00:00 2001 From: Han Gao Date: Wed, 20 May 2026 01:06:41 +0800 -Subject: [PATCH 230/269] FROMLIST: riscv: kexec_file: Constrain segment - placement to direct map +Subject: [RUYI PATCH] FROMLIST: riscv: kexec_file: Constrain segment placement + to direct map When kexec_file_load places segments with buf_max=ULONG_MAX and top_down=true, they land at the highest available physical addresses. diff --git a/SPECS/linux/0231-FROMLIST-dt-bindings-riscv-spacemit-Add-K3-CoM260-IF.patch b/SPECS/linux/0230-FROMLIST-dt-bindings-riscv-spacemit-Add-K3-CoM260-IF.patch similarity index 92% rename from SPECS/linux/0231-FROMLIST-dt-bindings-riscv-spacemit-Add-K3-CoM260-IF.patch rename to SPECS/linux/0230-FROMLIST-dt-bindings-riscv-spacemit-Add-K3-CoM260-IF.patch index b4add99c09..cb4d8de704 100644 --- a/SPECS/linux/0231-FROMLIST-dt-bindings-riscv-spacemit-Add-K3-CoM260-IF.patch +++ b/SPECS/linux/0230-FROMLIST-dt-bindings-riscv-spacemit-Add-K3-CoM260-IF.patch @@ -1,7 +1,7 @@ -From cb09274e58a8ee6106045f3ac535ff6099a0198c Mon Sep 17 00:00:00 2001 +From 46a2ee7a1d59c311a3c36f98223855e2b6c8500f Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Wed, 20 May 2026 23:45:27 +0000 -Subject: [PATCH 231/269] FROMLIST: dt-bindings: riscv: spacemit: Add K3 +Subject: [RUYI PATCH] FROMLIST: dt-bindings: riscv: spacemit: Add K3 CoM260-IFX board MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 diff --git a/SPECS/linux/0232-FROMLIST-riscv-dts-spacemit-k3-Initial-support-for-C.patch b/SPECS/linux/0231-FROMLIST-riscv-dts-spacemit-k3-Initial-support-for-C.patch similarity index 98% rename from SPECS/linux/0232-FROMLIST-riscv-dts-spacemit-k3-Initial-support-for-C.patch rename to SPECS/linux/0231-FROMLIST-riscv-dts-spacemit-k3-Initial-support-for-C.patch index 63e3c3cc97..6a94b89302 100644 --- a/SPECS/linux/0232-FROMLIST-riscv-dts-spacemit-k3-Initial-support-for-C.patch +++ b/SPECS/linux/0231-FROMLIST-riscv-dts-spacemit-k3-Initial-support-for-C.patch @@ -1,8 +1,8 @@ -From d36d998cfb86010f667695ea1fe0e09400b9b5a7 Mon Sep 17 00:00:00 2001 +From 5435879db98ebd75bc4b44df1ac20e47be865d02 Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Wed, 20 May 2026 23:45:28 +0000 -Subject: [PATCH 232/269] FROMLIST: riscv: dts: spacemit: k3: Initial support - for CoM260-IFX board +Subject: [RUYI PATCH] FROMLIST: riscv: dts: spacemit: k3: Initial support for + CoM260-IFX board The K3 CoM260-IFX board combine with one 260 pins "Gold Finger" computer module with a carrier board. The module integrates the K3 SoC, LPDDR5, diff --git a/SPECS/linux/0233-FROMLIST-riscv-dts-spacemit-enable-PMIC-on-OrangePi-.patch b/SPECS/linux/0232-FROMLIST-riscv-dts-spacemit-enable-PMIC-on-OrangePi-.patch similarity index 96% rename from SPECS/linux/0233-FROMLIST-riscv-dts-spacemit-enable-PMIC-on-OrangePi-.patch rename to SPECS/linux/0232-FROMLIST-riscv-dts-spacemit-enable-PMIC-on-OrangePi-.patch index 055ae7c4e6..04e4c8d0d3 100644 --- a/SPECS/linux/0233-FROMLIST-riscv-dts-spacemit-enable-PMIC-on-OrangePi-.patch +++ b/SPECS/linux/0232-FROMLIST-riscv-dts-spacemit-enable-PMIC-on-OrangePi-.patch @@ -1,8 +1,8 @@ -From 1f90376c94530efd9eeb3c0c5b9f76466335b3f0 Mon Sep 17 00:00:00 2001 +From 3dcca8e2192d07a104e77ae41361bc607e8e422c Mon Sep 17 00:00:00 2001 From: Chukun Pan Date: Wed, 20 May 2026 18:00:00 +0800 -Subject: [PATCH 233/269] FROMLIST: riscv: dts: spacemit: enable PMIC on - OrangePi R2S +Subject: [RUYI PATCH] FROMLIST: riscv: dts: spacemit: enable PMIC on OrangePi + R2S Enable the i2c8 interface and add the connected SpacemiT P1 PMIC and its associated regulators to support voltage regulation on the board. diff --git a/SPECS/linux/0234-FROMLIST-riscv-dts-spacemit-set-console-baud-rate-on.patch b/SPECS/linux/0233-FROMLIST-riscv-dts-spacemit-set-console-baud-rate-on.patch similarity index 87% rename from SPECS/linux/0234-FROMLIST-riscv-dts-spacemit-set-console-baud-rate-on.patch rename to SPECS/linux/0233-FROMLIST-riscv-dts-spacemit-set-console-baud-rate-on.patch index dcc7f89108..5d5c185f40 100644 --- a/SPECS/linux/0234-FROMLIST-riscv-dts-spacemit-set-console-baud-rate-on.patch +++ b/SPECS/linux/0233-FROMLIST-riscv-dts-spacemit-set-console-baud-rate-on.patch @@ -1,8 +1,8 @@ -From a85d760e89e4b0f68b0f8364289fcfd3fba07907 Mon Sep 17 00:00:00 2001 +From 66a9c4fe52bf3e7fd8613e693dbda3e838fabbf7 Mon Sep 17 00:00:00 2001 From: Jennifer Berringer Date: Wed, 20 May 2026 07:11:50 -0400 -Subject: [PATCH 234/269] FROMLIST: riscv: dts: spacemit: set console baud rate - on OrangePi RV2 +Subject: [RUYI PATCH] FROMLIST: riscv: dts: spacemit: set console baud rate on + OrangePi RV2 Set the baud rate to 115200, matching what is used by U-Boot on this platform so that the console is usable even when console options are not diff --git a/SPECS/linux/0234-FROMLIST-riscv-dts-spacemit-k3-Add-Ziccrse-extension.patch b/SPECS/linux/0234-FROMLIST-riscv-dts-spacemit-k3-Add-Ziccrse-extension.patch new file mode 100644 index 0000000000..2b2db5589c --- /dev/null +++ b/SPECS/linux/0234-FROMLIST-riscv-dts-spacemit-k3-Add-Ziccrse-extension.patch @@ -0,0 +1,99 @@ +From f4f1db3987e59b28388b549e4ecdb8a11068604a Mon Sep 17 00:00:00 2001 +From: Guodong Xu +Date: Tue, 26 May 2026 15:22:58 -0400 +Subject: [RUYI PATCH] FROMLIST: riscv: dts: spacemit: k3: Add Ziccrse + extension for X100 cores + +Add the Ziccrse ISA extension to all eight X100 cores. Ziccrse +provides a forward progress guarantee on LR/SC sequences in main +memory regions with cacheability and coherence PMAs. + +The SpacemiT X100 core supports it per the SpacemiT K3 hardware +specification. + +Signed-off-by: Guodong Xu +Link: https://lore.kernel.org/r/20260526-k3-ziccrse-v1-1-c759792ca3a3@riscstar.com +Signed-off-by: Han Gao +--- + arch/riscv/boot/dts/spacemit/k3.dtsi | 16 ++++++++-------- + 1 file changed, 8 insertions(+), 8 deletions(-) + +diff --git a/arch/riscv/boot/dts/spacemit/k3.dtsi b/arch/riscv/boot/dts/spacemit/k3.dtsi +index 5b17612fe58e..ed046714a7ac 100644 +--- a/arch/riscv/boot/dts/spacemit/k3.dtsi ++++ b/arch/riscv/boot/dts/spacemit/k3.dtsi +@@ -36,7 +36,7 @@ cpu_0: cpu@0 { + "zawrs", "zba", "zbb", "zbc", "zbs", "zca", + "zcb", "zcd", "zcmop", "zfa", "zfbfmin", + "zfh", "zfhmin", "zicbom", "zicbop", "zicboz", +- "ziccamoa", "ziccif", "zicclsm", "zicntr", ++ "ziccamoa", "ziccif", "zicclsm", "ziccrse", "zicntr", + "zicond", "zicsr", "zifencei", "zihintntl", + "zihintpause", "zihpm", "zimop", "zkt", "zvbb", + "zvbc", "zvfbfmin", "zvfbfwma", "zvfh", +@@ -77,7 +77,7 @@ cpu_1: cpu@1 { + "zawrs", "zba", "zbb", "zbc", "zbs", "zca", + "zcb", "zcd", "zcmop", "zfa", "zfbfmin", + "zfh", "zfhmin", "zicbom", "zicbop", "zicboz", +- "ziccamoa", "ziccif", "zicclsm", "zicntr", ++ "ziccamoa", "ziccif", "zicclsm", "ziccrse", "zicntr", + "zicond", "zicsr", "zifencei", "zihintntl", + "zihintpause", "zihpm", "zimop", "zkt", "zvbb", + "zvbc", "zvfbfmin", "zvfbfwma", "zvfh", +@@ -118,7 +118,7 @@ cpu_2: cpu@2 { + "zawrs", "zba", "zbb", "zbc", "zbs", "zca", + "zcb", "zcd", "zcmop", "zfa", "zfbfmin", + "zfh", "zfhmin", "zicbom", "zicbop", "zicboz", +- "ziccamoa", "ziccif", "zicclsm", "zicntr", ++ "ziccamoa", "ziccif", "zicclsm", "ziccrse", "zicntr", + "zicond", "zicsr", "zifencei", "zihintntl", + "zihintpause", "zihpm", "zimop", "zkt", "zvbb", + "zvbc", "zvfbfmin", "zvfbfwma", "zvfh", +@@ -159,7 +159,7 @@ cpu_3: cpu@3 { + "zawrs", "zba", "zbb", "zbc", "zbs", "zca", + "zcb", "zcd", "zcmop", "zfa", "zfbfmin", + "zfh", "zfhmin", "zicbom", "zicbop", "zicboz", +- "ziccamoa", "ziccif", "zicclsm", "zicntr", ++ "ziccamoa", "ziccif", "zicclsm", "ziccrse", "zicntr", + "zicond", "zicsr", "zifencei", "zihintntl", + "zihintpause", "zihpm", "zimop", "zkt", "zvbb", + "zvbc", "zvfbfmin", "zvfbfwma", "zvfh", +@@ -200,7 +200,7 @@ cpu_4: cpu@4 { + "zawrs", "zba", "zbb", "zbc", "zbs", "zca", + "zcb", "zcd", "zcmop", "zfa", "zfbfmin", + "zfh", "zfhmin", "zicbom", "zicbop", "zicboz", +- "ziccamoa", "ziccif", "zicclsm", "zicntr", ++ "ziccamoa", "ziccif", "zicclsm", "ziccrse", "zicntr", + "zicond", "zicsr", "zifencei", "zihintntl", + "zihintpause", "zihpm", "zimop", "zkt", "zvbb", + "zvbc", "zvfbfmin", "zvfbfwma", "zvfh", +@@ -241,7 +241,7 @@ cpu_5: cpu@5 { + "zawrs", "zba", "zbb", "zbc", "zbs", "zca", + "zcb", "zcd", "zcmop", "zfa", "zfbfmin", + "zfh", "zfhmin", "zicbom", "zicbop", "zicboz", +- "ziccamoa", "ziccif", "zicclsm", "zicntr", ++ "ziccamoa", "ziccif", "zicclsm", "ziccrse", "zicntr", + "zicond", "zicsr", "zifencei", "zihintntl", + "zihintpause", "zihpm", "zimop", "zkt", "zvbb", + "zvbc", "zvfbfmin", "zvfbfwma", "zvfh", +@@ -282,7 +282,7 @@ cpu_6: cpu@6 { + "zawrs", "zba", "zbb", "zbc", "zbs", "zca", + "zcb", "zcd", "zcmop", "zfa", "zfbfmin", + "zfh", "zfhmin", "zicbom", "zicbop", "zicboz", +- "ziccamoa", "ziccif", "zicclsm", "zicntr", ++ "ziccamoa", "ziccif", "zicclsm", "ziccrse", "zicntr", + "zicond", "zicsr", "zifencei", "zihintntl", + "zihintpause", "zihpm", "zimop", "zkt", "zvbb", + "zvbc", "zvfbfmin", "zvfbfwma", "zvfh", +@@ -323,7 +323,7 @@ cpu_7: cpu@7 { + "zawrs", "zba", "zbb", "zbc", "zbs", "zca", + "zcb", "zcd", "zcmop", "zfa", "zfbfmin", + "zfh", "zfhmin", "zicbom", "zicbop", "zicboz", +- "ziccamoa", "ziccif", "zicclsm", "zicntr", ++ "ziccamoa", "ziccif", "zicclsm", "ziccrse", "zicntr", + "zicond", "zicsr", "zifencei", "zihintntl", + "zihintpause", "zihpm", "zimop", "zkt", "zvbb", + "zvbc", "zvfbfmin", "zvfbfwma", "zvfh", +-- +2.53.0 + diff --git a/SPECS/linux/0235-FROMLIST-RISC-V-KVM-Enhance-the-logging-check-for-mm.patch b/SPECS/linux/0235-FROMLIST-RISC-V-KVM-Enhance-the-logging-check-for-mm.patch new file mode 100644 index 0000000000..5fea2bed54 --- /dev/null +++ b/SPECS/linux/0235-FROMLIST-RISC-V-KVM-Enhance-the-logging-check-for-mm.patch @@ -0,0 +1,52 @@ +From 9accda047320df7f2dd06ca1f0d0bfc94a6b4d7f Mon Sep 17 00:00:00 2001 +From: Inochi Amaoto +Date: Thu, 28 May 2026 19:38:39 +0800 +Subject: [RUYI PATCH] FROMLIST: RISC-V: KVM: Enhance the logging check for mmu + mapping + +When enabling dirty ring, the dirty bitmap is disable, and the logging +check is always false as the RISC-V architecture does not select +"NEED_KVM_DIRTY_RING_WITH_BITMAP". Although the dirty log is recorded +since the write path already trying to add the dirty log, the logic for +logging check is broken and some side effect will occurs. + +Enhance the logging check for mmu mapping so it can check both the dirty +ring and the dirty bitmap. + +Signed-off-by: Inochi Amaoto +Link: https://lore.kernel.org/r/20260528113840.2629186-1-inochiama@gmail.com +Signed-off-by: Han Gao +--- + arch/riscv/kvm/mmu.c | 9 ++++----- + 1 file changed, 4 insertions(+), 5 deletions(-) + +diff --git a/arch/riscv/kvm/mmu.c b/arch/riscv/kvm/mmu.c +index 088d33ba90ed..2d0d6d8b3dbd 100644 +--- a/arch/riscv/kvm/mmu.c ++++ b/arch/riscv/kvm/mmu.c +@@ -157,9 +157,8 @@ void kvm_arch_commit_memory_region(struct kvm *kvm, + enum kvm_mr_change change) + { + /* +- * At this point memslot has been committed and there is an +- * allocated dirty_bitmap[], dirty pages will be tracked while +- * the memory slot is write protected. ++ * At this point memslot has been committed and dirty pages will be ++ * tracked while the memory slot is write protected. + */ + if (change != KVM_MR_DELETE && new->flags & KVM_MEM_LOG_DIRTY_PAGES) { + if (kvm_dirty_log_manual_protect_and_init_set(kvm)) +@@ -457,8 +456,8 @@ int kvm_riscv_mmu_map(struct kvm_vcpu *vcpu, struct kvm_memory_slot *memslot, + struct vm_area_struct *vma; + struct kvm *kvm = vcpu->kvm; + struct kvm_mmu_memory_cache *pcache = &vcpu->arch.mmu_page_cache; +- bool logging = (memslot->dirty_bitmap && +- !(memslot->flags & KVM_MEM_READONLY)) ? true : false; ++ bool logging = kvm_slot_dirty_track_enabled(memslot) && ++ !(memslot->flags & KVM_MEM_READONLY); + unsigned long vma_pagesize, mmu_seq; + struct kvm_gstage gstage; + struct page *page; +-- +2.53.0 + diff --git a/SPECS/linux/0235-FROMLIST-riscv-mm-Call-mark_new_valid_map-after-hotp.patch b/SPECS/linux/0235-FROMLIST-riscv-mm-Call-mark_new_valid_map-after-hotp.patch deleted file mode 100644 index 0612b7dd84..0000000000 --- a/SPECS/linux/0235-FROMLIST-riscv-mm-Call-mark_new_valid_map-after-hotp.patch +++ /dev/null @@ -1,84 +0,0 @@ -From 37149bd886755a603be2ffa3db150c8e317e83f4 Mon Sep 17 00:00:00 2001 -From: Vivian Wang -Date: Mon, 25 May 2026 12:23:29 +0800 -Subject: [PATCH 235/269] FROMLIST: riscv: mm: Call mark_new_valid_map() after - hotplugging vmemmap - -section_activate() creates new mappings in the vmemmap range without -flushing TLB, which may cause faults on some RISC-V implementations that -cache non-present PTEs and crashes. - -This seems to be most easily reproduced with DEBUG_VM=y and -PAGE_POISONING=y, which causes these newly mapped struct pages to be -poisoned i.e. written to immediately after mapping. - -Add a hook vmemmap_populate_finalize() in __populate_section_memmap(), -and implement it as calling mark_new_valid_map() on RISC-V, which -arranges for the exception handler to deal with these faults if they -happen. - -Signed-off-by: Vivian Wang -Link: https://lore.kernel.org/r/20260525-mark-after-vmemmap-populate-v1-1-e698d859ba16@iscas.ac.cn -Signed-off-by: Han Gao ---- - arch/riscv/mm/init.c | 6 ++++++ - include/linux/mm.h | 1 + - mm/sparse-vmemmap.c | 6 ++++++ - 3 files changed, 13 insertions(+) - -diff --git a/arch/riscv/mm/init.c b/arch/riscv/mm/init.c -index cf4f3ec1cca5..8babe9a8e954 100644 ---- a/arch/riscv/mm/init.c -+++ b/arch/riscv/mm/init.c -@@ -1494,6 +1494,12 @@ int __meminit vmemmap_populate(unsigned long start, unsigned long end, int node, - */ - return vmemmap_populate_hugepages(start, end, node, altmap); - } -+ -+void __meminit vmemmap_populate_finalize(void) -+{ -+ /* Avoid faults on cached non-present TLB entries. */ -+ mark_new_valid_map(); -+} - #endif - - #if defined(CONFIG_MMU) && defined(CONFIG_64BIT) -diff --git a/include/linux/mm.h b/include/linux/mm.h -index 2d6d268a2798..7ff44f1cc6b5 100644 ---- a/include/linux/mm.h -+++ b/include/linux/mm.h -@@ -4507,6 +4507,7 @@ int vmemmap_populate_hugepages(unsigned long start, unsigned long end, - int node, struct vmem_altmap *altmap); - int vmemmap_populate(unsigned long start, unsigned long end, int node, - struct vmem_altmap *altmap); -+void vmemmap_populate_finalize(void); - int vmemmap_populate_hvo(unsigned long start, unsigned long end, int node, - unsigned long headsize); - int vmemmap_undo_hvo(unsigned long start, unsigned long end, int node, -diff --git a/mm/sparse-vmemmap.c b/mm/sparse-vmemmap.c -index 37522d6cb398..3fa299ce0938 100644 ---- a/mm/sparse-vmemmap.c -+++ b/mm/sparse-vmemmap.c -@@ -558,6 +558,10 @@ static int __meminit vmemmap_populate_compound_pages(unsigned long start_pfn, - - #endif - -+void __weak __meminit vmemmap_populate_finalize(void) -+{ -+} -+ - struct page * __meminit __populate_section_memmap(unsigned long pfn, - unsigned long nr_pages, int nid, struct vmem_altmap *altmap, - struct dev_pagemap *pgmap) -@@ -575,6 +579,8 @@ struct page * __meminit __populate_section_memmap(unsigned long pfn, - else - r = vmemmap_populate(start, end, nid, altmap); - -+ vmemmap_populate_finalize(); -+ - if (r < 0) - return NULL; - --- -2.53.0 - diff --git a/SPECS/linux/0236-FROMLIST-riscv-dts-spacemit-enable-PCIe-on-OrangePi-.patch b/SPECS/linux/0236-FROMLIST-riscv-dts-spacemit-enable-PCIe-on-OrangePi-.patch new file mode 100644 index 0000000000..0cdb22f312 --- /dev/null +++ b/SPECS/linux/0236-FROMLIST-riscv-dts-spacemit-enable-PCIe-on-OrangePi-.patch @@ -0,0 +1,75 @@ +From 0b373ea3428d6d8188b68f0d1ee65c707f29c812 Mon Sep 17 00:00:00 2001 +From: Chukun Pan +Date: Tue, 2 Jun 2026 18:00:00 +0800 +Subject: [RUYI PATCH] FROMLIST: riscv: dts: spacemit: enable PCIe on OrangePi + R2S + +Enable the two RTL8125 network controllers and corresponding +PHYs connected via the PCIe controllers on the OrangePi R2S. + +Signed-off-by: Chukun Pan +Link: https://lore.kernel.org/r/20260602100000.2402784-1-amadeus@jmu.edu.cn +Signed-off-by: Han Gao +--- + .../boot/dts/spacemit/k1-orangepi-r2s.dts | 38 +++++++++++++++++++ + 1 file changed, 38 insertions(+) + +diff --git a/arch/riscv/boot/dts/spacemit/k1-orangepi-r2s.dts b/arch/riscv/boot/dts/spacemit/k1-orangepi-r2s.dts +index b13a8d6a2670..919e5b451109 100644 +--- a/arch/riscv/boot/dts/spacemit/k1-orangepi-r2s.dts ++++ b/arch/riscv/boot/dts/spacemit/k1-orangepi-r2s.dts +@@ -23,6 +23,14 @@ chosen { + stdout-path = "serial0"; + }; + ++ pcie_vcc3v3: regulator-pcie-vcc3v3 { ++ compatible = "regulator-fixed"; ++ regulator-name = "pcie_vcc3v3"; ++ regulator-min-microvolt = <3300000>; ++ regulator-max-microvolt = <3300000>; ++ regulator-always-on; ++ }; ++ + vcc4v0: regulator-vcc4v0 { + compatible = "regulator-fixed"; + regulator-name = "vcc4v0"; +@@ -228,6 +236,36 @@ dldo7 { + }; + }; + ++&pcie1_phy { ++ pinctrl-names = "default"; ++ pinctrl-0 = <&pcie1_3_cfg>; ++ status = "okay"; ++}; ++ ++&pcie1_port { ++ phys = <&pcie1_phy>; ++ vpcie3v3-supply = <&pcie_vcc3v3>; ++}; ++ ++&pcie1 { ++ status = "okay"; ++}; ++ ++&pcie2_phy { ++ pinctrl-names = "default"; ++ pinctrl-0 = <&pcie2_4_cfg>; ++ status = "okay"; ++}; ++ ++&pcie2_port { ++ phys = <&pcie2_phy>; ++ vpcie3v3-supply = <&pcie_vcc3v3>; ++}; ++ ++&pcie2 { ++ status = "okay"; ++}; ++ + &pdma { + status = "okay"; + }; +-- +2.53.0 + diff --git a/SPECS/linux/0237-FROMLIST-iommu-riscv-Add-dependency-between-iommu-an.patch b/SPECS/linux/0237-FROMLIST-iommu-riscv-Add-dependency-between-iommu-an.patch new file mode 100644 index 0000000000..c0051ae843 --- /dev/null +++ b/SPECS/linux/0237-FROMLIST-iommu-riscv-Add-dependency-between-iommu-an.patch @@ -0,0 +1,105 @@ +From 6c086e87e5aaeb344f1eadf56bd9c79678a3724a Mon Sep 17 00:00:00 2001 +From: Wang Yechao +Date: Thu, 4 Jun 2026 14:55:10 +0800 +Subject: [RUYI PATCH] FROMLIST: iommu/riscv: Add dependency between iommu and + devices + +Commit 9156585280f1 ("ACPI: RIMT: Add dependency between iommu and +devices") adds the dependency between iommu and devices on ACPI +systems. On devicetree systems, the incorrect removal order also +occurs. + +It can be reproduced on the QEMU RISC-V machine if the kernel enables +IOMMU_DMA: + +[ 635.081530] e1000e: EEE TX LPI TIMER: 00000000 +[ 656.100306] rcu: INFO: rcu_sched self-detected stall on CPU +[ 656.101374] rcu: 5-....: (5250 ticks this GP) idle=d774/1/0x4000000000000000 softirq=5173/5185 fqs=2625 +[ 656.102237] rcu: (t=5251 jiffies g=36825 q=101 ncpus=16) +[ 656.103801] CPU: 5 UID: 0 PID: 1958 Comm: reboot Tainted: G W 7.1.0-rc5 #31 PREEMPTLAZY +[ 656.104127] Tainted: [W]=WARN +[ 656.104182] Hardware name: QEMU QEMU Virtual Machine, BIOS 2.7 02/02/2022 +[ 656.104339] epc : riscv_iommu_cmd_sync.constprop.0+0xb8/0x148 +[ 656.105352] ra : riscv_iommu_cmd_sync.constprop.0+0xa8/0x148 +[ 656.105433] epc : ffffffff807ca980 ra : ffffffff807ca970 sp : ff60000085dbf960 +[ 656.105475] gp : ffffffff81e0d798 tp : ff60000084b58e00 t0 : ffffffff80021048 +[ 656.105514] t1 : ff60000081b18400 t2 : 45203a6530303031 s0 : ff60000085dbf9c0 +[ 656.105554] s1 : 00000098c92a567c a0 : 00000098c03986f0 a1 : ff60000085dbf970 +[ 656.105594] a2 : 000024bb5cac6aee a3 : ff200000004f1000 a4 : ff6000008140a040 +[ 656.105632] a5 : 0000000000000669 a6 : 0000000000000000 a7 : 00000000ffffa000 +[ 656.105669] s2 : 0000000000000000 s3 : 00000098c0398308 s4 : 000000000000066a +[ 656.105706] s5 : 0000000008f0d180 s6 : 000000a8d08b8de9 s7 : 0000000000001fff +[ 656.105743] s8 : ff6000008140a040 s9 : ff6000008484cb00 s10: ff200000005cc000 +[ 656.105781] s11: ff600000814652a0 t3 : 000000f000000000 t4 : 0000000000000000 +[ 656.105845] t5 : 0000000000000003 t6 : ff600000841666b0 ssp : 0000000000000000 +[ 656.105883] status: 0000000200000120 badaddr: 0000000000000000 cause: 8000000000000005 +[ 656.106072] riscv_iommu_cmd_sync.constprop.0+0xb8/0x148 +[ 656.106321] riscv_iommu_iotlb_inval+0x120/0x160 +[ 656.106373] riscv_iommu_iotlb_sync+0x48/0x60 +[ 656.106422] __iommu_dma_unmap+0xca/0xf8 +[ 656.106470] iommu_dma_unmap_phys+0x58/0xc8 +[ 656.106517] dma_unmap_phys+0x15c/0x248 +[ 656.106564] dma_unmap_page_attrs+0x1e/0x30 +[ 656.106915] e1000_clean_rx_ring+0x1d2/0x200 [e1000e] +[ 656.107668] e1000e_down+0x168/0x1c8 [e1000e] +[ 656.107995] e1000e_pm_freeze+0x94/0x128 [e1000e] +[ 656.108328] e1000_shutdown+0x28/0x48 [e1000e] +[ 656.108652] pci_device_shutdown+0x34/0x48 +[ 656.108706] device_shutdown+0x104/0x1e8 +[ 656.108752] kernel_restart+0x46/0xb8 +[ 656.108797] __do_sys_reboot+0xc0/0x1c8 +[ 656.108840] __riscv_sys_reboot+0x22/0x38 +[ 656.108882] do_trap_ecall_u+0x236/0x3f8 +[ 656.108947] handle_exception+0x15a/0x166 + +So move the device link into the iommu driver to fix both ACPI and +devicetree systems. + +Fixes: 488ffbf18171 ("iommu/riscv: Paging domain support") +Signed-off-by: Wang Yechao +Link: https://lore.kernel.org/r/20260604145510898G2kTwM2Pr25QE5H8T4Wh6@zte.com.cn +Signed-off-by: Han Gao +--- + drivers/acpi/riscv/rimt.c | 7 ------- + drivers/iommu/riscv/iommu.c | 7 +++++++ + 2 files changed, 7 insertions(+), 7 deletions(-) + +diff --git a/drivers/acpi/riscv/rimt.c b/drivers/acpi/riscv/rimt.c +index 906282b0e63c..229c4a0d47a3 100644 +--- a/drivers/acpi/riscv/rimt.c ++++ b/drivers/acpi/riscv/rimt.c +@@ -263,13 +263,6 @@ static int rimt_iommu_xlate(struct device *dev, struct acpi_rimt_node *node, u32 + if (!rimt_fwnode) + return -EPROBE_DEFER; + +- /* +- * EPROBE_DEFER ensures IOMMU is probed before the devices that +- * depend on them. During shutdown, however, the IOMMU may be removed +- * first, leading to issues. To avoid this, a device link is added +- * which enforces the correct removal order. +- */ +- device_link_add(dev, rimt_fwnode->dev, DL_FLAG_AUTOREMOVE_CONSUMER); + return acpi_iommu_fwspec_init(dev, deviceid, rimt_fwnode); + } + +diff --git a/drivers/iommu/riscv/iommu.c b/drivers/iommu/riscv/iommu.c +index 6c324f9fdc53..09cc0432114a 100644 +--- a/drivers/iommu/riscv/iommu.c ++++ b/drivers/iommu/riscv/iommu.c +@@ -1387,6 +1387,13 @@ static struct iommu_device *riscv_iommu_probe_device(struct device *dev) + + dev_iommu_priv_set(dev, info); + ++ /* ++ * During shutdown, however, the IOMMU may be removed first, leading ++ * to issues. To avoid this, a device link is added which enforces ++ * the correct removal order. ++ */ ++ device_link_add(dev, fwspec->iommu_fwnode->dev, DL_FLAG_AUTOREMOVE_CONSUMER); ++ + return &iommu->iommu; + } + +-- +2.53.0 + diff --git a/SPECS/linux/0238-BACKPORT-FROMLIST-riscv-track-effective-hardware-PTE.patch b/SPECS/linux/0238-BACKPORT-FROMLIST-riscv-track-effective-hardware-PTE.patch new file mode 100644 index 0000000000..b712fe6564 --- /dev/null +++ b/SPECS/linux/0238-BACKPORT-FROMLIST-riscv-track-effective-hardware-PTE.patch @@ -0,0 +1,179 @@ +From 9e3fb106ed67ad88ddac6a1ba596a75b965efb34 Mon Sep 17 00:00:00 2001 +From: Yunhui Cui +Date: Fri, 22 May 2026 22:23:57 +0800 +Subject: [RUYI PATCH] BACKPORT: FROMLIST: riscv: track effective hardware PTE + A/D updates + +Track the effective hardware PTE A/D update mode separately from +Svadu capability discovery. When both Svade and Svadu are present, +enable SBI FWFT PTE A/D hardware updating on each online CPU via +CPUHP and use the resulting runtime state for arch_has_hw_pte_young(). +Fall back to software-managed A/D updates if enabling hardware updates +fails. + +When Svadu is present without Svade, assume hardware PTE A/D updating +is enabled from boot, and document that boot-time behavior in the DT +binding. + +Signed-off-by: Yunhui Cui +Reviewed-by: Qingwei Hu +Link: https://lore.kernel.org/r/20260522142358.87589-1-cuiyunhui@bytedance.com +[Han Gao: export riscv_hw_pte_ad_updating, it is referenced by the + arch_has_hw_pte_young() inline pulled into modules such as kvm.ko] +Signed-off-by: Han Gao +--- + .../devicetree/bindings/riscv/extensions.yaml | 6 +- + arch/riscv/include/asm/cpufeature.h | 6 ++ + arch/riscv/include/asm/pgtable.h | 8 +-- + arch/riscv/kernel/cpufeature.c | 59 +++++++++++++++++-- + 4 files changed, 66 insertions(+), 13 deletions(-) + +diff --git a/Documentation/devicetree/bindings/riscv/extensions.yaml b/Documentation/devicetree/bindings/riscv/extensions.yaml +index c6ec9290fe07..58a3a67032ed 100644 +--- a/Documentation/devicetree/bindings/riscv/extensions.yaml ++++ b/Documentation/devicetree/bindings/riscv/extensions.yaml +@@ -277,10 +277,10 @@ properties: + of the PTE A/D bits or page faults when they need updated. + 2) Only Svade present in DT => Supervisor must assume Svade to be + always enabled. +- 3) Only Svadu present in DT => Supervisor must assume Svadu to be +- always enabled. ++ 3) Only Svadu present in DT => Supervisor must assume Svadu is ++ enabled at boot. + 4) Both Svade and Svadu present in DT => Supervisor must assume +- Svadu turned-off at boot time. To use Svadu, supervisor must ++ Svadu is disabled at boot time. To use Svadu, supervisor must + explicitly enable it using the SBI FWFT extension. + + - const: svadu +diff --git a/arch/riscv/include/asm/cpufeature.h b/arch/riscv/include/asm/cpufeature.h +index 739fcc84bf7b..ad9fad6eee55 100644 +--- a/arch/riscv/include/asm/cpufeature.h ++++ b/arch/riscv/include/asm/cpufeature.h +@@ -128,6 +128,12 @@ struct riscv_isa_ext_data { + extern const struct riscv_isa_ext_data riscv_isa_ext[]; + extern const size_t riscv_isa_ext_count; + extern bool riscv_isa_fallback; ++DECLARE_STATIC_KEY_FALSE(riscv_hw_pte_ad_updating); ++ ++static __always_inline bool riscv_has_hw_pte_ad_updating(void) ++{ ++ return static_branch_unlikely(&riscv_hw_pte_ad_updating); ++} + + unsigned long riscv_isa_extension_base(const unsigned long *isa_bitmap); + static __always_inline bool riscv_cpu_has_extension_likely(int cpu, const unsigned long ext) +diff --git a/arch/riscv/include/asm/pgtable.h b/arch/riscv/include/asm/pgtable.h +index 9c92a84e9755..103e8f92c326 100644 +--- a/arch/riscv/include/asm/pgtable.h ++++ b/arch/riscv/include/asm/pgtable.h +@@ -757,14 +757,14 @@ static inline pgprot_t pgprot_writecombine(pgprot_t _prot) + #define pgprot_dmacoherent pgprot_writecombine + + /* +- * Both Svade and Svadu control the hardware behavior when the PTE A/D bits need to be set. By +- * default the M-mode firmware enables the hardware updating scheme when only Svadu is present in +- * DT. ++ * Both Svade and Svadu control the hardware behavior when the PTE A/D bits ++ * need to be set. The core MM code only cares whether hardware updating of ++ * the accessed/dirty state is currently active. + */ + #define arch_has_hw_pte_young arch_has_hw_pte_young + static inline bool arch_has_hw_pte_young(void) + { +- return riscv_has_extension_unlikely(RISCV_ISA_EXT_SVADU); ++ return riscv_has_hw_pte_ad_updating(); + } + + /* +diff --git a/arch/riscv/kernel/cpufeature.c b/arch/riscv/kernel/cpufeature.c +index 1734f9a4c2fd..7d3aee0e89f7 100644 +--- a/arch/riscv/kernel/cpufeature.c ++++ b/arch/riscv/kernel/cpufeature.c +@@ -35,6 +35,8 @@ + static bool any_cpu_has_zicboz; + static bool any_cpu_has_zicbop; + static bool any_cpu_has_zicbom; ++DEFINE_STATIC_KEY_FALSE(riscv_hw_pte_ad_updating); ++EXPORT_SYMBOL(riscv_hw_pte_ad_updating); + + unsigned long elf_hwcap __read_mostly; + +@@ -287,15 +289,60 @@ static int riscv_ext_zvfbfwma_validate(const struct riscv_isa_ext_data *data, + return -EPROBE_DEFER; + } + +-static int riscv_ext_svadu_validate(const struct riscv_isa_ext_data *data, +- const unsigned long *isa_bitmap) ++static void riscv_set_hw_pte_ad_updating(void) ++{ ++ static_branch_enable(&riscv_hw_pte_ad_updating); ++} ++ ++static int riscv_hw_pte_ad_updating_starting(unsigned int cpu) ++{ ++ int ret; ++ ++ ret = sbi_fwft_set(SBI_FWFT_PTE_AD_HW_UPDATING, 1, 0); ++ if (ret) { ++ if (ret != -EOPNOTSUPP) ++ pr_err("CPU%u failed to enable hardware PTE A/D updating: %d\n", ++ cpu, ret); ++ return ret; ++ } ++ ++ return 0; ++} ++ ++static int __init riscv_hw_pte_ad_updating_init(void) + { +- /* SVADE has already been detected, use SVADE only */ +- if (__riscv_isa_extension_available(isa_bitmap, RISCV_ISA_EXT_SVADE)) +- return -EOPNOTSUPP; ++ bool has_svade, has_svadu; ++ int state; + ++ has_svade = riscv_has_extension_unlikely(RISCV_ISA_EXT_SVADE); ++ has_svadu = riscv_has_extension_unlikely(RISCV_ISA_EXT_SVADU); ++ ++ if (!has_svadu) ++ return 0; ++ ++ if (!has_svade) ++ goto enable; ++ ++ state = cpuhp_setup_state(CPUHP_AP_ONLINE_DYN, ++ "riscv/pte-ad:starting", ++ riscv_hw_pte_ad_updating_starting, ++ NULL); ++ if (state < 0) { ++ pr_info("riscv: leave PTE A/D updates software-managed (%d)\n", ++ state); ++ return 0; ++ } ++ ++ /* ++ * A successful CPUHP_AP_ONLINE_DYN registration means the startup ++ * callback has already succeeded on all online CPUs. ++ */ ++enable: ++ riscv_set_hw_pte_ad_updating(); ++ pr_debug("riscv: hardware PTE A/D updating enabled\n"); + return 0; + } ++arch_initcall(riscv_hw_pte_ad_updating_init); + + static int riscv_cfilp_validate(const struct riscv_isa_ext_data *data, + const unsigned long *isa_bitmap) +@@ -584,7 +631,7 @@ const struct riscv_isa_ext_data riscv_isa_ext[] = { + __RISCV_ISA_EXT_SUPERSET(ssnpm, RISCV_ISA_EXT_SSNPM, riscv_xlinuxenvcfg_exts), + __RISCV_ISA_EXT_DATA(sstc, RISCV_ISA_EXT_SSTC), + __RISCV_ISA_EXT_DATA(svade, RISCV_ISA_EXT_SVADE), +- __RISCV_ISA_EXT_DATA_VALIDATE(svadu, RISCV_ISA_EXT_SVADU, riscv_ext_svadu_validate), ++ __RISCV_ISA_EXT_DATA(svadu, RISCV_ISA_EXT_SVADU), + __RISCV_ISA_EXT_DATA(svinval, RISCV_ISA_EXT_SVINVAL), + __RISCV_ISA_EXT_DATA(svnapot, RISCV_ISA_EXT_SVNAPOT), + __RISCV_ISA_EXT_DATA(svpbmt, RISCV_ISA_EXT_SVPBMT), +-- +2.53.0 + diff --git a/SPECS/linux/0239-BACKPORT-FROMLIST-riscv-preserve-hardware-updated-A-.patch b/SPECS/linux/0239-BACKPORT-FROMLIST-riscv-preserve-hardware-updated-A-.patch new file mode 100644 index 0000000000..e0e664ce5b --- /dev/null +++ b/SPECS/linux/0239-BACKPORT-FROMLIST-riscv-preserve-hardware-updated-A-.patch @@ -0,0 +1,166 @@ +From 891df3edf83ee7178551554dd9331c5ebb97367e Mon Sep 17 00:00:00 2001 +From: Yunhui Cui +Date: Fri, 22 May 2026 22:23:58 +0800 +Subject: [RUYI PATCH] BACKPORT: FROMLIST: riscv: preserve hardware-updated A/D + bits in PTE accessors + +Use cmpxchg-based merges for live RISC-V PTE permission updates so +software changes do not lose concurrently hardware-updated accessed and +dirty state. Cover ptep_set_access_flags(), +ptep_test_and_clear_young(), and ptep_set_wrprotect(), and extend the +same wrprotect handling to the PUD leaf helper used by huge mappings. + +Keep the existing Svvptc flush behaviour, but only flush when the +merged PTE value actually changed. + +Signed-off-by: Yunhui Cui +Reviewed-by: Qingwei Hu +Link: https://lore.kernel.org/r/20260522142358.87589-2-cuiyunhui@bytedance.com +[ Han Gao: ptep_test_and_clear_young returntype is int. It's adapted and fixed. ] +Signed-off-by: Han Gao +--- + arch/riscv/include/asm/pgtable.h | 19 +++++++-- + arch/riscv/mm/pgtable.c | 68 ++++++++++++++++++++++++++------ + 2 files changed, 73 insertions(+), 14 deletions(-) + +diff --git a/arch/riscv/include/asm/pgtable.h b/arch/riscv/include/asm/pgtable.h +index 103e8f92c326..8eb1ff060077 100644 +--- a/arch/riscv/include/asm/pgtable.h ++++ b/arch/riscv/include/asm/pgtable.h +@@ -693,15 +693,21 @@ static inline pte_t ptep_get_and_clear(struct mm_struct *mm, + static inline void ptep_set_wrprotect(struct mm_struct *mm, + unsigned long address, pte_t *ptep) + { +- pte_t read_pte = READ_ONCE(*ptep); ++ pte_t old_pte; ++ pte_t pte; + /* + * ptep_set_wrprotect can be called for shadow stack ranges too. + * shadow stack memory is XWR = 010 and thus clearing _PAGE_WRITE will lead to + * encoding 000b which is wrong encoding with V = 1. This should lead to page fault + * but we dont want this wrong configuration to be set in page tables. + */ +- atomic_long_set((atomic_long_t *)ptep, +- ((pte_val(read_pte) & ~(unsigned long)_PAGE_WRITE) | _PAGE_READ)); ++ pte = READ_ONCE(*ptep); ++ do { ++ old_pte = pte; ++ pte = pte_wrprotect(pte); ++ pte_val(pte) = cmpxchg_relaxed(&pte_val(*ptep), pte_val(old_pte), ++ pte_val(pte)); ++ } while (pte_val(pte) != pte_val(old_pte)); + } + + #define __HAVE_ARCH_PTEP_CLEAR_YOUNG_FLUSH +@@ -1055,6 +1061,13 @@ static inline void pmdp_set_wrprotect(struct mm_struct *mm, + ptep_set_wrprotect(mm, address, (pte_t *)pmdp); + } + ++#define __HAVE_ARCH_PUDP_SET_WRPROTECT ++static inline void pudp_set_wrprotect(struct mm_struct *mm, ++ unsigned long address, pud_t *pudp) ++{ ++ ptep_set_wrprotect(mm, address, (pte_t *)pudp); ++} ++ + #define pmdp_establish pmdp_establish + static inline pmd_t pmdp_establish(struct vm_area_struct *vma, + unsigned long address, pmd_t *pmdp, pmd_t pmd) +diff --git a/arch/riscv/mm/pgtable.c b/arch/riscv/mm/pgtable.c +index b1ed2f14dc3a..bf16581872e6 100644 +--- a/arch/riscv/mm/pgtable.c ++++ b/arch/riscv/mm/pgtable.c +@@ -5,23 +5,55 @@ + #include + #include + ++#define RISCV_PTE_ACCESS_FLAG_MASK (_PAGE_READ | _PAGE_WRITE | _PAGE_EXEC | \ ++ _PAGE_ACCESSED | _PAGE_DIRTY | \ ++ _PAGE_SOFT_DIRTY) ++ ++static inline unsigned long riscv_pte_access_flags(unsigned long cur, ++ unsigned long entry) ++{ ++ unsigned long pteval; ++ unsigned long hw_flags; ++ ++ hw_flags = _PAGE_ACCESSED | _PAGE_DIRTY | _PAGE_SOFT_DIRTY; ++ pteval = cur & ~RISCV_PTE_ACCESS_FLAG_MASK; ++ pteval |= entry & (RISCV_PTE_ACCESS_FLAG_MASK & ~hw_flags); ++ pteval |= (cur | entry) & hw_flags; ++ ++ return pteval; ++} ++ + int ptep_set_access_flags(struct vm_area_struct *vma, + unsigned long address, pte_t *ptep, + pte_t entry, int dirty) + { ++ unsigned long old_pteval; ++ unsigned long new_pteval; ++ unsigned long prev_pteval; ++ bool changed; ++ ++ old_pteval = pte_val(ptep_get(ptep)); ++ do { ++ new_pteval = riscv_pte_access_flags(old_pteval, pte_val(entry)); ++ if (new_pteval == old_pteval) ++ break; ++ ++ prev_pteval = cmpxchg_relaxed(&pte_val(*ptep), old_pteval, ++ new_pteval); ++ if (prev_pteval == old_pteval) ++ break; ++ ++ old_pteval = prev_pteval; ++ } while (1); ++ ++ changed = old_pteval != new_pteval; + if (riscv_has_extension_unlikely(RISCV_ISA_EXT_SVVPTC)) { +- if (!pte_same(ptep_get(ptep), entry)) { +- __set_pte_at(vma->vm_mm, ptep, entry); +- /* Here only not svadu is impacted */ ++ if (changed) + flush_tlb_page(vma, address); +- return true; +- } + +- return false; ++ return changed; + } + +- if (!pte_same(ptep_get(ptep), entry)) +- __set_pte_at(vma->vm_mm, ptep, entry); + /* + * update_mmu_cache will unconditionally execute, handling both + * the case that the PTE changed and the spurious fault case. +@@ -33,9 +65,23 @@ int ptep_test_and_clear_young(struct vm_area_struct *vma, + unsigned long address, + pte_t *ptep) + { +- if (!pte_young(ptep_get(ptep))) +- return 0; +- return test_and_clear_bit(_PAGE_ACCESSED_OFFSET, &pte_val(*ptep)); ++ unsigned long old_pteval; ++ unsigned long new_pteval; ++ unsigned long prev_pteval; ++ ++ old_pteval = pte_val(ptep_get(ptep)); ++ do { ++ if (!(old_pteval & _PAGE_ACCESSED)) ++ return 0; ++ ++ new_pteval = pte_val(pte_mkold(__pte(old_pteval))); ++ prev_pteval = cmpxchg_relaxed(&pte_val(*ptep), old_pteval, ++ new_pteval); ++ if (prev_pteval == old_pteval) ++ return 1; ++ ++ old_pteval = prev_pteval; ++ } while (1); + } + EXPORT_SYMBOL_GPL(ptep_test_and_clear_young); + +-- +2.53.0 + diff --git a/SPECS/linux/0240-FROMLIST-riscv-mm-Avoid-spurious-fault-after-hotplug.patch b/SPECS/linux/0240-FROMLIST-riscv-mm-Avoid-spurious-fault-after-hotplug.patch new file mode 100644 index 0000000000..d3488fd3de --- /dev/null +++ b/SPECS/linux/0240-FROMLIST-riscv-mm-Avoid-spurious-fault-after-hotplug.patch @@ -0,0 +1,90 @@ +From 785e5d317ad81e175bf70fdeb7630cdf576cc7f3 Mon Sep 17 00:00:00 2001 +From: Vivian Wang +Date: Fri, 5 Jun 2026 13:23:22 +0800 +Subject: [RUYI PATCH] FROMLIST: riscv: mm: Avoid spurious fault after + hotplugging vmemmap + +section_activate() does not flush TLB after populating new vmemmap +pages. On most architectures, this is okay. However it is a problem on +RISC-V since there the TLB caching non-present entries is permitted, +which causes spurious faults on some hardwares. + +This seems to be most easily reproduced with DEBUG_VM=y and +PAGE_POISONING=y, which causes these newly mapped struct pages to be +poisoned i.e. written to immediately after mapping. + +Add a hook vmemmap_populate_finalize() in __populate_section_memmap() +after population, to allow architectures to handle such situations as +needed. Then implement it on RISC-V to arrange for the existing +exception handler code to deal with these faults if they happen. + +Signed-off-by: Vivian Wang +Link: https://lore.kernel.org/r/20260605-mark-after-vmemmap-populate-v3-1-a06001ac9264@iscas.ac.cn +Signed-off-by: Han Gao +--- + arch/riscv/include/asm/pgtable.h | 4 ++++ + arch/riscv/mm/init.c | 6 ++++++ + mm/sparse-vmemmap.c | 8 ++++++++ + 3 files changed, 18 insertions(+) + +diff --git a/arch/riscv/include/asm/pgtable.h b/arch/riscv/include/asm/pgtable.h +index 8eb1ff060077..1291c56eedc7 100644 +--- a/arch/riscv/include/asm/pgtable.h ++++ b/arch/riscv/include/asm/pgtable.h +@@ -1281,6 +1281,10 @@ static inline pte_t pte_swp_clear_exclusive(pte_t pte) + #define TASK_SIZE FIXADDR_START + #endif + ++/* Needed on SPARSEMEM_VMEMMAP */ ++#define vmemmap_populate_finalize vmemmap_populate_finalize ++void __meminit vmemmap_populate_finalize(void); ++ + #else /* CONFIG_MMU */ + + #define PAGE_SHARED __pgprot(0) +diff --git a/arch/riscv/mm/init.c b/arch/riscv/mm/init.c +index cf4f3ec1cca5..8babe9a8e954 100644 +--- a/arch/riscv/mm/init.c ++++ b/arch/riscv/mm/init.c +@@ -1494,6 +1494,12 @@ int __meminit vmemmap_populate(unsigned long start, unsigned long end, int node, + */ + return vmemmap_populate_hugepages(start, end, node, altmap); + } ++ ++void __meminit vmemmap_populate_finalize(void) ++{ ++ /* Avoid faults on cached non-present TLB entries. */ ++ mark_new_valid_map(); ++} + #endif + + #if defined(CONFIG_MMU) && defined(CONFIG_64BIT) +diff --git a/mm/sparse-vmemmap.c b/mm/sparse-vmemmap.c +index 37522d6cb398..b0a3decd1eb0 100644 +--- a/mm/sparse-vmemmap.c ++++ b/mm/sparse-vmemmap.c +@@ -558,6 +558,12 @@ static int __meminit vmemmap_populate_compound_pages(unsigned long start_pfn, + + #endif + ++#ifndef vmemmap_populate_finalize ++static void __meminit vmemmap_populate_finalize(void) ++{ ++} ++#endif ++ + struct page * __meminit __populate_section_memmap(unsigned long pfn, + unsigned long nr_pages, int nid, struct vmem_altmap *altmap, + struct dev_pagemap *pgmap) +@@ -578,6 +584,8 @@ struct page * __meminit __populate_section_memmap(unsigned long pfn, + if (r < 0) + return NULL; + ++ vmemmap_populate_finalize(); ++ + return pfn_to_page(pfn); + } + +-- +2.53.0 + diff --git a/SPECS/linux/0236-XUANTIE-riscv-dts-th1520-add-licheepi4a-16g-support.patch b/SPECS/linux/0241-XUANTIE-riscv-dts-th1520-add-licheepi4a-16g-support.patch similarity index 91% rename from SPECS/linux/0236-XUANTIE-riscv-dts-th1520-add-licheepi4a-16g-support.patch rename to SPECS/linux/0241-XUANTIE-riscv-dts-th1520-add-licheepi4a-16g-support.patch index 22eccc6e66..7904205dd4 100644 --- a/SPECS/linux/0236-XUANTIE-riscv-dts-th1520-add-licheepi4a-16g-support.patch +++ b/SPECS/linux/0241-XUANTIE-riscv-dts-th1520-add-licheepi4a-16g-support.patch @@ -1,8 +1,7 @@ -From 93f38f49aaab1340f11d04d3f712a4bb47814c26 Mon Sep 17 00:00:00 2001 +From 6b4d0ea6ea00cef4338cd548642d0b495569ff84 Mon Sep 17 00:00:00 2001 From: Han Gao Date: Mon, 24 Nov 2025 20:38:44 +0800 -Subject: [PATCH 236/269] XUANTIE: riscv: dts: th1520: add licheepi4a 16g - support +Subject: [RUYI PATCH] XUANTIE: riscv: dts: th1520: add licheepi4a 16g support From: https://github.com/revyos/th1520-linux-kernel/commit/01a510898e41e704bee1fe58a2c0c0a29cb96548 diff --git a/SPECS/linux/0237-REVYOS-riscv-dts-th1520-rename-thead-to-xuantie.patch b/SPECS/linux/0242-REVYOS-riscv-dts-th1520-rename-thead-to-xuantie.patch similarity index 85% rename from SPECS/linux/0237-REVYOS-riscv-dts-th1520-rename-thead-to-xuantie.patch rename to SPECS/linux/0242-REVYOS-riscv-dts-th1520-rename-thead-to-xuantie.patch index a141d36fdd..ae384135d4 100644 --- a/SPECS/linux/0237-REVYOS-riscv-dts-th1520-rename-thead-to-xuantie.patch +++ b/SPECS/linux/0242-REVYOS-riscv-dts-th1520-rename-thead-to-xuantie.patch @@ -1,7 +1,7 @@ -From 3f9c65918dfcf79c28e3c9592afc59b21e937026 Mon Sep 17 00:00:00 2001 +From f3f3f3e762444ed79f5851fd1d4439966a7cf378 Mon Sep 17 00:00:00 2001 From: Han Gao Date: Wed, 14 May 2025 08:16:15 +0800 -Subject: [PATCH 237/269] REVYOS: riscv: dts: th1520: rename thead to xuantie +Subject: [RUYI PATCH] REVYOS: riscv: dts: th1520: rename thead to xuantie Signed-off-by: Han Gao [Icenowy: preserve the original compatible to allow Linux to match] diff --git a/SPECS/linux/0238-REVYOS-riscv-dts-th1520-add-xuantie-th1520-mbox-r.patch b/SPECS/linux/0243-REVYOS-riscv-dts-th1520-add-xuantie-th1520-mbox-r.patch similarity index 89% rename from SPECS/linux/0238-REVYOS-riscv-dts-th1520-add-xuantie-th1520-mbox-r.patch rename to SPECS/linux/0243-REVYOS-riscv-dts-th1520-add-xuantie-th1520-mbox-r.patch index df363b51d3..6e6a06b8e1 100644 --- a/SPECS/linux/0238-REVYOS-riscv-dts-th1520-add-xuantie-th1520-mbox-r.patch +++ b/SPECS/linux/0243-REVYOS-riscv-dts-th1520-add-xuantie-th1520-mbox-r.patch @@ -1,7 +1,7 @@ -From 6e4c1580c4a705aab8a07e0cd5c470eaee71dfbd Mon Sep 17 00:00:00 2001 +From 88a0182dc6a887d56814a6c0edb154af96622dbe Mon Sep 17 00:00:00 2001 From: Han Gao Date: Wed, 14 May 2025 08:27:18 +0800 -Subject: [PATCH 238/269] REVYOS: riscv: dts: th1520: add xuantie,th1520-mbox-r +Subject: [RUYI PATCH] REVYOS: riscv: dts: th1520: add xuantie,th1520-mbox-r Signed-off-by: Han Gao [Icenowy: remove the interrupt-controller property] diff --git a/SPECS/linux/0239-SOPHGO-dt-bindings-nvmem-Add-SG2044-eFuse-controller.patch b/SPECS/linux/0244-SOPHGO-dt-bindings-nvmem-Add-SG2044-eFuse-controller.patch similarity index 92% rename from SPECS/linux/0239-SOPHGO-dt-bindings-nvmem-Add-SG2044-eFuse-controller.patch rename to SPECS/linux/0244-SOPHGO-dt-bindings-nvmem-Add-SG2044-eFuse-controller.patch index 3748901d56..d94ffceb57 100644 --- a/SPECS/linux/0239-SOPHGO-dt-bindings-nvmem-Add-SG2044-eFuse-controller.patch +++ b/SPECS/linux/0244-SOPHGO-dt-bindings-nvmem-Add-SG2044-eFuse-controller.patch @@ -1,8 +1,7 @@ -From e93f76cc546e5d62bfec229436d623b936f1308d Mon Sep 17 00:00:00 2001 +From 828788cb6576613b13a5eb56a7b0abfba48756a1 Mon Sep 17 00:00:00 2001 From: Inochi Amaoto Date: Sun, 19 Nov 2023 21:13:31 +0800 -Subject: [PATCH 239/269] SOPHGO: dt-bindings: nvmem: Add SG2044 eFuse - controller +Subject: [RUYI PATCH] SOPHGO: dt-bindings: nvmem: Add SG2044 eFuse controller Sophgo SG2044 uses eFuses used to store factory-programmed data such as ROM patch, public keys and other factory information. diff --git a/SPECS/linux/0240-SOPHGO-nvmem-Add-Sophgo-SG2044-eFuse-driver.patch b/SPECS/linux/0245-SOPHGO-nvmem-Add-Sophgo-SG2044-eFuse-driver.patch similarity index 97% rename from SPECS/linux/0240-SOPHGO-nvmem-Add-Sophgo-SG2044-eFuse-driver.patch rename to SPECS/linux/0245-SOPHGO-nvmem-Add-Sophgo-SG2044-eFuse-driver.patch index 2199d29bc5..c8c983a317 100644 --- a/SPECS/linux/0240-SOPHGO-nvmem-Add-Sophgo-SG2044-eFuse-driver.patch +++ b/SPECS/linux/0245-SOPHGO-nvmem-Add-Sophgo-SG2044-eFuse-driver.patch @@ -1,7 +1,7 @@ -From 5bd33517c145b1fce4aaff62caafb2afe8388bed Mon Sep 17 00:00:00 2001 +From 8f115dda9e54d6df037b9bd126a5ce21c977de04 Mon Sep 17 00:00:00 2001 From: Inochi Amaoto Date: Sun, 19 Nov 2023 21:13:32 +0800 -Subject: [PATCH 240/269] SOPHGO: nvmem: Add Sophgo SG2044 eFuse driver +Subject: [RUYI PATCH] SOPHGO: nvmem: Add Sophgo SG2044 eFuse driver Sophgo SoCs such as SG2044 contain eFuses used to store factory-programmed data. diff --git a/SPECS/linux/0241-SOPHGO-riscv-dts-sophgo-sg2044-Add-eFUSE-device.patch b/SPECS/linux/0246-SOPHGO-riscv-dts-sophgo-sg2044-Add-eFUSE-device.patch similarity index 91% rename from SPECS/linux/0241-SOPHGO-riscv-dts-sophgo-sg2044-Add-eFUSE-device.patch rename to SPECS/linux/0246-SOPHGO-riscv-dts-sophgo-sg2044-Add-eFUSE-device.patch index 6ea010222c..e1b5faade9 100644 --- a/SPECS/linux/0241-SOPHGO-riscv-dts-sophgo-sg2044-Add-eFUSE-device.patch +++ b/SPECS/linux/0246-SOPHGO-riscv-dts-sophgo-sg2044-Add-eFUSE-device.patch @@ -1,7 +1,7 @@ -From 874f4862e7b9202630c2b204a204128293dab814 Mon Sep 17 00:00:00 2001 +From 79773864273d7e2c3359f2ebeebc658eef9f78fe Mon Sep 17 00:00:00 2001 From: Inochi Amaoto Date: Thu, 5 Dec 2024 13:24:13 +0800 -Subject: [PATCH 241/269] SOPHGO: riscv: dts: sophgo: sg2044: Add eFUSE device +Subject: [RUYI PATCH] SOPHGO: riscv: dts: sophgo: sg2044: Add eFUSE device Add eFUSE controller node for SG2044. diff --git a/SPECS/linux/0242-SOPHGO-riscv-sg2042-errata-Replace-thead-cache-clean.patch b/SPECS/linux/0247-SOPHGO-riscv-sg2042-errata-Replace-thead-cache-clean.patch similarity index 85% rename from SPECS/linux/0242-SOPHGO-riscv-sg2042-errata-Replace-thead-cache-clean.patch rename to SPECS/linux/0247-SOPHGO-riscv-sg2042-errata-Replace-thead-cache-clean.patch index 510315903f..b5f24c4c2f 100644 --- a/SPECS/linux/0242-SOPHGO-riscv-sg2042-errata-Replace-thead-cache-clean.patch +++ b/SPECS/linux/0247-SOPHGO-riscv-sg2042-errata-Replace-thead-cache-clean.patch @@ -1,8 +1,8 @@ -From 82f7e6cd5cc32f57ec9a2aefcb646e7d4d89a881 Mon Sep 17 00:00:00 2001 +From fe58df34262d97f3b0d899fdff6083a4b16f88d8 Mon Sep 17 00:00:00 2001 From: Xiaoguang Xing Date: Mon, 22 Jan 2024 10:31:30 +0800 -Subject: [PATCH 242/269] SOPHGO: riscv: sg2042: errata: Replace thead cache - clean with flush +Subject: [RUYI PATCH] SOPHGO: riscv: sg2042: errata: Replace thead cache clean + with flush FROM: https://github.com/sophgo/linux-riscv/commit/9f8fdd99aae6ae8f037ad9c80b968de7c4252a65 diff --git a/SPECS/linux/0243-SOPHGO-dts-sg2044-Modify-pcie-bar-address.patch b/SPECS/linux/0248-SOPHGO-dts-sg2044-Modify-pcie-bar-address.patch similarity index 97% rename from SPECS/linux/0243-SOPHGO-dts-sg2044-Modify-pcie-bar-address.patch rename to SPECS/linux/0248-SOPHGO-dts-sg2044-Modify-pcie-bar-address.patch index 72c2bd2012..7042fed7fe 100644 --- a/SPECS/linux/0243-SOPHGO-dts-sg2044-Modify-pcie-bar-address.patch +++ b/SPECS/linux/0248-SOPHGO-dts-sg2044-Modify-pcie-bar-address.patch @@ -1,7 +1,7 @@ -From bdb7ddbbede3c0210447148b44b1dd83137715fa Mon Sep 17 00:00:00 2001 +From fdc16c4665707f0a2612f6691ed2f2b271d6c730 Mon Sep 17 00:00:00 2001 From: Han Gao Date: Sun, 28 Dec 2025 23:02:15 +0800 -Subject: [PATCH 243/269] SOPHGO: dts: sg2044: Modify pcie bar address +Subject: [RUYI PATCH] SOPHGO: dts: sg2044: Modify pcie bar address FROM: https://github.com/sophgo/linux-riscv/commit/efddc3e2d3d57b27054415afb522100e6dce8692 diff --git a/SPECS/linux/0244-REVYSR-dt-bindings-net-ultrarisc-dp1000-gmac-Add-sup.patch b/SPECS/linux/0249-REVYSR-dt-bindings-net-ultrarisc-dp1000-gmac-Add-sup.patch similarity index 95% rename from SPECS/linux/0244-REVYSR-dt-bindings-net-ultrarisc-dp1000-gmac-Add-sup.patch rename to SPECS/linux/0249-REVYSR-dt-bindings-net-ultrarisc-dp1000-gmac-Add-sup.patch index 9026e93aa5..c584c9090f 100644 --- a/SPECS/linux/0244-REVYSR-dt-bindings-net-ultrarisc-dp1000-gmac-Add-sup.patch +++ b/SPECS/linux/0249-REVYSR-dt-bindings-net-ultrarisc-dp1000-gmac-Add-sup.patch @@ -1,7 +1,7 @@ -From 1cb8355f79c2c3fcc46009a3b36f85dcb74c2298 Mon Sep 17 00:00:00 2001 +From 58749e22f9541ed5cc332114d1e8239e9276fdc0 Mon Sep 17 00:00:00 2001 From: Han Gao Date: Fri, 24 Oct 2025 15:59:17 +0800 -Subject: [PATCH 244/269] REVYSR: dt-bindings: net: ultrarisc,dp1000-gmac: Add +Subject: [RUYI PATCH] REVYSR: dt-bindings: net: ultrarisc,dp1000-gmac: Add support for Ultrarisc DP1000 GMAC The GMAC IP on DP1000 is a standard Synopsys DesignWare MAC diff --git a/SPECS/linux/0245-REVYSR-net-stmmac-add-support-for-dwmac-5.10a.patch b/SPECS/linux/0250-REVYSR-net-stmmac-add-support-for-dwmac-5.10a.patch similarity index 87% rename from SPECS/linux/0245-REVYSR-net-stmmac-add-support-for-dwmac-5.10a.patch rename to SPECS/linux/0250-REVYSR-net-stmmac-add-support-for-dwmac-5.10a.patch index 290dc385e0..f9cdec05bc 100644 --- a/SPECS/linux/0245-REVYSR-net-stmmac-add-support-for-dwmac-5.10a.patch +++ b/SPECS/linux/0250-REVYSR-net-stmmac-add-support-for-dwmac-5.10a.patch @@ -1,7 +1,7 @@ -From a2601d5e354f0a2f491a4b8fbe6b07741ece8aee Mon Sep 17 00:00:00 2001 +From 409d6b10f330918412e65bb62c6b6bff7db7f5ad Mon Sep 17 00:00:00 2001 From: Han Gao Date: Fri, 24 Oct 2025 17:00:37 +0800 -Subject: [PATCH 245/269] REVYSR: net: stmmac: add support for dwmac 5.10a +Subject: [RUYI PATCH] REVYSR: net: stmmac: add support for dwmac 5.10a Signed-off-by: Han Gao FROM: https://github.com/RevySR/linux/commit/5bc2d2af06ccd13675b8d4751226fb56bc8ee6df diff --git a/SPECS/linux/0246-RVCK-riscv-dts-add-dp1000.dts-for-UltraRIsc-DP1000-S.patch b/SPECS/linux/0251-RVCK-riscv-dts-add-dp1000.dts-for-UltraRIsc-DP1000-S.patch similarity index 99% rename from SPECS/linux/0246-RVCK-riscv-dts-add-dp1000.dts-for-UltraRIsc-DP1000-S.patch rename to SPECS/linux/0251-RVCK-riscv-dts-add-dp1000.dts-for-UltraRIsc-DP1000-S.patch index 63061591a7..4fffb16aa4 100644 --- a/SPECS/linux/0246-RVCK-riscv-dts-add-dp1000.dts-for-UltraRIsc-DP1000-S.patch +++ b/SPECS/linux/0251-RVCK-riscv-dts-add-dp1000.dts-for-UltraRIsc-DP1000-S.patch @@ -1,8 +1,7 @@ -From 335e17bce811bb12c282e764bcc9742dd83e6ed1 Mon Sep 17 00:00:00 2001 +From 5f377998b2865b1ac0da8c016873120669c1b673 Mon Sep 17 00:00:00 2001 From: Jia Wang Date: Fri, 16 May 2025 11:12:26 +0800 -Subject: [PATCH 246/269] RVCK: riscv:dts: add dp1000.dts for UltraRIsc DP1000 - SoC +Subject: [RUYI PATCH] RVCK: riscv:dts: add dp1000.dts for UltraRIsc DP1000 SoC Signed-off-by: Jia Wang FROM: https://github.com/RVCK-Project/rvck/commit/8fa6586e8607e8f2b9bbf701a6cf282b29dac1f7 diff --git a/SPECS/linux/0247-RVCK-pinctrl-add-pinctrl-dirver-for-UltraRisc-DP1000.patch b/SPECS/linux/0252-RVCK-pinctrl-add-pinctrl-dirver-for-UltraRisc-DP1000.patch similarity index 99% rename from SPECS/linux/0247-RVCK-pinctrl-add-pinctrl-dirver-for-UltraRisc-DP1000.patch rename to SPECS/linux/0252-RVCK-pinctrl-add-pinctrl-dirver-for-UltraRisc-DP1000.patch index caa12006fb..010a37dd92 100644 --- a/SPECS/linux/0247-RVCK-pinctrl-add-pinctrl-dirver-for-UltraRisc-DP1000.patch +++ b/SPECS/linux/0252-RVCK-pinctrl-add-pinctrl-dirver-for-UltraRisc-DP1000.patch @@ -1,8 +1,7 @@ -From 7e1c7fa705a65bb85bf2d2fdcf0d06e630c1c1df Mon Sep 17 00:00:00 2001 +From 00988d4b3f724597782b992ad30fa26b1e1c9a1c Mon Sep 17 00:00:00 2001 From: Jia Wang Date: Fri, 17 Jan 2025 19:34:48 +0800 -Subject: [PATCH 247/269] RVCK: pinctrl: add pinctrl dirver for UltraRisc - DP1000 +Subject: [RUYI PATCH] RVCK: pinctrl: add pinctrl dirver for UltraRisc DP1000 support pinmux and pinconf for UltraRisc DP1000 SoC diff --git a/SPECS/linux/0248-RVCK-dts-add-pinctrl-dtsi-dts-for-UltraRisc-DP1000.patch b/SPECS/linux/0253-RVCK-dts-add-pinctrl-dtsi-dts-for-UltraRisc-DP1000.patch similarity index 97% rename from SPECS/linux/0248-RVCK-dts-add-pinctrl-dtsi-dts-for-UltraRisc-DP1000.patch rename to SPECS/linux/0253-RVCK-dts-add-pinctrl-dtsi-dts-for-UltraRisc-DP1000.patch index 2f77e939b9..ef2f814b7d 100644 --- a/SPECS/linux/0248-RVCK-dts-add-pinctrl-dtsi-dts-for-UltraRisc-DP1000.patch +++ b/SPECS/linux/0253-RVCK-dts-add-pinctrl-dtsi-dts-for-UltraRisc-DP1000.patch @@ -1,7 +1,7 @@ -From 79bc37b5622033ad97d95721a18d3959e32c4881 Mon Sep 17 00:00:00 2001 +From cdb37bf52175a5e5790361efa064f3c69f1698a8 Mon Sep 17 00:00:00 2001 From: Jia Wang Date: Mon, 16 Jun 2025 10:25:31 +0800 -Subject: [PATCH 248/269] RVCK: dts: add pinctrl dtsi/dts for UltraRisc DP1000 +Subject: [RUYI PATCH] RVCK: dts: add pinctrl dtsi/dts for UltraRisc DP1000 The newly added dtsi/dts is used to describe the pinctrl configuration of the UltraRisc DP1000-EVB mainboard. diff --git a/SPECS/linux/0249-RVCK-riscv-dp1000-dts-add-the-dts-of-UltraRISC-dp100.patch b/SPECS/linux/0254-RVCK-riscv-dp1000-dts-add-the-dts-of-UltraRISC-dp100.patch similarity index 98% rename from SPECS/linux/0249-RVCK-riscv-dp1000-dts-add-the-dts-of-UltraRISC-dp100.patch rename to SPECS/linux/0254-RVCK-riscv-dp1000-dts-add-the-dts-of-UltraRISC-dp100.patch index ff26ec489e..06b23336f5 100644 --- a/SPECS/linux/0249-RVCK-riscv-dp1000-dts-add-the-dts-of-UltraRISC-dp100.patch +++ b/SPECS/linux/0254-RVCK-riscv-dp1000-dts-add-the-dts-of-UltraRISC-dp100.patch @@ -1,7 +1,7 @@ -From 3fc1facd2fff9d8ed420074a8d3815114d5e74ff Mon Sep 17 00:00:00 2001 +From 5b02fda142ec866da9b3128d0d0d58270d8a6d48 Mon Sep 17 00:00:00 2001 From: Jia Wang Date: Thu, 4 Sep 2025 16:31:30 +0800 -Subject: [PATCH 249/269] RVCK: riscv: dp1000: dts: add the dts of UltraRISC +Subject: [RUYI PATCH] RVCK: riscv: dp1000: dts: add the dts of UltraRISC dp1000-mo-v1 board adds the necessary device tree files for the UltraRISC diff --git a/SPECS/linux/0250-RVCK-riscv-dp1000-dts-Move-mmc0-node-from-SoC-to-boa.patch b/SPECS/linux/0255-RVCK-riscv-dp1000-dts-Move-mmc0-node-from-SoC-to-boa.patch similarity index 95% rename from SPECS/linux/0250-RVCK-riscv-dp1000-dts-Move-mmc0-node-from-SoC-to-boa.patch rename to SPECS/linux/0255-RVCK-riscv-dp1000-dts-Move-mmc0-node-from-SoC-to-boa.patch index 108c6b470e..5104a8fcb6 100644 --- a/SPECS/linux/0250-RVCK-riscv-dp1000-dts-Move-mmc0-node-from-SoC-to-boa.patch +++ b/SPECS/linux/0255-RVCK-riscv-dp1000-dts-Move-mmc0-node-from-SoC-to-boa.patch @@ -1,7 +1,7 @@ -From fdb3b2a9b77876acca3aa6102e3162c0054b94f5 Mon Sep 17 00:00:00 2001 +From 6a70dada178f7a2b3b2a1a7f463bad337ddd7074 Mon Sep 17 00:00:00 2001 From: Jia Wang Date: Tue, 9 Sep 2025 15:45:52 +0800 -Subject: [PATCH 250/269] RVCK: riscv: dp1000: dts: Move mmc0 node from SoC to +Subject: [RUYI PATCH] RVCK: riscv: dp1000: dts: Move mmc0 node from SoC to board DTS The mmc0 node (mmc-spi-slot) is a board-level peripheral diff --git a/SPECS/linux/0251-RVCK-riscv-dp1000-plic-add-plic-early-init-supports.patch b/SPECS/linux/0256-RVCK-riscv-dp1000-plic-add-plic-early-init-supports.patch similarity index 94% rename from SPECS/linux/0251-RVCK-riscv-dp1000-plic-add-plic-early-init-supports.patch rename to SPECS/linux/0256-RVCK-riscv-dp1000-plic-add-plic-early-init-supports.patch index 27f2c8ef7f..96b16bdf3a 100644 --- a/SPECS/linux/0251-RVCK-riscv-dp1000-plic-add-plic-early-init-supports.patch +++ b/SPECS/linux/0256-RVCK-riscv-dp1000-plic-add-plic-early-init-supports.patch @@ -1,8 +1,7 @@ -From ee4f735ee87fccccab84490e56b104d3e96cabe5 Mon Sep 17 00:00:00 2001 +From b7f462ae6415d55a8f0dccaa06756362f6bd4a16 Mon Sep 17 00:00:00 2001 From: Jia Wang Date: Thu, 18 Sep 2025 10:44:01 +0800 -Subject: [PATCH 251/269] RVCK: riscv: dp1000: plic: add plic early init - supports +Subject: [RUYI PATCH] RVCK: riscv: dp1000: plic: add plic early init supports community inclusion category: feature diff --git a/SPECS/linux/0252-RVCK-riscv-dp1000-dts-Move-chosen-node-from-common-t.patch b/SPECS/linux/0257-RVCK-riscv-dp1000-dts-Move-chosen-node-from-common-t.patch similarity index 93% rename from SPECS/linux/0252-RVCK-riscv-dp1000-dts-Move-chosen-node-from-common-t.patch rename to SPECS/linux/0257-RVCK-riscv-dp1000-dts-Move-chosen-node-from-common-t.patch index 4c02654e58..cb34820f7f 100644 --- a/SPECS/linux/0252-RVCK-riscv-dp1000-dts-Move-chosen-node-from-common-t.patch +++ b/SPECS/linux/0257-RVCK-riscv-dp1000-dts-Move-chosen-node-from-common-t.patch @@ -1,8 +1,8 @@ -From 6584710539bdeb262a9cc4526639d166567555b9 Mon Sep 17 00:00:00 2001 +From 84505e39377a72f4d26dc63e3e1af530158a2cb8 Mon Sep 17 00:00:00 2001 From: Jia Wang Date: Mon, 10 Nov 2025 16:11:12 +0800 -Subject: [PATCH 252/269] RVCK: riscv: dp1000: dts: Move chosen node from - common to board-specific DTS +Subject: [RUYI PATCH] RVCK: riscv: dp1000: dts: Move chosen node from common + to board-specific DTS community inclusion category: feature diff --git a/SPECS/linux/0253-RVCK-dts-riscv-ultrarisc-Refactor-DP1000-device-tree.patch b/SPECS/linux/0258-RVCK-dts-riscv-ultrarisc-Refactor-DP1000-device-tree.patch similarity index 99% rename from SPECS/linux/0253-RVCK-dts-riscv-ultrarisc-Refactor-DP1000-device-tree.patch rename to SPECS/linux/0258-RVCK-dts-riscv-ultrarisc-Refactor-DP1000-device-tree.patch index 32be00c868..a0b1cb0475 100644 --- a/SPECS/linux/0253-RVCK-dts-riscv-ultrarisc-Refactor-DP1000-device-tree.patch +++ b/SPECS/linux/0258-RVCK-dts-riscv-ultrarisc-Refactor-DP1000-device-tree.patch @@ -1,8 +1,8 @@ -From 8f6a15ab728bb98f3ddcff83b8d86011f6cd1fd6 Mon Sep 17 00:00:00 2001 +From aa4887203bde39969d200fbcaebe436dedf91890 Mon Sep 17 00:00:00 2001 From: Jia Wang Date: Tue, 11 Nov 2025 17:03:37 +0800 -Subject: [PATCH 253/269] RVCK: dts: riscv: ultrarisc: Refactor DP1000 device - tree files +Subject: [RUYI PATCH] RVCK: dts: riscv: ultrarisc: Refactor DP1000 device tree + files community inclusion category: feature diff --git a/SPECS/linux/0254-RVCK-riscv-pinctrl-ultrarisc-Implement-pin-configura.patch b/SPECS/linux/0259-RVCK-riscv-pinctrl-ultrarisc-Implement-pin-configura.patch similarity index 97% rename from SPECS/linux/0254-RVCK-riscv-pinctrl-ultrarisc-Implement-pin-configura.patch rename to SPECS/linux/0259-RVCK-riscv-pinctrl-ultrarisc-Implement-pin-configura.patch index fa5b447f2b..87eddd9b6b 100644 --- a/SPECS/linux/0254-RVCK-riscv-pinctrl-ultrarisc-Implement-pin-configura.patch +++ b/SPECS/linux/0259-RVCK-riscv-pinctrl-ultrarisc-Implement-pin-configura.patch @@ -1,7 +1,7 @@ -From ba532e9a5105d85f8a233aaa29a0bad77ee00371 Mon Sep 17 00:00:00 2001 +From 4daa2d6183ff55da8d8c28090a8cc2c128ee4991 Mon Sep 17 00:00:00 2001 From: Jia Wang Date: Wed, 12 Nov 2025 15:43:27 +0800 -Subject: [PATCH 254/269] RVCK: riscv: pinctrl: ultrarisc: Implement pin +Subject: [RUYI PATCH] RVCK: riscv: pinctrl: ultrarisc: Implement pin configuration support community inclusion diff --git a/SPECS/linux/0255-RVCK-riscv-dts-dp1000-add-dts-dtsi-for-Milk-V-Titan-.patch b/SPECS/linux/0260-RVCK-riscv-dts-dp1000-add-dts-dtsi-for-Milk-V-Titan-.patch similarity index 98% rename from SPECS/linux/0255-RVCK-riscv-dts-dp1000-add-dts-dtsi-for-Milk-V-Titan-.patch rename to SPECS/linux/0260-RVCK-riscv-dts-dp1000-add-dts-dtsi-for-Milk-V-Titan-.patch index 6c8fdd837e..8cdb99260c 100644 --- a/SPECS/linux/0255-RVCK-riscv-dts-dp1000-add-dts-dtsi-for-Milk-V-Titan-.patch +++ b/SPECS/linux/0260-RVCK-riscv-dts-dp1000-add-dts-dtsi-for-Milk-V-Titan-.patch @@ -1,8 +1,8 @@ -From 54a5d6c95ff0cfcfa26baddda6c8527e957ff553 Mon Sep 17 00:00:00 2001 +From e0554496321a0e050cd5b45a85d8722c0e6b4510 Mon Sep 17 00:00:00 2001 From: Jia Wang Date: Tue, 18 Nov 2025 13:48:49 +0800 -Subject: [PATCH 255/269] RVCK: riscv: dts: dp1000: add dts/dtsi for Milk-V - Titan board based on UltraRISC DP1000 SoC +Subject: [RUYI PATCH] RVCK: riscv: dts: dp1000: add dts/dtsi for Milk-V Titan + board based on UltraRISC DP1000 SoC community inclusion category: feature diff --git a/SPECS/linux/0256-REVYSR-pinctrl-ultrarisc-cleanup-probe-remove.patch b/SPECS/linux/0261-REVYSR-pinctrl-ultrarisc-cleanup-probe-remove.patch similarity index 94% rename from SPECS/linux/0256-REVYSR-pinctrl-ultrarisc-cleanup-probe-remove.patch rename to SPECS/linux/0261-REVYSR-pinctrl-ultrarisc-cleanup-probe-remove.patch index df25278d75..5bc833ea53 100644 --- a/SPECS/linux/0256-REVYSR-pinctrl-ultrarisc-cleanup-probe-remove.patch +++ b/SPECS/linux/0261-REVYSR-pinctrl-ultrarisc-cleanup-probe-remove.patch @@ -1,7 +1,7 @@ -From 2eb3d7cf7c9f421ab138be87e0fbd6dc6dfa67de Mon Sep 17 00:00:00 2001 +From cdb1be3102f50b00e304a08c398e50a32865f998 Mon Sep 17 00:00:00 2001 From: Han Gao Date: Mon, 23 Feb 2026 14:35:29 +0800 -Subject: [PATCH 256/269] REVYSR: pinctrl: ultrarisc: cleanup probe&remove +Subject: [RUYI PATCH] REVYSR: pinctrl: ultrarisc: cleanup probe&remove Signed-off-by: Han Gao --- diff --git a/SPECS/linux/0257-REVYSR-riscv-dp1000-dts-use-ultrarisc-dp1000-pcie-fo.patch b/SPECS/linux/0262-REVYSR-riscv-dp1000-dts-use-ultrarisc-dp1000-pcie-fo.patch similarity index 89% rename from SPECS/linux/0257-REVYSR-riscv-dp1000-dts-use-ultrarisc-dp1000-pcie-fo.patch rename to SPECS/linux/0262-REVYSR-riscv-dp1000-dts-use-ultrarisc-dp1000-pcie-fo.patch index d58caf5a6c..a31f03e438 100644 --- a/SPECS/linux/0257-REVYSR-riscv-dp1000-dts-use-ultrarisc-dp1000-pcie-fo.patch +++ b/SPECS/linux/0262-REVYSR-riscv-dp1000-dts-use-ultrarisc-dp1000-pcie-fo.patch @@ -1,7 +1,7 @@ -From 6bd09fa37639fe6064c95cc808a700f9c0ec5b63 Mon Sep 17 00:00:00 2001 +From 0ddae06d8aac7e0959f742ba9141cc4fade954d0 Mon Sep 17 00:00:00 2001 From: U2FsdGVkX1 Date: Sun, 29 Mar 2026 15:31:14 +0000 -Subject: [PATCH 257/269] REVYSR: riscv: dp1000: dts: use ultrarisc,dp1000-pcie +Subject: [RUYI PATCH] REVYSR: riscv: dp1000: dts: use ultrarisc,dp1000-pcie for PCIe nodes Signed-off-by: U2FsdGVkX1 diff --git a/SPECS/linux/0258-ULTRARISC-hwmon-add-corepvt-driver-of-UltraRISC-DP10.patch b/SPECS/linux/0263-ULTRARISC-hwmon-add-corepvt-driver-of-UltraRISC-DP10.patch similarity index 98% rename from SPECS/linux/0258-ULTRARISC-hwmon-add-corepvt-driver-of-UltraRISC-DP10.patch rename to SPECS/linux/0263-ULTRARISC-hwmon-add-corepvt-driver-of-UltraRISC-DP10.patch index 01f833c5b2..326220eece 100644 --- a/SPECS/linux/0258-ULTRARISC-hwmon-add-corepvt-driver-of-UltraRISC-DP10.patch +++ b/SPECS/linux/0263-ULTRARISC-hwmon-add-corepvt-driver-of-UltraRISC-DP10.patch @@ -1,8 +1,7 @@ -From 29e0a47635e5c5bb1f29495c9d682c1aa752baa5 Mon Sep 17 00:00:00 2001 +From 785b6a1f0ecf7ea9458ee7f3a925e9aa4acc077c Mon Sep 17 00:00:00 2001 From: Jia Wang Date: Thu, 13 Feb 2025 15:50:12 +0800 -Subject: [PATCH 258/269] ULTRARISC: hwmon: add corepvt driver of UltraRISC - DP1000 +Subject: [RUYI PATCH] ULTRARISC: hwmon: add corepvt driver of UltraRISC DP1000 From: https://github.com/ultrarisc/linux-6.8.0/commit/2cb818e1179844847d3be752b978a4ee7e633bc3 diff --git a/SPECS/linux/0259-RUYI-SYNC-riscv-dts-dp1000-Update-dp1000.dtsi.patch b/SPECS/linux/0264-RUYI-SYNC-riscv-dts-dp1000-Update-dp1000.dtsi.patch similarity index 99% rename from SPECS/linux/0259-RUYI-SYNC-riscv-dts-dp1000-Update-dp1000.dtsi.patch rename to SPECS/linux/0264-RUYI-SYNC-riscv-dts-dp1000-Update-dp1000.dtsi.patch index 9d79c9cca4..fbab1d1fa7 100644 --- a/SPECS/linux/0259-RUYI-SYNC-riscv-dts-dp1000-Update-dp1000.dtsi.patch +++ b/SPECS/linux/0264-RUYI-SYNC-riscv-dts-dp1000-Update-dp1000.dtsi.patch @@ -1,7 +1,7 @@ -From 6fa416284cb97ce827fdc4da978983b9d903c46f Mon Sep 17 00:00:00 2001 +From 49021cde94070b74978ef72a293539acb7e457a6 Mon Sep 17 00:00:00 2001 From: Han Gao Date: Sun, 12 Apr 2026 02:50:03 +0800 -Subject: [PATCH 259/269] RUYI: SYNC: riscv: dts: dp1000: Update dp1000.dtsi +Subject: [RUYI PATCH] RUYI: SYNC: riscv: dts: dp1000: Update dp1000.dtsi FROM: https://github.com/ultrarisc/linux-6.8.0/commit/b4a00f2f96a9c7d8d550259292fd19568fe9beec diff --git a/SPECS/linux/0260-RUYI-riscv-dts-spacemit-k3-Add-USB2.0-support.patch b/SPECS/linux/0265-RUYI-riscv-dts-spacemit-k3-Add-USB2.0-support.patch similarity index 94% rename from SPECS/linux/0260-RUYI-riscv-dts-spacemit-k3-Add-USB2.0-support.patch rename to SPECS/linux/0265-RUYI-riscv-dts-spacemit-k3-Add-USB2.0-support.patch index a1d1817da9..d67b73e2a0 100644 --- a/SPECS/linux/0260-RUYI-riscv-dts-spacemit-k3-Add-USB2.0-support.patch +++ b/SPECS/linux/0265-RUYI-riscv-dts-spacemit-k3-Add-USB2.0-support.patch @@ -1,7 +1,7 @@ -From 11210e1596fbaf59ea34ac7512e6b062b4411db8 Mon Sep 17 00:00:00 2001 +From c168a79b974c2ba19245ad2e7f3e1eb295acbb30 Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Sat, 24 Jan 2026 08:48:53 +0800 -Subject: [PATCH 260/269] RUYI: riscv: dts: spacemit: k3: Add USB2.0 support +Subject: [RUYI PATCH] RUYI: riscv: dts: spacemit: k3: Add USB2.0 support FROM: https://github.com/spacemit-com/linux/commit/6f1578894e4484f8a6724aceff099d2e90450e10 @@ -56,7 +56,7 @@ index 61cbf924830b..ac965ec83f2c 100644 + status = "okay"; +}; diff --git a/arch/riscv/boot/dts/spacemit/k3.dtsi b/arch/riscv/boot/dts/spacemit/k3.dtsi -index 5b17612fe58e..66dcabd0a815 100644 +index ed046714a7ac..1b86c872accb 100644 --- a/arch/riscv/boot/dts/spacemit/k3.dtsi +++ b/arch/riscv/boot/dts/spacemit/k3.dtsi @@ -637,6 +637,37 @@ pdma: dma-controller@d4000000 { diff --git a/SPECS/linux/0261-SPACEMIT-riscv-uaccess-don-t-use-vector-if-buffer-is.patch b/SPECS/linux/0266-SPACEMIT-riscv-uaccess-don-t-use-vector-if-buffer-is.patch similarity index 96% rename from SPECS/linux/0261-SPACEMIT-riscv-uaccess-don-t-use-vector-if-buffer-is.patch rename to SPECS/linux/0266-SPACEMIT-riscv-uaccess-don-t-use-vector-if-buffer-is.patch index 93274ec618..d0818475fc 100644 --- a/SPECS/linux/0261-SPACEMIT-riscv-uaccess-don-t-use-vector-if-buffer-is.patch +++ b/SPECS/linux/0266-SPACEMIT-riscv-uaccess-don-t-use-vector-if-buffer-is.patch @@ -1,8 +1,8 @@ -From 9052e73c75db5b4942063315480e91d0615cf101 Mon Sep 17 00:00:00 2001 +From 2b84e88568d846ebe8d792c687e2b68a191854f3 Mon Sep 17 00:00:00 2001 From: Zhang Meng Date: Mon, 5 Jan 2026 20:05:04 +0800 -Subject: [PATCH 261/269] SPACEMIT: riscv: uaccess: don't use vector if buffer - is not cacheable +Subject: [RUYI PATCH] SPACEMIT: riscv: uaccess: don't use vector if buffer is + not cacheable FROM: https://github.com/spacemit-com/linux-6.18/commit/9168f7e0c6bfdcfa3b6a64a4d45e3cd68a81618f diff --git a/SPECS/linux/0262-RUYI-dt-bindings-phy-Add-Spacemit-K3-USB3-PCIe-comb-.patch b/SPECS/linux/0267-RUYI-dt-bindings-phy-Add-Spacemit-K3-USB3-PCIe-comb-.patch similarity index 94% rename from SPECS/linux/0262-RUYI-dt-bindings-phy-Add-Spacemit-K3-USB3-PCIe-comb-.patch rename to SPECS/linux/0267-RUYI-dt-bindings-phy-Add-Spacemit-K3-USB3-PCIe-comb-.patch index 0f14467566..ec32257c0d 100644 --- a/SPECS/linux/0262-RUYI-dt-bindings-phy-Add-Spacemit-K3-USB3-PCIe-comb-.patch +++ b/SPECS/linux/0267-RUYI-dt-bindings-phy-Add-Spacemit-K3-USB3-PCIe-comb-.patch @@ -1,8 +1,8 @@ -From d063e7ddc6ce6c0a4f1729b54ae41212b09237ad Mon Sep 17 00:00:00 2001 +From 66dbf2efb657accb96df8e31216a29f7f41858fa Mon Sep 17 00:00:00 2001 From: Inochi Amaoto Date: Fri, 13 Feb 2026 09:01:58 +0800 -Subject: [PATCH 262/269] RUYI: dt-bindings: phy: Add Spacemit K3 USB3/PCIe - comb phy support +Subject: [RUYI PATCH] RUYI: dt-bindings: phy: Add Spacemit K3 USB3/PCIe comb + phy support The USB3/PCIe comb PHY on the K3 is a complex PHY group that can provide multiple phy for both PCIe and USB controller. diff --git a/SPECS/linux/0263-RUYI-phy-spacemit-Add-USB3-PCIe-comb-PHY-driver-for-.patch b/SPECS/linux/0268-RUYI-phy-spacemit-Add-USB3-PCIe-comb-PHY-driver-for-.patch similarity index 99% rename from SPECS/linux/0263-RUYI-phy-spacemit-Add-USB3-PCIe-comb-PHY-driver-for-.patch rename to SPECS/linux/0268-RUYI-phy-spacemit-Add-USB3-PCIe-comb-PHY-driver-for-.patch index db8f4003f9..49d9337863 100644 --- a/SPECS/linux/0263-RUYI-phy-spacemit-Add-USB3-PCIe-comb-PHY-driver-for-.patch +++ b/SPECS/linux/0268-RUYI-phy-spacemit-Add-USB3-PCIe-comb-PHY-driver-for-.patch @@ -1,8 +1,8 @@ -From a6d7eca53960ff1034a30648531b0ca503716c5f Mon Sep 17 00:00:00 2001 +From 30d345a45af38c2816b2150fc4261b4d500b5a55 Mon Sep 17 00:00:00 2001 From: Inochi Amaoto Date: Fri, 13 Feb 2026 09:09:58 +0800 -Subject: [PATCH 263/269] RUYI: phy: spacemit: Add USB3/PCIe comb PHY driver - for Spacemit K3 +Subject: [RUYI PATCH] RUYI: phy: spacemit: Add USB3/PCIe comb PHY driver for + Spacemit K3 The comb PHY on K3 requires to configure a syscon device for the right mux configuration. And it requires calibration before any diff --git a/SPECS/linux/0264-RUYI-riscv-dts-spacemit-k3-add-USB-controller-and-US.patch b/SPECS/linux/0269-RUYI-riscv-dts-spacemit-k3-add-USB-controller-and-US.patch similarity index 93% rename from SPECS/linux/0264-RUYI-riscv-dts-spacemit-k3-add-USB-controller-and-US.patch rename to SPECS/linux/0269-RUYI-riscv-dts-spacemit-k3-add-USB-controller-and-US.patch index 56ca65076c..ec9432f984 100644 --- a/SPECS/linux/0264-RUYI-riscv-dts-spacemit-k3-add-USB-controller-and-US.patch +++ b/SPECS/linux/0269-RUYI-riscv-dts-spacemit-k3-add-USB-controller-and-US.patch @@ -1,8 +1,8 @@ -From d998d7cb254181cde5fe683f3e6113406f5f7579 Mon Sep 17 00:00:00 2001 +From 8dfe6a034348d24ae0381212ae169bb1a511e257 Mon Sep 17 00:00:00 2001 From: Inochi Amaoto Date: Fri, 27 Feb 2026 09:46:06 +0800 -Subject: [PATCH 264/269] RUYI: riscv: dts: spacemit: k3: add USB controller - and USB phy support +Subject: [RUYI PATCH] RUYI: riscv: dts: spacemit: k3: add USB controller and + USB phy support Add all USB device node to the Spacemit K3. @@ -42,7 +42,7 @@ index ac965ec83f2c..acfbb5029c15 100644 + status = "okay"; +}; diff --git a/arch/riscv/boot/dts/spacemit/k3.dtsi b/arch/riscv/boot/dts/spacemit/k3.dtsi -index 66dcabd0a815..130828ca3b43 100644 +index 1b86c872accb..e73e6838f6b0 100644 --- a/arch/riscv/boot/dts/spacemit/k3.dtsi +++ b/arch/riscv/boot/dts/spacemit/k3.dtsi @@ -7,6 +7,7 @@ diff --git a/SPECS/linux/0265-RUYI-riscv-dts-spacemit-k3-Add-PCIe-device-node.patch b/SPECS/linux/0270-RUYI-riscv-dts-spacemit-k3-Add-PCIe-device-node.patch similarity index 97% rename from SPECS/linux/0265-RUYI-riscv-dts-spacemit-k3-Add-PCIe-device-node.patch rename to SPECS/linux/0270-RUYI-riscv-dts-spacemit-k3-Add-PCIe-device-node.patch index 347f063d0b..09ff72ef48 100644 --- a/SPECS/linux/0265-RUYI-riscv-dts-spacemit-k3-Add-PCIe-device-node.patch +++ b/SPECS/linux/0270-RUYI-riscv-dts-spacemit-k3-Add-PCIe-device-node.patch @@ -1,7 +1,7 @@ -From 9eb2340edb2989412a100a45539eb6703136e84e Mon Sep 17 00:00:00 2001 +From 77881b831ca947a7c8a79aa3518920eb9a3365d0 Mon Sep 17 00:00:00 2001 From: Inochi Amaoto Date: Tue, 24 Mar 2026 11:06:24 +0800 -Subject: [PATCH 265/269] RUYI: riscv: dts: spacemit: k3: Add PCIe device node +Subject: [RUYI PATCH] RUYI: riscv: dts: spacemit: k3: Add PCIe device node Add all PCIe device node for Spacemit K3. @@ -96,7 +96,7 @@ index 846d5e8cc783..5a817610101b 100644 + }; }; diff --git a/arch/riscv/boot/dts/spacemit/k3.dtsi b/arch/riscv/boot/dts/spacemit/k3.dtsi -index 130828ca3b43..6adfbd505e9e 100644 +index e73e6838f6b0..9552089c7c73 100644 --- a/arch/riscv/boot/dts/spacemit/k3.dtsi +++ b/arch/riscv/boot/dts/spacemit/k3.dtsi @@ -638,6 +638,156 @@ pdma: dma-controller@d4000000 { diff --git a/SPECS/linux/0266-RUYI-PCI-add-SpacemiT-vendor-id-and-its-K3-device-id.patch b/SPECS/linux/0271-RUYI-PCI-add-SpacemiT-vendor-id-and-its-K3-device-id.patch similarity index 84% rename from SPECS/linux/0266-RUYI-PCI-add-SpacemiT-vendor-id-and-its-K3-device-id.patch rename to SPECS/linux/0271-RUYI-PCI-add-SpacemiT-vendor-id-and-its-K3-device-id.patch index cf6ec503da..c4c9a637dd 100644 --- a/SPECS/linux/0266-RUYI-PCI-add-SpacemiT-vendor-id-and-its-K3-device-id.patch +++ b/SPECS/linux/0271-RUYI-PCI-add-SpacemiT-vendor-id-and-its-K3-device-id.patch @@ -1,8 +1,8 @@ -From c71d38f5e32477d75fc9e9587705ed05cddb3870 Mon Sep 17 00:00:00 2001 +From 7dd093fcb65385a50dfa5f2ceace2e86feae4578 Mon Sep 17 00:00:00 2001 From: Icenowy Zheng Date: Wed, 20 May 2026 23:28:15 +0800 -Subject: [PATCH 266/269] RUYI: PCI: add SpacemiT vendor id and its K3 device - id to pci_ids +Subject: [RUYI PATCH] RUYI: PCI: add SpacemiT vendor id and its K3 device id + to pci_ids The SpacemiT K3 chip's root complex needs to be listed in the allowlist of rtw89 driver to allow 36-bit DMA. diff --git a/SPECS/linux/0267-RUYI-wifi-rtw89-pci-add-SpacemiT-K3-to-36-bit-DMA-al.patch b/SPECS/linux/0272-RUYI-wifi-rtw89-pci-add-SpacemiT-K3-to-36-bit-DMA-al.patch similarity index 87% rename from SPECS/linux/0267-RUYI-wifi-rtw89-pci-add-SpacemiT-K3-to-36-bit-DMA-al.patch rename to SPECS/linux/0272-RUYI-wifi-rtw89-pci-add-SpacemiT-K3-to-36-bit-DMA-al.patch index 2c73a41d2b..358dec36a2 100644 --- a/SPECS/linux/0267-RUYI-wifi-rtw89-pci-add-SpacemiT-K3-to-36-bit-DMA-al.patch +++ b/SPECS/linux/0272-RUYI-wifi-rtw89-pci-add-SpacemiT-K3-to-36-bit-DMA-al.patch @@ -1,7 +1,7 @@ -From 3264cd3ea80e2a05603fd2471ef8437198fedf7d Mon Sep 17 00:00:00 2001 +From f3b776c5c4a9499f02e7844675bed8907be164e9 Mon Sep 17 00:00:00 2001 From: Icenowy Zheng Date: Wed, 20 May 2026 23:29:46 +0800 -Subject: [PATCH 267/269] RUYI: wifi: rtw89: pci: add SpacemiT K3 to 36-bit DMA +Subject: [RUYI PATCH] RUYI: wifi: rtw89: pci: add SpacemiT K3 to 36-bit DMA allowlist The SpacemiT K3 platform has no system memory in the 32-bit address diff --git a/SPECS/linux/0268-RUYI-drm-amdgpu-disable-dynamic-PCIe-speed-switch-on.patch b/SPECS/linux/0273-RUYI-drm-amdgpu-disable-dynamic-PCIe-speed-switch-on.patch similarity index 85% rename from SPECS/linux/0268-RUYI-drm-amdgpu-disable-dynamic-PCIe-speed-switch-on.patch rename to SPECS/linux/0273-RUYI-drm-amdgpu-disable-dynamic-PCIe-speed-switch-on.patch index 3eb5b96030..248870f723 100644 --- a/SPECS/linux/0268-RUYI-drm-amdgpu-disable-dynamic-PCIe-speed-switch-on.patch +++ b/SPECS/linux/0273-RUYI-drm-amdgpu-disable-dynamic-PCIe-speed-switch-on.patch @@ -1,8 +1,8 @@ -From 6fe9b7fa04a1b9bd9f5a7f13e32508f336728115 Mon Sep 17 00:00:00 2001 +From 875548afc48a498da208bc8f722769e8c9f0a88c Mon Sep 17 00:00:00 2001 From: Icenowy Zheng Date: Tue, 19 May 2026 19:57:52 +0800 -Subject: [PATCH 268/269] RUYI: drm/amdgpu: disable dynamic PCIe speed switch - on SpacemiT K3 +Subject: [RUYI PATCH] RUYI: drm/amdgpu: disable dynamic PCIe speed switch on + SpacemiT K3 The dynamic speed switch functionality seems to be broken on SpacemiT K3, and leads to frequent GPU crashes at least with Polaris GPUs. @@ -16,7 +16,7 @@ Signed-off-by: Han Gao 1 file changed, 19 insertions(+) diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c -index 2ec69fa05cb1..97664c30ae7b 100644 +index 2ec69fa05cb1..05ebd1b7502f 100644 --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c @@ -2004,6 +2004,14 @@ bool amdgpu_device_seamless_boot_supported(struct amdgpu_device *adev) @@ -39,7 +39,7 @@ index 2ec69fa05cb1..97664c30ae7b 100644 return false; #endif + /* skip upstream/downstream switches internal to dGPU */ -+ while (parent->vendor == PCI_VENDOR_ID_ATI) { ++ while (parent && parent->vendor == PCI_VENDOR_ID_ATI) { + parent = pci_upstream_bridge(parent); + } + diff --git a/SPECS/linux/0269-RVCK-driver-clk-k3-keep-some-system-based-clock-alwa.patch b/SPECS/linux/0274-RVCK-driver-clk-k3-keep-some-system-based-clock-alwa.patch similarity index 92% rename from SPECS/linux/0269-RVCK-driver-clk-k3-keep-some-system-based-clock-alwa.patch rename to SPECS/linux/0274-RVCK-driver-clk-k3-keep-some-system-based-clock-alwa.patch index fe0aa8e403..1e588d8e04 100644 --- a/SPECS/linux/0269-RVCK-driver-clk-k3-keep-some-system-based-clock-alwa.patch +++ b/SPECS/linux/0274-RVCK-driver-clk-k3-keep-some-system-based-clock-alwa.patch @@ -1,7 +1,7 @@ -From 9664b629f655a39a7c67de5e4669718549f87b3e Mon Sep 17 00:00:00 2001 +From 5ef99d2db590e72fc08215b1b0ac74ee6386ea77 Mon Sep 17 00:00:00 2001 From: Zhang Meng Date: Wed, 4 Feb 2026 08:54:40 +0800 -Subject: [PATCH 269/269] RVCK: driver: clk: k3: keep some system based clock +Subject: [RUYI PATCH] RVCK: driver: clk: k3: keep some system based clock always on FROM: https://github.com/RVCK-Project/rvck/pull/213 diff --git a/SPECS/linux/0001-RUYI-mmc-sdhci-of-dwcmshc-Add-support-for-SG2042-FPG.patch b/SPECS/linux/0275-RUYI-mmc-sdhci-of-dwcmshc-Add-support-for-SG2042-FPG.patch similarity index 89% rename from SPECS/linux/0001-RUYI-mmc-sdhci-of-dwcmshc-Add-support-for-SG2042-FPG.patch rename to SPECS/linux/0275-RUYI-mmc-sdhci-of-dwcmshc-Add-support-for-SG2042-FPG.patch index c61d8c49ba..e6eb17dc3e 100644 --- a/SPECS/linux/0001-RUYI-mmc-sdhci-of-dwcmshc-Add-support-for-SG2042-FPG.patch +++ b/SPECS/linux/0275-RUYI-mmc-sdhci-of-dwcmshc-Add-support-for-SG2042-FPG.patch @@ -1,19 +1,20 @@ -From 30511272dcaccf22b5c421d030ecc5605477fcf9 Mon Sep 17 00:00:00 2001 +From b29ac805c857da28d04d2907b7bd6fe2dab7e996 Mon Sep 17 00:00:00 2001 From: Vivian Wang Date: Thu, 28 May 2026 14:18:23 +0800 -Subject: [PATCH] RUYI: mmc: sdhci-of-dwcmshc: Add support for SG2042 FPGA +Subject: [RUYI PATCH] RUYI: mmc: sdhci-of-dwcmshc: Add support for SG2042 FPGA variant Add support for a testing variant of the SG2042 SDHCI controller without PHY reset and without the "timer" clock. Signed-off-by: Vivian Wang +Signed-off-by: Han Gao --- drivers/mmc/host/sdhci-of-dwcmshc.c | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/drivers/mmc/host/sdhci-of-dwcmshc.c b/drivers/mmc/host/sdhci-of-dwcmshc.c -index bf2cb49ddd8196..b16d34c4c4c915 100644 +index bf2cb49ddd81..b16d34c4c4c9 100644 --- a/drivers/mmc/host/sdhci-of-dwcmshc.c +++ b/drivers/mmc/host/sdhci-of-dwcmshc.c @@ -1743,6 +1743,16 @@ static const struct sdhci_ops sdhci_dwcmshc_sg2042_ops = { @@ -59,3 +60,6 @@ index bf2cb49ddd8196..b16d34c4c4c915 100644 { .compatible = "eswin,eic7700-dwcmshc", .data = &sdhci_dwcmshc_eic7700_pdata, +-- +2.53.0 + diff --git a/SPECS/linux/linux.spec b/SPECS/linux/linux.spec index dec9aa999d..e3ffde4606 100644 --- a/SPECS/linux/linux.spec +++ b/SPECS/linux/linux.spec @@ -34,14 +34,15 @@ %global modpath /lib/modules/%{kernel_full_version} Name: linux -Version: 7.0.10 +Version: 7.0.11 Release: %autorelease Summary: The Linux Kernel License: GPL-2.0-only URL: https://www.kernel.org/ -#!RemoteAsset: sha256:094977eb62c20e3d1939fe81a92958a1f987f339446e532fa86963b2804e32dc +#!RemoteAsset: sha256:e56c8356dda01136a6041c6ef832bd0ec99bd2d35dff97832aa5ec10ed014304 Source0: https://cdn.kernel.org/pub/linux/kernel/v7.x/linux-%{version}.tar.xz Source1: config.%{_arch} +Source2: series BuildRequires: gcc BuildRequires: bison @@ -91,276 +92,7 @@ Requires(post): kernel-install Requires(preun): kernel-install %patchlist -0001-UPSTREAM-rust-clk-implement-Send-and-Sync.patch -0002-UPSTREAM-tyr-remove-impl-Send-Sync-for-TyrData.patch -0003-UPSTREAM-pwm-th1520-remove-impl-Send-Sync-for-Th1520.patch -0004-UPSTREAM-net-spacemit-Remove-unused-buff_addr-fields.patch -0005-UPSTREAM-dt-bindings-net-Add-support-for-Spacemit-K3.patch -0006-UPSTREAM-net-stmmac-platform-Add-snps-dwmac-5.40a-IP.patch -0007-UPSTREAM-net-stmmac-Add-glue-layer-for-Spacemit-K3-S.patch -0008-UPSTREAM-drm-imagination-Improve-handling-of-unknown.patch -0009-UPSTREAM-drm-imagination-Mark-FWCCB_CMD_UPDATE_STATS.patch -0010-UPSTREAM-drm-imagination-Improve-firmware-power-off-.patch -0011-UPSTREAM-drm-imagination-Skip-2nd-thread-DM-associat.patch -0012-UPSTREAM-drm-imagination-Add-missing-rogue-context-r.patch -0013-UPSTREAM-drm-imagination-Implement-handling-of-conte.patch -0014-UPSTREAM-dt-bindings-vendor-prefixes-add-verisilicon.patch -0015-UPSTREAM-dt-bindings-display-add-verisilicon-dc.patch -0016-UPSTREAM-drm-verisilicon-add-a-driver-for-Verisilico.patch -0017-UPSTREAM-dt-bindings-display-bridge-add-binding-for-.patch -0018-UPSTREAM-drm-bridge-add-a-driver-for-T-Head-TH1520-H.patch -0019-UPSTREAM-dt-bindings-mfd-spacemit-p1-Add-individual-.patch -0020-UPSTREAM-regulator-spacemit-p1-Update-supply-names.patch -0021-UPSTREAM-mmc-sdhci-of-k1-add-reset-support.patch -0022-UPSTREAM-dt-bindings-mmc-spacemit-sdhci-add-support-.patch -0023-UPSTREAM-mmc-sdhci-of-k1-spacemit-Add-support-for-K3.patch -0024-UPSTREAM-dt-bindings-hwmon-moortec-mr75203-adapt-mul.patch -0025-UPSTREAM-riscv-dts-thead-add-DPU-and-HDMI-device-tre.patch -0026-UPSTREAM-riscv-dts-thead-lichee-pi-4a-enable-HDMI.patch -0027-UPSTREAM-riscv-dts-thead-th1520-add-coefficients-to-.patch -0028-UPSTREAM-riscv-dts-thead-beaglev-ahead-enable-HDMI-o.patch -0029-UPSTREAM-i2c-spacemit-move-i2c_xfer_msg.patch -0030-UPSTREAM-i2c-spacemit-introduce-pio-for-k1.patch -0031-UPSTREAM-pinctrl-spacemit-return-ENOTSUPP-for-unsupp.patch -0032-UPSTREAM-gpio-spacemit-k1-Add-set_config-callback-su.patch -0033-UPSTREAM-riscv-dts-spacemit-Update-PMIC-supply-prope.patch -0034-UPSTREAM-riscv-dts-spacemit-adapt-regulator-node-nam.patch -0035-UPSTREAM-riscv-dts-spacemit-Add-linux-pci-domain-to-.patch -0036-UPSTREAM-dt-bindings-serial-8250-spacemit-fix-clock-.patch -0037-UPSTREAM-riscv-dts-spacemit-k3-add-clock-tree.patch -0038-UPSTREAM-riscv-dts-spacemit-k3-add-pinctrl-support.patch -0039-UPSTREAM-riscv-dts-spacemit-k3-add-GPIO-support.patch -0040-UPSTREAM-riscv-dts-spacemit-k3-add-full-resource-to-.patch -0041-UPSTREAM-dt-bindings-usb-dwc3-spacemit-add-support-f.patch -0042-UPSTREAM-usb-dwc3-dwc3-generic-plat-spacemit-add-sup.patch -0043-UPSTREAM-usb-dwc3-Add-optional-VBUS-regulator-suppor.patch -0044-UPSTREAM-riscv-dts-spacemit-reorder-phy-nodes-for-K1.patch -0045-UPSTREAM-riscv-dts-spacemit-Add-ethernet-device-for-.patch -0046-UPSTREAM-riscv-dts-spacemit-add-LEDs-for-Milk-V-Jupi.patch -0047-UPSTREAM-riscv-dts-spacemit-add-24c04-eeprom-on-Milk.patch -0048-UPSTREAM-riscv-dts-spacemit-add-i2c-aliases-on-Milk-.patch -0049-UPSTREAM-riscv-dts-spacemit-enable-QSPI-and-add-SPI-.patch -0050-UPSTREAM-riscv-dts-spacemit-enable-USB-3-ports-on-Mi.patch -0051-UPSTREAM-riscv-dts-spacemit-enable-PCIe-ports-on-Mil.patch -0052-UPSTREAM-dt-bindings-i2c-spacemit-k3-Add-compatible.patch -0053-UPSTREAM-dts-riscv-spacemit-k3-Add-i2c-nodes.patch -0054-UPSTREAM-dts-riscv-spacemit-k3-add-P1-PMIC-regulator.patch -0055-UPSTREAM-perf-symbol-Add-RISCV-case-in-get_plt_sizes.patch -0056-UPSTREAM-riscv-Simplify-assignment-for-UTS_MACHINE.patch -0057-UPSTREAM-riscv-increase-COMMAND_LINE_SIZE-value-to-2.patch -0058-UPSTREAM-riscv-acpi-update-FADT-revision-check-to-6..patch -0059-UPSTREAM-riscv-mm-WARN_ON-for-bad-addresses-in-vmemm.patch -0060-UPSTREAM-riscv-enable-HAVE_IOREMAP_PROT.patch -0061-UPSTREAM-lib-string_kunit-add-correctness-test-for-s.patch -0062-UPSTREAM-lib-string_kunit-add-correctness-test-for-s.patch -0063-UPSTREAM-lib-string_kunit-add-correctness-test-for-s.patch -0064-UPSTREAM-lib-string_kunit-add-performance-benchmark-.patch -0065-UPSTREAM-lib-string_kunit-extend-benchmarks-to-strnl.patch -0066-UPSTREAM-riscv-lib-add-strnlen-implementation.patch -0067-UPSTREAM-riscv-lib-add-strchr-implementation.patch -0068-UPSTREAM-riscv-lib-add-strrchr-implementation.patch -0069-UPSTREAM-ASoC-spacemit-move-hw-constraints-from-hw_p.patch -0070-UPSTREAM-ASoC-spacemit-adjust-FIFO-trigger-threshold.patch -0071-UPSTREAM-clk-spacemit-k3-mark-top_dclk-as-CLK_IS_CRI.patch -0072-UPSTREAM-ASoC-spacemit-fix-RX-DMA-params-not-set-whe.patch -0073-UPSTREAM-dt-bindings-usb-Add-support-for-Terminus-FE.patch -0074-UPSTREAM-usb-misc-onboard_usb_dev-Add-Terminus-FE1.1.patch -0075-UPSTREAM-iommupt-Add-the-RISC-V-page-table-format.patch -0076-UPSTREAM-iommu-riscv-Disable-SADE.patch -0077-UPSTREAM-iommu-riscv-Use-the-generic-iommu-page-tabl.patch -0078-UPSTREAM-iommu-riscv-Enable-SVNAPOT-support-for-cont.patch -0079-UPSTREAM-iommu-riscv-Allow-RISC_VIOMMU-to-COMPILE_TE.patch -0080-UPSTREAM-riscv-Define-__riscv_copy_-vec_-words-bytes.patch -0081-UPSTREAM-riscv-mm-Fixup-no5lvl-failure-when-vaddr-is.patch -0082-UPSTREAM-drm-amd-display-Add-min-clock-init-for-DML2.patch -0083-UPSTREAM-drm-amd-display-Backport-dml21-DC_RUN_WITH_.patch -0084-UPSTREAM-drm-amd-display-Move-FPU-Guards-From-DML-To.patch -0085-UPSTREAM-drm-amd-display-Move-FPU-Guards-From-DML-To.patch -0086-UPSTREAM-drm-amd-display-Move-FPU-Guards-From-DML-To.patch -0087-UPSTREAM-drm-amd-display-Fix-dc_is_fp_enabled-name-m.patch -0088-UPSTREAM-drm-amd-display-Fix-fpu-guard-warning.patch -0089-UPSTREAM-drm-amd-display-Move-dml2_destroy-to-non-FP.patch -0090-UPSTREAM-spi-dt-bindings-fsl-qspi-support-SpacemiT-K.patch -0091-UPSTREAM-RISC-V-KVM-Fix-NULL-pointer-dereference-in-.patch -0092-FROMGIT-drm-imagination-Count-paired-job-fence-as-de.patch -0093-FROMGIT-drm-imagination-Fit-paired-fragment-job-in-t.patch -0094-FROMGIT-drm-imagination-Skip-check-on-paired-job-fen.patch -0095-FROMGIT-drm-imagination-Rename-pvr_queue_fence_is_uf.patch -0096-FROMGIT-drm-imagination-Rename-fence-returned-by-pvr.patch -0097-FROMGIT-drm-imagination-Move-repeated-job-fence-chec.patch -0098-FROMGIT-drm-imagination-Update-check-to-skip-prepare.patch -0099-FROMGIT-drm-imagination-Minor-improvements-to-job-su.patch -0100-FROMGIT-perf-riscv-Fix-discarded-const-qualifier-in-.patch -0101-FROMLIST-riscv-errata-Add-ERRATA_THEAD_WRITE_ONCE-fi.patch -0102-FROMLIST-PCI-Add-per-device-flag-to-disable-native-P.patch -0103-FROMLIST-PCI-Add-quirk-to-disable-PCIe-port-services.patch -0104-FROMLIST-PCI-Release-BAR0-of-an-integrated-bridge-to.patch -0105-BACKPORT-FROMLIST-drm-ttm-save-the-device-s-DMA-cohe.patch -0106-BACKPORT-FROMLIST-drm-ttm-downgrade-cached-to-write_.patch -0107-FROMLIST-NFU-riscv-dts-thead-Add-CPU-clock-and-OPP-t.patch -0108-FROMLIST-rust-export-BINDGEN_TARGET-from-a-separate-.patch -0109-FROMLIST-rust-generate-a-fatal-error-if-BINDGEN_TARG.patch -0110-FROMLIST-rust-add-a-Kconfig-function-to-test-for-sup.patch -0111-FROMLIST-RISC-V-handle-extension-configs-for-bindgen.patch -0112-FROMLIST-dt-bindings-mmc-spacemit-sdhci-add-reset-su.patch -0113-FROMLIST-mfd-simple-mfd-i2c-add-a-reboot-cell-for-th.patch -0114-FROMLIST-regulator-spacemit-MFD_SPACEMIT_P1-as-depen.patch -0115-FROMLIST-rtc-spacemit-default-module-when-MFD_SPACEM.patch -0116-FROMLIST-spi-dt-bindings-add-SpacemiT-K1-SPI-support.patch -0117-FROMLIST-spi-spacemit-introduce-SpacemiT-K1-SPI-cont.patch -0118-FROMLIST-riscv-dts-spacemit-define-a-SPI-controller-.patch -0119-FROMLIST-dt-bindings-thermal-Add-SpacemiT-K1-thermal.patch -0120-FROMLIST-thermal-spacemit-k1-Add-thermal-sensor-supp.patch -0121-FROMLIST-riscv-dts-spacemit-Add-thermal-sensor-for-K.patch -0122-FROMLIST-net-spacemit-Free-rings-of-memory-after-unm.patch -0123-FROMLIST-riscv-mm-Extract-helper-mark_new_valid_map.patch -0124-FROMLIST-riscv-kfence-Call-mark_new_valid_map-for-kf.patch -0125-FROMLIST-riscv-mm-Rename-new_vmalloc-into-new_valid_.patch -0126-FROMLIST-riscv-mm-Use-the-bitmap-API-for-new_valid_m.patch -0127-FROMLIST-riscv-mm-Unconditionally-sfence.vma-for-spu.patch -0128-FROMLIST-dt-bindings-phy-spacemit-k3-add-USB2-PHY-su.patch -0129-FROMLIST-phy-k1-usb-k3-add-USB2-PHY-support.patch -0130-FROMLIST-cpufreq-dt-platdev-Add-SpacemiT-K1-SoC-to-t.patch -0131-FROMLIST-riscv-dts-spacemit-Add-cpu-scaling-for-K1-S.patch -0132-FROMLIST-riscv-mm-Define-DIRECT_MAP_PHYSMEM_END.patch -0133-FROMLIST-drm-verisilicon-add-max-cursor-size-to-HWDB.patch -0134-FROMLIST-drm-verisilicon-add-support-for-cursor-plan.patch -0135-FROMLIST-riscv-add-UltraRISC-SoC-family-Kconfig-supp.patch -0136-FROMLIST-dt-bindings-PCI-Add-UltraRISC-DP1000-PCIe-c.patch -0137-FROMLIST-PCI-ultrarisc-Add-UltraRISC-DP1000-PCIe-Roo.patch -0138-FROMLIST-serial-8250_dwlib-move-DesignWare-register-.patch -0139-FROMLIST-serial-8250_dw-build-Renesas-RZN1-CPR-value.patch -0140-FROMLIST-dt-bindings-serial-snps-dw-apb-uart-Add-Ult.patch -0141-FROMLIST-serial-8250_dw-Use-a-fixed-CPR-value-for-Ul.patch -0142-FROMLIST-riscv-disable-local-interrupts-and-stop-oth.patch -0143-FROMLIST-drm-bridge-th1520-dw-hdmi-Fix-error-check-o.patch -0144-FROMLIST-drm-bridge-th1520-dw-hdmi-Fix-remove-callba.patch -0145-FROMLIST-riscv-dts-spacemit-Enable-i2c8-adapter-for-.patch -0146-FROMLIST-riscv-dts-spacemit-Define-the-P1-PMIC-regul.patch -0147-FROMLIST-riscv-dts-spacemit-Enable-USB3.0-PCIe-on-Or.patch -0148-FROMLIST-dt-bindings-dmaengine-Add-SpacemiT-K3-DMA-c.patch -0149-FROMLIST-dmaengine-mmp_pdma-refactor-DRCMR-access-wi.patch -0150-FROMLIST-dmaengine-mmp_pdma-add-SpacemiT-K3-support.patch -0151-FROMLIST-riscv-dts-spacemit-Add-PDMA-controller-node.patch -0152-FROMLIST-dt-bindings-pci-sophgo-Add-dma-coherent-pro.patch -0153-FROMLIST-riscv-dts-sophgo-Add-dma-coherent-to-SG2042.patch -0154-FROMLIST-riscv-mm-fix-SWIOTLB-initialization-for-sys.patch -0155-FROMLIST-riscv-dts-spacemit-k1-bananapi-f3-Add-vcc5v.patch -0156-FROMLIST-riscv-dts-spacemit-k1-bananapi-f3-Update-US.patch -0157-FROMLIST-riscv-dts-spacemit-k1-bananapi-f3-Correct-U.patch -0158-FROMLIST-riscv-dts-sophgo-sg2044-use-hex-for-CPU-uni.patch -0159-FROMLIST-riscv-dts-sophgo-sg2042-use-hex-for-CPU-uni.patch -0160-FROMLIST-riscv-Fix-fast_unaligned_access_speed_key-n.patch -0161-FROMLIST-riscv-dts-sophgo-reduce-SG2042-MSI-count-to.patch -0162-FROMLIST-dt-bindings-pwm-marvell-pxa-pwm-Add-Spacemi.patch -0163-FROMLIST-pwm-pxa-Add-optional-bus-clock.patch -0164-FROMLIST-riscv-ftrace-select-HAVE_BUILDTIME_MCOUNT_S.patch -0165-FROMLIST-riscv-dts-spacemit-enable-USB3-on-OrangePi-.patch -0166-FROMLIST-dts-riscv-spacemit-correct-32k-clock-freque.patch -0167-FROMLIST-ASoC-dt-bindings-add-SpacemiT-K3-SoC-compat.patch -0168-FROMLIST-ASoC-spacemit-add-K3-SoC-support-with-addit.patch -0169-FROMLIST-ASoC-soc-dai-add-shared-BCLK-clock-for-cros.patch -0170-FROMLIST-ASoC-soc-pcm-constrain-hw_params-when-DAIs-.patch -0171-FROMLIST-ASoC-spacemit-declare-shared-BCLK-for-cross.patch -0172-FROMLIST-spi-spacemit-add-u64-cast-to-NSEC_PER_SEC-t.patch -0173-FROMLIST-dt-bindings-clock-thead-add-TH1520-MISC-sub.patch -0174-FROMLIST-clk-thead-th1520-ap-add-support-for-MISC-su.patch -0175-FROMLIST-riscv-dts-thead-add-device-tree-node-for-MI.patch -0176-FROMLIST-dt-bindings-phy-add-binding-for-T-Head-TH15.patch -0177-FROMLIST-phy-add-a-driver-for-T-Head-TH1520-USB-PHY.patch -0178-FROMLIST-riscv-dts-thead-add-device-nodes-for-USB.patch -0179-FROMLIST-dt-bindings-gpio-dwapb-allow-GPIO-hogs.patch -0180-FROMLIST-dt-bindings-usb-vialab-vl817-allow-ports-pr.patch -0181-FROMLIST-riscv-dts-thead-lpi4a-sort-nodes.patch -0182-FROMLIST-riscv-dts-thead-Add-TH1520-I2C-nodes.patch -0183-FROMLIST-riscv-dts-thead-Add-Lichee-Pi-4A-IO-expansi.patch -0184-FROMLIST-riscv-dts-thead-enable-USB3-ports-on-Lichee.patch -0185-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-add-PMIC-a.patch -0186-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-add-24c04-.patch -0187-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-enable-QSP.patch -0188-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-enable-USB.patch -0189-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-enable-PCI.patch -0190-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-set-defaul.patch -0191-FROMLIST-riscv-dts-spacemit-k3-Add-pwm-support.patch -0192-FROMLIST-riscv-use-sysfs_emit-in-cpu_show_ghostwrite.patch -0193-FROMLIST-clk-spacemit-k3-Switch-to-pll2_d6-as-parent.patch -0194-FROMLIST-clk-spacemit-k3-Fix-PCIe-clock-register-off.patch -0195-FROMLIST-dt-bindings-soc-spacemit-k3-Add-PCIe-DBI-cl.patch -0196-FROMLIST-clk-spacemit-k3-Add-PCIe-DBI-clock.patch -0197-FROMLIST-riscv-dts-spacemit-enable-eMMC-for-OrangePi.patch -0198-FROMLIST-i2c-spacemit-configure-ILCR-IWCR-for-accura.patch -0199-FROMLIST-i2c-spacemit-drop-warning-when-clock-freque.patch -0200-FROMLIST-dt-bindings-mmc-spacemit-sdhci-add-pinctrl-.patch -0201-FROMLIST-mmc-sdhci-of-k1-enable-essential-clock-infr.patch -0202-FROMLIST-mmc-sdhci-of-k1-add-regulator-and-pinctrl-v.patch -0203-FROMLIST-mmc-sdhci-of-k1-add-comprehensive-SDR-tunin.patch -0204-FROMLIST-riscv-dts-spacemit-k1-add-SD-card-controlle.patch -0205-FROMLIST-riscv-dts-spacemit-k1-orangepi-rv2-add-SD-c.patch -0206-FROMLIST-riscv-dts-spacemit-k1-bananapi-f3-add-SD-ca.patch -0207-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-add-SD-car.patch -0208-FROMLIST-riscv-dts-thead-Enable-wifi-on-the-BeagleV-.patch -0209-FROMLIST-riscv-module-Use-generic-cmp_int-instead-of.patch -0210-FROMLIST-iommu-riscv-Advertise-Svpbmt-support-to-gen.patch -0211-FROMLIST-iommupt-Encode-IOMMU_MMIO-IOMMU_CACHE-via-R.patch -0212-FROMLIST-riscv-propagate-insert_resource-result-from.patch -0213-FROMLIST-PCI-spacemit-k1-Add-device-data-support.patch -0214-FROMLIST-PCI-spacemit-k1-Add-multiple-PHY-handles-su.patch -0215-FROMLIST-dt-bindings-PCI-snps-dw-pcie-Add-msi-parent.patch -0216-FROMLIST-dt-bindings-PCI-spacemit-Introduce-Spacemit.patch -0217-FROMLIST-PCI-spacemit-k1-Add-Spacemit-K3-PCIe-host-c.patch -0218-FROMLIST-riscv-dts-spacemit-enable-QSPI-for-OrangePi.patch -0219-FROMLIST-clk-spacemit-k3-fix-USB2-bus-clock.patch -0220-FROMLIST-reset-spacemit-k3-fix-USB2-ahb-reset.patch -0221-FROMLIST-dts-riscv-spacemit-k3-Fix-I-O-power-setting.patch -0222-FROMLIST-riscv-dts-spacemit-set-console-baud-rate-on.patch -0223-FROMLIST-riscv-dts-spacemit-sort-aliases-on-Milk-V-J.patch -0224-FROMLIST-riscv-dts-spacemit-enable-eMMC-on-Milk-V-Ju.patch -0225-FROMLIST-riscv-dts-spacemit-enable-SD-card-support-o.patch -0226-FROMLIST-riscv-dts-spacemit-fix-uboot-partition-offs.patch -0227-FROMLIST-riscv-dts-spacemit-add-QSPI-support-for-K3-.patch -0228-FROMLIST-pinctrl-spacemit-fix-NULL-check-in-spacemit.patch -0229-FROMLIST-riscv-unconditionally-select-ARCH_KEEP_MEMB.patch -0230-FROMLIST-riscv-kexec_file-Constrain-segment-placemen.patch -0231-FROMLIST-dt-bindings-riscv-spacemit-Add-K3-CoM260-IF.patch -0232-FROMLIST-riscv-dts-spacemit-k3-Initial-support-for-C.patch -0233-FROMLIST-riscv-dts-spacemit-enable-PMIC-on-OrangePi-.patch -0234-FROMLIST-riscv-dts-spacemit-set-console-baud-rate-on.patch -0235-FROMLIST-riscv-mm-Call-mark_new_valid_map-after-hotp.patch -0236-XUANTIE-riscv-dts-th1520-add-licheepi4a-16g-support.patch -0237-REVYOS-riscv-dts-th1520-rename-thead-to-xuantie.patch -0238-REVYOS-riscv-dts-th1520-add-xuantie-th1520-mbox-r.patch -0239-SOPHGO-dt-bindings-nvmem-Add-SG2044-eFuse-controller.patch -0240-SOPHGO-nvmem-Add-Sophgo-SG2044-eFuse-driver.patch -0241-SOPHGO-riscv-dts-sophgo-sg2044-Add-eFUSE-device.patch -0242-SOPHGO-riscv-sg2042-errata-Replace-thead-cache-clean.patch -0243-SOPHGO-dts-sg2044-Modify-pcie-bar-address.patch -0244-REVYSR-dt-bindings-net-ultrarisc-dp1000-gmac-Add-sup.patch -0245-REVYSR-net-stmmac-add-support-for-dwmac-5.10a.patch -0246-RVCK-riscv-dts-add-dp1000.dts-for-UltraRIsc-DP1000-S.patch -0247-RVCK-pinctrl-add-pinctrl-dirver-for-UltraRisc-DP1000.patch -0248-RVCK-dts-add-pinctrl-dtsi-dts-for-UltraRisc-DP1000.patch -0249-RVCK-riscv-dp1000-dts-add-the-dts-of-UltraRISC-dp100.patch -0250-RVCK-riscv-dp1000-dts-Move-mmc0-node-from-SoC-to-boa.patch -0251-RVCK-riscv-dp1000-plic-add-plic-early-init-supports.patch -0252-RVCK-riscv-dp1000-dts-Move-chosen-node-from-common-t.patch -0253-RVCK-dts-riscv-ultrarisc-Refactor-DP1000-device-tree.patch -0254-RVCK-riscv-pinctrl-ultrarisc-Implement-pin-configura.patch -0255-RVCK-riscv-dts-dp1000-add-dts-dtsi-for-Milk-V-Titan-.patch -0256-REVYSR-pinctrl-ultrarisc-cleanup-probe-remove.patch -0257-REVYSR-riscv-dp1000-dts-use-ultrarisc-dp1000-pcie-fo.patch -0258-ULTRARISC-hwmon-add-corepvt-driver-of-UltraRISC-DP10.patch -0259-RUYI-SYNC-riscv-dts-dp1000-Update-dp1000.dtsi.patch -0260-RUYI-riscv-dts-spacemit-k3-Add-USB2.0-support.patch -0261-SPACEMIT-riscv-uaccess-don-t-use-vector-if-buffer-is.patch -0262-RUYI-dt-bindings-phy-Add-Spacemit-K3-USB3-PCIe-comb-.patch -0263-RUYI-phy-spacemit-Add-USB3-PCIe-comb-PHY-driver-for-.patch -0264-RUYI-riscv-dts-spacemit-k3-add-USB-controller-and-US.patch -0265-RUYI-riscv-dts-spacemit-k3-Add-PCIe-device-node.patch -0266-RUYI-PCI-add-SpacemiT-vendor-id-and-its-K3-device-id.patch -0267-RUYI-wifi-rtw89-pci-add-SpacemiT-K3-to-36-bit-DMA-al.patch -0268-RUYI-drm-amdgpu-disable-dynamic-PCIe-speed-switch-on.patch -0269-RVCK-driver-clk-k3-keep-some-system-based-clock-alwa.patch -0001-RUYI-mmc-sdhci-of-dwcmshc-Add-support-for-SG2042-FPG.patch +%include %{SOURCE2} %description This is a meta-package that handles standard kernel installation. diff --git a/SPECS/linux/series b/SPECS/linux/series new file mode 100644 index 0000000000..fdc7ba57b2 --- /dev/null +++ b/SPECS/linux/series @@ -0,0 +1,275 @@ +0001-UPSTREAM-rust-clk-implement-Send-and-Sync.patch +0002-UPSTREAM-tyr-remove-impl-Send-Sync-for-TyrData.patch +0003-UPSTREAM-pwm-th1520-remove-impl-Send-Sync-for-Th1520.patch +0004-UPSTREAM-net-spacemit-Remove-unused-buff_addr-fields.patch +0005-UPSTREAM-dt-bindings-net-Add-support-for-Spacemit-K3.patch +0006-UPSTREAM-net-stmmac-platform-Add-snps-dwmac-5.40a-IP.patch +0007-UPSTREAM-net-stmmac-Add-glue-layer-for-Spacemit-K3-S.patch +0008-UPSTREAM-drm-imagination-Improve-handling-of-unknown.patch +0009-UPSTREAM-drm-imagination-Mark-FWCCB_CMD_UPDATE_STATS.patch +0010-UPSTREAM-drm-imagination-Improve-firmware-power-off-.patch +0011-UPSTREAM-drm-imagination-Skip-2nd-thread-DM-associat.patch +0012-UPSTREAM-drm-imagination-Add-missing-rogue-context-r.patch +0013-UPSTREAM-drm-imagination-Implement-handling-of-conte.patch +0014-UPSTREAM-dt-bindings-vendor-prefixes-add-verisilicon.patch +0015-UPSTREAM-dt-bindings-display-add-verisilicon-dc.patch +0016-UPSTREAM-drm-verisilicon-add-a-driver-for-Verisilico.patch +0017-UPSTREAM-dt-bindings-display-bridge-add-binding-for-.patch +0018-UPSTREAM-drm-bridge-add-a-driver-for-T-Head-TH1520-H.patch +0019-UPSTREAM-dt-bindings-mfd-spacemit-p1-Add-individual-.patch +0020-UPSTREAM-regulator-spacemit-p1-Update-supply-names.patch +0021-UPSTREAM-mmc-sdhci-of-k1-add-reset-support.patch +0022-UPSTREAM-dt-bindings-mmc-spacemit-sdhci-add-support-.patch +0023-UPSTREAM-mmc-sdhci-of-k1-spacemit-Add-support-for-K3.patch +0024-UPSTREAM-dt-bindings-hwmon-moortec-mr75203-adapt-mul.patch +0025-UPSTREAM-riscv-dts-thead-add-DPU-and-HDMI-device-tre.patch +0026-UPSTREAM-riscv-dts-thead-lichee-pi-4a-enable-HDMI.patch +0027-UPSTREAM-riscv-dts-thead-th1520-add-coefficients-to-.patch +0028-UPSTREAM-riscv-dts-thead-beaglev-ahead-enable-HDMI-o.patch +0029-UPSTREAM-i2c-spacemit-move-i2c_xfer_msg.patch +0030-UPSTREAM-i2c-spacemit-introduce-pio-for-k1.patch +0031-UPSTREAM-pinctrl-spacemit-return-ENOTSUPP-for-unsupp.patch +0032-UPSTREAM-gpio-spacemit-k1-Add-set_config-callback-su.patch +0033-UPSTREAM-riscv-dts-spacemit-Update-PMIC-supply-prope.patch +0034-UPSTREAM-riscv-dts-spacemit-adapt-regulator-node-nam.patch +0035-UPSTREAM-riscv-dts-spacemit-Add-linux-pci-domain-to-.patch +0036-UPSTREAM-dt-bindings-serial-8250-spacemit-fix-clock-.patch +0037-UPSTREAM-riscv-dts-spacemit-k3-add-clock-tree.patch +0038-UPSTREAM-riscv-dts-spacemit-k3-add-pinctrl-support.patch +0039-UPSTREAM-riscv-dts-spacemit-k3-add-GPIO-support.patch +0040-UPSTREAM-riscv-dts-spacemit-k3-add-full-resource-to-.patch +0041-UPSTREAM-dt-bindings-usb-dwc3-spacemit-add-support-f.patch +0042-UPSTREAM-usb-dwc3-dwc3-generic-plat-spacemit-add-sup.patch +0043-UPSTREAM-usb-dwc3-Add-optional-VBUS-regulator-suppor.patch +0044-UPSTREAM-riscv-dts-spacemit-reorder-phy-nodes-for-K1.patch +0045-UPSTREAM-riscv-dts-spacemit-Add-ethernet-device-for-.patch +0046-UPSTREAM-riscv-dts-spacemit-add-LEDs-for-Milk-V-Jupi.patch +0047-UPSTREAM-riscv-dts-spacemit-add-24c04-eeprom-on-Milk.patch +0048-UPSTREAM-riscv-dts-spacemit-add-i2c-aliases-on-Milk-.patch +0049-UPSTREAM-riscv-dts-spacemit-enable-QSPI-and-add-SPI-.patch +0050-UPSTREAM-riscv-dts-spacemit-enable-USB-3-ports-on-Mi.patch +0051-UPSTREAM-riscv-dts-spacemit-enable-PCIe-ports-on-Mil.patch +0052-UPSTREAM-dt-bindings-i2c-spacemit-k3-Add-compatible.patch +0053-UPSTREAM-dts-riscv-spacemit-k3-Add-i2c-nodes.patch +0054-UPSTREAM-dts-riscv-spacemit-k3-add-P1-PMIC-regulator.patch +0055-UPSTREAM-perf-symbol-Add-RISCV-case-in-get_plt_sizes.patch +0056-UPSTREAM-riscv-Simplify-assignment-for-UTS_MACHINE.patch +0057-UPSTREAM-riscv-increase-COMMAND_LINE_SIZE-value-to-2.patch +0058-UPSTREAM-riscv-acpi-update-FADT-revision-check-to-6..patch +0059-UPSTREAM-riscv-mm-WARN_ON-for-bad-addresses-in-vmemm.patch +0060-UPSTREAM-riscv-enable-HAVE_IOREMAP_PROT.patch +0061-UPSTREAM-lib-string_kunit-add-correctness-test-for-s.patch +0062-UPSTREAM-lib-string_kunit-add-correctness-test-for-s.patch +0063-UPSTREAM-lib-string_kunit-add-correctness-test-for-s.patch +0064-UPSTREAM-lib-string_kunit-add-performance-benchmark-.patch +0065-UPSTREAM-lib-string_kunit-extend-benchmarks-to-strnl.patch +0066-UPSTREAM-riscv-lib-add-strnlen-implementation.patch +0067-UPSTREAM-riscv-lib-add-strchr-implementation.patch +0068-UPSTREAM-riscv-lib-add-strrchr-implementation.patch +0069-UPSTREAM-ASoC-spacemit-move-hw-constraints-from-hw_p.patch +0070-UPSTREAM-ASoC-spacemit-adjust-FIFO-trigger-threshold.patch +0071-UPSTREAM-clk-spacemit-k3-mark-top_dclk-as-CLK_IS_CRI.patch +0072-UPSTREAM-ASoC-spacemit-fix-RX-DMA-params-not-set-whe.patch +0073-UPSTREAM-dt-bindings-usb-Add-support-for-Terminus-FE.patch +0074-UPSTREAM-usb-misc-onboard_usb_dev-Add-Terminus-FE1.1.patch +0075-UPSTREAM-iommupt-Add-the-RISC-V-page-table-format.patch +0076-UPSTREAM-iommu-riscv-Disable-SADE.patch +0077-UPSTREAM-iommu-riscv-Use-the-generic-iommu-page-tabl.patch +0078-UPSTREAM-iommu-riscv-Enable-SVNAPOT-support-for-cont.patch +0079-UPSTREAM-iommu-riscv-Allow-RISC_VIOMMU-to-COMPILE_TE.patch +0080-UPSTREAM-riscv-Define-__riscv_copy_-vec_-words-bytes.patch +0081-UPSTREAM-drm-amd-display-Add-min-clock-init-for-DML2.patch +0082-UPSTREAM-drm-amd-display-Backport-dml21-DC_RUN_WITH_.patch +0083-UPSTREAM-drm-amd-display-Move-FPU-Guards-From-DML-To.patch +0084-UPSTREAM-drm-amd-display-Move-FPU-Guards-From-DML-To.patch +0085-UPSTREAM-drm-amd-display-Move-FPU-Guards-From-DML-To.patch +0086-UPSTREAM-drm-amd-display-Fix-dc_is_fp_enabled-name-m.patch +0087-UPSTREAM-drm-amd-display-Fix-fpu-guard-warning.patch +0088-UPSTREAM-drm-amd-display-Move-dml2_destroy-to-non-FP.patch +0089-UPSTREAM-spi-dt-bindings-fsl-qspi-support-SpacemiT-K.patch +0090-UPSTREAM-RISC-V-KVM-Fix-NULL-pointer-dereference-in-.patch +0091-FROMGIT-drm-imagination-Count-paired-job-fence-as-de.patch +0092-FROMGIT-drm-imagination-Fit-paired-fragment-job-in-t.patch +0093-FROMGIT-drm-imagination-Skip-check-on-paired-job-fen.patch +0094-FROMGIT-drm-imagination-Rename-pvr_queue_fence_is_uf.patch +0095-FROMGIT-drm-imagination-Rename-fence-returned-by-pvr.patch +0096-FROMGIT-drm-imagination-Move-repeated-job-fence-chec.patch +0097-FROMGIT-drm-imagination-Update-check-to-skip-prepare.patch +0098-FROMGIT-drm-imagination-Minor-improvements-to-job-su.patch +0099-FROMGIT-perf-riscv-Fix-discarded-const-qualifier-in-.patch +0100-FROMLIST-riscv-errata-Add-ERRATA_THEAD_WRITE_ONCE-fi.patch +0101-FROMLIST-PCI-Add-per-device-flag-to-disable-native-P.patch +0102-FROMLIST-PCI-Add-quirk-to-disable-PCIe-port-services.patch +0103-FROMLIST-PCI-Release-BAR0-of-an-integrated-bridge-to.patch +0104-BACKPORT-FROMLIST-drm-ttm-save-the-device-s-DMA-cohe.patch +0105-BACKPORT-FROMLIST-drm-ttm-downgrade-cached-to-write_.patch +0106-FROMLIST-NFU-riscv-dts-thead-Add-CPU-clock-and-OPP-t.patch +0107-FROMLIST-rust-export-BINDGEN_TARGET-from-a-separate-.patch +0108-FROMLIST-rust-generate-a-fatal-error-if-BINDGEN_TARG.patch +0109-FROMLIST-rust-add-a-Kconfig-function-to-test-for-sup.patch +0110-FROMLIST-RISC-V-handle-extension-configs-for-bindgen.patch +0111-FROMLIST-dt-bindings-mmc-spacemit-sdhci-add-reset-su.patch +0112-FROMLIST-mfd-simple-mfd-i2c-add-a-reboot-cell-for-th.patch +0113-FROMLIST-regulator-spacemit-MFD_SPACEMIT_P1-as-depen.patch +0114-FROMLIST-rtc-spacemit-default-module-when-MFD_SPACEM.patch +0115-FROMLIST-spi-dt-bindings-add-SpacemiT-K1-SPI-support.patch +0116-FROMLIST-spi-spacemit-introduce-SpacemiT-K1-SPI-cont.patch +0117-FROMLIST-riscv-dts-spacemit-define-a-SPI-controller-.patch +0118-FROMLIST-dt-bindings-thermal-Add-SpacemiT-K1-thermal.patch +0119-FROMLIST-thermal-spacemit-k1-Add-thermal-sensor-supp.patch +0120-FROMLIST-riscv-dts-spacemit-Add-thermal-sensor-for-K.patch +0121-FROMLIST-net-spacemit-Free-rings-of-memory-after-unm.patch +0122-FROMLIST-riscv-mm-Extract-helper-mark_new_valid_map.patch +0123-FROMLIST-riscv-kfence-Call-mark_new_valid_map-for-kf.patch +0124-FROMLIST-riscv-mm-Rename-new_vmalloc-into-new_valid_.patch +0125-FROMLIST-riscv-mm-Use-the-bitmap-API-for-new_valid_m.patch +0126-FROMLIST-riscv-mm-Unconditionally-sfence.vma-for-spu.patch +0127-FROMLIST-dt-bindings-phy-spacemit-k3-add-USB2-PHY-su.patch +0128-FROMLIST-phy-k1-usb-k3-add-USB2-PHY-support.patch +0129-FROMLIST-cpufreq-dt-platdev-Add-SpacemiT-K1-SoC-to-t.patch +0130-FROMLIST-riscv-dts-spacemit-Add-cpu-scaling-for-K1-S.patch +0131-FROMLIST-riscv-mm-Define-DIRECT_MAP_PHYSMEM_END.patch +0132-FROMLIST-drm-verisilicon-add-max-cursor-size-to-HWDB.patch +0133-FROMLIST-drm-verisilicon-add-support-for-cursor-plan.patch +0134-FROMLIST-riscv-add-UltraRISC-SoC-family-Kconfig-supp.patch +0135-FROMLIST-dt-bindings-PCI-Add-UltraRISC-DP1000-PCIe-c.patch +0136-FROMLIST-PCI-ultrarisc-Add-UltraRISC-DP1000-PCIe-Roo.patch +0137-FROMLIST-serial-8250_dwlib-move-DesignWare-register-.patch +0138-FROMLIST-serial-8250_dw-build-Renesas-RZN1-CPR-value.patch +0139-FROMLIST-dt-bindings-serial-snps-dw-apb-uart-Add-Ult.patch +0140-FROMLIST-serial-8250_dw-Use-a-fixed-CPR-value-for-Ul.patch +0141-FROMLIST-riscv-disable-local-interrupts-and-stop-oth.patch +0142-FROMLIST-drm-bridge-th1520-dw-hdmi-Fix-error-check-o.patch +0143-FROMLIST-drm-bridge-th1520-dw-hdmi-Fix-remove-callba.patch +0144-FROMLIST-riscv-dts-spacemit-Enable-i2c8-adapter-for-.patch +0145-FROMLIST-riscv-dts-spacemit-Define-the-P1-PMIC-regul.patch +0146-FROMLIST-riscv-dts-spacemit-Enable-USB3.0-PCIe-on-Or.patch +0147-FROMLIST-dt-bindings-dmaengine-Add-SpacemiT-K3-DMA-c.patch +0148-FROMLIST-dmaengine-mmp_pdma-refactor-DRCMR-access-wi.patch +0149-FROMLIST-dmaengine-mmp_pdma-add-SpacemiT-K3-support.patch +0150-FROMLIST-riscv-dts-spacemit-Add-PDMA-controller-node.patch +0151-FROMLIST-dt-bindings-pci-sophgo-Add-dma-coherent-pro.patch +0152-FROMLIST-riscv-dts-sophgo-Add-dma-coherent-to-SG2042.patch +0153-FROMLIST-riscv-mm-fix-SWIOTLB-initialization-for-sys.patch +0154-FROMLIST-riscv-dts-spacemit-k1-bananapi-f3-Add-vcc5v.patch +0155-FROMLIST-riscv-dts-spacemit-k1-bananapi-f3-Update-US.patch +0156-FROMLIST-riscv-dts-spacemit-k1-bananapi-f3-Correct-U.patch +0157-FROMLIST-riscv-dts-sophgo-sg2044-use-hex-for-CPU-uni.patch +0158-FROMLIST-riscv-dts-sophgo-sg2042-use-hex-for-CPU-uni.patch +0159-FROMLIST-riscv-Fix-fast_unaligned_access_speed_key-n.patch +0160-FROMLIST-riscv-dts-sophgo-reduce-SG2042-MSI-count-to.patch +0161-FROMLIST-dt-bindings-pwm-marvell-pxa-pwm-Add-Spacemi.patch +0162-FROMLIST-pwm-pxa-Add-optional-bus-clock.patch +0163-FROMLIST-riscv-ftrace-select-HAVE_BUILDTIME_MCOUNT_S.patch +0164-FROMLIST-riscv-dts-spacemit-enable-USB3-on-OrangePi-.patch +0165-FROMLIST-dts-riscv-spacemit-correct-32k-clock-freque.patch +0166-FROMLIST-ASoC-dt-bindings-add-SpacemiT-K3-SoC-compat.patch +0167-FROMLIST-ASoC-spacemit-add-K3-SoC-support-with-addit.patch +0168-FROMLIST-ASoC-soc-dai-add-shared-BCLK-clock-for-cros.patch +0169-FROMLIST-ASoC-soc-pcm-constrain-hw_params-when-DAIs-.patch +0170-FROMLIST-ASoC-spacemit-declare-shared-BCLK-for-cross.patch +0171-FROMLIST-spi-spacemit-add-u64-cast-to-NSEC_PER_SEC-t.patch +0172-FROMLIST-dt-bindings-clock-thead-add-TH1520-MISC-sub.patch +0173-FROMLIST-clk-thead-th1520-ap-add-support-for-MISC-su.patch +0174-FROMLIST-riscv-dts-thead-add-device-tree-node-for-MI.patch +0175-FROMLIST-dt-bindings-phy-add-binding-for-T-Head-TH15.patch +0176-FROMLIST-phy-add-a-driver-for-T-Head-TH1520-USB-PHY.patch +0177-FROMLIST-riscv-dts-thead-add-device-nodes-for-USB.patch +0178-FROMLIST-dt-bindings-gpio-dwapb-allow-GPIO-hogs.patch +0179-FROMLIST-dt-bindings-usb-vialab-vl817-allow-ports-pr.patch +0180-FROMLIST-riscv-dts-thead-lpi4a-sort-nodes.patch +0181-FROMLIST-riscv-dts-thead-Add-TH1520-I2C-nodes.patch +0182-FROMLIST-riscv-dts-thead-Add-Lichee-Pi-4A-IO-expansi.patch +0183-FROMLIST-riscv-dts-thead-enable-USB3-ports-on-Lichee.patch +0184-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-add-PMIC-a.patch +0185-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-add-24c04-.patch +0186-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-enable-QSP.patch +0187-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-enable-USB.patch +0188-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-enable-PCI.patch +0189-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-set-defaul.patch +0190-FROMLIST-riscv-dts-spacemit-k3-Add-pwm-support.patch +0191-FROMLIST-riscv-use-sysfs_emit-in-cpu_show_ghostwrite.patch +0192-FROMLIST-clk-spacemit-k3-Switch-to-pll2_d6-as-parent.patch +0193-FROMLIST-clk-spacemit-k3-Fix-PCIe-clock-register-off.patch +0194-FROMLIST-dt-bindings-soc-spacemit-k3-Add-PCIe-DBI-cl.patch +0195-FROMLIST-clk-spacemit-k3-Add-PCIe-DBI-clock.patch +0196-FROMLIST-riscv-dts-spacemit-enable-eMMC-for-OrangePi.patch +0197-FROMLIST-i2c-spacemit-configure-ILCR-IWCR-for-accura.patch +0198-FROMLIST-i2c-spacemit-drop-warning-when-clock-freque.patch +0199-FROMLIST-dt-bindings-mmc-spacemit-sdhci-add-pinctrl-.patch +0200-FROMLIST-mmc-sdhci-of-k1-enable-essential-clock-infr.patch +0201-FROMLIST-mmc-sdhci-of-k1-add-regulator-and-pinctrl-v.patch +0202-FROMLIST-mmc-sdhci-of-k1-add-comprehensive-SDR-tunin.patch +0203-FROMLIST-riscv-dts-spacemit-k1-add-SD-card-controlle.patch +0204-FROMLIST-riscv-dts-spacemit-k1-orangepi-rv2-add-SD-c.patch +0205-FROMLIST-riscv-dts-spacemit-k1-bananapi-f3-add-SD-ca.patch +0206-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-add-SD-car.patch +0207-FROMLIST-riscv-dts-thead-Enable-wifi-on-the-BeagleV-.patch +0208-FROMLIST-riscv-module-Use-generic-cmp_int-instead-of.patch +0209-FROMLIST-iommu-riscv-Advertise-Svpbmt-support-to-gen.patch +0210-FROMLIST-iommupt-Encode-IOMMU_MMIO-IOMMU_CACHE-via-R.patch +0211-FROMLIST-riscv-propagate-insert_resource-result-from.patch +0212-FROMLIST-PCI-spacemit-k1-Add-device-data-support.patch +0213-FROMLIST-PCI-spacemit-k1-Add-multiple-PHY-handles-su.patch +0214-FROMLIST-dt-bindings-PCI-snps-dw-pcie-Add-msi-parent.patch +0215-FROMLIST-dt-bindings-PCI-spacemit-Introduce-Spacemit.patch +0216-FROMLIST-PCI-spacemit-k1-Add-Spacemit-K3-PCIe-host-c.patch +0217-FROMLIST-riscv-dts-spacemit-enable-QSPI-for-OrangePi.patch +0218-FROMLIST-clk-spacemit-k3-fix-USB2-bus-clock.patch +0219-FROMLIST-reset-spacemit-k3-fix-USB2-ahb-reset.patch +0220-FROMLIST-dts-riscv-spacemit-k3-Fix-I-O-power-setting.patch +0221-FROMLIST-riscv-dts-spacemit-set-console-baud-rate-on.patch +0222-FROMLIST-riscv-dts-spacemit-sort-aliases-on-Milk-V-J.patch +0223-FROMLIST-riscv-dts-spacemit-enable-eMMC-on-Milk-V-Ju.patch +0224-FROMLIST-riscv-dts-spacemit-enable-SD-card-support-o.patch +0225-FROMLIST-riscv-dts-spacemit-fix-uboot-partition-offs.patch +0226-FROMLIST-riscv-dts-spacemit-add-QSPI-support-for-K3-.patch +0227-FROMLIST-pinctrl-spacemit-fix-NULL-check-in-spacemit.patch +0228-FROMLIST-riscv-unconditionally-select-ARCH_KEEP_MEMB.patch +0229-FROMLIST-riscv-kexec_file-Constrain-segment-placemen.patch +0230-FROMLIST-dt-bindings-riscv-spacemit-Add-K3-CoM260-IF.patch +0231-FROMLIST-riscv-dts-spacemit-k3-Initial-support-for-C.patch +0232-FROMLIST-riscv-dts-spacemit-enable-PMIC-on-OrangePi-.patch +0233-FROMLIST-riscv-dts-spacemit-set-console-baud-rate-on.patch +0234-FROMLIST-riscv-dts-spacemit-k3-Add-Ziccrse-extension.patch +0235-FROMLIST-RISC-V-KVM-Enhance-the-logging-check-for-mm.patch +0236-FROMLIST-riscv-dts-spacemit-enable-PCIe-on-OrangePi-.patch +0237-FROMLIST-iommu-riscv-Add-dependency-between-iommu-an.patch +0238-BACKPORT-FROMLIST-riscv-track-effective-hardware-PTE.patch +0239-BACKPORT-FROMLIST-riscv-preserve-hardware-updated-A-.patch +0240-FROMLIST-riscv-mm-Avoid-spurious-fault-after-hotplug.patch +0241-XUANTIE-riscv-dts-th1520-add-licheepi4a-16g-support.patch +0242-REVYOS-riscv-dts-th1520-rename-thead-to-xuantie.patch +0243-REVYOS-riscv-dts-th1520-add-xuantie-th1520-mbox-r.patch +0244-SOPHGO-dt-bindings-nvmem-Add-SG2044-eFuse-controller.patch +0245-SOPHGO-nvmem-Add-Sophgo-SG2044-eFuse-driver.patch +0246-SOPHGO-riscv-dts-sophgo-sg2044-Add-eFUSE-device.patch +0247-SOPHGO-riscv-sg2042-errata-Replace-thead-cache-clean.patch +0248-SOPHGO-dts-sg2044-Modify-pcie-bar-address.patch +0249-REVYSR-dt-bindings-net-ultrarisc-dp1000-gmac-Add-sup.patch +0250-REVYSR-net-stmmac-add-support-for-dwmac-5.10a.patch +0251-RVCK-riscv-dts-add-dp1000.dts-for-UltraRIsc-DP1000-S.patch +0252-RVCK-pinctrl-add-pinctrl-dirver-for-UltraRisc-DP1000.patch +0253-RVCK-dts-add-pinctrl-dtsi-dts-for-UltraRisc-DP1000.patch +0254-RVCK-riscv-dp1000-dts-add-the-dts-of-UltraRISC-dp100.patch +0255-RVCK-riscv-dp1000-dts-Move-mmc0-node-from-SoC-to-boa.patch +0256-RVCK-riscv-dp1000-plic-add-plic-early-init-supports.patch +0257-RVCK-riscv-dp1000-dts-Move-chosen-node-from-common-t.patch +0258-RVCK-dts-riscv-ultrarisc-Refactor-DP1000-device-tree.patch +0259-RVCK-riscv-pinctrl-ultrarisc-Implement-pin-configura.patch +0260-RVCK-riscv-dts-dp1000-add-dts-dtsi-for-Milk-V-Titan-.patch +0261-REVYSR-pinctrl-ultrarisc-cleanup-probe-remove.patch +0262-REVYSR-riscv-dp1000-dts-use-ultrarisc-dp1000-pcie-fo.patch +0263-ULTRARISC-hwmon-add-corepvt-driver-of-UltraRISC-DP10.patch +0264-RUYI-SYNC-riscv-dts-dp1000-Update-dp1000.dtsi.patch +0265-RUYI-riscv-dts-spacemit-k3-Add-USB2.0-support.patch +0266-SPACEMIT-riscv-uaccess-don-t-use-vector-if-buffer-is.patch +0267-RUYI-dt-bindings-phy-Add-Spacemit-K3-USB3-PCIe-comb-.patch +0268-RUYI-phy-spacemit-Add-USB3-PCIe-comb-PHY-driver-for-.patch +0269-RUYI-riscv-dts-spacemit-k3-add-USB-controller-and-US.patch +0270-RUYI-riscv-dts-spacemit-k3-Add-PCIe-device-node.patch +0271-RUYI-PCI-add-SpacemiT-vendor-id-and-its-K3-device-id.patch +0272-RUYI-wifi-rtw89-pci-add-SpacemiT-K3-to-36-bit-DMA-al.patch +0273-RUYI-drm-amdgpu-disable-dynamic-PCIe-speed-switch-on.patch +0274-RVCK-driver-clk-k3-keep-some-system-based-clock-alwa.patch +0275-RUYI-mmc-sdhci-of-dwcmshc-Add-support-for-SG2042-FPG.patch From 19975a55418dbf1a95442dadf9c63ed03b8408e6 Mon Sep 17 00:00:00 2001 From: Han Gao Date: Sat, 6 Jun 2026 01:02:34 +0800 Subject: [PATCH 2/3] SPECS: linux-lts: Bump to 6.18.34 & refresh patchset Signed-off-by: Han Gao --- ...m-ttm-add-pgprot-handling-for-RISC-V.patch | 4 +- ...ophgo-dts-add-PCIe-controllers-for-S.patch | 6 +- ...ophgo-dts-enable-PCIe-for-PioneerBox.patch | 5 +- ...ophgo-dts-enable-PCIe-for-SG2042_EVB.patch | 4 +- ...ophgo-dts-enable-PCIe-for-SG2042_EVB.patch | 4 +- ...ts-sophgo-Add-SPI-NOR-node-for-SG204.patch | 4 +- ...ts-sophgo-Enable-SPI-NOR-node-for-Pi.patch | 4 +- ...ts-sophgo-Enable-SPI-NOR-node-for-SG.patch | 4 +- ...ts-sophgo-Enable-SPI-NOR-node-for-SG.patch | 4 +- ...ings-net-sophgo-sg2044-dwmac-add-phy.patch | 6 +- ...ndor-events-riscv-add-T-HEAD-C920V2-.patch | 4 +- ...cros-Add-support-for-imports_ns-to-m.patch | 6 +- ...ort-pwmchip_release-for-external-use.patch | 5 +- ...m-Add-Kconfig-and-basic-data-structu.patch | 4 +- ...t-pwm-Add-complete-abstraction-layer.patch | 4 +- ...m-Add-module_pwm_platform_driver-mac.patch | 4 +- ...m-Drop-wrapping-of-PWM-polarity-and-.patch | 6 +- ...M-rust-pwm-Fix-broken-intra-doc-link.patch | 4 +- ...dd-Rust-driver-for-T-HEAD-TH1520-SoC.patch | 4 +- ...ings-pwm-thead-Add-T-HEAD-TH1520-PWM.patch | 6 +- ...021-UPSTREAM-pwm-Fix-Rust-formatting.patch | 4 +- ...520-Fix-clippy-warning-for-redundant.patch | 6 +- ...520-Use-module_pwm_platform_driver-m.patch | 6 +- ...520-Fix-missing-Kconfig-dependencies.patch | 5 +- ...ts-thead-add-xtheadvector-to-the-th1.patch | 4 +- ...scv-dts-thead-add-ziccrse-for-th1520.patch | 4 +- ...M-riscv-dts-thead-add-zfh-for-th1520.patch | 4 +- ...cv-dts-thead-Add-PWM-controller-node.patch | 4 +- ...ts-thead-Add-PWM-fan-and-thermal-con.patch | 4 +- ...ndings-vendor-prefixes-Add-UltraRISC.patch | 4 +- ...ings-interrupt-controller-Add-UltraR.patch | 4 +- ...-sifive-plic-Cache-the-interrupt-ena.patch | 4 +- ...-sifive-plic-Add-support-for-UltraRI.patch | 6 +- ...pu_ops_sbi-smp_processor_id-returns-.patch | 6 +- ...bindings-fsl-qspi-support-SpacemiT-K.patch | 6 +- ...bindings-fsl-qspi-add-optional-reset.patch | 4 +- ...-fsl-qspi-add-optional-reset-support.patch | 4 +- ...i-fsl-qspi-switch-predicates-to-bool.patch | 4 +- ...i-fsl-qspi-add-a-clock-disable-quirk.patch | 4 +- ...-qspi-introduce-sfa_size-devtype-dat.patch | 5 +- ...fsl-qspi-support-the-SpacemiT-K1-SoC.patch | 4 +- ...ings-pci-spacemit-Introduce-PCIe-hos.patch | 4 +- ...acemit-Add-SpacemiT-PCIe-host-driver.patch | 5 +- ...-bindings-Add-bindings-for-SpacemiT-.patch | 6 +- ...-spacemit-add-i2s-support-for-K1-SoC.patch | 4 +- ...ts-spacemit-add-UART-pinctrl-combina.patch | 4 +- ...dts-spacemit-enable-the-i2c8-adapter.patch | 5 +- ...dts-spacemit-define-fixed-regulators.patch | 5 +- ...ts-spacemit-define-regulator-constra.patch | 4 +- ...ts-spacemit-enable-the-i2c2-adapter-.patch | 6 +- ...ts-spacemit-add-24c02-eeprom-on-BPI-.patch | 4 +- ...ts-spacemit-add-i2c-aliases-on-BPI-F.patch | 4 +- ...ts-spacemit-add-Ethernet-and-PDMA-to.patch | 6 +- ...ts-spacemit-add-MusePi-Pro-board-dev.patch | 4 +- ...ts-spacemit-enable-K1-SoC-QSPI-on-BP.patch | 4 +- ...ts-spacemit-Add-OrangePi-R2S-board-d.patch | 6 +- ...riscv-dts-spacemit-reorder-i2c2-node.patch | 4 +- ...ts-spacemit-define-all-missing-I2C-c.patch | 6 +- ...cemit-MFD_SPACEMIT_P1-as-dependencie.patch | 5 +- ...ple-mfd-i2c-Remove-select-I2C_K1-fro.patch | 6 +- ...reset-spacemit-p1-add-driver-for-pow.patch | 4 +- ...emove-irqflags.h-inclusion-in-asm-bi.patch | 4 +- ...tomic.h-use-RISCV_FULL_BARRIER-in-_a.patch | 4 +- ...mb-buffers-Sanitize-output-on-errors.patch | 4 +- ...b-buffers-Provide-helper-to-set-pitc.patch | 6 +- ...REAM-drm-hypervdrm-Use-vblank-timer.patch} | 4 +- ...UPSTREAM-drm-vblank-Add-vblank-timer.patch | 533 --------------- ...Convert-the-boolean-no_64bit_msi-fl.patch} | 6 +- ...ank-Add-CRTC-helpers-for-simple-use-.patch | 174 ----- ...Check-the-device-specific-address-m.patch} | 4 +- ...m-vkms-Convert-to-DRM-s-vblank-timer.patch | 172 ----- ...on-Make-MSI-address-limit-based-on-.patch} | 4 +- ...-intel-Make-MSI-address-limit-based.patch} | 6 +- ...s-sophgo-enable-hardware-clock-RTC-.patch} | 4 +- ...s-sophgo-Move-PLIC-and-CLINT-node-i.patch} | 6 +- ...s-sophgo-fix-the-node-order-of-SG20.patch} | 4 +- ...s-spacemit-Enable-i2c8-adapter-for-.patch} | 6 +- ...s-spacemit-Define-fixed-regulators-.patch} | 6 +- ...s-spacemit-Define-the-P1-PMIC-regul.patch} | 4 +- ...ngs-phy-spacemit-Add-SpacemiT-PCIe-.patch} | 4 +- ...ngs-phy-spacemit-Introduce-PCIe-PHY.patch} | 5 +- ...y-spacemit-Introduce-PCIe-combo-PHY.patch} | 4 +- ...v-dts-spacemit-Add-a-PCIe-regulator.patch} | 4 +- ...s-spacemit-PCIe-and-PHY-related-upd.patch} | 4 +- ...ngs-i2c-spacemit-add-optional-reset.patch} | 4 +- ...3-UPSTREAM-i2c-k1-add-reset-support.patch} | 4 +- ...scv-dts-spacemit-add-reset-property.patch} | 4 +- ...ndings-phy-spacemit-add-K1-USB2-PHY.patch} | 4 +- ...emit-support-K1-USB2.0-PHY-controll.patch} | 4 +- ...s-spacemit-Add-USB2-PHY-node-for-K1.patch} | 5 +- ...s-spacemit-Add-DWC3-USB-3.0-control.patch} | 4 +- ...s-spacemit-Enable-USB3.0-on-BananaP.patch} | 4 +- ...ngs-pinctrl-spacemit-convert-drive-.patch} | 6 +- ...ngs-pinctrl-spacemit-add-K3-SoC-sup.patch} | 4 +- ...spacemit-k3-add-initial-pin-support.patch} | 5 +- ...spacemit-k3-adjust-drive-strength-a.patch} | 6 +- ...ngs-pinctrl-spacemit-add-syscon-pro.patch} | 4 +- ...spacemit-support-I-O-power-domain-c.patch} | 4 +- ...s-spacemit-pinctrl-update-register-.patch} | 6 +- ...ngs-riscv-update-ratified-version-o.patch} | 6 +- ...ngs-riscv-Add-B-ISA-extension-descr.patch} | 4 +- ...ngs-riscv-Add-descriptions-for-Za64.patch} | 4 +- ...ngs-riscv-Add-Ssccptr-Sscounterenw-.patch} | 6 +- ...ngs-riscv-Add-Sha-and-its-comprised.patch} | 6 +- ...s-sophgo-sg2044-Add-b-ISA-extension.patch} | 4 +- ...dts-spacemit-k1-Add-b-ISA-extension.patch} | 4 +- ...ngs-riscv-add-SpacemiT-X100-CPU-com.patch} | 4 +- ...indings-timer-add-SpacemiT-K3-CLINT.patch} | 4 +- ...ngs-interrupt-controller-add-Spacem.patch} | 4 +- ...ngs-interrupt-controller-add-Spacem.patch} | 4 +- ...ngs-riscv-spacemit-add-K3-and-Pico-.patch} | 4 +- ...s-spacemit-add-initial-support-for-.patch} | 6 +- ...s-spacemit-add-K3-Pico-ITX-board-su.patch} | 4 +- ...emit-Hide-common-clock-driver-from-.patch} | 6 +- ...-spacemit-prepare-common-ccu-header.patch} | 4 +- ...acemit-extract-common-ccu-functions.patch} | 4 +- ...emit-add-platform-SoC-prefix-to-res.patch} | 4 +- ...et-spacemit-fix-auxiliary-device-id.patch} | 4 +- ...ngs-soc-spacemit-k3-add-clock-suppo.patch} | 4 +- ...emit-ccu_mix-add-inverted-enable-ga.patch} | 4 +- ...pacemit-ccu_pll-add-plla-type-clock.patch} | 4 +- ...k-spacemit-k3-extract-common-header.patch} | 4 +- ...-clk-spacemit-k3-add-the-clock-tree.patch} | 4 +- ...ngs-soc-spacemit-Add-K3-reset-suppo.patch} | 4 +- ...eate-subdirectory-for-SpacemiT-driv.patch} | 4 +- ...acemit-Extract-common-K1-reset-code.patch} | 5 +- ...acemit-Add-SpacemiT-K3-reset-driver.patch} | 5 +- ...ngs-gpio-spacemit-add-compatible-na.patch} | 4 +- ...pacemit-Add-GPIO-support-for-K3-SoC.patch} | 4 +- ...s-spacemit-Disable-ETH-PHY-sleep-mo.patch} | 4 +- ...ngs-clock-thead-th1520-clk-ap-Add-I.patch} | 6 +- ...-thead-th1520-ap-Add-C910-bus-clock.patch} | 4 +- ...d-th1520-ap-Support-setting-PLL-rat.patch} | 4 +- ...d-th1520-ap-Add-macro-to-define-mul.patch} | 4 +- ...d-th1520-ap-Support-CPU-frequency-s.patch} | 6 +- ...emit-display-phy-driver-information.patch} | 5 +- ...cemit-k1-Use-PDR-for-pin-direction-.patch} | 6 +- ...fig-spacemit-add-COMMON_CLK-depende.patch} | 4 +- ...fig-Default-MFD_SPACEMIT_P1-to-m-if.patch} | 6 +- ...ts-spacemit-sdhci-add-reset-support.patch} | 5 +- ...sifive-plic-Fix-call-to-__plic_togg.patch} | 4 +- ...ngs-interrupt-controller-sifive-pli.patch} | 4 +- ...sifive-plic-Handle-number-of-hardwa.patch} | 6 +- ...Use-multiple-iATU-windows-for-mappi.patch} | 4 +- ...42-UPSTREAM-pinctrl-th1520-Fix-typo.patch} | 4 +- ...nce-Add-module-support-for-platform.patch} | 6 +- ...nce-Split-PCIe-controller-header-fi.patch} | 4 +- ...nce-Move-PCIe-RP-common-functions-t.patch} | 6 +- ...nce-Add-support-for-High-Perf-Archi.patch} | 4 +- ...ac-imx-use-phylink-s-interface-mode.patch} | 6 +- ...ac-s32-move-PHY_INTF_SEL_x-definiti.patch} | 4 +- ...ac-add-phy_intf_sel-and-ACTPHYIF-de.patch} | 4 +- ...-stmmac-add-stmmac_get_phy_intf_sel.patch} | 4 +- ...ac-add-support-for-configuring-the-.patch} | 6 +- ...mac-imx-convert-to-PHY_INTF_SEL_xxx.patch} | 5 +- ...ac-imx-use-FIELD_PREP-FIELD_GET-for.patch} | 6 +- ...mac-imx-use-stmmac_get_phy_intf_sel.patch} | 4 +- ...ac-imx-simplify-set_intf_mode-imple.patch} | 4 +- ...ac-imx-cleanup-arguments-for-set_in.patch} | 4 +- ...net-stmmac-imx-use-set_phy_intf_sel.patch} | 4 +- ...pci-Initialize-msi_addr_mask-for-OF.patch} | 4 +- ...I-Initialize-msi_addr_mask-for-OF-c.patch} | 4 +- ...core-Pass-context-data-to-callbacks.patch} | 14 +- ...riscv-aplic-Preserve-APLIC-states-a.patch} | 4 +- ...riscv-aplic-Do-not-clear-ACPI-depen.patch} | 4 +- ...riscv-aplic-Register-syscore-operat.patch} | 4 +- ...ngs-usb-add-missed-compatible-strin.patch} | 6 +- ...-Add-software-managed-properties-fo.patch} | 6 +- ...-dwc3-generic-plat-Add-layerscape-d.patch} | 6 +- ...ngs-usb-Add-ESWIN-EIC7700-USB-contr.patch} | 4 +- ...dwc3-eic7700-Add-EIC7700-USB-driver.patch} | 4 +- ...usb-add-disconnect-function-support.patch} | 5 +- ...I-Add-ASPEED-vendor-ID-to-pci_ids.h.patch} | 4 +- ...PCI_BRIDGE_NO_ALIAS-quirk-for-ASPEE.patch} | 6 +- ...iscv-patch-Avoid-early-phys_to_page.patch} | 4 +- ...Fail-dw_pcie_host_init-if-dw_pcie_w.patch} | 4 +- ...acemit-k3-Decouple-composite-reset-.patch} | 6 +- ...AM-rust-clk-implement-Send-and-Sync.patch} | 4 +- ...r-remove-impl-Send-Sync-for-TyrData.patch} | 4 +- ...EAM-pwm-th1520-fix-CLIPPY-1-warning.patch} | 4 +- ...20-remove-impl-Send-Sync-for-Th1520.patch} | 4 +- ...emit-Remove-unused-buff_addr-fields.patch} | 5 +- ...ngs-net-Add-support-for-Spacemit-K3.patch} | 6 +- ...ac-platform-Add-snps-dwmac-5.40a-IP.patch} | 6 +- ...ac-Add-glue-layer-for-Spacemit-K3-S.patch} | 4 +- ...ination-Improve-handling-of-unknown.patch} | 6 +- ...ination-Mark-FWCCB_CMD_UPDATE_STATS.patch} | 6 +- ...ination-Improve-firmware-power-off-.patch} | 4 +- ...ination-Skip-2nd-thread-DM-associat.patch} | 4 +- ...ination-Add-missing-rogue-context-r.patch} | 4 +- ...ination-Implement-handling-of-conte.patch} | 6 +- ...ngs-vendor-prefixes-add-verisilicon.patch} | 5 +- ...bindings-display-add-verisilicon-dc.patch} | 4 +- ...silicon-add-a-driver-for-Verisilico.patch} | 6 +- ...ngs-display-bridge-add-binding-for-.patch} | 6 +- ...ge-add-a-driver-for-T-Head-TH1520-H.patch} | 4 +- ...ngs-mfd-spacemit-p1-Add-individual-.patch} | 6 +- ...tor-spacemit-p1-Update-supply-names.patch} | 4 +- ...M-mmc-sdhci-of-k1-add-reset-support.patch} | 4 +- ...ngs-mmc-spacemit-sdhci-add-support-.patch} | 6 +- ...i-of-k1-spacemit-Add-support-for-K3.patch} | 6 +- ...nce-Add-flags-for-disabling-ASPM-ca.patch} | 4 +- ...42-Avoid-L0s-and-L1-on-Sophgo-2042-.patch} | 6 +- ...ngs-hwmon-moortec-mr75203-adapt-mul.patch} | 4 +- ...ination-Disable-interrupts-before-s.patch} | 4 +- ...s-thead-add-DPU-and-HDMI-device-tre.patch} | 4 +- ...-dts-thead-lichee-pi-4a-enable-HDMI.patch} | 5 +- ...s-thead-th1520-add-coefficients-to-.patch} | 6 +- ...s-thead-beaglev-ahead-enable-HDMI-o.patch} | 6 +- ...REAM-i2c-spacemit-move-i2c_xfer_msg.patch} | 4 +- ...M-i2c-spacemit-introduce-pio-for-k1.patch} | 4 +- ...spacemit-return-ENOTSUPP-for-unsupp.patch} | 4 +- ...cemit-k1-Add-set_config-callback-su.patch} | 4 +- ...s-spacemit-pcie-fix-missing-power-r.patch} | 6 +- ...s-spacemit-Update-PMIC-supply-prope.patch} | 4 +- ...s-spacemit-adapt-regulator-node-nam.patch} | 4 +- ...s-spacemit-Add-linux-pci-domain-to-.patch} | 6 +- ...ngs-serial-8250-spacemit-fix-clock-.patch} | 6 +- ...iscv-dts-spacemit-k3-add-clock-tree.patch} | 4 +- ...dts-spacemit-k3-add-pinctrl-support.patch} | 5 +- ...cv-dts-spacemit-k3-add-GPIO-support.patch} | 4 +- ...s-spacemit-k3-add-full-resource-to-.patch} | 6 +- ...ngs-usb-dwc3-spacemit-add-support-f.patch} | 6 +- ...-dwc3-generic-plat-spacemit-add-sup.patch} | 4 +- ...-Add-optional-VBUS-regulator-suppor.patch} | 6 +- ...s-spacemit-reorder-phy-nodes-for-K1.patch} | 5 +- ...s-spacemit-drop-incorrect-pinctrl-f.patch} | 6 +- ...s-spacemit-Add-ethernet-device-for-.patch} | 6 +- ...s-spacemit-add-LEDs-for-Milk-V-Jupi.patch} | 4 +- ...s-spacemit-add-24c04-eeprom-on-Milk.patch} | 4 +- ...s-spacemit-add-i2c-aliases-on-Milk-.patch} | 4 +- ...s-spacemit-enable-QSPI-and-add-SPI-.patch} | 6 +- ...s-spacemit-enable-USB-3-ports-on-Mi.patch} | 4 +- ...s-spacemit-enable-PCIe-ports-on-Mil.patch} | 4 +- ...ings-i2c-spacemit-k3-Add-compatible.patch} | 5 +- ...dts-riscv-spacemit-k3-Add-i2c-nodes.patch} | 4 +- ...v-spacemit-k3-add-P1-PMIC-regulator.patch} | 4 +- ...bol-Add-RISCV-case-in-get_plt_sizes.patch} | 5 +- ...Simplify-assignment-for-UTS_MACHINE.patch} | 4 +- ...crease-COMMAND_LINE_SIZE-value-to-2.patch} | 4 +- ...pi-update-FADT-revision-check-to-6..patch} | 5 +- ...-WARN_ON-for-bad-addresses-in-vmemm.patch} | 8 +- ...REAM-riscv-enable-HAVE_IOREMAP_PROT.patch} | 4 +- ...241-UPSTREAM-string-provide-strends.patch} | 4 +- ...ng_kunit-add-correctness-test-for-s.patch} | 4 +- ...ng_kunit-add-correctness-test-for-s.patch} | 4 +- ...ng_kunit-add-correctness-test-for-s.patch} | 4 +- ...ng_kunit-add-performance-benchmark-.patch} | 4 +- ...ng_kunit-extend-benchmarks-to-strnl.patch} | 4 +- ...iscv-lib-add-strnlen-implementation.patch} | 4 +- ...riscv-lib-add-strchr-implementation.patch} | 4 +- ...iscv-lib-add-strrchr-implementation.patch} | 4 +- ...Add-register-and-bitfield-definitio.patch} | 4 +- ...cemit-move-hw-constraints-from-hw_p.patch} | 4 +- ...cemit-adjust-FIFO-trigger-threshold.patch} | 6 +- ...ngs-reset-thead-th1520-reset-Remove.patch} | 6 +- ...ngs-reset-thead-th1520-reset-Add-co.patch} | 4 +- ...1520-Prepare-for-supporting-multipl.patch} | 6 +- ...1520-Support-reset-controllers-in-m.patch} | 4 +- ...s-thead-Add-reset-controllers-of-mo.patch} | 4 +- ...emit-k3-mark-top_dclk-as-CLK_IS_CRI.patch} | 4 +- ...cemit-fix-RX-DMA-params-not-set-whe.patch} | 6 +- ...AM-i2c-spacemit-drop-useless-spaces.patch} | 4 +- ...-pmc-undef-field_-get-prep-before-d.patch} | 4 +- ...at-undef-field_get-before-local-def.patch} | 6 +- ...1200-undef-field_get-before-local-d.patch} | 6 +- ...eed-undef-field_-get-prep-before-lo.patch} | 6 +- ...ad3530r-undef-field_prep-before-loc.patch} | 6 +- ...0614-undef-field_-get-prep-before-l.patch} | 4 +- ...ma35-undef-field_-get-prep-before-l.patch} | 4 +- ...sas-rz-sysc-undef-field_get-before-.patch} | 4 +- ...-audio-undef-field_-get-prep-before.patch} | 4 +- ...-Add-less-checking-__FIELD_-GET-PRE.patch} | 4 +- ...-Add-non-constant-field_-prep-get-h.patch} | 6 +- ...-Convert-to-common-field_-get-prep-.patch} | 4 +- ...at-convert-to-common-field_get-help.patch} | 4 +- ...1200-Convert-to-common-field_get-he.patch} | 4 +- ...eed-Convert-to-common-field_-get-pr.patch} | 4 +- ...Convert-to-common-field_prep-helper.patch} | 4 +- ...0614-Convert-to-common-field_-get-p.patch} | 4 +- ...ma35-Convert-to-common-field_-get-p.patch} | 4 +- ...sas-rz-sysc-Convert-to-common-field.patch} | 4 +- ...-audio-Convert-to-common-field_-get.patch} | 4 +- ...AM-clk-renesas-Use-bitfield-helpers.patch} | 4 +- ...AM-soc-renesas-Use-bitfield-helpers.patch} | 4 +- ...ngs-usb-Add-support-for-Terminus-FE.patch} | 4 +- ...-onboard_usb_dev-Add-Terminus-FE1.1.patch} | 4 +- ...fine-__riscv_copy_-vec_-words-bytes.patch} | 4 +- ...indings-fsl-qspi-support-SpacemiT-K.patch} | 6 +- ...VM-Fix-NULL-pointer-dereference-in-.patch} | 6 +- ...ings-mmc-sdhci-of-dwcmshc-Add-Eswin-.patch | 108 +++ ...ci-of-dwcmshc-Add-support-for-Eswin-.patch | 614 ++++++++++++++++++ ...m-Fixup-no5lvl-failure-when-vaddr-is.patch | 85 --- ...ci-of-dwcmshc-Fix-init-for-AXI-clock.patch | 45 ++ ...ci-of-dwcmshc-Fix-DMA-128MB-boundary.patch | 35 + ...ination-Count-paired-job-fence-as-de.patch | 4 +- ...ination-Fit-paired-fragment-job-in-t.patch | 6 +- ...ination-Skip-check-on-paired-job-fen.patch | 6 +- ...ination-Rename-pvr_queue_fence_is_uf.patch | 4 +- ...ination-Rename-fence-returned-by-pvr.patch | 4 +- ...ination-Move-repeated-job-fence-chec.patch | 6 +- ...ination-Update-check-to-skip-prepare.patch | 4 +- ...ination-Minor-improvements-to-job-su.patch | 4 +- ...cv-Fix-discarded-const-qualifier-in-.patch | 4 +- ...rrata-Add-ERRATA_THEAD_WRITE_ONCE-fi.patch | 4 +- ...-per-device-flag-to-disable-native-P.patch | 4 +- ...-quirk-to-disable-PCIe-port-services.patch | 6 +- ...ease-BAR0-of-an-integrated-bridge-to.patch | 6 +- ...T-drm-ttm-save-the-device-s-DMA-cohe.patch | 4 +- ...T-drm-ttm-downgrade-cached-to-write_.patch | 4 +- ...cv-dts-thead-Add-CPU-clock-and-OPP-t.patch | 6 +- ...port-BINDGEN_TARGET-from-a-separate-.patch | 6 +- ...nerate-a-fatal-error-if-BINDGEN_TARG.patch | 6 +- ...d-a-Kconfig-function-to-test-for-sup.patch | 4 +- ...handle-extension-configs-for-bindgen.patch | 6 +- ...ings-mmc-spacemit-sdhci-add-reset-su.patch | 4 +- ...ple-mfd-i2c-add-a-reboot-cell-for-th.patch | 6 +- ...or-spacemit-MFD_SPACEMIT_P1-as-depen.patch | 4 +- ...cemit-default-module-when-MFD_SPACEM.patch | 4 +- ...bindings-add-SpacemiT-K1-SPI-support.patch | 5 +- ...cemit-introduce-SpacemiT-K1-SPI-cont.patch | 4 +- ...ts-spacemit-define-a-SPI-controller-.patch | 6 +- ...ings-thermal-Add-SpacemiT-K1-thermal.patch | 6 +- ...-spacemit-k1-Add-thermal-sensor-supp.patch | 4 +- ...ts-spacemit-Add-thermal-sensor-for-K.patch | 6 +- ...cemit-Free-rings-of-memory-after-unm.patch | 4 +- ...mm-Extract-helper-mark_new_valid_map.patch | 5 +- ...fence-Call-mark_new_valid_map-for-kf.patch | 6 +- ...m-Rename-new_vmalloc-into-new_valid_.patch | 4 +- ...m-Use-the-bitmap-API-for-new_valid_m.patch | 4 +- ...m-Unconditionally-sfence.vma-for-spu.patch | 4 +- ...ings-phy-spacemit-k3-add-USB2-PHY-su.patch | 6 +- ...T-phy-k1-usb-k3-add-USB2-PHY-support.patch | 4 +- ...-dt-platdev-Add-SpacemiT-K1-SoC-to-t.patch | 4 +- ...ts-spacemit-Add-cpu-scaling-for-K1-S.patch | 6 +- ...scv-mm-Define-DIRECT_MAP_PHYSMEM_END.patch | 4 +- ...isilicon-add-max-cursor-size-to-HWDB.patch | 5 +- ...isilicon-add-support-for-cursor-plan.patch | 4 +- ...dd-UltraRISC-SoC-family-Kconfig-supp.patch | 4 +- ...ings-PCI-Add-UltraRISC-DP1000-PCIe-c.patch | 4 +- ...rarisc-Add-UltraRISC-DP1000-PCIe-Roo.patch | 6 +- ...8250_dwlib-move-DesignWare-register-.patch | 6 +- ...8250_dw-build-Renesas-RZN1-CPR-value.patch | 6 +- ...ings-serial-snps-dw-apb-uart-Add-Ult.patch | 4 +- ...8250_dw-Use-a-fixed-CPR-value-for-Ul.patch | 4 +- ...isable-local-interrupts-and-stop-oth.patch | 6 +- ...dge-th1520-dw-hdmi-Fix-error-check-o.patch | 6 +- ...dge-th1520-dw-hdmi-Fix-remove-callba.patch | 4 +- ...ts-spacemit-Enable-i2c8-adapter-for-.patch | 6 +- ...ts-spacemit-Define-the-P1-PMIC-regul.patch | 4 +- ...ts-spacemit-Enable-USB3.0-PCIe-on-Or.patch | 4 +- ...ings-dmaengine-Add-SpacemiT-K3-DMA-c.patch | 4 +- ...ne-mmp_pdma-refactor-DRCMR-access-wi.patch | 4 +- ...ine-mmp_pdma-add-SpacemiT-K3-support.patch | 5 +- ...ts-spacemit-Add-PDMA-controller-node.patch | 6 +- ...ings-pci-sophgo-Add-dma-coherent-pro.patch | 4 +- ...ts-sophgo-Add-dma-coherent-to-SG2042.patch | 6 +- ...m-fix-SWIOTLB-initialization-for-sys.patch | 4 +- ...ts-spacemit-k1-bananapi-f3-Add-vcc5v.patch | 4 +- ...ts-spacemit-k1-bananapi-f3-Update-US.patch | 6 +- ...ts-spacemit-k1-bananapi-f3-Correct-U.patch | 6 +- ...ts-sophgo-sg2044-use-hex-for-CPU-uni.patch | 4 +- ...ts-sophgo-sg2042-use-hex-for-CPU-uni.patch | 4 +- ...ix-fast_unaligned_access_speed_key-n.patch | 6 +- ...ts-sophgo-reduce-SG2042-MSI-count-to.patch | 6 +- ...ings-pwm-marvell-pxa-pwm-Add-Spacemi.patch | 4 +- ...MLIST-pwm-pxa-Add-optional-bus-clock.patch | 4 +- ...trace-select-HAVE_BUILDTIME_MCOUNT_S.patch | 4 +- ...ts-spacemit-enable-USB3-on-OrangePi-.patch | 6 +- ...cv-spacemit-correct-32k-clock-freque.patch | 4 +- ...-bindings-add-SpacemiT-K3-SoC-compat.patch | 4 +- ...acemit-add-K3-SoC-support-with-addit.patch | 4 +- ...c-dai-add-shared-BCLK-clock-for-cros.patch | 4 +- ...c-pcm-constrain-hw_params-when-DAIs-.patch | 6 +- ...acemit-declare-shared-BCLK-for-cross.patch | 4 +- ...cemit-add-u64-cast-to-NSEC_PER_SEC-t.patch | 6 +- ...ings-clock-thead-add-TH1520-MISC-sub.patch | 4 +- ...ad-th1520-ap-add-support-for-MISC-su.patch | 4 +- ...ts-thead-add-device-tree-node-for-MI.patch | 4 +- ...ings-phy-add-binding-for-T-Head-TH15.patch | 4 +- ...d-a-driver-for-T-Head-TH1520-USB-PHY.patch | 4 +- ...v-dts-thead-add-device-nodes-for-USB.patch | 4 +- ...-bindings-gpio-dwapb-allow-GPIO-hogs.patch | 4 +- ...ings-usb-vialab-vl817-allow-ports-pr.patch | 4 +- ...IST-riscv-dts-thead-lpi4a-sort-nodes.patch | 4 +- ...riscv-dts-thead-Add-TH1520-I2C-nodes.patch | 4 +- ...ts-thead-Add-Lichee-Pi-4A-IO-expansi.patch | 4 +- ...ts-thead-enable-USB3-ports-on-Lichee.patch | 6 +- ...ts-spacemit-k1-musepi-pro-add-PMIC-a.patch | 6 +- ...ts-spacemit-k1-musepi-pro-add-24c04-.patch | 6 +- ...ts-spacemit-k1-musepi-pro-enable-QSP.patch | 4 +- ...ts-spacemit-k1-musepi-pro-enable-USB.patch | 4 +- ...ts-spacemit-k1-musepi-pro-enable-PCI.patch | 4 +- ...ts-spacemit-k1-musepi-pro-set-defaul.patch | 4 +- ...iscv-dts-spacemit-k3-Add-pwm-support.patch | 4 +- ...se-sysfs_emit-in-cpu_show_ghostwrite.patch | 5 +- ...cemit-k3-Switch-to-pll2_d6-as-parent.patch | 6 +- ...cemit-k3-Fix-PCIe-clock-register-off.patch | 4 +- ...ings-soc-spacemit-k3-Add-PCIe-DBI-cl.patch | 6 +- ...T-clk-spacemit-k3-Add-PCIe-DBI-clock.patch | 4 +- ...ts-spacemit-enable-eMMC-for-OrangePi.patch | 6 +- ...cemit-configure-ILCR-IWCR-for-accura.patch | 4 +- ...cemit-drop-warning-when-clock-freque.patch | 4 +- ...ings-mmc-spacemit-sdhci-add-pinctrl-.patch | 6 +- ...ci-of-k1-enable-essential-clock-infr.patch | 4 +- ...ci-of-k1-add-regulator-and-pinctrl-v.patch | 4 +- ...ci-of-k1-add-comprehensive-SDR-tunin.patch | 6 +- ...ts-spacemit-k1-add-SD-card-controlle.patch | 4 +- ...ts-spacemit-k1-orangepi-rv2-add-SD-c.patch | 6 +- ...ts-spacemit-k1-bananapi-f3-add-SD-ca.patch | 6 +- ...ts-spacemit-k1-musepi-pro-add-SD-car.patch | 4 +- ...ts-thead-Enable-wifi-on-the-BeagleV-.patch | 4 +- ...odule-Use-generic-cmp_int-instead-of.patch | 6 +- ...ropagate-insert_resource-result-from.patch | 6 +- ...-spacemit-k1-Add-device-data-support.patch | 4 +- ...cemit-k1-Add-multiple-PHY-handles-su.patch | 4 +- ...ings-PCI-snps-dw-pcie-Add-msi-parent.patch | 6 +- ...ings-PCI-spacemit-Introduce-Spacemit.patch | 6 +- ...cemit-k1-Add-Spacemit-K3-PCIe-host-c.patch | 4 +- ...ts-spacemit-enable-QSPI-for-OrangePi.patch | 6 +- ...T-clk-spacemit-k3-fix-USB2-bus-clock.patch | 4 +- ...reset-spacemit-k3-fix-USB2-ahb-reset.patch | 4 +- ...cv-spacemit-k3-Fix-I-O-power-setting.patch | 4 +- ...ts-spacemit-set-console-baud-rate-on.patch | 6 +- ...ts-spacemit-sort-aliases-on-Milk-V-J.patch | 6 +- ...ts-spacemit-enable-eMMC-on-Milk-V-Ju.patch | 4 +- ...ts-spacemit-enable-SD-card-support-o.patch | 6 +- ...ts-spacemit-fix-uboot-partition-offs.patch | 4 +- ...ts-spacemit-add-QSPI-support-for-K3-.patch | 6 +- ...-spacemit-fix-NULL-check-in-spacemit.patch | 4 +- ...nconditionally-select-ARCH_KEEP_MEMB.patch | 4 +- ...exec_file-Constrain-segment-placemen.patch | 6 +- ...ings-riscv-spacemit-Add-K3-CoM260-IF.patch | 4 +- ...ts-spacemit-k3-Initial-support-for-C.patch | 6 +- ...ts-spacemit-enable-PMIC-on-OrangePi-.patch | 6 +- ...ts-spacemit-set-console-baud-rate-on.patch | 6 +- ...m-Call-mark_new_valid_map-after-hotp.patch | 4 +- ...ts-spacemit-k3-Add-Ziccrse-extension.patch | 99 +++ ...KVM-Enhance-the-logging-check-for-mm.patch | 52 ++ ...ts-spacemit-enable-PCIe-on-OrangePi-.patch | 75 +++ ...iscv-Add-dependency-between-iommu-an.patch | 105 +++ ...s-th1520-add-licheepi4a-16g-support.patch} | 5 +- ...-dts-th1520-rename-thead-to-xuantie.patch} | 4 +- ...ts-th1520-add-xuantie-th1520-mbox-r.patch} | 4 +- ...s-nvmem-Add-SG2044-eFuse-controller.patch} | 5 +- ...vmem-Add-Sophgo-SG2044-eFuse-driver.patch} | 4 +- ...-dts-sophgo-sg2044-Add-eFUSE-device.patch} | 4 +- ...-dts-sg2044-Modify-pcie-bar-address.patch} | 4 +- ...42-errata-Replace-thead-cache-clean.patch} | 6 +- ...s-net-ultrarisc-dp1000-gmac-Add-sup.patch} | 4 +- ...-stmmac-add-support-for-dwmac-5.10a.patch} | 4 +- ...d-dp1000.dts-for-UltraRIsc-DP1000-S.patch} | 5 +- ...pinctrl-dirver-for-UltraRisc-DP1000.patch} | 5 +- ...nctrl-dtsi-dts-for-UltraRisc-DP1000.patch} | 4 +- ...-dts-add-the-dts-of-UltraRISC-dp100.patch} | 4 +- ...-dts-Move-mmc0-node-from-SoC-to-boa.patch} | 4 +- ...0-plic-add-plic-early-init-supports.patch} | 5 +- ...-dts-Move-chosen-node-from-common-t.patch} | 6 +- ...trarisc-Refactor-DP1000-device-tree.patch} | 6 +- ...l-ultrarisc-Implement-pin-configura.patch} | 4 +- ...1000-add-dts-dtsi-for-Milk-V-Titan-.patch} | 6 +- ...ctrl-ultrarisc-cleanup-probe-remove.patch} | 4 +- ...00-dts-use-ultrarisc-dp1000-pcie-fo.patch} | 4 +- ...dd-corepvt-driver-of-UltraRISC-DP10.patch} | 5 +- ...riscv-dts-dp1000-Update-dp1000.dtsi.patch} | 4 +- ...-dts-spacemit-k3-Add-USB2.0-support.patch} | 6 +- ...ccess-don-t-use-vector-if-buffer-is.patch} | 6 +- ...phy-Add-Spacemit-K3-USB3-PCIe-comb-.patch} | 6 +- ...-Add-USB3-PCIe-comb-PHY-driver-for-.patch} | 6 +- ...acemit-k3-add-USB-controller-and-US.patch} | 8 +- ...ts-spacemit-k3-Add-PCIe-device-node.patch} | 6 +- ...emiT-vendor-id-and-its-K3-device-id.patch} | 6 +- ...ci-add-SpacemiT-K3-to-36-bit-DMA-al.patch} | 4 +- ...isable-dynamic-PCIe-speed-switch-on.patch} | 10 +- ...3-keep-some-system-based-clock-alwa.patch} | 4 +- ...-dwcmshc-Add-support-for-SG2042-FPG.patch} | 34 +- SPECS/linux-lts/linux-lts.spec | 474 +------------- SPECS/linux-lts/series | 472 ++++++++++++++ 478 files changed, 2706 insertions(+), 2567 deletions(-) rename SPECS/linux-lts/{0069-UPSTREAM-drm-hypervdrm-Use-vblank-timer.patch => 0066-UPSTREAM-drm-hypervdrm-Use-vblank-timer.patch} (94%) delete mode 100644 SPECS/linux-lts/0066-UPSTREAM-drm-vblank-Add-vblank-timer.patch rename SPECS/linux-lts/{0070-UPSTREAM-PCI-MSI-Convert-the-boolean-no_64bit_msi-fl.patch => 0067-UPSTREAM-PCI-MSI-Convert-the-boolean-no_64bit_msi-fl.patch} (97%) delete mode 100644 SPECS/linux-lts/0067-UPSTREAM-drm-vblank-Add-CRTC-helpers-for-simple-use-.patch rename SPECS/linux-lts/{0071-UPSTREAM-PCI-MSI-Check-the-device-specific-address-m.patch => 0068-UPSTREAM-PCI-MSI-Check-the-device-specific-address-m.patch} (92%) delete mode 100644 SPECS/linux-lts/0068-UPSTREAM-drm-vkms-Convert-to-DRM-s-vblank-timer.patch rename SPECS/linux-lts/{0072-UPSTREAM-drm-radeon-Make-MSI-address-limit-based-on-.patch => 0069-UPSTREAM-drm-radeon-Make-MSI-address-limit-based-on-.patch} (95%) rename SPECS/linux-lts/{0073-UPSTREAM-ALSA-hda-intel-Make-MSI-address-limit-based.patch => 0070-UPSTREAM-ALSA-hda-intel-Make-MSI-address-limit-based.patch} (93%) rename SPECS/linux-lts/{0074-UPSTREAM-riscv-dts-sophgo-enable-hardware-clock-RTC-.patch => 0071-UPSTREAM-riscv-dts-sophgo-enable-hardware-clock-RTC-.patch} (92%) rename SPECS/linux-lts/{0075-UPSTREAM-riscv-dts-sophgo-Move-PLIC-and-CLINT-node-i.patch => 0072-UPSTREAM-riscv-dts-sophgo-Move-PLIC-and-CLINT-node-i.patch} (99%) rename SPECS/linux-lts/{0076-UPSTREAM-riscv-dts-sophgo-fix-the-node-order-of-SG20.patch => 0073-UPSTREAM-riscv-dts-sophgo-fix-the-node-order-of-SG20.patch} (98%) rename SPECS/linux-lts/{0077-UPSTREAM-riscv-dts-spacemit-Enable-i2c8-adapter-for-.patch => 0074-UPSTREAM-riscv-dts-spacemit-Enable-i2c8-adapter-for-.patch} (87%) rename SPECS/linux-lts/{0078-UPSTREAM-riscv-dts-spacemit-Define-fixed-regulators-.patch => 0075-UPSTREAM-riscv-dts-spacemit-Define-fixed-regulators-.patch} (89%) rename SPECS/linux-lts/{0079-UPSTREAM-riscv-dts-spacemit-Define-the-P1-PMIC-regul.patch => 0076-UPSTREAM-riscv-dts-spacemit-Define-the-P1-PMIC-regul.patch} (96%) rename SPECS/linux-lts/{0080-UPSTREAM-dt-bindings-phy-spacemit-Add-SpacemiT-PCIe-.patch => 0077-UPSTREAM-dt-bindings-phy-spacemit-Add-SpacemiT-PCIe-.patch} (97%) rename SPECS/linux-lts/{0081-UPSTREAM-dt-bindings-phy-spacemit-Introduce-PCIe-PHY.patch => 0078-UPSTREAM-dt-bindings-phy-spacemit-Introduce-PCIe-PHY.patch} (95%) rename SPECS/linux-lts/{0082-UPSTREAM-phy-spacemit-Introduce-PCIe-combo-PHY.patch => 0079-UPSTREAM-phy-spacemit-Introduce-PCIe-combo-PHY.patch} (99%) rename SPECS/linux-lts/{0083-UPSTREAM-riscv-dts-spacemit-Add-a-PCIe-regulator.patch => 0080-UPSTREAM-riscv-dts-spacemit-Add-a-PCIe-regulator.patch} (90%) rename SPECS/linux-lts/{0084-UPSTREAM-riscv-dts-spacemit-PCIe-and-PHY-related-upd.patch => 0081-UPSTREAM-riscv-dts-spacemit-PCIe-and-PHY-related-upd.patch} (98%) rename SPECS/linux-lts/{0085-UPSTREAM-dt-bindings-i2c-spacemit-add-optional-reset.patch => 0082-UPSTREAM-dt-bindings-i2c-spacemit-add-optional-reset.patch} (89%) rename SPECS/linux-lts/{0086-UPSTREAM-i2c-k1-add-reset-support.patch => 0083-UPSTREAM-i2c-k1-add-reset-support.patch} (93%) rename SPECS/linux-lts/{0087-UPSTREAM-riscv-dts-spacemit-add-reset-property.patch => 0084-UPSTREAM-riscv-dts-spacemit-add-reset-property.patch} (94%) rename SPECS/linux-lts/{0088-UPSTREAM-dt-bindings-phy-spacemit-add-K1-USB2-PHY.patch => 0085-UPSTREAM-dt-bindings-phy-spacemit-add-K1-USB2-PHY.patch} (92%) rename SPECS/linux-lts/{0089-UPSTREAM-phy-spacemit-support-K1-USB2.0-PHY-controll.patch => 0086-UPSTREAM-phy-spacemit-support-K1-USB2.0-PHY-controll.patch} (98%) rename SPECS/linux-lts/{0090-UPSTREAM-riscv-dts-spacemit-Add-USB2-PHY-node-for-K1.patch => 0087-UPSTREAM-riscv-dts-spacemit-Add-USB2-PHY-node-for-K1.patch} (90%) rename SPECS/linux-lts/{0091-UPSTREAM-riscv-dts-spacemit-Add-DWC3-USB-3.0-control.patch => 0088-UPSTREAM-riscv-dts-spacemit-Add-DWC3-USB-3.0-control.patch} (93%) rename SPECS/linux-lts/{0092-UPSTREAM-riscv-dts-spacemit-Enable-USB3.0-on-BananaP.patch => 0089-UPSTREAM-riscv-dts-spacemit-Enable-USB3.0-on-BananaP.patch} (94%) rename SPECS/linux-lts/{0093-UPSTREAM-dt-bindings-pinctrl-spacemit-convert-drive-.patch => 0090-UPSTREAM-dt-bindings-pinctrl-spacemit-convert-drive-.patch} (90%) rename SPECS/linux-lts/{0094-UPSTREAM-dt-bindings-pinctrl-spacemit-add-K3-SoC-sup.patch => 0091-UPSTREAM-dt-bindings-pinctrl-spacemit-add-K3-SoC-sup.patch} (92%) rename SPECS/linux-lts/{0095-UPSTREAM-pinctrl-spacemit-k3-add-initial-pin-support.patch => 0092-UPSTREAM-pinctrl-spacemit-k3-add-initial-pin-support.patch} (99%) rename SPECS/linux-lts/{0096-UPSTREAM-pinctrl-spacemit-k3-adjust-drive-strength-a.patch => 0093-UPSTREAM-pinctrl-spacemit-k3-adjust-drive-strength-a.patch} (98%) rename SPECS/linux-lts/{0097-UPSTREAM-dt-bindings-pinctrl-spacemit-add-syscon-pro.patch => 0094-UPSTREAM-dt-bindings-pinctrl-spacemit-add-syscon-pro.patch} (92%) rename SPECS/linux-lts/{0098-UPSTREAM-pinctrl-spacemit-support-I-O-power-domain-c.patch => 0095-UPSTREAM-pinctrl-spacemit-support-I-O-power-domain-c.patch} (98%) rename SPECS/linux-lts/{0099-UPSTREAM-riscv-dts-spacemit-pinctrl-update-register-.patch => 0096-UPSTREAM-riscv-dts-spacemit-pinctrl-update-register-.patch} (91%) rename SPECS/linux-lts/{0100-UPSTREAM-dt-bindings-riscv-update-ratified-version-o.patch => 0097-UPSTREAM-dt-bindings-riscv-update-ratified-version-o.patch} (95%) rename SPECS/linux-lts/{0101-UPSTREAM-dt-bindings-riscv-Add-B-ISA-extension-descr.patch => 0098-UPSTREAM-dt-bindings-riscv-Add-B-ISA-extension-descr.patch} (95%) rename SPECS/linux-lts/{0102-UPSTREAM-dt-bindings-riscv-Add-descriptions-for-Za64.patch => 0099-UPSTREAM-dt-bindings-riscv-Add-descriptions-for-Za64.patch} (97%) rename SPECS/linux-lts/{0103-UPSTREAM-dt-bindings-riscv-Add-Ssccptr-Sscounterenw-.patch => 0100-UPSTREAM-dt-bindings-riscv-Add-Ssccptr-Sscounterenw-.patch} (95%) rename SPECS/linux-lts/{0104-UPSTREAM-dt-bindings-riscv-Add-Sha-and-its-comprised.patch => 0101-UPSTREAM-dt-bindings-riscv-Add-Sha-and-its-comprised.patch} (97%) rename SPECS/linux-lts/{0105-UPSTREAM-riscv-dts-sophgo-sg2044-Add-b-ISA-extension.patch => 0102-UPSTREAM-riscv-dts-sophgo-sg2044-Add-b-ISA-extension.patch} (99%) rename SPECS/linux-lts/{0106-UPSTREAM-riscv-dts-spacemit-k1-Add-b-ISA-extension.patch => 0103-UPSTREAM-riscv-dts-spacemit-k1-Add-b-ISA-extension.patch} (98%) rename SPECS/linux-lts/{0107-UPSTREAM-dt-bindings-riscv-add-SpacemiT-X100-CPU-com.patch => 0104-UPSTREAM-dt-bindings-riscv-add-SpacemiT-X100-CPU-com.patch} (92%) rename SPECS/linux-lts/{0108-UPSTREAM-dt-bindings-timer-add-SpacemiT-K3-CLINT.patch => 0105-UPSTREAM-dt-bindings-timer-add-SpacemiT-K3-CLINT.patch} (90%) rename SPECS/linux-lts/{0109-UPSTREAM-dt-bindings-interrupt-controller-add-Spacem.patch => 0106-UPSTREAM-dt-bindings-interrupt-controller-add-Spacem.patch} (89%) rename SPECS/linux-lts/{0110-UPSTREAM-dt-bindings-interrupt-controller-add-Spacem.patch => 0107-UPSTREAM-dt-bindings-interrupt-controller-add-Spacem.patch} (89%) rename SPECS/linux-lts/{0111-UPSTREAM-dt-bindings-riscv-spacemit-add-K3-and-Pico-.patch => 0108-UPSTREAM-dt-bindings-riscv-spacemit-add-K3-and-Pico-.patch} (91%) rename SPECS/linux-lts/{0112-UPSTREAM-riscv-dts-spacemit-add-initial-support-for-.patch => 0109-UPSTREAM-riscv-dts-spacemit-add-initial-support-for-.patch} (99%) rename SPECS/linux-lts/{0113-UPSTREAM-riscv-dts-spacemit-add-K3-Pico-ITX-board-su.patch => 0110-UPSTREAM-riscv-dts-spacemit-add-K3-Pico-ITX-board-su.patch} (93%) rename SPECS/linux-lts/{0114-UPSTREAM-clk-spacemit-Hide-common-clock-driver-from-.patch => 0111-UPSTREAM-clk-spacemit-Hide-common-clock-driver-from-.patch} (90%) rename SPECS/linux-lts/{0115-UPSTREAM-clk-spacemit-prepare-common-ccu-header.patch => 0112-UPSTREAM-clk-spacemit-prepare-common-ccu-header.patch} (94%) rename SPECS/linux-lts/{0116-UPSTREAM-clk-spacemit-extract-common-ccu-functions.patch => 0113-UPSTREAM-clk-spacemit-extract-common-ccu-functions.patch} (98%) rename SPECS/linux-lts/{0117-UPSTREAM-clk-spacemit-add-platform-SoC-prefix-to-res.patch => 0114-UPSTREAM-clk-spacemit-add-platform-SoC-prefix-to-res.patch} (94%) rename SPECS/linux-lts/{0118-UPSTREAM-reset-spacemit-fix-auxiliary-device-id.patch => 0115-UPSTREAM-reset-spacemit-fix-auxiliary-device-id.patch} (92%) rename SPECS/linux-lts/{0119-UPSTREAM-dt-bindings-soc-spacemit-k3-add-clock-suppo.patch => 0116-UPSTREAM-dt-bindings-soc-spacemit-k3-add-clock-suppo.patch} (99%) rename SPECS/linux-lts/{0120-UPSTREAM-clk-spacemit-ccu_mix-add-inverted-enable-ga.patch => 0117-UPSTREAM-clk-spacemit-ccu_mix-add-inverted-enable-ga.patch} (96%) rename SPECS/linux-lts/{0121-UPSTREAM-clk-spacemit-ccu_pll-add-plla-type-clock.patch => 0118-UPSTREAM-clk-spacemit-ccu_pll-add-plla-type-clock.patch} (98%) rename SPECS/linux-lts/{0122-UPSTREAM-clk-spacemit-k3-extract-common-header.patch => 0119-UPSTREAM-clk-spacemit-k3-extract-common-header.patch} (98%) rename SPECS/linux-lts/{0123-UPSTREAM-clk-spacemit-k3-add-the-clock-tree.patch => 0120-UPSTREAM-clk-spacemit-k3-add-the-clock-tree.patch} (99%) rename SPECS/linux-lts/{0124-UPSTREAM-dt-bindings-soc-spacemit-Add-K3-reset-suppo.patch => 0121-UPSTREAM-dt-bindings-soc-spacemit-Add-K3-reset-suppo.patch} (98%) rename SPECS/linux-lts/{0125-UPSTREAM-reset-Create-subdirectory-for-SpacemiT-driv.patch => 0122-UPSTREAM-reset-Create-subdirectory-for-SpacemiT-driv.patch} (97%) rename SPECS/linux-lts/{0126-UPSTREAM-reset-spacemit-Extract-common-K1-reset-code.patch => 0123-UPSTREAM-reset-spacemit-Extract-common-K1-reset-code.patch} (98%) rename SPECS/linux-lts/{0127-UPSTREAM-reset-spacemit-Add-SpacemiT-K3-reset-driver.patch => 0124-UPSTREAM-reset-spacemit-Add-SpacemiT-K3-reset-driver.patch} (99%) rename SPECS/linux-lts/{0128-UPSTREAM-dt-bindings-gpio-spacemit-add-compatible-na.patch => 0125-UPSTREAM-dt-bindings-gpio-spacemit-add-compatible-na.patch} (89%) rename SPECS/linux-lts/{0129-UPSTREAM-gpio-spacemit-Add-GPIO-support-for-K3-SoC.patch => 0126-UPSTREAM-gpio-spacemit-Add-GPIO-support-for-K3-SoC.patch} (98%) rename SPECS/linux-lts/{0130-UPSTREAM-riscv-dts-spacemit-Disable-ETH-PHY-sleep-mo.patch => 0127-UPSTREAM-riscv-dts-spacemit-Disable-ETH-PHY-sleep-mo.patch} (92%) rename SPECS/linux-lts/{0131-UPSTREAM-dt-bindings-clock-thead-th1520-clk-ap-Add-I.patch => 0128-UPSTREAM-dt-bindings-clock-thead-th1520-clk-ap-Add-I.patch} (85%) rename SPECS/linux-lts/{0132-UPSTREAM-clk-thead-th1520-ap-Add-C910-bus-clock.patch => 0129-UPSTREAM-clk-thead-th1520-ap-Add-C910-bus-clock.patch} (92%) rename SPECS/linux-lts/{0133-UPSTREAM-clk-thead-th1520-ap-Support-setting-PLL-rat.patch => 0130-UPSTREAM-clk-thead-th1520-ap-Support-setting-PLL-rat.patch} (98%) rename SPECS/linux-lts/{0134-UPSTREAM-clk-thead-th1520-ap-Add-macro-to-define-mul.patch => 0131-UPSTREAM-clk-thead-th1520-ap-Add-macro-to-define-mul.patch} (91%) rename SPECS/linux-lts/{0135-UPSTREAM-clk-thead-th1520-ap-Support-CPU-frequency-s.patch => 0132-UPSTREAM-clk-thead-th1520-ap-Support-CPU-frequency-s.patch} (97%) rename SPECS/linux-lts/{0136-UPSTREAM-net-spacemit-display-phy-driver-information.patch => 0133-UPSTREAM-net-spacemit-display-phy-driver-information.patch} (87%) rename SPECS/linux-lts/{0137-UPSTREAM-gpio-spacemit-k1-Use-PDR-for-pin-direction-.patch => 0134-UPSTREAM-gpio-spacemit-k1-Use-PDR-for-pin-direction-.patch} (95%) rename SPECS/linux-lts/{0138-UPSTREAM-phy-Kconfig-spacemit-add-COMMON_CLK-depende.patch => 0135-UPSTREAM-phy-Kconfig-spacemit-add-COMMON_CLK-depende.patch} (89%) rename SPECS/linux-lts/{0139-UPSTREAM-mfd-Kconfig-Default-MFD_SPACEMIT_P1-to-m-if.patch => 0136-UPSTREAM-mfd-Kconfig-Default-MFD_SPACEMIT_P1-to-m-if.patch} (86%) rename SPECS/linux-lts/{0140-UPSTREAM-riscv-dts-spacemit-sdhci-add-reset-support.patch => 0137-UPSTREAM-riscv-dts-spacemit-sdhci-add-reset-support.patch} (87%) rename SPECS/linux-lts/{0141-UPSTREAM-irqchip-sifive-plic-Fix-call-to-__plic_togg.patch => 0138-UPSTREAM-irqchip-sifive-plic-Fix-call-to-__plic_togg.patch} (93%) rename SPECS/linux-lts/{0142-UPSTREAM-dt-bindings-interrupt-controller-sifive-pli.patch => 0139-UPSTREAM-dt-bindings-interrupt-controller-sifive-pli.patch} (92%) rename SPECS/linux-lts/{0143-UPSTREAM-irqchip-sifive-plic-Handle-number-of-hardwa.patch => 0140-UPSTREAM-irqchip-sifive-plic-Handle-number-of-hardwa.patch} (97%) rename SPECS/linux-lts/{0144-UPSTREAM-PCI-dwc-Use-multiple-iATU-windows-for-mappi.patch => 0141-UPSTREAM-PCI-dwc-Use-multiple-iATU-windows-for-mappi.patch} (97%) rename SPECS/linux-lts/{0145-UPSTREAM-pinctrl-th1520-Fix-typo.patch => 0142-UPSTREAM-pinctrl-th1520-Fix-typo.patch} (91%) rename SPECS/linux-lts/{0146-UPSTREAM-PCI-cadence-Add-module-support-for-platform.patch => 0143-UPSTREAM-PCI-cadence-Add-module-support-for-platform.patch} (94%) rename SPECS/linux-lts/{0147-UPSTREAM-PCI-cadence-Split-PCIe-controller-header-fi.patch => 0144-UPSTREAM-PCI-cadence-Split-PCIe-controller-header-fi.patch} (99%) rename SPECS/linux-lts/{0148-UPSTREAM-PCI-cadence-Move-PCIe-RP-common-functions-t.patch => 0145-UPSTREAM-PCI-cadence-Move-PCIe-RP-common-functions-t.patch} (99%) rename SPECS/linux-lts/{0149-UPSTREAM-PCI-cadence-Add-support-for-High-Perf-Archi.patch => 0146-UPSTREAM-PCI-cadence-Add-support-for-High-Perf-Archi.patch} (99%) rename SPECS/linux-lts/{0150-UPSTREAM-net-stmmac-imx-use-phylink-s-interface-mode.patch => 0147-UPSTREAM-net-stmmac-imx-use-phylink-s-interface-mode.patch} (89%) rename SPECS/linux-lts/{0151-UPSTREAM-net-stmmac-s32-move-PHY_INTF_SEL_x-definiti.patch => 0148-UPSTREAM-net-stmmac-s32-move-PHY_INTF_SEL_x-definiti.patch} (93%) rename SPECS/linux-lts/{0152-UPSTREAM-net-stmmac-add-phy_intf_sel-and-ACTPHYIF-de.patch => 0149-UPSTREAM-net-stmmac-add-phy_intf_sel-and-ACTPHYIF-de.patch} (91%) rename SPECS/linux-lts/{0153-UPSTREAM-net-stmmac-add-stmmac_get_phy_intf_sel.patch => 0150-UPSTREAM-net-stmmac-add-stmmac_get_phy_intf_sel.patch} (94%) rename SPECS/linux-lts/{0154-UPSTREAM-net-stmmac-add-support-for-configuring-the-.patch => 0151-UPSTREAM-net-stmmac-add-support-for-configuring-the-.patch} (95%) rename SPECS/linux-lts/{0155-UPSTREAM-net-stmmac-imx-convert-to-PHY_INTF_SEL_xxx.patch => 0152-UPSTREAM-net-stmmac-imx-convert-to-PHY_INTF_SEL_xxx.patch} (95%) rename SPECS/linux-lts/{0156-UPSTREAM-net-stmmac-imx-use-FIELD_PREP-FIELD_GET-for.patch => 0153-UPSTREAM-net-stmmac-imx-use-FIELD_PREP-FIELD_GET-for.patch} (97%) rename SPECS/linux-lts/{0157-UPSTREAM-net-stmmac-imx-use-stmmac_get_phy_intf_sel.patch => 0154-UPSTREAM-net-stmmac-imx-use-stmmac_get_phy_intf_sel.patch} (97%) rename SPECS/linux-lts/{0158-UPSTREAM-net-stmmac-imx-simplify-set_intf_mode-imple.patch => 0155-UPSTREAM-net-stmmac-imx-simplify-set_intf_mode-imple.patch} (96%) rename SPECS/linux-lts/{0159-UPSTREAM-net-stmmac-imx-cleanup-arguments-for-set_in.patch => 0156-UPSTREAM-net-stmmac-imx-cleanup-arguments-for-set_in.patch} (95%) rename SPECS/linux-lts/{0160-UPSTREAM-net-stmmac-imx-use-set_phy_intf_sel.patch => 0157-UPSTREAM-net-stmmac-imx-use-set_phy_intf_sel.patch} (94%) rename SPECS/linux-lts/{0161-UPSTREAM-powerpc-pci-Initialize-msi_addr_mask-for-OF.patch => 0158-UPSTREAM-powerpc-pci-Initialize-msi_addr_mask-for-OF.patch} (94%) rename SPECS/linux-lts/{0162-UPSTREAM-sparc-PCI-Initialize-msi_addr_mask-for-OF-c.patch => 0159-UPSTREAM-sparc-PCI-Initialize-msi_addr_mask-for-OF-c.patch} (93%) rename SPECS/linux-lts/{0163-UPSTREAM-syscore-Pass-context-data-to-callbacks.patch => 0160-UPSTREAM-syscore-Pass-context-data-to-callbacks.patch} (99%) rename SPECS/linux-lts/{0164-UPSTREAM-irqchip-riscv-aplic-Preserve-APLIC-states-a.patch => 0161-UPSTREAM-irqchip-riscv-aplic-Preserve-APLIC-states-a.patch} (98%) rename SPECS/linux-lts/{0165-UPSTREAM-irqchip-riscv-aplic-Do-not-clear-ACPI-depen.patch => 0162-UPSTREAM-irqchip-riscv-aplic-Do-not-clear-ACPI-depen.patch} (93%) rename SPECS/linux-lts/{0166-UPSTREAM-irqchip-riscv-aplic-Register-syscore-operat.patch => 0163-UPSTREAM-irqchip-riscv-aplic-Register-syscore-operat.patch} (94%) rename SPECS/linux-lts/{0167-UPSTREAM-dt-bindings-usb-add-missed-compatible-strin.patch => 0164-UPSTREAM-dt-bindings-usb-add-missed-compatible-strin.patch} (93%) rename SPECS/linux-lts/{0168-UPSTREAM-usb-dwc3-Add-software-managed-properties-fo.patch => 0165-UPSTREAM-usb-dwc3-Add-software-managed-properties-fo.patch} (96%) rename SPECS/linux-lts/{0169-UPSTREAM-usb-dwc3-dwc3-generic-plat-Add-layerscape-d.patch => 0166-UPSTREAM-usb-dwc3-dwc3-generic-plat-Add-layerscape-d.patch} (93%) rename SPECS/linux-lts/{0170-UPSTREAM-dt-bindings-usb-Add-ESWIN-EIC7700-USB-contr.patch => 0167-UPSTREAM-dt-bindings-usb-Add-ESWIN-EIC7700-USB-contr.patch} (95%) rename SPECS/linux-lts/{0171-UPSTREAM-usb-dwc3-eic7700-Add-EIC7700-USB-driver.patch => 0168-UPSTREAM-usb-dwc3-eic7700-Add-EIC7700-USB-driver.patch} (97%) rename SPECS/linux-lts/{0172-UPSTREAM-phy-k1-usb-add-disconnect-function-support.patch => 0169-UPSTREAM-phy-k1-usb-add-disconnect-function-support.patch} (92%) rename SPECS/linux-lts/{0173-UPSTREAM-PCI-Add-ASPEED-vendor-ID-to-pci_ids.h.patch => 0170-UPSTREAM-PCI-Add-ASPEED-vendor-ID-to-pci_ids.h.patch} (92%) rename SPECS/linux-lts/{0174-UPSTREAM-PCI-Add-PCI_BRIDGE_NO_ALIAS-quirk-for-ASPEE.patch => 0171-UPSTREAM-PCI-Add-PCI_BRIDGE_NO_ALIAS-quirk-for-ASPEE.patch} (95%) rename SPECS/linux-lts/{0175-UPSTREAM-riscv-patch-Avoid-early-phys_to_page.patch => 0172-UPSTREAM-riscv-patch-Avoid-early-phys_to_page.patch} (95%) rename SPECS/linux-lts/{0176-UPSTREAM-PCI-dwc-Fail-dw_pcie_host_init-if-dw_pcie_w.patch => 0173-UPSTREAM-PCI-dwc-Fail-dw_pcie_host_init-if-dw_pcie_w.patch} (93%) rename SPECS/linux-lts/{0177-UPSTREAM-reset-spacemit-k3-Decouple-composite-reset-.patch => 0174-UPSTREAM-reset-spacemit-k3-Decouple-composite-reset-.patch} (98%) rename SPECS/linux-lts/{0178-UPSTREAM-rust-clk-implement-Send-and-Sync.patch => 0175-UPSTREAM-rust-clk-implement-Send-and-Sync.patch} (92%) rename SPECS/linux-lts/{0179-UPSTREAM-tyr-remove-impl-Send-Sync-for-TyrData.patch => 0176-UPSTREAM-tyr-remove-impl-Send-Sync-for-TyrData.patch} (93%) rename SPECS/linux-lts/{0180-UPSTREAM-pwm-th1520-fix-CLIPPY-1-warning.patch => 0177-UPSTREAM-pwm-th1520-fix-CLIPPY-1-warning.patch} (95%) rename SPECS/linux-lts/{0181-UPSTREAM-pwm-th1520-remove-impl-Send-Sync-for-Th1520.patch => 0178-UPSTREAM-pwm-th1520-remove-impl-Send-Sync-for-Th1520.patch} (93%) rename SPECS/linux-lts/{0182-UPSTREAM-net-spacemit-Remove-unused-buff_addr-fields.patch => 0179-UPSTREAM-net-spacemit-Remove-unused-buff_addr-fields.patch} (89%) rename SPECS/linux-lts/{0183-UPSTREAM-dt-bindings-net-Add-support-for-Spacemit-K3.patch => 0180-UPSTREAM-dt-bindings-net-Add-support-for-Spacemit-K3.patch} (96%) rename SPECS/linux-lts/{0184-UPSTREAM-net-stmmac-platform-Add-snps-dwmac-5.40a-IP.patch => 0181-UPSTREAM-net-stmmac-platform-Add-snps-dwmac-5.40a-IP.patch} (87%) rename SPECS/linux-lts/{0185-UPSTREAM-net-stmmac-Add-glue-layer-for-Spacemit-K3-S.patch => 0182-UPSTREAM-net-stmmac-Add-glue-layer-for-Spacemit-K3-S.patch} (98%) rename SPECS/linux-lts/{0186-UPSTREAM-drm-imagination-Improve-handling-of-unknown.patch => 0183-UPSTREAM-drm-imagination-Improve-handling-of-unknown.patch} (92%) rename SPECS/linux-lts/{0187-UPSTREAM-drm-imagination-Mark-FWCCB_CMD_UPDATE_STATS.patch => 0184-UPSTREAM-drm-imagination-Mark-FWCCB_CMD_UPDATE_STATS.patch} (90%) rename SPECS/linux-lts/{0188-UPSTREAM-drm-imagination-Improve-firmware-power-off-.patch => 0185-UPSTREAM-drm-imagination-Improve-firmware-power-off-.patch} (97%) rename SPECS/linux-lts/{0189-UPSTREAM-drm-imagination-Skip-2nd-thread-DM-associat.patch => 0186-UPSTREAM-drm-imagination-Skip-2nd-thread-DM-associat.patch} (93%) rename SPECS/linux-lts/{0190-UPSTREAM-drm-imagination-Add-missing-rogue-context-r.patch => 0187-UPSTREAM-drm-imagination-Add-missing-rogue-context-r.patch} (93%) rename SPECS/linux-lts/{0191-UPSTREAM-drm-imagination-Implement-handling-of-conte.patch => 0188-UPSTREAM-drm-imagination-Implement-handling-of-conte.patch} (97%) rename SPECS/linux-lts/{0192-UPSTREAM-dt-bindings-vendor-prefixes-add-verisilicon.patch => 0189-UPSTREAM-dt-bindings-vendor-prefixes-add-verisilicon.patch} (90%) rename SPECS/linux-lts/{0193-UPSTREAM-dt-bindings-display-add-verisilicon-dc.patch => 0190-UPSTREAM-dt-bindings-display-add-verisilicon-dc.patch} (96%) rename SPECS/linux-lts/{0194-UPSTREAM-drm-verisilicon-add-a-driver-for-Verisilico.patch => 0191-UPSTREAM-drm-verisilicon-add-a-driver-for-Verisilico.patch} (99%) rename SPECS/linux-lts/{0195-UPSTREAM-dt-bindings-display-bridge-add-binding-for-.patch => 0192-UPSTREAM-dt-bindings-display-bridge-add-binding-for-.patch} (95%) rename SPECS/linux-lts/{0196-UPSTREAM-drm-bridge-add-a-driver-for-T-Head-TH1520-H.patch => 0193-UPSTREAM-drm-bridge-add-a-driver-for-T-Head-TH1520-H.patch} (98%) rename SPECS/linux-lts/{0197-UPSTREAM-dt-bindings-mfd-spacemit-p1-Add-individual-.patch => 0194-UPSTREAM-dt-bindings-mfd-spacemit-p1-Add-individual-.patch} (94%) rename SPECS/linux-lts/{0198-UPSTREAM-regulator-spacemit-p1-Update-supply-names.patch => 0195-UPSTREAM-regulator-spacemit-p1-Update-supply-names.patch} (94%) rename SPECS/linux-lts/{0199-UPSTREAM-mmc-sdhci-of-k1-add-reset-support.patch => 0196-UPSTREAM-mmc-sdhci-of-k1-add-reset-support.patch} (93%) rename SPECS/linux-lts/{0200-UPSTREAM-dt-bindings-mmc-spacemit-sdhci-add-support-.patch => 0197-UPSTREAM-dt-bindings-mmc-spacemit-sdhci-add-support-.patch} (87%) rename SPECS/linux-lts/{0201-UPSTREAM-mmc-sdhci-of-k1-spacemit-Add-support-for-K3.patch => 0198-UPSTREAM-mmc-sdhci-of-k1-spacemit-Add-support-for-K3.patch} (93%) rename SPECS/linux-lts/{0202-UPSTREAM-PCI-cadence-Add-flags-for-disabling-ASPM-ca.patch => 0199-UPSTREAM-PCI-cadence-Add-flags-for-disabling-ASPM-ca.patch} (95%) rename SPECS/linux-lts/{0203-UPSTREAM-PCI-sg2042-Avoid-L0s-and-L1-on-Sophgo-2042-.patch => 0200-UPSTREAM-PCI-sg2042-Avoid-L0s-and-L1-on-Sophgo-2042-.patch} (91%) rename SPECS/linux-lts/{0204-UPSTREAM-dt-bindings-hwmon-moortec-mr75203-adapt-mul.patch => 0201-UPSTREAM-dt-bindings-hwmon-moortec-mr75203-adapt-mul.patch} (93%) rename SPECS/linux-lts/{0205-UPSTREAM-drm-imagination-Disable-interrupts-before-s.patch => 0202-UPSTREAM-drm-imagination-Disable-interrupts-before-s.patch} (95%) rename SPECS/linux-lts/{0206-UPSTREAM-riscv-dts-thead-add-DPU-and-HDMI-device-tre.patch => 0203-UPSTREAM-riscv-dts-thead-add-DPU-and-HDMI-device-tre.patch} (95%) rename SPECS/linux-lts/{0207-UPSTREAM-riscv-dts-thead-lichee-pi-4a-enable-HDMI.patch => 0204-UPSTREAM-riscv-dts-thead-lichee-pi-4a-enable-HDMI.patch} (92%) rename SPECS/linux-lts/{0208-UPSTREAM-riscv-dts-thead-th1520-add-coefficients-to-.patch => 0205-UPSTREAM-riscv-dts-thead-th1520-add-coefficients-to-.patch} (88%) rename SPECS/linux-lts/{0209-UPSTREAM-riscv-dts-thead-beaglev-ahead-enable-HDMI-o.patch => 0206-UPSTREAM-riscv-dts-thead-beaglev-ahead-enable-HDMI-o.patch} (90%) rename SPECS/linux-lts/{0210-UPSTREAM-i2c-spacemit-move-i2c_xfer_msg.patch => 0207-UPSTREAM-i2c-spacemit-move-i2c_xfer_msg.patch} (95%) rename SPECS/linux-lts/{0211-UPSTREAM-i2c-spacemit-introduce-pio-for-k1.patch => 0208-UPSTREAM-i2c-spacemit-introduce-pio-for-k1.patch} (99%) rename SPECS/linux-lts/{0212-UPSTREAM-pinctrl-spacemit-return-ENOTSUPP-for-unsupp.patch => 0209-UPSTREAM-pinctrl-spacemit-return-ENOTSUPP-for-unsupp.patch} (95%) rename SPECS/linux-lts/{0213-UPSTREAM-gpio-spacemit-k1-Add-set_config-callback-su.patch => 0210-UPSTREAM-gpio-spacemit-k1-Add-set_config-callback-su.patch} (90%) rename SPECS/linux-lts/{0214-UPSTREAM-riscv-dts-spacemit-pcie-fix-missing-power-r.patch => 0211-UPSTREAM-riscv-dts-spacemit-pcie-fix-missing-power-r.patch} (89%) rename SPECS/linux-lts/{0215-UPSTREAM-riscv-dts-spacemit-Update-PMIC-supply-prope.patch => 0212-UPSTREAM-riscv-dts-spacemit-Update-PMIC-supply-prope.patch} (94%) rename SPECS/linux-lts/{0216-UPSTREAM-riscv-dts-spacemit-adapt-regulator-node-nam.patch => 0213-UPSTREAM-riscv-dts-spacemit-adapt-regulator-node-nam.patch} (95%) rename SPECS/linux-lts/{0217-UPSTREAM-riscv-dts-spacemit-Add-linux-pci-domain-to-.patch => 0214-UPSTREAM-riscv-dts-spacemit-Add-linux-pci-domain-to-.patch} (92%) rename SPECS/linux-lts/{0218-UPSTREAM-dt-bindings-serial-8250-spacemit-fix-clock-.patch => 0215-UPSTREAM-dt-bindings-serial-8250-spacemit-fix-clock-.patch} (89%) rename SPECS/linux-lts/{0219-UPSTREAM-riscv-dts-spacemit-k3-add-clock-tree.patch => 0216-UPSTREAM-riscv-dts-spacemit-k3-add-clock-tree.patch} (96%) rename SPECS/linux-lts/{0220-UPSTREAM-riscv-dts-spacemit-k3-add-pinctrl-support.patch => 0217-UPSTREAM-riscv-dts-spacemit-k3-add-pinctrl-support.patch} (89%) rename SPECS/linux-lts/{0221-UPSTREAM-riscv-dts-spacemit-k3-add-GPIO-support.patch => 0218-UPSTREAM-riscv-dts-spacemit-k3-add-GPIO-support.patch} (91%) rename SPECS/linux-lts/{0222-UPSTREAM-riscv-dts-spacemit-k3-add-full-resource-to-.patch => 0219-UPSTREAM-riscv-dts-spacemit-k3-add-full-resource-to-.patch} (97%) rename SPECS/linux-lts/{0223-UPSTREAM-dt-bindings-usb-dwc3-spacemit-add-support-f.patch => 0220-UPSTREAM-dt-bindings-usb-dwc3-spacemit-add-support-f.patch} (92%) rename SPECS/linux-lts/{0224-UPSTREAM-usb-dwc3-dwc3-generic-plat-spacemit-add-sup.patch => 0221-UPSTREAM-usb-dwc3-dwc3-generic-plat-spacemit-add-sup.patch} (89%) rename SPECS/linux-lts/{0225-UPSTREAM-usb-dwc3-Add-optional-VBUS-regulator-suppor.patch => 0222-UPSTREAM-usb-dwc3-Add-optional-VBUS-regulator-suppor.patch} (94%) rename SPECS/linux-lts/{0226-UPSTREAM-riscv-dts-spacemit-reorder-phy-nodes-for-K1.patch => 0223-UPSTREAM-riscv-dts-spacemit-reorder-phy-nodes-for-K1.patch} (96%) rename SPECS/linux-lts/{0227-UPSTREAM-riscv-dts-spacemit-drop-incorrect-pinctrl-f.patch => 0224-UPSTREAM-riscv-dts-spacemit-drop-incorrect-pinctrl-f.patch} (89%) rename SPECS/linux-lts/{0228-UPSTREAM-riscv-dts-spacemit-Add-ethernet-device-for-.patch => 0225-UPSTREAM-riscv-dts-spacemit-Add-ethernet-device-for-.patch} (97%) rename SPECS/linux-lts/{0229-UPSTREAM-riscv-dts-spacemit-add-LEDs-for-Milk-V-Jupi.patch => 0226-UPSTREAM-riscv-dts-spacemit-add-LEDs-for-Milk-V-Jupi.patch} (92%) rename SPECS/linux-lts/{0230-UPSTREAM-riscv-dts-spacemit-add-24c04-eeprom-on-Milk.patch => 0227-UPSTREAM-riscv-dts-spacemit-add-24c04-eeprom-on-Milk.patch} (92%) rename SPECS/linux-lts/{0231-UPSTREAM-riscv-dts-spacemit-add-i2c-aliases-on-Milk-.patch => 0228-UPSTREAM-riscv-dts-spacemit-add-i2c-aliases-on-Milk-.patch} (89%) rename SPECS/linux-lts/{0232-UPSTREAM-riscv-dts-spacemit-enable-QSPI-and-add-SPI-.patch => 0229-UPSTREAM-riscv-dts-spacemit-enable-QSPI-and-add-SPI-.patch} (93%) rename SPECS/linux-lts/{0233-UPSTREAM-riscv-dts-spacemit-enable-USB-3-ports-on-Mi.patch => 0230-UPSTREAM-riscv-dts-spacemit-enable-USB-3-ports-on-Mi.patch} (95%) rename SPECS/linux-lts/{0234-UPSTREAM-riscv-dts-spacemit-enable-PCIe-ports-on-Mil.patch => 0231-UPSTREAM-riscv-dts-spacemit-enable-PCIe-ports-on-Mil.patch} (93%) rename SPECS/linux-lts/{0235-UPSTREAM-dt-bindings-i2c-spacemit-k3-Add-compatible.patch => 0232-UPSTREAM-dt-bindings-i2c-spacemit-k3-Add-compatible.patch} (89%) rename SPECS/linux-lts/{0236-UPSTREAM-dts-riscv-spacemit-k3-Add-i2c-nodes.patch => 0233-UPSTREAM-dts-riscv-spacemit-k3-Add-i2c-nodes.patch} (97%) rename SPECS/linux-lts/{0237-UPSTREAM-dts-riscv-spacemit-k3-add-P1-PMIC-regulator.patch => 0234-UPSTREAM-dts-riscv-spacemit-k3-add-P1-PMIC-regulator.patch} (97%) rename SPECS/linux-lts/{0238-UPSTREAM-perf-symbol-Add-RISCV-case-in-get_plt_sizes.patch => 0235-UPSTREAM-perf-symbol-Add-RISCV-case-in-get_plt_sizes.patch} (91%) rename SPECS/linux-lts/{0239-UPSTREAM-riscv-Simplify-assignment-for-UTS_MACHINE.patch => 0236-UPSTREAM-riscv-Simplify-assignment-for-UTS_MACHINE.patch} (91%) rename SPECS/linux-lts/{0240-UPSTREAM-riscv-increase-COMMAND_LINE_SIZE-value-to-2.patch => 0237-UPSTREAM-riscv-increase-COMMAND_LINE_SIZE-value-to-2.patch} (88%) rename SPECS/linux-lts/{0241-UPSTREAM-riscv-acpi-update-FADT-revision-check-to-6..patch => 0238-UPSTREAM-riscv-acpi-update-FADT-revision-check-to-6..patch} (93%) rename SPECS/linux-lts/{0242-UPSTREAM-riscv-mm-WARN_ON-for-bad-addresses-in-vmemm.patch => 0239-UPSTREAM-riscv-mm-WARN_ON-for-bad-addresses-in-vmemm.patch} (81%) rename SPECS/linux-lts/{0243-UPSTREAM-riscv-enable-HAVE_IOREMAP_PROT.patch => 0240-UPSTREAM-riscv-enable-HAVE_IOREMAP_PROT.patch} (93%) rename SPECS/linux-lts/{0244-UPSTREAM-string-provide-strends.patch => 0241-UPSTREAM-string-provide-strends.patch} (95%) rename SPECS/linux-lts/{0245-UPSTREAM-lib-string_kunit-add-correctness-test-for-s.patch => 0242-UPSTREAM-lib-string_kunit-add-correctness-test-for-s.patch} (95%) rename SPECS/linux-lts/{0246-UPSTREAM-lib-string_kunit-add-correctness-test-for-s.patch => 0243-UPSTREAM-lib-string_kunit-add-correctness-test-for-s.patch} (94%) rename SPECS/linux-lts/{0247-UPSTREAM-lib-string_kunit-add-correctness-test-for-s.patch => 0244-UPSTREAM-lib-string_kunit-add-correctness-test-for-s.patch} (93%) rename SPECS/linux-lts/{0248-UPSTREAM-lib-string_kunit-add-performance-benchmark-.patch => 0245-UPSTREAM-lib-string_kunit-add-performance-benchmark-.patch} (98%) rename SPECS/linux-lts/{0249-UPSTREAM-lib-string_kunit-extend-benchmarks-to-strnl.patch => 0246-UPSTREAM-lib-string_kunit-extend-benchmarks-to-strnl.patch} (93%) rename SPECS/linux-lts/{0250-UPSTREAM-riscv-lib-add-strnlen-implementation.patch => 0247-UPSTREAM-riscv-lib-add-strnlen-implementation.patch} (97%) rename SPECS/linux-lts/{0251-UPSTREAM-riscv-lib-add-strchr-implementation.patch => 0248-UPSTREAM-riscv-lib-add-strchr-implementation.patch} (96%) rename SPECS/linux-lts/{0252-UPSTREAM-riscv-lib-add-strrchr-implementation.patch => 0249-UPSTREAM-riscv-lib-add-strrchr-implementation.patch} (96%) rename SPECS/linux-lts/{0253-UPSTREAM-PCI-dwc-Add-register-and-bitfield-definitio.patch => 0250-UPSTREAM-PCI-dwc-Add-register-and-bitfield-definitio.patch} (92%) rename SPECS/linux-lts/{0254-UPSTREAM-ASoC-spacemit-move-hw-constraints-from-hw_p.patch => 0251-UPSTREAM-ASoC-spacemit-move-hw-constraints-from-hw_p.patch} (96%) rename SPECS/linux-lts/{0255-UPSTREAM-ASoC-spacemit-adjust-FIFO-trigger-threshold.patch => 0252-UPSTREAM-ASoC-spacemit-adjust-FIFO-trigger-threshold.patch} (89%) rename SPECS/linux-lts/{0256-UPSTREAM-dt-bindings-reset-thead-th1520-reset-Remove.patch => 0253-UPSTREAM-dt-bindings-reset-thead-th1520-reset-Remove.patch} (89%) rename SPECS/linux-lts/{0257-UPSTREAM-dt-bindings-reset-thead-th1520-reset-Add-co.patch => 0254-UPSTREAM-dt-bindings-reset-thead-th1520-reset-Add-co.patch} (98%) rename SPECS/linux-lts/{0258-UPSTREAM-reset-th1520-Prepare-for-supporting-multipl.patch => 0255-UPSTREAM-reset-th1520-Prepare-for-supporting-multipl.patch} (95%) rename SPECS/linux-lts/{0259-UPSTREAM-reset-th1520-Support-reset-controllers-in-m.patch => 0256-UPSTREAM-reset-th1520-Support-reset-controllers-in-m.patch} (99%) rename SPECS/linux-lts/{0260-UPSTREAM-riscv-dts-thead-Add-reset-controllers-of-mo.patch => 0257-UPSTREAM-riscv-dts-thead-Add-reset-controllers-of-mo.patch} (94%) rename SPECS/linux-lts/{0261-UPSTREAM-clk-spacemit-k3-mark-top_dclk-as-CLK_IS_CRI.patch => 0258-UPSTREAM-clk-spacemit-k3-mark-top_dclk-as-CLK_IS_CRI.patch} (90%) rename SPECS/linux-lts/{0262-UPSTREAM-ASoC-spacemit-fix-RX-DMA-params-not-set-whe.patch => 0259-UPSTREAM-ASoC-spacemit-fix-RX-DMA-params-not-set-whe.patch} (91%) rename SPECS/linux-lts/{0263-UPSTREAM-i2c-spacemit-drop-useless-spaces.patch => 0260-UPSTREAM-i2c-spacemit-drop-useless-spaces.patch} (91%) rename SPECS/linux-lts/{0264-UPSTREAM-clk-at91-pmc-undef-field_-get-prep-before-d.patch => 0261-UPSTREAM-clk-at91-pmc-undef-field_-get-prep-before-d.patch} (90%) rename SPECS/linux-lts/{0265-UPSTREAM-crypto-qat-undef-field_get-before-local-def.patch => 0262-UPSTREAM-crypto-qat-undef-field_get-before-local-def.patch} (89%) rename SPECS/linux-lts/{0266-UPSTREAM-EDAC-ie31200-undef-field_get-before-local-d.patch => 0263-UPSTREAM-EDAC-ie31200-undef-field_get-before-local-d.patch} (87%) rename SPECS/linux-lts/{0267-UPSTREAM-gpio-aspeed-undef-field_-get-prep-before-lo.patch => 0264-UPSTREAM-gpio-aspeed-undef-field_-get-prep-before-lo.patch} (88%) rename SPECS/linux-lts/{0268-UPSTREAM-iio-dac-ad3530r-undef-field_prep-before-loc.patch => 0265-UPSTREAM-iio-dac-ad3530r-undef-field_prep-before-loc.patch} (87%) rename SPECS/linux-lts/{0269-UPSTREAM-iio-mlx90614-undef-field_-get-prep-before-l.patch => 0266-UPSTREAM-iio-mlx90614-undef-field_-get-prep-before-l.patch} (90%) rename SPECS/linux-lts/{0270-UPSTREAM-pinctrl-ma35-undef-field_-get-prep-before-l.patch => 0267-UPSTREAM-pinctrl-ma35-undef-field_-get-prep-before-l.patch} (90%) rename SPECS/linux-lts/{0271-UPSTREAM-soc-renesas-rz-sysc-undef-field_get-before-.patch => 0268-UPSTREAM-soc-renesas-rz-sysc-undef-field_get-before-.patch} (88%) rename SPECS/linux-lts/{0272-UPSTREAM-ALSA-usb-audio-undef-field_-get-prep-before.patch => 0269-UPSTREAM-ALSA-usb-audio-undef-field_-get-prep-before.patch} (90%) rename SPECS/linux-lts/{0273-UPSTREAM-bitfield-Add-less-checking-__FIELD_-GET-PRE.patch => 0270-UPSTREAM-bitfield-Add-less-checking-__FIELD_-GET-PRE.patch} (96%) rename SPECS/linux-lts/{0274-UPSTREAM-bitfield-Add-non-constant-field_-prep-get-h.patch => 0271-UPSTREAM-bitfield-Add-non-constant-field_-prep-get-h.patch} (96%) rename SPECS/linux-lts/{0275-UPSTREAM-clk-at91-Convert-to-common-field_-get-prep-.patch => 0272-UPSTREAM-clk-at91-Convert-to-common-field_-get-prep-.patch} (93%) rename SPECS/linux-lts/{0276-UPSTREAM-crypto-qat-convert-to-common-field_get-help.patch => 0273-UPSTREAM-crypto-qat-convert-to-common-field_get-help.patch} (91%) rename SPECS/linux-lts/{0277-UPSTREAM-EDAC-ie31200-Convert-to-common-field_get-he.patch => 0274-UPSTREAM-EDAC-ie31200-Convert-to-common-field_get-he.patch} (90%) rename SPECS/linux-lts/{0278-UPSTREAM-gpio-aspeed-Convert-to-common-field_-get-pr.patch => 0275-UPSTREAM-gpio-aspeed-Convert-to-common-field_-get-pr.patch} (91%) rename SPECS/linux-lts/{0279-UPSTREAM-iio-dac-Convert-to-common-field_prep-helper.patch => 0276-UPSTREAM-iio-dac-Convert-to-common-field_prep-helper.patch} (88%) rename SPECS/linux-lts/{0280-UPSTREAM-iio-mlx90614-Convert-to-common-field_-get-p.patch => 0277-UPSTREAM-iio-mlx90614-Convert-to-common-field_-get-p.patch} (92%) rename SPECS/linux-lts/{0281-UPSTREAM-pinctrl-ma35-Convert-to-common-field_-get-p.patch => 0278-UPSTREAM-pinctrl-ma35-Convert-to-common-field_-get-p.patch} (91%) rename SPECS/linux-lts/{0282-UPSTREAM-soc-renesas-rz-sysc-Convert-to-common-field.patch => 0279-UPSTREAM-soc-renesas-rz-sysc-Convert-to-common-field.patch} (89%) rename SPECS/linux-lts/{0283-UPSTREAM-ALSA-usb-audio-Convert-to-common-field_-get.patch => 0280-UPSTREAM-ALSA-usb-audio-Convert-to-common-field_-get.patch} (91%) rename SPECS/linux-lts/{0284-UPSTREAM-clk-renesas-Use-bitfield-helpers.patch => 0281-UPSTREAM-clk-renesas-Use-bitfield-helpers.patch} (97%) rename SPECS/linux-lts/{0285-UPSTREAM-soc-renesas-Use-bitfield-helpers.patch => 0282-UPSTREAM-soc-renesas-Use-bitfield-helpers.patch} (90%) rename SPECS/linux-lts/{0286-UPSTREAM-dt-bindings-usb-Add-support-for-Terminus-FE.patch => 0283-UPSTREAM-dt-bindings-usb-Add-support-for-Terminus-FE.patch} (94%) rename SPECS/linux-lts/{0287-UPSTREAM-usb-misc-onboard_usb_dev-Add-Terminus-FE1.1.patch => 0284-UPSTREAM-usb-misc-onboard_usb_dev-Add-Terminus-FE1.1.patch} (95%) rename SPECS/linux-lts/{0288-UPSTREAM-riscv-Define-__riscv_copy_-vec_-words-bytes.patch => 0285-UPSTREAM-riscv-Define-__riscv_copy_-vec_-words-bytes.patch} (97%) rename SPECS/linux-lts/{0290-UPSTREAM-spi-dt-bindings-fsl-qspi-support-SpacemiT-K.patch => 0286-UPSTREAM-spi-dt-bindings-fsl-qspi-support-SpacemiT-K.patch} (90%) rename SPECS/linux-lts/{0291-UPSTREAM-RISC-V-KVM-Fix-NULL-pointer-dereference-in-.patch => 0287-UPSTREAM-RISC-V-KVM-Fix-NULL-pointer-dereference-in-.patch} (90%) create mode 100644 SPECS/linux-lts/0288-UPSTREAM-dt-bindings-mmc-sdhci-of-dwcmshc-Add-Eswin-.patch create mode 100644 SPECS/linux-lts/0289-UPSTREAM-mmc-sdhci-of-dwcmshc-Add-support-for-Eswin-.patch delete mode 100644 SPECS/linux-lts/0289-UPSTREAM-riscv-mm-Fixup-no5lvl-failure-when-vaddr-is.patch create mode 100644 SPECS/linux-lts/0290-UPSTREAM-mmc-sdhci-of-dwcmshc-Fix-init-for-AXI-clock.patch create mode 100644 SPECS/linux-lts/0291-UPSTREAM-mmc-sdhci-of-dwcmshc-Fix-DMA-128MB-boundary.patch create mode 100644 SPECS/linux-lts/0434-FROMLIST-riscv-dts-spacemit-k3-Add-Ziccrse-extension.patch create mode 100644 SPECS/linux-lts/0435-FROMLIST-RISC-V-KVM-Enhance-the-logging-check-for-mm.patch create mode 100644 SPECS/linux-lts/0436-FROMLIST-riscv-dts-spacemit-enable-PCIe-on-OrangePi-.patch create mode 100644 SPECS/linux-lts/0437-FROMLIST-iommu-riscv-Add-dependency-between-iommu-an.patch rename SPECS/linux-lts/{0434-XUANTIE-riscv-dts-th1520-add-licheepi4a-16g-support.patch => 0438-XUANTIE-riscv-dts-th1520-add-licheepi4a-16g-support.patch} (91%) rename SPECS/linux-lts/{0435-REVYOS-riscv-dts-th1520-rename-thead-to-xuantie.patch => 0439-REVYOS-riscv-dts-th1520-rename-thead-to-xuantie.patch} (85%) rename SPECS/linux-lts/{0436-REVYOS-riscv-dts-th1520-add-xuantie-th1520-mbox-r.patch => 0440-REVYOS-riscv-dts-th1520-add-xuantie-th1520-mbox-r.patch} (89%) rename SPECS/linux-lts/{0437-SOPHGO-dt-bindings-nvmem-Add-SG2044-eFuse-controller.patch => 0441-SOPHGO-dt-bindings-nvmem-Add-SG2044-eFuse-controller.patch} (92%) rename SPECS/linux-lts/{0438-SOPHGO-nvmem-Add-Sophgo-SG2044-eFuse-driver.patch => 0442-SOPHGO-nvmem-Add-Sophgo-SG2044-eFuse-driver.patch} (97%) rename SPECS/linux-lts/{0439-SOPHGO-riscv-dts-sophgo-sg2044-Add-eFUSE-device.patch => 0443-SOPHGO-riscv-dts-sophgo-sg2044-Add-eFUSE-device.patch} (91%) rename SPECS/linux-lts/{0440-SOPHGO-dts-sg2044-Modify-pcie-bar-address.patch => 0444-SOPHGO-dts-sg2044-Modify-pcie-bar-address.patch} (97%) rename SPECS/linux-lts/{0441-SOPHGO-riscv-sg2042-errata-Replace-thead-cache-clean.patch => 0445-SOPHGO-riscv-sg2042-errata-Replace-thead-cache-clean.patch} (85%) rename SPECS/linux-lts/{0442-REVYSR-dt-bindings-net-ultrarisc-dp1000-gmac-Add-sup.patch => 0446-REVYSR-dt-bindings-net-ultrarisc-dp1000-gmac-Add-sup.patch} (95%) rename SPECS/linux-lts/{0443-REVYSR-net-stmmac-add-support-for-dwmac-5.10a.patch => 0447-REVYSR-net-stmmac-add-support-for-dwmac-5.10a.patch} (87%) rename SPECS/linux-lts/{0444-RVCK-riscv-dts-add-dp1000.dts-for-UltraRIsc-DP1000-S.patch => 0448-RVCK-riscv-dts-add-dp1000.dts-for-UltraRIsc-DP1000-S.patch} (99%) rename SPECS/linux-lts/{0445-RVCK-pinctrl-add-pinctrl-dirver-for-UltraRisc-DP1000.patch => 0449-RVCK-pinctrl-add-pinctrl-dirver-for-UltraRisc-DP1000.patch} (99%) rename SPECS/linux-lts/{0446-RVCK-dts-add-pinctrl-dtsi-dts-for-UltraRisc-DP1000.patch => 0450-RVCK-dts-add-pinctrl-dtsi-dts-for-UltraRisc-DP1000.patch} (97%) rename SPECS/linux-lts/{0447-RVCK-riscv-dp1000-dts-add-the-dts-of-UltraRISC-dp100.patch => 0451-RVCK-riscv-dp1000-dts-add-the-dts-of-UltraRISC-dp100.patch} (98%) rename SPECS/linux-lts/{0448-RVCK-riscv-dp1000-dts-Move-mmc0-node-from-SoC-to-boa.patch => 0452-RVCK-riscv-dp1000-dts-Move-mmc0-node-from-SoC-to-boa.patch} (95%) rename SPECS/linux-lts/{0449-RVCK-riscv-dp1000-plic-add-plic-early-init-supports.patch => 0453-RVCK-riscv-dp1000-plic-add-plic-early-init-supports.patch} (94%) rename SPECS/linux-lts/{0450-RVCK-riscv-dp1000-dts-Move-chosen-node-from-common-t.patch => 0454-RVCK-riscv-dp1000-dts-Move-chosen-node-from-common-t.patch} (93%) rename SPECS/linux-lts/{0451-RVCK-dts-riscv-ultrarisc-Refactor-DP1000-device-tree.patch => 0455-RVCK-dts-riscv-ultrarisc-Refactor-DP1000-device-tree.patch} (99%) rename SPECS/linux-lts/{0452-RVCK-riscv-pinctrl-ultrarisc-Implement-pin-configura.patch => 0456-RVCK-riscv-pinctrl-ultrarisc-Implement-pin-configura.patch} (97%) rename SPECS/linux-lts/{0453-RVCK-riscv-dts-dp1000-add-dts-dtsi-for-Milk-V-Titan-.patch => 0457-RVCK-riscv-dts-dp1000-add-dts-dtsi-for-Milk-V-Titan-.patch} (98%) rename SPECS/linux-lts/{0454-REVYSR-pinctrl-ultrarisc-cleanup-probe-remove.patch => 0458-REVYSR-pinctrl-ultrarisc-cleanup-probe-remove.patch} (94%) rename SPECS/linux-lts/{0455-REVYSR-riscv-dp1000-dts-use-ultrarisc-dp1000-pcie-fo.patch => 0459-REVYSR-riscv-dp1000-dts-use-ultrarisc-dp1000-pcie-fo.patch} (89%) rename SPECS/linux-lts/{0456-ULTRARISC-hwmon-add-corepvt-driver-of-UltraRISC-DP10.patch => 0460-ULTRARISC-hwmon-add-corepvt-driver-of-UltraRISC-DP10.patch} (98%) rename SPECS/linux-lts/{0457-RUYI-SYNC-riscv-dts-dp1000-Update-dp1000.dtsi.patch => 0461-RUYI-SYNC-riscv-dts-dp1000-Update-dp1000.dtsi.patch} (99%) rename SPECS/linux-lts/{0458-RUYI-riscv-dts-spacemit-k3-Add-USB2.0-support.patch => 0462-RUYI-riscv-dts-spacemit-k3-Add-USB2.0-support.patch} (94%) rename SPECS/linux-lts/{0459-SPACEMIT-riscv-uaccess-don-t-use-vector-if-buffer-is.patch => 0463-SPACEMIT-riscv-uaccess-don-t-use-vector-if-buffer-is.patch} (96%) rename SPECS/linux-lts/{0460-RUYI-dt-bindings-phy-Add-Spacemit-K3-USB3-PCIe-comb-.patch => 0464-RUYI-dt-bindings-phy-Add-Spacemit-K3-USB3-PCIe-comb-.patch} (94%) rename SPECS/linux-lts/{0461-RUYI-phy-spacemit-Add-USB3-PCIe-comb-PHY-driver-for-.patch => 0465-RUYI-phy-spacemit-Add-USB3-PCIe-comb-PHY-driver-for-.patch} (99%) rename SPECS/linux-lts/{0462-RUYI-riscv-dts-spacemit-k3-add-USB-controller-and-US.patch => 0466-RUYI-riscv-dts-spacemit-k3-add-USB-controller-and-US.patch} (93%) rename SPECS/linux-lts/{0463-RUYI-riscv-dts-spacemit-k3-Add-PCIe-device-node.patch => 0467-RUYI-riscv-dts-spacemit-k3-Add-PCIe-device-node.patch} (97%) rename SPECS/linux-lts/{0464-RUYI-PCI-add-SpacemiT-vendor-id-and-its-K3-device-id.patch => 0468-RUYI-PCI-add-SpacemiT-vendor-id-and-its-K3-device-id.patch} (84%) rename SPECS/linux-lts/{0465-RUYI-wifi-rtw89-pci-add-SpacemiT-K3-to-36-bit-DMA-al.patch => 0469-RUYI-wifi-rtw89-pci-add-SpacemiT-K3-to-36-bit-DMA-al.patch} (87%) rename SPECS/linux-lts/{0466-RUYI-drm-amdgpu-disable-dynamic-PCIe-speed-switch-on.patch => 0470-RUYI-drm-amdgpu-disable-dynamic-PCIe-speed-switch-on.patch} (85%) rename SPECS/linux-lts/{0467-RVCK-driver-clk-k3-keep-some-system-based-clock-alwa.patch => 0471-RVCK-driver-clk-k3-keep-some-system-based-clock-alwa.patch} (92%) rename SPECS/linux-lts/{0001-RUYI-mmc-sdhci-of-dwcmshc-Add-support-for-SG2042-FPG.patch => 0472-RUYI-mmc-sdhci-of-dwcmshc-Add-support-for-SG2042-FPG.patch} (65%) create mode 100644 SPECS/linux-lts/series diff --git a/SPECS/linux-lts/0001-UPSTREAM-drm-ttm-add-pgprot-handling-for-RISC-V.patch b/SPECS/linux-lts/0001-UPSTREAM-drm-ttm-add-pgprot-handling-for-RISC-V.patch index 5a44481abf..dd82e46153 100644 --- a/SPECS/linux-lts/0001-UPSTREAM-drm-ttm-add-pgprot-handling-for-RISC-V.patch +++ b/SPECS/linux-lts/0001-UPSTREAM-drm-ttm-add-pgprot-handling-for-RISC-V.patch @@ -1,7 +1,7 @@ -From 68f4d24c96b911ab659b964add869d541d519b43 Mon Sep 17 00:00:00 2001 +From e8197b44ac58d76565180793e59b2ff39d0ff8a1 Mon Sep 17 00:00:00 2001 From: Han Gao Date: Fri, 5 Dec 2025 10:42:07 +0800 -Subject: [PATCH 001/467] UPSTREAM: drm/ttm: add pgprot handling for RISC-V +Subject: [RUYI PATCH] UPSTREAM: drm/ttm: add pgprot handling for RISC-V MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit diff --git a/SPECS/linux-lts/0002-UPSTREAM-riscv-sophgo-dts-add-PCIe-controllers-for-S.patch b/SPECS/linux-lts/0002-UPSTREAM-riscv-sophgo-dts-add-PCIe-controllers-for-S.patch index c7224a0b81..b8cb7f6ff0 100644 --- a/SPECS/linux-lts/0002-UPSTREAM-riscv-sophgo-dts-add-PCIe-controllers-for-S.patch +++ b/SPECS/linux-lts/0002-UPSTREAM-riscv-sophgo-dts-add-PCIe-controllers-for-S.patch @@ -1,8 +1,8 @@ -From a6570cc0fbc912cd59b63b6cc0e3dfb0e74e8d08 Mon Sep 17 00:00:00 2001 +From 172fa2e5a76c1351ea1bb6903e1d03944ce8a778 Mon Sep 17 00:00:00 2001 From: Chen Wang Date: Mon, 20 Oct 2025 11:33:43 +0800 -Subject: [PATCH 002/467] UPSTREAM: riscv: sophgo: dts: add PCIe controllers - for SG2042 +Subject: [RUYI PATCH] UPSTREAM: riscv: sophgo: dts: add PCIe controllers for + SG2042 Add PCIe controller nodes in DTS for Sophgo SG2042. Default they are disabled. diff --git a/SPECS/linux-lts/0003-UPSTREAM-riscv-sophgo-dts-enable-PCIe-for-PioneerBox.patch b/SPECS/linux-lts/0003-UPSTREAM-riscv-sophgo-dts-enable-PCIe-for-PioneerBox.patch index 7528086c94..43e4f49e7c 100644 --- a/SPECS/linux-lts/0003-UPSTREAM-riscv-sophgo-dts-enable-PCIe-for-PioneerBox.patch +++ b/SPECS/linux-lts/0003-UPSTREAM-riscv-sophgo-dts-enable-PCIe-for-PioneerBox.patch @@ -1,8 +1,7 @@ -From a2b3dccf02d815c4cbbaa8ea797f337204196c30 Mon Sep 17 00:00:00 2001 +From eb8e783adc4036ef80be48cfc8469b4be20fb577 Mon Sep 17 00:00:00 2001 From: Chen Wang Date: Mon, 20 Oct 2025 11:34:05 +0800 -Subject: [PATCH 003/467] UPSTREAM: riscv: sophgo: dts: enable PCIe for - PioneerBox +Subject: [RUYI PATCH] UPSTREAM: riscv: sophgo: dts: enable PCIe for PioneerBox Enable PCIe controllers for PioneerBox, which uses SG2042 SoC. diff --git a/SPECS/linux-lts/0004-UPSTREAM-riscv-sophgo-dts-enable-PCIe-for-SG2042_EVB.patch b/SPECS/linux-lts/0004-UPSTREAM-riscv-sophgo-dts-enable-PCIe-for-SG2042_EVB.patch index 4191eceda0..46b8b479dc 100644 --- a/SPECS/linux-lts/0004-UPSTREAM-riscv-sophgo-dts-enable-PCIe-for-SG2042_EVB.patch +++ b/SPECS/linux-lts/0004-UPSTREAM-riscv-sophgo-dts-enable-PCIe-for-SG2042_EVB.patch @@ -1,7 +1,7 @@ -From ea11e07b03ac17c6cc757dd58c1097140d35647f Mon Sep 17 00:00:00 2001 +From 97f3ca4bfb8cf08fc5f01da48adbd2e295d9bf62 Mon Sep 17 00:00:00 2001 From: Chen Wang Date: Mon, 20 Oct 2025 11:39:22 +0800 -Subject: [PATCH 004/467] UPSTREAM: riscv: sophgo: dts: enable PCIe for +Subject: [RUYI PATCH] UPSTREAM: riscv: sophgo: dts: enable PCIe for SG2042_EVB_V1.X Enable PCIe controllers for Sophgo SG2042_EVB_V1.X board, diff --git a/SPECS/linux-lts/0005-UPSTREAM-riscv-sophgo-dts-enable-PCIe-for-SG2042_EVB.patch b/SPECS/linux-lts/0005-UPSTREAM-riscv-sophgo-dts-enable-PCIe-for-SG2042_EVB.patch index fa69fdde31..118243db74 100644 --- a/SPECS/linux-lts/0005-UPSTREAM-riscv-sophgo-dts-enable-PCIe-for-SG2042_EVB.patch +++ b/SPECS/linux-lts/0005-UPSTREAM-riscv-sophgo-dts-enable-PCIe-for-SG2042_EVB.patch @@ -1,7 +1,7 @@ -From 85ca5757d41f28ceee07c296a8562fc8ee987444 Mon Sep 17 00:00:00 2001 +From adfc1b75ef3710cc675487e2d856fe811e92c9cf Mon Sep 17 00:00:00 2001 From: Chen Wang Date: Mon, 20 Oct 2025 11:40:09 +0800 -Subject: [PATCH 005/467] UPSTREAM: riscv: sophgo: dts: enable PCIe for +Subject: [RUYI PATCH] UPSTREAM: riscv: sophgo: dts: enable PCIe for SG2042_EVB_V2.0 Enable PCIe controllers for Sophgo SG2042_EVB_V2.0 board, diff --git a/SPECS/linux-lts/0006-UPSTREAM-riscv-dts-sophgo-Add-SPI-NOR-node-for-SG204.patch b/SPECS/linux-lts/0006-UPSTREAM-riscv-dts-sophgo-Add-SPI-NOR-node-for-SG204.patch index 434e018363..0105843995 100644 --- a/SPECS/linux-lts/0006-UPSTREAM-riscv-dts-sophgo-Add-SPI-NOR-node-for-SG204.patch +++ b/SPECS/linux-lts/0006-UPSTREAM-riscv-dts-sophgo-Add-SPI-NOR-node-for-SG204.patch @@ -1,7 +1,7 @@ -From 6655e6812bc952f6ca617368b081df8ab2f94dc0 Mon Sep 17 00:00:00 2001 +From 0fe3f721fe45c7b4cfd9c65eaea2e94c7d05d05a Mon Sep 17 00:00:00 2001 From: Zixian Zeng Date: Tue, 16 Sep 2025 21:22:50 +0800 -Subject: [PATCH 006/467] UPSTREAM: riscv: dts: sophgo: Add SPI NOR node for +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: sophgo: Add SPI NOR node for SG2042 Add SPI NOR controller node for SG2042 diff --git a/SPECS/linux-lts/0007-UPSTREAM-riscv-dts-sophgo-Enable-SPI-NOR-node-for-Pi.patch b/SPECS/linux-lts/0007-UPSTREAM-riscv-dts-sophgo-Enable-SPI-NOR-node-for-Pi.patch index a2068d8a3f..e7d51ad4e9 100644 --- a/SPECS/linux-lts/0007-UPSTREAM-riscv-dts-sophgo-Enable-SPI-NOR-node-for-Pi.patch +++ b/SPECS/linux-lts/0007-UPSTREAM-riscv-dts-sophgo-Enable-SPI-NOR-node-for-Pi.patch @@ -1,7 +1,7 @@ -From 15e5a76787a30da2ef62756cfd195210851cf09f Mon Sep 17 00:00:00 2001 +From 9e5ebf3bb03d5951a1ac6273a557a7d3b42aaf5d Mon Sep 17 00:00:00 2001 From: Zixian Zeng Date: Tue, 16 Sep 2025 21:22:51 +0800 -Subject: [PATCH 007/467] UPSTREAM: riscv: dts: sophgo: Enable SPI NOR node for +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: sophgo: Enable SPI NOR node for PioneerBox Enable SPI NOR node for PioneerBox device tree diff --git a/SPECS/linux-lts/0008-UPSTREAM-riscv-dts-sophgo-Enable-SPI-NOR-node-for-SG.patch b/SPECS/linux-lts/0008-UPSTREAM-riscv-dts-sophgo-Enable-SPI-NOR-node-for-SG.patch index dea06361cb..0353c0d45c 100644 --- a/SPECS/linux-lts/0008-UPSTREAM-riscv-dts-sophgo-Enable-SPI-NOR-node-for-SG.patch +++ b/SPECS/linux-lts/0008-UPSTREAM-riscv-dts-sophgo-Enable-SPI-NOR-node-for-SG.patch @@ -1,7 +1,7 @@ -From d1a07634e134fcadea2caad89fcdcf622e23a136 Mon Sep 17 00:00:00 2001 +From ca6b4bc1ae282908399370569de96b507b11a199 Mon Sep 17 00:00:00 2001 From: Zixian Zeng Date: Tue, 16 Sep 2025 21:22:52 +0800 -Subject: [PATCH 008/467] UPSTREAM: riscv: dts: sophgo: Enable SPI NOR node for +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: sophgo: Enable SPI NOR node for SG2042_EVB_V1 Enable SPI NOR node for SG2042_EVB_V1 device tree diff --git a/SPECS/linux-lts/0009-UPSTREAM-riscv-dts-sophgo-Enable-SPI-NOR-node-for-SG.patch b/SPECS/linux-lts/0009-UPSTREAM-riscv-dts-sophgo-Enable-SPI-NOR-node-for-SG.patch index 9584149d3e..849dbb07fb 100644 --- a/SPECS/linux-lts/0009-UPSTREAM-riscv-dts-sophgo-Enable-SPI-NOR-node-for-SG.patch +++ b/SPECS/linux-lts/0009-UPSTREAM-riscv-dts-sophgo-Enable-SPI-NOR-node-for-SG.patch @@ -1,7 +1,7 @@ -From 53f32e5b4fe4b9f2bd8fecbf74e973f6b8c32c42 Mon Sep 17 00:00:00 2001 +From ef69ecb5f71cc9ec10bbe973e96dec13a22d83c5 Mon Sep 17 00:00:00 2001 From: Zixian Zeng Date: Tue, 16 Sep 2025 21:22:53 +0800 -Subject: [PATCH 009/467] UPSTREAM: riscv: dts: sophgo: Enable SPI NOR node for +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: sophgo: Enable SPI NOR node for SG2042_EVB_V2 Enable SPI NOR node for SG2042_EVB_V2 device tree diff --git a/SPECS/linux-lts/0010-UPSTREAM-dt-bindings-net-sophgo-sg2044-dwmac-add-phy.patch b/SPECS/linux-lts/0010-UPSTREAM-dt-bindings-net-sophgo-sg2044-dwmac-add-phy.patch index 176f1f72fa..f9aa138c7a 100644 --- a/SPECS/linux-lts/0010-UPSTREAM-dt-bindings-net-sophgo-sg2044-dwmac-add-phy.patch +++ b/SPECS/linux-lts/0010-UPSTREAM-dt-bindings-net-sophgo-sg2044-dwmac-add-phy.patch @@ -1,8 +1,8 @@ -From fa290cfeb4782f7d5f70c9bfc7c9a45a8d783bba Mon Sep 17 00:00:00 2001 +From 4cec01963100499caa46c4c97acb3d80549132f6 Mon Sep 17 00:00:00 2001 From: Inochi Amaoto Date: Fri, 14 Nov 2025 08:38:03 +0800 -Subject: [PATCH 010/467] UPSTREAM: dt-bindings: net: sophgo,sg2044-dwmac: add - phy mode restriction +Subject: [RUYI PATCH] UPSTREAM: dt-bindings: net: sophgo,sg2044-dwmac: add phy + mode restriction As the ethernet controller of SG2044 and SG2042 only supports RGMII phy. Add phy-mode property to restrict the value. diff --git a/SPECS/linux-lts/0011-UPSTREAM-perf-vendor-events-riscv-add-T-HEAD-C920V2-.patch b/SPECS/linux-lts/0011-UPSTREAM-perf-vendor-events-riscv-add-T-HEAD-C920V2-.patch index eab71a2128..d0b72dcb45 100644 --- a/SPECS/linux-lts/0011-UPSTREAM-perf-vendor-events-riscv-add-T-HEAD-C920V2-.patch +++ b/SPECS/linux-lts/0011-UPSTREAM-perf-vendor-events-riscv-add-T-HEAD-C920V2-.patch @@ -1,7 +1,7 @@ -From 5d275d4fdc0ad5140b356cbcb753365217315b31 Mon Sep 17 00:00:00 2001 +From 97f62d7522d266af5df939fe3f50a0e365d78d37 Mon Sep 17 00:00:00 2001 From: Inochi Amaoto Date: Tue, 14 Oct 2025 09:48:29 +0800 -Subject: [PATCH 011/467] UPSTREAM: perf vendor events riscv: add T-HEAD C920V2 +Subject: [RUYI PATCH] UPSTREAM: perf vendor events riscv: add T-HEAD C920V2 JSON support T-HEAD C920 has a V2 iteration, which supports Sscompmf. The V2 diff --git a/SPECS/linux-lts/0012-UPSTREAM-rust-macros-Add-support-for-imports_ns-to-m.patch b/SPECS/linux-lts/0012-UPSTREAM-rust-macros-Add-support-for-imports_ns-to-m.patch index a79f509cec..de2b418bcf 100644 --- a/SPECS/linux-lts/0012-UPSTREAM-rust-macros-Add-support-for-imports_ns-to-m.patch +++ b/SPECS/linux-lts/0012-UPSTREAM-rust-macros-Add-support-for-imports_ns-to-m.patch @@ -1,8 +1,8 @@ -From 367f56da193fa8ee4a1896f1086d913d2ce34435 Mon Sep 17 00:00:00 2001 +From e140a5124e38afd1d68eb3c9da0a96a9bc0c1fd8 Mon Sep 17 00:00:00 2001 From: Michal Wilczynski Date: Tue, 28 Oct 2025 13:22:32 +0100 -Subject: [PATCH 012/467] UPSTREAM: rust: macros: Add support for 'imports_ns' - to module! +Subject: [RUYI PATCH] UPSTREAM: rust: macros: Add support for 'imports_ns' to + module! MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit diff --git a/SPECS/linux-lts/0013-UPSTREAM-pwm-Export-pwmchip_release-for-external-use.patch b/SPECS/linux-lts/0013-UPSTREAM-pwm-Export-pwmchip_release-for-external-use.patch index 03d9743457..a4878efc8e 100644 --- a/SPECS/linux-lts/0013-UPSTREAM-pwm-Export-pwmchip_release-for-external-use.patch +++ b/SPECS/linux-lts/0013-UPSTREAM-pwm-Export-pwmchip_release-for-external-use.patch @@ -1,8 +1,7 @@ -From 21c80df86a56778bb86caf30236f44822c7c78ab Mon Sep 17 00:00:00 2001 +From 6eec5416f899b995199e6a78acdba366552fe74b Mon Sep 17 00:00:00 2001 From: Michal Wilczynski Date: Thu, 16 Oct 2025 15:38:01 +0200 -Subject: [PATCH 013/467] UPSTREAM: pwm: Export `pwmchip_release` for external - use +Subject: [RUYI PATCH] UPSTREAM: pwm: Export `pwmchip_release` for external use MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit diff --git a/SPECS/linux-lts/0014-UPSTREAM-rust-pwm-Add-Kconfig-and-basic-data-structu.patch b/SPECS/linux-lts/0014-UPSTREAM-rust-pwm-Add-Kconfig-and-basic-data-structu.patch index 1bc49e3700..3a11557826 100644 --- a/SPECS/linux-lts/0014-UPSTREAM-rust-pwm-Add-Kconfig-and-basic-data-structu.patch +++ b/SPECS/linux-lts/0014-UPSTREAM-rust-pwm-Add-Kconfig-and-basic-data-structu.patch @@ -1,7 +1,7 @@ -From 7012d45ae8771935292a62a8dcaa765c6adb7f56 Mon Sep 17 00:00:00 2001 +From dc77d3e5fd4e58d58519c452e5ab3a3dc0d30352 Mon Sep 17 00:00:00 2001 From: Michal Wilczynski Date: Thu, 16 Oct 2025 15:38:02 +0200 -Subject: [PATCH 014/467] UPSTREAM: rust: pwm: Add Kconfig and basic data +Subject: [RUYI PATCH] UPSTREAM: rust: pwm: Add Kconfig and basic data structures MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 diff --git a/SPECS/linux-lts/0015-UPSTREAM-rust-pwm-Add-complete-abstraction-layer.patch b/SPECS/linux-lts/0015-UPSTREAM-rust-pwm-Add-complete-abstraction-layer.patch index b977783a21..ae5c79af9d 100644 --- a/SPECS/linux-lts/0015-UPSTREAM-rust-pwm-Add-complete-abstraction-layer.patch +++ b/SPECS/linux-lts/0015-UPSTREAM-rust-pwm-Add-complete-abstraction-layer.patch @@ -1,7 +1,7 @@ -From df53f3655e6b9bf34d2b0af69746d7e7efcf5c82 Mon Sep 17 00:00:00 2001 +From fad4bc85d938d1fa411bfc7c09b2c327dc21cad2 Mon Sep 17 00:00:00 2001 From: Michal Wilczynski Date: Thu, 16 Oct 2025 15:38:03 +0200 -Subject: [PATCH 015/467] UPSTREAM: rust: pwm: Add complete abstraction layer +Subject: [RUYI PATCH] UPSTREAM: rust: pwm: Add complete abstraction layer MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit diff --git a/SPECS/linux-lts/0016-UPSTREAM-rust-pwm-Add-module_pwm_platform_driver-mac.patch b/SPECS/linux-lts/0016-UPSTREAM-rust-pwm-Add-module_pwm_platform_driver-mac.patch index 40837d9bee..abdc4b8594 100644 --- a/SPECS/linux-lts/0016-UPSTREAM-rust-pwm-Add-module_pwm_platform_driver-mac.patch +++ b/SPECS/linux-lts/0016-UPSTREAM-rust-pwm-Add-module_pwm_platform_driver-mac.patch @@ -1,7 +1,7 @@ -From 5ad798527f4b4099b19ab390304846d618b490fb Mon Sep 17 00:00:00 2001 +From a8369a239ce03856b5d63e39d5c92586c0641c18 Mon Sep 17 00:00:00 2001 From: Michal Wilczynski Date: Tue, 28 Oct 2025 13:22:33 +0100 -Subject: [PATCH 016/467] UPSTREAM: rust: pwm: Add module_pwm_platform_driver! +Subject: [RUYI PATCH] UPSTREAM: rust: pwm: Add module_pwm_platform_driver! macro MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 diff --git a/SPECS/linux-lts/0017-UPSTREAM-rust-pwm-Drop-wrapping-of-PWM-polarity-and-.patch b/SPECS/linux-lts/0017-UPSTREAM-rust-pwm-Drop-wrapping-of-PWM-polarity-and-.patch index 8a537db5b7..a2e4a4474c 100644 --- a/SPECS/linux-lts/0017-UPSTREAM-rust-pwm-Drop-wrapping-of-PWM-polarity-and-.patch +++ b/SPECS/linux-lts/0017-UPSTREAM-rust-pwm-Drop-wrapping-of-PWM-polarity-and-.patch @@ -1,8 +1,8 @@ -From 07a4233a04f77fea6255070d799f8158192c7896 Mon Sep 17 00:00:00 2001 +From 0bed1f7ddadef9191b85230b6f078bf48a1ddfc1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Uwe=20Kleine-K=C3=B6nig?= Date: Sat, 25 Oct 2025 14:23:56 +0200 -Subject: [PATCH 017/467] UPSTREAM: rust: pwm: Drop wrapping of PWM polarity - and state +Subject: [RUYI PATCH] UPSTREAM: rust: pwm: Drop wrapping of PWM polarity and + state MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit diff --git a/SPECS/linux-lts/0018-UPSTREAM-rust-pwm-Fix-broken-intra-doc-link.patch b/SPECS/linux-lts/0018-UPSTREAM-rust-pwm-Fix-broken-intra-doc-link.patch index 1bf1f84011..aaf7682aaf 100644 --- a/SPECS/linux-lts/0018-UPSTREAM-rust-pwm-Fix-broken-intra-doc-link.patch +++ b/SPECS/linux-lts/0018-UPSTREAM-rust-pwm-Fix-broken-intra-doc-link.patch @@ -1,7 +1,7 @@ -From 124a1875f86fff16688c63594e8e073464b6f4dd Mon Sep 17 00:00:00 2001 +From ce0cfe6521836f8d1bff1dbb1dd784f8dbe2f0f1 Mon Sep 17 00:00:00 2001 From: Miguel Ojeda Date: Wed, 29 Oct 2025 19:19:40 +0100 -Subject: [PATCH 018/467] UPSTREAM: rust: pwm: Fix broken intra-doc link +Subject: [RUYI PATCH] UPSTREAM: rust: pwm: Fix broken intra-doc link MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit diff --git a/SPECS/linux-lts/0019-UPSTREAM-pwm-Add-Rust-driver-for-T-HEAD-TH1520-SoC.patch b/SPECS/linux-lts/0019-UPSTREAM-pwm-Add-Rust-driver-for-T-HEAD-TH1520-SoC.patch index 6d68bf4ad8..4a1351eb60 100644 --- a/SPECS/linux-lts/0019-UPSTREAM-pwm-Add-Rust-driver-for-T-HEAD-TH1520-SoC.patch +++ b/SPECS/linux-lts/0019-UPSTREAM-pwm-Add-Rust-driver-for-T-HEAD-TH1520-SoC.patch @@ -1,7 +1,7 @@ -From 5c016dc78cc84fad38fbee81b56b42b02313be87 Mon Sep 17 00:00:00 2001 +From 323a18dcdb57c3c4a56d687fff097af3249b0fe3 Mon Sep 17 00:00:00 2001 From: Michal Wilczynski Date: Thu, 16 Oct 2025 15:38:04 +0200 -Subject: [PATCH 019/467] UPSTREAM: pwm: Add Rust driver for T-HEAD TH1520 SoC +Subject: [RUYI PATCH] UPSTREAM: pwm: Add Rust driver for T-HEAD TH1520 SoC MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit diff --git a/SPECS/linux-lts/0020-UPSTREAM-dt-bindings-pwm-thead-Add-T-HEAD-TH1520-PWM.patch b/SPECS/linux-lts/0020-UPSTREAM-dt-bindings-pwm-thead-Add-T-HEAD-TH1520-PWM.patch index 7e8f6f69f9..72b7b6e552 100644 --- a/SPECS/linux-lts/0020-UPSTREAM-dt-bindings-pwm-thead-Add-T-HEAD-TH1520-PWM.patch +++ b/SPECS/linux-lts/0020-UPSTREAM-dt-bindings-pwm-thead-Add-T-HEAD-TH1520-PWM.patch @@ -1,8 +1,8 @@ -From 75682c170513cae6790cdc8c45c039ae28ac86a8 Mon Sep 17 00:00:00 2001 +From 1ff5f22be0212ca408aa7b7fb452742a1c0e44d8 Mon Sep 17 00:00:00 2001 From: Michal Wilczynski Date: Thu, 16 Oct 2025 15:38:05 +0200 -Subject: [PATCH 020/467] UPSTREAM: dt-bindings: pwm: thead: Add T-HEAD TH1520 - PWM controller +Subject: [RUYI PATCH] UPSTREAM: dt-bindings: pwm: thead: Add T-HEAD TH1520 PWM + controller MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit diff --git a/SPECS/linux-lts/0021-UPSTREAM-pwm-Fix-Rust-formatting.patch b/SPECS/linux-lts/0021-UPSTREAM-pwm-Fix-Rust-formatting.patch index 2822d39394..b045d4a3cf 100644 --- a/SPECS/linux-lts/0021-UPSTREAM-pwm-Fix-Rust-formatting.patch +++ b/SPECS/linux-lts/0021-UPSTREAM-pwm-Fix-Rust-formatting.patch @@ -1,7 +1,7 @@ -From 16e23a75ada51fa0c1e922c0c532193c2465a324 Mon Sep 17 00:00:00 2001 +From d512570ff756b751d74f27121ccd6784be182855 Mon Sep 17 00:00:00 2001 From: Miguel Ojeda Date: Wed, 29 Oct 2025 19:25:02 +0100 -Subject: [PATCH 021/467] UPSTREAM: pwm: Fix Rust formatting +Subject: [RUYI PATCH] UPSTREAM: pwm: Fix Rust formatting MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit diff --git a/SPECS/linux-lts/0022-UPSTREAM-pwm-th1520-Fix-clippy-warning-for-redundant.patch b/SPECS/linux-lts/0022-UPSTREAM-pwm-th1520-Fix-clippy-warning-for-redundant.patch index e395108a1d..06d4f3cc31 100644 --- a/SPECS/linux-lts/0022-UPSTREAM-pwm-th1520-Fix-clippy-warning-for-redundant.patch +++ b/SPECS/linux-lts/0022-UPSTREAM-pwm-th1520-Fix-clippy-warning-for-redundant.patch @@ -1,8 +1,8 @@ -From 24db3f421ffa17c4b9c6a3a054c6cb6d164a3645 Mon Sep 17 00:00:00 2001 +From b8e48fd0e9516c83f6a6193730b5d042ed5263bd Mon Sep 17 00:00:00 2001 From: Michal Wilczynski Date: Tue, 28 Oct 2025 13:22:35 +0100 -Subject: [PATCH 022/467] UPSTREAM: pwm: th1520: Fix clippy warning for - redundant struct field init +Subject: [RUYI PATCH] UPSTREAM: pwm: th1520: Fix clippy warning for redundant + struct field init MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit diff --git a/SPECS/linux-lts/0023-UPSTREAM-pwm-th1520-Use-module_pwm_platform_driver-m.patch b/SPECS/linux-lts/0023-UPSTREAM-pwm-th1520-Use-module_pwm_platform_driver-m.patch index b5b15a3878..b4384ef364 100644 --- a/SPECS/linux-lts/0023-UPSTREAM-pwm-th1520-Use-module_pwm_platform_driver-m.patch +++ b/SPECS/linux-lts/0023-UPSTREAM-pwm-th1520-Use-module_pwm_platform_driver-m.patch @@ -1,8 +1,8 @@ -From 0e92472e39f3b94fbd120e69f625a2b4d5ade50d Mon Sep 17 00:00:00 2001 +From e4ad935868f5592d06155265261be5934f1821ec Mon Sep 17 00:00:00 2001 From: Michal Wilczynski Date: Tue, 28 Oct 2025 13:22:34 +0100 -Subject: [PATCH 023/467] UPSTREAM: pwm: th1520: Use - module_pwm_platform_driver! macro +Subject: [RUYI PATCH] UPSTREAM: pwm: th1520: Use module_pwm_platform_driver! + macro MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit diff --git a/SPECS/linux-lts/0024-UPSTREAM-pwm-th1520-Fix-missing-Kconfig-dependencies.patch b/SPECS/linux-lts/0024-UPSTREAM-pwm-th1520-Fix-missing-Kconfig-dependencies.patch index 5f7489ce32..f01d4fe843 100644 --- a/SPECS/linux-lts/0024-UPSTREAM-pwm-th1520-Fix-missing-Kconfig-dependencies.patch +++ b/SPECS/linux-lts/0024-UPSTREAM-pwm-th1520-Fix-missing-Kconfig-dependencies.patch @@ -1,8 +1,7 @@ -From 0580c630050cf90e3e014a44e421a8876ab2c452 Mon Sep 17 00:00:00 2001 +From 04ac502626ab9c23c88cb52a8447f2a6d6871231 Mon Sep 17 00:00:00 2001 From: Michal Wilczynski Date: Tue, 9 Dec 2025 21:06:03 +0100 -Subject: [PATCH 024/467] UPSTREAM: pwm: th1520: Fix missing Kconfig - dependencies +Subject: [RUYI PATCH] UPSTREAM: pwm: th1520: Fix missing Kconfig dependencies MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit diff --git a/SPECS/linux-lts/0025-UPSTREAM-riscv-dts-thead-add-xtheadvector-to-the-th1.patch b/SPECS/linux-lts/0025-UPSTREAM-riscv-dts-thead-add-xtheadvector-to-the-th1.patch index 7f73a0b809..4f6592382a 100644 --- a/SPECS/linux-lts/0025-UPSTREAM-riscv-dts-thead-add-xtheadvector-to-the-th1.patch +++ b/SPECS/linux-lts/0025-UPSTREAM-riscv-dts-thead-add-xtheadvector-to-the-th1.patch @@ -1,7 +1,7 @@ -From 95091d9394da630c87c6cfa3824b397f4eee2f73 Mon Sep 17 00:00:00 2001 +From c413ed4426b184f8cb2304ff2897825e2a215871 Mon Sep 17 00:00:00 2001 From: Han Gao Date: Fri, 19 Sep 2025 04:44:47 +0800 -Subject: [PATCH 025/467] UPSTREAM: riscv: dts: thead: add xtheadvector to the +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: thead: add xtheadvector to the th1520 devicetree The th1520 support xtheadvector [1] so it can be included in the diff --git a/SPECS/linux-lts/0026-UPSTREAM-riscv-dts-thead-add-ziccrse-for-th1520.patch b/SPECS/linux-lts/0026-UPSTREAM-riscv-dts-thead-add-ziccrse-for-th1520.patch index c199f87111..645a855fa1 100644 --- a/SPECS/linux-lts/0026-UPSTREAM-riscv-dts-thead-add-ziccrse-for-th1520.patch +++ b/SPECS/linux-lts/0026-UPSTREAM-riscv-dts-thead-add-ziccrse-for-th1520.patch @@ -1,7 +1,7 @@ -From ce397038e6fdb45ea0afe6fc74d6710bb294ef61 Mon Sep 17 00:00:00 2001 +From d86f79c2f13ca9a4c232cce2f5dd5020f18a9656 Mon Sep 17 00:00:00 2001 From: Han Gao Date: Fri, 19 Sep 2025 04:44:48 +0800 -Subject: [PATCH 026/467] UPSTREAM: riscv: dts: thead: add ziccrse for th1520 +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: thead: add ziccrse for th1520 Existing rv64 hardware conforms to the rva20 profile. diff --git a/SPECS/linux-lts/0027-UPSTREAM-riscv-dts-thead-add-zfh-for-th1520.patch b/SPECS/linux-lts/0027-UPSTREAM-riscv-dts-thead-add-zfh-for-th1520.patch index 756d021b59..02c41e4add 100644 --- a/SPECS/linux-lts/0027-UPSTREAM-riscv-dts-thead-add-zfh-for-th1520.patch +++ b/SPECS/linux-lts/0027-UPSTREAM-riscv-dts-thead-add-zfh-for-th1520.patch @@ -1,7 +1,7 @@ -From bc00f9a0bbb6c14f199943da7ff9f30859dee923 Mon Sep 17 00:00:00 2001 +From 6c54c277dfd8b9c53a91aac3aa08d80a40eef35d Mon Sep 17 00:00:00 2001 From: Han Gao Date: Fri, 19 Sep 2025 04:44:49 +0800 -Subject: [PATCH 027/467] UPSTREAM: riscv: dts: thead: add zfh for th1520 +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: thead: add zfh for th1520 th1520 support Zfh ISA extension. It supports the same RISC-V extensions as SG2042. diff --git a/SPECS/linux-lts/0028-UPSTREAM-riscv-dts-thead-Add-PWM-controller-node.patch b/SPECS/linux-lts/0028-UPSTREAM-riscv-dts-thead-Add-PWM-controller-node.patch index 6dc799bdb4..1da5ef41e5 100644 --- a/SPECS/linux-lts/0028-UPSTREAM-riscv-dts-thead-Add-PWM-controller-node.patch +++ b/SPECS/linux-lts/0028-UPSTREAM-riscv-dts-thead-Add-PWM-controller-node.patch @@ -1,7 +1,7 @@ -From ccee5be0d66e8a00cbb23864ba081c741a37e009 Mon Sep 17 00:00:00 2001 +From 3ca9f9c1f974516ed56055f86fe810e70234d2e0 Mon Sep 17 00:00:00 2001 From: Michal Wilczynski Date: Thu, 16 Oct 2025 15:38:06 +0200 -Subject: [PATCH 028/467] UPSTREAM: riscv: dts: thead: Add PWM controller node +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: thead: Add PWM controller node Add the Device Tree node for the T-HEAD TH1520 SoC's PWM controller. diff --git a/SPECS/linux-lts/0029-UPSTREAM-riscv-dts-thead-Add-PWM-fan-and-thermal-con.patch b/SPECS/linux-lts/0029-UPSTREAM-riscv-dts-thead-Add-PWM-fan-and-thermal-con.patch index 4d0f44e4d2..16a6ff7a16 100644 --- a/SPECS/linux-lts/0029-UPSTREAM-riscv-dts-thead-Add-PWM-fan-and-thermal-con.patch +++ b/SPECS/linux-lts/0029-UPSTREAM-riscv-dts-thead-Add-PWM-fan-and-thermal-con.patch @@ -1,7 +1,7 @@ -From 6e4ddc5ab60b81304d73eac230c5c2d9b641f114 Mon Sep 17 00:00:00 2001 +From 34e6c9de17b9ff861746760bfc9334e3fc3060cb Mon Sep 17 00:00:00 2001 From: Michal Wilczynski Date: Thu, 16 Oct 2025 15:38:07 +0200 -Subject: [PATCH 029/467] UPSTREAM: riscv: dts: thead: Add PWM fan and thermal +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: thead: Add PWM fan and thermal control Add Device Tree nodes to enable a PWM controlled fan and it's associated diff --git a/SPECS/linux-lts/0030-UPSTREAM-dt-bindings-vendor-prefixes-Add-UltraRISC.patch b/SPECS/linux-lts/0030-UPSTREAM-dt-bindings-vendor-prefixes-Add-UltraRISC.patch index b61a71c164..073023bb11 100644 --- a/SPECS/linux-lts/0030-UPSTREAM-dt-bindings-vendor-prefixes-Add-UltraRISC.patch +++ b/SPECS/linux-lts/0030-UPSTREAM-dt-bindings-vendor-prefixes-Add-UltraRISC.patch @@ -1,7 +1,7 @@ -From 177d1708f10af38636c322a58f9e71637e3553b3 Mon Sep 17 00:00:00 2001 +From 185f8436e47e0844df0a0d25fbb995a69a565fd1 Mon Sep 17 00:00:00 2001 From: Lucas Zampieri Date: Fri, 24 Oct 2025 09:36:40 +0100 -Subject: [PATCH 030/467] UPSTREAM: dt-bindings: vendor-prefixes: Add UltraRISC +Subject: [RUYI PATCH] UPSTREAM: dt-bindings: vendor-prefixes: Add UltraRISC Add vendor prefix for UltraRISC Technology Co., Ltd. diff --git a/SPECS/linux-lts/0031-UPSTREAM-dt-bindings-interrupt-controller-Add-UltraR.patch b/SPECS/linux-lts/0031-UPSTREAM-dt-bindings-interrupt-controller-Add-UltraR.patch index 6ba2aa9b16..a9e42fff55 100644 --- a/SPECS/linux-lts/0031-UPSTREAM-dt-bindings-interrupt-controller-Add-UltraR.patch +++ b/SPECS/linux-lts/0031-UPSTREAM-dt-bindings-interrupt-controller-Add-UltraR.patch @@ -1,7 +1,7 @@ -From 1cb2556af5d85298241d0bccaeab5658801c313a Mon Sep 17 00:00:00 2001 +From 38033dfbe309976053db7684228a93e90a76f54f Mon Sep 17 00:00:00 2001 From: Charles Mirabile Date: Fri, 24 Oct 2025 09:36:41 +0100 -Subject: [PATCH 031/467] UPSTREAM: dt-bindings: interrupt-controller: Add +Subject: [RUYI PATCH] UPSTREAM: dt-bindings: interrupt-controller: Add UltraRISC DP1000 PLIC Add compatible strings for the PLIC found in UltraRISC DP1000 SoC. diff --git a/SPECS/linux-lts/0032-UPSTREAM-irqchip-sifive-plic-Cache-the-interrupt-ena.patch b/SPECS/linux-lts/0032-UPSTREAM-irqchip-sifive-plic-Cache-the-interrupt-ena.patch index cd328f7134..c47e05232b 100644 --- a/SPECS/linux-lts/0032-UPSTREAM-irqchip-sifive-plic-Cache-the-interrupt-ena.patch +++ b/SPECS/linux-lts/0032-UPSTREAM-irqchip-sifive-plic-Cache-the-interrupt-ena.patch @@ -1,7 +1,7 @@ -From 58300649d94886f078c9ae5211d5e73fdb5d86dd Mon Sep 17 00:00:00 2001 +From 3f8b27c28b0516d4675130d799e52fe0e47cc190 Mon Sep 17 00:00:00 2001 From: Charles Mirabile Date: Fri, 24 Oct 2025 09:36:42 +0100 -Subject: [PATCH 032/467] UPSTREAM: irqchip/sifive-plic: Cache the interrupt +Subject: [RUYI PATCH] UPSTREAM: irqchip/sifive-plic: Cache the interrupt enable state Optimize the PLIC driver by maintaining the interrupt enable state in the diff --git a/SPECS/linux-lts/0033-UPSTREAM-irqchip-sifive-plic-Add-support-for-UltraRI.patch b/SPECS/linux-lts/0033-UPSTREAM-irqchip-sifive-plic-Add-support-for-UltraRI.patch index 849bb391aa..35bf32dde3 100644 --- a/SPECS/linux-lts/0033-UPSTREAM-irqchip-sifive-plic-Add-support-for-UltraRI.patch +++ b/SPECS/linux-lts/0033-UPSTREAM-irqchip-sifive-plic-Add-support-for-UltraRI.patch @@ -1,8 +1,8 @@ -From 47ff9167559df87c4792972c083b403e13935fed Mon Sep 17 00:00:00 2001 +From 4ef8a6c6a0ad3046bd79c8e7ba68b55f65faba37 Mon Sep 17 00:00:00 2001 From: Charles Mirabile Date: Fri, 24 Oct 2025 09:36:43 +0100 -Subject: [PATCH 033/467] UPSTREAM: irqchip/sifive-plic: Add support for - UltraRISC DP1000 PLIC +Subject: [RUYI PATCH] UPSTREAM: irqchip/sifive-plic: Add support for UltraRISC + DP1000 PLIC Add a new compatible for the plic found in UltraRISC DP1000 with a quirk to work around a known hardware bug with IRQ claiming in the UR-CP100 cores. diff --git a/SPECS/linux-lts/0034-UPSTREAM-riscv-cpu_ops_sbi-smp_processor_id-returns-.patch b/SPECS/linux-lts/0034-UPSTREAM-riscv-cpu_ops_sbi-smp_processor_id-returns-.patch index d396f1c218..d80cdc947a 100644 --- a/SPECS/linux-lts/0034-UPSTREAM-riscv-cpu_ops_sbi-smp_processor_id-returns-.patch +++ b/SPECS/linux-lts/0034-UPSTREAM-riscv-cpu_ops_sbi-smp_processor_id-returns-.patch @@ -1,8 +1,8 @@ -From 44af92527d4da6d483b4439b15fafb8133938613 Mon Sep 17 00:00:00 2001 +From 88d1fb14b13933d5016b00a18582e2c2dec28c29 Mon Sep 17 00:00:00 2001 From: Ben Dooks Date: Fri, 2 Jan 2026 14:58:39 +0000 -Subject: [PATCH 034/467] UPSTREAM: riscv: cpu_ops_sbi: smp_processor_id() - returns int, not unsigned int +Subject: [RUYI PATCH] UPSTREAM: riscv: cpu_ops_sbi: smp_processor_id() returns + int, not unsigned int The print in sbi_cpu_stop() assumes smp_processor_id() returns an unsigned int, when it is actually an int. Fix the format string to diff --git a/SPECS/linux-lts/0035-UPSTREAM-spi-dt-bindings-fsl-qspi-support-SpacemiT-K.patch b/SPECS/linux-lts/0035-UPSTREAM-spi-dt-bindings-fsl-qspi-support-SpacemiT-K.patch index 5bf082acbe..8df22862a6 100644 --- a/SPECS/linux-lts/0035-UPSTREAM-spi-dt-bindings-fsl-qspi-support-SpacemiT-K.patch +++ b/SPECS/linux-lts/0035-UPSTREAM-spi-dt-bindings-fsl-qspi-support-SpacemiT-K.patch @@ -1,8 +1,8 @@ -From 5b142274eb87250e655c690bfa35b94fa0c7e37d Mon Sep 17 00:00:00 2001 +From b73688a2f1f8a16a7bb9609da304ebfd1dd7f968 Mon Sep 17 00:00:00 2001 From: Alex Elder Date: Mon, 27 Oct 2025 08:29:59 -0500 -Subject: [PATCH 035/467] UPSTREAM: spi: dt-bindings: fsl-qspi: support - SpacemiT K1 +Subject: [RUYI PATCH] UPSTREAM: spi: dt-bindings: fsl-qspi: support SpacemiT + K1 Add the SpacemiT K1 SoC QSPI IP to the list of supported hardware. This is the first non-Freescale device represented here. It has a nearly diff --git a/SPECS/linux-lts/0036-UPSTREAM-spi-dt-bindings-fsl-qspi-add-optional-reset.patch b/SPECS/linux-lts/0036-UPSTREAM-spi-dt-bindings-fsl-qspi-add-optional-reset.patch index df87b1b4de..398331aef3 100644 --- a/SPECS/linux-lts/0036-UPSTREAM-spi-dt-bindings-fsl-qspi-add-optional-reset.patch +++ b/SPECS/linux-lts/0036-UPSTREAM-spi-dt-bindings-fsl-qspi-add-optional-reset.patch @@ -1,7 +1,7 @@ -From 3ac3b07de446afd26f22edb65a08e995d1e10394 Mon Sep 17 00:00:00 2001 +From 10c6bee274527e1fa5cf933eade792a8269bfa6e Mon Sep 17 00:00:00 2001 From: Alex Elder Date: Mon, 27 Oct 2025 08:30:00 -0500 -Subject: [PATCH 036/467] UPSTREAM: spi: dt-bindings: fsl-qspi: add optional +Subject: [RUYI PATCH] UPSTREAM: spi: dt-bindings: fsl-qspi: add optional resets Allow two resets to be defined to support the SpacemiT K1 SoC QSPI IP. diff --git a/SPECS/linux-lts/0037-UPSTREAM-spi-fsl-qspi-add-optional-reset-support.patch b/SPECS/linux-lts/0037-UPSTREAM-spi-fsl-qspi-add-optional-reset-support.patch index 8cf653eea4..cb7815d689 100644 --- a/SPECS/linux-lts/0037-UPSTREAM-spi-fsl-qspi-add-optional-reset-support.patch +++ b/SPECS/linux-lts/0037-UPSTREAM-spi-fsl-qspi-add-optional-reset-support.patch @@ -1,7 +1,7 @@ -From 2383a4b7bd0919af694b0148ac45bfa98b5c3e5e Mon Sep 17 00:00:00 2001 +From eef2e7554dce124c0d27d06663f545ebf8b06b4f Mon Sep 17 00:00:00 2001 From: Alex Elder Date: Mon, 27 Oct 2025 08:30:01 -0500 -Subject: [PATCH 037/467] UPSTREAM: spi: fsl-qspi: add optional reset support +Subject: [RUYI PATCH] UPSTREAM: spi: fsl-qspi: add optional reset support Add support for one or more optional exclusive resets. These simply need to be deasserted at probe time, and can remain that way for the life of the diff --git a/SPECS/linux-lts/0038-UPSTREAM-spi-fsl-qspi-switch-predicates-to-bool.patch b/SPECS/linux-lts/0038-UPSTREAM-spi-fsl-qspi-switch-predicates-to-bool.patch index 5790e35633..78d52fb913 100644 --- a/SPECS/linux-lts/0038-UPSTREAM-spi-fsl-qspi-switch-predicates-to-bool.patch +++ b/SPECS/linux-lts/0038-UPSTREAM-spi-fsl-qspi-switch-predicates-to-bool.patch @@ -1,7 +1,7 @@ -From 6c4d84191d4a646424af4fd8f0bfa0cb6a8b88a5 Mon Sep 17 00:00:00 2001 +From 01d5441431b796aa0c7bef71294e87584b3a7ac2 Mon Sep 17 00:00:00 2001 From: Alex Elder Date: Mon, 27 Oct 2025 08:30:02 -0500 -Subject: [PATCH 038/467] UPSTREAM: spi: fsl-qspi: switch predicates to bool +Subject: [RUYI PATCH] UPSTREAM: spi: fsl-qspi: switch predicates to bool Change all the needs_*() functions so they are no longer inline, and return bool rather than int. diff --git a/SPECS/linux-lts/0039-UPSTREAM-spi-fsl-qspi-add-a-clock-disable-quirk.patch b/SPECS/linux-lts/0039-UPSTREAM-spi-fsl-qspi-add-a-clock-disable-quirk.patch index 2a0208b72d..2a381e6fb3 100644 --- a/SPECS/linux-lts/0039-UPSTREAM-spi-fsl-qspi-add-a-clock-disable-quirk.patch +++ b/SPECS/linux-lts/0039-UPSTREAM-spi-fsl-qspi-add-a-clock-disable-quirk.patch @@ -1,7 +1,7 @@ -From df1020f14b967f34e7183e2820998cf3ae06f448 Mon Sep 17 00:00:00 2001 +From 513e5c7ca8e7b4847c1a9fa9328ecc1da6e03ca4 Mon Sep 17 00:00:00 2001 From: Alex Elder Date: Mon, 27 Oct 2025 08:30:03 -0500 -Subject: [PATCH 039/467] UPSTREAM: spi: fsl-qspi: add a clock disable quirk +Subject: [RUYI PATCH] UPSTREAM: spi: fsl-qspi: add a clock disable quirk The SpacemiT K1 SoC QSPI implementation needs to avoid shutting off the clock when changing its rate. Add a new quirk to indicate that disabling diff --git a/SPECS/linux-lts/0040-UPSTREAM-spi-fsl-qspi-introduce-sfa_size-devtype-dat.patch b/SPECS/linux-lts/0040-UPSTREAM-spi-fsl-qspi-introduce-sfa_size-devtype-dat.patch index 25af899158..c71778c496 100644 --- a/SPECS/linux-lts/0040-UPSTREAM-spi-fsl-qspi-introduce-sfa_size-devtype-dat.patch +++ b/SPECS/linux-lts/0040-UPSTREAM-spi-fsl-qspi-introduce-sfa_size-devtype-dat.patch @@ -1,8 +1,7 @@ -From 5ee33dac7a10929555229bc766263ba35d9f130b Mon Sep 17 00:00:00 2001 +From a5d94c358a562e2cf863fff92b78f0ee109abf10 Mon Sep 17 00:00:00 2001 From: Alex Elder Date: Mon, 27 Oct 2025 08:30:04 -0500 -Subject: [PATCH 040/467] UPSTREAM: spi: fsl-qspi: introduce sfa_size devtype - data +Subject: [RUYI PATCH] UPSTREAM: spi: fsl-qspi: introduce sfa_size devtype data In fsl_qspi_default_setup(), four registers define the size of blocks of data to written to each of four chips that comprise SPI NOR flash storage. diff --git a/SPECS/linux-lts/0041-UPSTREAM-spi-fsl-qspi-support-the-SpacemiT-K1-SoC.patch b/SPECS/linux-lts/0041-UPSTREAM-spi-fsl-qspi-support-the-SpacemiT-K1-SoC.patch index 2b3039720f..f9a55c89ea 100644 --- a/SPECS/linux-lts/0041-UPSTREAM-spi-fsl-qspi-support-the-SpacemiT-K1-SoC.patch +++ b/SPECS/linux-lts/0041-UPSTREAM-spi-fsl-qspi-support-the-SpacemiT-K1-SoC.patch @@ -1,7 +1,7 @@ -From a8bec413546fceae68a0a397e5a6838e88544773 Mon Sep 17 00:00:00 2001 +From 014a6255ae46191c6eae14aa9de40535b4226ff0 Mon Sep 17 00:00:00 2001 From: Alex Elder Date: Mon, 27 Oct 2025 08:30:05 -0500 -Subject: [PATCH 041/467] UPSTREAM: spi: fsl-qspi: support the SpacemiT K1 SoC +Subject: [RUYI PATCH] UPSTREAM: spi: fsl-qspi: support the SpacemiT K1 SoC Allow the SPI_FSL_QUADSPI Kconfig option to be selected if ARCH_SPACEMIT enabled. diff --git a/SPECS/linux-lts/0042-UPSTREAM-dt-bindings-pci-spacemit-Introduce-PCIe-hos.patch b/SPECS/linux-lts/0042-UPSTREAM-dt-bindings-pci-spacemit-Introduce-PCIe-hos.patch index 6059a178c4..8ad45c9e57 100644 --- a/SPECS/linux-lts/0042-UPSTREAM-dt-bindings-pci-spacemit-Introduce-PCIe-hos.patch +++ b/SPECS/linux-lts/0042-UPSTREAM-dt-bindings-pci-spacemit-Introduce-PCIe-hos.patch @@ -1,7 +1,7 @@ -From da811b95eb6cac6d2befd327921dfa943928d913 Mon Sep 17 00:00:00 2001 +From 0d6c9d0a071fcea507cb2b62195d329fbfd4e3fa Mon Sep 17 00:00:00 2001 From: Alex Elder Date: Thu, 13 Nov 2025 15:45:35 -0600 -Subject: [PATCH 042/467] UPSTREAM: dt-bindings: pci: spacemit: Introduce PCIe +Subject: [RUYI PATCH] UPSTREAM: dt-bindings: pci: spacemit: Introduce PCIe host controller Add the Devicetree binding for the PCIe Root Complex found on the SpacemiT diff --git a/SPECS/linux-lts/0043-UPSTREAM-PCI-spacemit-Add-SpacemiT-PCIe-host-driver.patch b/SPECS/linux-lts/0043-UPSTREAM-PCI-spacemit-Add-SpacemiT-PCIe-host-driver.patch index c6df251f89..15f880c23c 100644 --- a/SPECS/linux-lts/0043-UPSTREAM-PCI-spacemit-Add-SpacemiT-PCIe-host-driver.patch +++ b/SPECS/linux-lts/0043-UPSTREAM-PCI-spacemit-Add-SpacemiT-PCIe-host-driver.patch @@ -1,8 +1,7 @@ -From 2cd4c603d19ce303b9a474892adb6f0982e1a630 Mon Sep 17 00:00:00 2001 +From e886894eecb01fde7c6d687a520c00f8f8c6577b Mon Sep 17 00:00:00 2001 From: Alex Elder Date: Thu, 13 Nov 2025 15:45:37 -0600 -Subject: [PATCH 043/467] UPSTREAM: PCI: spacemit: Add SpacemiT PCIe host - driver +Subject: [RUYI PATCH] UPSTREAM: PCI: spacemit: Add SpacemiT PCIe host driver Introduce a driver for the PCIe host controller found in the SpacemiT K1 SoC. The hardware is derived from the Synopsys DesignWare PCIe IP. The diff --git a/SPECS/linux-lts/0044-UPSTREAM-ASoC-dt-bindings-Add-bindings-for-SpacemiT-.patch b/SPECS/linux-lts/0044-UPSTREAM-ASoC-dt-bindings-Add-bindings-for-SpacemiT-.patch index 1485b4db34..9f87089128 100644 --- a/SPECS/linux-lts/0044-UPSTREAM-ASoC-dt-bindings-Add-bindings-for-SpacemiT-.patch +++ b/SPECS/linux-lts/0044-UPSTREAM-ASoC-dt-bindings-Add-bindings-for-SpacemiT-.patch @@ -1,8 +1,8 @@ -From 13a1831ca9975f970aa93217ef8f0d78be839558 Mon Sep 17 00:00:00 2001 +From dd167e5e356efc521fea95cca3dab9214d112f2f Mon Sep 17 00:00:00 2001 From: Troy Mitchell Date: Fri, 17 Oct 2025 11:16:17 +0800 -Subject: [PATCH 044/467] UPSTREAM: ASoC: dt-bindings: Add bindings for - SpacemiT K1 +Subject: [RUYI PATCH] UPSTREAM: ASoC: dt-bindings: Add bindings for SpacemiT + K1 Add dt-binding for the i2s driver of SpacemiT's K1 SoC. diff --git a/SPECS/linux-lts/0045-UPSTREAM-ASoC-spacemit-add-i2s-support-for-K1-SoC.patch b/SPECS/linux-lts/0045-UPSTREAM-ASoC-spacemit-add-i2s-support-for-K1-SoC.patch index 7ac964a344..79edb29c56 100644 --- a/SPECS/linux-lts/0045-UPSTREAM-ASoC-spacemit-add-i2s-support-for-K1-SoC.patch +++ b/SPECS/linux-lts/0045-UPSTREAM-ASoC-spacemit-add-i2s-support-for-K1-SoC.patch @@ -1,7 +1,7 @@ -From 80ddb8319d498df366ee69857ac128f3a759fa09 Mon Sep 17 00:00:00 2001 +From f80e4dd0f340bda7a0c1d1cbcb59d4a346aa00dd Mon Sep 17 00:00:00 2001 From: Troy Mitchell Date: Fri, 17 Oct 2025 11:16:18 +0800 -Subject: [PATCH 045/467] UPSTREAM: ASoC: spacemit: add i2s support for K1 SoC +Subject: [RUYI PATCH] UPSTREAM: ASoC: spacemit: add i2s support for K1 SoC Add ASoC platform driver for the SpacemiT K1 SoC full-duplex I2S controller. diff --git a/SPECS/linux-lts/0046-UPSTREAM-riscv-dts-spacemit-add-UART-pinctrl-combina.patch b/SPECS/linux-lts/0046-UPSTREAM-riscv-dts-spacemit-add-UART-pinctrl-combina.patch index 9821983f58..0efa4da8f2 100644 --- a/SPECS/linux-lts/0046-UPSTREAM-riscv-dts-spacemit-add-UART-pinctrl-combina.patch +++ b/SPECS/linux-lts/0046-UPSTREAM-riscv-dts-spacemit-add-UART-pinctrl-combina.patch @@ -1,7 +1,7 @@ -From f28219b541a910d335af7fc7097a19a6e07b8712 Mon Sep 17 00:00:00 2001 +From affb820dfce75897605fbf89105fc1537a97d75b Mon Sep 17 00:00:00 2001 From: Hendrik Hamerlinck Date: Wed, 17 Sep 2025 08:59:07 +0200 -Subject: [PATCH 046/467] UPSTREAM: riscv: dts: spacemit: add UART pinctrl +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: spacemit: add UART pinctrl combinations Add UART pinctrl configurations based on the SoC datasheet and the diff --git a/SPECS/linux-lts/0047-UPSTREAM-riscv-dts-spacemit-enable-the-i2c8-adapter.patch b/SPECS/linux-lts/0047-UPSTREAM-riscv-dts-spacemit-enable-the-i2c8-adapter.patch index 548745b649..0351d09704 100644 --- a/SPECS/linux-lts/0047-UPSTREAM-riscv-dts-spacemit-enable-the-i2c8-adapter.patch +++ b/SPECS/linux-lts/0047-UPSTREAM-riscv-dts-spacemit-enable-the-i2c8-adapter.patch @@ -1,8 +1,7 @@ -From 3f8785742d64517f721a7a1a9e35822265ad85a4 Mon Sep 17 00:00:00 2001 +From 1df92e173f9dd68d0498d92fb07c15a5b2ddf8eb Mon Sep 17 00:00:00 2001 From: Alex Elder Date: Mon, 25 Aug 2025 12:20:54 -0500 -Subject: [PATCH 047/467] UPSTREAM: riscv: dts: spacemit: enable the i2c8 - adapter +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: spacemit: enable the i2c8 adapter Define properties for the I2C adapter that provides access to the SpacemiT P1 PMIC. Enable this adapter on the Banana Pi BPI-F3. diff --git a/SPECS/linux-lts/0048-UPSTREAM-riscv-dts-spacemit-define-fixed-regulators.patch b/SPECS/linux-lts/0048-UPSTREAM-riscv-dts-spacemit-define-fixed-regulators.patch index f309738c32..3b5e57ed41 100644 --- a/SPECS/linux-lts/0048-UPSTREAM-riscv-dts-spacemit-define-fixed-regulators.patch +++ b/SPECS/linux-lts/0048-UPSTREAM-riscv-dts-spacemit-define-fixed-regulators.patch @@ -1,8 +1,7 @@ -From 60174cdbef524e4485dec91e48413d76da328022 Mon Sep 17 00:00:00 2001 +From b0c37d9383e9fff2cfae5d13e29a5b2fd134e33b Mon Sep 17 00:00:00 2001 From: Alex Elder Date: Mon, 25 Aug 2025 12:20:55 -0500 -Subject: [PATCH 048/467] UPSTREAM: riscv: dts: spacemit: define fixed - regulators +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: spacemit: define fixed regulators Define the DC power input and the 4v power as fixed supplies in the Banana Pi BPI-F3. diff --git a/SPECS/linux-lts/0049-UPSTREAM-riscv-dts-spacemit-define-regulator-constra.patch b/SPECS/linux-lts/0049-UPSTREAM-riscv-dts-spacemit-define-regulator-constra.patch index 0d1ed9ad79..4b13e15e20 100644 --- a/SPECS/linux-lts/0049-UPSTREAM-riscv-dts-spacemit-define-regulator-constra.patch +++ b/SPECS/linux-lts/0049-UPSTREAM-riscv-dts-spacemit-define-regulator-constra.patch @@ -1,7 +1,7 @@ -From 43691716fd0d18bd887592bb3f1a7dc63e9b49be Mon Sep 17 00:00:00 2001 +From 7fc9ff12b887fdc874ebb28f553e807648b6a4d4 Mon Sep 17 00:00:00 2001 From: Alex Elder Date: Mon, 25 Aug 2025 12:20:56 -0500 -Subject: [PATCH 049/467] UPSTREAM: riscv: dts: spacemit: define regulator +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: spacemit: define regulator constraints Define basic constraints for the regulators in the SpacemiT P1 PMIC, diff --git a/SPECS/linux-lts/0050-UPSTREAM-riscv-dts-spacemit-enable-the-i2c2-adapter-.patch b/SPECS/linux-lts/0050-UPSTREAM-riscv-dts-spacemit-enable-the-i2c2-adapter-.patch index 4266d9d06e..c64be604a7 100644 --- a/SPECS/linux-lts/0050-UPSTREAM-riscv-dts-spacemit-enable-the-i2c2-adapter-.patch +++ b/SPECS/linux-lts/0050-UPSTREAM-riscv-dts-spacemit-enable-the-i2c2-adapter-.patch @@ -1,8 +1,8 @@ -From 3d02f5d734bb489dc5c101affd5ad99687ffaffd Mon Sep 17 00:00:00 2001 +From a276be6d58f16c9c62bd6c0f76f6b2133fcfff5b Mon Sep 17 00:00:00 2001 From: Aurelien Jarno Date: Fri, 26 Sep 2025 19:54:37 +0200 -Subject: [PATCH 050/467] UPSTREAM: riscv: dts: spacemit: enable the i2c2 - adapter on BPI-F3 +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: spacemit: enable the i2c2 adapter + on BPI-F3 Define properties for the I2C adapter, and enable it on the BPI-F3. It will be used by the 24c02 eeprom. diff --git a/SPECS/linux-lts/0051-UPSTREAM-riscv-dts-spacemit-add-24c02-eeprom-on-BPI-.patch b/SPECS/linux-lts/0051-UPSTREAM-riscv-dts-spacemit-add-24c02-eeprom-on-BPI-.patch index feedcc216d..5c72618d50 100644 --- a/SPECS/linux-lts/0051-UPSTREAM-riscv-dts-spacemit-add-24c02-eeprom-on-BPI-.patch +++ b/SPECS/linux-lts/0051-UPSTREAM-riscv-dts-spacemit-add-24c02-eeprom-on-BPI-.patch @@ -1,7 +1,7 @@ -From dc2d05a9865f35af5203640dc5f517c300667ae2 Mon Sep 17 00:00:00 2001 +From c34d30a8bde9d30953c0d83f0fa993d925f5e038 Mon Sep 17 00:00:00 2001 From: Aurelien Jarno Date: Fri, 26 Sep 2025 19:54:38 +0200 -Subject: [PATCH 051/467] UPSTREAM: riscv: dts: spacemit: add 24c02 eeprom on +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: spacemit: add 24c02 eeprom on BPI-F3 The BPI-F3 board includes a 24c02 eeprom, that stores the MAC addresses diff --git a/SPECS/linux-lts/0052-UPSTREAM-riscv-dts-spacemit-add-i2c-aliases-on-BPI-F.patch b/SPECS/linux-lts/0052-UPSTREAM-riscv-dts-spacemit-add-i2c-aliases-on-BPI-F.patch index 3c9f8346f3..3e089bc47b 100644 --- a/SPECS/linux-lts/0052-UPSTREAM-riscv-dts-spacemit-add-i2c-aliases-on-BPI-F.patch +++ b/SPECS/linux-lts/0052-UPSTREAM-riscv-dts-spacemit-add-i2c-aliases-on-BPI-F.patch @@ -1,7 +1,7 @@ -From 583c054150ac0bc72eb5f38eba8088468c3e93b5 Mon Sep 17 00:00:00 2001 +From d0ff2694bd729289ac0e0a95bd0ad9c82b10cbe1 Mon Sep 17 00:00:00 2001 From: Aurelien Jarno Date: Fri, 26 Sep 2025 19:54:39 +0200 -Subject: [PATCH 052/467] UPSTREAM: riscv: dts: spacemit: add i2c aliases on +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: spacemit: add i2c aliases on BPI-F3 Add i2c aliases for i2c2 and i2c8 on BPI-F3. This is useful to keep a diff --git a/SPECS/linux-lts/0053-UPSTREAM-riscv-dts-spacemit-add-Ethernet-and-PDMA-to.patch b/SPECS/linux-lts/0053-UPSTREAM-riscv-dts-spacemit-add-Ethernet-and-PDMA-to.patch index 6ed1f8203d..2f6950c455 100644 --- a/SPECS/linux-lts/0053-UPSTREAM-riscv-dts-spacemit-add-Ethernet-and-PDMA-to.patch +++ b/SPECS/linux-lts/0053-UPSTREAM-riscv-dts-spacemit-add-Ethernet-and-PDMA-to.patch @@ -1,8 +1,8 @@ -From 84af2f4907b4dfc470ac41d11760d57cd7907927 Mon Sep 17 00:00:00 2001 +From 13fa4b662d56827d91fb4cbc78cbaf44253e90c9 Mon Sep 17 00:00:00 2001 From: Michael Opdenacker Date: Wed, 22 Oct 2025 20:18:38 +0000 -Subject: [PATCH 053/467] UPSTREAM: riscv: dts: spacemit: add Ethernet and PDMA - to OrangePi RV2 +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: spacemit: add Ethernet and PDMA to + OrangePi RV2 The OrangePi RV2 board ships two RGMII ethernet ports. Each has an external Motorcomm YT8531C PHY attached, the PHY uses GPIO diff --git a/SPECS/linux-lts/0054-UPSTREAM-riscv-dts-spacemit-add-MusePi-Pro-board-dev.patch b/SPECS/linux-lts/0054-UPSTREAM-riscv-dts-spacemit-add-MusePi-Pro-board-dev.patch index 2b5114e787..e1ebb490cb 100644 --- a/SPECS/linux-lts/0054-UPSTREAM-riscv-dts-spacemit-add-MusePi-Pro-board-dev.patch +++ b/SPECS/linux-lts/0054-UPSTREAM-riscv-dts-spacemit-add-MusePi-Pro-board-dev.patch @@ -1,7 +1,7 @@ -From 0c5f1b6c12c4797ce96d82ce0bc35941b7d11848 Mon Sep 17 00:00:00 2001 +From 3dafd093bd3316afd9db38030ed61ebb2382f469 Mon Sep 17 00:00:00 2001 From: Troy Mitchell Date: Thu, 23 Oct 2025 15:28:30 +0800 -Subject: [PATCH 054/467] UPSTREAM: riscv: dts: spacemit: add MusePi Pro board +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: spacemit: add MusePi Pro board device tree Add initial device tree support for the MusePi Pro board [1]. diff --git a/SPECS/linux-lts/0055-UPSTREAM-riscv-dts-spacemit-enable-K1-SoC-QSPI-on-BP.patch b/SPECS/linux-lts/0055-UPSTREAM-riscv-dts-spacemit-enable-K1-SoC-QSPI-on-BP.patch index b802662e55..1d90bd8999 100644 --- a/SPECS/linux-lts/0055-UPSTREAM-riscv-dts-spacemit-enable-K1-SoC-QSPI-on-BP.patch +++ b/SPECS/linux-lts/0055-UPSTREAM-riscv-dts-spacemit-enable-K1-SoC-QSPI-on-BP.patch @@ -1,7 +1,7 @@ -From 31318a05caadf4e7a9d89bf5c11a7e4bb248e835 Mon Sep 17 00:00:00 2001 +From ba2b866292f1f2f274ff75a54e87fe7bc5dad3e2 Mon Sep 17 00:00:00 2001 From: Alex Elder Date: Mon, 27 Oct 2025 08:30:06 -0500 -Subject: [PATCH 055/467] UPSTREAM: riscv: dts: spacemit: enable K1 SoC QSPI on +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: spacemit: enable K1 SoC QSPI on BPI-F3 Define DTS nodes to enable support for QSPI on the K1 SoC, including the diff --git a/SPECS/linux-lts/0056-UPSTREAM-riscv-dts-spacemit-Add-OrangePi-R2S-board-d.patch b/SPECS/linux-lts/0056-UPSTREAM-riscv-dts-spacemit-Add-OrangePi-R2S-board-d.patch index fdb81df0ad..6288d13917 100644 --- a/SPECS/linux-lts/0056-UPSTREAM-riscv-dts-spacemit-Add-OrangePi-R2S-board-d.patch +++ b/SPECS/linux-lts/0056-UPSTREAM-riscv-dts-spacemit-Add-OrangePi-R2S-board-d.patch @@ -1,8 +1,8 @@ -From bb2450948146eabe3ab427e20f97b58aca4b1d6c Mon Sep 17 00:00:00 2001 +From 24c1c297e0c77c81c2e3a9ed9690f3e133986a22 Mon Sep 17 00:00:00 2001 From: Michael Opdenacker Date: Wed, 12 Nov 2025 04:44:42 +0000 -Subject: [PATCH 056/467] UPSTREAM: riscv: dts: spacemit: Add OrangePi R2S - board device tree +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: spacemit: Add OrangePi R2S board + device tree Add initial device tree support for the OrangePi RV2 board [1], which is marketed as using the Ky X1 SoC but is identical in die and package diff --git a/SPECS/linux-lts/0057-UPSTREAM-riscv-dts-spacemit-reorder-i2c2-node.patch b/SPECS/linux-lts/0057-UPSTREAM-riscv-dts-spacemit-reorder-i2c2-node.patch index 8604ed55e1..d6b11da6e5 100644 --- a/SPECS/linux-lts/0057-UPSTREAM-riscv-dts-spacemit-reorder-i2c2-node.patch +++ b/SPECS/linux-lts/0057-UPSTREAM-riscv-dts-spacemit-reorder-i2c2-node.patch @@ -1,7 +1,7 @@ -From baea402c4353408511c0a1dd49a95a3a6cefa14c Mon Sep 17 00:00:00 2001 +From 1831ac73812e9bb0337b60cf0cbe5e61baaf4769 Mon Sep 17 00:00:00 2001 From: Troy Mitchell Date: Wed, 5 Nov 2025 11:37:43 +0800 -Subject: [PATCH 057/467] UPSTREAM: riscv: dts: spacemit: reorder i2c2 node +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: spacemit: reorder i2c2 node Reorder the i2c2 node to its correct position according to its register address.This improves the readability and maintainability diff --git a/SPECS/linux-lts/0058-UPSTREAM-riscv-dts-spacemit-define-all-missing-I2C-c.patch b/SPECS/linux-lts/0058-UPSTREAM-riscv-dts-spacemit-define-all-missing-I2C-c.patch index ae0c476561..128376f03e 100644 --- a/SPECS/linux-lts/0058-UPSTREAM-riscv-dts-spacemit-define-all-missing-I2C-c.patch +++ b/SPECS/linux-lts/0058-UPSTREAM-riscv-dts-spacemit-define-all-missing-I2C-c.patch @@ -1,8 +1,8 @@ -From c45c776b556de646db335514a310bf0caf45e297 Mon Sep 17 00:00:00 2001 +From 30931c3912167e96f982909390b4cb13d61548d5 Mon Sep 17 00:00:00 2001 From: Troy Mitchell Date: Wed, 5 Nov 2025 11:37:44 +0800 -Subject: [PATCH 058/467] UPSTREAM: riscv: dts: spacemit: define all missing - I2C controller nodes +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: spacemit: define all missing I2C + controller nodes SpacemiT K1 SoC is equipped with a total of nine I2C controllers, ranging from I2C0 to I2C8. diff --git a/SPECS/linux-lts/0059-UPSTREAM-rtc-spacemit-MFD_SPACEMIT_P1-as-dependencie.patch b/SPECS/linux-lts/0059-UPSTREAM-rtc-spacemit-MFD_SPACEMIT_P1-as-dependencie.patch index 9df139c76a..637f8129fd 100644 --- a/SPECS/linux-lts/0059-UPSTREAM-rtc-spacemit-MFD_SPACEMIT_P1-as-dependencie.patch +++ b/SPECS/linux-lts/0059-UPSTREAM-rtc-spacemit-MFD_SPACEMIT_P1-as-dependencie.patch @@ -1,8 +1,7 @@ -From 70f112bf88bec82aeedec4c778bcd4f3232a0765 Mon Sep 17 00:00:00 2001 +From 915b04c620188a1aac7cc9e8481bd1dc3069817d Mon Sep 17 00:00:00 2001 From: Troy Mitchell Date: Tue, 18 Nov 2025 14:08:06 +0800 -Subject: [PATCH 059/467] UPSTREAM: rtc: spacemit: MFD_SPACEMIT_P1 as - dependencies +Subject: [RUYI PATCH] UPSTREAM: rtc: spacemit: MFD_SPACEMIT_P1 as dependencies RTC_DRV_SPACEMIT_P1 is a subdevice of P1 and should depend on MFD_SPACEMIT_P1 rather than selecting it directly. Using 'select' diff --git a/SPECS/linux-lts/0060-UPSTREAM-mfd-simple-mfd-i2c-Remove-select-I2C_K1-fro.patch b/SPECS/linux-lts/0060-UPSTREAM-mfd-simple-mfd-i2c-Remove-select-I2C_K1-fro.patch index 8c75b3d1d7..8765e4955a 100644 --- a/SPECS/linux-lts/0060-UPSTREAM-mfd-simple-mfd-i2c-Remove-select-I2C_K1-fro.patch +++ b/SPECS/linux-lts/0060-UPSTREAM-mfd-simple-mfd-i2c-Remove-select-I2C_K1-fro.patch @@ -1,8 +1,8 @@ -From 5428e4b1551b578c73d4dbb8ca29e15132ed6cc3 Mon Sep 17 00:00:00 2001 +From 6069d468c347c12814556df14bbe53dade5799be Mon Sep 17 00:00:00 2001 From: Troy Mitchell Date: Mon, 27 Oct 2025 13:48:05 +0800 -Subject: [PATCH 060/467] UPSTREAM: mfd: simple-mfd-i2c: Remove select I2C_K1 - from MFD_SPACEMIT_P1 +Subject: [RUYI PATCH] UPSTREAM: mfd: simple-mfd-i2c: Remove select I2C_K1 from + MFD_SPACEMIT_P1 select will force a symbol to a specific value without considering its dependencies. As a result, the i2c-k1 driver will fail to build diff --git a/SPECS/linux-lts/0061-UPSTREAM-driver-reset-spacemit-p1-add-driver-for-pow.patch b/SPECS/linux-lts/0061-UPSTREAM-driver-reset-spacemit-p1-add-driver-for-pow.patch index e03efac6a9..29f66cd23f 100644 --- a/SPECS/linux-lts/0061-UPSTREAM-driver-reset-spacemit-p1-add-driver-for-pow.patch +++ b/SPECS/linux-lts/0061-UPSTREAM-driver-reset-spacemit-p1-add-driver-for-pow.patch @@ -1,7 +1,7 @@ -From d7b622bee8767fa7990914aca5f7df68b486ec3a Mon Sep 17 00:00:00 2001 +From eef8f9cc817fec7a4c2229a9b9ee475a0efcf53b Mon Sep 17 00:00:00 2001 From: Aurelien Jarno Date: Mon, 3 Nov 2025 00:01:59 +0100 -Subject: [PATCH 061/467] UPSTREAM: driver: reset: spacemit-p1: add driver for +Subject: [RUYI PATCH] UPSTREAM: driver: reset: spacemit-p1: add driver for poweroff/reboot This driver implements poweroff/reboot support for the SpacemiT P1 PMIC diff --git a/SPECS/linux-lts/0062-UPSTREAM-riscv-remove-irqflags.h-inclusion-in-asm-bi.patch b/SPECS/linux-lts/0062-UPSTREAM-riscv-remove-irqflags.h-inclusion-in-asm-bi.patch index e1ec6c0a80..9e03454da1 100644 --- a/SPECS/linux-lts/0062-UPSTREAM-riscv-remove-irqflags.h-inclusion-in-asm-bi.patch +++ b/SPECS/linux-lts/0062-UPSTREAM-riscv-remove-irqflags.h-inclusion-in-asm-bi.patch @@ -1,7 +1,7 @@ -From 689210eca440a1f4fbcfb711fec8d91331cea13e Mon Sep 17 00:00:00 2001 +From a33608232c9c99d13d018635c30ee0ff1983de7e Mon Sep 17 00:00:00 2001 From: Yunhui Cui Date: Tue, 16 Dec 2025 09:47:19 +0800 -Subject: [PATCH 062/467] UPSTREAM: riscv: remove irqflags.h inclusion in +Subject: [RUYI PATCH] UPSTREAM: riscv: remove irqflags.h inclusion in asm/bitops.h The arch/riscv/include/asm/bitops.h does not functionally require diff --git a/SPECS/linux-lts/0063-UPSTREAM-riscv-atomic.h-use-RISCV_FULL_BARRIER-in-_a.patch b/SPECS/linux-lts/0063-UPSTREAM-riscv-atomic.h-use-RISCV_FULL_BARRIER-in-_a.patch index 4191f8109c..0fb3f34661 100644 --- a/SPECS/linux-lts/0063-UPSTREAM-riscv-atomic.h-use-RISCV_FULL_BARRIER-in-_a.patch +++ b/SPECS/linux-lts/0063-UPSTREAM-riscv-atomic.h-use-RISCV_FULL_BARRIER-in-_a.patch @@ -1,7 +1,7 @@ -From c7f82d8c41148f7827e892b69de32cfc5f5b6ac8 Mon Sep 17 00:00:00 2001 +From 34f41ea98d21a5605f1d5973259656f6e6557de0 Mon Sep 17 00:00:00 2001 From: Zongmin Zhou Date: Thu, 20 Nov 2025 17:58:31 +0800 -Subject: [PATCH 063/467] UPSTREAM: riscv/atomic.h: use RISCV_FULL_BARRIER in +Subject: [RUYI PATCH] UPSTREAM: riscv/atomic.h: use RISCV_FULL_BARRIER in _arch_atomic* function. Replace the same code with the pre-defined macro diff --git a/SPECS/linux-lts/0064-UPSTREAM-drm-dumb-buffers-Sanitize-output-on-errors.patch b/SPECS/linux-lts/0064-UPSTREAM-drm-dumb-buffers-Sanitize-output-on-errors.patch index 81b4d9efe4..0604111102 100644 --- a/SPECS/linux-lts/0064-UPSTREAM-drm-dumb-buffers-Sanitize-output-on-errors.patch +++ b/SPECS/linux-lts/0064-UPSTREAM-drm-dumb-buffers-Sanitize-output-on-errors.patch @@ -1,7 +1,7 @@ -From 11ee08759592cbf595fbbc34aab1f2e631fcaaf1 Mon Sep 17 00:00:00 2001 +From 8030689f50a72fc225dd6c31ad77d6b868549463 Mon Sep 17 00:00:00 2001 From: Thomas Zimmermann Date: Thu, 21 Aug 2025 10:17:08 +0200 -Subject: [PATCH 064/467] UPSTREAM: drm/dumb-buffers: Sanitize output on errors +Subject: [RUYI PATCH] UPSTREAM: drm/dumb-buffers: Sanitize output on errors The ioctls MODE_CREATE_DUMB and MODE_MAP_DUMB return results into a memory buffer supplied by user space. On errors, it is possible that diff --git a/SPECS/linux-lts/0065-UPSTREAM-drm-dumb-buffers-Provide-helper-to-set-pitc.patch b/SPECS/linux-lts/0065-UPSTREAM-drm-dumb-buffers-Provide-helper-to-set-pitc.patch index a51677cd2c..c249232713 100644 --- a/SPECS/linux-lts/0065-UPSTREAM-drm-dumb-buffers-Provide-helper-to-set-pitc.patch +++ b/SPECS/linux-lts/0065-UPSTREAM-drm-dumb-buffers-Provide-helper-to-set-pitc.patch @@ -1,8 +1,8 @@ -From ffc2daa0d4924fb2007651922cc6c14f597aff80 Mon Sep 17 00:00:00 2001 +From cf1dda8a91f6866dead5cfac3205be1ea706a065 Mon Sep 17 00:00:00 2001 From: Thomas Zimmermann Date: Thu, 21 Aug 2025 10:17:09 +0200 -Subject: [PATCH 065/467] UPSTREAM: drm/dumb-buffers: Provide helper to set - pitch and size +Subject: [RUYI PATCH] UPSTREAM: drm/dumb-buffers: Provide helper to set pitch + and size Add drm_modes_size_dumb(), a helper to calculate the dumb-buffer scanline pitch and allocation size. Implementations of struct diff --git a/SPECS/linux-lts/0069-UPSTREAM-drm-hypervdrm-Use-vblank-timer.patch b/SPECS/linux-lts/0066-UPSTREAM-drm-hypervdrm-Use-vblank-timer.patch similarity index 94% rename from SPECS/linux-lts/0069-UPSTREAM-drm-hypervdrm-Use-vblank-timer.patch rename to SPECS/linux-lts/0066-UPSTREAM-drm-hypervdrm-Use-vblank-timer.patch index 0ad15ed0ef..d3d98f5867 100644 --- a/SPECS/linux-lts/0069-UPSTREAM-drm-hypervdrm-Use-vblank-timer.patch +++ b/SPECS/linux-lts/0066-UPSTREAM-drm-hypervdrm-Use-vblank-timer.patch @@ -1,7 +1,7 @@ -From e0e2839348f82a4bba9e9a4c7f122ed62ae7b0e1 Mon Sep 17 00:00:00 2001 +From 5a54ac19c87347a2165595055cab86383cefac4f Mon Sep 17 00:00:00 2001 From: Thomas Zimmermann Date: Tue, 16 Sep 2025 10:36:22 +0200 -Subject: [PATCH 069/467] UPSTREAM: drm/hypervdrm: Use vblank timer +Subject: [RUYI PATCH] UPSTREAM: drm/hypervdrm: Use vblank timer HyperV's virtual hardware does not provide vblank interrupts. Use a vblank timer to simulate the interrupt. Rate-limits the display's diff --git a/SPECS/linux-lts/0066-UPSTREAM-drm-vblank-Add-vblank-timer.patch b/SPECS/linux-lts/0066-UPSTREAM-drm-vblank-Add-vblank-timer.patch deleted file mode 100644 index 9ae7a30e23..0000000000 --- a/SPECS/linux-lts/0066-UPSTREAM-drm-vblank-Add-vblank-timer.patch +++ /dev/null @@ -1,533 +0,0 @@ -From e7f0684e97837281f337a4249384ae7efd8c3fc0 Mon Sep 17 00:00:00 2001 -From: Thomas Zimmermann -Date: Tue, 16 Sep 2025 10:36:19 +0200 -Subject: [PATCH 066/467] UPSTREAM: drm/vblank: Add vblank timer - -The vblank timer simulates a vblank interrupt for hardware without -support. Rate-limits the display update frequency. - -DRM drivers for hardware without vblank support apply display updates -ASAP. A vblank event informs DRM clients of the completed update. -Userspace compositors immediately schedule the next update, which -creates significant load on virtualization outputs. Display updates -are usually fast on virtualization outputs, as their framebuffers are -in regular system memory and there's no hardware vblank interrupt to -throttle the update rate. - -The vblank timer is a HR timer that signals the vblank in software. -It limits the update frequency of a DRM driver similar to a hardware -vblank interrupt. The timer is not synchronized to the actual vblank -interval of the display. - -The code has been adopted from vkms, which added the funtionality -in commit 3a0709928b17 ("drm/vkms: Add vblank events simulated by -hrtimers"). - -The new implementation is part of the existing vblank support, -which sets up the timer automatically. Drivers only have to start -and cancel the vblank timer as part of enabling and disabling the -CRTC. The new vblank helper library provides callbacks for struct -drm_crtc_funcs. - -The standard way for handling vblank is to call drm_crtc_handle_vblank(). -Drivers that require additional processing, such as vkms, can init -handle_vblank_timeout in struct drm_crtc_helper_funcs to refer to -their timeout handler. - -There's a possible deadlock between drm_crtc_handle_vblank() and -hrtimer_cancel(). [1] The implementation avoids to call hrtimer_cancel() -directly and instead signals to the timer function to not restart -itself. - -v4: -- fix possible race condition between timeout and atomic commit (Michael) -v3: -- avoid deadlock when cancelling timer (Ville, Lyude) -v2: -- implement vblank timer entirely in vblank helpers -- downgrade overrun warning to debug -- fix docs - -Signed-off-by: Thomas Zimmermann -Tested-by: Louis Chauvet -Reviewed-by: Louis Chauvet -Reviewed-by: Javier Martinez Canillas -Tested-by: Michael Kelley -Link: https://lore.kernel.org/all/20250510094757.4174662-1-zengheng4@huawei.com/ # [1] -Link: https://lore.kernel.org/r/20250916083816.30275-2-tzimmermann@suse.de -(cherry picked from commit 74afeb8128502a529041a2566febd26053a7be11) -Signed-off-by: Han Gao ---- - Documentation/gpu/drm-kms-helpers.rst | 12 ++ - drivers/gpu/drm/Makefile | 3 +- - drivers/gpu/drm/drm_vblank.c | 172 ++++++++++++++++++++++- - drivers/gpu/drm/drm_vblank_helper.c | 96 +++++++++++++ - include/drm/drm_modeset_helper_vtables.h | 12 ++ - include/drm/drm_vblank.h | 32 +++++ - include/drm/drm_vblank_helper.h | 33 +++++ - 7 files changed, 357 insertions(+), 3 deletions(-) - create mode 100644 drivers/gpu/drm/drm_vblank_helper.c - create mode 100644 include/drm/drm_vblank_helper.h - -diff --git a/Documentation/gpu/drm-kms-helpers.rst b/Documentation/gpu/drm-kms-helpers.rst -index 5139705089f2..781129f78b06 100644 ---- a/Documentation/gpu/drm-kms-helpers.rst -+++ b/Documentation/gpu/drm-kms-helpers.rst -@@ -92,6 +92,18 @@ GEM Atomic Helper Reference - .. kernel-doc:: drivers/gpu/drm/drm_gem_atomic_helper.c - :export: - -+VBLANK Helper Reference -+----------------------- -+ -+.. kernel-doc:: drivers/gpu/drm/drm_vblank_helper.c -+ :doc: overview -+ -+.. kernel-doc:: include/drm/drm_vblank_helper.h -+ :internal: -+ -+.. kernel-doc:: drivers/gpu/drm/drm_vblank_helper.c -+ :export: -+ - Simple KMS Helper Reference - =========================== - -diff --git a/drivers/gpu/drm/Makefile b/drivers/gpu/drm/Makefile -index 742f0d590c5a..b248e64587ed 100644 ---- a/drivers/gpu/drm/Makefile -+++ b/drivers/gpu/drm/Makefile -@@ -152,7 +152,8 @@ drm_kms_helper-y := \ - drm_plane_helper.o \ - drm_probe_helper.o \ - drm_self_refresh_helper.o \ -- drm_simple_kms_helper.o -+ drm_simple_kms_helper.o \ -+ drm_vblank_helper.o - drm_kms_helper-$(CONFIG_DRM_PANEL_BRIDGE) += bridge/panel.o - drm_kms_helper-$(CONFIG_DRM_FBDEV_EMULATION) += drm_fb_helper.o - obj-$(CONFIG_DRM_KMS_HELPER) += drm_kms_helper.o -diff --git a/drivers/gpu/drm/drm_vblank.c b/drivers/gpu/drm/drm_vblank.c -index 46f59883183d..61e211fd3c9c 100644 ---- a/drivers/gpu/drm/drm_vblank.c -+++ b/drivers/gpu/drm/drm_vblank.c -@@ -136,8 +136,17 @@ - * vblanks after a timer has expired, which can be configured through the - * ``vblankoffdelay`` module parameter. - * -- * Drivers for hardware without support for vertical-blanking interrupts -- * must not call drm_vblank_init(). For such drivers, atomic helpers will -+ * Drivers for hardware without support for vertical-blanking interrupts can -+ * use DRM vblank timers to send vblank events at the rate of the current -+ * display mode's refresh. While not synchronized to the hardware's -+ * vertical-blanking regions, the timer helps DRM clients and compositors to -+ * adapt their update cycle to the display output. Drivers should set up -+ * vblanking as usual, but call drm_crtc_vblank_start_timer() and -+ * drm_crtc_vblank_cancel_timer() as part of their atomic mode setting. -+ * See also DRM vblank helpers for more information. -+ * -+ * Drivers without support for vertical-blanking interrupts nor timers must -+ * not call drm_vblank_init(). For these drivers, atomic helpers will - * automatically generate fake vblank events as part of the display update. - * This functionality also can be controlled by the driver by enabling and - * disabling struct drm_crtc_state.no_vblank. -@@ -508,6 +517,9 @@ static void drm_vblank_init_release(struct drm_device *dev, void *ptr) - drm_WARN_ON(dev, READ_ONCE(vblank->enabled) && - drm_core_check_feature(dev, DRIVER_MODESET)); - -+ if (vblank->vblank_timer.crtc) -+ hrtimer_cancel(&vblank->vblank_timer.timer); -+ - drm_vblank_destroy_worker(vblank); - timer_delete_sync(&vblank->disable_timer); - } -@@ -2162,3 +2174,159 @@ int drm_crtc_queue_sequence_ioctl(struct drm_device *dev, void *data, - return ret; - } - -+/* -+ * VBLANK timer -+ */ -+ -+static enum hrtimer_restart drm_vblank_timer_function(struct hrtimer *timer) -+{ -+ struct drm_vblank_crtc_timer *vtimer = -+ container_of(timer, struct drm_vblank_crtc_timer, timer); -+ struct drm_crtc *crtc = vtimer->crtc; -+ const struct drm_crtc_helper_funcs *crtc_funcs = crtc->helper_private; -+ struct drm_device *dev = crtc->dev; -+ unsigned long flags; -+ ktime_t interval; -+ u64 ret_overrun; -+ bool succ; -+ -+ spin_lock_irqsave(&vtimer->interval_lock, flags); -+ interval = vtimer->interval; -+ spin_unlock_irqrestore(&vtimer->interval_lock, flags); -+ -+ if (!interval) -+ return HRTIMER_NORESTART; -+ -+ ret_overrun = hrtimer_forward_now(&vtimer->timer, interval); -+ if (ret_overrun != 1) -+ drm_dbg_vbl(dev, "vblank timer overrun\n"); -+ -+ if (crtc_funcs->handle_vblank_timeout) -+ succ = crtc_funcs->handle_vblank_timeout(crtc); -+ else -+ succ = drm_crtc_handle_vblank(crtc); -+ if (!succ) -+ return HRTIMER_NORESTART; -+ -+ return HRTIMER_RESTART; -+} -+ -+/** -+ * drm_crtc_vblank_start_timer - Starts the vblank timer on the given CRTC -+ * @crtc: the CRTC -+ * -+ * Drivers should call this function from their CRTC's enable_vblank -+ * function to start a vblank timer. The timer will fire after the duration -+ * of a full frame. drm_crtc_vblank_cancel_timer() disables a running timer. -+ * -+ * Returns: -+ * 0 on success, or a negative errno code otherwise. -+ */ -+int drm_crtc_vblank_start_timer(struct drm_crtc *crtc) -+{ -+ struct drm_vblank_crtc *vblank = drm_crtc_vblank_crtc(crtc); -+ struct drm_vblank_crtc_timer *vtimer = &vblank->vblank_timer; -+ unsigned long flags; -+ -+ if (!vtimer->crtc) { -+ /* -+ * Set up the data structures on the first invocation. -+ */ -+ vtimer->crtc = crtc; -+ spin_lock_init(&vtimer->interval_lock); -+ hrtimer_setup(&vtimer->timer, drm_vblank_timer_function, -+ CLOCK_MONOTONIC, HRTIMER_MODE_REL); -+ } else { -+ /* -+ * Timer should not be active. If it is, wait for the -+ * previous cancel operations to finish. -+ */ -+ while (hrtimer_active(&vtimer->timer)) -+ hrtimer_try_to_cancel(&vtimer->timer); -+ } -+ -+ drm_calc_timestamping_constants(crtc, &crtc->mode); -+ -+ spin_lock_irqsave(&vtimer->interval_lock, flags); -+ vtimer->interval = ns_to_ktime(vblank->framedur_ns); -+ spin_unlock_irqrestore(&vtimer->interval_lock, flags); -+ -+ hrtimer_start(&vtimer->timer, vtimer->interval, HRTIMER_MODE_REL); -+ -+ return 0; -+} -+EXPORT_SYMBOL(drm_crtc_vblank_start_timer); -+ -+/** -+ * drm_crtc_vblank_start_timer - Cancels the given CRTC's vblank timer -+ * @crtc: the CRTC -+ * -+ * Drivers should call this function from their CRTC's disable_vblank -+ * function to stop a vblank timer. -+ */ -+void drm_crtc_vblank_cancel_timer(struct drm_crtc *crtc) -+{ -+ struct drm_vblank_crtc *vblank = drm_crtc_vblank_crtc(crtc); -+ struct drm_vblank_crtc_timer *vtimer = &vblank->vblank_timer; -+ unsigned long flags; -+ -+ /* -+ * Calling hrtimer_cancel() can result in a deadlock with DRM's -+ * vblank_time_lime_lock and hrtimers' softirq_expiry_lock. So -+ * clear interval and indicate cancellation. The timer function -+ * will cancel itself on the next invocation. -+ */ -+ -+ spin_lock_irqsave(&vtimer->interval_lock, flags); -+ vtimer->interval = 0; -+ spin_unlock_irqrestore(&vtimer->interval_lock, flags); -+ -+ hrtimer_try_to_cancel(&vtimer->timer); -+} -+EXPORT_SYMBOL(drm_crtc_vblank_cancel_timer); -+ -+/** -+ * drm_crtc_vblank_get_vblank_timeout - Returns the vblank timeout -+ * @crtc: The CRTC -+ * @vblank_time: Returns the next vblank timestamp -+ * -+ * The helper drm_crtc_vblank_get_vblank_timeout() returns the next vblank -+ * timestamp of the CRTC's vblank timer according to the timer's expiry -+ * time. -+ */ -+void drm_crtc_vblank_get_vblank_timeout(struct drm_crtc *crtc, ktime_t *vblank_time) -+{ -+ struct drm_vblank_crtc *vblank = drm_crtc_vblank_crtc(crtc); -+ struct drm_vblank_crtc_timer *vtimer = &vblank->vblank_timer; -+ u64 cur_count; -+ ktime_t cur_time; -+ -+ if (!READ_ONCE(vblank->enabled)) { -+ *vblank_time = ktime_get(); -+ return; -+ } -+ -+ /* -+ * A concurrent vblank timeout could update the expires field before -+ * we compare it with the vblank time. Hence we'd compare the old -+ * expiry time to the new vblank time; deducing the timer had already -+ * expired. Reread until we get consistent values from both fields. -+ */ -+ do { -+ cur_count = drm_crtc_vblank_count_and_time(crtc, &cur_time); -+ *vblank_time = READ_ONCE(vtimer->timer.node.expires); -+ } while (cur_count != drm_crtc_vblank_count_and_time(crtc, &cur_time)); -+ -+ if (drm_WARN_ON(crtc->dev, !ktime_compare(*vblank_time, cur_time))) -+ return; /* Already expired */ -+ -+ /* -+ * To prevent races we roll the hrtimer forward before we do any -+ * interrupt processing - this is how real hw works (the interrupt -+ * is only generated after all the vblank registers are updated) -+ * and what the vblank core expects. Therefore we need to always -+ * correct the timestamp by one frame. -+ */ -+ *vblank_time = ktime_sub(*vblank_time, vtimer->interval); -+} -+EXPORT_SYMBOL(drm_crtc_vblank_get_vblank_timeout); -diff --git a/drivers/gpu/drm/drm_vblank_helper.c b/drivers/gpu/drm/drm_vblank_helper.c -new file mode 100644 -index 000000000000..f94d1e706191 ---- /dev/null -+++ b/drivers/gpu/drm/drm_vblank_helper.c -@@ -0,0 +1,96 @@ -+// SPDX-License-Identifier: MIT -+ -+#include -+#include -+#include -+#include -+#include -+#include -+ -+/** -+ * DOC: overview -+ * -+ * The vblank helper library provides functions for supporting vertical -+ * blanking in DRM drivers. -+ * -+ * For vblank timers, several callback implementations are available. -+ * Drivers enable support for vblank timers by setting the vblank callbacks -+ * in struct &drm_crtc_funcs to the helpers provided by this library. The -+ * initializer macro DRM_CRTC_VBLANK_TIMER_FUNCS does this conveniently. -+ * -+ * Once the driver enables vblank support with drm_vblank_init(), each -+ * CRTC's vblank timer fires according to the programmed display mode. By -+ * default, the vblank timer invokes drm_crtc_handle_vblank(). Drivers with -+ * more specific requirements can set their own handler function in -+ * struct &drm_crtc_helper_funcs.handle_vblank_timeout. -+ */ -+ -+/* -+ * VBLANK timer -+ */ -+ -+/** -+ * drm_crtc_vblank_helper_enable_vblank_timer - Implements struct &drm_crtc_funcs.enable_vblank -+ * @crtc: The CRTC -+ * -+ * The helper drm_crtc_vblank_helper_enable_vblank_timer() implements -+ * enable_vblank of struct drm_crtc_helper_funcs for CRTCs that require -+ * a VBLANK timer. It sets up the timer on the first invocation. The -+ * started timer expires after the current frame duration. See struct -+ * &drm_vblank_crtc.framedur_ns. -+ * -+ * See also struct &drm_crtc_helper_funcs.enable_vblank. -+ * -+ * Returns: -+ * 0 on success, or a negative errno code otherwise. -+ */ -+int drm_crtc_vblank_helper_enable_vblank_timer(struct drm_crtc *crtc) -+{ -+ return drm_crtc_vblank_start_timer(crtc); -+} -+EXPORT_SYMBOL(drm_crtc_vblank_helper_enable_vblank_timer); -+ -+/** -+ * drm_crtc_vblank_helper_disable_vblank_timer - Implements struct &drm_crtc_funcs.disable_vblank -+ * @crtc: The CRTC -+ * -+ * The helper drm_crtc_vblank_helper_disable_vblank_timer() implements -+ * disable_vblank of struct drm_crtc_funcs for CRTCs that require a -+ * VBLANK timer. -+ * -+ * See also struct &drm_crtc_helper_funcs.disable_vblank. -+ */ -+void drm_crtc_vblank_helper_disable_vblank_timer(struct drm_crtc *crtc) -+{ -+ drm_crtc_vblank_cancel_timer(crtc); -+} -+EXPORT_SYMBOL(drm_crtc_vblank_helper_disable_vblank_timer); -+ -+/** -+ * drm_crtc_vblank_helper_get_vblank_timestamp_from_timer - -+ * Implements struct &drm_crtc_funcs.get_vblank_timestamp -+ * @crtc: The CRTC -+ * @max_error: Maximum acceptable error -+ * @vblank_time: Returns the next vblank timestamp -+ * @in_vblank_irq: True is called from drm_crtc_handle_vblank() -+ * -+ * The helper drm_crtc_helper_get_vblank_timestamp_from_timer() implements -+ * get_vblank_timestamp of struct drm_crtc_funcs for CRTCs that require a -+ * VBLANK timer. It returns the timestamp according to the timer's expiry -+ * time. -+ * -+ * See also struct &drm_crtc_funcs.get_vblank_timestamp. -+ * -+ * Returns: -+ * True on success, or false otherwise. -+ */ -+bool drm_crtc_vblank_helper_get_vblank_timestamp_from_timer(struct drm_crtc *crtc, -+ int *max_error, -+ ktime_t *vblank_time, -+ bool in_vblank_irq) -+{ -+ drm_crtc_vblank_get_vblank_timeout(crtc, vblank_time); -+ -+ return true; -+} -+EXPORT_SYMBOL(drm_crtc_vblank_helper_get_vblank_timestamp_from_timer); -diff --git a/include/drm/drm_modeset_helper_vtables.h b/include/drm/drm_modeset_helper_vtables.h -index ce7c7aeac887..fe32854b7ffe 100644 ---- a/include/drm/drm_modeset_helper_vtables.h -+++ b/include/drm/drm_modeset_helper_vtables.h -@@ -490,6 +490,18 @@ struct drm_crtc_helper_funcs { - bool in_vblank_irq, int *vpos, int *hpos, - ktime_t *stime, ktime_t *etime, - const struct drm_display_mode *mode); -+ -+ /** -+ * @handle_vblank_timeout: Handles timeouts of the vblank timer. -+ * -+ * Called by CRTC's the vblank timer on each timeout. Semantics is -+ * equivalient to drm_crtc_handle_vblank(). Implementations should -+ * invoke drm_crtc_handle_vblank() as part of processing the timeout. -+ * -+ * This callback is optional. If unset, the vblank timer invokes -+ * drm_crtc_handle_vblank() directly. -+ */ -+ bool (*handle_vblank_timeout)(struct drm_crtc *crtc); - }; - - /** -diff --git a/include/drm/drm_vblank.h b/include/drm/drm_vblank.h -index 151ab1e85b1b..ffa564d79638 100644 ---- a/include/drm/drm_vblank.h -+++ b/include/drm/drm_vblank.h -@@ -25,6 +25,7 @@ - #define _DRM_VBLANK_H_ - - #include -+#include - #include - #include - #include -@@ -103,6 +104,28 @@ struct drm_vblank_crtc_config { - bool disable_immediate; - }; - -+/** -+ * struct drm_vblank_crtc_timer - vblank timer for a CRTC -+ */ -+struct drm_vblank_crtc_timer { -+ /** -+ * @timer: The vblank's high-resolution timer -+ */ -+ struct hrtimer timer; -+ /** -+ * @interval_lock: Protects @interval -+ */ -+ spinlock_t interval_lock; -+ /** -+ * @interval: Duration between two vblanks -+ */ -+ ktime_t interval; -+ /** -+ * @crtc: The timer's CRTC -+ */ -+ struct drm_crtc *crtc; -+}; -+ - /** - * struct drm_vblank_crtc - vblank tracking for a CRTC - * -@@ -254,6 +277,11 @@ struct drm_vblank_crtc { - * cancelled. - */ - wait_queue_head_t work_wait_queue; -+ -+ /** -+ * @vblank_timer: Holds the state of the vblank timer -+ */ -+ struct drm_vblank_crtc_timer vblank_timer; - }; - - struct drm_vblank_crtc *drm_crtc_vblank_crtc(struct drm_crtc *crtc); -@@ -290,6 +318,10 @@ wait_queue_head_t *drm_crtc_vblank_waitqueue(struct drm_crtc *crtc); - void drm_crtc_set_max_vblank_count(struct drm_crtc *crtc, - u32 max_vblank_count); - -+int drm_crtc_vblank_start_timer(struct drm_crtc *crtc); -+void drm_crtc_vblank_cancel_timer(struct drm_crtc *crtc); -+void drm_crtc_vblank_get_vblank_timeout(struct drm_crtc *crtc, ktime_t *vblank_time); -+ - /* - * Helpers for struct drm_crtc_funcs - */ -diff --git a/include/drm/drm_vblank_helper.h b/include/drm/drm_vblank_helper.h -new file mode 100644 -index 000000000000..74a971d0cfba ---- /dev/null -+++ b/include/drm/drm_vblank_helper.h -@@ -0,0 +1,33 @@ -+/* SPDX-License-Identifier: GPL-2.0+ */ -+ -+#ifndef _DRM_VBLANK_HELPER_H_ -+#define _DRM_VBLANK_HELPER_H_ -+ -+#include -+#include -+ -+struct drm_crtc; -+ -+/* -+ * VBLANK timer -+ */ -+ -+int drm_crtc_vblank_helper_enable_vblank_timer(struct drm_crtc *crtc); -+void drm_crtc_vblank_helper_disable_vblank_timer(struct drm_crtc *crtc); -+bool drm_crtc_vblank_helper_get_vblank_timestamp_from_timer(struct drm_crtc *crtc, -+ int *max_error, -+ ktime_t *vblank_time, -+ bool in_vblank_irq); -+ -+/** -+ * DRM_CRTC_VBLANK_TIMER_FUNCS - Default implementation for VBLANK timers -+ * -+ * This macro initializes struct &drm_crtc_funcs to default helpers for -+ * VBLANK timers. -+ */ -+#define DRM_CRTC_VBLANK_TIMER_FUNCS \ -+ .enable_vblank = drm_crtc_vblank_helper_enable_vblank_timer, \ -+ .disable_vblank = drm_crtc_vblank_helper_disable_vblank_timer, \ -+ .get_vblank_timestamp = drm_crtc_vblank_helper_get_vblank_timestamp_from_timer -+ -+#endif --- -2.53.0 - diff --git a/SPECS/linux-lts/0070-UPSTREAM-PCI-MSI-Convert-the-boolean-no_64bit_msi-fl.patch b/SPECS/linux-lts/0067-UPSTREAM-PCI-MSI-Convert-the-boolean-no_64bit_msi-fl.patch similarity index 97% rename from SPECS/linux-lts/0070-UPSTREAM-PCI-MSI-Convert-the-boolean-no_64bit_msi-fl.patch rename to SPECS/linux-lts/0067-UPSTREAM-PCI-MSI-Convert-the-boolean-no_64bit_msi-fl.patch index 443c2abc64..d6a9555b97 100644 --- a/SPECS/linux-lts/0070-UPSTREAM-PCI-MSI-Convert-the-boolean-no_64bit_msi-fl.patch +++ b/SPECS/linux-lts/0067-UPSTREAM-PCI-MSI-Convert-the-boolean-no_64bit_msi-fl.patch @@ -1,8 +1,8 @@ -From be105cf6e6a53eea68ee3af9b6c42db92be45a34 Mon Sep 17 00:00:00 2001 +From 82e88d4cfa7af6b1ae6ffc952a7d1903d2c8e3ea Mon Sep 17 00:00:00 2001 From: Vivian Wang Date: Thu, 29 Jan 2026 09:56:06 +0800 -Subject: [PATCH 070/467] UPSTREAM: PCI/MSI: Convert the boolean no_64bit_msi - flag to a DMA address mask +Subject: [RUYI PATCH] UPSTREAM: PCI/MSI: Convert the boolean no_64bit_msi flag + to a DMA address mask Some PCI devices have PCI_MSI_FLAGS_64BIT in the MSI capability, but implement less than 64 address bits. This breaks on platforms where such diff --git a/SPECS/linux-lts/0067-UPSTREAM-drm-vblank-Add-CRTC-helpers-for-simple-use-.patch b/SPECS/linux-lts/0067-UPSTREAM-drm-vblank-Add-CRTC-helpers-for-simple-use-.patch deleted file mode 100644 index 7253e51186..0000000000 --- a/SPECS/linux-lts/0067-UPSTREAM-drm-vblank-Add-CRTC-helpers-for-simple-use-.patch +++ /dev/null @@ -1,174 +0,0 @@ -From 583cfbbf548a142881ed47ae9a5e1ab10a4ddbb6 Mon Sep 17 00:00:00 2001 -From: Thomas Zimmermann -Date: Tue, 16 Sep 2025 10:36:20 +0200 -Subject: [PATCH 067/467] UPSTREAM: drm/vblank: Add CRTC helpers for simple use - cases - -Implement atomic_flush, atomic_enable and atomic_disable of struct -drm_crtc_helper_funcs for vblank handling. Driver with no further -requirements can use these functions instead of adding their own. -Also simplifies the use of vblank timers. - -The code has been adopted from vkms, which added the funtionality -in commit 3a0709928b17 ("drm/vkms: Add vblank events simulated by -hrtimers"). - -v3: -- mention vkms (Javier) -v2: -- fix docs - -Signed-off-by: Thomas Zimmermann -Reviewed-by: Javier Martinez Canillas -Tested-by: Michael Kelley -Link: https://lore.kernel.org/r/20250916083816.30275-3-tzimmermann@suse.de -(cherry picked from commit d54dbb5963bdbdf8559903fe2b2343e871adcb30) -Signed-off-by: Han Gao ---- - drivers/gpu/drm/drm_vblank_helper.c | 80 +++++++++++++++++++++++++++++ - include/drm/drm_vblank_helper.h | 23 +++++++++ - 2 files changed, 103 insertions(+) - -diff --git a/drivers/gpu/drm/drm_vblank_helper.c b/drivers/gpu/drm/drm_vblank_helper.c -index f94d1e706191..a04a6ba1b0ca 100644 ---- a/drivers/gpu/drm/drm_vblank_helper.c -+++ b/drivers/gpu/drm/drm_vblank_helper.c -@@ -1,5 +1,6 @@ - // SPDX-License-Identifier: MIT - -+#include - #include - #include - #include -@@ -17,6 +18,12 @@ - * Drivers enable support for vblank timers by setting the vblank callbacks - * in struct &drm_crtc_funcs to the helpers provided by this library. The - * initializer macro DRM_CRTC_VBLANK_TIMER_FUNCS does this conveniently. -+ * The driver further has to send the VBLANK event from its atomic_flush -+ * callback and control vblank from the CRTC's atomic_enable and atomic_disable -+ * callbacks. The callbacks are located in struct &drm_crtc_helper_funcs. -+ * The vblank helper library provides implementations of these callbacks -+ * for drivers without further requirements. The initializer macro -+ * DRM_CRTC_HELPER_VBLANK_FUNCS sets them coveniently. - * - * Once the driver enables vblank support with drm_vblank_init(), each - * CRTC's vblank timer fires according to the programmed display mode. By -@@ -25,6 +32,79 @@ - * struct &drm_crtc_helper_funcs.handle_vblank_timeout. - */ - -+/* -+ * VBLANK helpers -+ */ -+ -+/** -+ * drm_crtc_vblank_atomic_flush - -+ * Implements struct &drm_crtc_helper_funcs.atomic_flush -+ * @crtc: The CRTC -+ * @state: The atomic state to apply -+ * -+ * The helper drm_crtc_vblank_atomic_flush() implements atomic_flush of -+ * struct drm_crtc_helper_funcs for CRTCs that only need to send out a -+ * VBLANK event. -+ * -+ * See also struct &drm_crtc_helper_funcs.atomic_flush. -+ */ -+void drm_crtc_vblank_atomic_flush(struct drm_crtc *crtc, -+ struct drm_atomic_state *state) -+{ -+ struct drm_device *dev = crtc->dev; -+ struct drm_crtc_state *crtc_state = drm_atomic_get_new_crtc_state(state, crtc); -+ struct drm_pending_vblank_event *event; -+ -+ spin_lock_irq(&dev->event_lock); -+ -+ event = crtc_state->event; -+ crtc_state->event = NULL; -+ -+ if (event) { -+ if (drm_crtc_vblank_get(crtc) == 0) -+ drm_crtc_arm_vblank_event(crtc, event); -+ else -+ drm_crtc_send_vblank_event(crtc, event); -+ } -+ -+ spin_unlock_irq(&dev->event_lock); -+} -+EXPORT_SYMBOL(drm_crtc_vblank_atomic_flush); -+ -+/** -+ * drm_crtc_vblank_atomic_enable - Implements struct &drm_crtc_helper_funcs.atomic_enable -+ * @crtc: The CRTC -+ * @state: The atomic state -+ * -+ * The helper drm_crtc_vblank_atomic_enable() implements atomic_enable -+ * of struct drm_crtc_helper_funcs for CRTCs the only need to enable VBLANKs. -+ * -+ * See also struct &drm_crtc_helper_funcs.atomic_enable. -+ */ -+void drm_crtc_vblank_atomic_enable(struct drm_crtc *crtc, -+ struct drm_atomic_state *state) -+{ -+ drm_crtc_vblank_on(crtc); -+} -+EXPORT_SYMBOL(drm_crtc_vblank_atomic_enable); -+ -+/** -+ * drm_crtc_vblank_atomic_disable - Implements struct &drm_crtc_helper_funcs.atomic_disable -+ * @crtc: The CRTC -+ * @state: The atomic state -+ * -+ * The helper drm_crtc_vblank_atomic_disable() implements atomic_disable -+ * of struct drm_crtc_helper_funcs for CRTCs the only need to disable VBLANKs. -+ * -+ * See also struct &drm_crtc_funcs.atomic_disable. -+ */ -+void drm_crtc_vblank_atomic_disable(struct drm_crtc *crtc, -+ struct drm_atomic_state *state) -+{ -+ drm_crtc_vblank_off(crtc); -+} -+EXPORT_SYMBOL(drm_crtc_vblank_atomic_disable); -+ - /* - * VBLANK timer - */ -diff --git a/include/drm/drm_vblank_helper.h b/include/drm/drm_vblank_helper.h -index 74a971d0cfba..fcd8a9b35846 100644 ---- a/include/drm/drm_vblank_helper.h -+++ b/include/drm/drm_vblank_helper.h -@@ -6,8 +6,31 @@ - #include - #include - -+struct drm_atomic_state; - struct drm_crtc; - -+/* -+ * VBLANK helpers -+ */ -+ -+void drm_crtc_vblank_atomic_flush(struct drm_crtc *crtc, -+ struct drm_atomic_state *state); -+void drm_crtc_vblank_atomic_enable(struct drm_crtc *crtc, -+ struct drm_atomic_state *state); -+void drm_crtc_vblank_atomic_disable(struct drm_crtc *crtc, -+ struct drm_atomic_state *crtc_state); -+ -+/** -+ * DRM_CRTC_HELPER_VBLANK_FUNCS - Default implementation for VBLANK helpers -+ * -+ * This macro initializes struct &drm_crtc_helper_funcs to default helpers -+ * for VBLANK handling. -+ */ -+#define DRM_CRTC_HELPER_VBLANK_FUNCS \ -+ .atomic_flush = drm_crtc_vblank_atomic_flush, \ -+ .atomic_enable = drm_crtc_vblank_atomic_enable, \ -+ .atomic_disable = drm_crtc_vblank_atomic_disable -+ - /* - * VBLANK timer - */ --- -2.53.0 - diff --git a/SPECS/linux-lts/0071-UPSTREAM-PCI-MSI-Check-the-device-specific-address-m.patch b/SPECS/linux-lts/0068-UPSTREAM-PCI-MSI-Check-the-device-specific-address-m.patch similarity index 92% rename from SPECS/linux-lts/0071-UPSTREAM-PCI-MSI-Check-the-device-specific-address-m.patch rename to SPECS/linux-lts/0068-UPSTREAM-PCI-MSI-Check-the-device-specific-address-m.patch index c99a180597..46bc6278e3 100644 --- a/SPECS/linux-lts/0071-UPSTREAM-PCI-MSI-Check-the-device-specific-address-m.patch +++ b/SPECS/linux-lts/0068-UPSTREAM-PCI-MSI-Check-the-device-specific-address-m.patch @@ -1,7 +1,7 @@ -From 76e89b16cb73690ff25af12682731fc117be5c3e Mon Sep 17 00:00:00 2001 +From 4f4b809bc01cd7d00cf117b7e99a2a2b18a9d9f9 Mon Sep 17 00:00:00 2001 From: Vivian Wang Date: Thu, 29 Jan 2026 09:56:07 +0800 -Subject: [PATCH 071/467] UPSTREAM: PCI/MSI: Check the device specific address +Subject: [RUYI PATCH] UPSTREAM: PCI/MSI: Check the device specific address mask in msi_verify_entries() Instead of a 32-bit/64-bit dichotomy, check the MSI address against diff --git a/SPECS/linux-lts/0068-UPSTREAM-drm-vkms-Convert-to-DRM-s-vblank-timer.patch b/SPECS/linux-lts/0068-UPSTREAM-drm-vkms-Convert-to-DRM-s-vblank-timer.patch deleted file mode 100644 index 6dbce8b177..0000000000 --- a/SPECS/linux-lts/0068-UPSTREAM-drm-vkms-Convert-to-DRM-s-vblank-timer.patch +++ /dev/null @@ -1,172 +0,0 @@ -From 5c2dba8da42db8a451df4751fdd00dea997959e4 Mon Sep 17 00:00:00 2001 -From: Thomas Zimmermann -Date: Tue, 16 Sep 2025 10:36:21 +0200 -Subject: [PATCH 068/467] UPSTREAM: drm/vkms: Convert to DRM's vblank timer - -Replace vkms' vblank timer with the DRM implementation. The DRM -code is identical in concept, but differs in implementation. - -Vblank timers are covered in vblank helpers and initializer macros, -so remove the corresponding hrtimer in struct vkms_output. The -vblank timer calls vkms' custom timeout code via handle_vblank_timeout -in struct drm_crtc_helper_funcs. - -Signed-off-by: Thomas Zimmermann -Tested-by: Louis Chauvet -Reviewed-by: Louis Chauvet -Reviewed-by: Javier Martinez Canillas -Link: https://lore.kernel.org/r/20250916083816.30275-4-tzimmermann@suse.de -(cherry picked from commit 02e2681ffe1addde1fc8c35d05657b16bfa79613) -Signed-off-by: Han Gao ---- - drivers/gpu/drm/vkms/vkms_crtc.c | 83 +++----------------------------- - drivers/gpu/drm/vkms/vkms_drv.h | 2 - - 2 files changed, 7 insertions(+), 78 deletions(-) - -diff --git a/drivers/gpu/drm/vkms/vkms_crtc.c b/drivers/gpu/drm/vkms/vkms_crtc.c -index e60573e0f3e9..bd79f24686dc 100644 ---- a/drivers/gpu/drm/vkms/vkms_crtc.c -+++ b/drivers/gpu/drm/vkms/vkms_crtc.c -@@ -7,25 +7,18 @@ - #include - #include - #include -+#include - - #include "vkms_drv.h" - --static enum hrtimer_restart vkms_vblank_simulate(struct hrtimer *timer) -+static bool vkms_crtc_handle_vblank_timeout(struct drm_crtc *crtc) - { -- struct vkms_output *output = container_of(timer, struct vkms_output, -- vblank_hrtimer); -- struct drm_crtc *crtc = &output->crtc; -+ struct vkms_output *output = drm_crtc_to_vkms_output(crtc); - struct vkms_crtc_state *state; -- u64 ret_overrun; - bool ret, fence_cookie; - - fence_cookie = dma_fence_begin_signalling(); - -- ret_overrun = hrtimer_forward_now(&output->vblank_hrtimer, -- output->period_ns); -- if (ret_overrun != 1) -- pr_warn("%s: vblank timer overrun\n", __func__); -- - spin_lock(&output->lock); - ret = drm_crtc_handle_vblank(crtc); - if (!ret) -@@ -57,55 +50,6 @@ static enum hrtimer_restart vkms_vblank_simulate(struct hrtimer *timer) - - dma_fence_end_signalling(fence_cookie); - -- return HRTIMER_RESTART; --} -- --static int vkms_enable_vblank(struct drm_crtc *crtc) --{ -- struct drm_vblank_crtc *vblank = drm_crtc_vblank_crtc(crtc); -- struct vkms_output *out = drm_crtc_to_vkms_output(crtc); -- -- hrtimer_setup(&out->vblank_hrtimer, &vkms_vblank_simulate, CLOCK_MONOTONIC, -- HRTIMER_MODE_REL); -- out->period_ns = ktime_set(0, vblank->framedur_ns); -- hrtimer_start(&out->vblank_hrtimer, out->period_ns, HRTIMER_MODE_REL); -- -- return 0; --} -- --static void vkms_disable_vblank(struct drm_crtc *crtc) --{ -- struct vkms_output *out = drm_crtc_to_vkms_output(crtc); -- -- hrtimer_cancel(&out->vblank_hrtimer); --} -- --static bool vkms_get_vblank_timestamp(struct drm_crtc *crtc, -- int *max_error, ktime_t *vblank_time, -- bool in_vblank_irq) --{ -- struct vkms_output *output = drm_crtc_to_vkms_output(crtc); -- struct drm_vblank_crtc *vblank = drm_crtc_vblank_crtc(crtc); -- -- if (!READ_ONCE(vblank->enabled)) { -- *vblank_time = ktime_get(); -- return true; -- } -- -- *vblank_time = READ_ONCE(output->vblank_hrtimer.node.expires); -- -- if (WARN_ON(*vblank_time == vblank->time)) -- return true; -- -- /* -- * To prevent races we roll the hrtimer forward before we do any -- * interrupt processing - this is how real hw works (the interrupt is -- * only generated after all the vblank registers are updated) and what -- * the vblank core expects. Therefore we need to always correct the -- * timestampe by one frame. -- */ -- *vblank_time -= output->period_ns; -- - return true; - } - -@@ -159,9 +103,7 @@ static const struct drm_crtc_funcs vkms_crtc_funcs = { - .reset = vkms_atomic_crtc_reset, - .atomic_duplicate_state = vkms_atomic_crtc_duplicate_state, - .atomic_destroy_state = vkms_atomic_crtc_destroy_state, -- .enable_vblank = vkms_enable_vblank, -- .disable_vblank = vkms_disable_vblank, -- .get_vblank_timestamp = vkms_get_vblank_timestamp, -+ DRM_CRTC_VBLANK_TIMER_FUNCS, - .get_crc_sources = vkms_get_crc_sources, - .set_crc_source = vkms_set_crc_source, - .verify_crc_source = vkms_verify_crc_source, -@@ -213,18 +155,6 @@ static int vkms_crtc_atomic_check(struct drm_crtc *crtc, - return 0; - } - --static void vkms_crtc_atomic_enable(struct drm_crtc *crtc, -- struct drm_atomic_state *state) --{ -- drm_crtc_vblank_on(crtc); --} -- --static void vkms_crtc_atomic_disable(struct drm_crtc *crtc, -- struct drm_atomic_state *state) --{ -- drm_crtc_vblank_off(crtc); --} -- - static void vkms_crtc_atomic_begin(struct drm_crtc *crtc, - struct drm_atomic_state *state) - __acquires(&vkms_output->lock) -@@ -265,8 +195,9 @@ static const struct drm_crtc_helper_funcs vkms_crtc_helper_funcs = { - .atomic_check = vkms_crtc_atomic_check, - .atomic_begin = vkms_crtc_atomic_begin, - .atomic_flush = vkms_crtc_atomic_flush, -- .atomic_enable = vkms_crtc_atomic_enable, -- .atomic_disable = vkms_crtc_atomic_disable, -+ .atomic_enable = drm_crtc_vblank_atomic_enable, -+ .atomic_disable = drm_crtc_vblank_atomic_disable, -+ .handle_vblank_timeout = vkms_crtc_handle_vblank_timeout, - }; - - struct vkms_output *vkms_crtc_init(struct drm_device *dev, struct drm_plane *primary, -diff --git a/drivers/gpu/drm/vkms/vkms_drv.h b/drivers/gpu/drm/vkms/vkms_drv.h -index 8013c31efe3b..fb9711e1c6fb 100644 ---- a/drivers/gpu/drm/vkms/vkms_drv.h -+++ b/drivers/gpu/drm/vkms/vkms_drv.h -@@ -215,8 +215,6 @@ struct vkms_output { - struct drm_crtc crtc; - struct drm_writeback_connector wb_connector; - struct drm_encoder wb_encoder; -- struct hrtimer vblank_hrtimer; -- ktime_t period_ns; - struct workqueue_struct *composer_workq; - spinlock_t lock; - --- -2.53.0 - diff --git a/SPECS/linux-lts/0072-UPSTREAM-drm-radeon-Make-MSI-address-limit-based-on-.patch b/SPECS/linux-lts/0069-UPSTREAM-drm-radeon-Make-MSI-address-limit-based-on-.patch similarity index 95% rename from SPECS/linux-lts/0072-UPSTREAM-drm-radeon-Make-MSI-address-limit-based-on-.patch rename to SPECS/linux-lts/0069-UPSTREAM-drm-radeon-Make-MSI-address-limit-based-on-.patch index 3eaeffad7c..02e46aef2a 100644 --- a/SPECS/linux-lts/0072-UPSTREAM-drm-radeon-Make-MSI-address-limit-based-on-.patch +++ b/SPECS/linux-lts/0069-UPSTREAM-drm-radeon-Make-MSI-address-limit-based-on-.patch @@ -1,7 +1,7 @@ -From ad4fb64413f53de6281889e26345c8138c8057f0 Mon Sep 17 00:00:00 2001 +From 9dcbec59b17ddb9befc7e35efebe9f69ebeb2745 Mon Sep 17 00:00:00 2001 From: Vivian Wang Date: Thu, 29 Jan 2026 09:56:08 +0800 -Subject: [PATCH 072/467] UPSTREAM: drm/radeon: Make MSI address limit based on +Subject: [RUYI PATCH] UPSTREAM: drm/radeon: Make MSI address limit based on the device DMA limit MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 diff --git a/SPECS/linux-lts/0073-UPSTREAM-ALSA-hda-intel-Make-MSI-address-limit-based.patch b/SPECS/linux-lts/0070-UPSTREAM-ALSA-hda-intel-Make-MSI-address-limit-based.patch similarity index 93% rename from SPECS/linux-lts/0073-UPSTREAM-ALSA-hda-intel-Make-MSI-address-limit-based.patch rename to SPECS/linux-lts/0070-UPSTREAM-ALSA-hda-intel-Make-MSI-address-limit-based.patch index ff05d9aa86..5f8bf385cf 100644 --- a/SPECS/linux-lts/0073-UPSTREAM-ALSA-hda-intel-Make-MSI-address-limit-based.patch +++ b/SPECS/linux-lts/0070-UPSTREAM-ALSA-hda-intel-Make-MSI-address-limit-based.patch @@ -1,8 +1,8 @@ -From 749d96eafd7fb34b9586ad8b894f76b4c121a47a Mon Sep 17 00:00:00 2001 +From ed396d380559185d5e0dfad4f40fc5cd8c0382d1 Mon Sep 17 00:00:00 2001 From: Vivian Wang Date: Thu, 29 Jan 2026 09:56:09 +0800 -Subject: [PATCH 073/467] UPSTREAM: ALSA: hda/intel: Make MSI address limit - based on the device DMA limit +Subject: [RUYI PATCH] UPSTREAM: ALSA: hda/intel: Make MSI address limit based + on the device DMA limit The hda/intel driver restricts the MSI message address for devices which do not advertise full 64-bit DMA address space support to 32-bit due to the diff --git a/SPECS/linux-lts/0074-UPSTREAM-riscv-dts-sophgo-enable-hardware-clock-RTC-.patch b/SPECS/linux-lts/0071-UPSTREAM-riscv-dts-sophgo-enable-hardware-clock-RTC-.patch similarity index 92% rename from SPECS/linux-lts/0074-UPSTREAM-riscv-dts-sophgo-enable-hardware-clock-RTC-.patch rename to SPECS/linux-lts/0071-UPSTREAM-riscv-dts-sophgo-enable-hardware-clock-RTC-.patch index 37197af0cf..9eb8c66514 100644 --- a/SPECS/linux-lts/0074-UPSTREAM-riscv-dts-sophgo-enable-hardware-clock-RTC-.patch +++ b/SPECS/linux-lts/0071-UPSTREAM-riscv-dts-sophgo-enable-hardware-clock-RTC-.patch @@ -1,7 +1,7 @@ -From 30a1d9c76630cd4198787ef0603dd4921f1559cf Mon Sep 17 00:00:00 2001 +From f4bd9635e84e4d37d8e56a08bbd43581faeddc96 Mon Sep 17 00:00:00 2001 From: Michael Orlitzky Date: Wed, 7 Jan 2026 06:29:22 -0500 -Subject: [PATCH 074/467] UPSTREAM: riscv: dts: sophgo: enable hardware clock +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: sophgo: enable hardware clock (RTC) on the Milk-V Pioneer These boards have a working hardware clock if you put a CR-1220 diff --git a/SPECS/linux-lts/0075-UPSTREAM-riscv-dts-sophgo-Move-PLIC-and-CLINT-node-i.patch b/SPECS/linux-lts/0072-UPSTREAM-riscv-dts-sophgo-Move-PLIC-and-CLINT-node-i.patch similarity index 99% rename from SPECS/linux-lts/0075-UPSTREAM-riscv-dts-sophgo-Move-PLIC-and-CLINT-node-i.patch rename to SPECS/linux-lts/0072-UPSTREAM-riscv-dts-sophgo-Move-PLIC-and-CLINT-node-i.patch index bf6b8b20f9..0d1f78cb37 100644 --- a/SPECS/linux-lts/0075-UPSTREAM-riscv-dts-sophgo-Move-PLIC-and-CLINT-node-i.patch +++ b/SPECS/linux-lts/0072-UPSTREAM-riscv-dts-sophgo-Move-PLIC-and-CLINT-node-i.patch @@ -1,8 +1,8 @@ -From e07dd958a1dd608e75f5d83068968406cf2c73a1 Mon Sep 17 00:00:00 2001 +From 4a0cc33492f3fc8e642380ddcf6f355a4ec6cfc1 Mon Sep 17 00:00:00 2001 From: Inochi Amaoto Date: Tue, 13 Jan 2026 10:38:26 +0800 -Subject: [PATCH 075/467] UPSTREAM: riscv: dts: sophgo: Move PLIC and CLINT - node into CPU dtsi +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: sophgo: Move PLIC and CLINT node + into CPU dtsi As we have a separate CPU dtsi file, move the PLIC and CLINT node to the CPU dtsi file. This will make the sg2042.dtsi focus diff --git a/SPECS/linux-lts/0076-UPSTREAM-riscv-dts-sophgo-fix-the-node-order-of-SG20.patch b/SPECS/linux-lts/0073-UPSTREAM-riscv-dts-sophgo-fix-the-node-order-of-SG20.patch similarity index 98% rename from SPECS/linux-lts/0076-UPSTREAM-riscv-dts-sophgo-fix-the-node-order-of-SG20.patch rename to SPECS/linux-lts/0073-UPSTREAM-riscv-dts-sophgo-fix-the-node-order-of-SG20.patch index 568815bda9..0d20c75013 100644 --- a/SPECS/linux-lts/0076-UPSTREAM-riscv-dts-sophgo-fix-the-node-order-of-SG20.patch +++ b/SPECS/linux-lts/0073-UPSTREAM-riscv-dts-sophgo-fix-the-node-order-of-SG20.patch @@ -1,7 +1,7 @@ -From bc212a22b04c56496e4f069f7f3fca8cffd37025 Mon Sep 17 00:00:00 2001 +From 05c376f7568773671fcd81b7cc92e365126410d0 Mon Sep 17 00:00:00 2001 From: Inochi Amaoto Date: Tue, 13 Jan 2026 10:38:27 +0800 -Subject: [PATCH 076/467] UPSTREAM: riscv: dts: sophgo: fix the node order of +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: sophgo: fix the node order of SG2042 peripheral In sg2042.dtsi, some peripheral device node does not follow the diff --git a/SPECS/linux-lts/0077-UPSTREAM-riscv-dts-spacemit-Enable-i2c8-adapter-for-.patch b/SPECS/linux-lts/0074-UPSTREAM-riscv-dts-spacemit-Enable-i2c8-adapter-for-.patch similarity index 87% rename from SPECS/linux-lts/0077-UPSTREAM-riscv-dts-spacemit-Enable-i2c8-adapter-for-.patch rename to SPECS/linux-lts/0074-UPSTREAM-riscv-dts-spacemit-Enable-i2c8-adapter-for-.patch index 7f626bb434..5f97d6ec8f 100644 --- a/SPECS/linux-lts/0077-UPSTREAM-riscv-dts-spacemit-Enable-i2c8-adapter-for-.patch +++ b/SPECS/linux-lts/0074-UPSTREAM-riscv-dts-spacemit-Enable-i2c8-adapter-for-.patch @@ -1,8 +1,8 @@ -From 424c28f6634db764db1cd2faa2f13e276f698b61 Mon Sep 17 00:00:00 2001 +From 7b375e6d39b2d52853eaff4e1f70555adadc5253 Mon Sep 17 00:00:00 2001 From: Javier Martinez Canillas Date: Sat, 6 Dec 2025 14:44:53 +0100 -Subject: [PATCH 077/467] UPSTREAM: riscv: dts: spacemit: Enable i2c8 adapter - for Milk-V Jupiter +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: spacemit: Enable i2c8 adapter for + Milk-V Jupiter The adapter is used to access the SpacemiT P1 PMIC present in this board. diff --git a/SPECS/linux-lts/0078-UPSTREAM-riscv-dts-spacemit-Define-fixed-regulators-.patch b/SPECS/linux-lts/0075-UPSTREAM-riscv-dts-spacemit-Define-fixed-regulators-.patch similarity index 89% rename from SPECS/linux-lts/0078-UPSTREAM-riscv-dts-spacemit-Define-fixed-regulators-.patch rename to SPECS/linux-lts/0075-UPSTREAM-riscv-dts-spacemit-Define-fixed-regulators-.patch index 707ca5b47b..1a8e836f5a 100644 --- a/SPECS/linux-lts/0078-UPSTREAM-riscv-dts-spacemit-Define-fixed-regulators-.patch +++ b/SPECS/linux-lts/0075-UPSTREAM-riscv-dts-spacemit-Define-fixed-regulators-.patch @@ -1,8 +1,8 @@ -From 02cddb709249c02e0e30f24ad102a5b7190d26c2 Mon Sep 17 00:00:00 2001 +From 4274a55a8dac98543297e2416ea7c7f40c4f641a Mon Sep 17 00:00:00 2001 From: Javier Martinez Canillas Date: Sat, 6 Dec 2025 14:44:54 +0100 -Subject: [PATCH 078/467] UPSTREAM: riscv: dts: spacemit: Define fixed - regulators for Milk-V Jupiter +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: spacemit: Define fixed regulators + for Milk-V Jupiter Define the DC power input and the 4v power as fixed regulator supplies. diff --git a/SPECS/linux-lts/0079-UPSTREAM-riscv-dts-spacemit-Define-the-P1-PMIC-regul.patch b/SPECS/linux-lts/0076-UPSTREAM-riscv-dts-spacemit-Define-the-P1-PMIC-regul.patch similarity index 96% rename from SPECS/linux-lts/0079-UPSTREAM-riscv-dts-spacemit-Define-the-P1-PMIC-regul.patch rename to SPECS/linux-lts/0076-UPSTREAM-riscv-dts-spacemit-Define-the-P1-PMIC-regul.patch index 2215cfd65e..1be8407564 100644 --- a/SPECS/linux-lts/0079-UPSTREAM-riscv-dts-spacemit-Define-the-P1-PMIC-regul.patch +++ b/SPECS/linux-lts/0076-UPSTREAM-riscv-dts-spacemit-Define-the-P1-PMIC-regul.patch @@ -1,7 +1,7 @@ -From 160cf483f6a088e178a125f0e3a1e3013726ce5c Mon Sep 17 00:00:00 2001 +From 0af31fdff636f13c96b48c14fe2dce73dbf55dfd Mon Sep 17 00:00:00 2001 From: Javier Martinez Canillas Date: Sat, 6 Dec 2025 14:44:55 +0100 -Subject: [PATCH 079/467] UPSTREAM: riscv: dts: spacemit: Define the P1 PMIC +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: spacemit: Define the P1 PMIC regulators for Milk-V Jupiter Define the SpacemiT P1 PMIC voltage regulators and their constraints. diff --git a/SPECS/linux-lts/0080-UPSTREAM-dt-bindings-phy-spacemit-Add-SpacemiT-PCIe-.patch b/SPECS/linux-lts/0077-UPSTREAM-dt-bindings-phy-spacemit-Add-SpacemiT-PCIe-.patch similarity index 97% rename from SPECS/linux-lts/0080-UPSTREAM-dt-bindings-phy-spacemit-Add-SpacemiT-PCIe-.patch rename to SPECS/linux-lts/0077-UPSTREAM-dt-bindings-phy-spacemit-Add-SpacemiT-PCIe-.patch index 4511c729d0..51bfee722a 100644 --- a/SPECS/linux-lts/0080-UPSTREAM-dt-bindings-phy-spacemit-Add-SpacemiT-PCIe-.patch +++ b/SPECS/linux-lts/0077-UPSTREAM-dt-bindings-phy-spacemit-Add-SpacemiT-PCIe-.patch @@ -1,7 +1,7 @@ -From 506b6beaa759b6c9a08da251acd900242abbc6db Mon Sep 17 00:00:00 2001 +From 0cb6f99b1dee1c78c2cb66de8612480e505be4b7 Mon Sep 17 00:00:00 2001 From: Alex Elder Date: Thu, 18 Dec 2025 09:12:27 -0600 -Subject: [PATCH 080/467] UPSTREAM: dt-bindings: phy: spacemit: Add SpacemiT +Subject: [RUYI PATCH] UPSTREAM: dt-bindings: phy: spacemit: Add SpacemiT PCIe/combo PHY Add the Device Tree binding for the PCIe/USB 3.0 combo PHY found in diff --git a/SPECS/linux-lts/0081-UPSTREAM-dt-bindings-phy-spacemit-Introduce-PCIe-PHY.patch b/SPECS/linux-lts/0078-UPSTREAM-dt-bindings-phy-spacemit-Introduce-PCIe-PHY.patch similarity index 95% rename from SPECS/linux-lts/0081-UPSTREAM-dt-bindings-phy-spacemit-Introduce-PCIe-PHY.patch rename to SPECS/linux-lts/0078-UPSTREAM-dt-bindings-phy-spacemit-Introduce-PCIe-PHY.patch index db99c863ec..9b069cb469 100644 --- a/SPECS/linux-lts/0081-UPSTREAM-dt-bindings-phy-spacemit-Introduce-PCIe-PHY.patch +++ b/SPECS/linux-lts/0078-UPSTREAM-dt-bindings-phy-spacemit-Introduce-PCIe-PHY.patch @@ -1,8 +1,7 @@ -From 3cd6a40bb10240022a2201bf5616dd9ed857f053 Mon Sep 17 00:00:00 2001 +From 69d5a6d06db546fbe5f911a20eff130b7eb44927 Mon Sep 17 00:00:00 2001 From: Alex Elder Date: Thu, 18 Dec 2025 09:12:28 -0600 -Subject: [PATCH 081/467] UPSTREAM: dt-bindings: phy: spacemit: Introduce PCIe - PHY +Subject: [RUYI PATCH] UPSTREAM: dt-bindings: phy: spacemit: Introduce PCIe PHY Add the Device Tree binding for two PCIe PHYs present on the SpacemiT K1 SoC. These PHYs are dependent on a separate combo PHY, which diff --git a/SPECS/linux-lts/0082-UPSTREAM-phy-spacemit-Introduce-PCIe-combo-PHY.patch b/SPECS/linux-lts/0079-UPSTREAM-phy-spacemit-Introduce-PCIe-combo-PHY.patch similarity index 99% rename from SPECS/linux-lts/0082-UPSTREAM-phy-spacemit-Introduce-PCIe-combo-PHY.patch rename to SPECS/linux-lts/0079-UPSTREAM-phy-spacemit-Introduce-PCIe-combo-PHY.patch index 10a079192b..78fc295801 100644 --- a/SPECS/linux-lts/0082-UPSTREAM-phy-spacemit-Introduce-PCIe-combo-PHY.patch +++ b/SPECS/linux-lts/0079-UPSTREAM-phy-spacemit-Introduce-PCIe-combo-PHY.patch @@ -1,7 +1,7 @@ -From 096da94e3a5fd9f1512f24b16feafb77786b5dfc Mon Sep 17 00:00:00 2001 +From ec3144e3a9c21e5c60712fe8b72eb68e9f8c120f Mon Sep 17 00:00:00 2001 From: Alex Elder Date: Thu, 18 Dec 2025 09:12:29 -0600 -Subject: [PATCH 082/467] UPSTREAM: phy: spacemit: Introduce PCIe/combo PHY +Subject: [RUYI PATCH] UPSTREAM: phy: spacemit: Introduce PCIe/combo PHY Introduce a driver that supports three PHYs found on the SpacemiT K1 SoC. The first PHY is a combo PHY that can be configured for diff --git a/SPECS/linux-lts/0083-UPSTREAM-riscv-dts-spacemit-Add-a-PCIe-regulator.patch b/SPECS/linux-lts/0080-UPSTREAM-riscv-dts-spacemit-Add-a-PCIe-regulator.patch similarity index 90% rename from SPECS/linux-lts/0083-UPSTREAM-riscv-dts-spacemit-Add-a-PCIe-regulator.patch rename to SPECS/linux-lts/0080-UPSTREAM-riscv-dts-spacemit-Add-a-PCIe-regulator.patch index f3892b1a9e..4a013ca623 100644 --- a/SPECS/linux-lts/0083-UPSTREAM-riscv-dts-spacemit-Add-a-PCIe-regulator.patch +++ b/SPECS/linux-lts/0080-UPSTREAM-riscv-dts-spacemit-Add-a-PCIe-regulator.patch @@ -1,7 +1,7 @@ -From d4491d4d3cdceae1b08777accb31e16fced2cedf Mon Sep 17 00:00:00 2001 +From 1fce0749e1bf54d192dde74d2c105f51a35ab4d4 Mon Sep 17 00:00:00 2001 From: Alex Elder Date: Thu, 18 Dec 2025 09:12:30 -0600 -Subject: [PATCH 083/467] UPSTREAM: riscv: dts: spacemit: Add a PCIe regulator +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: spacemit: Add a PCIe regulator Define a 3.3v fixed voltage regulator to be used by PCIe on the Banana Pi BPI-F3. On this platform, this regulator is always on. diff --git a/SPECS/linux-lts/0084-UPSTREAM-riscv-dts-spacemit-PCIe-and-PHY-related-upd.patch b/SPECS/linux-lts/0081-UPSTREAM-riscv-dts-spacemit-PCIe-and-PHY-related-upd.patch similarity index 98% rename from SPECS/linux-lts/0084-UPSTREAM-riscv-dts-spacemit-PCIe-and-PHY-related-upd.patch rename to SPECS/linux-lts/0081-UPSTREAM-riscv-dts-spacemit-PCIe-and-PHY-related-upd.patch index 0ce1356ac4..ba9f3b4975 100644 --- a/SPECS/linux-lts/0084-UPSTREAM-riscv-dts-spacemit-PCIe-and-PHY-related-upd.patch +++ b/SPECS/linux-lts/0081-UPSTREAM-riscv-dts-spacemit-PCIe-and-PHY-related-upd.patch @@ -1,7 +1,7 @@ -From 18a1bfdbf520d71a0a3013e286a6cb9152dca8b4 Mon Sep 17 00:00:00 2001 +From cca8801247fe6e5967002d5519f537917e6a9bf5 Mon Sep 17 00:00:00 2001 From: Alex Elder Date: Thu, 18 Dec 2025 09:12:31 -0600 -Subject: [PATCH 084/467] UPSTREAM: riscv: dts: spacemit: PCIe and PHY-related +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: spacemit: PCIe and PHY-related updates Define PCIe and PHY-related Device Tree nodes for the SpacemiT K1 SoC. diff --git a/SPECS/linux-lts/0085-UPSTREAM-dt-bindings-i2c-spacemit-add-optional-reset.patch b/SPECS/linux-lts/0082-UPSTREAM-dt-bindings-i2c-spacemit-add-optional-reset.patch similarity index 89% rename from SPECS/linux-lts/0085-UPSTREAM-dt-bindings-i2c-spacemit-add-optional-reset.patch rename to SPECS/linux-lts/0082-UPSTREAM-dt-bindings-i2c-spacemit-add-optional-reset.patch index 55238bb179..c158eae42a 100644 --- a/SPECS/linux-lts/0085-UPSTREAM-dt-bindings-i2c-spacemit-add-optional-reset.patch +++ b/SPECS/linux-lts/0082-UPSTREAM-dt-bindings-i2c-spacemit-add-optional-reset.patch @@ -1,7 +1,7 @@ -From 76c5487f89e7e980c33e0ff5153a4b508e920406 Mon Sep 17 00:00:00 2001 +From f388858d4abee4592cdb3e48a66ed3c681b5801f Mon Sep 17 00:00:00 2001 From: Encrow Thorne Date: Tue, 30 Dec 2025 23:06:51 +0800 -Subject: [PATCH 085/467] UPSTREAM: dt-bindings: i2c: spacemit: add optional +Subject: [RUYI PATCH] UPSTREAM: dt-bindings: i2c: spacemit: add optional resets The I2C controller requires a reset to ensure it starts from a clean state. diff --git a/SPECS/linux-lts/0086-UPSTREAM-i2c-k1-add-reset-support.patch b/SPECS/linux-lts/0083-UPSTREAM-i2c-k1-add-reset-support.patch similarity index 93% rename from SPECS/linux-lts/0086-UPSTREAM-i2c-k1-add-reset-support.patch rename to SPECS/linux-lts/0083-UPSTREAM-i2c-k1-add-reset-support.patch index a444fe362e..8df67ed42a 100644 --- a/SPECS/linux-lts/0086-UPSTREAM-i2c-k1-add-reset-support.patch +++ b/SPECS/linux-lts/0083-UPSTREAM-i2c-k1-add-reset-support.patch @@ -1,7 +1,7 @@ -From 22ab3f10aeaedca84e6ca2414362223f5873ce76 Mon Sep 17 00:00:00 2001 +From ed3b67eff1ecc6048f6b6a76bff5a97ff2abb964 Mon Sep 17 00:00:00 2001 From: Encrow Thorne Date: Tue, 30 Dec 2025 23:06:52 +0800 -Subject: [PATCH 086/467] UPSTREAM: i2c: k1: add reset support +Subject: [RUYI PATCH] UPSTREAM: i2c: k1: add reset support The K1 I2C controller provides a reset line that needs to be deasserted before the controller can be accessed. diff --git a/SPECS/linux-lts/0087-UPSTREAM-riscv-dts-spacemit-add-reset-property.patch b/SPECS/linux-lts/0084-UPSTREAM-riscv-dts-spacemit-add-reset-property.patch similarity index 94% rename from SPECS/linux-lts/0087-UPSTREAM-riscv-dts-spacemit-add-reset-property.patch rename to SPECS/linux-lts/0084-UPSTREAM-riscv-dts-spacemit-add-reset-property.patch index 3792ddbbb7..19f85450fa 100644 --- a/SPECS/linux-lts/0087-UPSTREAM-riscv-dts-spacemit-add-reset-property.patch +++ b/SPECS/linux-lts/0084-UPSTREAM-riscv-dts-spacemit-add-reset-property.patch @@ -1,7 +1,7 @@ -From 44a7ef4342a13da4cdca6f3bde4e71312846a07f Mon Sep 17 00:00:00 2001 +From 3aa8e6c84101edb3c499478758e4a82cc230af36 Mon Sep 17 00:00:00 2001 From: Encrow Thorne Date: Tue, 30 Dec 2025 23:06:53 +0800 -Subject: [PATCH 087/467] UPSTREAM: riscv: dts: spacemit: add reset property +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: spacemit: add reset property Add resets property to K1 I2C node. diff --git a/SPECS/linux-lts/0088-UPSTREAM-dt-bindings-phy-spacemit-add-K1-USB2-PHY.patch b/SPECS/linux-lts/0085-UPSTREAM-dt-bindings-phy-spacemit-add-K1-USB2-PHY.patch similarity index 92% rename from SPECS/linux-lts/0088-UPSTREAM-dt-bindings-phy-spacemit-add-K1-USB2-PHY.patch rename to SPECS/linux-lts/0085-UPSTREAM-dt-bindings-phy-spacemit-add-K1-USB2-PHY.patch index 77424cfb1a..eae9b4c51d 100644 --- a/SPECS/linux-lts/0088-UPSTREAM-dt-bindings-phy-spacemit-add-K1-USB2-PHY.patch +++ b/SPECS/linux-lts/0085-UPSTREAM-dt-bindings-phy-spacemit-add-K1-USB2-PHY.patch @@ -1,7 +1,7 @@ -From e521f4b92c204c0a9d6242ff41c3c872440dbab8 Mon Sep 17 00:00:00 2001 +From 9d8fbb22b0d4fc7ec75661abcee3d71ca556f67a Mon Sep 17 00:00:00 2001 From: Ze Huang Date: Fri, 17 Oct 2025 22:49:52 +0800 -Subject: [PATCH 088/467] UPSTREAM: dt-bindings: phy: spacemit: add K1 USB2 PHY +Subject: [RUYI PATCH] UPSTREAM: dt-bindings: phy: spacemit: add K1 USB2 PHY Add support for USB2 PHY found on SpacemiT K1 SoC. diff --git a/SPECS/linux-lts/0089-UPSTREAM-phy-spacemit-support-K1-USB2.0-PHY-controll.patch b/SPECS/linux-lts/0086-UPSTREAM-phy-spacemit-support-K1-USB2.0-PHY-controll.patch similarity index 98% rename from SPECS/linux-lts/0089-UPSTREAM-phy-spacemit-support-K1-USB2.0-PHY-controll.patch rename to SPECS/linux-lts/0086-UPSTREAM-phy-spacemit-support-K1-USB2.0-PHY-controll.patch index 5dc7268528..dd0a27e19d 100644 --- a/SPECS/linux-lts/0089-UPSTREAM-phy-spacemit-support-K1-USB2.0-PHY-controll.patch +++ b/SPECS/linux-lts/0086-UPSTREAM-phy-spacemit-support-K1-USB2.0-PHY-controll.patch @@ -1,7 +1,7 @@ -From fcc3def145a5601559279ba46a849f87baebfb1e Mon Sep 17 00:00:00 2001 +From 6fe75e59d1834ffff41681bcd52b6a1a83446f3e Mon Sep 17 00:00:00 2001 From: Ze Huang Date: Fri, 17 Oct 2025 22:49:53 +0800 -Subject: [PATCH 089/467] UPSTREAM: phy: spacemit: support K1 USB2.0 PHY +Subject: [RUYI PATCH] UPSTREAM: phy: spacemit: support K1 USB2.0 PHY controller The SpacemiT K1 SoC includes three USB ports: diff --git a/SPECS/linux-lts/0090-UPSTREAM-riscv-dts-spacemit-Add-USB2-PHY-node-for-K1.patch b/SPECS/linux-lts/0087-UPSTREAM-riscv-dts-spacemit-Add-USB2-PHY-node-for-K1.patch similarity index 90% rename from SPECS/linux-lts/0090-UPSTREAM-riscv-dts-spacemit-Add-USB2-PHY-node-for-K1.patch rename to SPECS/linux-lts/0087-UPSTREAM-riscv-dts-spacemit-Add-USB2-PHY-node-for-K1.patch index 091c89cba7..dc4568a151 100644 --- a/SPECS/linux-lts/0090-UPSTREAM-riscv-dts-spacemit-Add-USB2-PHY-node-for-K1.patch +++ b/SPECS/linux-lts/0087-UPSTREAM-riscv-dts-spacemit-Add-USB2-PHY-node-for-K1.patch @@ -1,8 +1,7 @@ -From 70d873fa83fb580cdd0722e586b71f7d82918b64 Mon Sep 17 00:00:00 2001 +From 11169d35e4ee7faf38d3e24da227dd6ca781964d Mon Sep 17 00:00:00 2001 From: Ze Huang Date: Sun, 11 Jan 2026 14:41:02 +0800 -Subject: [PATCH 090/467] UPSTREAM: riscv: dts: spacemit: Add USB2 PHY node for - K1 +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: spacemit: Add USB2 PHY node for K1 K1's DWC3 USB 3.0 controller requires two separate PHYs to function: the USB 3.0 combophy (for SuperSpeed) and a USB 2.0 PHY (for High-Speed, diff --git a/SPECS/linux-lts/0091-UPSTREAM-riscv-dts-spacemit-Add-DWC3-USB-3.0-control.patch b/SPECS/linux-lts/0088-UPSTREAM-riscv-dts-spacemit-Add-DWC3-USB-3.0-control.patch similarity index 93% rename from SPECS/linux-lts/0091-UPSTREAM-riscv-dts-spacemit-Add-DWC3-USB-3.0-control.patch rename to SPECS/linux-lts/0088-UPSTREAM-riscv-dts-spacemit-Add-DWC3-USB-3.0-control.patch index f42a890268..f327e7bfc3 100644 --- a/SPECS/linux-lts/0091-UPSTREAM-riscv-dts-spacemit-Add-DWC3-USB-3.0-control.patch +++ b/SPECS/linux-lts/0088-UPSTREAM-riscv-dts-spacemit-Add-DWC3-USB-3.0-control.patch @@ -1,7 +1,7 @@ -From b30b757a7e4570e7923bf3fcebcf0ff34a42b70c Mon Sep 17 00:00:00 2001 +From f38cd0cdcf8e8fecf3db47eb57caf5849e92aa36 Mon Sep 17 00:00:00 2001 From: Ze Huang Date: Sun, 11 Jan 2026 14:41:03 +0800 -Subject: [PATCH 091/467] UPSTREAM: riscv: dts: spacemit: Add DWC3 USB 3.0 +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: spacemit: Add DWC3 USB 3.0 controller node for K1 Add node for the Synopsys DWC3 USB 3.0 host controller on the K1 SoC. diff --git a/SPECS/linux-lts/0092-UPSTREAM-riscv-dts-spacemit-Enable-USB3.0-on-BananaP.patch b/SPECS/linux-lts/0089-UPSTREAM-riscv-dts-spacemit-Enable-USB3.0-on-BananaP.patch similarity index 94% rename from SPECS/linux-lts/0092-UPSTREAM-riscv-dts-spacemit-Enable-USB3.0-on-BananaP.patch rename to SPECS/linux-lts/0089-UPSTREAM-riscv-dts-spacemit-Enable-USB3.0-on-BananaP.patch index 072d73ce93..ada9b260b3 100644 --- a/SPECS/linux-lts/0092-UPSTREAM-riscv-dts-spacemit-Enable-USB3.0-on-BananaP.patch +++ b/SPECS/linux-lts/0089-UPSTREAM-riscv-dts-spacemit-Enable-USB3.0-on-BananaP.patch @@ -1,7 +1,7 @@ -From 3f32c9b526efb54621fa05106172ff0a751d71c5 Mon Sep 17 00:00:00 2001 +From 35bdc15291717adfaa52c4c9d060b5da8fac5ddf Mon Sep 17 00:00:00 2001 From: Ze Huang Date: Sun, 11 Jan 2026 14:41:04 +0800 -Subject: [PATCH 092/467] UPSTREAM: riscv: dts: spacemit: Enable USB3.0 on +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: spacemit: Enable USB3.0 on BananaPi-F3 Enable the DWC3 USB 3.0 controller and its associated usbphy2 on the diff --git a/SPECS/linux-lts/0093-UPSTREAM-dt-bindings-pinctrl-spacemit-convert-drive-.patch b/SPECS/linux-lts/0090-UPSTREAM-dt-bindings-pinctrl-spacemit-convert-drive-.patch similarity index 90% rename from SPECS/linux-lts/0093-UPSTREAM-dt-bindings-pinctrl-spacemit-convert-drive-.patch rename to SPECS/linux-lts/0090-UPSTREAM-dt-bindings-pinctrl-spacemit-convert-drive-.patch index 90c3f81528..3e646a9468 100644 --- a/SPECS/linux-lts/0093-UPSTREAM-dt-bindings-pinctrl-spacemit-convert-drive-.patch +++ b/SPECS/linux-lts/0090-UPSTREAM-dt-bindings-pinctrl-spacemit-convert-drive-.patch @@ -1,8 +1,8 @@ -From a74398cd1206eaac108f02079a5c123a819062fc Mon Sep 17 00:00:00 2001 +From 58100bb2e0beb94bf6f7d14ee1fbc0ba755686ab Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Fri, 2 Jan 2026 15:00:22 +0800 -Subject: [PATCH 093/467] UPSTREAM: dt-bindings: pinctrl: spacemit: convert - drive strength to schema format +Subject: [RUYI PATCH] UPSTREAM: dt-bindings: pinctrl: spacemit: convert drive + strength to schema format In order to better extend the pinctrl support for future new SoC, convert drive strength setting from free form text to more standard schema format. diff --git a/SPECS/linux-lts/0094-UPSTREAM-dt-bindings-pinctrl-spacemit-add-K3-SoC-sup.patch b/SPECS/linux-lts/0091-UPSTREAM-dt-bindings-pinctrl-spacemit-add-K3-SoC-sup.patch similarity index 92% rename from SPECS/linux-lts/0094-UPSTREAM-dt-bindings-pinctrl-spacemit-add-K3-SoC-sup.patch rename to SPECS/linux-lts/0091-UPSTREAM-dt-bindings-pinctrl-spacemit-add-K3-SoC-sup.patch index 7ec035b202..39afc5d902 100644 --- a/SPECS/linux-lts/0094-UPSTREAM-dt-bindings-pinctrl-spacemit-add-K3-SoC-sup.patch +++ b/SPECS/linux-lts/0091-UPSTREAM-dt-bindings-pinctrl-spacemit-add-K3-SoC-sup.patch @@ -1,7 +1,7 @@ -From 37ffcc8cf5dbf1d1553b54b67b39e8f7728b2714 Mon Sep 17 00:00:00 2001 +From 2038df152864bcab073a9afa519466c854b79d21 Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Fri, 2 Jan 2026 15:00:23 +0800 -Subject: [PATCH 094/467] UPSTREAM: dt-bindings: pinctrl: spacemit: add K3 SoC +Subject: [RUYI PATCH] UPSTREAM: dt-bindings: pinctrl: spacemit: add K3 SoC support Add new compatible string for SpacemiT K3 SoC, the pinctrl IP shares diff --git a/SPECS/linux-lts/0095-UPSTREAM-pinctrl-spacemit-k3-add-initial-pin-support.patch b/SPECS/linux-lts/0092-UPSTREAM-pinctrl-spacemit-k3-add-initial-pin-support.patch similarity index 99% rename from SPECS/linux-lts/0095-UPSTREAM-pinctrl-spacemit-k3-add-initial-pin-support.patch rename to SPECS/linux-lts/0092-UPSTREAM-pinctrl-spacemit-k3-add-initial-pin-support.patch index a3919c7994..36707ca688 100644 --- a/SPECS/linux-lts/0095-UPSTREAM-pinctrl-spacemit-k3-add-initial-pin-support.patch +++ b/SPECS/linux-lts/0092-UPSTREAM-pinctrl-spacemit-k3-add-initial-pin-support.patch @@ -1,8 +1,7 @@ -From 33f3e51747fc087ba55c240d5d94baeb18d26db3 Mon Sep 17 00:00:00 2001 +From fa64b4a9c989f85c6522c5cb06ef127c6dab3d27 Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Fri, 2 Jan 2026 15:00:24 +0800 -Subject: [PATCH 095/467] UPSTREAM: pinctrl: spacemit: k3: add initial pin - support +Subject: [RUYI PATCH] UPSTREAM: pinctrl: spacemit: k3: add initial pin support For the pinctrl IP of SpacemiT's K3 SoC, it has different register offset comparing with previous SoC generation, so introduce a function to do the diff --git a/SPECS/linux-lts/0096-UPSTREAM-pinctrl-spacemit-k3-adjust-drive-strength-a.patch b/SPECS/linux-lts/0093-UPSTREAM-pinctrl-spacemit-k3-adjust-drive-strength-a.patch similarity index 98% rename from SPECS/linux-lts/0096-UPSTREAM-pinctrl-spacemit-k3-adjust-drive-strength-a.patch rename to SPECS/linux-lts/0093-UPSTREAM-pinctrl-spacemit-k3-adjust-drive-strength-a.patch index 02226d7349..1885c27345 100644 --- a/SPECS/linux-lts/0096-UPSTREAM-pinctrl-spacemit-k3-adjust-drive-strength-a.patch +++ b/SPECS/linux-lts/0093-UPSTREAM-pinctrl-spacemit-k3-adjust-drive-strength-a.patch @@ -1,8 +1,8 @@ -From 407a2b9253b9c3e753302f3a24021c64b468be47 Mon Sep 17 00:00:00 2001 +From 57250a2d8e90085ff17ab7670d16519f41b64f28 Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Fri, 2 Jan 2026 15:00:25 +0800 -Subject: [PATCH 096/467] UPSTREAM: pinctrl: spacemit: k3: adjust drive - strength and schmitter trigger +Subject: [RUYI PATCH] UPSTREAM: pinctrl: spacemit: k3: adjust drive strength + and schmitter trigger K3 SoC expand drive strength to 4 bits which support even larger settings table comparing to old SoC generation. Also schmitter trigger diff --git a/SPECS/linux-lts/0097-UPSTREAM-dt-bindings-pinctrl-spacemit-add-syscon-pro.patch b/SPECS/linux-lts/0094-UPSTREAM-dt-bindings-pinctrl-spacemit-add-syscon-pro.patch similarity index 92% rename from SPECS/linux-lts/0097-UPSTREAM-dt-bindings-pinctrl-spacemit-add-syscon-pro.patch rename to SPECS/linux-lts/0094-UPSTREAM-dt-bindings-pinctrl-spacemit-add-syscon-pro.patch index 6328b7b073..b203991c2d 100644 --- a/SPECS/linux-lts/0097-UPSTREAM-dt-bindings-pinctrl-spacemit-add-syscon-pro.patch +++ b/SPECS/linux-lts/0094-UPSTREAM-dt-bindings-pinctrl-spacemit-add-syscon-pro.patch @@ -1,7 +1,7 @@ -From 9c53bc78545cc3c695e01922464a71c887179572 Mon Sep 17 00:00:00 2001 +From f3a4b85d5279965fc53d7163a005b2e64ff1327a Mon Sep 17 00:00:00 2001 From: Troy Mitchell Date: Thu, 8 Jan 2026 14:42:38 +0800 -Subject: [PATCH 097/467] UPSTREAM: dt-bindings: pinctrl: spacemit: add syscon +Subject: [RUYI PATCH] UPSTREAM: dt-bindings: pinctrl: spacemit: add syscon property In order to access the protected IO power domain registers, a valid diff --git a/SPECS/linux-lts/0098-UPSTREAM-pinctrl-spacemit-support-I-O-power-domain-c.patch b/SPECS/linux-lts/0095-UPSTREAM-pinctrl-spacemit-support-I-O-power-domain-c.patch similarity index 98% rename from SPECS/linux-lts/0098-UPSTREAM-pinctrl-spacemit-support-I-O-power-domain-c.patch rename to SPECS/linux-lts/0095-UPSTREAM-pinctrl-spacemit-support-I-O-power-domain-c.patch index 220390317f..377503eb76 100644 --- a/SPECS/linux-lts/0098-UPSTREAM-pinctrl-spacemit-support-I-O-power-domain-c.patch +++ b/SPECS/linux-lts/0095-UPSTREAM-pinctrl-spacemit-support-I-O-power-domain-c.patch @@ -1,7 +1,7 @@ -From 4d7b192ae28c8fd62c4887c36d1d2daf3d5537ab Mon Sep 17 00:00:00 2001 +From 0a07233b0f550ed136cd45130d55ac5e079fc795 Mon Sep 17 00:00:00 2001 From: Troy Mitchell Date: Thu, 8 Jan 2026 14:42:39 +0800 -Subject: [PATCH 098/467] UPSTREAM: pinctrl: spacemit: support I/O power domain +Subject: [RUYI PATCH] UPSTREAM: pinctrl: spacemit: support I/O power domain configuration Dual-voltage GPIO banks default to 3.3V operation. Even when a bank is diff --git a/SPECS/linux-lts/0099-UPSTREAM-riscv-dts-spacemit-pinctrl-update-register-.patch b/SPECS/linux-lts/0096-UPSTREAM-riscv-dts-spacemit-pinctrl-update-register-.patch similarity index 91% rename from SPECS/linux-lts/0099-UPSTREAM-riscv-dts-spacemit-pinctrl-update-register-.patch rename to SPECS/linux-lts/0096-UPSTREAM-riscv-dts-spacemit-pinctrl-update-register-.patch index 678fbcc0c7..8f6837bba8 100644 --- a/SPECS/linux-lts/0099-UPSTREAM-riscv-dts-spacemit-pinctrl-update-register-.patch +++ b/SPECS/linux-lts/0096-UPSTREAM-riscv-dts-spacemit-pinctrl-update-register-.patch @@ -1,8 +1,8 @@ -From 5379340efd812454feda9bf0ebc36dad03992fda Mon Sep 17 00:00:00 2001 +From 404911e71521a30847ea8198f0e48c7d6c92dac5 Mon Sep 17 00:00:00 2001 From: Troy Mitchell Date: Thu, 8 Jan 2026 14:42:40 +0800 -Subject: [PATCH 099/467] UPSTREAM: riscv: dts: spacemit: pinctrl: update - register and IO power +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: spacemit: pinctrl: update register + and IO power Change the size of the reg register to 0x1000 to match the hardware. This register range covers the IO power domain's register addresses. diff --git a/SPECS/linux-lts/0100-UPSTREAM-dt-bindings-riscv-update-ratified-version-o.patch b/SPECS/linux-lts/0097-UPSTREAM-dt-bindings-riscv-update-ratified-version-o.patch similarity index 95% rename from SPECS/linux-lts/0100-UPSTREAM-dt-bindings-riscv-update-ratified-version-o.patch rename to SPECS/linux-lts/0097-UPSTREAM-dt-bindings-riscv-update-ratified-version-o.patch index 3f371e8651..9c1db3eb89 100644 --- a/SPECS/linux-lts/0100-UPSTREAM-dt-bindings-riscv-update-ratified-version-o.patch +++ b/SPECS/linux-lts/0097-UPSTREAM-dt-bindings-riscv-update-ratified-version-o.patch @@ -1,8 +1,8 @@ -From bd353c8584ce96ff556b222bfcbd29bbce5d0a16 Mon Sep 17 00:00:00 2001 +From 33a192939d2dd110bc17a0f1c65a5c654c617d16 Mon Sep 17 00:00:00 2001 From: Guodong Xu Date: Thu, 25 Dec 2025 14:24:20 +0800 -Subject: [PATCH 100/467] UPSTREAM: dt-bindings: riscv: update ratified version - of h, svinval, svnapot, svpbmt +Subject: [RUYI PATCH] UPSTREAM: dt-bindings: riscv: update ratified version of + h, svinval, svnapot, svpbmt The descriptions for h, svinval, svnapot, and svpbmt extensions currently reference the "20191213 version of the privileged ISA specification". diff --git a/SPECS/linux-lts/0101-UPSTREAM-dt-bindings-riscv-Add-B-ISA-extension-descr.patch b/SPECS/linux-lts/0098-UPSTREAM-dt-bindings-riscv-Add-B-ISA-extension-descr.patch similarity index 95% rename from SPECS/linux-lts/0101-UPSTREAM-dt-bindings-riscv-Add-B-ISA-extension-descr.patch rename to SPECS/linux-lts/0098-UPSTREAM-dt-bindings-riscv-Add-B-ISA-extension-descr.patch index 3298ffafa4..03b356c1c3 100644 --- a/SPECS/linux-lts/0101-UPSTREAM-dt-bindings-riscv-Add-B-ISA-extension-descr.patch +++ b/SPECS/linux-lts/0098-UPSTREAM-dt-bindings-riscv-Add-B-ISA-extension-descr.patch @@ -1,7 +1,7 @@ -From b7ad5620e1cca351de602305d9722ab055f70643 Mon Sep 17 00:00:00 2001 +From 8b082ec91bd4cfaf11f3a1b69d1b66ea599ba3f1 Mon Sep 17 00:00:00 2001 From: Guodong Xu Date: Sat, 10 Jan 2026 13:18:18 +0800 -Subject: [PATCH 101/467] UPSTREAM: dt-bindings: riscv: Add B ISA extension +Subject: [RUYI PATCH] UPSTREAM: dt-bindings: riscv: Add B ISA extension description Add description of the single-letter B extension for Bit Manipulation. diff --git a/SPECS/linux-lts/0102-UPSTREAM-dt-bindings-riscv-Add-descriptions-for-Za64.patch b/SPECS/linux-lts/0099-UPSTREAM-dt-bindings-riscv-Add-descriptions-for-Za64.patch similarity index 97% rename from SPECS/linux-lts/0102-UPSTREAM-dt-bindings-riscv-Add-descriptions-for-Za64.patch rename to SPECS/linux-lts/0099-UPSTREAM-dt-bindings-riscv-Add-descriptions-for-Za64.patch index 10b2fa9c6e..f6b09dc50b 100644 --- a/SPECS/linux-lts/0102-UPSTREAM-dt-bindings-riscv-Add-descriptions-for-Za64.patch +++ b/SPECS/linux-lts/0099-UPSTREAM-dt-bindings-riscv-Add-descriptions-for-Za64.patch @@ -1,7 +1,7 @@ -From 40de97191a9ea8701aed74a3c0772761a8046235 Mon Sep 17 00:00:00 2001 +From 293192824603c354264f56113a64fc91d889d750 Mon Sep 17 00:00:00 2001 From: Guodong Xu Date: Sat, 10 Jan 2026 13:18:19 +0800 -Subject: [PATCH 102/467] UPSTREAM: dt-bindings: riscv: Add descriptions for +Subject: [RUYI PATCH] UPSTREAM: dt-bindings: riscv: Add descriptions for Za64rs, Ziccamoa, Ziccif, and Zicclsm Add descriptions for four extensions: Za64rs, Ziccamoa, Ziccif, and diff --git a/SPECS/linux-lts/0103-UPSTREAM-dt-bindings-riscv-Add-Ssccptr-Sscounterenw-.patch b/SPECS/linux-lts/0100-UPSTREAM-dt-bindings-riscv-Add-Ssccptr-Sscounterenw-.patch similarity index 95% rename from SPECS/linux-lts/0103-UPSTREAM-dt-bindings-riscv-Add-Ssccptr-Sscounterenw-.patch rename to SPECS/linux-lts/0100-UPSTREAM-dt-bindings-riscv-Add-Ssccptr-Sscounterenw-.patch index 8f9f20a577..347e39618f 100644 --- a/SPECS/linux-lts/0103-UPSTREAM-dt-bindings-riscv-Add-Ssccptr-Sscounterenw-.patch +++ b/SPECS/linux-lts/0100-UPSTREAM-dt-bindings-riscv-Add-Ssccptr-Sscounterenw-.patch @@ -1,8 +1,8 @@ -From cb41ade08efabd7980780c3df13115056b7d5bbe Mon Sep 17 00:00:00 2001 +From 9f1f119c5d51420861951a5660e8714b87fcf2ce Mon Sep 17 00:00:00 2001 From: Guodong Xu Date: Sat, 10 Jan 2026 13:18:20 +0800 -Subject: [PATCH 103/467] UPSTREAM: dt-bindings: riscv: Add Ssccptr, - Sscounterenw, Sstvala, Sstvecd, Ssu64xl +Subject: [RUYI PATCH] UPSTREAM: dt-bindings: riscv: Add Ssccptr, Sscounterenw, + Sstvala, Sstvecd, Ssu64xl Add descriptions for five new extensions: Ssccptr, Sscounterenw, Sstvala, Sstvecd, and Ssu64xl. These extensions are ratified in RISC-V Profiles diff --git a/SPECS/linux-lts/0104-UPSTREAM-dt-bindings-riscv-Add-Sha-and-its-comprised.patch b/SPECS/linux-lts/0101-UPSTREAM-dt-bindings-riscv-Add-Sha-and-its-comprised.patch similarity index 97% rename from SPECS/linux-lts/0104-UPSTREAM-dt-bindings-riscv-Add-Sha-and-its-comprised.patch rename to SPECS/linux-lts/0101-UPSTREAM-dt-bindings-riscv-Add-Sha-and-its-comprised.patch index 6613221727..f4ee934072 100644 --- a/SPECS/linux-lts/0104-UPSTREAM-dt-bindings-riscv-Add-Sha-and-its-comprised.patch +++ b/SPECS/linux-lts/0101-UPSTREAM-dt-bindings-riscv-Add-Sha-and-its-comprised.patch @@ -1,8 +1,8 @@ -From 76d1441d889e836547a5be7be06231426dd50fc7 Mon Sep 17 00:00:00 2001 +From 1642e810c6656b4e941561a7bb884e733c44a2f6 Mon Sep 17 00:00:00 2001 From: Guodong Xu Date: Sat, 10 Jan 2026 13:18:21 +0800 -Subject: [PATCH 104/467] UPSTREAM: dt-bindings: riscv: Add Sha and its - comprised extensions +Subject: [RUYI PATCH] UPSTREAM: dt-bindings: riscv: Add Sha and its comprised + extensions Add descriptions for the Sha extension and the seven extensions it comprises: Shcounterenw, Shgatpa, Shtvala, Shvsatpa, Shvstvala, Shvstvecd, diff --git a/SPECS/linux-lts/0105-UPSTREAM-riscv-dts-sophgo-sg2044-Add-b-ISA-extension.patch b/SPECS/linux-lts/0102-UPSTREAM-riscv-dts-sophgo-sg2044-Add-b-ISA-extension.patch similarity index 99% rename from SPECS/linux-lts/0105-UPSTREAM-riscv-dts-sophgo-sg2044-Add-b-ISA-extension.patch rename to SPECS/linux-lts/0102-UPSTREAM-riscv-dts-sophgo-sg2044-Add-b-ISA-extension.patch index fb246009b4..7eef93f3d7 100644 --- a/SPECS/linux-lts/0105-UPSTREAM-riscv-dts-sophgo-sg2044-Add-b-ISA-extension.patch +++ b/SPECS/linux-lts/0102-UPSTREAM-riscv-dts-sophgo-sg2044-Add-b-ISA-extension.patch @@ -1,7 +1,7 @@ -From 0fd7679a286d8f4656076076047b3c5627b87815 Mon Sep 17 00:00:00 2001 +From 815614b3265facda28aaa4572e120d8f049a9c79 Mon Sep 17 00:00:00 2001 From: Guodong Xu Date: Thu, 15 Jan 2026 07:18:59 +0800 -Subject: [PATCH 105/467] UPSTREAM: riscv: dts: sophgo: sg2044: Add "b" ISA +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: sophgo: sg2044: Add "b" ISA extension "b" is ratified (Apr/2024) much later than its components zba/zbb/zbs diff --git a/SPECS/linux-lts/0106-UPSTREAM-riscv-dts-spacemit-k1-Add-b-ISA-extension.patch b/SPECS/linux-lts/0103-UPSTREAM-riscv-dts-spacemit-k1-Add-b-ISA-extension.patch similarity index 98% rename from SPECS/linux-lts/0106-UPSTREAM-riscv-dts-spacemit-k1-Add-b-ISA-extension.patch rename to SPECS/linux-lts/0103-UPSTREAM-riscv-dts-spacemit-k1-Add-b-ISA-extension.patch index 8190f7f0ca..1f0aba5728 100644 --- a/SPECS/linux-lts/0106-UPSTREAM-riscv-dts-spacemit-k1-Add-b-ISA-extension.patch +++ b/SPECS/linux-lts/0103-UPSTREAM-riscv-dts-spacemit-k1-Add-b-ISA-extension.patch @@ -1,7 +1,7 @@ -From adaead5f6b5ea0e1fd34595fb5fe60ad48dd0471 Mon Sep 17 00:00:00 2001 +From 039b44e9b855295ac8945486ffea47d65240d000 Mon Sep 17 00:00:00 2001 From: Guodong Xu Date: Thu, 15 Jan 2026 07:19:00 +0800 -Subject: [PATCH 106/467] UPSTREAM: riscv: dts: spacemit: k1: Add "b" ISA +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: spacemit: k1: Add "b" ISA extension "b" is ratified (Apr/2024) much later than its components zba/zbb/zbs diff --git a/SPECS/linux-lts/0107-UPSTREAM-dt-bindings-riscv-add-SpacemiT-X100-CPU-com.patch b/SPECS/linux-lts/0104-UPSTREAM-dt-bindings-riscv-add-SpacemiT-X100-CPU-com.patch similarity index 92% rename from SPECS/linux-lts/0107-UPSTREAM-dt-bindings-riscv-add-SpacemiT-X100-CPU-com.patch rename to SPECS/linux-lts/0104-UPSTREAM-dt-bindings-riscv-add-SpacemiT-X100-CPU-com.patch index 809cf69223..8f2845d570 100644 --- a/SPECS/linux-lts/0107-UPSTREAM-dt-bindings-riscv-add-SpacemiT-X100-CPU-com.patch +++ b/SPECS/linux-lts/0104-UPSTREAM-dt-bindings-riscv-add-SpacemiT-X100-CPU-com.patch @@ -1,7 +1,7 @@ -From 8e1a61160ad52213d592d47106334dc60232a82b Mon Sep 17 00:00:00 2001 +From 3a49674fb8ec24236b9a789e322ccc05b66c4d65 Mon Sep 17 00:00:00 2001 From: Guodong Xu Date: Thu, 15 Jan 2026 14:51:40 +0800 -Subject: [PATCH 107/467] UPSTREAM: dt-bindings: riscv: add SpacemiT X100 CPU +Subject: [RUYI PATCH] UPSTREAM: dt-bindings: riscv: add SpacemiT X100 CPU compatible Add compatible string for the SpacemiT X100 core. [1] diff --git a/SPECS/linux-lts/0108-UPSTREAM-dt-bindings-timer-add-SpacemiT-K3-CLINT.patch b/SPECS/linux-lts/0105-UPSTREAM-dt-bindings-timer-add-SpacemiT-K3-CLINT.patch similarity index 90% rename from SPECS/linux-lts/0108-UPSTREAM-dt-bindings-timer-add-SpacemiT-K3-CLINT.patch rename to SPECS/linux-lts/0105-UPSTREAM-dt-bindings-timer-add-SpacemiT-K3-CLINT.patch index 8b1c7bc20d..10acec0266 100644 --- a/SPECS/linux-lts/0108-UPSTREAM-dt-bindings-timer-add-SpacemiT-K3-CLINT.patch +++ b/SPECS/linux-lts/0105-UPSTREAM-dt-bindings-timer-add-SpacemiT-K3-CLINT.patch @@ -1,7 +1,7 @@ -From 7095ed807e459baec17231d727e1e5399c4753c7 Mon Sep 17 00:00:00 2001 +From 9e4be2e7c734325e83668eba93f9e2dbc1220efa Mon Sep 17 00:00:00 2001 From: Guodong Xu Date: Thu, 15 Jan 2026 14:51:41 +0800 -Subject: [PATCH 108/467] UPSTREAM: dt-bindings: timer: add SpacemiT K3 CLINT +Subject: [RUYI PATCH] UPSTREAM: dt-bindings: timer: add SpacemiT K3 CLINT Add compatible string for SpacemiT K3 CLINT. diff --git a/SPECS/linux-lts/0109-UPSTREAM-dt-bindings-interrupt-controller-add-Spacem.patch b/SPECS/linux-lts/0106-UPSTREAM-dt-bindings-interrupt-controller-add-Spacem.patch similarity index 89% rename from SPECS/linux-lts/0109-UPSTREAM-dt-bindings-interrupt-controller-add-Spacem.patch rename to SPECS/linux-lts/0106-UPSTREAM-dt-bindings-interrupt-controller-add-Spacem.patch index 3257d1e8d2..f8b908b4e1 100644 --- a/SPECS/linux-lts/0109-UPSTREAM-dt-bindings-interrupt-controller-add-Spacem.patch +++ b/SPECS/linux-lts/0106-UPSTREAM-dt-bindings-interrupt-controller-add-Spacem.patch @@ -1,7 +1,7 @@ -From a5bf205e23df3a195f132f1b23867635454771e9 Mon Sep 17 00:00:00 2001 +From 57ea95edd2da52d808cbd5a6d874d1cb368dea05 Mon Sep 17 00:00:00 2001 From: Guodong Xu Date: Thu, 15 Jan 2026 14:51:42 +0800 -Subject: [PATCH 109/467] UPSTREAM: dt-bindings: interrupt-controller: add +Subject: [RUYI PATCH] UPSTREAM: dt-bindings: interrupt-controller: add SpacemiT K3 APLIC Add compatible string for SpacemiT K3 APLIC. diff --git a/SPECS/linux-lts/0110-UPSTREAM-dt-bindings-interrupt-controller-add-Spacem.patch b/SPECS/linux-lts/0107-UPSTREAM-dt-bindings-interrupt-controller-add-Spacem.patch similarity index 89% rename from SPECS/linux-lts/0110-UPSTREAM-dt-bindings-interrupt-controller-add-Spacem.patch rename to SPECS/linux-lts/0107-UPSTREAM-dt-bindings-interrupt-controller-add-Spacem.patch index 1568e712e5..9699a897cf 100644 --- a/SPECS/linux-lts/0110-UPSTREAM-dt-bindings-interrupt-controller-add-Spacem.patch +++ b/SPECS/linux-lts/0107-UPSTREAM-dt-bindings-interrupt-controller-add-Spacem.patch @@ -1,7 +1,7 @@ -From d63371e2a5c8738aa915c7d56267e1a929c22dba Mon Sep 17 00:00:00 2001 +From 7d7a00a794501c279b94f46e44c33a60cc0ecf71 Mon Sep 17 00:00:00 2001 From: Guodong Xu Date: Thu, 15 Jan 2026 14:51:43 +0800 -Subject: [PATCH 110/467] UPSTREAM: dt-bindings: interrupt-controller: add +Subject: [RUYI PATCH] UPSTREAM: dt-bindings: interrupt-controller: add SpacemiT K3 IMSIC Add compatible string for SpacemiT K3 IMSIC. diff --git a/SPECS/linux-lts/0111-UPSTREAM-dt-bindings-riscv-spacemit-add-K3-and-Pico-.patch b/SPECS/linux-lts/0108-UPSTREAM-dt-bindings-riscv-spacemit-add-K3-and-Pico-.patch similarity index 91% rename from SPECS/linux-lts/0111-UPSTREAM-dt-bindings-riscv-spacemit-add-K3-and-Pico-.patch rename to SPECS/linux-lts/0108-UPSTREAM-dt-bindings-riscv-spacemit-add-K3-and-Pico-.patch index 38620c5098..0f66a78fa3 100644 --- a/SPECS/linux-lts/0111-UPSTREAM-dt-bindings-riscv-spacemit-add-K3-and-Pico-.patch +++ b/SPECS/linux-lts/0108-UPSTREAM-dt-bindings-riscv-spacemit-add-K3-and-Pico-.patch @@ -1,7 +1,7 @@ -From f7c8a235eb0f117b1a38380fced43d1f12ce6a90 Mon Sep 17 00:00:00 2001 +From 90385ee4dee92d3b318cb4a03b5de245c87b06f2 Mon Sep 17 00:00:00 2001 From: Guodong Xu Date: Thu, 15 Jan 2026 14:51:44 +0800 -Subject: [PATCH 111/467] UPSTREAM: dt-bindings: riscv: spacemit: add K3 and +Subject: [RUYI PATCH] UPSTREAM: dt-bindings: riscv: spacemit: add K3 and Pico-ITX board bindings Add DT binding documentation for the SpacemiT K3 SoC and the board Pico-ITX diff --git a/SPECS/linux-lts/0112-UPSTREAM-riscv-dts-spacemit-add-initial-support-for-.patch b/SPECS/linux-lts/0109-UPSTREAM-riscv-dts-spacemit-add-initial-support-for-.patch similarity index 99% rename from SPECS/linux-lts/0112-UPSTREAM-riscv-dts-spacemit-add-initial-support-for-.patch rename to SPECS/linux-lts/0109-UPSTREAM-riscv-dts-spacemit-add-initial-support-for-.patch index 238312a7d2..f038974db6 100644 --- a/SPECS/linux-lts/0112-UPSTREAM-riscv-dts-spacemit-add-initial-support-for-.patch +++ b/SPECS/linux-lts/0109-UPSTREAM-riscv-dts-spacemit-add-initial-support-for-.patch @@ -1,8 +1,8 @@ -From fe51e7041e2aff1c2d9c8aa9847ccab8ca54a056 Mon Sep 17 00:00:00 2001 +From b4a0b52d7cdbe329b44301f63847faf1c8631060 Mon Sep 17 00:00:00 2001 From: Guodong Xu Date: Thu, 15 Jan 2026 14:51:45 +0800 -Subject: [PATCH 112/467] UPSTREAM: riscv: dts: spacemit: add initial support - for K3 SoC +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: spacemit: add initial support for + K3 SoC SpacemiT K3 is equipped with 8 X100 cores, which are RVA23 compliant. Add nodes of uarts, timer and interrupt-controllers. Also add M-mode diff --git a/SPECS/linux-lts/0113-UPSTREAM-riscv-dts-spacemit-add-K3-Pico-ITX-board-su.patch b/SPECS/linux-lts/0110-UPSTREAM-riscv-dts-spacemit-add-K3-Pico-ITX-board-su.patch similarity index 93% rename from SPECS/linux-lts/0113-UPSTREAM-riscv-dts-spacemit-add-K3-Pico-ITX-board-su.patch rename to SPECS/linux-lts/0110-UPSTREAM-riscv-dts-spacemit-add-K3-Pico-ITX-board-su.patch index b8abaeb4f2..f252517e9d 100644 --- a/SPECS/linux-lts/0113-UPSTREAM-riscv-dts-spacemit-add-K3-Pico-ITX-board-su.patch +++ b/SPECS/linux-lts/0110-UPSTREAM-riscv-dts-spacemit-add-K3-Pico-ITX-board-su.patch @@ -1,7 +1,7 @@ -From fcd998b46e6d0b3681c7f4192cb27b126e034191 Mon Sep 17 00:00:00 2001 +From 377151dae3f25558fd27556e52c4f0854c988c8b Mon Sep 17 00:00:00 2001 From: Guodong Xu Date: Thu, 15 Jan 2026 14:51:46 +0800 -Subject: [PATCH 113/467] UPSTREAM: riscv: dts: spacemit: add K3 Pico-ITX board +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: spacemit: add K3 Pico-ITX board support K3 Pico-ITX is a 2.5-inch single-board computer equipted with a SpacemiT diff --git a/SPECS/linux-lts/0114-UPSTREAM-clk-spacemit-Hide-common-clock-driver-from-.patch b/SPECS/linux-lts/0111-UPSTREAM-clk-spacemit-Hide-common-clock-driver-from-.patch similarity index 90% rename from SPECS/linux-lts/0114-UPSTREAM-clk-spacemit-Hide-common-clock-driver-from-.patch rename to SPECS/linux-lts/0111-UPSTREAM-clk-spacemit-Hide-common-clock-driver-from-.patch index ec4fc1255f..ec9ea29ffd 100644 --- a/SPECS/linux-lts/0114-UPSTREAM-clk-spacemit-Hide-common-clock-driver-from-.patch +++ b/SPECS/linux-lts/0111-UPSTREAM-clk-spacemit-Hide-common-clock-driver-from-.patch @@ -1,8 +1,8 @@ -From 0e02ccc906b37757be6723a81e0e8d49131246c6 Mon Sep 17 00:00:00 2001 +From 2503ec0c2acbeba44796cf9a39cd65176b1b41b8 Mon Sep 17 00:00:00 2001 From: Inochi Amaoto Date: Fri, 19 Dec 2025 09:28:18 +0800 -Subject: [PATCH 114/467] UPSTREAM: clk: spacemit: Hide common clock driver - from user controller +Subject: [RUYI PATCH] UPSTREAM: clk: spacemit: Hide common clock driver from + user controller Since the common clock driver is only a dependency for other spacemit clock driver, it should not be enabled individually, so hide this in diff --git a/SPECS/linux-lts/0115-UPSTREAM-clk-spacemit-prepare-common-ccu-header.patch b/SPECS/linux-lts/0112-UPSTREAM-clk-spacemit-prepare-common-ccu-header.patch similarity index 94% rename from SPECS/linux-lts/0115-UPSTREAM-clk-spacemit-prepare-common-ccu-header.patch rename to SPECS/linux-lts/0112-UPSTREAM-clk-spacemit-prepare-common-ccu-header.patch index 8a5722dcf6..02f0837e38 100644 --- a/SPECS/linux-lts/0115-UPSTREAM-clk-spacemit-prepare-common-ccu-header.patch +++ b/SPECS/linux-lts/0112-UPSTREAM-clk-spacemit-prepare-common-ccu-header.patch @@ -1,7 +1,7 @@ -From 771281a6b5e7596444e45eefb3739c0fdc34a300 Mon Sep 17 00:00:00 2001 +From 5fd55e32b05d7b1c89471933925ea500ab96dc8f Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Fri, 19 Dec 2025 21:52:08 +0800 -Subject: [PATCH 115/467] UPSTREAM: clk: spacemit: prepare common ccu header +Subject: [RUYI PATCH] UPSTREAM: clk: spacemit: prepare common ccu header In order to prepare adding clock driver for new K3 SoC, extract generic code to a separate common ccu header file, so they are not defined diff --git a/SPECS/linux-lts/0116-UPSTREAM-clk-spacemit-extract-common-ccu-functions.patch b/SPECS/linux-lts/0113-UPSTREAM-clk-spacemit-extract-common-ccu-functions.patch similarity index 98% rename from SPECS/linux-lts/0116-UPSTREAM-clk-spacemit-extract-common-ccu-functions.patch rename to SPECS/linux-lts/0113-UPSTREAM-clk-spacemit-extract-common-ccu-functions.patch index 1d0ba908ed..07bf26b3d3 100644 --- a/SPECS/linux-lts/0116-UPSTREAM-clk-spacemit-extract-common-ccu-functions.patch +++ b/SPECS/linux-lts/0113-UPSTREAM-clk-spacemit-extract-common-ccu-functions.patch @@ -1,7 +1,7 @@ -From 4884ecab8b7bfb72589924db174968f01edb5910 Mon Sep 17 00:00:00 2001 +From 882ae01390f0d71acbaa666ad62660f1690558cb Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Fri, 19 Dec 2025 08:07:23 +0800 -Subject: [PATCH 116/467] UPSTREAM: clk: spacemit: extract common ccu functions +Subject: [RUYI PATCH] UPSTREAM: clk: spacemit: extract common ccu functions Refactor the probe function of SpacemiT's clock, and extract a common ccu file, so new clock driver added in the future can share the same code, diff --git a/SPECS/linux-lts/0117-UPSTREAM-clk-spacemit-add-platform-SoC-prefix-to-res.patch b/SPECS/linux-lts/0114-UPSTREAM-clk-spacemit-add-platform-SoC-prefix-to-res.patch similarity index 94% rename from SPECS/linux-lts/0117-UPSTREAM-clk-spacemit-add-platform-SoC-prefix-to-res.patch rename to SPECS/linux-lts/0114-UPSTREAM-clk-spacemit-add-platform-SoC-prefix-to-res.patch index 72381976e0..195fb33162 100644 --- a/SPECS/linux-lts/0117-UPSTREAM-clk-spacemit-add-platform-SoC-prefix-to-res.patch +++ b/SPECS/linux-lts/0114-UPSTREAM-clk-spacemit-add-platform-SoC-prefix-to-res.patch @@ -1,7 +1,7 @@ -From 7c0b4de9221472ba52db151507973c2e67c7f5c2 Mon Sep 17 00:00:00 2001 +From 597e2f7d18294ec1b59dc52d5be6ac61f4ef6075 Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Sat, 3 Jan 2026 14:14:36 +0800 -Subject: [PATCH 117/467] UPSTREAM: clk: spacemit: add platform SoC prefix to +Subject: [RUYI PATCH] UPSTREAM: clk: spacemit: add platform SoC prefix to reset name This change is needed for adding future new SpacemiT K3 reset driver. diff --git a/SPECS/linux-lts/0118-UPSTREAM-reset-spacemit-fix-auxiliary-device-id.patch b/SPECS/linux-lts/0115-UPSTREAM-reset-spacemit-fix-auxiliary-device-id.patch similarity index 92% rename from SPECS/linux-lts/0118-UPSTREAM-reset-spacemit-fix-auxiliary-device-id.patch rename to SPECS/linux-lts/0115-UPSTREAM-reset-spacemit-fix-auxiliary-device-id.patch index 42dc66ad65..1bbdfdf4b9 100644 --- a/SPECS/linux-lts/0118-UPSTREAM-reset-spacemit-fix-auxiliary-device-id.patch +++ b/SPECS/linux-lts/0115-UPSTREAM-reset-spacemit-fix-auxiliary-device-id.patch @@ -1,7 +1,7 @@ -From 316e5feca8326de2fcdcb6a5ad36fbdbf7b12758 Mon Sep 17 00:00:00 2001 +From 195ce637ead66f8aff72ecf491637b937ab32985 Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Fri, 19 Dec 2025 05:34:39 +0800 -Subject: [PATCH 118/467] UPSTREAM: reset: spacemit: fix auxiliary device id +Subject: [RUYI PATCH] UPSTREAM: reset: spacemit: fix auxiliary device id Due to the auxiliary register procedure moved to ccu common module where the module name changed to spacemit_ccu, then the reset auxiliary device diff --git a/SPECS/linux-lts/0119-UPSTREAM-dt-bindings-soc-spacemit-k3-add-clock-suppo.patch b/SPECS/linux-lts/0116-UPSTREAM-dt-bindings-soc-spacemit-k3-add-clock-suppo.patch similarity index 99% rename from SPECS/linux-lts/0119-UPSTREAM-dt-bindings-soc-spacemit-k3-add-clock-suppo.patch rename to SPECS/linux-lts/0116-UPSTREAM-dt-bindings-soc-spacemit-k3-add-clock-suppo.patch index 5b56ed2c06..eb8a0da4ac 100644 --- a/SPECS/linux-lts/0119-UPSTREAM-dt-bindings-soc-spacemit-k3-add-clock-suppo.patch +++ b/SPECS/linux-lts/0116-UPSTREAM-dt-bindings-soc-spacemit-k3-add-clock-suppo.patch @@ -1,7 +1,7 @@ -From 57bc7378dba997a6f4714c6180bf65bbaf53dccb Mon Sep 17 00:00:00 2001 +From 4887997f9fc66c19a62763d21f3beb9036a5470b Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Sat, 1 Nov 2025 20:56:42 +0800 -Subject: [PATCH 119/467] UPSTREAM: dt-bindings: soc: spacemit: k3: add clock +Subject: [RUYI PATCH] UPSTREAM: dt-bindings: soc: spacemit: k3: add clock support Add compatible strings for clock drivers to support Spacemit K3 SoC, diff --git a/SPECS/linux-lts/0120-UPSTREAM-clk-spacemit-ccu_mix-add-inverted-enable-ga.patch b/SPECS/linux-lts/0117-UPSTREAM-clk-spacemit-ccu_mix-add-inverted-enable-ga.patch similarity index 96% rename from SPECS/linux-lts/0120-UPSTREAM-clk-spacemit-ccu_mix-add-inverted-enable-ga.patch rename to SPECS/linux-lts/0117-UPSTREAM-clk-spacemit-ccu_mix-add-inverted-enable-ga.patch index 5c1f5ce5c7..3bd158963f 100644 --- a/SPECS/linux-lts/0120-UPSTREAM-clk-spacemit-ccu_mix-add-inverted-enable-ga.patch +++ b/SPECS/linux-lts/0117-UPSTREAM-clk-spacemit-ccu_mix-add-inverted-enable-ga.patch @@ -1,7 +1,7 @@ -From 963fb293372d266d46bee16fa3f3b74d277c8831 Mon Sep 17 00:00:00 2001 +From f461f20d8d5d33bdf1d9fa07acf5a6337f03e57c Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Fri, 31 Oct 2025 20:40:46 +0800 -Subject: [PATCH 120/467] UPSTREAM: clk: spacemit: ccu_mix: add inverted enable +Subject: [RUYI PATCH] UPSTREAM: clk: spacemit: ccu_mix: add inverted enable gate clock K3 SoC has the clock IP which support to write value 0 for enabling the diff --git a/SPECS/linux-lts/0121-UPSTREAM-clk-spacemit-ccu_pll-add-plla-type-clock.patch b/SPECS/linux-lts/0118-UPSTREAM-clk-spacemit-ccu_pll-add-plla-type-clock.patch similarity index 98% rename from SPECS/linux-lts/0121-UPSTREAM-clk-spacemit-ccu_pll-add-plla-type-clock.patch rename to SPECS/linux-lts/0118-UPSTREAM-clk-spacemit-ccu_pll-add-plla-type-clock.patch index 31fdf94a99..6dfcedf96e 100644 --- a/SPECS/linux-lts/0121-UPSTREAM-clk-spacemit-ccu_pll-add-plla-type-clock.patch +++ b/SPECS/linux-lts/0118-UPSTREAM-clk-spacemit-ccu_pll-add-plla-type-clock.patch @@ -1,7 +1,7 @@ -From 8a1339992d26116b2566f2ad5313da25901e4b2a Mon Sep 17 00:00:00 2001 +From a7ce4c7a2f5e9b248b21befc2f291b0d3ae3b195 Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Mon, 27 Oct 2025 21:41:24 +0800 -Subject: [PATCH 121/467] UPSTREAM: clk: spacemit: ccu_pll: add plla type clock +Subject: [RUYI PATCH] UPSTREAM: clk: spacemit: ccu_pll: add plla type clock Introduce a new clock PLLA for SpacemiT's K3 SoC which has a different register layout comparing to previous PPL type. And, It is configured diff --git a/SPECS/linux-lts/0122-UPSTREAM-clk-spacemit-k3-extract-common-header.patch b/SPECS/linux-lts/0119-UPSTREAM-clk-spacemit-k3-extract-common-header.patch similarity index 98% rename from SPECS/linux-lts/0122-UPSTREAM-clk-spacemit-k3-extract-common-header.patch rename to SPECS/linux-lts/0119-UPSTREAM-clk-spacemit-k3-extract-common-header.patch index deefe5b921..8ce677d1e4 100644 --- a/SPECS/linux-lts/0122-UPSTREAM-clk-spacemit-k3-extract-common-header.patch +++ b/SPECS/linux-lts/0119-UPSTREAM-clk-spacemit-k3-extract-common-header.patch @@ -1,7 +1,7 @@ -From 3b39ff3c0baef35c207ed2fe3f34137a9a874573 Mon Sep 17 00:00:00 2001 +From 22c56093a5cbcc8d011f81d4523ee8160d5caa5f Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Sat, 20 Dec 2025 21:28:15 +0800 -Subject: [PATCH 122/467] UPSTREAM: clk: spacemit: k3: extract common header +Subject: [RUYI PATCH] UPSTREAM: clk: spacemit: k3: extract common header Extracting common header file, which will be shared by clock and reset drivers. So will make it easy to add reset driver for K3 SoC later. diff --git a/SPECS/linux-lts/0123-UPSTREAM-clk-spacemit-k3-add-the-clock-tree.patch b/SPECS/linux-lts/0120-UPSTREAM-clk-spacemit-k3-add-the-clock-tree.patch similarity index 99% rename from SPECS/linux-lts/0123-UPSTREAM-clk-spacemit-k3-add-the-clock-tree.patch rename to SPECS/linux-lts/0120-UPSTREAM-clk-spacemit-k3-add-the-clock-tree.patch index 606059384f..ca7b6c2396 100644 --- a/SPECS/linux-lts/0123-UPSTREAM-clk-spacemit-k3-add-the-clock-tree.patch +++ b/SPECS/linux-lts/0120-UPSTREAM-clk-spacemit-k3-add-the-clock-tree.patch @@ -1,7 +1,7 @@ -From 762b40db00f83f963c11e08eb0a8b6a4ed8d3e58 Mon Sep 17 00:00:00 2001 +From 878e4e3217cc3b8b51d6d5480b8c6c8120d47144 Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Sun, 2 Nov 2025 21:17:17 +0800 -Subject: [PATCH 123/467] UPSTREAM: clk: spacemit: k3: add the clock tree +Subject: [RUYI PATCH] UPSTREAM: clk: spacemit: k3: add the clock tree Add clock support to SpacemiT K3 SoC, the clock tree consist of several blocks which are APBC, APBS, APMU, DCIU, MPUM. diff --git a/SPECS/linux-lts/0124-UPSTREAM-dt-bindings-soc-spacemit-Add-K3-reset-suppo.patch b/SPECS/linux-lts/0121-UPSTREAM-dt-bindings-soc-spacemit-Add-K3-reset-suppo.patch similarity index 98% rename from SPECS/linux-lts/0124-UPSTREAM-dt-bindings-soc-spacemit-Add-K3-reset-suppo.patch rename to SPECS/linux-lts/0121-UPSTREAM-dt-bindings-soc-spacemit-Add-K3-reset-suppo.patch index 5ef22ef32b..c049403590 100644 --- a/SPECS/linux-lts/0124-UPSTREAM-dt-bindings-soc-spacemit-Add-K3-reset-suppo.patch +++ b/SPECS/linux-lts/0121-UPSTREAM-dt-bindings-soc-spacemit-Add-K3-reset-suppo.patch @@ -1,7 +1,7 @@ -From 6eb7dce00142b5381c54a88e02ba870e0aebb1c9 Mon Sep 17 00:00:00 2001 +From c8b8aab18243d5ad3ee4a6b980f1448aee344adb Mon Sep 17 00:00:00 2001 From: Guodong Xu Date: Tue, 20 Jan 2026 19:10:49 +0800 -Subject: [PATCH 124/467] UPSTREAM: dt-bindings: soc: spacemit: Add K3 reset +Subject: [RUYI PATCH] UPSTREAM: dt-bindings: soc: spacemit: Add K3 reset support and IDs Update the spacemit,k1-syscon.yaml binding to document K3 SoC reset diff --git a/SPECS/linux-lts/0125-UPSTREAM-reset-Create-subdirectory-for-SpacemiT-driv.patch b/SPECS/linux-lts/0122-UPSTREAM-reset-Create-subdirectory-for-SpacemiT-driv.patch similarity index 97% rename from SPECS/linux-lts/0125-UPSTREAM-reset-Create-subdirectory-for-SpacemiT-driv.patch rename to SPECS/linux-lts/0122-UPSTREAM-reset-Create-subdirectory-for-SpacemiT-driv.patch index afc9137c09..6775e0de91 100644 --- a/SPECS/linux-lts/0125-UPSTREAM-reset-Create-subdirectory-for-SpacemiT-driv.patch +++ b/SPECS/linux-lts/0122-UPSTREAM-reset-Create-subdirectory-for-SpacemiT-driv.patch @@ -1,7 +1,7 @@ -From 9049262f9ac3ca9c394670007ce66ff407629b3d Mon Sep 17 00:00:00 2001 +From f58dcbda59da2a11300427e92f4c1abb7c6898f7 Mon Sep 17 00:00:00 2001 From: Guodong Xu Date: Tue, 20 Jan 2026 19:10:50 +0800 -Subject: [PATCH 125/467] UPSTREAM: reset: Create subdirectory for SpacemiT +Subject: [RUYI PATCH] UPSTREAM: reset: Create subdirectory for SpacemiT drivers Create a dedicated subdirectory for SpacemiT reset drivers to allow diff --git a/SPECS/linux-lts/0126-UPSTREAM-reset-spacemit-Extract-common-K1-reset-code.patch b/SPECS/linux-lts/0123-UPSTREAM-reset-spacemit-Extract-common-K1-reset-code.patch similarity index 98% rename from SPECS/linux-lts/0126-UPSTREAM-reset-spacemit-Extract-common-K1-reset-code.patch rename to SPECS/linux-lts/0123-UPSTREAM-reset-spacemit-Extract-common-K1-reset-code.patch index 9da72b5533..326c078c60 100644 --- a/SPECS/linux-lts/0126-UPSTREAM-reset-spacemit-Extract-common-K1-reset-code.patch +++ b/SPECS/linux-lts/0123-UPSTREAM-reset-spacemit-Extract-common-K1-reset-code.patch @@ -1,8 +1,7 @@ -From dd53659d917a2ad7245d28a312b4a386f3f4d730 Mon Sep 17 00:00:00 2001 +From 1928fc1030c03e43f009ef60762dac1829c39b0c Mon Sep 17 00:00:00 2001 From: Guodong Xu Date: Tue, 20 Jan 2026 19:10:51 +0800 -Subject: [PATCH 126/467] UPSTREAM: reset: spacemit: Extract common K1 reset - code +Subject: [RUYI PATCH] UPSTREAM: reset: spacemit: Extract common K1 reset code Extract the common reset controller code from the K1 driver into separate reset-spacemit-common.{c,h} files to prepare for additional diff --git a/SPECS/linux-lts/0127-UPSTREAM-reset-spacemit-Add-SpacemiT-K3-reset-driver.patch b/SPECS/linux-lts/0124-UPSTREAM-reset-spacemit-Add-SpacemiT-K3-reset-driver.patch similarity index 99% rename from SPECS/linux-lts/0127-UPSTREAM-reset-spacemit-Add-SpacemiT-K3-reset-driver.patch rename to SPECS/linux-lts/0124-UPSTREAM-reset-spacemit-Add-SpacemiT-K3-reset-driver.patch index 437a1f8811..3e39a6ab56 100644 --- a/SPECS/linux-lts/0127-UPSTREAM-reset-spacemit-Add-SpacemiT-K3-reset-driver.patch +++ b/SPECS/linux-lts/0124-UPSTREAM-reset-spacemit-Add-SpacemiT-K3-reset-driver.patch @@ -1,8 +1,7 @@ -From fd89e8eec8bc5d871ccade81be1d4cd0d0b54ae1 Mon Sep 17 00:00:00 2001 +From ba7026a22c43e830be9a0dccce75c3867b2bcaad Mon Sep 17 00:00:00 2001 From: Guodong Xu Date: Tue, 20 Jan 2026 19:10:52 +0800 -Subject: [PATCH 127/467] UPSTREAM: reset: spacemit: Add SpacemiT K3 reset - driver +Subject: [RUYI PATCH] UPSTREAM: reset: spacemit: Add SpacemiT K3 reset driver Add support for the SpacemiT K3 SoC reset controller. The K3 reset driver reuses the common reset controller code and provides K3-specific diff --git a/SPECS/linux-lts/0128-UPSTREAM-dt-bindings-gpio-spacemit-add-compatible-na.patch b/SPECS/linux-lts/0125-UPSTREAM-dt-bindings-gpio-spacemit-add-compatible-na.patch similarity index 89% rename from SPECS/linux-lts/0128-UPSTREAM-dt-bindings-gpio-spacemit-add-compatible-na.patch rename to SPECS/linux-lts/0125-UPSTREAM-dt-bindings-gpio-spacemit-add-compatible-na.patch index cdf007650e..87f1321e5c 100644 --- a/SPECS/linux-lts/0128-UPSTREAM-dt-bindings-gpio-spacemit-add-compatible-na.patch +++ b/SPECS/linux-lts/0125-UPSTREAM-dt-bindings-gpio-spacemit-add-compatible-na.patch @@ -1,7 +1,7 @@ -From e384f721e2318cd682396313c94562368356bdec Mon Sep 17 00:00:00 2001 +From 69b50555993d0e015534df599be1be5f756f84ea Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Tue, 6 Jan 2026 11:09:32 +0800 -Subject: [PATCH 128/467] UPSTREAM: dt-bindings: gpio: spacemit: add compatible +Subject: [RUYI PATCH] UPSTREAM: dt-bindings: gpio: spacemit: add compatible name for K3 SoC Add new compatible string for SpacemiT K3 SoC's GPIO controller. diff --git a/SPECS/linux-lts/0129-UPSTREAM-gpio-spacemit-Add-GPIO-support-for-K3-SoC.patch b/SPECS/linux-lts/0126-UPSTREAM-gpio-spacemit-Add-GPIO-support-for-K3-SoC.patch similarity index 98% rename from SPECS/linux-lts/0129-UPSTREAM-gpio-spacemit-Add-GPIO-support-for-K3-SoC.patch rename to SPECS/linux-lts/0126-UPSTREAM-gpio-spacemit-Add-GPIO-support-for-K3-SoC.patch index 8f4194d8bf..7b6a45b12a 100644 --- a/SPECS/linux-lts/0129-UPSTREAM-gpio-spacemit-Add-GPIO-support-for-K3-SoC.patch +++ b/SPECS/linux-lts/0126-UPSTREAM-gpio-spacemit-Add-GPIO-support-for-K3-SoC.patch @@ -1,7 +1,7 @@ -From a0fdf97c15b11ba0954d550993bad54d718c63e2 Mon Sep 17 00:00:00 2001 +From 409dadffdee997565a81b01180b046890adbdd47 Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Tue, 6 Jan 2026 11:09:33 +0800 -Subject: [PATCH 129/467] UPSTREAM: gpio: spacemit: Add GPIO support for K3 SoC +Subject: [RUYI PATCH] UPSTREAM: gpio: spacemit: Add GPIO support for K3 SoC SpacemiT K3 SoC has changed gpio register layout while comparing with previous generation, the register offset and bank offset diff --git a/SPECS/linux-lts/0130-UPSTREAM-riscv-dts-spacemit-Disable-ETH-PHY-sleep-mo.patch b/SPECS/linux-lts/0127-UPSTREAM-riscv-dts-spacemit-Disable-ETH-PHY-sleep-mo.patch similarity index 92% rename from SPECS/linux-lts/0130-UPSTREAM-riscv-dts-spacemit-Disable-ETH-PHY-sleep-mo.patch rename to SPECS/linux-lts/0127-UPSTREAM-riscv-dts-spacemit-Disable-ETH-PHY-sleep-mo.patch index 0383823803..a2882d0c20 100644 --- a/SPECS/linux-lts/0130-UPSTREAM-riscv-dts-spacemit-Disable-ETH-PHY-sleep-mo.patch +++ b/SPECS/linux-lts/0127-UPSTREAM-riscv-dts-spacemit-Disable-ETH-PHY-sleep-mo.patch @@ -1,7 +1,7 @@ -From 1a7c7e7ba083e58a4ccc3b3fa45b63089ffb6cf2 Mon Sep 17 00:00:00 2001 +From ea85c56c78cbe48a0e645e57bb5d0151fa6f9bfa Mon Sep 17 00:00:00 2001 From: Chukun Pan Date: Tue, 20 Jan 2026 18:00:01 +0800 -Subject: [PATCH 130/467] UPSTREAM: riscv: dts: spacemit: Disable ETH PHY sleep +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: spacemit: Disable ETH PHY sleep mode for OrangePi On the SpacemiT K1 platform, the MAC can't read statistics when the PHY diff --git a/SPECS/linux-lts/0131-UPSTREAM-dt-bindings-clock-thead-th1520-clk-ap-Add-I.patch b/SPECS/linux-lts/0128-UPSTREAM-dt-bindings-clock-thead-th1520-clk-ap-Add-I.patch similarity index 85% rename from SPECS/linux-lts/0131-UPSTREAM-dt-bindings-clock-thead-th1520-clk-ap-Add-I.patch rename to SPECS/linux-lts/0128-UPSTREAM-dt-bindings-clock-thead-th1520-clk-ap-Add-I.patch index 3201f9018c..412075183b 100644 --- a/SPECS/linux-lts/0131-UPSTREAM-dt-bindings-clock-thead-th1520-clk-ap-Add-I.patch +++ b/SPECS/linux-lts/0128-UPSTREAM-dt-bindings-clock-thead-th1520-clk-ap-Add-I.patch @@ -1,8 +1,8 @@ -From 9a01370936360c3ee7d656548a3f36e7749b5924 Mon Sep 17 00:00:00 2001 +From 8731712faebb3034f523e3ed6e95191f5e47a01b Mon Sep 17 00:00:00 2001 From: Yao Zi Date: Thu, 20 Nov 2025 13:14:10 +0000 -Subject: [PATCH 131/467] UPSTREAM: dt-bindings: clock: thead,th1520-clk-ap: - Add ID for C910 bus clock +Subject: [RUYI PATCH] UPSTREAM: dt-bindings: clock: thead,th1520-clk-ap: Add + ID for C910 bus clock Add binding ID for C910 bus clock, which takes CLK_C910 as parent and is essential for C910 cluster's operation. diff --git a/SPECS/linux-lts/0132-UPSTREAM-clk-thead-th1520-ap-Add-C910-bus-clock.patch b/SPECS/linux-lts/0129-UPSTREAM-clk-thead-th1520-ap-Add-C910-bus-clock.patch similarity index 92% rename from SPECS/linux-lts/0132-UPSTREAM-clk-thead-th1520-ap-Add-C910-bus-clock.patch rename to SPECS/linux-lts/0129-UPSTREAM-clk-thead-th1520-ap-Add-C910-bus-clock.patch index ef29245e54..e28d1d6f4f 100644 --- a/SPECS/linux-lts/0132-UPSTREAM-clk-thead-th1520-ap-Add-C910-bus-clock.patch +++ b/SPECS/linux-lts/0129-UPSTREAM-clk-thead-th1520-ap-Add-C910-bus-clock.patch @@ -1,7 +1,7 @@ -From b5d944cf3ab3b20841cc2e504d8b66be87592c96 Mon Sep 17 00:00:00 2001 +From 43765d604a0ac503f549b2772fc89a67b6df8779 Mon Sep 17 00:00:00 2001 From: Yao Zi Date: Thu, 20 Nov 2025 13:14:12 +0000 -Subject: [PATCH 132/467] UPSTREAM: clk: thead: th1520-ap: Add C910 bus clock +Subject: [RUYI PATCH] UPSTREAM: clk: thead: th1520-ap: Add C910 bus clock This divider takes c910_clk as parent and is essential for the C910 cluster to operate, thus is marked as CLK_IS_CRITICAL. diff --git a/SPECS/linux-lts/0133-UPSTREAM-clk-thead-th1520-ap-Support-setting-PLL-rat.patch b/SPECS/linux-lts/0130-UPSTREAM-clk-thead-th1520-ap-Support-setting-PLL-rat.patch similarity index 98% rename from SPECS/linux-lts/0133-UPSTREAM-clk-thead-th1520-ap-Support-setting-PLL-rat.patch rename to SPECS/linux-lts/0130-UPSTREAM-clk-thead-th1520-ap-Support-setting-PLL-rat.patch index af622a6e0c..0f3eeb5de1 100644 --- a/SPECS/linux-lts/0133-UPSTREAM-clk-thead-th1520-ap-Support-setting-PLL-rat.patch +++ b/SPECS/linux-lts/0130-UPSTREAM-clk-thead-th1520-ap-Support-setting-PLL-rat.patch @@ -1,7 +1,7 @@ -From 3107f6db39bfccf7730194c3fb729357945bf743 Mon Sep 17 00:00:00 2001 +From 00eda1e45b3379884782a9a27d245fcff13f8772 Mon Sep 17 00:00:00 2001 From: Yao Zi Date: Thu, 20 Nov 2025 13:14:13 +0000 -Subject: [PATCH 133/467] UPSTREAM: clk: thead: th1520-ap: Support setting PLL +Subject: [RUYI PATCH] UPSTREAM: clk: thead: th1520-ap: Support setting PLL rates TH1520 ships several PLLs that could operate in either integer or diff --git a/SPECS/linux-lts/0134-UPSTREAM-clk-thead-th1520-ap-Add-macro-to-define-mul.patch b/SPECS/linux-lts/0131-UPSTREAM-clk-thead-th1520-ap-Add-macro-to-define-mul.patch similarity index 91% rename from SPECS/linux-lts/0134-UPSTREAM-clk-thead-th1520-ap-Add-macro-to-define-mul.patch rename to SPECS/linux-lts/0131-UPSTREAM-clk-thead-th1520-ap-Add-macro-to-define-mul.patch index bb158844fe..2518407886 100644 --- a/SPECS/linux-lts/0134-UPSTREAM-clk-thead-th1520-ap-Add-macro-to-define-mul.patch +++ b/SPECS/linux-lts/0131-UPSTREAM-clk-thead-th1520-ap-Add-macro-to-define-mul.patch @@ -1,7 +1,7 @@ -From 94cd6930cd62b37d3a5be5f99c38418227dadc53 Mon Sep 17 00:00:00 2001 +From 17338e1f386a810ea7bbe685d7cf3953dae6a51f Mon Sep 17 00:00:00 2001 From: Yao Zi Date: Thu, 20 Nov 2025 13:14:14 +0000 -Subject: [PATCH 134/467] UPSTREAM: clk: thead: th1520-ap: Add macro to define +Subject: [RUYI PATCH] UPSTREAM: clk: thead: th1520-ap: Add macro to define multiplexers with flags The new macro, TH_CCU_MUX_FLAGS, extends TH_CCU_MUX macro by adding two diff --git a/SPECS/linux-lts/0135-UPSTREAM-clk-thead-th1520-ap-Support-CPU-frequency-s.patch b/SPECS/linux-lts/0132-UPSTREAM-clk-thead-th1520-ap-Support-CPU-frequency-s.patch similarity index 97% rename from SPECS/linux-lts/0135-UPSTREAM-clk-thead-th1520-ap-Support-CPU-frequency-s.patch rename to SPECS/linux-lts/0132-UPSTREAM-clk-thead-th1520-ap-Support-CPU-frequency-s.patch index 4e6527f2d0..5e088a3818 100644 --- a/SPECS/linux-lts/0135-UPSTREAM-clk-thead-th1520-ap-Support-CPU-frequency-s.patch +++ b/SPECS/linux-lts/0132-UPSTREAM-clk-thead-th1520-ap-Support-CPU-frequency-s.patch @@ -1,8 +1,8 @@ -From 67a3e5cab266ebbe091c06fb4f79f60e0d87455f Mon Sep 17 00:00:00 2001 +From fc08e30c489223facf41c8c180c1d3685bad9ee9 Mon Sep 17 00:00:00 2001 From: Yao Zi Date: Thu, 20 Nov 2025 13:14:15 +0000 -Subject: [PATCH 135/467] UPSTREAM: clk: thead: th1520-ap: Support CPU - frequency scaling +Subject: [RUYI PATCH] UPSTREAM: clk: thead: th1520-ap: Support CPU frequency + scaling On TH1520 SoC, c910_clk feeds the CPU cluster. It could be glitchlessly reparented to one of the two PLLs: either to cpu_pll0 indirectly through diff --git a/SPECS/linux-lts/0136-UPSTREAM-net-spacemit-display-phy-driver-information.patch b/SPECS/linux-lts/0133-UPSTREAM-net-spacemit-display-phy-driver-information.patch similarity index 87% rename from SPECS/linux-lts/0136-UPSTREAM-net-spacemit-display-phy-driver-information.patch rename to SPECS/linux-lts/0133-UPSTREAM-net-spacemit-display-phy-driver-information.patch index 756971bff5..ee84bea6d5 100644 --- a/SPECS/linux-lts/0136-UPSTREAM-net-spacemit-display-phy-driver-information.patch +++ b/SPECS/linux-lts/0133-UPSTREAM-net-spacemit-display-phy-driver-information.patch @@ -1,8 +1,7 @@ -From 20d3fa165cbcd3a84876fcbfe8f012363c75cfa0 Mon Sep 17 00:00:00 2001 +From 216580fd5ff0f2f9d1b045a0eebd53199b169c09 Mon Sep 17 00:00:00 2001 From: Chukun Pan Date: Sun, 1 Feb 2026 18:00:01 +0800 -Subject: [PATCH 136/467] UPSTREAM: net: spacemit: display phy driver - information +Subject: [RUYI PATCH] UPSTREAM: net: spacemit: display phy driver information Print the PHY driver used and interrupt status after connection. diff --git a/SPECS/linux-lts/0137-UPSTREAM-gpio-spacemit-k1-Use-PDR-for-pin-direction-.patch b/SPECS/linux-lts/0134-UPSTREAM-gpio-spacemit-k1-Use-PDR-for-pin-direction-.patch similarity index 95% rename from SPECS/linux-lts/0137-UPSTREAM-gpio-spacemit-k1-Use-PDR-for-pin-direction-.patch rename to SPECS/linux-lts/0134-UPSTREAM-gpio-spacemit-k1-Use-PDR-for-pin-direction-.patch index 96d941c0e6..71279bcd12 100644 --- a/SPECS/linux-lts/0137-UPSTREAM-gpio-spacemit-k1-Use-PDR-for-pin-direction-.patch +++ b/SPECS/linux-lts/0134-UPSTREAM-gpio-spacemit-k1-Use-PDR-for-pin-direction-.patch @@ -1,8 +1,8 @@ -From b747ec1922a3e8649cc3e23e2e18038cb693ff9d Mon Sep 17 00:00:00 2001 +From a000c3124b2434f1d7da679574181a5b8295c9b8 Mon Sep 17 00:00:00 2001 From: Vivian Wang Date: Tue, 27 Jan 2026 10:58:49 +0800 -Subject: [PATCH 137/467] UPSTREAM: gpio: spacemit-k1: Use PDR for pin - direction, not SDR/CDR +Subject: [RUYI PATCH] UPSTREAM: gpio: spacemit-k1: Use PDR for pin direction, + not SDR/CDR On the SpacemiT GPIO controller, the direction control register PDR is readable and writable [1]. Therefore, implement direction control by diff --git a/SPECS/linux-lts/0138-UPSTREAM-phy-Kconfig-spacemit-add-COMMON_CLK-depende.patch b/SPECS/linux-lts/0135-UPSTREAM-phy-Kconfig-spacemit-add-COMMON_CLK-depende.patch similarity index 89% rename from SPECS/linux-lts/0138-UPSTREAM-phy-Kconfig-spacemit-add-COMMON_CLK-depende.patch rename to SPECS/linux-lts/0135-UPSTREAM-phy-Kconfig-spacemit-add-COMMON_CLK-depende.patch index 2865bd4d90..315761b942 100644 --- a/SPECS/linux-lts/0138-UPSTREAM-phy-Kconfig-spacemit-add-COMMON_CLK-depende.patch +++ b/SPECS/linux-lts/0135-UPSTREAM-phy-Kconfig-spacemit-add-COMMON_CLK-depende.patch @@ -1,7 +1,7 @@ -From 333c560956b18cc11cf301ba2198e261c02c7e73 Mon Sep 17 00:00:00 2001 +From 9a9a68a7eddae8077db583fd6db0e31a7e837eab Mon Sep 17 00:00:00 2001 From: Alex Elder Date: Fri, 26 Dec 2025 11:32:27 -0600 -Subject: [PATCH 138/467] UPSTREAM: phy: Kconfig: spacemit: add COMMON_CLK +Subject: [RUYI PATCH] UPSTREAM: phy: Kconfig: spacemit: add COMMON_CLK dependency The SpacemiT PCIe PHY driver depends on the common clock framework. diff --git a/SPECS/linux-lts/0139-UPSTREAM-mfd-Kconfig-Default-MFD_SPACEMIT_P1-to-m-if.patch b/SPECS/linux-lts/0136-UPSTREAM-mfd-Kconfig-Default-MFD_SPACEMIT_P1-to-m-if.patch similarity index 86% rename from SPECS/linux-lts/0139-UPSTREAM-mfd-Kconfig-Default-MFD_SPACEMIT_P1-to-m-if.patch rename to SPECS/linux-lts/0136-UPSTREAM-mfd-Kconfig-Default-MFD_SPACEMIT_P1-to-m-if.patch index 437a02c89d..661b7fce58 100644 --- a/SPECS/linux-lts/0139-UPSTREAM-mfd-Kconfig-Default-MFD_SPACEMIT_P1-to-m-if.patch +++ b/SPECS/linux-lts/0136-UPSTREAM-mfd-Kconfig-Default-MFD_SPACEMIT_P1-to-m-if.patch @@ -1,8 +1,8 @@ -From 0eab8250c33a6d8337f71d836737b0f27ac47f13 Mon Sep 17 00:00:00 2001 +From 13956aef479172118fb402bab2ecea2f30a4a744 Mon Sep 17 00:00:00 2001 From: Troy Mitchell Date: Thu, 25 Dec 2025 15:46:32 +0800 -Subject: [PATCH 139/467] UPSTREAM: mfd: Kconfig: Default MFD_SPACEMIT_P1 to - 'm' if ARCH_SPACEMIT +Subject: [RUYI PATCH] UPSTREAM: mfd: Kconfig: Default MFD_SPACEMIT_P1 to 'm' + if ARCH_SPACEMIT The default value of the P1 sub-device depends on the value of P1, so P1 should have a default value here. diff --git a/SPECS/linux-lts/0140-UPSTREAM-riscv-dts-spacemit-sdhci-add-reset-support.patch b/SPECS/linux-lts/0137-UPSTREAM-riscv-dts-spacemit-sdhci-add-reset-support.patch similarity index 87% rename from SPECS/linux-lts/0140-UPSTREAM-riscv-dts-spacemit-sdhci-add-reset-support.patch rename to SPECS/linux-lts/0137-UPSTREAM-riscv-dts-spacemit-sdhci-add-reset-support.patch index 07df5e5f9d..f0ab6e429d 100644 --- a/SPECS/linux-lts/0140-UPSTREAM-riscv-dts-spacemit-sdhci-add-reset-support.patch +++ b/SPECS/linux-lts/0137-UPSTREAM-riscv-dts-spacemit-sdhci-add-reset-support.patch @@ -1,8 +1,7 @@ -From dded14b2f88c749f0ee43ce0475efa38aab240b7 Mon Sep 17 00:00:00 2001 +From c37e910069a44317c77ac4d11b37028e5c7a3473 Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Tue, 23 Dec 2025 10:24:51 +0800 -Subject: [PATCH 140/467] UPSTREAM: riscv: dts: spacemit: sdhci: add reset - support +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: spacemit: sdhci: add reset support Request two reset line explicitly for SDHCI controller. diff --git a/SPECS/linux-lts/0141-UPSTREAM-irqchip-sifive-plic-Fix-call-to-__plic_togg.patch b/SPECS/linux-lts/0138-UPSTREAM-irqchip-sifive-plic-Fix-call-to-__plic_togg.patch similarity index 93% rename from SPECS/linux-lts/0141-UPSTREAM-irqchip-sifive-plic-Fix-call-to-__plic_togg.patch rename to SPECS/linux-lts/0138-UPSTREAM-irqchip-sifive-plic-Fix-call-to-__plic_togg.patch index c0f3a9e111..d3ca21faa5 100644 --- a/SPECS/linux-lts/0141-UPSTREAM-irqchip-sifive-plic-Fix-call-to-__plic_togg.patch +++ b/SPECS/linux-lts/0138-UPSTREAM-irqchip-sifive-plic-Fix-call-to-__plic_togg.patch @@ -1,7 +1,7 @@ -From f58e9a459a7b6b435352438dc53508ab2626a69a Mon Sep 17 00:00:00 2001 +From cbbdae1821a5dd4f90a95e88d5c536f2421da1b6 Mon Sep 17 00:00:00 2001 From: Charles Mirabile Date: Mon, 3 Nov 2025 11:18:13 -0500 -Subject: [PATCH 141/467] UPSTREAM: irqchip/sifive-plic: Fix call to +Subject: [RUYI PATCH] UPSTREAM: irqchip/sifive-plic: Fix call to __plic_toggle() in M-Mode code path The code path for M-Mode linux that disables interrupts for other contexts diff --git a/SPECS/linux-lts/0142-UPSTREAM-dt-bindings-interrupt-controller-sifive-pli.patch b/SPECS/linux-lts/0139-UPSTREAM-dt-bindings-interrupt-controller-sifive-pli.patch similarity index 92% rename from SPECS/linux-lts/0142-UPSTREAM-dt-bindings-interrupt-controller-sifive-pli.patch rename to SPECS/linux-lts/0139-UPSTREAM-dt-bindings-interrupt-controller-sifive-pli.patch index 7916a81092..a2ed1e4b8d 100644 --- a/SPECS/linux-lts/0142-UPSTREAM-dt-bindings-interrupt-controller-sifive-pli.patch +++ b/SPECS/linux-lts/0139-UPSTREAM-dt-bindings-interrupt-controller-sifive-pli.patch @@ -1,7 +1,7 @@ -From bf88342cbbf18edbfbf27a30b622622f47dd21d1 Mon Sep 17 00:00:00 2001 +From d25027971bf83bf11dd914b3ce914fa9ada558c4 Mon Sep 17 00:00:00 2001 From: Yangyu Chen Date: Wed, 4 Feb 2026 01:21:48 +0800 -Subject: [PATCH 142/467] UPSTREAM: dt-bindings: interrupt-controller: +Subject: [RUYI PATCH] UPSTREAM: dt-bindings: interrupt-controller: sifive,plic: Clarify the riscv,ndev meaning in PLIC In PLIC, interrupt source 0 is reserved and should not be used. diff --git a/SPECS/linux-lts/0143-UPSTREAM-irqchip-sifive-plic-Handle-number-of-hardwa.patch b/SPECS/linux-lts/0140-UPSTREAM-irqchip-sifive-plic-Handle-number-of-hardwa.patch similarity index 97% rename from SPECS/linux-lts/0143-UPSTREAM-irqchip-sifive-plic-Handle-number-of-hardwa.patch rename to SPECS/linux-lts/0140-UPSTREAM-irqchip-sifive-plic-Handle-number-of-hardwa.patch index 127a04cfa3..b6309ec5fd 100644 --- a/SPECS/linux-lts/0143-UPSTREAM-irqchip-sifive-plic-Handle-number-of-hardwa.patch +++ b/SPECS/linux-lts/0140-UPSTREAM-irqchip-sifive-plic-Handle-number-of-hardwa.patch @@ -1,8 +1,8 @@ -From f5a054d7440d709d61511cb7a4d626b59ba00bf3 Mon Sep 17 00:00:00 2001 +From 8c3cf0715b0fdf641d78f56c2a4a207b6fb93525 Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Tue, 3 Feb 2026 20:16:12 +0100 -Subject: [PATCH 143/467] UPSTREAM: irqchip/sifive-plic: Handle number of - hardware interrupts correctly +Subject: [RUYI PATCH] UPSTREAM: irqchip/sifive-plic: Handle number of hardware + interrupts correctly The driver is handling the number of hardware interrupts inconsistently. diff --git a/SPECS/linux-lts/0144-UPSTREAM-PCI-dwc-Use-multiple-iATU-windows-for-mappi.patch b/SPECS/linux-lts/0141-UPSTREAM-PCI-dwc-Use-multiple-iATU-windows-for-mappi.patch similarity index 97% rename from SPECS/linux-lts/0144-UPSTREAM-PCI-dwc-Use-multiple-iATU-windows-for-mappi.patch rename to SPECS/linux-lts/0141-UPSTREAM-PCI-dwc-Use-multiple-iATU-windows-for-mappi.patch index eedd218a03..ec4bffaa6b 100644 --- a/SPECS/linux-lts/0144-UPSTREAM-PCI-dwc-Use-multiple-iATU-windows-for-mappi.patch +++ b/SPECS/linux-lts/0141-UPSTREAM-PCI-dwc-Use-multiple-iATU-windows-for-mappi.patch @@ -1,7 +1,7 @@ -From 24b2064ff98e5d2c22d87bc0a86ee411e19fa6bb Mon Sep 17 00:00:00 2001 +From fd2ed2a093642f9ae52054344b23d1c512e4d4b6 Mon Sep 17 00:00:00 2001 From: Samuel Holland Date: Fri, 9 Jan 2026 19:34:30 +0800 -Subject: [PATCH 144/467] UPSTREAM: PCI: dwc: Use multiple iATU windows for +Subject: [RUYI PATCH] UPSTREAM: PCI: dwc: Use multiple iATU windows for mapping large bridge windows and DMA ranges The DWC driver tries to use a single iATU region for mapping the individual diff --git a/SPECS/linux-lts/0145-UPSTREAM-pinctrl-th1520-Fix-typo.patch b/SPECS/linux-lts/0142-UPSTREAM-pinctrl-th1520-Fix-typo.patch similarity index 91% rename from SPECS/linux-lts/0145-UPSTREAM-pinctrl-th1520-Fix-typo.patch rename to SPECS/linux-lts/0142-UPSTREAM-pinctrl-th1520-Fix-typo.patch index 84781c827a..35a46d601c 100644 --- a/SPECS/linux-lts/0145-UPSTREAM-pinctrl-th1520-Fix-typo.patch +++ b/SPECS/linux-lts/0142-UPSTREAM-pinctrl-th1520-Fix-typo.patch @@ -1,7 +1,7 @@ -From d007ff0d047d973067f05a3f9898c1c1822af330 Mon Sep 17 00:00:00 2001 +From b88d7d9315cd6748d47a8ced520004d8f68ec0fc Mon Sep 17 00:00:00 2001 From: Thomas Gerner Date: Tue, 20 Jan 2026 09:59:26 +0100 -Subject: [PATCH 145/467] UPSTREAM: pinctrl: th1520: Fix typo +Subject: [RUYI PATCH] UPSTREAM: pinctrl: th1520: Fix typo This fixes a simple typo in the TH1520 SPI0 for group3 pins: QSPI0 is misspelled QSPI1. diff --git a/SPECS/linux-lts/0146-UPSTREAM-PCI-cadence-Add-module-support-for-platform.patch b/SPECS/linux-lts/0143-UPSTREAM-PCI-cadence-Add-module-support-for-platform.patch similarity index 94% rename from SPECS/linux-lts/0146-UPSTREAM-PCI-cadence-Add-module-support-for-platform.patch rename to SPECS/linux-lts/0143-UPSTREAM-PCI-cadence-Add-module-support-for-platform.patch index e1d681e245..88cfd245f1 100644 --- a/SPECS/linux-lts/0146-UPSTREAM-PCI-cadence-Add-module-support-for-platform.patch +++ b/SPECS/linux-lts/0143-UPSTREAM-PCI-cadence-Add-module-support-for-platform.patch @@ -1,8 +1,8 @@ -From cf8e9527657f4fc6aa823772be5089f8172402c7 Mon Sep 17 00:00:00 2001 +From e3974191639e3270eddc65bb437b729a750e5dc7 Mon Sep 17 00:00:00 2001 From: Manikandan K Pillai Date: Sat, 8 Nov 2025 22:02:56 +0800 -Subject: [PATCH 146/467] UPSTREAM: PCI: cadence: Add module support for - platform controller driver +Subject: [RUYI PATCH] UPSTREAM: PCI: cadence: Add module support for platform + controller driver Add support for building PCI cadence platforms as a module. diff --git a/SPECS/linux-lts/0147-UPSTREAM-PCI-cadence-Split-PCIe-controller-header-fi.patch b/SPECS/linux-lts/0144-UPSTREAM-PCI-cadence-Split-PCIe-controller-header-fi.patch similarity index 99% rename from SPECS/linux-lts/0147-UPSTREAM-PCI-cadence-Split-PCIe-controller-header-fi.patch rename to SPECS/linux-lts/0144-UPSTREAM-PCI-cadence-Split-PCIe-controller-header-fi.patch index 1f7191cbd3..53a32a761a 100644 --- a/SPECS/linux-lts/0147-UPSTREAM-PCI-cadence-Split-PCIe-controller-header-fi.patch +++ b/SPECS/linux-lts/0144-UPSTREAM-PCI-cadence-Split-PCIe-controller-header-fi.patch @@ -1,7 +1,7 @@ -From c11c8fffc2a4398eef7883769b12ef9c7e9d39ea Mon Sep 17 00:00:00 2001 +From 3918539e5418b2d1151b2a2e086601ded67796a3 Mon Sep 17 00:00:00 2001 From: Manikandan K Pillai Date: Sat, 8 Nov 2025 22:02:57 +0800 -Subject: [PATCH 147/467] UPSTREAM: PCI: cadence: Split PCIe controller header +Subject: [RUYI PATCH] UPSTREAM: PCI: cadence: Split PCIe controller header file Split the Cadence PCIe header file by moving the Legacy (LGA) controller diff --git a/SPECS/linux-lts/0148-UPSTREAM-PCI-cadence-Move-PCIe-RP-common-functions-t.patch b/SPECS/linux-lts/0145-UPSTREAM-PCI-cadence-Move-PCIe-RP-common-functions-t.patch similarity index 99% rename from SPECS/linux-lts/0148-UPSTREAM-PCI-cadence-Move-PCIe-RP-common-functions-t.patch rename to SPECS/linux-lts/0145-UPSTREAM-PCI-cadence-Move-PCIe-RP-common-functions-t.patch index 297fc9341d..666272aa6c 100644 --- a/SPECS/linux-lts/0148-UPSTREAM-PCI-cadence-Move-PCIe-RP-common-functions-t.patch +++ b/SPECS/linux-lts/0145-UPSTREAM-PCI-cadence-Move-PCIe-RP-common-functions-t.patch @@ -1,8 +1,8 @@ -From a8c954c135b4ad338d55143da55d606909cfffb3 Mon Sep 17 00:00:00 2001 +From 4fb7d19f2e7e5112722787c8f89b8ca56f6943be Mon Sep 17 00:00:00 2001 From: Manikandan K Pillai Date: Sat, 8 Nov 2025 22:02:58 +0800 -Subject: [PATCH 148/467] UPSTREAM: PCI: cadence: Move PCIe RP common functions - to a separate file +Subject: [RUYI PATCH] UPSTREAM: PCI: cadence: Move PCIe RP common functions to + a separate file Move the Cadence PCIe controller RP common functions into a separate file. The common library functions are split from legacy PCIe RP controller diff --git a/SPECS/linux-lts/0149-UPSTREAM-PCI-cadence-Add-support-for-High-Perf-Archi.patch b/SPECS/linux-lts/0146-UPSTREAM-PCI-cadence-Add-support-for-High-Perf-Archi.patch similarity index 99% rename from SPECS/linux-lts/0149-UPSTREAM-PCI-cadence-Add-support-for-High-Perf-Archi.patch rename to SPECS/linux-lts/0146-UPSTREAM-PCI-cadence-Add-support-for-High-Perf-Archi.patch index 44809270c8..c0c607ce23 100644 --- a/SPECS/linux-lts/0149-UPSTREAM-PCI-cadence-Add-support-for-High-Perf-Archi.patch +++ b/SPECS/linux-lts/0146-UPSTREAM-PCI-cadence-Add-support-for-High-Perf-Archi.patch @@ -1,7 +1,7 @@ -From 22b6ed1bca264e8e9b80d9630a7c430722561bec Mon Sep 17 00:00:00 2001 +From 169a3b6c0054a1a90e9a56316ce2530a6e1d21ad Mon Sep 17 00:00:00 2001 From: Manikandan K Pillai Date: Sat, 8 Nov 2025 22:02:59 +0800 -Subject: [PATCH 149/467] UPSTREAM: PCI: cadence: Add support for High Perf +Subject: [RUYI PATCH] UPSTREAM: PCI: cadence: Add support for High Perf Architecture (HPA) controller Add support for Cadence PCIe RP configuration for High Performance diff --git a/SPECS/linux-lts/0150-UPSTREAM-net-stmmac-imx-use-phylink-s-interface-mode.patch b/SPECS/linux-lts/0147-UPSTREAM-net-stmmac-imx-use-phylink-s-interface-mode.patch similarity index 89% rename from SPECS/linux-lts/0150-UPSTREAM-net-stmmac-imx-use-phylink-s-interface-mode.patch rename to SPECS/linux-lts/0147-UPSTREAM-net-stmmac-imx-use-phylink-s-interface-mode.patch index 58b32f5050..45d4cc96d9 100644 --- a/SPECS/linux-lts/0150-UPSTREAM-net-stmmac-imx-use-phylink-s-interface-mode.patch +++ b/SPECS/linux-lts/0147-UPSTREAM-net-stmmac-imx-use-phylink-s-interface-mode.patch @@ -1,8 +1,8 @@ -From 3fc48954f60468b378e31495b8a6b8c77c81f5f1 Mon Sep 17 00:00:00 2001 +From 668b64875b3a39ad0c809fd84baba5596b3f93c1 Mon Sep 17 00:00:00 2001 From: "Russell King (Oracle)" Date: Mon, 3 Nov 2025 11:49:55 +0000 -Subject: [PATCH 150/467] UPSTREAM: net: stmmac: imx: use phylink's interface - mode for set_clk_tx_rate() +Subject: [RUYI PATCH] UPSTREAM: net: stmmac: imx: use phylink's interface mode + for set_clk_tx_rate() imx_dwmac_set_clk_tx_rate() is passed the interface mode from phylink which will be the same as plat_dat->phy_interface. Use the passed-in diff --git a/SPECS/linux-lts/0151-UPSTREAM-net-stmmac-s32-move-PHY_INTF_SEL_x-definiti.patch b/SPECS/linux-lts/0148-UPSTREAM-net-stmmac-s32-move-PHY_INTF_SEL_x-definiti.patch similarity index 93% rename from SPECS/linux-lts/0151-UPSTREAM-net-stmmac-s32-move-PHY_INTF_SEL_x-definiti.patch rename to SPECS/linux-lts/0148-UPSTREAM-net-stmmac-s32-move-PHY_INTF_SEL_x-definiti.patch index ddbd2ddb3b..e6e34a7195 100644 --- a/SPECS/linux-lts/0151-UPSTREAM-net-stmmac-s32-move-PHY_INTF_SEL_x-definiti.patch +++ b/SPECS/linux-lts/0148-UPSTREAM-net-stmmac-s32-move-PHY_INTF_SEL_x-definiti.patch @@ -1,7 +1,7 @@ -From 1d729e5a3d02a0b30f4cc2145934e9ad02a2593c Mon Sep 17 00:00:00 2001 +From 821bb874c9ee51f801501a53f0bfaff22992f2fb Mon Sep 17 00:00:00 2001 From: "Russell King (Oracle)" Date: Mon, 3 Nov 2025 11:50:00 +0000 -Subject: [PATCH 151/467] UPSTREAM: net: stmmac: s32: move PHY_INTF_SEL_x +Subject: [RUYI PATCH] UPSTREAM: net: stmmac: s32: move PHY_INTF_SEL_x definitions out of the way S32's PHY_INTF_SEL_x definitions conflict with those for the dwmac diff --git a/SPECS/linux-lts/0152-UPSTREAM-net-stmmac-add-phy_intf_sel-and-ACTPHYIF-de.patch b/SPECS/linux-lts/0149-UPSTREAM-net-stmmac-add-phy_intf_sel-and-ACTPHYIF-de.patch similarity index 91% rename from SPECS/linux-lts/0152-UPSTREAM-net-stmmac-add-phy_intf_sel-and-ACTPHYIF-de.patch rename to SPECS/linux-lts/0149-UPSTREAM-net-stmmac-add-phy_intf_sel-and-ACTPHYIF-de.patch index 89b1cdbb0e..2109b174e4 100644 --- a/SPECS/linux-lts/0152-UPSTREAM-net-stmmac-add-phy_intf_sel-and-ACTPHYIF-de.patch +++ b/SPECS/linux-lts/0149-UPSTREAM-net-stmmac-add-phy_intf_sel-and-ACTPHYIF-de.patch @@ -1,7 +1,7 @@ -From 5ac0d54cbe08eb88695ec8feda51f1e2f957ee10 Mon Sep 17 00:00:00 2001 +From 90e4dd06e790973bb6661abbcb3f3e584ec56f1e Mon Sep 17 00:00:00 2001 From: "Russell King (Oracle)" Date: Mon, 3 Nov 2025 11:50:05 +0000 -Subject: [PATCH 152/467] UPSTREAM: net: stmmac: add phy_intf_sel and ACTPHYIF +Subject: [RUYI PATCH] UPSTREAM: net: stmmac: add phy_intf_sel and ACTPHYIF definitions Add definitions for the active PHY interface found in DMA hardware diff --git a/SPECS/linux-lts/0153-UPSTREAM-net-stmmac-add-stmmac_get_phy_intf_sel.patch b/SPECS/linux-lts/0150-UPSTREAM-net-stmmac-add-stmmac_get_phy_intf_sel.patch similarity index 94% rename from SPECS/linux-lts/0153-UPSTREAM-net-stmmac-add-stmmac_get_phy_intf_sel.patch rename to SPECS/linux-lts/0150-UPSTREAM-net-stmmac-add-stmmac_get_phy_intf_sel.patch index 7628db8ba4..9a20bd485f 100644 --- a/SPECS/linux-lts/0153-UPSTREAM-net-stmmac-add-stmmac_get_phy_intf_sel.patch +++ b/SPECS/linux-lts/0150-UPSTREAM-net-stmmac-add-stmmac_get_phy_intf_sel.patch @@ -1,7 +1,7 @@ -From 43838e019c5010025e2e2c06687a7e97c3153717 Mon Sep 17 00:00:00 2001 +From 624275e49ff1dc397c4e821f30d8afcc4c8f621e Mon Sep 17 00:00:00 2001 From: "Russell King (Oracle)" Date: Mon, 3 Nov 2025 11:50:10 +0000 -Subject: [PATCH 153/467] UPSTREAM: net: stmmac: add stmmac_get_phy_intf_sel() +Subject: [RUYI PATCH] UPSTREAM: net: stmmac: add stmmac_get_phy_intf_sel() Provide a function to translate the PHY interface mode to the phy_intf_sel pin configuration for dwmac1000 and dwmac4 cores that diff --git a/SPECS/linux-lts/0154-UPSTREAM-net-stmmac-add-support-for-configuring-the-.patch b/SPECS/linux-lts/0151-UPSTREAM-net-stmmac-add-support-for-configuring-the-.patch similarity index 95% rename from SPECS/linux-lts/0154-UPSTREAM-net-stmmac-add-support-for-configuring-the-.patch rename to SPECS/linux-lts/0151-UPSTREAM-net-stmmac-add-support-for-configuring-the-.patch index e57e4171fb..b7fa7e6a46 100644 --- a/SPECS/linux-lts/0154-UPSTREAM-net-stmmac-add-support-for-configuring-the-.patch +++ b/SPECS/linux-lts/0151-UPSTREAM-net-stmmac-add-support-for-configuring-the-.patch @@ -1,8 +1,8 @@ -From ea8b437fd179a8f307c0e49128898b0424718763 Mon Sep 17 00:00:00 2001 +From f194dd514161599163226c56b2674969caea19ca Mon Sep 17 00:00:00 2001 From: "Russell King (Oracle)" Date: Mon, 3 Nov 2025 11:50:15 +0000 -Subject: [PATCH 154/467] UPSTREAM: net: stmmac: add support for configuring - the phy_intf_sel inputs +Subject: [RUYI PATCH] UPSTREAM: net: stmmac: add support for configuring the + phy_intf_sel inputs When dwmac is synthesised with support for multiple PHY interfaces, the core provides phy_intf_sel inputs, sampled on reset, to configure the diff --git a/SPECS/linux-lts/0155-UPSTREAM-net-stmmac-imx-convert-to-PHY_INTF_SEL_xxx.patch b/SPECS/linux-lts/0152-UPSTREAM-net-stmmac-imx-convert-to-PHY_INTF_SEL_xxx.patch similarity index 95% rename from SPECS/linux-lts/0155-UPSTREAM-net-stmmac-imx-convert-to-PHY_INTF_SEL_xxx.patch rename to SPECS/linux-lts/0152-UPSTREAM-net-stmmac-imx-convert-to-PHY_INTF_SEL_xxx.patch index 4686086a36..9563df2a93 100644 --- a/SPECS/linux-lts/0155-UPSTREAM-net-stmmac-imx-convert-to-PHY_INTF_SEL_xxx.patch +++ b/SPECS/linux-lts/0152-UPSTREAM-net-stmmac-imx-convert-to-PHY_INTF_SEL_xxx.patch @@ -1,8 +1,7 @@ -From 298cb039696cadbf544bfbe91d55631386fabfa1 Mon Sep 17 00:00:00 2001 +From 89d282d18f9a93cdff176ee6469c67a8b11cb528 Mon Sep 17 00:00:00 2001 From: "Russell King (Oracle)" Date: Mon, 3 Nov 2025 11:50:21 +0000 -Subject: [PATCH 155/467] UPSTREAM: net: stmmac: imx: convert to - PHY_INTF_SEL_xxx +Subject: [RUYI PATCH] UPSTREAM: net: stmmac: imx: convert to PHY_INTF_SEL_xxx Convert dwmac-imx to use the PHY_INTF_SEL_xxx definitions rather than constants via: diff --git a/SPECS/linux-lts/0156-UPSTREAM-net-stmmac-imx-use-FIELD_PREP-FIELD_GET-for.patch b/SPECS/linux-lts/0153-UPSTREAM-net-stmmac-imx-use-FIELD_PREP-FIELD_GET-for.patch similarity index 97% rename from SPECS/linux-lts/0156-UPSTREAM-net-stmmac-imx-use-FIELD_PREP-FIELD_GET-for.patch rename to SPECS/linux-lts/0153-UPSTREAM-net-stmmac-imx-use-FIELD_PREP-FIELD_GET-for.patch index ff69081e5a..3546e04959 100644 --- a/SPECS/linux-lts/0156-UPSTREAM-net-stmmac-imx-use-FIELD_PREP-FIELD_GET-for.patch +++ b/SPECS/linux-lts/0153-UPSTREAM-net-stmmac-imx-use-FIELD_PREP-FIELD_GET-for.patch @@ -1,8 +1,8 @@ -From 96a2fbe70c985e615419f7e5872b429885c2832b Mon Sep 17 00:00:00 2001 +From cc8ade8e3e83180c2b2c2458f61161c29f310f53 Mon Sep 17 00:00:00 2001 From: "Russell King (Oracle)" Date: Mon, 3 Nov 2025 11:50:26 +0000 -Subject: [PATCH 156/467] UPSTREAM: net: stmmac: imx: use - FIELD_PREP()/FIELD_GET() for PHY_INTF_SEL_x +Subject: [RUYI PATCH] UPSTREAM: net: stmmac: imx: use FIELD_PREP()/FIELD_GET() + for PHY_INTF_SEL_x Use FIELD_PREP()/FIELD_GET() in the functions to construct the PHY interface selection bitfield or to extract its value. diff --git a/SPECS/linux-lts/0157-UPSTREAM-net-stmmac-imx-use-stmmac_get_phy_intf_sel.patch b/SPECS/linux-lts/0154-UPSTREAM-net-stmmac-imx-use-stmmac_get_phy_intf_sel.patch similarity index 97% rename from SPECS/linux-lts/0157-UPSTREAM-net-stmmac-imx-use-stmmac_get_phy_intf_sel.patch rename to SPECS/linux-lts/0154-UPSTREAM-net-stmmac-imx-use-stmmac_get_phy_intf_sel.patch index 948f2ff114..133ab7846d 100644 --- a/SPECS/linux-lts/0157-UPSTREAM-net-stmmac-imx-use-stmmac_get_phy_intf_sel.patch +++ b/SPECS/linux-lts/0154-UPSTREAM-net-stmmac-imx-use-stmmac_get_phy_intf_sel.patch @@ -1,7 +1,7 @@ -From a7b4a86b0a6221000c68f097653ff86de2485ea0 Mon Sep 17 00:00:00 2001 +From c242a53cab013ff50b42785236d0b703b63c9e37 Mon Sep 17 00:00:00 2001 From: "Russell King (Oracle)" Date: Mon, 3 Nov 2025 11:50:31 +0000 -Subject: [PATCH 157/467] UPSTREAM: net: stmmac: imx: use +Subject: [RUYI PATCH] UPSTREAM: net: stmmac: imx: use stmmac_get_phy_intf_sel() i.MX implementations other than IMX8DXL involve setting the dwmac core diff --git a/SPECS/linux-lts/0158-UPSTREAM-net-stmmac-imx-simplify-set_intf_mode-imple.patch b/SPECS/linux-lts/0155-UPSTREAM-net-stmmac-imx-simplify-set_intf_mode-imple.patch similarity index 96% rename from SPECS/linux-lts/0158-UPSTREAM-net-stmmac-imx-simplify-set_intf_mode-imple.patch rename to SPECS/linux-lts/0155-UPSTREAM-net-stmmac-imx-simplify-set_intf_mode-imple.patch index 4fca5088f0..cc5171568d 100644 --- a/SPECS/linux-lts/0158-UPSTREAM-net-stmmac-imx-simplify-set_intf_mode-imple.patch +++ b/SPECS/linux-lts/0155-UPSTREAM-net-stmmac-imx-simplify-set_intf_mode-imple.patch @@ -1,7 +1,7 @@ -From a4d4ff59a90369776a587bea80bb089b9b3ff2e4 Mon Sep 17 00:00:00 2001 +From 38044c901de858463843f7c8cfab808a34627f56 Mon Sep 17 00:00:00 2001 From: "Russell King (Oracle)" Date: Mon, 3 Nov 2025 11:50:36 +0000 -Subject: [PATCH 158/467] UPSTREAM: net: stmmac: imx: simplify set_intf_mode() +Subject: [RUYI PATCH] UPSTREAM: net: stmmac: imx: simplify set_intf_mode() implementations Simplify the set_intf_mode() implementations, testing the phy_intf_sel diff --git a/SPECS/linux-lts/0159-UPSTREAM-net-stmmac-imx-cleanup-arguments-for-set_in.patch b/SPECS/linux-lts/0156-UPSTREAM-net-stmmac-imx-cleanup-arguments-for-set_in.patch similarity index 95% rename from SPECS/linux-lts/0159-UPSTREAM-net-stmmac-imx-cleanup-arguments-for-set_in.patch rename to SPECS/linux-lts/0156-UPSTREAM-net-stmmac-imx-cleanup-arguments-for-set_in.patch index 416094c8bf..7f2c908494 100644 --- a/SPECS/linux-lts/0159-UPSTREAM-net-stmmac-imx-cleanup-arguments-for-set_in.patch +++ b/SPECS/linux-lts/0156-UPSTREAM-net-stmmac-imx-cleanup-arguments-for-set_in.patch @@ -1,7 +1,7 @@ -From 651b057371e02ed78100a1da8b724c5996480add Mon Sep 17 00:00:00 2001 +From 3c89184f3302aafeabc618409bf916aa970f4f16 Mon Sep 17 00:00:00 2001 From: "Russell King (Oracle)" Date: Mon, 3 Nov 2025 11:50:41 +0000 -Subject: [PATCH 159/467] UPSTREAM: net: stmmac: imx: cleanup arguments for +Subject: [RUYI PATCH] UPSTREAM: net: stmmac: imx: cleanup arguments for set_intf_mode() method Pass the imx_priv_data instead of the plat_stmmacenet_data into the diff --git a/SPECS/linux-lts/0160-UPSTREAM-net-stmmac-imx-use-set_phy_intf_sel.patch b/SPECS/linux-lts/0157-UPSTREAM-net-stmmac-imx-use-set_phy_intf_sel.patch similarity index 94% rename from SPECS/linux-lts/0160-UPSTREAM-net-stmmac-imx-use-set_phy_intf_sel.patch rename to SPECS/linux-lts/0157-UPSTREAM-net-stmmac-imx-use-set_phy_intf_sel.patch index cb7b7536b5..20bb16df38 100644 --- a/SPECS/linux-lts/0160-UPSTREAM-net-stmmac-imx-use-set_phy_intf_sel.patch +++ b/SPECS/linux-lts/0157-UPSTREAM-net-stmmac-imx-use-set_phy_intf_sel.patch @@ -1,7 +1,7 @@ -From dd51d5c75d4f912be30523c694e72ffe87fa3d99 Mon Sep 17 00:00:00 2001 +From e0a6c2e873b5d2ba2e3a62461407c4523f488812 Mon Sep 17 00:00:00 2001 From: "Russell King (Oracle)" Date: Mon, 3 Nov 2025 11:50:46 +0000 -Subject: [PATCH 160/467] UPSTREAM: net: stmmac: imx: use ->set_phy_intf_sel() +Subject: [RUYI PATCH] UPSTREAM: net: stmmac: imx: use ->set_phy_intf_sel() Rather than placing the phy_intf_sel() setup in the ->init() method, move it to the new ->set_phy_intf_sel() method. diff --git a/SPECS/linux-lts/0161-UPSTREAM-powerpc-pci-Initialize-msi_addr_mask-for-OF.patch b/SPECS/linux-lts/0158-UPSTREAM-powerpc-pci-Initialize-msi_addr_mask-for-OF.patch similarity index 94% rename from SPECS/linux-lts/0161-UPSTREAM-powerpc-pci-Initialize-msi_addr_mask-for-OF.patch rename to SPECS/linux-lts/0158-UPSTREAM-powerpc-pci-Initialize-msi_addr_mask-for-OF.patch index f7ae99a862..f73e1f62b4 100644 --- a/SPECS/linux-lts/0161-UPSTREAM-powerpc-pci-Initialize-msi_addr_mask-for-OF.patch +++ b/SPECS/linux-lts/0158-UPSTREAM-powerpc-pci-Initialize-msi_addr_mask-for-OF.patch @@ -1,7 +1,7 @@ -From d55d880c109f6894dbe383af6cca3b65ebab1537 Mon Sep 17 00:00:00 2001 +From d219e86b2ba446033884ed9b3f3cb9d0edcd98ef Mon Sep 17 00:00:00 2001 From: Nilay Shroff Date: Fri, 20 Feb 2026 12:32:27 +0530 -Subject: [PATCH 161/467] UPSTREAM: powerpc/pci: Initialize msi_addr_mask for +Subject: [RUYI PATCH] UPSTREAM: powerpc/pci: Initialize msi_addr_mask for OF-created PCI devices Recent changes replaced the use of no_64bit_msi with msi_addr_mask. As a diff --git a/SPECS/linux-lts/0162-UPSTREAM-sparc-PCI-Initialize-msi_addr_mask-for-OF-c.patch b/SPECS/linux-lts/0159-UPSTREAM-sparc-PCI-Initialize-msi_addr_mask-for-OF-c.patch similarity index 93% rename from SPECS/linux-lts/0162-UPSTREAM-sparc-PCI-Initialize-msi_addr_mask-for-OF-c.patch rename to SPECS/linux-lts/0159-UPSTREAM-sparc-PCI-Initialize-msi_addr_mask-for-OF-c.patch index ee5c00b176..e75eecbde3 100644 --- a/SPECS/linux-lts/0162-UPSTREAM-sparc-PCI-Initialize-msi_addr_mask-for-OF-c.patch +++ b/SPECS/linux-lts/0159-UPSTREAM-sparc-PCI-Initialize-msi_addr_mask-for-OF-c.patch @@ -1,7 +1,7 @@ -From 062318331f0323b6c2cde88974f89889bd3b3983 Mon Sep 17 00:00:00 2001 +From 9e9a5cb4c3cd15b6b321a0ec71d41d8318cfd254 Mon Sep 17 00:00:00 2001 From: Nilay Shroff Date: Fri, 20 Feb 2026 12:32:28 +0530 -Subject: [PATCH 162/467] UPSTREAM: sparc/PCI: Initialize msi_addr_mask for +Subject: [RUYI PATCH] UPSTREAM: sparc/PCI: Initialize msi_addr_mask for OF-created PCI devices Recent changes replaced the use of no_64bit_msi with msi_addr_mask, which diff --git a/SPECS/linux-lts/0163-UPSTREAM-syscore-Pass-context-data-to-callbacks.patch b/SPECS/linux-lts/0160-UPSTREAM-syscore-Pass-context-data-to-callbacks.patch similarity index 99% rename from SPECS/linux-lts/0163-UPSTREAM-syscore-Pass-context-data-to-callbacks.patch rename to SPECS/linux-lts/0160-UPSTREAM-syscore-Pass-context-data-to-callbacks.patch index d62c31b7b3..9f8cb3b4b0 100644 --- a/SPECS/linux-lts/0163-UPSTREAM-syscore-Pass-context-data-to-callbacks.patch +++ b/SPECS/linux-lts/0160-UPSTREAM-syscore-Pass-context-data-to-callbacks.patch @@ -1,7 +1,7 @@ -From 3db4461f56317b6d1205c5f1aa79d971772b0d4d Mon Sep 17 00:00:00 2001 +From 94993ae18a9db8b1a6f5939a8bfc465712f0e760 Mon Sep 17 00:00:00 2001 From: Thierry Reding Date: Wed, 29 Oct 2025 17:33:30 +0100 -Subject: [PATCH 163/467] UPSTREAM: syscore: Pass context data to callbacks +Subject: [RUYI PATCH] UPSTREAM: syscore: Pass context data to callbacks Several drivers can benefit from registering per-instance data along with the syscore operations. To achieve this, move the modifiable fields @@ -1651,10 +1651,10 @@ index bc7671f920a7..2c56f8730f59 100644 err_out_online: diff --git a/arch/x86/kernel/cpu/mce/core.c b/arch/x86/kernel/cpu/mce/core.c -index 460e90a1a0b1..23bfbc7dfb8e 100644 +index c8b112c6c549..26c98d9002bc 100644 --- a/arch/x86/kernel/cpu/mce/core.c +++ b/arch/x86/kernel/cpu/mce/core.c -@@ -2410,13 +2410,13 @@ static void vendor_disable_error_reporting(void) +@@ -2387,13 +2387,13 @@ static void vendor_disable_error_reporting(void) mce_disable_error_reporting(); } @@ -1670,7 +1670,7 @@ index 460e90a1a0b1..23bfbc7dfb8e 100644 { vendor_disable_error_reporting(); } -@@ -2426,7 +2426,7 @@ static void mce_syscore_shutdown(void) +@@ -2403,7 +2403,7 @@ static void mce_syscore_shutdown(void) * Only one CPU is active at this time, the others get re-added later using * CPU hotplug: */ @@ -1679,7 +1679,7 @@ index 460e90a1a0b1..23bfbc7dfb8e 100644 { __mcheck_cpu_init_generic(); __mcheck_cpu_init_vendor(raw_cpu_ptr(&cpu_info)); -@@ -2434,12 +2434,16 @@ static void mce_syscore_resume(void) +@@ -2411,12 +2411,16 @@ static void mce_syscore_resume(void) cr4_set_bits(X86_CR4_MCE); } @@ -1697,7 +1697,7 @@ index 460e90a1a0b1..23bfbc7dfb8e 100644 /* * mce_device: Sysfs support */ -@@ -2840,7 +2844,7 @@ static __init int mcheck_init_device(void) +@@ -2817,7 +2821,7 @@ static __init int mcheck_init_device(void) if (err < 0) goto err_out_online; diff --git a/SPECS/linux-lts/0164-UPSTREAM-irqchip-riscv-aplic-Preserve-APLIC-states-a.patch b/SPECS/linux-lts/0161-UPSTREAM-irqchip-riscv-aplic-Preserve-APLIC-states-a.patch similarity index 98% rename from SPECS/linux-lts/0164-UPSTREAM-irqchip-riscv-aplic-Preserve-APLIC-states-a.patch rename to SPECS/linux-lts/0161-UPSTREAM-irqchip-riscv-aplic-Preserve-APLIC-states-a.patch index 76e29a3422..778297758c 100644 --- a/SPECS/linux-lts/0164-UPSTREAM-irqchip-riscv-aplic-Preserve-APLIC-states-a.patch +++ b/SPECS/linux-lts/0161-UPSTREAM-irqchip-riscv-aplic-Preserve-APLIC-states-a.patch @@ -1,7 +1,7 @@ -From bb03ede744a1b004dd7ecaebdb891a4d0bc0c559 Mon Sep 17 00:00:00 2001 +From dc079d2d3ef26e7fc9ba38e7af9c67873ed5fc55 Mon Sep 17 00:00:00 2001 From: Nick Hu Date: Tue, 2 Dec 2025 14:07:41 +0800 -Subject: [PATCH 164/467] UPSTREAM: irqchip/riscv-aplic: Preserve APLIC states +Subject: [RUYI PATCH] UPSTREAM: irqchip/riscv-aplic: Preserve APLIC states across suspend/resume The APLIC states might be reset when the platform enters a low power diff --git a/SPECS/linux-lts/0165-UPSTREAM-irqchip-riscv-aplic-Do-not-clear-ACPI-depen.patch b/SPECS/linux-lts/0162-UPSTREAM-irqchip-riscv-aplic-Do-not-clear-ACPI-depen.patch similarity index 93% rename from SPECS/linux-lts/0165-UPSTREAM-irqchip-riscv-aplic-Do-not-clear-ACPI-depen.patch rename to SPECS/linux-lts/0162-UPSTREAM-irqchip-riscv-aplic-Do-not-clear-ACPI-depen.patch index 3b32023095..9ede52445f 100644 --- a/SPECS/linux-lts/0165-UPSTREAM-irqchip-riscv-aplic-Do-not-clear-ACPI-depen.patch +++ b/SPECS/linux-lts/0162-UPSTREAM-irqchip-riscv-aplic-Do-not-clear-ACPI-depen.patch @@ -1,7 +1,7 @@ -From 53ca58e7f8870492ce5c75dda934c60d28026396 Mon Sep 17 00:00:00 2001 +From 9030f2dc70b9b4bd8e20de88dcbbd8afa905d20e Mon Sep 17 00:00:00 2001 From: Jessica Liu Date: Tue, 10 Mar 2026 14:16:00 +0800 -Subject: [PATCH 165/467] UPSTREAM: irqchip/riscv-aplic: Do not clear ACPI +Subject: [RUYI PATCH] UPSTREAM: irqchip/riscv-aplic: Do not clear ACPI dependencies on probe failure aplic_probe() calls acpi_dev_clear_dependencies() unconditionally at the diff --git a/SPECS/linux-lts/0166-UPSTREAM-irqchip-riscv-aplic-Register-syscore-operat.patch b/SPECS/linux-lts/0163-UPSTREAM-irqchip-riscv-aplic-Register-syscore-operat.patch similarity index 94% rename from SPECS/linux-lts/0166-UPSTREAM-irqchip-riscv-aplic-Register-syscore-operat.patch rename to SPECS/linux-lts/0163-UPSTREAM-irqchip-riscv-aplic-Register-syscore-operat.patch index e1aff8100a..7e5c262b22 100644 --- a/SPECS/linux-lts/0166-UPSTREAM-irqchip-riscv-aplic-Register-syscore-operat.patch +++ b/SPECS/linux-lts/0163-UPSTREAM-irqchip-riscv-aplic-Register-syscore-operat.patch @@ -1,7 +1,7 @@ -From 8ae93b636f92b573aec71e026e1959d7342e76f5 Mon Sep 17 00:00:00 2001 +From f0f6537007b57483923b71a9da409d7811b4a6a1 Mon Sep 17 00:00:00 2001 From: Jessica Liu Date: Tue, 10 Mar 2026 14:17:31 +0800 -Subject: [PATCH 166/467] UPSTREAM: irqchip/riscv-aplic: Register syscore +Subject: [RUYI PATCH] UPSTREAM: irqchip/riscv-aplic: Register syscore operations only once Since commit 95a8ddde3660 ("irqchip/riscv-aplic: Preserve APLIC diff --git a/SPECS/linux-lts/0167-UPSTREAM-dt-bindings-usb-add-missed-compatible-strin.patch b/SPECS/linux-lts/0164-UPSTREAM-dt-bindings-usb-add-missed-compatible-strin.patch similarity index 93% rename from SPECS/linux-lts/0167-UPSTREAM-dt-bindings-usb-add-missed-compatible-strin.patch rename to SPECS/linux-lts/0164-UPSTREAM-dt-bindings-usb-add-missed-compatible-strin.patch index 9f4bf625b0..edf918ccc1 100644 --- a/SPECS/linux-lts/0167-UPSTREAM-dt-bindings-usb-add-missed-compatible-strin.patch +++ b/SPECS/linux-lts/0164-UPSTREAM-dt-bindings-usb-add-missed-compatible-strin.patch @@ -1,8 +1,8 @@ -From c8008d5da7b2415832577084ccba87ecd7a44f39 Mon Sep 17 00:00:00 2001 +From 362bcba652bd4b28531fbf93691ef6fba9a852a7 Mon Sep 17 00:00:00 2001 From: Frank Li Date: Mon, 29 Sep 2025 10:24:14 -0400 -Subject: [PATCH 167/467] UPSTREAM: dt-bindings: usb: add missed compatible - string for arm64 layerscape +Subject: [RUYI PATCH] UPSTREAM: dt-bindings: usb: add missed compatible string + for arm64 layerscape Add missed compatible string for arm64 layerscape platform. Allow these fallback to fsl,ls1028a-dwc3. diff --git a/SPECS/linux-lts/0168-UPSTREAM-usb-dwc3-Add-software-managed-properties-fo.patch b/SPECS/linux-lts/0165-UPSTREAM-usb-dwc3-Add-software-managed-properties-fo.patch similarity index 96% rename from SPECS/linux-lts/0168-UPSTREAM-usb-dwc3-Add-software-managed-properties-fo.patch rename to SPECS/linux-lts/0165-UPSTREAM-usb-dwc3-Add-software-managed-properties-fo.patch index 9c997b8d12..3f06b45545 100644 --- a/SPECS/linux-lts/0168-UPSTREAM-usb-dwc3-Add-software-managed-properties-fo.patch +++ b/SPECS/linux-lts/0165-UPSTREAM-usb-dwc3-Add-software-managed-properties-fo.patch @@ -1,8 +1,8 @@ -From ec754531fae0f05264d641470206d128b8955455 Mon Sep 17 00:00:00 2001 +From 95da822dbecb61c821f0748e19304ec198992377 Mon Sep 17 00:00:00 2001 From: Frank Li Date: Mon, 29 Sep 2025 10:24:15 -0400 -Subject: [PATCH 168/467] UPSTREAM: usb: dwc3: Add software-managed properties - for flattened model +Subject: [RUYI PATCH] UPSTREAM: usb: dwc3: Add software-managed properties for + flattened model Add software-managed properties for the flattened model, which does not need to use device tree properties to pass down information to the diff --git a/SPECS/linux-lts/0169-UPSTREAM-usb-dwc3-dwc3-generic-plat-Add-layerscape-d.patch b/SPECS/linux-lts/0166-UPSTREAM-usb-dwc3-dwc3-generic-plat-Add-layerscape-d.patch similarity index 93% rename from SPECS/linux-lts/0169-UPSTREAM-usb-dwc3-dwc3-generic-plat-Add-layerscape-d.patch rename to SPECS/linux-lts/0166-UPSTREAM-usb-dwc3-dwc3-generic-plat-Add-layerscape-d.patch index 5518a57821..0ff5ac0f10 100644 --- a/SPECS/linux-lts/0169-UPSTREAM-usb-dwc3-dwc3-generic-plat-Add-layerscape-d.patch +++ b/SPECS/linux-lts/0166-UPSTREAM-usb-dwc3-dwc3-generic-plat-Add-layerscape-d.patch @@ -1,8 +1,8 @@ -From 2ad4fd487b3a00d0f606fecc70edc0fe56d6b43e Mon Sep 17 00:00:00 2001 +From 336f616b6d4b4f53eb9ffdf8822f067ff0820efa Mon Sep 17 00:00:00 2001 From: Frank Li Date: Mon, 29 Sep 2025 10:24:16 -0400 -Subject: [PATCH 169/467] UPSTREAM: usb: dwc3: dwc3-generic-plat: Add - layerscape dwc3 support +Subject: [RUYI PATCH] UPSTREAM: usb: dwc3: dwc3-generic-plat: Add layerscape + dwc3 support Add layerscape dwc3 support by using flatten dwc3 core library. Layerscape dwc3 need set gsbuscfg0-reqinfo as 0x2222 when dma-coherence set. diff --git a/SPECS/linux-lts/0170-UPSTREAM-dt-bindings-usb-Add-ESWIN-EIC7700-USB-contr.patch b/SPECS/linux-lts/0167-UPSTREAM-dt-bindings-usb-Add-ESWIN-EIC7700-USB-contr.patch similarity index 95% rename from SPECS/linux-lts/0170-UPSTREAM-dt-bindings-usb-Add-ESWIN-EIC7700-USB-contr.patch rename to SPECS/linux-lts/0167-UPSTREAM-dt-bindings-usb-Add-ESWIN-EIC7700-USB-contr.patch index 6b5f344dd1..85f93bef67 100644 --- a/SPECS/linux-lts/0170-UPSTREAM-dt-bindings-usb-Add-ESWIN-EIC7700-USB-contr.patch +++ b/SPECS/linux-lts/0167-UPSTREAM-dt-bindings-usb-Add-ESWIN-EIC7700-USB-contr.patch @@ -1,7 +1,7 @@ -From fd6aed5b51bb1817267103bf54285d06b25b5d2f Mon Sep 17 00:00:00 2001 +From 4b1c4f9c84bda4bcf482c0efe496c3a6648372ca Mon Sep 17 00:00:00 2001 From: Hang Cao Date: Wed, 12 Nov 2025 13:53:21 +0800 -Subject: [PATCH 170/467] UPSTREAM: dt-bindings: usb: Add ESWIN EIC7700 USB +Subject: [RUYI PATCH] UPSTREAM: dt-bindings: usb: Add ESWIN EIC7700 USB controller Add Device Tree binding documentation for the ESWIN EIC7700 diff --git a/SPECS/linux-lts/0171-UPSTREAM-usb-dwc3-eic7700-Add-EIC7700-USB-driver.patch b/SPECS/linux-lts/0168-UPSTREAM-usb-dwc3-eic7700-Add-EIC7700-USB-driver.patch similarity index 97% rename from SPECS/linux-lts/0171-UPSTREAM-usb-dwc3-eic7700-Add-EIC7700-USB-driver.patch rename to SPECS/linux-lts/0168-UPSTREAM-usb-dwc3-eic7700-Add-EIC7700-USB-driver.patch index 7144558c46..c664c16a80 100644 --- a/SPECS/linux-lts/0171-UPSTREAM-usb-dwc3-eic7700-Add-EIC7700-USB-driver.patch +++ b/SPECS/linux-lts/0168-UPSTREAM-usb-dwc3-eic7700-Add-EIC7700-USB-driver.patch @@ -1,7 +1,7 @@ -From 76caa8b77c6909d2488024da63eb6de0ae401844 Mon Sep 17 00:00:00 2001 +From a2ce6ee9f23da731a7f30c0869f5b48c66d727e1 Mon Sep 17 00:00:00 2001 From: Hang Cao Date: Wed, 12 Nov 2025 13:53:45 +0800 -Subject: [PATCH 171/467] UPSTREAM: usb: dwc3: eic7700: Add EIC7700 USB driver +Subject: [RUYI PATCH] UPSTREAM: usb: dwc3: eic7700: Add EIC7700 USB driver The EIC7700 instantiates two USB 3.0 DWC3 IPs, each of which is backward compatible with USB interfaces. It supports Super-speed (5Gb/s), DRD mode, diff --git a/SPECS/linux-lts/0172-UPSTREAM-phy-k1-usb-add-disconnect-function-support.patch b/SPECS/linux-lts/0169-UPSTREAM-phy-k1-usb-add-disconnect-function-support.patch similarity index 92% rename from SPECS/linux-lts/0172-UPSTREAM-phy-k1-usb-add-disconnect-function-support.patch rename to SPECS/linux-lts/0169-UPSTREAM-phy-k1-usb-add-disconnect-function-support.patch index 324034713f..0830c4cd17 100644 --- a/SPECS/linux-lts/0172-UPSTREAM-phy-k1-usb-add-disconnect-function-support.patch +++ b/SPECS/linux-lts/0169-UPSTREAM-phy-k1-usb-add-disconnect-function-support.patch @@ -1,8 +1,7 @@ -From 7ce945a45771d022307a72be01e01ba8f621f6ae Mon Sep 17 00:00:00 2001 +From 9acac5b146b312ddb8525d13c2ba273dff6508a0 Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Mon, 16 Feb 2026 23:26:53 +0800 -Subject: [PATCH 172/467] UPSTREAM: phy: k1-usb: add disconnect function - support +Subject: [RUYI PATCH] UPSTREAM: phy: k1-usb: add disconnect function support A disconnect status BIT of USB2 PHY need to be cleared, otherwise it will fail to work properly during next connection when devices diff --git a/SPECS/linux-lts/0173-UPSTREAM-PCI-Add-ASPEED-vendor-ID-to-pci_ids.h.patch b/SPECS/linux-lts/0170-UPSTREAM-PCI-Add-ASPEED-vendor-ID-to-pci_ids.h.patch similarity index 92% rename from SPECS/linux-lts/0173-UPSTREAM-PCI-Add-ASPEED-vendor-ID-to-pci_ids.h.patch rename to SPECS/linux-lts/0170-UPSTREAM-PCI-Add-ASPEED-vendor-ID-to-pci_ids.h.patch index 33ff2c2664..f563981345 100644 --- a/SPECS/linux-lts/0173-UPSTREAM-PCI-Add-ASPEED-vendor-ID-to-pci_ids.h.patch +++ b/SPECS/linux-lts/0170-UPSTREAM-PCI-Add-ASPEED-vendor-ID-to-pci_ids.h.patch @@ -1,7 +1,7 @@ -From 6b3c31276fbb62225261d4063f231152756c3c24 Mon Sep 17 00:00:00 2001 +From 8aba9c8ffd6f7bf33950abcc2bb276254f6749cf Mon Sep 17 00:00:00 2001 From: Nirmoy Das Date: Wed, 17 Dec 2025 07:45:28 -0800 -Subject: [PATCH 173/467] UPSTREAM: PCI: Add ASPEED vendor ID to pci_ids.h +Subject: [RUYI PATCH] UPSTREAM: PCI: Add ASPEED vendor ID to pci_ids.h Add PCI_VENDOR_ID_ASPEED to the shared pci_ids.h header and remove the duplicate local definition from ehci-pci.c. diff --git a/SPECS/linux-lts/0174-UPSTREAM-PCI-Add-PCI_BRIDGE_NO_ALIAS-quirk-for-ASPEE.patch b/SPECS/linux-lts/0171-UPSTREAM-PCI-Add-PCI_BRIDGE_NO_ALIAS-quirk-for-ASPEE.patch similarity index 95% rename from SPECS/linux-lts/0174-UPSTREAM-PCI-Add-PCI_BRIDGE_NO_ALIAS-quirk-for-ASPEE.patch rename to SPECS/linux-lts/0171-UPSTREAM-PCI-Add-PCI_BRIDGE_NO_ALIAS-quirk-for-ASPEE.patch index 5c4614e51e..dba743541d 100644 --- a/SPECS/linux-lts/0174-UPSTREAM-PCI-Add-PCI_BRIDGE_NO_ALIAS-quirk-for-ASPEE.patch +++ b/SPECS/linux-lts/0171-UPSTREAM-PCI-Add-PCI_BRIDGE_NO_ALIAS-quirk-for-ASPEE.patch @@ -1,8 +1,8 @@ -From 12f86c495ee4dc708c6b0b172a7518faf4303656 Mon Sep 17 00:00:00 2001 +From ebc23bfadb5fbe0d0f28b65fd9c6837238e6e941 Mon Sep 17 00:00:00 2001 From: Nirmoy Das Date: Wed, 17 Dec 2025 07:45:29 -0800 -Subject: [PATCH 174/467] UPSTREAM: PCI: Add PCI_BRIDGE_NO_ALIAS quirk for - ASPEED AST1150 +Subject: [RUYI PATCH] UPSTREAM: PCI: Add PCI_BRIDGE_NO_ALIAS quirk for ASPEED + AST1150 ASPEED BMC controllers have VGA and USB functions behind a PCIe-to-PCI bridge that causes them to share the same StreamID: diff --git a/SPECS/linux-lts/0175-UPSTREAM-riscv-patch-Avoid-early-phys_to_page.patch b/SPECS/linux-lts/0172-UPSTREAM-riscv-patch-Avoid-early-phys_to_page.patch similarity index 95% rename from SPECS/linux-lts/0175-UPSTREAM-riscv-patch-Avoid-early-phys_to_page.patch rename to SPECS/linux-lts/0172-UPSTREAM-riscv-patch-Avoid-early-phys_to_page.patch index df952d8560..b717a1f71f 100644 --- a/SPECS/linux-lts/0175-UPSTREAM-riscv-patch-Avoid-early-phys_to_page.patch +++ b/SPECS/linux-lts/0172-UPSTREAM-riscv-patch-Avoid-early-phys_to_page.patch @@ -1,7 +1,7 @@ -From 8118d162255f24fd2cd5dee126efaea4a5cba952 Mon Sep 17 00:00:00 2001 +From 9b54a8b4866b22ba764ced5eadb4df836758c46b Mon Sep 17 00:00:00 2001 From: Vivian Wang Date: Mon, 23 Mar 2026 17:43:47 -0600 -Subject: [PATCH 175/467] UPSTREAM: riscv: patch: Avoid early phys_to_page() +Subject: [RUYI PATCH] UPSTREAM: riscv: patch: Avoid early phys_to_page() MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit diff --git a/SPECS/linux-lts/0176-UPSTREAM-PCI-dwc-Fail-dw_pcie_host_init-if-dw_pcie_w.patch b/SPECS/linux-lts/0173-UPSTREAM-PCI-dwc-Fail-dw_pcie_host_init-if-dw_pcie_w.patch similarity index 93% rename from SPECS/linux-lts/0176-UPSTREAM-PCI-dwc-Fail-dw_pcie_host_init-if-dw_pcie_w.patch rename to SPECS/linux-lts/0173-UPSTREAM-PCI-dwc-Fail-dw_pcie_host_init-if-dw_pcie_w.patch index 1bd8a9ebb3..7274ae6b1a 100644 --- a/SPECS/linux-lts/0176-UPSTREAM-PCI-dwc-Fail-dw_pcie_host_init-if-dw_pcie_w.patch +++ b/SPECS/linux-lts/0173-UPSTREAM-PCI-dwc-Fail-dw_pcie_host_init-if-dw_pcie_w.patch @@ -1,7 +1,7 @@ -From 23cc45c1d179af7b48fdde28d5607b138fb0ca43 Mon Sep 17 00:00:00 2001 +From 6727a0a8b7add2ff9543cd2e8e0f4e29a5a9b89a Mon Sep 17 00:00:00 2001 From: Manivannan Sadhasivam Date: Tue, 20 Jan 2026 23:17:44 +0530 -Subject: [PATCH 176/467] UPSTREAM: PCI: dwc: Fail dw_pcie_host_init() if +Subject: [RUYI PATCH] UPSTREAM: PCI: dwc: Fail dw_pcie_host_init() if dw_pcie_wait_for_link() returns -ETIMEDOUT The dw_pcie_wait_for_link() API now distinguishes link failures more diff --git a/SPECS/linux-lts/0177-UPSTREAM-reset-spacemit-k3-Decouple-composite-reset-.patch b/SPECS/linux-lts/0174-UPSTREAM-reset-spacemit-k3-Decouple-composite-reset-.patch similarity index 98% rename from SPECS/linux-lts/0177-UPSTREAM-reset-spacemit-k3-Decouple-composite-reset-.patch rename to SPECS/linux-lts/0174-UPSTREAM-reset-spacemit-k3-Decouple-composite-reset-.patch index 659010a91f..1cc4f9a6b9 100644 --- a/SPECS/linux-lts/0177-UPSTREAM-reset-spacemit-k3-Decouple-composite-reset-.patch +++ b/SPECS/linux-lts/0174-UPSTREAM-reset-spacemit-k3-Decouple-composite-reset-.patch @@ -1,8 +1,8 @@ -From 760f735fd91860a199a5219ec9e84def5029f0c6 Mon Sep 17 00:00:00 2001 +From a21ca9741cdf655d806097dd0285fc759b7550dd Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Fri, 20 Mar 2026 11:06:17 +0000 -Subject: [PATCH 177/467] UPSTREAM: reset: spacemit: k3: Decouple composite - reset lines +Subject: [RUYI PATCH] UPSTREAM: reset: spacemit: k3: Decouple composite reset + lines Instead of grouping several different reset lines into one composite reset, decouple them to individual ones which make it more aligned diff --git a/SPECS/linux-lts/0178-UPSTREAM-rust-clk-implement-Send-and-Sync.patch b/SPECS/linux-lts/0175-UPSTREAM-rust-clk-implement-Send-and-Sync.patch similarity index 92% rename from SPECS/linux-lts/0178-UPSTREAM-rust-clk-implement-Send-and-Sync.patch rename to SPECS/linux-lts/0175-UPSTREAM-rust-clk-implement-Send-and-Sync.patch index 1806623564..f22e81a3cb 100644 --- a/SPECS/linux-lts/0178-UPSTREAM-rust-clk-implement-Send-and-Sync.patch +++ b/SPECS/linux-lts/0175-UPSTREAM-rust-clk-implement-Send-and-Sync.patch @@ -1,7 +1,7 @@ -From 1642a007a0a6fae07e706694a837771d62f6a5fd Mon Sep 17 00:00:00 2001 +From 36c2fd3cabf5ec62efb4f91282e7b4afd1034963 Mon Sep 17 00:00:00 2001 From: Alice Ryhl Date: Mon, 23 Feb 2026 10:08:25 +0000 -Subject: [PATCH 178/467] UPSTREAM: rust: clk: implement Send and Sync +Subject: [RUYI PATCH] UPSTREAM: rust: clk: implement Send and Sync These traits are required for drivers to embed the Clk type in their own data structures because driver data structures are usually required to diff --git a/SPECS/linux-lts/0179-UPSTREAM-tyr-remove-impl-Send-Sync-for-TyrData.patch b/SPECS/linux-lts/0176-UPSTREAM-tyr-remove-impl-Send-Sync-for-TyrData.patch similarity index 93% rename from SPECS/linux-lts/0179-UPSTREAM-tyr-remove-impl-Send-Sync-for-TyrData.patch rename to SPECS/linux-lts/0176-UPSTREAM-tyr-remove-impl-Send-Sync-for-TyrData.patch index 8176cbc5dd..de7554e891 100644 --- a/SPECS/linux-lts/0179-UPSTREAM-tyr-remove-impl-Send-Sync-for-TyrData.patch +++ b/SPECS/linux-lts/0176-UPSTREAM-tyr-remove-impl-Send-Sync-for-TyrData.patch @@ -1,7 +1,7 @@ -From 98d1f3807843d1600d9c0fed44a0c1cfeee7e373 Mon Sep 17 00:00:00 2001 +From 83865522aaf93ce13b4bf32daff035cc0ffb1875 Mon Sep 17 00:00:00 2001 From: Alice Ryhl Date: Mon, 23 Feb 2026 10:08:26 +0000 -Subject: [PATCH 179/467] UPSTREAM: tyr: remove impl Send/Sync for TyrData +Subject: [RUYI PATCH] UPSTREAM: tyr: remove impl Send/Sync for TyrData Now that clk implements Send and Sync, we no longer need to manually implement these traits for TyrData. Thus remove the implementations. diff --git a/SPECS/linux-lts/0180-UPSTREAM-pwm-th1520-fix-CLIPPY-1-warning.patch b/SPECS/linux-lts/0177-UPSTREAM-pwm-th1520-fix-CLIPPY-1-warning.patch similarity index 95% rename from SPECS/linux-lts/0180-UPSTREAM-pwm-th1520-fix-CLIPPY-1-warning.patch rename to SPECS/linux-lts/0177-UPSTREAM-pwm-th1520-fix-CLIPPY-1-warning.patch index bfcbe3e3d7..96d1a40105 100644 --- a/SPECS/linux-lts/0180-UPSTREAM-pwm-th1520-fix-CLIPPY-1-warning.patch +++ b/SPECS/linux-lts/0177-UPSTREAM-pwm-th1520-fix-CLIPPY-1-warning.patch @@ -1,7 +1,7 @@ -From 9ca8e005adc28dc70cd2159ee5e1b4357360f8e3 Mon Sep 17 00:00:00 2001 +From 196de3c6b4e75a74ef0157f0c59ca867711beb1f Mon Sep 17 00:00:00 2001 From: Miguel Ojeda Date: Wed, 21 Jan 2026 19:37:19 +0100 -Subject: [PATCH 180/467] UPSTREAM: pwm: th1520: fix `CLIPPY=1` warning +Subject: [RUYI PATCH] UPSTREAM: pwm: th1520: fix `CLIPPY=1` warning MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit diff --git a/SPECS/linux-lts/0181-UPSTREAM-pwm-th1520-remove-impl-Send-Sync-for-Th1520.patch b/SPECS/linux-lts/0178-UPSTREAM-pwm-th1520-remove-impl-Send-Sync-for-Th1520.patch similarity index 93% rename from SPECS/linux-lts/0181-UPSTREAM-pwm-th1520-remove-impl-Send-Sync-for-Th1520.patch rename to SPECS/linux-lts/0178-UPSTREAM-pwm-th1520-remove-impl-Send-Sync-for-Th1520.patch index 90f301730b..bfdd63b39b 100644 --- a/SPECS/linux-lts/0181-UPSTREAM-pwm-th1520-remove-impl-Send-Sync-for-Th1520.patch +++ b/SPECS/linux-lts/0178-UPSTREAM-pwm-th1520-remove-impl-Send-Sync-for-Th1520.patch @@ -1,7 +1,7 @@ -From 17144d80f2540d040b45eb32a29a9afc0d23845e Mon Sep 17 00:00:00 2001 +From b521133241a4f965f50ccf4af99769c36904d779 Mon Sep 17 00:00:00 2001 From: Alice Ryhl Date: Mon, 23 Feb 2026 10:08:27 +0000 -Subject: [PATCH 181/467] UPSTREAM: pwm: th1520: remove impl Send/Sync for +Subject: [RUYI PATCH] UPSTREAM: pwm: th1520: remove impl Send/Sync for Th1520PwmDriverData MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 diff --git a/SPECS/linux-lts/0182-UPSTREAM-net-spacemit-Remove-unused-buff_addr-fields.patch b/SPECS/linux-lts/0179-UPSTREAM-net-spacemit-Remove-unused-buff_addr-fields.patch similarity index 89% rename from SPECS/linux-lts/0182-UPSTREAM-net-spacemit-Remove-unused-buff_addr-fields.patch rename to SPECS/linux-lts/0179-UPSTREAM-net-spacemit-Remove-unused-buff_addr-fields.patch index 5b71138373..3373671d06 100644 --- a/SPECS/linux-lts/0182-UPSTREAM-net-spacemit-Remove-unused-buff_addr-fields.patch +++ b/SPECS/linux-lts/0179-UPSTREAM-net-spacemit-Remove-unused-buff_addr-fields.patch @@ -1,8 +1,7 @@ -From 4a69779f56c915bdce7bc724b34f0efd8a77f9fb Mon Sep 17 00:00:00 2001 +From 32264ffa5210859b00dbce09fa640779874438f7 Mon Sep 17 00:00:00 2001 From: Vivian Wang Date: Thu, 5 Mar 2026 15:00:29 +0800 -Subject: [PATCH 182/467] UPSTREAM: net: spacemit: Remove unused buff_addr - fields +Subject: [RUYI PATCH] UPSTREAM: net: spacemit: Remove unused buff_addr fields These were never used. Just remove them. diff --git a/SPECS/linux-lts/0183-UPSTREAM-dt-bindings-net-Add-support-for-Spacemit-K3.patch b/SPECS/linux-lts/0180-UPSTREAM-dt-bindings-net-Add-support-for-Spacemit-K3.patch similarity index 96% rename from SPECS/linux-lts/0183-UPSTREAM-dt-bindings-net-Add-support-for-Spacemit-K3.patch rename to SPECS/linux-lts/0180-UPSTREAM-dt-bindings-net-Add-support-for-Spacemit-K3.patch index db4eb1efc3..9f38d216be 100644 --- a/SPECS/linux-lts/0183-UPSTREAM-dt-bindings-net-Add-support-for-Spacemit-K3.patch +++ b/SPECS/linux-lts/0180-UPSTREAM-dt-bindings-net-Add-support-for-Spacemit-K3.patch @@ -1,8 +1,8 @@ -From 4a88a11688e5e382e88e35f9cf81a4be6943b420 Mon Sep 17 00:00:00 2001 +From c446f352ebab05c2cef0a9835bd9224e19c24ccb Mon Sep 17 00:00:00 2001 From: Inochi Amaoto Date: Mon, 16 Mar 2026 09:00:37 +0800 -Subject: [PATCH 183/467] UPSTREAM: dt-bindings: net: Add support for Spacemit - K3 dwmac +Subject: [RUYI PATCH] UPSTREAM: dt-bindings: net: Add support for Spacemit K3 + dwmac The GMAC IP on Spacemit K3 is almost a standard Synopsys DesignWare MAC (version 5.40a) with some extra clock. diff --git a/SPECS/linux-lts/0184-UPSTREAM-net-stmmac-platform-Add-snps-dwmac-5.40a-IP.patch b/SPECS/linux-lts/0181-UPSTREAM-net-stmmac-platform-Add-snps-dwmac-5.40a-IP.patch similarity index 87% rename from SPECS/linux-lts/0184-UPSTREAM-net-stmmac-platform-Add-snps-dwmac-5.40a-IP.patch rename to SPECS/linux-lts/0181-UPSTREAM-net-stmmac-platform-Add-snps-dwmac-5.40a-IP.patch index e03a1f861d..e0e422ae4b 100644 --- a/SPECS/linux-lts/0184-UPSTREAM-net-stmmac-platform-Add-snps-dwmac-5.40a-IP.patch +++ b/SPECS/linux-lts/0181-UPSTREAM-net-stmmac-platform-Add-snps-dwmac-5.40a-IP.patch @@ -1,8 +1,8 @@ -From c8782bd2669420615c2b9caaadd9a78cd7da0123 Mon Sep 17 00:00:00 2001 +From 415d3b3b2a8fe07f5d9c84225c47c6f3be8fd827 Mon Sep 17 00:00:00 2001 From: Inochi Amaoto Date: Mon, 16 Mar 2026 09:00:38 +0800 -Subject: [PATCH 184/467] UPSTREAM: net: stmmac: platform: Add snps,dwmac-5.40a - IP compatible string +Subject: [RUYI PATCH] UPSTREAM: net: stmmac: platform: Add snps,dwmac-5.40a IP + compatible string Add compatible string for 5.40a version that can avoid to define some platform data in the glue layer. diff --git a/SPECS/linux-lts/0185-UPSTREAM-net-stmmac-Add-glue-layer-for-Spacemit-K3-S.patch b/SPECS/linux-lts/0182-UPSTREAM-net-stmmac-Add-glue-layer-for-Spacemit-K3-S.patch similarity index 98% rename from SPECS/linux-lts/0185-UPSTREAM-net-stmmac-Add-glue-layer-for-Spacemit-K3-S.patch rename to SPECS/linux-lts/0182-UPSTREAM-net-stmmac-Add-glue-layer-for-Spacemit-K3-S.patch index 2bfbada31b..e3ca4ecc6c 100644 --- a/SPECS/linux-lts/0185-UPSTREAM-net-stmmac-Add-glue-layer-for-Spacemit-K3-S.patch +++ b/SPECS/linux-lts/0182-UPSTREAM-net-stmmac-Add-glue-layer-for-Spacemit-K3-S.patch @@ -1,7 +1,7 @@ -From 837416c6927afd924e7c91dccfb60253d6a9e498 Mon Sep 17 00:00:00 2001 +From 945ce43958e6a4b22a3bf632d66514c6e279d2e9 Mon Sep 17 00:00:00 2001 From: Inochi Amaoto Date: Mon, 16 Mar 2026 09:00:39 +0800 -Subject: [PATCH 185/467] UPSTREAM: net: stmmac: Add glue layer for Spacemit K3 +Subject: [RUYI PATCH] UPSTREAM: net: stmmac: Add glue layer for Spacemit K3 SoC The ethernet controller on Spacemit K3 SoC is Synopsys DesignWare diff --git a/SPECS/linux-lts/0186-UPSTREAM-drm-imagination-Improve-handling-of-unknown.patch b/SPECS/linux-lts/0183-UPSTREAM-drm-imagination-Improve-handling-of-unknown.patch similarity index 92% rename from SPECS/linux-lts/0186-UPSTREAM-drm-imagination-Improve-handling-of-unknown.patch rename to SPECS/linux-lts/0183-UPSTREAM-drm-imagination-Improve-handling-of-unknown.patch index 6e6ee0a8cc..be1102a0eb 100644 --- a/SPECS/linux-lts/0186-UPSTREAM-drm-imagination-Improve-handling-of-unknown.patch +++ b/SPECS/linux-lts/0183-UPSTREAM-drm-imagination-Improve-handling-of-unknown.patch @@ -1,8 +1,8 @@ -From 870f5224fe15bfcd81de45da48168616a0d5c1d5 Mon Sep 17 00:00:00 2001 +From eaea87333b8ad51ffef8e8e2939c8aedc0c6f5f5 Mon Sep 17 00:00:00 2001 From: Matt Coster Date: Fri, 6 Feb 2026 16:02:12 +0000 -Subject: [PATCH 186/467] UPSTREAM: drm/imagination: Improve handling of - unknown FWCCB commands +Subject: [RUYI PATCH] UPSTREAM: drm/imagination: Improve handling of unknown + FWCCB commands A couple small changes: - Validate the magic value at the head of FWCCB commands, and diff --git a/SPECS/linux-lts/0187-UPSTREAM-drm-imagination-Mark-FWCCB_CMD_UPDATE_STATS.patch b/SPECS/linux-lts/0184-UPSTREAM-drm-imagination-Mark-FWCCB_CMD_UPDATE_STATS.patch similarity index 90% rename from SPECS/linux-lts/0187-UPSTREAM-drm-imagination-Mark-FWCCB_CMD_UPDATE_STATS.patch rename to SPECS/linux-lts/0184-UPSTREAM-drm-imagination-Mark-FWCCB_CMD_UPDATE_STATS.patch index 46f5bd7d70..d0de8aa1e5 100644 --- a/SPECS/linux-lts/0187-UPSTREAM-drm-imagination-Mark-FWCCB_CMD_UPDATE_STATS.patch +++ b/SPECS/linux-lts/0184-UPSTREAM-drm-imagination-Mark-FWCCB_CMD_UPDATE_STATS.patch @@ -1,8 +1,8 @@ -From 5e86b21fc9e1bab746f921d406840979e1851e0e Mon Sep 17 00:00:00 2001 +From 74c17747b1c536e207645c2cd6bd1399b9d2ec05 Mon Sep 17 00:00:00 2001 From: Matt Coster Date: Fri, 6 Feb 2026 16:02:13 +0000 -Subject: [PATCH 187/467] UPSTREAM: drm/imagination: Mark - FWCCB_CMD_UPDATE_STATS as known +Subject: [RUYI PATCH] UPSTREAM: drm/imagination: Mark FWCCB_CMD_UPDATE_STATS + as known Suppress the "unknown type" warning when processing a FWCCB command of type CMD_UPDATE_STATS which is known but (currently) unused. diff --git a/SPECS/linux-lts/0188-UPSTREAM-drm-imagination-Improve-firmware-power-off-.patch b/SPECS/linux-lts/0185-UPSTREAM-drm-imagination-Improve-firmware-power-off-.patch similarity index 97% rename from SPECS/linux-lts/0188-UPSTREAM-drm-imagination-Improve-firmware-power-off-.patch rename to SPECS/linux-lts/0185-UPSTREAM-drm-imagination-Improve-firmware-power-off-.patch index c50be1defc..50ffd104f5 100644 --- a/SPECS/linux-lts/0188-UPSTREAM-drm-imagination-Improve-firmware-power-off-.patch +++ b/SPECS/linux-lts/0185-UPSTREAM-drm-imagination-Improve-firmware-power-off-.patch @@ -1,7 +1,7 @@ -From c27b56fa68e0dc9f68c93f5024501db480e2a75f Mon Sep 17 00:00:00 2001 +From 913bf005c8fcc762460c945ae4c4b99a3b30e116 Mon Sep 17 00:00:00 2001 From: Brajesh Gupta Date: Fri, 13 Mar 2026 06:38:24 +0000 -Subject: [PATCH 188/467] UPSTREAM: drm/imagination: Improve firmware power off +Subject: [RUYI PATCH] UPSTREAM: drm/imagination: Improve firmware power off for layout_mars config In layout_mars HW config, Firmware MCU moved from Sidekick to new Mars diff --git a/SPECS/linux-lts/0189-UPSTREAM-drm-imagination-Skip-2nd-thread-DM-associat.patch b/SPECS/linux-lts/0186-UPSTREAM-drm-imagination-Skip-2nd-thread-DM-associat.patch similarity index 93% rename from SPECS/linux-lts/0189-UPSTREAM-drm-imagination-Skip-2nd-thread-DM-associat.patch rename to SPECS/linux-lts/0186-UPSTREAM-drm-imagination-Skip-2nd-thread-DM-associat.patch index a38db47b95..30928dca28 100644 --- a/SPECS/linux-lts/0189-UPSTREAM-drm-imagination-Skip-2nd-thread-DM-associat.patch +++ b/SPECS/linux-lts/0186-UPSTREAM-drm-imagination-Skip-2nd-thread-DM-associat.patch @@ -1,7 +1,7 @@ -From 5fa9c63710bdd821c67cb83870bd773ad29fb978 Mon Sep 17 00:00:00 2001 +From 1c4786d466085bd7d5e793bc432f8d9d77048fb9 Mon Sep 17 00:00:00 2001 From: Brajesh Gupta Date: Fri, 13 Mar 2026 06:38:25 +0000 -Subject: [PATCH 189/467] UPSTREAM: drm/imagination: Skip 2nd thread DM +Subject: [RUYI PATCH] UPSTREAM: drm/imagination: Skip 2nd thread DM association for non META Firmware Only a META firmware can have two threads. diff --git a/SPECS/linux-lts/0190-UPSTREAM-drm-imagination-Add-missing-rogue-context-r.patch b/SPECS/linux-lts/0187-UPSTREAM-drm-imagination-Add-missing-rogue-context-r.patch similarity index 93% rename from SPECS/linux-lts/0190-UPSTREAM-drm-imagination-Add-missing-rogue-context-r.patch rename to SPECS/linux-lts/0187-UPSTREAM-drm-imagination-Add-missing-rogue-context-r.patch index 47548d9611..74f768a3dd 100644 --- a/SPECS/linux-lts/0190-UPSTREAM-drm-imagination-Add-missing-rogue-context-r.patch +++ b/SPECS/linux-lts/0187-UPSTREAM-drm-imagination-Add-missing-rogue-context-r.patch @@ -1,7 +1,7 @@ -From abb8bc1c87a792d8e9fb2ec18bace8773ff287fa Mon Sep 17 00:00:00 2001 +From 2af0a8e17c8cfcbee59a2a2f6315c394a0342dc5 Mon Sep 17 00:00:00 2001 From: Alexandru Dadu Date: Mon, 23 Mar 2026 20:31:28 +0200 -Subject: [PATCH 190/467] UPSTREAM: drm/imagination: Add missing rogue context +Subject: [RUYI PATCH] UPSTREAM: drm/imagination: Add missing rogue context reset reasons Update the context reset reason enum with the missing reset reasons in diff --git a/SPECS/linux-lts/0191-UPSTREAM-drm-imagination-Implement-handling-of-conte.patch b/SPECS/linux-lts/0188-UPSTREAM-drm-imagination-Implement-handling-of-conte.patch similarity index 97% rename from SPECS/linux-lts/0191-UPSTREAM-drm-imagination-Implement-handling-of-conte.patch rename to SPECS/linux-lts/0188-UPSTREAM-drm-imagination-Implement-handling-of-conte.patch index 239f0e4598..0b560df8fc 100644 --- a/SPECS/linux-lts/0191-UPSTREAM-drm-imagination-Implement-handling-of-conte.patch +++ b/SPECS/linux-lts/0188-UPSTREAM-drm-imagination-Implement-handling-of-conte.patch @@ -1,8 +1,8 @@ -From 8b9e78b54cb9659d9121ea4bf1e3368763df3af7 Mon Sep 17 00:00:00 2001 +From 3ea351d649da005c14bb7563aff7c5a258116a18 Mon Sep 17 00:00:00 2001 From: Alexandru Dadu Date: Mon, 23 Mar 2026 20:31:30 +0200 -Subject: [PATCH 191/467] UPSTREAM: drm/imagination: Implement handling of - context reset notification +Subject: [RUYI PATCH] UPSTREAM: drm/imagination: Implement handling of context + reset notification The firmware will send the context reset notification message as part of handling hardware recovery (HWR) events deecoding the message diff --git a/SPECS/linux-lts/0192-UPSTREAM-dt-bindings-vendor-prefixes-add-verisilicon.patch b/SPECS/linux-lts/0189-UPSTREAM-dt-bindings-vendor-prefixes-add-verisilicon.patch similarity index 90% rename from SPECS/linux-lts/0192-UPSTREAM-dt-bindings-vendor-prefixes-add-verisilicon.patch rename to SPECS/linux-lts/0189-UPSTREAM-dt-bindings-vendor-prefixes-add-verisilicon.patch index feb6510c1b..f7d478ada1 100644 --- a/SPECS/linux-lts/0192-UPSTREAM-dt-bindings-vendor-prefixes-add-verisilicon.patch +++ b/SPECS/linux-lts/0189-UPSTREAM-dt-bindings-vendor-prefixes-add-verisilicon.patch @@ -1,8 +1,7 @@ -From 34a1f2a285caa0d97a9ec22b7fdad41bc44c6a59 Mon Sep 17 00:00:00 2001 +From e88d780551651b13977fcb9a0fc500f0edc4ec8d Mon Sep 17 00:00:00 2001 From: Icenowy Zheng Date: Thu, 29 Jan 2026 10:39:15 +0800 -Subject: [PATCH 192/467] UPSTREAM: dt-bindings: vendor-prefixes: add - verisilicon +Subject: [RUYI PATCH] UPSTREAM: dt-bindings: vendor-prefixes: add verisilicon VeriSilicon is a Silicon IP vendor, which is the current owner of Vivante series video-related IPs and Hantro series video codec IPs. diff --git a/SPECS/linux-lts/0193-UPSTREAM-dt-bindings-display-add-verisilicon-dc.patch b/SPECS/linux-lts/0190-UPSTREAM-dt-bindings-display-add-verisilicon-dc.patch similarity index 96% rename from SPECS/linux-lts/0193-UPSTREAM-dt-bindings-display-add-verisilicon-dc.patch rename to SPECS/linux-lts/0190-UPSTREAM-dt-bindings-display-add-verisilicon-dc.patch index aa338ea8fe..3ab06308e6 100644 --- a/SPECS/linux-lts/0193-UPSTREAM-dt-bindings-display-add-verisilicon-dc.patch +++ b/SPECS/linux-lts/0190-UPSTREAM-dt-bindings-display-add-verisilicon-dc.patch @@ -1,7 +1,7 @@ -From 0ed3496b3f01c4dd2f8e63571a0b1aaddeb71419 Mon Sep 17 00:00:00 2001 +From 0097108abfd8e7e0526f283feef46f9ff85d3019 Mon Sep 17 00:00:00 2001 From: Icenowy Zheng Date: Thu, 29 Jan 2026 10:39:16 +0800 -Subject: [PATCH 193/467] UPSTREAM: dt-bindings: display: add verisilicon,dc +Subject: [RUYI PATCH] UPSTREAM: dt-bindings: display: add verisilicon,dc Verisilicon has a series of display controllers prefixed with DC and with self-identification facility like their GC series GPUs. diff --git a/SPECS/linux-lts/0194-UPSTREAM-drm-verisilicon-add-a-driver-for-Verisilico.patch b/SPECS/linux-lts/0191-UPSTREAM-drm-verisilicon-add-a-driver-for-Verisilico.patch similarity index 99% rename from SPECS/linux-lts/0194-UPSTREAM-drm-verisilicon-add-a-driver-for-Verisilico.patch rename to SPECS/linux-lts/0191-UPSTREAM-drm-verisilicon-add-a-driver-for-Verisilico.patch index 8afe0ebfca..f6b7875e3a 100644 --- a/SPECS/linux-lts/0194-UPSTREAM-drm-verisilicon-add-a-driver-for-Verisilico.patch +++ b/SPECS/linux-lts/0191-UPSTREAM-drm-verisilicon-add-a-driver-for-Verisilico.patch @@ -1,8 +1,8 @@ -From 8c4bdd8a532c94e0c03dff0c3191f51e6d57c008 Mon Sep 17 00:00:00 2001 +From 6b2f35b64e7c0486c46921e2bae819b08dc83a72 Mon Sep 17 00:00:00 2001 From: Icenowy Zheng Date: Thu, 29 Jan 2026 10:39:17 +0800 -Subject: [PATCH 194/467] UPSTREAM: drm: verisilicon: add a driver for - Verisilicon display controllers +Subject: [RUYI PATCH] UPSTREAM: drm: verisilicon: add a driver for Verisilicon + display controllers This is a from-scratch driver targeting Verisilicon DC-series display controllers, which feature self-identification functionality like their diff --git a/SPECS/linux-lts/0195-UPSTREAM-dt-bindings-display-bridge-add-binding-for-.patch b/SPECS/linux-lts/0192-UPSTREAM-dt-bindings-display-bridge-add-binding-for-.patch similarity index 95% rename from SPECS/linux-lts/0195-UPSTREAM-dt-bindings-display-bridge-add-binding-for-.patch rename to SPECS/linux-lts/0192-UPSTREAM-dt-bindings-display-bridge-add-binding-for-.patch index 31987352cf..641e31a30d 100644 --- a/SPECS/linux-lts/0195-UPSTREAM-dt-bindings-display-bridge-add-binding-for-.patch +++ b/SPECS/linux-lts/0192-UPSTREAM-dt-bindings-display-bridge-add-binding-for-.patch @@ -1,8 +1,8 @@ -From ee91943024b041838f8d48b5875cd8083a8d0945 Mon Sep 17 00:00:00 2001 +From f3c9d099748a9f334530dc8d3b829667282a09e2 Mon Sep 17 00:00:00 2001 From: Icenowy Zheng Date: Thu, 29 Jan 2026 10:39:18 +0800 -Subject: [PATCH 195/467] UPSTREAM: dt-bindings: display/bridge: add binding - for TH1520 HDMI controller +Subject: [RUYI PATCH] UPSTREAM: dt-bindings: display/bridge: add binding for + TH1520 HDMI controller T-Head TH1520 SoC contains a Synopsys DesignWare HDMI controller paired with DesignWare HDMI PHY, with an extra clock gate for HDMI pixel clock diff --git a/SPECS/linux-lts/0196-UPSTREAM-drm-bridge-add-a-driver-for-T-Head-TH1520-H.patch b/SPECS/linux-lts/0193-UPSTREAM-drm-bridge-add-a-driver-for-T-Head-TH1520-H.patch similarity index 98% rename from SPECS/linux-lts/0196-UPSTREAM-drm-bridge-add-a-driver-for-T-Head-TH1520-H.patch rename to SPECS/linux-lts/0193-UPSTREAM-drm-bridge-add-a-driver-for-T-Head-TH1520-H.patch index d96c026cbf..cf9d00a163 100644 --- a/SPECS/linux-lts/0196-UPSTREAM-drm-bridge-add-a-driver-for-T-Head-TH1520-H.patch +++ b/SPECS/linux-lts/0193-UPSTREAM-drm-bridge-add-a-driver-for-T-Head-TH1520-H.patch @@ -1,7 +1,7 @@ -From 93ee7e5ff8c14262f2edbaebf59e12ec50ebeac0 Mon Sep 17 00:00:00 2001 +From 58ad5626c4911a37f2e711c60ae825d55251511b Mon Sep 17 00:00:00 2001 From: Icenowy Zheng Date: Thu, 29 Jan 2026 10:39:19 +0800 -Subject: [PATCH 196/467] UPSTREAM: drm/bridge: add a driver for T-Head TH1520 +Subject: [RUYI PATCH] UPSTREAM: drm/bridge: add a driver for T-Head TH1520 HDMI controller T-Head TH1520 SoC contains a Synopsys DesignWare HDMI controller (paired diff --git a/SPECS/linux-lts/0197-UPSTREAM-dt-bindings-mfd-spacemit-p1-Add-individual-.patch b/SPECS/linux-lts/0194-UPSTREAM-dt-bindings-mfd-spacemit-p1-Add-individual-.patch similarity index 94% rename from SPECS/linux-lts/0197-UPSTREAM-dt-bindings-mfd-spacemit-p1-Add-individual-.patch rename to SPECS/linux-lts/0194-UPSTREAM-dt-bindings-mfd-spacemit-p1-Add-individual-.patch index fd657fca32..6f796d9cbc 100644 --- a/SPECS/linux-lts/0197-UPSTREAM-dt-bindings-mfd-spacemit-p1-Add-individual-.patch +++ b/SPECS/linux-lts/0194-UPSTREAM-dt-bindings-mfd-spacemit-p1-Add-individual-.patch @@ -1,8 +1,8 @@ -From d3f0701d0caf105e3dca7e90f7611eb6111ae3e5 Mon Sep 17 00:00:00 2001 +From ea4a0e0935587b36a14380693c67c8cd0a9b30f1 Mon Sep 17 00:00:00 2001 From: Guodong Xu Date: Fri, 6 Feb 2026 10:32:02 +0800 -Subject: [PATCH 197/467] UPSTREAM: dt-bindings: mfd: spacemit,p1: Add - individual regulator supply properties +Subject: [RUYI PATCH] UPSTREAM: dt-bindings: mfd: spacemit,p1: Add individual + regulator supply properties Add supply properties that match the P1 PMIC's actual hardware topology where each buck converter has its own VIN pin and LDO groups share diff --git a/SPECS/linux-lts/0198-UPSTREAM-regulator-spacemit-p1-Update-supply-names.patch b/SPECS/linux-lts/0195-UPSTREAM-regulator-spacemit-p1-Update-supply-names.patch similarity index 94% rename from SPECS/linux-lts/0198-UPSTREAM-regulator-spacemit-p1-Update-supply-names.patch rename to SPECS/linux-lts/0195-UPSTREAM-regulator-spacemit-p1-Update-supply-names.patch index 369110a4e9..c1c7ac83ec 100644 --- a/SPECS/linux-lts/0198-UPSTREAM-regulator-spacemit-p1-Update-supply-names.patch +++ b/SPECS/linux-lts/0195-UPSTREAM-regulator-spacemit-p1-Update-supply-names.patch @@ -1,7 +1,7 @@ -From 9bd75aaa59fb6ab1d9e1b11f9f2ad77f1658b9a4 Mon Sep 17 00:00:00 2001 +From 42b7ba3e5273fbdc3ca27c1fb551be6f0eccab97 Mon Sep 17 00:00:00 2001 From: Guodong Xu Date: Fri, 6 Feb 2026 10:32:03 +0800 -Subject: [PATCH 198/467] UPSTREAM: regulator: spacemit-p1: Update supply names +Subject: [RUYI PATCH] UPSTREAM: regulator: spacemit-p1: Update supply names Update supply names to match the P1 PMIC's actual hardware pinout where each buck has an individual VIN pin (vin1-vin6) and LDO groups have diff --git a/SPECS/linux-lts/0199-UPSTREAM-mmc-sdhci-of-k1-add-reset-support.patch b/SPECS/linux-lts/0196-UPSTREAM-mmc-sdhci-of-k1-add-reset-support.patch similarity index 93% rename from SPECS/linux-lts/0199-UPSTREAM-mmc-sdhci-of-k1-add-reset-support.patch rename to SPECS/linux-lts/0196-UPSTREAM-mmc-sdhci-of-k1-add-reset-support.patch index ac158c2c11..7a0dd9d20a 100644 --- a/SPECS/linux-lts/0199-UPSTREAM-mmc-sdhci-of-k1-add-reset-support.patch +++ b/SPECS/linux-lts/0196-UPSTREAM-mmc-sdhci-of-k1-add-reset-support.patch @@ -1,7 +1,7 @@ -From 2d76e75bca7e55bd00d4506359572a867aa1b303 Mon Sep 17 00:00:00 2001 +From a16a762a96646468762203524a13847057523875 Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Tue, 23 Dec 2025 10:24:50 +0800 -Subject: [PATCH 199/467] UPSTREAM: mmc: sdhci-of-k1: add reset support +Subject: [RUYI PATCH] UPSTREAM: mmc: sdhci-of-k1: add reset support The SDHCI controller of SpacemiT K1 SoC requires two resets, add support to explicitly request the reset line and deassert during diff --git a/SPECS/linux-lts/0200-UPSTREAM-dt-bindings-mmc-spacemit-sdhci-add-support-.patch b/SPECS/linux-lts/0197-UPSTREAM-dt-bindings-mmc-spacemit-sdhci-add-support-.patch similarity index 87% rename from SPECS/linux-lts/0200-UPSTREAM-dt-bindings-mmc-spacemit-sdhci-add-support-.patch rename to SPECS/linux-lts/0197-UPSTREAM-dt-bindings-mmc-spacemit-sdhci-add-support-.patch index ab4886f545..271bd70fc5 100644 --- a/SPECS/linux-lts/0200-UPSTREAM-dt-bindings-mmc-spacemit-sdhci-add-support-.patch +++ b/SPECS/linux-lts/0197-UPSTREAM-dt-bindings-mmc-spacemit-sdhci-add-support-.patch @@ -1,8 +1,8 @@ -From c062f31f265429d1f2fce4dfb8396648bb008bee Mon Sep 17 00:00:00 2001 +From 3661bb1bda184323b7f27ca11c4f6aa2453a891b Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Thu, 22 Jan 2026 17:37:30 +0800 -Subject: [PATCH 200/467] UPSTREAM: dt-bindings: mmc: spacemit,sdhci: add - support for K3 SoC +Subject: [RUYI PATCH] UPSTREAM: dt-bindings: mmc: spacemit,sdhci: add support + for K3 SoC The SDHCI controller found on SpacemiT K3 SoC share the same IP with K1 generation, while fixed the broken 64BIT DMA issue. Introduce a diff --git a/SPECS/linux-lts/0201-UPSTREAM-mmc-sdhci-of-k1-spacemit-Add-support-for-K3.patch b/SPECS/linux-lts/0198-UPSTREAM-mmc-sdhci-of-k1-spacemit-Add-support-for-K3.patch similarity index 93% rename from SPECS/linux-lts/0201-UPSTREAM-mmc-sdhci-of-k1-spacemit-Add-support-for-K3.patch rename to SPECS/linux-lts/0198-UPSTREAM-mmc-sdhci-of-k1-spacemit-Add-support-for-K3.patch index 8b39d10761..067922ab83 100644 --- a/SPECS/linux-lts/0201-UPSTREAM-mmc-sdhci-of-k1-spacemit-Add-support-for-K3.patch +++ b/SPECS/linux-lts/0198-UPSTREAM-mmc-sdhci-of-k1-spacemit-Add-support-for-K3.patch @@ -1,8 +1,8 @@ -From bf01dbbc2a84e73472ec8407e03ad78c12a261d7 Mon Sep 17 00:00:00 2001 +From aef7fb87d55efc5bff2a628b6196c36b7eaf3e12 Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Thu, 22 Jan 2026 17:37:31 +0800 -Subject: [PATCH 201/467] UPSTREAM: mmc: sdhci-of-k1: spacemit: Add support for - K3 SoC +Subject: [RUYI PATCH] UPSTREAM: mmc: sdhci-of-k1: spacemit: Add support for K3 + SoC The SDHCI controller found on SpacemiT K3 SoC share the same IP with K1 generation and introduce a compatible data to denote the change that broken diff --git a/SPECS/linux-lts/0202-UPSTREAM-PCI-cadence-Add-flags-for-disabling-ASPM-ca.patch b/SPECS/linux-lts/0199-UPSTREAM-PCI-cadence-Add-flags-for-disabling-ASPM-ca.patch similarity index 95% rename from SPECS/linux-lts/0202-UPSTREAM-PCI-cadence-Add-flags-for-disabling-ASPM-ca.patch rename to SPECS/linux-lts/0199-UPSTREAM-PCI-cadence-Add-flags-for-disabling-ASPM-ca.patch index f4079da8cb..bd29a279bd 100644 --- a/SPECS/linux-lts/0202-UPSTREAM-PCI-cadence-Add-flags-for-disabling-ASPM-ca.patch +++ b/SPECS/linux-lts/0199-UPSTREAM-PCI-cadence-Add-flags-for-disabling-ASPM-ca.patch @@ -1,7 +1,7 @@ -From 666104d46e408b7abf14799de82ab3cefcdf0964 Mon Sep 17 00:00:00 2001 +From 71fc35504a003f43684f36757050f5c7e1ca7c23 Mon Sep 17 00:00:00 2001 From: Yao Zi Date: Sun, 5 Apr 2026 15:41:53 +0000 -Subject: [PATCH 202/467] UPSTREAM: PCI: cadence: Add flags for disabling ASPM +Subject: [RUYI PATCH] UPSTREAM: PCI: cadence: Add flags for disabling ASPM capability for broken Root Ports Add flags for disabling the ASPM L0s/L1 capability for broken Root Ports diff --git a/SPECS/linux-lts/0203-UPSTREAM-PCI-sg2042-Avoid-L0s-and-L1-on-Sophgo-2042-.patch b/SPECS/linux-lts/0200-UPSTREAM-PCI-sg2042-Avoid-L0s-and-L1-on-Sophgo-2042-.patch similarity index 91% rename from SPECS/linux-lts/0203-UPSTREAM-PCI-sg2042-Avoid-L0s-and-L1-on-Sophgo-2042-.patch rename to SPECS/linux-lts/0200-UPSTREAM-PCI-sg2042-Avoid-L0s-and-L1-on-Sophgo-2042-.patch index 9fcf206ede..863472668a 100644 --- a/SPECS/linux-lts/0203-UPSTREAM-PCI-sg2042-Avoid-L0s-and-L1-on-Sophgo-2042-.patch +++ b/SPECS/linux-lts/0200-UPSTREAM-PCI-sg2042-Avoid-L0s-and-L1-on-Sophgo-2042-.patch @@ -1,8 +1,8 @@ -From 97c5f5dec6275526d950871d6697610efd8bbfc9 Mon Sep 17 00:00:00 2001 +From b79c6a8e8737f691e21ed1f9492ed9784de03550 Mon Sep 17 00:00:00 2001 From: Yao Zi Date: Sun, 5 Apr 2026 15:41:54 +0000 -Subject: [PATCH 203/467] UPSTREAM: PCI: sg2042: Avoid L0s and L1 on Sophgo - 2042 PCIe Root Ports +Subject: [RUYI PATCH] UPSTREAM: PCI: sg2042: Avoid L0s and L1 on Sophgo 2042 + PCIe Root Ports Since commit f3ac2ff14834 ("PCI/ASPM: Enable all ClockPM and ASPM states for devicetree platforms") force enables ASPM on all device tree platforms, diff --git a/SPECS/linux-lts/0204-UPSTREAM-dt-bindings-hwmon-moortec-mr75203-adapt-mul.patch b/SPECS/linux-lts/0201-UPSTREAM-dt-bindings-hwmon-moortec-mr75203-adapt-mul.patch similarity index 93% rename from SPECS/linux-lts/0204-UPSTREAM-dt-bindings-hwmon-moortec-mr75203-adapt-mul.patch rename to SPECS/linux-lts/0201-UPSTREAM-dt-bindings-hwmon-moortec-mr75203-adapt-mul.patch index 2ddec8736f..45d9a8f9de 100644 --- a/SPECS/linux-lts/0204-UPSTREAM-dt-bindings-hwmon-moortec-mr75203-adapt-mul.patch +++ b/SPECS/linux-lts/0201-UPSTREAM-dt-bindings-hwmon-moortec-mr75203-adapt-mul.patch @@ -1,7 +1,7 @@ -From 9fa99cb8701fa1bb6152da334dca564f23e9f456 Mon Sep 17 00:00:00 2001 +From e8797e3dcfc25acbd3f8c8b268ec9d8bd1c28295 Mon Sep 17 00:00:00 2001 From: Icenowy Zheng Date: Tue, 10 Mar 2026 00:24:56 +0800 -Subject: [PATCH 204/467] UPSTREAM: dt-bindings: hwmon: moortec,mr75203: adapt +Subject: [RUYI PATCH] UPSTREAM: dt-bindings: hwmon: moortec,mr75203: adapt multipleOf for T-Head TH1520 The G and J coefficients provided by T-Head TH1520 manual (which calls diff --git a/SPECS/linux-lts/0205-UPSTREAM-drm-imagination-Disable-interrupts-before-s.patch b/SPECS/linux-lts/0202-UPSTREAM-drm-imagination-Disable-interrupts-before-s.patch similarity index 95% rename from SPECS/linux-lts/0205-UPSTREAM-drm-imagination-Disable-interrupts-before-s.patch rename to SPECS/linux-lts/0202-UPSTREAM-drm-imagination-Disable-interrupts-before-s.patch index eb78cafb3a..3011e77bd5 100644 --- a/SPECS/linux-lts/0205-UPSTREAM-drm-imagination-Disable-interrupts-before-s.patch +++ b/SPECS/linux-lts/0202-UPSTREAM-drm-imagination-Disable-interrupts-before-s.patch @@ -1,7 +1,7 @@ -From 2575af4e9ef38dd97f241b4be5afd8a68de35365 Mon Sep 17 00:00:00 2001 +From 42218f60a7def59ca6f9513365c5aed9fb77a124 Mon Sep 17 00:00:00 2001 From: Alessio Belle Date: Tue, 10 Mar 2026 11:41:12 +0000 -Subject: [PATCH 205/467] UPSTREAM: drm/imagination: Disable interrupts before +Subject: [RUYI PATCH] UPSTREAM: drm/imagination: Disable interrupts before suspending the GPU This is an additional safety layer to ensure no accesses to the GPU diff --git a/SPECS/linux-lts/0206-UPSTREAM-riscv-dts-thead-add-DPU-and-HDMI-device-tre.patch b/SPECS/linux-lts/0203-UPSTREAM-riscv-dts-thead-add-DPU-and-HDMI-device-tre.patch similarity index 95% rename from SPECS/linux-lts/0206-UPSTREAM-riscv-dts-thead-add-DPU-and-HDMI-device-tre.patch rename to SPECS/linux-lts/0203-UPSTREAM-riscv-dts-thead-add-DPU-and-HDMI-device-tre.patch index 279438ed87..97daa0a8b0 100644 --- a/SPECS/linux-lts/0206-UPSTREAM-riscv-dts-thead-add-DPU-and-HDMI-device-tre.patch +++ b/SPECS/linux-lts/0203-UPSTREAM-riscv-dts-thead-add-DPU-and-HDMI-device-tre.patch @@ -1,7 +1,7 @@ -From 889a08c4fbd66cd2cccce2fe6c281d18a78edf6f Mon Sep 17 00:00:00 2001 +From 9714f16b48717549d0332bbcd37661290bf0a765 Mon Sep 17 00:00:00 2001 From: Icenowy Zheng Date: Thu, 29 Jan 2026 10:39:20 +0800 -Subject: [PATCH 206/467] UPSTREAM: riscv: dts: thead: add DPU and HDMI device +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: thead: add DPU and HDMI device tree nodes T-Head TH1520 SoC contains a Verisilicon DC8200 display controller diff --git a/SPECS/linux-lts/0207-UPSTREAM-riscv-dts-thead-lichee-pi-4a-enable-HDMI.patch b/SPECS/linux-lts/0204-UPSTREAM-riscv-dts-thead-lichee-pi-4a-enable-HDMI.patch similarity index 92% rename from SPECS/linux-lts/0207-UPSTREAM-riscv-dts-thead-lichee-pi-4a-enable-HDMI.patch rename to SPECS/linux-lts/0204-UPSTREAM-riscv-dts-thead-lichee-pi-4a-enable-HDMI.patch index e9c9006b5c..df92d3aeea 100644 --- a/SPECS/linux-lts/0207-UPSTREAM-riscv-dts-thead-lichee-pi-4a-enable-HDMI.patch +++ b/SPECS/linux-lts/0204-UPSTREAM-riscv-dts-thead-lichee-pi-4a-enable-HDMI.patch @@ -1,8 +1,7 @@ -From efdb5c77db11f97a43075c7a399a52fb4beeadf1 Mon Sep 17 00:00:00 2001 +From 4633a7a2c68426c3f3fc28382fd6cba7df6134d8 Mon Sep 17 00:00:00 2001 From: Icenowy Zheng Date: Thu, 29 Jan 2026 10:39:21 +0800 -Subject: [PATCH 207/467] UPSTREAM: riscv: dts: thead: lichee-pi-4a: enable - HDMI +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: thead: lichee-pi-4a: enable HDMI Lichee Pi 4A board features a HDMI Type-A connector connected to the HDMI TX controller of TH1520 SoC. diff --git a/SPECS/linux-lts/0208-UPSTREAM-riscv-dts-thead-th1520-add-coefficients-to-.patch b/SPECS/linux-lts/0205-UPSTREAM-riscv-dts-thead-th1520-add-coefficients-to-.patch similarity index 88% rename from SPECS/linux-lts/0208-UPSTREAM-riscv-dts-thead-th1520-add-coefficients-to-.patch rename to SPECS/linux-lts/0205-UPSTREAM-riscv-dts-thead-th1520-add-coefficients-to-.patch index 4ccee80d92..dfee292fb6 100644 --- a/SPECS/linux-lts/0208-UPSTREAM-riscv-dts-thead-th1520-add-coefficients-to-.patch +++ b/SPECS/linux-lts/0205-UPSTREAM-riscv-dts-thead-th1520-add-coefficients-to-.patch @@ -1,8 +1,8 @@ -From 9e80c22940c9b510b2ee11be7109bdff5e262886 Mon Sep 17 00:00:00 2001 +From 00020f3b46c3943b6ce714ac17de5fd1573b399b Mon Sep 17 00:00:00 2001 From: Icenowy Zheng Date: Tue, 10 Mar 2026 00:24:57 +0800 -Subject: [PATCH 208/467] UPSTREAM: riscv: dts: thead: th1520: add coefficients - to the PVT node +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: thead: th1520: add coefficients to + the PVT node The manual of TH1520 contains a set of coefficients a little different to the driver default ones. diff --git a/SPECS/linux-lts/0209-UPSTREAM-riscv-dts-thead-beaglev-ahead-enable-HDMI-o.patch b/SPECS/linux-lts/0206-UPSTREAM-riscv-dts-thead-beaglev-ahead-enable-HDMI-o.patch similarity index 90% rename from SPECS/linux-lts/0209-UPSTREAM-riscv-dts-thead-beaglev-ahead-enable-HDMI-o.patch rename to SPECS/linux-lts/0206-UPSTREAM-riscv-dts-thead-beaglev-ahead-enable-HDMI-o.patch index 58b7193f04..03da857375 100644 --- a/SPECS/linux-lts/0209-UPSTREAM-riscv-dts-thead-beaglev-ahead-enable-HDMI-o.patch +++ b/SPECS/linux-lts/0206-UPSTREAM-riscv-dts-thead-beaglev-ahead-enable-HDMI-o.patch @@ -1,8 +1,8 @@ -From 2c28be0f3ea2c24030f397d840f378703b680aed Mon Sep 17 00:00:00 2001 +From 1cce6a25c0cf7aab271eb21e6d8b9ed58ed13b84 Mon Sep 17 00:00:00 2001 From: Robert Mazur Date: Wed, 25 Mar 2026 09:18:59 +0100 -Subject: [PATCH 209/467] UPSTREAM: riscv: dts: thead: beaglev-ahead: enable - HDMI output +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: thead: beaglev-ahead: enable HDMI + output The BeagleV Ahead board includes a micro HDMI connector (Type-D) wired to the TH1520 SoC's HDMI transmitter. diff --git a/SPECS/linux-lts/0210-UPSTREAM-i2c-spacemit-move-i2c_xfer_msg.patch b/SPECS/linux-lts/0207-UPSTREAM-i2c-spacemit-move-i2c_xfer_msg.patch similarity index 95% rename from SPECS/linux-lts/0210-UPSTREAM-i2c-spacemit-move-i2c_xfer_msg.patch rename to SPECS/linux-lts/0207-UPSTREAM-i2c-spacemit-move-i2c_xfer_msg.patch index b96de6f772..0128ba9bc1 100644 --- a/SPECS/linux-lts/0210-UPSTREAM-i2c-spacemit-move-i2c_xfer_msg.patch +++ b/SPECS/linux-lts/0207-UPSTREAM-i2c-spacemit-move-i2c_xfer_msg.patch @@ -1,7 +1,7 @@ -From 3ceed31e1551882d64e7fd0770c15f8c1a4c15e9 Mon Sep 17 00:00:00 2001 +From d2ce0203a4d1455b03013278280f7ac698fce115 Mon Sep 17 00:00:00 2001 From: Troy Mitchell Date: Sat, 7 Feb 2026 23:08:21 +0800 -Subject: [PATCH 210/467] UPSTREAM: i2c: spacemit: move i2c_xfer_msg() +Subject: [RUYI PATCH] UPSTREAM: i2c: spacemit: move i2c_xfer_msg() The upcoming PIO support requires a wait_pio_xfer() helper, which is invoked from xfer_msg(). diff --git a/SPECS/linux-lts/0211-UPSTREAM-i2c-spacemit-introduce-pio-for-k1.patch b/SPECS/linux-lts/0208-UPSTREAM-i2c-spacemit-introduce-pio-for-k1.patch similarity index 99% rename from SPECS/linux-lts/0211-UPSTREAM-i2c-spacemit-introduce-pio-for-k1.patch rename to SPECS/linux-lts/0208-UPSTREAM-i2c-spacemit-introduce-pio-for-k1.patch index 46854f2eb4..34101370a3 100644 --- a/SPECS/linux-lts/0211-UPSTREAM-i2c-spacemit-introduce-pio-for-k1.patch +++ b/SPECS/linux-lts/0208-UPSTREAM-i2c-spacemit-introduce-pio-for-k1.patch @@ -1,7 +1,7 @@ -From 4c5b92d265c0ff7e581b5979bc668b3a0358edba Mon Sep 17 00:00:00 2001 +From 4fa4815280ddada7e960eb90a9ccccd015916c00 Mon Sep 17 00:00:00 2001 From: Troy Mitchell Date: Sat, 7 Feb 2026 23:08:22 +0800 -Subject: [PATCH 211/467] UPSTREAM: i2c: spacemit: introduce pio for k1 +Subject: [RUYI PATCH] UPSTREAM: i2c: spacemit: introduce pio for k1 This patch introduces I2C PIO functionality for the Spacemit K1 SoC, enabling the use of I2C in atomic context. diff --git a/SPECS/linux-lts/0212-UPSTREAM-pinctrl-spacemit-return-ENOTSUPP-for-unsupp.patch b/SPECS/linux-lts/0209-UPSTREAM-pinctrl-spacemit-return-ENOTSUPP-for-unsupp.patch similarity index 95% rename from SPECS/linux-lts/0212-UPSTREAM-pinctrl-spacemit-return-ENOTSUPP-for-unsupp.patch rename to SPECS/linux-lts/0209-UPSTREAM-pinctrl-spacemit-return-ENOTSUPP-for-unsupp.patch index 829d6bbcd0..d01da0caa4 100644 --- a/SPECS/linux-lts/0212-UPSTREAM-pinctrl-spacemit-return-ENOTSUPP-for-unsupp.patch +++ b/SPECS/linux-lts/0209-UPSTREAM-pinctrl-spacemit-return-ENOTSUPP-for-unsupp.patch @@ -1,7 +1,7 @@ -From b353a7aa6259753c7025aedf18b101189b01e902 Mon Sep 17 00:00:00 2001 +From 55a3d0c1bf77d828f3581b3c07e12d8a25775e1c Mon Sep 17 00:00:00 2001 From: Junhui Liu Date: Thu, 12 Mar 2026 16:42:42 +0800 -Subject: [PATCH 212/467] UPSTREAM: pinctrl: spacemit: return -ENOTSUPP for +Subject: [RUYI PATCH] UPSTREAM: pinctrl: spacemit: return -ENOTSUPP for unsupported pin configurations Return -ENOTSUPP instead of -EINVAL when encountering unsupported pin diff --git a/SPECS/linux-lts/0213-UPSTREAM-gpio-spacemit-k1-Add-set_config-callback-su.patch b/SPECS/linux-lts/0210-UPSTREAM-gpio-spacemit-k1-Add-set_config-callback-su.patch similarity index 90% rename from SPECS/linux-lts/0213-UPSTREAM-gpio-spacemit-k1-Add-set_config-callback-su.patch rename to SPECS/linux-lts/0210-UPSTREAM-gpio-spacemit-k1-Add-set_config-callback-su.patch index 94351bf0cb..5b07efea54 100644 --- a/SPECS/linux-lts/0213-UPSTREAM-gpio-spacemit-k1-Add-set_config-callback-su.patch +++ b/SPECS/linux-lts/0210-UPSTREAM-gpio-spacemit-k1-Add-set_config-callback-su.patch @@ -1,7 +1,7 @@ -From d5b0b0437eee5d56c49e36bb6f428b5171ddb716 Mon Sep 17 00:00:00 2001 +From 698e2cf6a0e40c6a445aeefa403bb4ac1b28919a Mon Sep 17 00:00:00 2001 From: Junhui Liu Date: Thu, 12 Mar 2026 16:42:43 +0800 -Subject: [PATCH 213/467] UPSTREAM: gpio: spacemit-k1: Add set_config callback +Subject: [RUYI PATCH] UPSTREAM: gpio: spacemit-k1: Add set_config callback support Assign gpiochip_generic_config() to the set_config() callback to support diff --git a/SPECS/linux-lts/0214-UPSTREAM-riscv-dts-spacemit-pcie-fix-missing-power-r.patch b/SPECS/linux-lts/0211-UPSTREAM-riscv-dts-spacemit-pcie-fix-missing-power-r.patch similarity index 89% rename from SPECS/linux-lts/0214-UPSTREAM-riscv-dts-spacemit-pcie-fix-missing-power-r.patch rename to SPECS/linux-lts/0211-UPSTREAM-riscv-dts-spacemit-pcie-fix-missing-power-r.patch index af101ace4b..e3ff5c7bb8 100644 --- a/SPECS/linux-lts/0214-UPSTREAM-riscv-dts-spacemit-pcie-fix-missing-power-r.patch +++ b/SPECS/linux-lts/0211-UPSTREAM-riscv-dts-spacemit-pcie-fix-missing-power-r.patch @@ -1,8 +1,8 @@ -From 0b209a13a933458317f10fc48bd50c2986ab96fc Mon Sep 17 00:00:00 2001 +From 8572451bc96b2e6e3f43ce554e3806a5b1c7778c Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Thu, 26 Feb 2026 08:17:55 +0000 -Subject: [PATCH 214/467] UPSTREAM: riscv: dts: spacemit: pcie: fix missing - power regulator +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: spacemit: pcie: fix missing power + regulator The PCIe port require 3.3v power regulator for device to work properly, So explicitly add it to fix the DT warning: diff --git a/SPECS/linux-lts/0215-UPSTREAM-riscv-dts-spacemit-Update-PMIC-supply-prope.patch b/SPECS/linux-lts/0212-UPSTREAM-riscv-dts-spacemit-Update-PMIC-supply-prope.patch similarity index 94% rename from SPECS/linux-lts/0215-UPSTREAM-riscv-dts-spacemit-Update-PMIC-supply-prope.patch rename to SPECS/linux-lts/0212-UPSTREAM-riscv-dts-spacemit-Update-PMIC-supply-prope.patch index 812b0f1ef8..c1a03ad44a 100644 --- a/SPECS/linux-lts/0215-UPSTREAM-riscv-dts-spacemit-Update-PMIC-supply-prope.patch +++ b/SPECS/linux-lts/0212-UPSTREAM-riscv-dts-spacemit-Update-PMIC-supply-prope.patch @@ -1,7 +1,7 @@ -From 867d1c8308a1f4fcaa14a9efca280d8e5ca431a1 Mon Sep 17 00:00:00 2001 +From d591170d2ed25e8716eb3db09e686e859c5c318b Mon Sep 17 00:00:00 2001 From: Guodong Xu Date: Fri, 6 Feb 2026 10:32:04 +0800 -Subject: [PATCH 215/467] UPSTREAM: riscv: dts: spacemit: Update PMIC supply +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: spacemit: Update PMIC supply properties for BPI-F3 and Jupiter Use per-regulator supply names in pmic "spacemit,p1" node to specify diff --git a/SPECS/linux-lts/0216-UPSTREAM-riscv-dts-spacemit-adapt-regulator-node-nam.patch b/SPECS/linux-lts/0213-UPSTREAM-riscv-dts-spacemit-adapt-regulator-node-nam.patch similarity index 95% rename from SPECS/linux-lts/0216-UPSTREAM-riscv-dts-spacemit-adapt-regulator-node-nam.patch rename to SPECS/linux-lts/0213-UPSTREAM-riscv-dts-spacemit-adapt-regulator-node-nam.patch index 0baf5e0509..2dce8101f3 100644 --- a/SPECS/linux-lts/0216-UPSTREAM-riscv-dts-spacemit-adapt-regulator-node-nam.patch +++ b/SPECS/linux-lts/0213-UPSTREAM-riscv-dts-spacemit-adapt-regulator-node-nam.patch @@ -1,7 +1,7 @@ -From 8e847600364cd4fb332c1e6d69b370eab667157b Mon Sep 17 00:00:00 2001 +From d068a8147daedba4965fc79a896ad7dcaa91b9e4 Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Thu, 26 Feb 2026 09:35:00 +0000 -Subject: [PATCH 216/467] UPSTREAM: riscv: dts: spacemit: adapt regulator node +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: spacemit: adapt regulator node name to preferred form The preferred node name for fixed-regulators has changed to pattern [1]: diff --git a/SPECS/linux-lts/0217-UPSTREAM-riscv-dts-spacemit-Add-linux-pci-domain-to-.patch b/SPECS/linux-lts/0214-UPSTREAM-riscv-dts-spacemit-Add-linux-pci-domain-to-.patch similarity index 92% rename from SPECS/linux-lts/0217-UPSTREAM-riscv-dts-spacemit-Add-linux-pci-domain-to-.patch rename to SPECS/linux-lts/0214-UPSTREAM-riscv-dts-spacemit-Add-linux-pci-domain-to-.patch index 29c5e0b70c..dd31af6364 100644 --- a/SPECS/linux-lts/0217-UPSTREAM-riscv-dts-spacemit-Add-linux-pci-domain-to-.patch +++ b/SPECS/linux-lts/0214-UPSTREAM-riscv-dts-spacemit-Add-linux-pci-domain-to-.patch @@ -1,8 +1,8 @@ -From 6763f6325a6f023a8781d9eda31e4313f90861b7 Mon Sep 17 00:00:00 2001 +From 3c942f15e5112f8554b39f1c889cb52184bd3e90 Mon Sep 17 00:00:00 2001 From: Chukun Pan Date: Mon, 9 Mar 2026 11:00:00 +0800 -Subject: [PATCH 217/467] UPSTREAM: riscv: dts: spacemit: Add - 'linux,pci-domain' to PCIe nodes for K1 +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: spacemit: Add 'linux,pci-domain' + to PCIe nodes for K1 The SpacemiT K1 SoC has 3 PCIe EP controller nodes. Add the 'linux,pci-domain' property to assign a PCI domain number to diff --git a/SPECS/linux-lts/0218-UPSTREAM-dt-bindings-serial-8250-spacemit-fix-clock-.patch b/SPECS/linux-lts/0215-UPSTREAM-dt-bindings-serial-8250-spacemit-fix-clock-.patch similarity index 89% rename from SPECS/linux-lts/0218-UPSTREAM-dt-bindings-serial-8250-spacemit-fix-clock-.patch rename to SPECS/linux-lts/0215-UPSTREAM-dt-bindings-serial-8250-spacemit-fix-clock-.patch index cbfd5a28a6..1a6351971a 100644 --- a/SPECS/linux-lts/0218-UPSTREAM-dt-bindings-serial-8250-spacemit-fix-clock-.patch +++ b/SPECS/linux-lts/0215-UPSTREAM-dt-bindings-serial-8250-spacemit-fix-clock-.patch @@ -1,8 +1,8 @@ -From 8a9141deb50f0c4e00218a10123b0b9653a96872 Mon Sep 17 00:00:00 2001 +From e6fddcb8065f3568285549e732cda7618b1e5065 Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Wed, 4 Mar 2026 07:19:39 +0000 -Subject: [PATCH 218/467] UPSTREAM: dt-bindings: serial: 8250: spacemit: fix - clock property for K3 SoC +Subject: [RUYI PATCH] UPSTREAM: dt-bindings: serial: 8250: spacemit: fix clock + property for K3 SoC The UART of SpacemiT K3 SoC has same clock property as K1 generation which request two clock sources, fix the binding otherwise will get DT check diff --git a/SPECS/linux-lts/0219-UPSTREAM-riscv-dts-spacemit-k3-add-clock-tree.patch b/SPECS/linux-lts/0216-UPSTREAM-riscv-dts-spacemit-k3-add-clock-tree.patch similarity index 96% rename from SPECS/linux-lts/0219-UPSTREAM-riscv-dts-spacemit-k3-add-clock-tree.patch rename to SPECS/linux-lts/0216-UPSTREAM-riscv-dts-spacemit-k3-add-clock-tree.patch index 08aa7a8885..d84cac3c6d 100644 --- a/SPECS/linux-lts/0219-UPSTREAM-riscv-dts-spacemit-k3-add-clock-tree.patch +++ b/SPECS/linux-lts/0216-UPSTREAM-riscv-dts-spacemit-k3-add-clock-tree.patch @@ -1,7 +1,7 @@ -From d6d720c6f2938cc35fbb2411f4bcfffe2d3210cc Mon Sep 17 00:00:00 2001 +From d685ab6d599ba502610b5f425c35683c2c838c0a Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Wed, 4 Mar 2026 07:36:42 +0000 -Subject: [PATCH 219/467] UPSTREAM: riscv: dts: spacemit: k3: add clock tree +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: spacemit: k3: add clock tree Add clock support to SpacemiT K3 SoC, the clock tree consist of several blocks which are APBC, APMU, DCIU, MPUM. diff --git a/SPECS/linux-lts/0220-UPSTREAM-riscv-dts-spacemit-k3-add-pinctrl-support.patch b/SPECS/linux-lts/0217-UPSTREAM-riscv-dts-spacemit-k3-add-pinctrl-support.patch similarity index 89% rename from SPECS/linux-lts/0220-UPSTREAM-riscv-dts-spacemit-k3-add-pinctrl-support.patch rename to SPECS/linux-lts/0217-UPSTREAM-riscv-dts-spacemit-k3-add-pinctrl-support.patch index 7467adfc98..43081756d0 100644 --- a/SPECS/linux-lts/0220-UPSTREAM-riscv-dts-spacemit-k3-add-pinctrl-support.patch +++ b/SPECS/linux-lts/0217-UPSTREAM-riscv-dts-spacemit-k3-add-pinctrl-support.patch @@ -1,8 +1,7 @@ -From b712bbdcd69a0cf77827e15a2b8d0c593a348c55 Mon Sep 17 00:00:00 2001 +From 26584036220607376da285b0c0cf42306e1dc824 Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Wed, 4 Mar 2026 07:36:43 +0000 -Subject: [PATCH 220/467] UPSTREAM: riscv: dts: spacemit: k3: add pinctrl - support +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: spacemit: k3: add pinctrl support Populate pinctrl node in Device Tree for SpacemiT K3 SoC, So devices can request pinctrl resource properly. diff --git a/SPECS/linux-lts/0221-UPSTREAM-riscv-dts-spacemit-k3-add-GPIO-support.patch b/SPECS/linux-lts/0218-UPSTREAM-riscv-dts-spacemit-k3-add-GPIO-support.patch similarity index 91% rename from SPECS/linux-lts/0221-UPSTREAM-riscv-dts-spacemit-k3-add-GPIO-support.patch rename to SPECS/linux-lts/0218-UPSTREAM-riscv-dts-spacemit-k3-add-GPIO-support.patch index 267f0b7a53..dae1e8f109 100644 --- a/SPECS/linux-lts/0221-UPSTREAM-riscv-dts-spacemit-k3-add-GPIO-support.patch +++ b/SPECS/linux-lts/0218-UPSTREAM-riscv-dts-spacemit-k3-add-GPIO-support.patch @@ -1,7 +1,7 @@ -From 42bb1ee59c5be1344c00b635eb294286c0516236 Mon Sep 17 00:00:00 2001 +From d0197dc9c7ce0b6d04f508db631f06668553d958 Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Wed, 4 Mar 2026 07:36:44 +0000 -Subject: [PATCH 221/467] UPSTREAM: riscv: dts: spacemit: k3: add GPIO support +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: spacemit: k3: add GPIO support Add GPIO node in the Device Tree, so devices are able to request GPIO resource properly. diff --git a/SPECS/linux-lts/0222-UPSTREAM-riscv-dts-spacemit-k3-add-full-resource-to-.patch b/SPECS/linux-lts/0219-UPSTREAM-riscv-dts-spacemit-k3-add-full-resource-to-.patch similarity index 97% rename from SPECS/linux-lts/0222-UPSTREAM-riscv-dts-spacemit-k3-add-full-resource-to-.patch rename to SPECS/linux-lts/0219-UPSTREAM-riscv-dts-spacemit-k3-add-full-resource-to-.patch index 5ed83a3077..581044da67 100644 --- a/SPECS/linux-lts/0222-UPSTREAM-riscv-dts-spacemit-k3-add-full-resource-to-.patch +++ b/SPECS/linux-lts/0219-UPSTREAM-riscv-dts-spacemit-k3-add-full-resource-to-.patch @@ -1,8 +1,8 @@ -From e189d040b406ed393e4e7d5bf768de16b63cdf18 Mon Sep 17 00:00:00 2001 +From 186d384a785aeb3b664585647bd06ee2009145dd Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Wed, 4 Mar 2026 07:36:45 +0000 -Subject: [PATCH 222/467] UPSTREAM: riscv: dts: spacemit: k3: add full resource - to UART +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: spacemit: k3: add full resource to + UART Previously the UART rely on external bootloader to initialize clock, pinctrl and reset, to solve this, explicitly adding those resource in diff --git a/SPECS/linux-lts/0223-UPSTREAM-dt-bindings-usb-dwc3-spacemit-add-support-f.patch b/SPECS/linux-lts/0220-UPSTREAM-dt-bindings-usb-dwc3-spacemit-add-support-f.patch similarity index 92% rename from SPECS/linux-lts/0223-UPSTREAM-dt-bindings-usb-dwc3-spacemit-add-support-f.patch rename to SPECS/linux-lts/0220-UPSTREAM-dt-bindings-usb-dwc3-spacemit-add-support-f.patch index 11ec0b2493..a15e56ca61 100644 --- a/SPECS/linux-lts/0223-UPSTREAM-dt-bindings-usb-dwc3-spacemit-add-support-f.patch +++ b/SPECS/linux-lts/0220-UPSTREAM-dt-bindings-usb-dwc3-spacemit-add-support-f.patch @@ -1,8 +1,8 @@ -From 65d15c8340d9e4aa40a623ff2449950059808d92 Mon Sep 17 00:00:00 2001 +From 8ded8df1d9dccc63760629834a87ae2c8615e042 Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Fri, 20 Mar 2026 07:15:37 +0000 -Subject: [PATCH 223/467] UPSTREAM: dt-bindings: usb: dwc3: spacemit: add - support for K3 SoC +Subject: [RUYI PATCH] UPSTREAM: dt-bindings: usb: dwc3: spacemit: add support + for K3 SoC Add compatible string for DWC3 USB controller found in SpacemiT K3 SoC. diff --git a/SPECS/linux-lts/0224-UPSTREAM-usb-dwc3-dwc3-generic-plat-spacemit-add-sup.patch b/SPECS/linux-lts/0221-UPSTREAM-usb-dwc3-dwc3-generic-plat-spacemit-add-sup.patch similarity index 89% rename from SPECS/linux-lts/0224-UPSTREAM-usb-dwc3-dwc3-generic-plat-spacemit-add-sup.patch rename to SPECS/linux-lts/0221-UPSTREAM-usb-dwc3-dwc3-generic-plat-spacemit-add-sup.patch index dc96a39982..45a1cbb328 100644 --- a/SPECS/linux-lts/0224-UPSTREAM-usb-dwc3-dwc3-generic-plat-spacemit-add-sup.patch +++ b/SPECS/linux-lts/0221-UPSTREAM-usb-dwc3-dwc3-generic-plat-spacemit-add-sup.patch @@ -1,7 +1,7 @@ -From d139bb98d6afd681a1d2b0a68a1986ce01b0e4b7 Mon Sep 17 00:00:00 2001 +From 27133a501e88e5b271c1a5c98f2013d1f8dc931a Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Fri, 20 Mar 2026 07:15:38 +0000 -Subject: [PATCH 224/467] UPSTREAM: usb: dwc3: dwc3-generic-plat: spacemit: add +Subject: [RUYI PATCH] UPSTREAM: usb: dwc3: dwc3-generic-plat: spacemit: add support for K3 SoC Add support for the DWC3 USB controller which found in SpacemiT K3 SoC. diff --git a/SPECS/linux-lts/0225-UPSTREAM-usb-dwc3-Add-optional-VBUS-regulator-suppor.patch b/SPECS/linux-lts/0222-UPSTREAM-usb-dwc3-Add-optional-VBUS-regulator-suppor.patch similarity index 94% rename from SPECS/linux-lts/0225-UPSTREAM-usb-dwc3-Add-optional-VBUS-regulator-suppor.patch rename to SPECS/linux-lts/0222-UPSTREAM-usb-dwc3-Add-optional-VBUS-regulator-suppor.patch index 2b7267977c..e9139f8f74 100644 --- a/SPECS/linux-lts/0225-UPSTREAM-usb-dwc3-Add-optional-VBUS-regulator-suppor.patch +++ b/SPECS/linux-lts/0222-UPSTREAM-usb-dwc3-Add-optional-VBUS-regulator-suppor.patch @@ -1,8 +1,8 @@ -From 9990dc7ec3ce2387190d0ea86d2050589b85cd73 Mon Sep 17 00:00:00 2001 +From ec33bc462214da036d45ea0a3822c34e9f3d422b Mon Sep 17 00:00:00 2001 From: Chukun Pan Date: Thu, 26 Mar 2026 18:00:10 +0800 -Subject: [PATCH 225/467] UPSTREAM: usb: dwc3: Add optional VBUS regulator - support to SpacemiT K1 +Subject: [RUYI PATCH] UPSTREAM: usb: dwc3: Add optional VBUS regulator support + to SpacemiT K1 Some SpacemiT K1 boards (like OrangePi R2S) provide USB VBUS through a controllable regulator. Add support for the optional diff --git a/SPECS/linux-lts/0226-UPSTREAM-riscv-dts-spacemit-reorder-phy-nodes-for-K1.patch b/SPECS/linux-lts/0223-UPSTREAM-riscv-dts-spacemit-reorder-phy-nodes-for-K1.patch similarity index 96% rename from SPECS/linux-lts/0226-UPSTREAM-riscv-dts-spacemit-reorder-phy-nodes-for-K1.patch rename to SPECS/linux-lts/0223-UPSTREAM-riscv-dts-spacemit-reorder-phy-nodes-for-K1.patch index a511212ed8..4c498e66d6 100644 --- a/SPECS/linux-lts/0226-UPSTREAM-riscv-dts-spacemit-reorder-phy-nodes-for-K1.patch +++ b/SPECS/linux-lts/0223-UPSTREAM-riscv-dts-spacemit-reorder-phy-nodes-for-K1.patch @@ -1,8 +1,7 @@ -From eed2d8946ef831dead32e3b9c4d588b283ae1195 Mon Sep 17 00:00:00 2001 +From feb6ae05030bda7ec7a43a8384cfdffc80d33e30 Mon Sep 17 00:00:00 2001 From: Chukun Pan Date: Wed, 18 Mar 2026 18:00:00 +0800 -Subject: [PATCH 226/467] UPSTREAM: riscv: dts: spacemit: reorder phy nodes for - K1 +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: spacemit: reorder phy nodes for K1 Reorder the PHY nodes of USB and PCIe to the correct positions based on the register address. This improves the readability and maintainability diff --git a/SPECS/linux-lts/0227-UPSTREAM-riscv-dts-spacemit-drop-incorrect-pinctrl-f.patch b/SPECS/linux-lts/0224-UPSTREAM-riscv-dts-spacemit-drop-incorrect-pinctrl-f.patch similarity index 89% rename from SPECS/linux-lts/0227-UPSTREAM-riscv-dts-spacemit-drop-incorrect-pinctrl-f.patch rename to SPECS/linux-lts/0224-UPSTREAM-riscv-dts-spacemit-drop-incorrect-pinctrl-f.patch index d629f7d904..7d60f42287 100644 --- a/SPECS/linux-lts/0227-UPSTREAM-riscv-dts-spacemit-drop-incorrect-pinctrl-f.patch +++ b/SPECS/linux-lts/0224-UPSTREAM-riscv-dts-spacemit-drop-incorrect-pinctrl-f.patch @@ -1,8 +1,8 @@ -From 16fa682f25aa8efc5b297d6efcaaf5d684c6fd7b Mon Sep 17 00:00:00 2001 +From 9c90526d6c53498c2b0fce296ea54822274f4e03 Mon Sep 17 00:00:00 2001 From: Aurelien Jarno Date: Sun, 22 Mar 2026 21:25:01 +0100 -Subject: [PATCH 227/467] UPSTREAM: riscv: dts: spacemit: drop incorrect - pinctrl for combo PHY +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: spacemit: drop incorrect pinctrl + for combo PHY The combo PHY on the Banana Pi F3 is used for the USB 3.0 port. The high speed differential lanes are always configured as such, and do not diff --git a/SPECS/linux-lts/0228-UPSTREAM-riscv-dts-spacemit-Add-ethernet-device-for-.patch b/SPECS/linux-lts/0225-UPSTREAM-riscv-dts-spacemit-Add-ethernet-device-for-.patch similarity index 97% rename from SPECS/linux-lts/0228-UPSTREAM-riscv-dts-spacemit-Add-ethernet-device-for-.patch rename to SPECS/linux-lts/0225-UPSTREAM-riscv-dts-spacemit-Add-ethernet-device-for-.patch index aca0bf2ca8..daa6d30ac8 100644 --- a/SPECS/linux-lts/0228-UPSTREAM-riscv-dts-spacemit-Add-ethernet-device-for-.patch +++ b/SPECS/linux-lts/0225-UPSTREAM-riscv-dts-spacemit-Add-ethernet-device-for-.patch @@ -1,8 +1,8 @@ -From 03c170ac39ef66094f9171ed83e48fcf67edc777 Mon Sep 17 00:00:00 2001 +From f1fd9849a3a86e6e7567394bcfbd7e80314e1925 Mon Sep 17 00:00:00 2001 From: Inochi Amaoto Date: Thu, 26 Mar 2026 09:46:17 +0800 -Subject: [PATCH 228/467] UPSTREAM: riscv: dts: spacemit: Add ethernet device - for K3 +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: spacemit: Add ethernet device for + K3 Add all ethernet device nodes for K3 SoC. diff --git a/SPECS/linux-lts/0229-UPSTREAM-riscv-dts-spacemit-add-LEDs-for-Milk-V-Jupi.patch b/SPECS/linux-lts/0226-UPSTREAM-riscv-dts-spacemit-add-LEDs-for-Milk-V-Jupi.patch similarity index 92% rename from SPECS/linux-lts/0229-UPSTREAM-riscv-dts-spacemit-add-LEDs-for-Milk-V-Jupi.patch rename to SPECS/linux-lts/0226-UPSTREAM-riscv-dts-spacemit-add-LEDs-for-Milk-V-Jupi.patch index 7a250b9fd2..0ef10a2c37 100644 --- a/SPECS/linux-lts/0229-UPSTREAM-riscv-dts-spacemit-add-LEDs-for-Milk-V-Jupi.patch +++ b/SPECS/linux-lts/0226-UPSTREAM-riscv-dts-spacemit-add-LEDs-for-Milk-V-Jupi.patch @@ -1,7 +1,7 @@ -From f028688afe776c5820cff9effa08a9558b3e27e7 Mon Sep 17 00:00:00 2001 +From 22e068c1b0db347abe57240b5f4e6aea284b400a Mon Sep 17 00:00:00 2001 From: Aurelien Jarno Date: Thu, 26 Mar 2026 19:35:29 +0100 -Subject: [PATCH 229/467] UPSTREAM: riscv: dts: spacemit: add LEDs for Milk-V +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: spacemit: add LEDs for Milk-V Jupiter board The Milk-V Jupiter board provides support for two LEDs through the front diff --git a/SPECS/linux-lts/0230-UPSTREAM-riscv-dts-spacemit-add-24c04-eeprom-on-Milk.patch b/SPECS/linux-lts/0227-UPSTREAM-riscv-dts-spacemit-add-24c04-eeprom-on-Milk.patch similarity index 92% rename from SPECS/linux-lts/0230-UPSTREAM-riscv-dts-spacemit-add-24c04-eeprom-on-Milk.patch rename to SPECS/linux-lts/0227-UPSTREAM-riscv-dts-spacemit-add-24c04-eeprom-on-Milk.patch index 526c0f8b8d..d1757910da 100644 --- a/SPECS/linux-lts/0230-UPSTREAM-riscv-dts-spacemit-add-24c04-eeprom-on-Milk.patch +++ b/SPECS/linux-lts/0227-UPSTREAM-riscv-dts-spacemit-add-24c04-eeprom-on-Milk.patch @@ -1,7 +1,7 @@ -From 33c5fad73ed5d84207033735a7ebe3c7f3a3401b Mon Sep 17 00:00:00 2001 +From fd0cc30ddc8df5ecd44ae759b0d7ba0d8b5140c5 Mon Sep 17 00:00:00 2001 From: Aurelien Jarno Date: Thu, 26 Mar 2026 19:35:30 +0100 -Subject: [PATCH 230/467] UPSTREAM: riscv: dts: spacemit: add 24c04 eeprom on +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: spacemit: add 24c04 eeprom on Milk-V Jupiter The Milk-V Jupiter board includes a 24c04 eeprom on the i2c2 bus. The diff --git a/SPECS/linux-lts/0231-UPSTREAM-riscv-dts-spacemit-add-i2c-aliases-on-Milk-.patch b/SPECS/linux-lts/0228-UPSTREAM-riscv-dts-spacemit-add-i2c-aliases-on-Milk-.patch similarity index 89% rename from SPECS/linux-lts/0231-UPSTREAM-riscv-dts-spacemit-add-i2c-aliases-on-Milk-.patch rename to SPECS/linux-lts/0228-UPSTREAM-riscv-dts-spacemit-add-i2c-aliases-on-Milk-.patch index bf9e8fcaf8..d6371cd157 100644 --- a/SPECS/linux-lts/0231-UPSTREAM-riscv-dts-spacemit-add-i2c-aliases-on-Milk-.patch +++ b/SPECS/linux-lts/0228-UPSTREAM-riscv-dts-spacemit-add-i2c-aliases-on-Milk-.patch @@ -1,7 +1,7 @@ -From 91f109859aa003662be934a38045864d35c9ba4b Mon Sep 17 00:00:00 2001 +From 82fab0710b5af85d582db37f1628e0efe0783003 Mon Sep 17 00:00:00 2001 From: Aurelien Jarno Date: Thu, 26 Mar 2026 19:35:31 +0100 -Subject: [PATCH 231/467] UPSTREAM: riscv: dts: spacemit: add i2c aliases on +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: spacemit: add i2c aliases on Milk-V Jupiter Add i2c aliases for i2c2 and i2c8 on Milk-V Jupiter. This is useful to diff --git a/SPECS/linux-lts/0232-UPSTREAM-riscv-dts-spacemit-enable-QSPI-and-add-SPI-.patch b/SPECS/linux-lts/0229-UPSTREAM-riscv-dts-spacemit-enable-QSPI-and-add-SPI-.patch similarity index 93% rename from SPECS/linux-lts/0232-UPSTREAM-riscv-dts-spacemit-enable-QSPI-and-add-SPI-.patch rename to SPECS/linux-lts/0229-UPSTREAM-riscv-dts-spacemit-enable-QSPI-and-add-SPI-.patch index f3c36b8033..7da7a14692 100644 --- a/SPECS/linux-lts/0232-UPSTREAM-riscv-dts-spacemit-enable-QSPI-and-add-SPI-.patch +++ b/SPECS/linux-lts/0229-UPSTREAM-riscv-dts-spacemit-enable-QSPI-and-add-SPI-.patch @@ -1,8 +1,8 @@ -From da2e8b5f724f182ad77cb1d9607a06367e832eb8 Mon Sep 17 00:00:00 2001 +From 8cd168c0e1c6761c9dc36dba489883961c115b69 Mon Sep 17 00:00:00 2001 From: Aurelien Jarno Date: Thu, 26 Mar 2026 19:35:32 +0100 -Subject: [PATCH 232/467] UPSTREAM: riscv: dts: spacemit: enable QSPI and add - SPI NOR on Milk-V Jupiter +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: spacemit: enable QSPI and add SPI + NOR on Milk-V Jupiter Add the QSPI controller node for the Milk-V Jupiter board and describe the attached SPI NOR flash (GD25Q64E). diff --git a/SPECS/linux-lts/0233-UPSTREAM-riscv-dts-spacemit-enable-USB-3-ports-on-Mi.patch b/SPECS/linux-lts/0230-UPSTREAM-riscv-dts-spacemit-enable-USB-3-ports-on-Mi.patch similarity index 95% rename from SPECS/linux-lts/0233-UPSTREAM-riscv-dts-spacemit-enable-USB-3-ports-on-Mi.patch rename to SPECS/linux-lts/0230-UPSTREAM-riscv-dts-spacemit-enable-USB-3-ports-on-Mi.patch index e1e2fcd5ce..ab6defa852 100644 --- a/SPECS/linux-lts/0233-UPSTREAM-riscv-dts-spacemit-enable-USB-3-ports-on-Mi.patch +++ b/SPECS/linux-lts/0230-UPSTREAM-riscv-dts-spacemit-enable-USB-3-ports-on-Mi.patch @@ -1,7 +1,7 @@ -From 8618f21bd007f6291498d88d9392d4f15cd10805 Mon Sep 17 00:00:00 2001 +From 7c97859e0dc8e3a13976fbd8fa3512d2a6469e32 Mon Sep 17 00:00:00 2001 From: Aurelien Jarno Date: Thu, 26 Mar 2026 19:35:33 +0100 -Subject: [PATCH 233/467] UPSTREAM: riscv: dts: spacemit: enable USB 3 ports on +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: spacemit: enable USB 3 ports on Milk-V Jupiter Enable the DWC3 USB 3.0 controller (USB#2 port in the K1 datasheet) and diff --git a/SPECS/linux-lts/0234-UPSTREAM-riscv-dts-spacemit-enable-PCIe-ports-on-Mil.patch b/SPECS/linux-lts/0231-UPSTREAM-riscv-dts-spacemit-enable-PCIe-ports-on-Mil.patch similarity index 93% rename from SPECS/linux-lts/0234-UPSTREAM-riscv-dts-spacemit-enable-PCIe-ports-on-Mil.patch rename to SPECS/linux-lts/0231-UPSTREAM-riscv-dts-spacemit-enable-PCIe-ports-on-Mil.patch index 7bf6a68c5f..37c7e74275 100644 --- a/SPECS/linux-lts/0234-UPSTREAM-riscv-dts-spacemit-enable-PCIe-ports-on-Mil.patch +++ b/SPECS/linux-lts/0231-UPSTREAM-riscv-dts-spacemit-enable-PCIe-ports-on-Mil.patch @@ -1,7 +1,7 @@ -From 29c798bc348079c4005d8f1237132733e5fefd2a Mon Sep 17 00:00:00 2001 +From a6af60e5b4b61218cbfe45507b2a9c0740b13741 Mon Sep 17 00:00:00 2001 From: Aurelien Jarno Date: Thu, 26 Mar 2026 19:35:34 +0100 -Subject: [PATCH 234/467] UPSTREAM: riscv: dts: spacemit: enable PCIe ports on +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: spacemit: enable PCIe ports on Milk-V Jupiter Enable the two PCIe controller along with and their associated PHY. They diff --git a/SPECS/linux-lts/0235-UPSTREAM-dt-bindings-i2c-spacemit-k3-Add-compatible.patch b/SPECS/linux-lts/0232-UPSTREAM-dt-bindings-i2c-spacemit-k3-Add-compatible.patch similarity index 89% rename from SPECS/linux-lts/0235-UPSTREAM-dt-bindings-i2c-spacemit-k3-Add-compatible.patch rename to SPECS/linux-lts/0232-UPSTREAM-dt-bindings-i2c-spacemit-k3-Add-compatible.patch index e9b0909fb8..636cc98729 100644 --- a/SPECS/linux-lts/0235-UPSTREAM-dt-bindings-i2c-spacemit-k3-Add-compatible.patch +++ b/SPECS/linux-lts/0232-UPSTREAM-dt-bindings-i2c-spacemit-k3-Add-compatible.patch @@ -1,8 +1,7 @@ -From 06a529a2e71c9d5cfdfe39c8829383f4535447af Mon Sep 17 00:00:00 2001 +From ffb258a6f70ad79ca6c7b0a4c04cd38fbdd33471 Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Wed, 25 Mar 2026 09:49:24 +0000 -Subject: [PATCH 235/467] UPSTREAM: dt-bindings: i2c: spacemit: k3: Add - compatible +Subject: [RUYI PATCH] UPSTREAM: dt-bindings: i2c: spacemit: k3: Add compatible Add a compatible string for the I2C controller found in SpacemiT K3 SoC which use same I2C IP as K1, so make it fallback to K1 compatible. diff --git a/SPECS/linux-lts/0236-UPSTREAM-dts-riscv-spacemit-k3-Add-i2c-nodes.patch b/SPECS/linux-lts/0233-UPSTREAM-dts-riscv-spacemit-k3-Add-i2c-nodes.patch similarity index 97% rename from SPECS/linux-lts/0236-UPSTREAM-dts-riscv-spacemit-k3-Add-i2c-nodes.patch rename to SPECS/linux-lts/0233-UPSTREAM-dts-riscv-spacemit-k3-Add-i2c-nodes.patch index bcae7bdbb6..4fa6b0eb20 100644 --- a/SPECS/linux-lts/0236-UPSTREAM-dts-riscv-spacemit-k3-Add-i2c-nodes.patch +++ b/SPECS/linux-lts/0233-UPSTREAM-dts-riscv-spacemit-k3-Add-i2c-nodes.patch @@ -1,7 +1,7 @@ -From 51e77bd033c67ea1bad41c8dc364dc87af69176a Mon Sep 17 00:00:00 2001 +From 2e5ff84331e9d469cf732e06694632b4d7f0a64e Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Fri, 27 Mar 2026 11:40:40 +0000 -Subject: [PATCH 236/467] UPSTREAM: dts: riscv: spacemit: k3: Add i2c nodes +Subject: [RUYI PATCH] UPSTREAM: dts: riscv: spacemit: k3: Add i2c nodes Populate all I2C devicetree nodes for SpacemiT K3 SoC. The controller of i2c3 is reserved for secure domain, and not available from Linux. The diff --git a/SPECS/linux-lts/0237-UPSTREAM-dts-riscv-spacemit-k3-add-P1-PMIC-regulator.patch b/SPECS/linux-lts/0234-UPSTREAM-dts-riscv-spacemit-k3-add-P1-PMIC-regulator.patch similarity index 97% rename from SPECS/linux-lts/0237-UPSTREAM-dts-riscv-spacemit-k3-add-P1-PMIC-regulator.patch rename to SPECS/linux-lts/0234-UPSTREAM-dts-riscv-spacemit-k3-add-P1-PMIC-regulator.patch index 2dbc249507..fec47cecd6 100644 --- a/SPECS/linux-lts/0237-UPSTREAM-dts-riscv-spacemit-k3-add-P1-PMIC-regulator.patch +++ b/SPECS/linux-lts/0234-UPSTREAM-dts-riscv-spacemit-k3-add-P1-PMIC-regulator.patch @@ -1,7 +1,7 @@ -From 3d90cd2fe817a9d87061b1aaf12ab04d512bb830 Mon Sep 17 00:00:00 2001 +From 7602638398631706b3b851eeb82562691d9fbf20 Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Fri, 27 Mar 2026 11:51:18 +0000 -Subject: [PATCH 237/467] UPSTREAM: dts: riscv: spacemit: k3: add P1 PMIC +Subject: [RUYI PATCH] UPSTREAM: dts: riscv: spacemit: k3: add P1 PMIC regulator tree Add the P1 PMIC's regulator topology tree for pico-itx board. diff --git a/SPECS/linux-lts/0238-UPSTREAM-perf-symbol-Add-RISCV-case-in-get_plt_sizes.patch b/SPECS/linux-lts/0235-UPSTREAM-perf-symbol-Add-RISCV-case-in-get_plt_sizes.patch similarity index 91% rename from SPECS/linux-lts/0238-UPSTREAM-perf-symbol-Add-RISCV-case-in-get_plt_sizes.patch rename to SPECS/linux-lts/0235-UPSTREAM-perf-symbol-Add-RISCV-case-in-get_plt_sizes.patch index 050b3605d2..dc246bac07 100644 --- a/SPECS/linux-lts/0238-UPSTREAM-perf-symbol-Add-RISCV-case-in-get_plt_sizes.patch +++ b/SPECS/linux-lts/0235-UPSTREAM-perf-symbol-Add-RISCV-case-in-get_plt_sizes.patch @@ -1,8 +1,7 @@ -From 648a8870dbad32008ba12e159e37944eb9d7180e Mon Sep 17 00:00:00 2001 +From e2f15b90c20c9acc8b6524640ad61e8dd279261b Mon Sep 17 00:00:00 2001 From: Chen Pei Date: Tue, 17 Mar 2026 11:48:47 +0800 -Subject: [PATCH 238/467] UPSTREAM: perf symbol: Add RISCV case in - get_plt_sizes +Subject: [RUYI PATCH] UPSTREAM: perf symbol: Add RISCV case in get_plt_sizes According to RISC-V psABI specification, the PLT (Program Linkage Table) has the following layout: diff --git a/SPECS/linux-lts/0239-UPSTREAM-riscv-Simplify-assignment-for-UTS_MACHINE.patch b/SPECS/linux-lts/0236-UPSTREAM-riscv-Simplify-assignment-for-UTS_MACHINE.patch similarity index 91% rename from SPECS/linux-lts/0239-UPSTREAM-riscv-Simplify-assignment-for-UTS_MACHINE.patch rename to SPECS/linux-lts/0236-UPSTREAM-riscv-Simplify-assignment-for-UTS_MACHINE.patch index 9fe6fe1315..4135dc8422 100644 --- a/SPECS/linux-lts/0239-UPSTREAM-riscv-Simplify-assignment-for-UTS_MACHINE.patch +++ b/SPECS/linux-lts/0236-UPSTREAM-riscv-Simplify-assignment-for-UTS_MACHINE.patch @@ -1,7 +1,7 @@ -From f61f4c49f48046edb4ce0352be894de34dfcd5a3 Mon Sep 17 00:00:00 2001 +From 88b461165ff138a8bc16b7a3d1540a19c8a3710e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Uwe=20Kleine-K=C3=B6nig?= Date: Sat, 4 Apr 2026 18:42:40 -0600 -Subject: [PATCH 239/467] UPSTREAM: riscv: Simplify assignment for UTS_MACHINE +Subject: [RUYI PATCH] UPSTREAM: riscv: Simplify assignment for UTS_MACHINE MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit diff --git a/SPECS/linux-lts/0240-UPSTREAM-riscv-increase-COMMAND_LINE_SIZE-value-to-2.patch b/SPECS/linux-lts/0237-UPSTREAM-riscv-increase-COMMAND_LINE_SIZE-value-to-2.patch similarity index 88% rename from SPECS/linux-lts/0240-UPSTREAM-riscv-increase-COMMAND_LINE_SIZE-value-to-2.patch rename to SPECS/linux-lts/0237-UPSTREAM-riscv-increase-COMMAND_LINE_SIZE-value-to-2.patch index 35ec7040c2..c12445faca 100644 --- a/SPECS/linux-lts/0240-UPSTREAM-riscv-increase-COMMAND_LINE_SIZE-value-to-2.patch +++ b/SPECS/linux-lts/0237-UPSTREAM-riscv-increase-COMMAND_LINE_SIZE-value-to-2.patch @@ -1,7 +1,7 @@ -From 3d0d22f6281de4b039180e5e5096041117526be7 Mon Sep 17 00:00:00 2001 +From f64acae7865de9be5e3490b46bc253b9e0d8464e Mon Sep 17 00:00:00 2001 From: Austin Kim Date: Fri, 3 Apr 2026 19:28:47 -0600 -Subject: [PATCH 240/467] UPSTREAM: riscv: increase COMMAND_LINE_SIZE value to +Subject: [RUYI PATCH] UPSTREAM: riscv: increase COMMAND_LINE_SIZE value to 2048 SoC people may send many parameters to configure the drivers via kernel diff --git a/SPECS/linux-lts/0241-UPSTREAM-riscv-acpi-update-FADT-revision-check-to-6..patch b/SPECS/linux-lts/0238-UPSTREAM-riscv-acpi-update-FADT-revision-check-to-6..patch similarity index 93% rename from SPECS/linux-lts/0241-UPSTREAM-riscv-acpi-update-FADT-revision-check-to-6..patch rename to SPECS/linux-lts/0238-UPSTREAM-riscv-acpi-update-FADT-revision-check-to-6..patch index 0a4ec4eaf8..53eb710553 100644 --- a/SPECS/linux-lts/0241-UPSTREAM-riscv-acpi-update-FADT-revision-check-to-6..patch +++ b/SPECS/linux-lts/0238-UPSTREAM-riscv-acpi-update-FADT-revision-check-to-6..patch @@ -1,8 +1,7 @@ -From 40f9fb3f9445f0a2bab1227aad457b443ce8c21f Mon Sep 17 00:00:00 2001 +From 50da2d0c20ed5daeac5e56fc3b173a315118dc29 Mon Sep 17 00:00:00 2001 From: Yufeng Wang Date: Fri, 3 Apr 2026 19:28:47 -0600 -Subject: [PATCH 241/467] UPSTREAM: riscv: acpi: update FADT revision check to - 6.6 +Subject: [RUYI PATCH] UPSTREAM: riscv: acpi: update FADT revision check to 6.6 ACPI 6.6 is required for RISC-V as it introduces RISC-V specific tables such as RHCT (RISC-V Hart Capabilities Table) and diff --git a/SPECS/linux-lts/0242-UPSTREAM-riscv-mm-WARN_ON-for-bad-addresses-in-vmemm.patch b/SPECS/linux-lts/0239-UPSTREAM-riscv-mm-WARN_ON-for-bad-addresses-in-vmemm.patch similarity index 81% rename from SPECS/linux-lts/0242-UPSTREAM-riscv-mm-WARN_ON-for-bad-addresses-in-vmemm.patch rename to SPECS/linux-lts/0239-UPSTREAM-riscv-mm-WARN_ON-for-bad-addresses-in-vmemm.patch index f514478c34..03b0b8232a 100644 --- a/SPECS/linux-lts/0242-UPSTREAM-riscv-mm-WARN_ON-for-bad-addresses-in-vmemm.patch +++ b/SPECS/linux-lts/0239-UPSTREAM-riscv-mm-WARN_ON-for-bad-addresses-in-vmemm.patch @@ -1,7 +1,7 @@ -From a0fb9210411d1e9cf24e0002bf7eab0d439012ce Mon Sep 17 00:00:00 2001 +From 527bf47071201cafeeb74ad89ac94e5d61eb3691 Mon Sep 17 00:00:00 2001 From: Vivian Wang Date: Fri, 3 Apr 2026 19:28:47 -0600 -Subject: [PATCH 242/467] UPSTREAM: riscv: mm: WARN_ON() for bad addresses in +Subject: [RUYI PATCH] UPSTREAM: riscv: mm: WARN_ON() for bad addresses in vmemmap_populate() Similarly to the same check in arch/arm64/mm/mmu.c, in @@ -18,10 +18,10 @@ Signed-off-by: Han Gao 1 file changed, 2 insertions(+) diff --git a/arch/riscv/mm/init.c b/arch/riscv/mm/init.c -index d85efe74a4b6..a7d0cde6536b 100644 +index ee40ca01ac66..8f4e7e505906 100644 --- a/arch/riscv/mm/init.c +++ b/arch/riscv/mm/init.c -@@ -1461,6 +1461,8 @@ int __meminit vmemmap_check_pmd(pmd_t *pmdp, int node, +@@ -1486,6 +1486,8 @@ int __meminit vmemmap_check_pmd(pmd_t *pmdp, int node, int __meminit vmemmap_populate(unsigned long start, unsigned long end, int node, struct vmem_altmap *altmap) { diff --git a/SPECS/linux-lts/0243-UPSTREAM-riscv-enable-HAVE_IOREMAP_PROT.patch b/SPECS/linux-lts/0240-UPSTREAM-riscv-enable-HAVE_IOREMAP_PROT.patch similarity index 93% rename from SPECS/linux-lts/0243-UPSTREAM-riscv-enable-HAVE_IOREMAP_PROT.patch rename to SPECS/linux-lts/0240-UPSTREAM-riscv-enable-HAVE_IOREMAP_PROT.patch index f3074ab38b..d8e8ef3623 100644 --- a/SPECS/linux-lts/0243-UPSTREAM-riscv-enable-HAVE_IOREMAP_PROT.patch +++ b/SPECS/linux-lts/0240-UPSTREAM-riscv-enable-HAVE_IOREMAP_PROT.patch @@ -1,7 +1,7 @@ -From 91dae5c9d0216f41e065a75837f17dc7e99d545e Mon Sep 17 00:00:00 2001 +From 21223e48716232b52be9719f8d4361bc9f82af59 Mon Sep 17 00:00:00 2001 From: Yufeng Wang Date: Fri, 3 Apr 2026 19:28:47 -0600 -Subject: [PATCH 243/467] UPSTREAM: riscv: enable HAVE_IOREMAP_PROT +Subject: [RUYI PATCH] UPSTREAM: riscv: enable HAVE_IOREMAP_PROT RISC-V has implemented pte_pgprot() and selects GENERIC_IOREMAP, which provides a generic ioremap_prot() implementation. Enable diff --git a/SPECS/linux-lts/0244-UPSTREAM-string-provide-strends.patch b/SPECS/linux-lts/0241-UPSTREAM-string-provide-strends.patch similarity index 95% rename from SPECS/linux-lts/0244-UPSTREAM-string-provide-strends.patch rename to SPECS/linux-lts/0241-UPSTREAM-string-provide-strends.patch index a94ffb8092..1647db78f8 100644 --- a/SPECS/linux-lts/0244-UPSTREAM-string-provide-strends.patch +++ b/SPECS/linux-lts/0241-UPSTREAM-string-provide-strends.patch @@ -1,7 +1,7 @@ -From 51707af489a55246eec9dc64f9b85831e0fd4706 Mon Sep 17 00:00:00 2001 +From 94b2dc80662df98e75c5893573a98c832aa7b104 Mon Sep 17 00:00:00 2001 From: Bartosz Golaszewski Date: Wed, 12 Nov 2025 14:55:30 +0100 -Subject: [PATCH 244/467] UPSTREAM: string: provide strends() +Subject: [RUYI PATCH] UPSTREAM: string: provide strends() Implement a function for checking if a string ends with a different string and add its kunit test cases. diff --git a/SPECS/linux-lts/0245-UPSTREAM-lib-string_kunit-add-correctness-test-for-s.patch b/SPECS/linux-lts/0242-UPSTREAM-lib-string_kunit-add-correctness-test-for-s.patch similarity index 95% rename from SPECS/linux-lts/0245-UPSTREAM-lib-string_kunit-add-correctness-test-for-s.patch rename to SPECS/linux-lts/0242-UPSTREAM-lib-string_kunit-add-correctness-test-for-s.patch index 97e4def775..98ac349bfa 100644 --- a/SPECS/linux-lts/0245-UPSTREAM-lib-string_kunit-add-correctness-test-for-s.patch +++ b/SPECS/linux-lts/0242-UPSTREAM-lib-string_kunit-add-correctness-test-for-s.patch @@ -1,7 +1,7 @@ -From a0ea3d9866b712d229e263440d46912dd67c4437 Mon Sep 17 00:00:00 2001 +From 79e2cd89898e36fdb3d1714bbd7988fb286c84c7 Mon Sep 17 00:00:00 2001 From: Feng Jiang Date: Fri, 3 Apr 2026 19:28:47 -0600 -Subject: [PATCH 245/467] UPSTREAM: lib/string_kunit: add correctness test for +Subject: [RUYI PATCH] UPSTREAM: lib/string_kunit: add correctness test for strlen() Add a KUnit test for strlen() to verify correctness across diff --git a/SPECS/linux-lts/0246-UPSTREAM-lib-string_kunit-add-correctness-test-for-s.patch b/SPECS/linux-lts/0243-UPSTREAM-lib-string_kunit-add-correctness-test-for-s.patch similarity index 94% rename from SPECS/linux-lts/0246-UPSTREAM-lib-string_kunit-add-correctness-test-for-s.patch rename to SPECS/linux-lts/0243-UPSTREAM-lib-string_kunit-add-correctness-test-for-s.patch index b070b96048..cf2e77deb8 100644 --- a/SPECS/linux-lts/0246-UPSTREAM-lib-string_kunit-add-correctness-test-for-s.patch +++ b/SPECS/linux-lts/0243-UPSTREAM-lib-string_kunit-add-correctness-test-for-s.patch @@ -1,7 +1,7 @@ -From 7d205ff17788553db4370fc8017670aeff19fe77 Mon Sep 17 00:00:00 2001 +From 902bdb8bb0a0f55816f458cf513b52da08e503fb Mon Sep 17 00:00:00 2001 From: Feng Jiang Date: Fri, 3 Apr 2026 19:28:47 -0600 -Subject: [PATCH 246/467] UPSTREAM: lib/string_kunit: add correctness test for +Subject: [RUYI PATCH] UPSTREAM: lib/string_kunit: add correctness test for strnlen() Add a KUnit test for strnlen() to verify correctness across diff --git a/SPECS/linux-lts/0247-UPSTREAM-lib-string_kunit-add-correctness-test-for-s.patch b/SPECS/linux-lts/0244-UPSTREAM-lib-string_kunit-add-correctness-test-for-s.patch similarity index 93% rename from SPECS/linux-lts/0247-UPSTREAM-lib-string_kunit-add-correctness-test-for-s.patch rename to SPECS/linux-lts/0244-UPSTREAM-lib-string_kunit-add-correctness-test-for-s.patch index ce8b0f8a5b..b303a23ddc 100644 --- a/SPECS/linux-lts/0247-UPSTREAM-lib-string_kunit-add-correctness-test-for-s.patch +++ b/SPECS/linux-lts/0244-UPSTREAM-lib-string_kunit-add-correctness-test-for-s.patch @@ -1,7 +1,7 @@ -From 0a17629f949ff3604a42f6cbe6c0609a51050633 Mon Sep 17 00:00:00 2001 +From a35e09fa31b7cc0d163e681b2acef99edf7f626b Mon Sep 17 00:00:00 2001 From: Feng Jiang Date: Fri, 3 Apr 2026 19:28:47 -0600 -Subject: [PATCH 247/467] UPSTREAM: lib/string_kunit: add correctness test for +Subject: [RUYI PATCH] UPSTREAM: lib/string_kunit: add correctness test for strrchr() Add a KUnit test for strrchr() to verify correctness across diff --git a/SPECS/linux-lts/0248-UPSTREAM-lib-string_kunit-add-performance-benchmark-.patch b/SPECS/linux-lts/0245-UPSTREAM-lib-string_kunit-add-performance-benchmark-.patch similarity index 98% rename from SPECS/linux-lts/0248-UPSTREAM-lib-string_kunit-add-performance-benchmark-.patch rename to SPECS/linux-lts/0245-UPSTREAM-lib-string_kunit-add-performance-benchmark-.patch index 52ac6d1a18..8ed6b57c83 100644 --- a/SPECS/linux-lts/0248-UPSTREAM-lib-string_kunit-add-performance-benchmark-.patch +++ b/SPECS/linux-lts/0245-UPSTREAM-lib-string_kunit-add-performance-benchmark-.patch @@ -1,7 +1,7 @@ -From 1b38e17c75d77d3173ec154a74233c0c19c8f8f1 Mon Sep 17 00:00:00 2001 +From 3157c725cd7a5774a6e772aee7c537b7bc65a90e Mon Sep 17 00:00:00 2001 From: Feng Jiang Date: Fri, 3 Apr 2026 19:28:47 -0600 -Subject: [PATCH 248/467] UPSTREAM: lib/string_kunit: add performance benchmark +Subject: [RUYI PATCH] UPSTREAM: lib/string_kunit: add performance benchmark for strlen() Introduce a benchmarking framework to the string_kunit test suite to diff --git a/SPECS/linux-lts/0249-UPSTREAM-lib-string_kunit-extend-benchmarks-to-strnl.patch b/SPECS/linux-lts/0246-UPSTREAM-lib-string_kunit-extend-benchmarks-to-strnl.patch similarity index 93% rename from SPECS/linux-lts/0249-UPSTREAM-lib-string_kunit-extend-benchmarks-to-strnl.patch rename to SPECS/linux-lts/0246-UPSTREAM-lib-string_kunit-extend-benchmarks-to-strnl.patch index dfda66cc5e..8a4b47a942 100644 --- a/SPECS/linux-lts/0249-UPSTREAM-lib-string_kunit-extend-benchmarks-to-strnl.patch +++ b/SPECS/linux-lts/0246-UPSTREAM-lib-string_kunit-extend-benchmarks-to-strnl.patch @@ -1,7 +1,7 @@ -From d0124b59c28b2a764db245d8be9fc383ac7e7933 Mon Sep 17 00:00:00 2001 +From d4f3b19d0ba9850b6052f6adfda81bdd61650371 Mon Sep 17 00:00:00 2001 From: Feng Jiang Date: Fri, 3 Apr 2026 19:28:47 -0600 -Subject: [PATCH 249/467] UPSTREAM: lib/string_kunit: extend benchmarks to +Subject: [RUYI PATCH] UPSTREAM: lib/string_kunit: extend benchmarks to strnlen() and chr searches Extend the string benchmarking suite to include strnlen(), strchr(), diff --git a/SPECS/linux-lts/0250-UPSTREAM-riscv-lib-add-strnlen-implementation.patch b/SPECS/linux-lts/0247-UPSTREAM-riscv-lib-add-strnlen-implementation.patch similarity index 97% rename from SPECS/linux-lts/0250-UPSTREAM-riscv-lib-add-strnlen-implementation.patch rename to SPECS/linux-lts/0247-UPSTREAM-riscv-lib-add-strnlen-implementation.patch index c5b7f485ce..da2b0c30de 100644 --- a/SPECS/linux-lts/0250-UPSTREAM-riscv-lib-add-strnlen-implementation.patch +++ b/SPECS/linux-lts/0247-UPSTREAM-riscv-lib-add-strnlen-implementation.patch @@ -1,7 +1,7 @@ -From c90c1b627d1a7bfa2d85045606e6db6a1224dbe2 Mon Sep 17 00:00:00 2001 +From d7fce76a1ce208fab598335c38ae8071bb4d893d Mon Sep 17 00:00:00 2001 From: Feng Jiang Date: Fri, 3 Apr 2026 19:28:47 -0600 -Subject: [PATCH 250/467] UPSTREAM: riscv: lib: add strnlen() implementation +Subject: [RUYI PATCH] UPSTREAM: riscv: lib: add strnlen() implementation Add an optimized strnlen() implementation for RISC-V. This version includes a generic optimization and a Zbb-powered optimization using diff --git a/SPECS/linux-lts/0251-UPSTREAM-riscv-lib-add-strchr-implementation.patch b/SPECS/linux-lts/0248-UPSTREAM-riscv-lib-add-strchr-implementation.patch similarity index 96% rename from SPECS/linux-lts/0251-UPSTREAM-riscv-lib-add-strchr-implementation.patch rename to SPECS/linux-lts/0248-UPSTREAM-riscv-lib-add-strchr-implementation.patch index 11242e7cf1..82e732ebcb 100644 --- a/SPECS/linux-lts/0251-UPSTREAM-riscv-lib-add-strchr-implementation.patch +++ b/SPECS/linux-lts/0248-UPSTREAM-riscv-lib-add-strchr-implementation.patch @@ -1,7 +1,7 @@ -From d70c03b9f8f7b1f45dfa6d3b248cd26e173574bf Mon Sep 17 00:00:00 2001 +From 2f4c1bb28db6a3485cd348d5484cabeee5afb672 Mon Sep 17 00:00:00 2001 From: Feng Jiang Date: Fri, 3 Apr 2026 19:28:47 -0600 -Subject: [PATCH 251/467] UPSTREAM: riscv: lib: add strchr() implementation +Subject: [RUYI PATCH] UPSTREAM: riscv: lib: add strchr() implementation Add an assembly implementation of strchr() for RISC-V. diff --git a/SPECS/linux-lts/0252-UPSTREAM-riscv-lib-add-strrchr-implementation.patch b/SPECS/linux-lts/0249-UPSTREAM-riscv-lib-add-strrchr-implementation.patch similarity index 96% rename from SPECS/linux-lts/0252-UPSTREAM-riscv-lib-add-strrchr-implementation.patch rename to SPECS/linux-lts/0249-UPSTREAM-riscv-lib-add-strrchr-implementation.patch index bbb8905d30..4a1a619b26 100644 --- a/SPECS/linux-lts/0252-UPSTREAM-riscv-lib-add-strrchr-implementation.patch +++ b/SPECS/linux-lts/0249-UPSTREAM-riscv-lib-add-strrchr-implementation.patch @@ -1,7 +1,7 @@ -From d06ce21328bc140c9a983924c52277ee37808254 Mon Sep 17 00:00:00 2001 +From 7a1bef3a9306a7c4cd45d233b4965356c86f23d4 Mon Sep 17 00:00:00 2001 From: Feng Jiang Date: Fri, 3 Apr 2026 19:28:47 -0600 -Subject: [PATCH 252/467] UPSTREAM: riscv: lib: add strrchr() implementation +Subject: [RUYI PATCH] UPSTREAM: riscv: lib: add strrchr() implementation Add an assembly implementation of strrchr() for RISC-V. diff --git a/SPECS/linux-lts/0253-UPSTREAM-PCI-dwc-Add-register-and-bitfield-definitio.patch b/SPECS/linux-lts/0250-UPSTREAM-PCI-dwc-Add-register-and-bitfield-definitio.patch similarity index 92% rename from SPECS/linux-lts/0253-UPSTREAM-PCI-dwc-Add-register-and-bitfield-definitio.patch rename to SPECS/linux-lts/0250-UPSTREAM-PCI-dwc-Add-register-and-bitfield-definitio.patch index 139a305f3e..a11233ee84 100644 --- a/SPECS/linux-lts/0253-UPSTREAM-PCI-dwc-Add-register-and-bitfield-definitio.patch +++ b/SPECS/linux-lts/0250-UPSTREAM-PCI-dwc-Add-register-and-bitfield-definitio.patch @@ -1,7 +1,7 @@ -From 8d6883e557feae1df51a14f0a3008c5104978a75 Mon Sep 17 00:00:00 2001 +From 0bd7f056d6569dc61e0cc65e7eaab3c9d9d1e879 Mon Sep 17 00:00:00 2001 From: Vincent Guittot Date: Fri, 21 Nov 2025 17:49:18 +0100 -Subject: [PATCH 253/467] UPSTREAM: PCI: dwc: Add register and bitfield +Subject: [RUYI PATCH] UPSTREAM: PCI: dwc: Add register and bitfield definitions Add register and bitfield definitions: diff --git a/SPECS/linux-lts/0254-UPSTREAM-ASoC-spacemit-move-hw-constraints-from-hw_p.patch b/SPECS/linux-lts/0251-UPSTREAM-ASoC-spacemit-move-hw-constraints-from-hw_p.patch similarity index 96% rename from SPECS/linux-lts/0254-UPSTREAM-ASoC-spacemit-move-hw-constraints-from-hw_p.patch rename to SPECS/linux-lts/0251-UPSTREAM-ASoC-spacemit-move-hw-constraints-from-hw_p.patch index 802aad400b..9b9454daa8 100644 --- a/SPECS/linux-lts/0254-UPSTREAM-ASoC-spacemit-move-hw-constraints-from-hw_p.patch +++ b/SPECS/linux-lts/0251-UPSTREAM-ASoC-spacemit-move-hw-constraints-from-hw_p.patch @@ -1,7 +1,7 @@ -From 0b98034970a41ebd870d94873762f355265308b5 Mon Sep 17 00:00:00 2001 +From 22c3a93bf61eb47e3b47fd1cbfb9bed064b5de81 Mon Sep 17 00:00:00 2001 From: Troy Mitchell Date: Wed, 29 Apr 2026 09:38:47 +0800 -Subject: [PATCH 254/467] UPSTREAM: ASoC: spacemit: move hw constraints from +Subject: [RUYI PATCH] UPSTREAM: ASoC: spacemit: move hw constraints from hw_params to startup Hardware constraints should be applied in the startup callback rather diff --git a/SPECS/linux-lts/0255-UPSTREAM-ASoC-spacemit-adjust-FIFO-trigger-threshold.patch b/SPECS/linux-lts/0252-UPSTREAM-ASoC-spacemit-adjust-FIFO-trigger-threshold.patch similarity index 89% rename from SPECS/linux-lts/0255-UPSTREAM-ASoC-spacemit-adjust-FIFO-trigger-threshold.patch rename to SPECS/linux-lts/0252-UPSTREAM-ASoC-spacemit-adjust-FIFO-trigger-threshold.patch index 1e9bf3e407..a235db3255 100644 --- a/SPECS/linux-lts/0255-UPSTREAM-ASoC-spacemit-adjust-FIFO-trigger-threshold.patch +++ b/SPECS/linux-lts/0252-UPSTREAM-ASoC-spacemit-adjust-FIFO-trigger-threshold.patch @@ -1,8 +1,8 @@ -From ef5e4c0292bbb0c8ac2209001b6adcdb0ee1fc37 Mon Sep 17 00:00:00 2001 +From b81d7e8285e49c07fa31cdb599fdeedddec0fb3c Mon Sep 17 00:00:00 2001 From: Troy Mitchell Date: Wed, 29 Apr 2026 09:38:48 +0800 -Subject: [PATCH 255/467] UPSTREAM: ASoC: spacemit: adjust FIFO trigger - threshold to half FIFO size +Subject: [RUYI PATCH] UPSTREAM: ASoC: spacemit: adjust FIFO trigger threshold + to half FIFO size Set both TX and RX FIFO trigger thresholds (TFT/RFT) to 0xF (half of the 32-entry FIFO) instead of 5. This provides better DMA efficiency diff --git a/SPECS/linux-lts/0256-UPSTREAM-dt-bindings-reset-thead-th1520-reset-Remove.patch b/SPECS/linux-lts/0253-UPSTREAM-dt-bindings-reset-thead-th1520-reset-Remove.patch similarity index 89% rename from SPECS/linux-lts/0256-UPSTREAM-dt-bindings-reset-thead-th1520-reset-Remove.patch rename to SPECS/linux-lts/0253-UPSTREAM-dt-bindings-reset-thead-th1520-reset-Remove.patch index 069e0e55c6..dbc1d4ed46 100644 --- a/SPECS/linux-lts/0256-UPSTREAM-dt-bindings-reset-thead-th1520-reset-Remove.patch +++ b/SPECS/linux-lts/0253-UPSTREAM-dt-bindings-reset-thead-th1520-reset-Remove.patch @@ -1,8 +1,8 @@ -From 70c964d224ef054526b245c614230ab634b0bde7 Mon Sep 17 00:00:00 2001 +From 42cd6879691919aaf3200276ed71a8c7f081bf8f Mon Sep 17 00:00:00 2001 From: Yao Zi Date: Tue, 14 Oct 2025 13:10:28 +0000 -Subject: [PATCH 256/467] UPSTREAM: dt-bindings: reset: thead,th1520-reset: - Remove non-VO-subsystem resets +Subject: [RUYI PATCH] UPSTREAM: dt-bindings: reset: thead,th1520-reset: Remove + non-VO-subsystem resets Registers in control of TH1520_RESET_ID_{NPU,WDT0,WDT1} belong to AP reset controller, not the VO one which is documented as diff --git a/SPECS/linux-lts/0257-UPSTREAM-dt-bindings-reset-thead-th1520-reset-Add-co.patch b/SPECS/linux-lts/0254-UPSTREAM-dt-bindings-reset-thead-th1520-reset-Add-co.patch similarity index 98% rename from SPECS/linux-lts/0257-UPSTREAM-dt-bindings-reset-thead-th1520-reset-Add-co.patch rename to SPECS/linux-lts/0254-UPSTREAM-dt-bindings-reset-thead-th1520-reset-Add-co.patch index 1cbde5c75c..20d4cb4ce7 100644 --- a/SPECS/linux-lts/0257-UPSTREAM-dt-bindings-reset-thead-th1520-reset-Add-co.patch +++ b/SPECS/linux-lts/0254-UPSTREAM-dt-bindings-reset-thead-th1520-reset-Add-co.patch @@ -1,7 +1,7 @@ -From 184187292f9161178cb3c60ba9bc5998781517ec Mon Sep 17 00:00:00 2001 +From 729fb80f40c116319af3f00f273cb56718995e42 Mon Sep 17 00:00:00 2001 From: Yao Zi Date: Tue, 14 Oct 2025 13:10:29 +0000 -Subject: [PATCH 257/467] UPSTREAM: dt-bindings: reset: thead,th1520-reset: Add +Subject: [RUYI PATCH] UPSTREAM: dt-bindings: reset: thead,th1520-reset: Add controllers for more subsys TH1520 SoC is divided into several subsystems, most of them have diff --git a/SPECS/linux-lts/0258-UPSTREAM-reset-th1520-Prepare-for-supporting-multipl.patch b/SPECS/linux-lts/0255-UPSTREAM-reset-th1520-Prepare-for-supporting-multipl.patch similarity index 95% rename from SPECS/linux-lts/0258-UPSTREAM-reset-th1520-Prepare-for-supporting-multipl.patch rename to SPECS/linux-lts/0255-UPSTREAM-reset-th1520-Prepare-for-supporting-multipl.patch index 350dce55d4..46e0cf3948 100644 --- a/SPECS/linux-lts/0258-UPSTREAM-reset-th1520-Prepare-for-supporting-multipl.patch +++ b/SPECS/linux-lts/0255-UPSTREAM-reset-th1520-Prepare-for-supporting-multipl.patch @@ -1,8 +1,8 @@ -From db3838d594378909391879da3362ce86ec33cc81 Mon Sep 17 00:00:00 2001 +From 822ec8590fdd9c6e8152814eca6d64a56660f962 Mon Sep 17 00:00:00 2001 From: Yao Zi Date: Tue, 14 Oct 2025 13:10:30 +0000 -Subject: [PATCH 258/467] UPSTREAM: reset: th1520: Prepare for supporting - multiple controllers +Subject: [RUYI PATCH] UPSTREAM: reset: th1520: Prepare for supporting multiple + controllers TH1520 SoC is divided into several subsystems, shipping distinct reset controllers with similar control logic. Let's make reset signal mapping diff --git a/SPECS/linux-lts/0259-UPSTREAM-reset-th1520-Support-reset-controllers-in-m.patch b/SPECS/linux-lts/0256-UPSTREAM-reset-th1520-Support-reset-controllers-in-m.patch similarity index 99% rename from SPECS/linux-lts/0259-UPSTREAM-reset-th1520-Support-reset-controllers-in-m.patch rename to SPECS/linux-lts/0256-UPSTREAM-reset-th1520-Support-reset-controllers-in-m.patch index 6e02a295c5..7a6c0e9f96 100644 --- a/SPECS/linux-lts/0259-UPSTREAM-reset-th1520-Support-reset-controllers-in-m.patch +++ b/SPECS/linux-lts/0256-UPSTREAM-reset-th1520-Support-reset-controllers-in-m.patch @@ -1,7 +1,7 @@ -From 8109a7f9d10f1d9ce7e0ee5a3f63993d591d8673 Mon Sep 17 00:00:00 2001 +From 34aaa4adc6171c1a972e81edbb9861406d7dfa83 Mon Sep 17 00:00:00 2001 From: Yao Zi Date: Tue, 14 Oct 2025 13:10:31 +0000 -Subject: [PATCH 259/467] UPSTREAM: reset: th1520: Support reset controllers in +Subject: [RUYI PATCH] UPSTREAM: reset: th1520: Support reset controllers in more subsystems Introduce reset controllers for AP, MISC, VI, VP and DSP subsystems and diff --git a/SPECS/linux-lts/0260-UPSTREAM-riscv-dts-thead-Add-reset-controllers-of-mo.patch b/SPECS/linux-lts/0257-UPSTREAM-riscv-dts-thead-Add-reset-controllers-of-mo.patch similarity index 94% rename from SPECS/linux-lts/0260-UPSTREAM-riscv-dts-thead-Add-reset-controllers-of-mo.patch rename to SPECS/linux-lts/0257-UPSTREAM-riscv-dts-thead-Add-reset-controllers-of-mo.patch index ebe12f51cf..0509d7a26d 100644 --- a/SPECS/linux-lts/0260-UPSTREAM-riscv-dts-thead-Add-reset-controllers-of-mo.patch +++ b/SPECS/linux-lts/0257-UPSTREAM-riscv-dts-thead-Add-reset-controllers-of-mo.patch @@ -1,7 +1,7 @@ -From 58993e46afb677069983e73a6be1ea0562b65730 Mon Sep 17 00:00:00 2001 +From 9edafc5f3980e8fcb1a7a18a54466898f1279c14 Mon Sep 17 00:00:00 2001 From: Yao Zi Date: Tue, 14 Oct 2025 13:10:32 +0000 -Subject: [PATCH 260/467] UPSTREAM: riscv: dts: thead: Add reset controllers of +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: thead: Add reset controllers of more subsystems for TH1520 Describe reset controllers for VI, MISC, AP, DSP and AO subsystems. The diff --git a/SPECS/linux-lts/0261-UPSTREAM-clk-spacemit-k3-mark-top_dclk-as-CLK_IS_CRI.patch b/SPECS/linux-lts/0258-UPSTREAM-clk-spacemit-k3-mark-top_dclk-as-CLK_IS_CRI.patch similarity index 90% rename from SPECS/linux-lts/0261-UPSTREAM-clk-spacemit-k3-mark-top_dclk-as-CLK_IS_CRI.patch rename to SPECS/linux-lts/0258-UPSTREAM-clk-spacemit-k3-mark-top_dclk-as-CLK_IS_CRI.patch index 7b49003d10..983dd64913 100644 --- a/SPECS/linux-lts/0261-UPSTREAM-clk-spacemit-k3-mark-top_dclk-as-CLK_IS_CRI.patch +++ b/SPECS/linux-lts/0258-UPSTREAM-clk-spacemit-k3-mark-top_dclk-as-CLK_IS_CRI.patch @@ -1,7 +1,7 @@ -From 15b0da3632a0e43073d2d2875332dc913c17ce30 Mon Sep 17 00:00:00 2001 +From 5f50d2a328f7b2daa106bafdb1d4a794f52fbdb4 Mon Sep 17 00:00:00 2001 From: Troy Mitchell Date: Fri, 24 Apr 2026 16:20:32 +0800 -Subject: [PATCH 261/467] UPSTREAM: clk: spacemit: k3: mark top_dclk as +Subject: [RUYI PATCH] UPSTREAM: clk: spacemit: k3: mark top_dclk as CLK_IS_CRITICAL top_dclk is the DDR bus clock. If it is gated by clk_disable_unused, diff --git a/SPECS/linux-lts/0262-UPSTREAM-ASoC-spacemit-fix-RX-DMA-params-not-set-whe.patch b/SPECS/linux-lts/0259-UPSTREAM-ASoC-spacemit-fix-RX-DMA-params-not-set-whe.patch similarity index 91% rename from SPECS/linux-lts/0262-UPSTREAM-ASoC-spacemit-fix-RX-DMA-params-not-set-whe.patch rename to SPECS/linux-lts/0259-UPSTREAM-ASoC-spacemit-fix-RX-DMA-params-not-set-whe.patch index 3d3549d028..b11d06885a 100644 --- a/SPECS/linux-lts/0262-UPSTREAM-ASoC-spacemit-fix-RX-DMA-params-not-set-whe.patch +++ b/SPECS/linux-lts/0259-UPSTREAM-ASoC-spacemit-fix-RX-DMA-params-not-set-whe.patch @@ -1,8 +1,8 @@ -From d025cd979cf997c3b4e7096ac8dddcdd81e4c90c Mon Sep 17 00:00:00 2001 +From a7739f1ea5fb20b796b4b1d3758fd44635a40ea9 Mon Sep 17 00:00:00 2001 From: Troy Mitchell Date: Wed, 29 Apr 2026 17:00:50 +0800 -Subject: [PATCH 262/467] UPSTREAM: ASoC: spacemit: fix RX DMA params not set - when TX is running +Subject: [RUYI PATCH] UPSTREAM: ASoC: spacemit: fix RX DMA params not set when + TX is running When TX is already running (SSCR_SSE is set), the hw_params callback returns early before setting up DMA parameters for the RX stream. This diff --git a/SPECS/linux-lts/0263-UPSTREAM-i2c-spacemit-drop-useless-spaces.patch b/SPECS/linux-lts/0260-UPSTREAM-i2c-spacemit-drop-useless-spaces.patch similarity index 91% rename from SPECS/linux-lts/0263-UPSTREAM-i2c-spacemit-drop-useless-spaces.patch rename to SPECS/linux-lts/0260-UPSTREAM-i2c-spacemit-drop-useless-spaces.patch index 8c37a3b093..23a5e1bf51 100644 --- a/SPECS/linux-lts/0263-UPSTREAM-i2c-spacemit-drop-useless-spaces.patch +++ b/SPECS/linux-lts/0260-UPSTREAM-i2c-spacemit-drop-useless-spaces.patch @@ -1,7 +1,7 @@ -From 695a3cc0b23ff691c0498a95c87551886e34dd5e Mon Sep 17 00:00:00 2001 +From 2c946683705fc6706119c588fd5499c0c91b2369 Mon Sep 17 00:00:00 2001 From: Troy Mitchell Date: Fri, 26 Dec 2025 16:31:59 +0800 -Subject: [PATCH 263/467] UPSTREAM: i2c: spacemit: drop useless spaces +Subject: [RUYI PATCH] UPSTREAM: i2c: spacemit: drop useless spaces Previously, the I2C driver had an extra leading space in column 0 of included header lines. This commit removes the redundant whitespace. diff --git a/SPECS/linux-lts/0264-UPSTREAM-clk-at91-pmc-undef-field_-get-prep-before-d.patch b/SPECS/linux-lts/0261-UPSTREAM-clk-at91-pmc-undef-field_-get-prep-before-d.patch similarity index 90% rename from SPECS/linux-lts/0264-UPSTREAM-clk-at91-pmc-undef-field_-get-prep-before-d.patch rename to SPECS/linux-lts/0261-UPSTREAM-clk-at91-pmc-undef-field_-get-prep-before-d.patch index 0936955312..dbb5d3dfe0 100644 --- a/SPECS/linux-lts/0264-UPSTREAM-clk-at91-pmc-undef-field_-get-prep-before-d.patch +++ b/SPECS/linux-lts/0261-UPSTREAM-clk-at91-pmc-undef-field_-get-prep-before-d.patch @@ -1,7 +1,7 @@ -From 03331389d49d55c643b7b13c9dcfefff41959a64 Mon Sep 17 00:00:00 2001 +From fa80698856016bcd983f8ac31a38e4f108170879 Mon Sep 17 00:00:00 2001 From: Geert Uytterhoeven Date: Thu, 6 Nov 2025 14:33:49 +0100 -Subject: [PATCH 264/467] UPSTREAM: clk: at91: pmc: #undef field_{get,prep}() +Subject: [RUYI PATCH] UPSTREAM: clk: at91: pmc: #undef field_{get,prep}() before definition Prepare for the advent of globally available common field_get() and diff --git a/SPECS/linux-lts/0265-UPSTREAM-crypto-qat-undef-field_get-before-local-def.patch b/SPECS/linux-lts/0262-UPSTREAM-crypto-qat-undef-field_get-before-local-def.patch similarity index 89% rename from SPECS/linux-lts/0265-UPSTREAM-crypto-qat-undef-field_get-before-local-def.patch rename to SPECS/linux-lts/0262-UPSTREAM-crypto-qat-undef-field_get-before-local-def.patch index 1b6177367f..28c2c8a5db 100644 --- a/SPECS/linux-lts/0265-UPSTREAM-crypto-qat-undef-field_get-before-local-def.patch +++ b/SPECS/linux-lts/0262-UPSTREAM-crypto-qat-undef-field_get-before-local-def.patch @@ -1,8 +1,8 @@ -From 392241b97a7350e89982e3083de87d916d7823fe Mon Sep 17 00:00:00 2001 +From 0443b117c46d5530b02f66cefa36882031ef8c7f Mon Sep 17 00:00:00 2001 From: Geert Uytterhoeven Date: Thu, 6 Nov 2025 14:33:50 +0100 -Subject: [PATCH 265/467] UPSTREAM: crypto: qat - #undef field_get() before - local definition +Subject: [RUYI PATCH] UPSTREAM: crypto: qat - #undef field_get() before local + definition Prepare for the advent of a globally available common field_get() macro by undefining the symbol before defining a local variant. This prevents diff --git a/SPECS/linux-lts/0266-UPSTREAM-EDAC-ie31200-undef-field_get-before-local-d.patch b/SPECS/linux-lts/0263-UPSTREAM-EDAC-ie31200-undef-field_get-before-local-d.patch similarity index 87% rename from SPECS/linux-lts/0266-UPSTREAM-EDAC-ie31200-undef-field_get-before-local-d.patch rename to SPECS/linux-lts/0263-UPSTREAM-EDAC-ie31200-undef-field_get-before-local-d.patch index d0db5deaca..5bd7f8e544 100644 --- a/SPECS/linux-lts/0266-UPSTREAM-EDAC-ie31200-undef-field_get-before-local-d.patch +++ b/SPECS/linux-lts/0263-UPSTREAM-EDAC-ie31200-undef-field_get-before-local-d.patch @@ -1,8 +1,8 @@ -From 6bfc62473ec56ec0afab933ca32873fe718bc7f2 Mon Sep 17 00:00:00 2001 +From 8d1903d76c78fd4c3f54ccb47a84b23de8c65c5a Mon Sep 17 00:00:00 2001 From: Geert Uytterhoeven Date: Thu, 6 Nov 2025 14:33:51 +0100 -Subject: [PATCH 266/467] UPSTREAM: EDAC/ie31200: #undef field_get() before - local definition +Subject: [RUYI PATCH] UPSTREAM: EDAC/ie31200: #undef field_get() before local + definition Prepare for the advent of a globally available common field_get() macro by undefining the symbol before defining a local variant. This prevents diff --git a/SPECS/linux-lts/0267-UPSTREAM-gpio-aspeed-undef-field_-get-prep-before-lo.patch b/SPECS/linux-lts/0264-UPSTREAM-gpio-aspeed-undef-field_-get-prep-before-lo.patch similarity index 88% rename from SPECS/linux-lts/0267-UPSTREAM-gpio-aspeed-undef-field_-get-prep-before-lo.patch rename to SPECS/linux-lts/0264-UPSTREAM-gpio-aspeed-undef-field_-get-prep-before-lo.patch index 61221b73a7..8d05fa846c 100644 --- a/SPECS/linux-lts/0267-UPSTREAM-gpio-aspeed-undef-field_-get-prep-before-lo.patch +++ b/SPECS/linux-lts/0264-UPSTREAM-gpio-aspeed-undef-field_-get-prep-before-lo.patch @@ -1,8 +1,8 @@ -From 137405298c4f5336043e5c49266ff25e7485e66c Mon Sep 17 00:00:00 2001 +From 8490549e86aef53fa8416d6accaa31283186c10b Mon Sep 17 00:00:00 2001 From: Geert Uytterhoeven Date: Thu, 6 Nov 2025 14:33:52 +0100 -Subject: [PATCH 267/467] UPSTREAM: gpio: aspeed: #undef field_{get,prep}() - before local definition +Subject: [RUYI PATCH] UPSTREAM: gpio: aspeed: #undef field_{get,prep}() before + local definition Prepare for the advent of globally available common field_get() and field_prep() macros by undefining the symbols before defining local diff --git a/SPECS/linux-lts/0268-UPSTREAM-iio-dac-ad3530r-undef-field_prep-before-loc.patch b/SPECS/linux-lts/0265-UPSTREAM-iio-dac-ad3530r-undef-field_prep-before-loc.patch similarity index 87% rename from SPECS/linux-lts/0268-UPSTREAM-iio-dac-ad3530r-undef-field_prep-before-loc.patch rename to SPECS/linux-lts/0265-UPSTREAM-iio-dac-ad3530r-undef-field_prep-before-loc.patch index 85b6350ba6..7595552488 100644 --- a/SPECS/linux-lts/0268-UPSTREAM-iio-dac-ad3530r-undef-field_prep-before-loc.patch +++ b/SPECS/linux-lts/0265-UPSTREAM-iio-dac-ad3530r-undef-field_prep-before-loc.patch @@ -1,8 +1,8 @@ -From fa6237d944a588964130114d731d4b7480bb020d Mon Sep 17 00:00:00 2001 +From 2fda7cbf1f4289cbb26b12faf98ad22cbbf1c6b6 Mon Sep 17 00:00:00 2001 From: Geert Uytterhoeven Date: Thu, 6 Nov 2025 14:33:53 +0100 -Subject: [PATCH 268/467] UPSTREAM: iio: dac: ad3530r: #undef field_prep() - before local definition +Subject: [RUYI PATCH] UPSTREAM: iio: dac: ad3530r: #undef field_prep() before + local definition Prepare for the advent of a globally available common field_prep() macro by undefining the symbol before defining a local variant. This prevents diff --git a/SPECS/linux-lts/0269-UPSTREAM-iio-mlx90614-undef-field_-get-prep-before-l.patch b/SPECS/linux-lts/0266-UPSTREAM-iio-mlx90614-undef-field_-get-prep-before-l.patch similarity index 90% rename from SPECS/linux-lts/0269-UPSTREAM-iio-mlx90614-undef-field_-get-prep-before-l.patch rename to SPECS/linux-lts/0266-UPSTREAM-iio-mlx90614-undef-field_-get-prep-before-l.patch index 98a708ccec..9deec2c78e 100644 --- a/SPECS/linux-lts/0269-UPSTREAM-iio-mlx90614-undef-field_-get-prep-before-l.patch +++ b/SPECS/linux-lts/0266-UPSTREAM-iio-mlx90614-undef-field_-get-prep-before-l.patch @@ -1,7 +1,7 @@ -From 37980b18b9c919ed290f5d9d31476b4b92d67a1d Mon Sep 17 00:00:00 2001 +From a31ca7ca552212b34bea5cb3fcf52759dc2a28a0 Mon Sep 17 00:00:00 2001 From: Geert Uytterhoeven Date: Thu, 6 Nov 2025 14:33:54 +0100 -Subject: [PATCH 269/467] UPSTREAM: iio: mlx90614: #undef field_{get,prep}() +Subject: [RUYI PATCH] UPSTREAM: iio: mlx90614: #undef field_{get,prep}() before local definition Prepare for the advent of globally available common field_get() and diff --git a/SPECS/linux-lts/0270-UPSTREAM-pinctrl-ma35-undef-field_-get-prep-before-l.patch b/SPECS/linux-lts/0267-UPSTREAM-pinctrl-ma35-undef-field_-get-prep-before-l.patch similarity index 90% rename from SPECS/linux-lts/0270-UPSTREAM-pinctrl-ma35-undef-field_-get-prep-before-l.patch rename to SPECS/linux-lts/0267-UPSTREAM-pinctrl-ma35-undef-field_-get-prep-before-l.patch index ead3cb8e47..747d0f1115 100644 --- a/SPECS/linux-lts/0270-UPSTREAM-pinctrl-ma35-undef-field_-get-prep-before-l.patch +++ b/SPECS/linux-lts/0267-UPSTREAM-pinctrl-ma35-undef-field_-get-prep-before-l.patch @@ -1,7 +1,7 @@ -From 5ec1150af9a71fda593306905af42d92479e2e05 Mon Sep 17 00:00:00 2001 +From 92ba8033d4f60d619ebeb8f1f465e68d66004e81 Mon Sep 17 00:00:00 2001 From: Geert Uytterhoeven Date: Thu, 6 Nov 2025 14:33:55 +0100 -Subject: [PATCH 270/467] UPSTREAM: pinctrl: ma35: #undef field_{get,prep}() +Subject: [RUYI PATCH] UPSTREAM: pinctrl: ma35: #undef field_{get,prep}() before local definition Prepare for the advent of globally available common field_get() and diff --git a/SPECS/linux-lts/0271-UPSTREAM-soc-renesas-rz-sysc-undef-field_get-before-.patch b/SPECS/linux-lts/0268-UPSTREAM-soc-renesas-rz-sysc-undef-field_get-before-.patch similarity index 88% rename from SPECS/linux-lts/0271-UPSTREAM-soc-renesas-rz-sysc-undef-field_get-before-.patch rename to SPECS/linux-lts/0268-UPSTREAM-soc-renesas-rz-sysc-undef-field_get-before-.patch index a86fd11345..a8085f2c11 100644 --- a/SPECS/linux-lts/0271-UPSTREAM-soc-renesas-rz-sysc-undef-field_get-before-.patch +++ b/SPECS/linux-lts/0268-UPSTREAM-soc-renesas-rz-sysc-undef-field_get-before-.patch @@ -1,7 +1,7 @@ -From 189ddb8df1658f8de6447a903b626df7170869eb Mon Sep 17 00:00:00 2001 +From f43d3afeb48fc78d1fa9aec7aaaefdf6964e4b6c Mon Sep 17 00:00:00 2001 From: Geert Uytterhoeven Date: Thu, 6 Nov 2025 14:33:56 +0100 -Subject: [PATCH 271/467] UPSTREAM: soc: renesas: rz-sysc: #undef field_get() +Subject: [RUYI PATCH] UPSTREAM: soc: renesas: rz-sysc: #undef field_get() before local definition Prepare for the advent of a globally available common field_get() macro diff --git a/SPECS/linux-lts/0272-UPSTREAM-ALSA-usb-audio-undef-field_-get-prep-before.patch b/SPECS/linux-lts/0269-UPSTREAM-ALSA-usb-audio-undef-field_-get-prep-before.patch similarity index 90% rename from SPECS/linux-lts/0272-UPSTREAM-ALSA-usb-audio-undef-field_-get-prep-before.patch rename to SPECS/linux-lts/0269-UPSTREAM-ALSA-usb-audio-undef-field_-get-prep-before.patch index 42d41b0ad2..ae69b76f2a 100644 --- a/SPECS/linux-lts/0272-UPSTREAM-ALSA-usb-audio-undef-field_-get-prep-before.patch +++ b/SPECS/linux-lts/0269-UPSTREAM-ALSA-usb-audio-undef-field_-get-prep-before.patch @@ -1,7 +1,7 @@ -From 6293531e707d6e8a2b3ad5606ee2ed0e96173a30 Mon Sep 17 00:00:00 2001 +From a743678cdf95c66206f1cefd74ad8f2e3157f680 Mon Sep 17 00:00:00 2001 From: Geert Uytterhoeven Date: Thu, 6 Nov 2025 14:33:57 +0100 -Subject: [PATCH 272/467] UPSTREAM: ALSA: usb-audio: #undef field_{get,prep}() +Subject: [RUYI PATCH] UPSTREAM: ALSA: usb-audio: #undef field_{get,prep}() before local definition Prepare for the advent of globally available common field_get() and diff --git a/SPECS/linux-lts/0273-UPSTREAM-bitfield-Add-less-checking-__FIELD_-GET-PRE.patch b/SPECS/linux-lts/0270-UPSTREAM-bitfield-Add-less-checking-__FIELD_-GET-PRE.patch similarity index 96% rename from SPECS/linux-lts/0273-UPSTREAM-bitfield-Add-less-checking-__FIELD_-GET-PRE.patch rename to SPECS/linux-lts/0270-UPSTREAM-bitfield-Add-less-checking-__FIELD_-GET-PRE.patch index 616035b685..9a78322adf 100644 --- a/SPECS/linux-lts/0273-UPSTREAM-bitfield-Add-less-checking-__FIELD_-GET-PRE.patch +++ b/SPECS/linux-lts/0270-UPSTREAM-bitfield-Add-less-checking-__FIELD_-GET-PRE.patch @@ -1,7 +1,7 @@ -From 61e3d11ff249dabbd495ec0164ee8a1425826bb9 Mon Sep 17 00:00:00 2001 +From c59127e75e8cf8ce74f12bd0fe0bb2574674fbe4 Mon Sep 17 00:00:00 2001 From: Geert Uytterhoeven Date: Thu, 6 Nov 2025 14:34:00 +0100 -Subject: [PATCH 273/467] UPSTREAM: bitfield: Add less-checking +Subject: [RUYI PATCH] UPSTREAM: bitfield: Add less-checking __FIELD_{GET,PREP}() The BUILD_BUG_ON_MSG() check against "~0ull" works only with "unsigned diff --git a/SPECS/linux-lts/0274-UPSTREAM-bitfield-Add-non-constant-field_-prep-get-h.patch b/SPECS/linux-lts/0271-UPSTREAM-bitfield-Add-non-constant-field_-prep-get-h.patch similarity index 96% rename from SPECS/linux-lts/0274-UPSTREAM-bitfield-Add-non-constant-field_-prep-get-h.patch rename to SPECS/linux-lts/0271-UPSTREAM-bitfield-Add-non-constant-field_-prep-get-h.patch index 7c6fbc972f..68212a5dda 100644 --- a/SPECS/linux-lts/0274-UPSTREAM-bitfield-Add-non-constant-field_-prep-get-h.patch +++ b/SPECS/linux-lts/0271-UPSTREAM-bitfield-Add-non-constant-field_-prep-get-h.patch @@ -1,8 +1,8 @@ -From e7e8f944057ad724dd477ac753b3c5b9c451fdcb Mon Sep 17 00:00:00 2001 +From 9508a0e99753a0d15b30509ead3b2314fe5d2572 Mon Sep 17 00:00:00 2001 From: Geert Uytterhoeven Date: Thu, 6 Nov 2025 14:34:01 +0100 -Subject: [PATCH 274/467] UPSTREAM: bitfield: Add non-constant - field_{prep,get}() helpers +Subject: [RUYI PATCH] UPSTREAM: bitfield: Add non-constant field_{prep,get}() + helpers MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit diff --git a/SPECS/linux-lts/0275-UPSTREAM-clk-at91-Convert-to-common-field_-get-prep-.patch b/SPECS/linux-lts/0272-UPSTREAM-clk-at91-Convert-to-common-field_-get-prep-.patch similarity index 93% rename from SPECS/linux-lts/0275-UPSTREAM-clk-at91-Convert-to-common-field_-get-prep-.patch rename to SPECS/linux-lts/0272-UPSTREAM-clk-at91-Convert-to-common-field_-get-prep-.patch index 5b6ce03e18..5f249092c8 100644 --- a/SPECS/linux-lts/0275-UPSTREAM-clk-at91-Convert-to-common-field_-get-prep-.patch +++ b/SPECS/linux-lts/0272-UPSTREAM-clk-at91-Convert-to-common-field_-get-prep-.patch @@ -1,7 +1,7 @@ -From ee4a40739254d7da1f8363a89f53765733b99b28 Mon Sep 17 00:00:00 2001 +From 7ab27d3da88e00fd0367baf7b18fb5484ac4fd65 Mon Sep 17 00:00:00 2001 From: Geert Uytterhoeven Date: Thu, 6 Nov 2025 14:34:02 +0100 -Subject: [PATCH 275/467] UPSTREAM: clk: at91: Convert to common +Subject: [RUYI PATCH] UPSTREAM: clk: at91: Convert to common field_{get,prep}() helpers Drop the driver-specific field_get() and field_prep() macros, in favor diff --git a/SPECS/linux-lts/0276-UPSTREAM-crypto-qat-convert-to-common-field_get-help.patch b/SPECS/linux-lts/0273-UPSTREAM-crypto-qat-convert-to-common-field_get-help.patch similarity index 91% rename from SPECS/linux-lts/0276-UPSTREAM-crypto-qat-convert-to-common-field_get-help.patch rename to SPECS/linux-lts/0273-UPSTREAM-crypto-qat-convert-to-common-field_get-help.patch index 98b12e48bb..ad7e2a30bc 100644 --- a/SPECS/linux-lts/0276-UPSTREAM-crypto-qat-convert-to-common-field_get-help.patch +++ b/SPECS/linux-lts/0273-UPSTREAM-crypto-qat-convert-to-common-field_get-help.patch @@ -1,7 +1,7 @@ -From 7a384b9f65e72b723c2c45d4d331ac597edb9b2a Mon Sep 17 00:00:00 2001 +From e7cc1307805b330990170342cd2e17a4790cae37 Mon Sep 17 00:00:00 2001 From: Geert Uytterhoeven Date: Thu, 6 Nov 2025 14:34:03 +0100 -Subject: [PATCH 276/467] UPSTREAM: crypto: qat - convert to common field_get() +Subject: [RUYI PATCH] UPSTREAM: crypto: qat - convert to common field_get() helper Drop the driver-specific field_get() macro, in favor of the globally diff --git a/SPECS/linux-lts/0277-UPSTREAM-EDAC-ie31200-Convert-to-common-field_get-he.patch b/SPECS/linux-lts/0274-UPSTREAM-EDAC-ie31200-Convert-to-common-field_get-he.patch similarity index 90% rename from SPECS/linux-lts/0277-UPSTREAM-EDAC-ie31200-Convert-to-common-field_get-he.patch rename to SPECS/linux-lts/0274-UPSTREAM-EDAC-ie31200-Convert-to-common-field_get-he.patch index 137572c73d..15800bac47 100644 --- a/SPECS/linux-lts/0277-UPSTREAM-EDAC-ie31200-Convert-to-common-field_get-he.patch +++ b/SPECS/linux-lts/0274-UPSTREAM-EDAC-ie31200-Convert-to-common-field_get-he.patch @@ -1,7 +1,7 @@ -From ce4af8fd49443cd868f89dbe502bbcca49cd05dd Mon Sep 17 00:00:00 2001 +From 435c6fcc72eff501ecd29fabd2fedec939c67aa6 Mon Sep 17 00:00:00 2001 From: Geert Uytterhoeven Date: Thu, 6 Nov 2025 14:34:04 +0100 -Subject: [PATCH 277/467] UPSTREAM: EDAC/ie31200: Convert to common field_get() +Subject: [RUYI PATCH] UPSTREAM: EDAC/ie31200: Convert to common field_get() helper Drop the driver-specific field_get() macro, in favor of the globally diff --git a/SPECS/linux-lts/0278-UPSTREAM-gpio-aspeed-Convert-to-common-field_-get-pr.patch b/SPECS/linux-lts/0275-UPSTREAM-gpio-aspeed-Convert-to-common-field_-get-pr.patch similarity index 91% rename from SPECS/linux-lts/0278-UPSTREAM-gpio-aspeed-Convert-to-common-field_-get-pr.patch rename to SPECS/linux-lts/0275-UPSTREAM-gpio-aspeed-Convert-to-common-field_-get-pr.patch index 071ded89ee..8bbf1a93ec 100644 --- a/SPECS/linux-lts/0278-UPSTREAM-gpio-aspeed-Convert-to-common-field_-get-pr.patch +++ b/SPECS/linux-lts/0275-UPSTREAM-gpio-aspeed-Convert-to-common-field_-get-pr.patch @@ -1,7 +1,7 @@ -From 60aa83cc5e5af809b2fd0c7b94edda8ab4da2eb1 Mon Sep 17 00:00:00 2001 +From d812b182981498ab3054a3c64531710d096f4e8a Mon Sep 17 00:00:00 2001 From: Geert Uytterhoeven Date: Thu, 6 Nov 2025 14:34:05 +0100 -Subject: [PATCH 278/467] UPSTREAM: gpio: aspeed: Convert to common +Subject: [RUYI PATCH] UPSTREAM: gpio: aspeed: Convert to common field_{get,prep}() helpers Drop the driver-specific field_get() and field_prep() macros, in favor diff --git a/SPECS/linux-lts/0279-UPSTREAM-iio-dac-Convert-to-common-field_prep-helper.patch b/SPECS/linux-lts/0276-UPSTREAM-iio-dac-Convert-to-common-field_prep-helper.patch similarity index 88% rename from SPECS/linux-lts/0279-UPSTREAM-iio-dac-Convert-to-common-field_prep-helper.patch rename to SPECS/linux-lts/0276-UPSTREAM-iio-dac-Convert-to-common-field_prep-helper.patch index 36b95a7cc1..0c7f9de5cc 100644 --- a/SPECS/linux-lts/0279-UPSTREAM-iio-dac-Convert-to-common-field_prep-helper.patch +++ b/SPECS/linux-lts/0276-UPSTREAM-iio-dac-Convert-to-common-field_prep-helper.patch @@ -1,7 +1,7 @@ -From 762f69a712f2a14242aa86c29e0cefe82355d45e Mon Sep 17 00:00:00 2001 +From 8c762e56b97e2dfa47081feffdf43f03d3f977e5 Mon Sep 17 00:00:00 2001 From: Geert Uytterhoeven Date: Thu, 6 Nov 2025 14:34:06 +0100 -Subject: [PATCH 279/467] UPSTREAM: iio: dac: Convert to common field_prep() +Subject: [RUYI PATCH] UPSTREAM: iio: dac: Convert to common field_prep() helper Drop the driver-specific field_prep() macro, in favor of the globally diff --git a/SPECS/linux-lts/0280-UPSTREAM-iio-mlx90614-Convert-to-common-field_-get-p.patch b/SPECS/linux-lts/0277-UPSTREAM-iio-mlx90614-Convert-to-common-field_-get-p.patch similarity index 92% rename from SPECS/linux-lts/0280-UPSTREAM-iio-mlx90614-Convert-to-common-field_-get-p.patch rename to SPECS/linux-lts/0277-UPSTREAM-iio-mlx90614-Convert-to-common-field_-get-p.patch index 88ee4da2de..5dec21e9bb 100644 --- a/SPECS/linux-lts/0280-UPSTREAM-iio-mlx90614-Convert-to-common-field_-get-p.patch +++ b/SPECS/linux-lts/0277-UPSTREAM-iio-mlx90614-Convert-to-common-field_-get-p.patch @@ -1,7 +1,7 @@ -From 2ddc0140e0d67f1413257af9982a7bc533c450f1 Mon Sep 17 00:00:00 2001 +From c7ea1c7ee160166a1ed64ca27681872c97335904 Mon Sep 17 00:00:00 2001 From: Geert Uytterhoeven Date: Thu, 6 Nov 2025 14:34:07 +0100 -Subject: [PATCH 280/467] UPSTREAM: iio: mlx90614: Convert to common +Subject: [RUYI PATCH] UPSTREAM: iio: mlx90614: Convert to common field_{get,prep}() helpers Drop the driver-specific field_get() and field_prep() macros, in favor diff --git a/SPECS/linux-lts/0281-UPSTREAM-pinctrl-ma35-Convert-to-common-field_-get-p.patch b/SPECS/linux-lts/0278-UPSTREAM-pinctrl-ma35-Convert-to-common-field_-get-p.patch similarity index 91% rename from SPECS/linux-lts/0281-UPSTREAM-pinctrl-ma35-Convert-to-common-field_-get-p.patch rename to SPECS/linux-lts/0278-UPSTREAM-pinctrl-ma35-Convert-to-common-field_-get-p.patch index f9a128bab3..d757b43507 100644 --- a/SPECS/linux-lts/0281-UPSTREAM-pinctrl-ma35-Convert-to-common-field_-get-p.patch +++ b/SPECS/linux-lts/0278-UPSTREAM-pinctrl-ma35-Convert-to-common-field_-get-p.patch @@ -1,7 +1,7 @@ -From 0eb5bae05723a59adbe4e3bbbab9ba880ecd2177 Mon Sep 17 00:00:00 2001 +From 2cbda24297eace09de563cb06455c5936a00088e Mon Sep 17 00:00:00 2001 From: Geert Uytterhoeven Date: Thu, 6 Nov 2025 14:34:08 +0100 -Subject: [PATCH 281/467] UPSTREAM: pinctrl: ma35: Convert to common +Subject: [RUYI PATCH] UPSTREAM: pinctrl: ma35: Convert to common field_{get,prep}() helpers Drop the driver-specific field_get() and field_prep() macros, in favor diff --git a/SPECS/linux-lts/0282-UPSTREAM-soc-renesas-rz-sysc-Convert-to-common-field.patch b/SPECS/linux-lts/0279-UPSTREAM-soc-renesas-rz-sysc-Convert-to-common-field.patch similarity index 89% rename from SPECS/linux-lts/0282-UPSTREAM-soc-renesas-rz-sysc-Convert-to-common-field.patch rename to SPECS/linux-lts/0279-UPSTREAM-soc-renesas-rz-sysc-Convert-to-common-field.patch index 53220f5a78..f9d9f0c492 100644 --- a/SPECS/linux-lts/0282-UPSTREAM-soc-renesas-rz-sysc-Convert-to-common-field.patch +++ b/SPECS/linux-lts/0279-UPSTREAM-soc-renesas-rz-sysc-Convert-to-common-field.patch @@ -1,7 +1,7 @@ -From 8f99a7fa8c497ef1e8a0fc31678125daf8f04aef Mon Sep 17 00:00:00 2001 +From 8833c4b417190dce1a91dbf31da82221a266f133 Mon Sep 17 00:00:00 2001 From: Geert Uytterhoeven Date: Thu, 6 Nov 2025 14:34:09 +0100 -Subject: [PATCH 282/467] UPSTREAM: soc: renesas: rz-sysc: Convert to common +Subject: [RUYI PATCH] UPSTREAM: soc: renesas: rz-sysc: Convert to common field_get() helper Drop the driver-specific field_get() macro, in favor of the globally diff --git a/SPECS/linux-lts/0283-UPSTREAM-ALSA-usb-audio-Convert-to-common-field_-get.patch b/SPECS/linux-lts/0280-UPSTREAM-ALSA-usb-audio-Convert-to-common-field_-get.patch similarity index 91% rename from SPECS/linux-lts/0283-UPSTREAM-ALSA-usb-audio-Convert-to-common-field_-get.patch rename to SPECS/linux-lts/0280-UPSTREAM-ALSA-usb-audio-Convert-to-common-field_-get.patch index 2ff6a0b412..9e36e61789 100644 --- a/SPECS/linux-lts/0283-UPSTREAM-ALSA-usb-audio-Convert-to-common-field_-get.patch +++ b/SPECS/linux-lts/0280-UPSTREAM-ALSA-usb-audio-Convert-to-common-field_-get.patch @@ -1,7 +1,7 @@ -From a254a77e47af456314d9166e8c477362f99da854 Mon Sep 17 00:00:00 2001 +From d565f3b6ace21a51f62812c86add16af8553952d Mon Sep 17 00:00:00 2001 From: Geert Uytterhoeven Date: Thu, 6 Nov 2025 14:34:10 +0100 -Subject: [PATCH 283/467] UPSTREAM: ALSA: usb-audio: Convert to common +Subject: [RUYI PATCH] UPSTREAM: ALSA: usb-audio: Convert to common field_{get,prep}() helpers Drop the driver-specific field_get() and field_prep() macros, in favor diff --git a/SPECS/linux-lts/0284-UPSTREAM-clk-renesas-Use-bitfield-helpers.patch b/SPECS/linux-lts/0281-UPSTREAM-clk-renesas-Use-bitfield-helpers.patch similarity index 97% rename from SPECS/linux-lts/0284-UPSTREAM-clk-renesas-Use-bitfield-helpers.patch rename to SPECS/linux-lts/0281-UPSTREAM-clk-renesas-Use-bitfield-helpers.patch index c4a78ea5e6..383627c806 100644 --- a/SPECS/linux-lts/0284-UPSTREAM-clk-renesas-Use-bitfield-helpers.patch +++ b/SPECS/linux-lts/0281-UPSTREAM-clk-renesas-Use-bitfield-helpers.patch @@ -1,7 +1,7 @@ -From 40419cc775df729cfc32aee2a6b02c853ad42dd1 Mon Sep 17 00:00:00 2001 +From 019a7bd0c854f0ec67ae6e379c46f05ccf4be4dd Mon Sep 17 00:00:00 2001 From: Geert Uytterhoeven Date: Thu, 6 Nov 2025 14:34:13 +0100 -Subject: [PATCH 284/467] UPSTREAM: clk: renesas: Use bitfield helpers +Subject: [RUYI PATCH] UPSTREAM: clk: renesas: Use bitfield helpers Use the FIELD_{GET,PREP}() and field_{get,prep}() helpers for const respective non-const bitfields, instead of open-coding the same diff --git a/SPECS/linux-lts/0285-UPSTREAM-soc-renesas-Use-bitfield-helpers.patch b/SPECS/linux-lts/0282-UPSTREAM-soc-renesas-Use-bitfield-helpers.patch similarity index 90% rename from SPECS/linux-lts/0285-UPSTREAM-soc-renesas-Use-bitfield-helpers.patch rename to SPECS/linux-lts/0282-UPSTREAM-soc-renesas-Use-bitfield-helpers.patch index d10c6a26d4..4685894400 100644 --- a/SPECS/linux-lts/0285-UPSTREAM-soc-renesas-Use-bitfield-helpers.patch +++ b/SPECS/linux-lts/0282-UPSTREAM-soc-renesas-Use-bitfield-helpers.patch @@ -1,7 +1,7 @@ -From fbb168fdc7492006a9f7780a6ec49834031eea6e Mon Sep 17 00:00:00 2001 +From 23fef80ff6550ef4d1ece307b5c601d37a1fe71c Mon Sep 17 00:00:00 2001 From: Geert Uytterhoeven Date: Thu, 6 Nov 2025 14:34:14 +0100 -Subject: [PATCH 285/467] UPSTREAM: soc: renesas: Use bitfield helpers +Subject: [RUYI PATCH] UPSTREAM: soc: renesas: Use bitfield helpers Use the field_get() helper, instead of open-coding the same operation. diff --git a/SPECS/linux-lts/0286-UPSTREAM-dt-bindings-usb-Add-support-for-Terminus-FE.patch b/SPECS/linux-lts/0283-UPSTREAM-dt-bindings-usb-Add-support-for-Terminus-FE.patch similarity index 94% rename from SPECS/linux-lts/0286-UPSTREAM-dt-bindings-usb-Add-support-for-Terminus-FE.patch rename to SPECS/linux-lts/0283-UPSTREAM-dt-bindings-usb-Add-support-for-Terminus-FE.patch index 0a3a2a1e7d..45f824af71 100644 --- a/SPECS/linux-lts/0286-UPSTREAM-dt-bindings-usb-Add-support-for-Terminus-FE.patch +++ b/SPECS/linux-lts/0283-UPSTREAM-dt-bindings-usb-Add-support-for-Terminus-FE.patch @@ -1,7 +1,7 @@ -From 42fe4e15f9f853b366dfddb9cd5fdda93c07db7b Mon Sep 17 00:00:00 2001 +From 56a298b59d7189961a4e6a04e449718ff2944c21 Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Thu, 19 Mar 2026 07:51:03 +0000 -Subject: [PATCH 286/467] UPSTREAM: dt-bindings: usb: Add support for Terminus +Subject: [RUYI PATCH] UPSTREAM: dt-bindings: usb: Add support for Terminus FE1.1s USB2.0 Hub controller Terminus FE1.1s is USB2.0 protocol compliant 4-port USB HUB, It support diff --git a/SPECS/linux-lts/0287-UPSTREAM-usb-misc-onboard_usb_dev-Add-Terminus-FE1.1.patch b/SPECS/linux-lts/0284-UPSTREAM-usb-misc-onboard_usb_dev-Add-Terminus-FE1.1.patch similarity index 95% rename from SPECS/linux-lts/0287-UPSTREAM-usb-misc-onboard_usb_dev-Add-Terminus-FE1.1.patch rename to SPECS/linux-lts/0284-UPSTREAM-usb-misc-onboard_usb_dev-Add-Terminus-FE1.1.patch index c3ed343dd6..d9fcc7fdbd 100644 --- a/SPECS/linux-lts/0287-UPSTREAM-usb-misc-onboard_usb_dev-Add-Terminus-FE1.1.patch +++ b/SPECS/linux-lts/0284-UPSTREAM-usb-misc-onboard_usb_dev-Add-Terminus-FE1.1.patch @@ -1,7 +1,7 @@ -From 6004bf7f9a93b484f6869e38172fbf3543cd888a Mon Sep 17 00:00:00 2001 +From 7cc16fe69696bb942fb6f1b9a227fd74082707ae Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Thu, 19 Mar 2026 07:51:04 +0000 -Subject: [PATCH 287/467] UPSTREAM: usb: misc: onboard_usb_dev: Add Terminus +Subject: [RUYI PATCH] UPSTREAM: usb: misc: onboard_usb_dev: Add Terminus FE1.1s USB2.0 Hub (1a40:0101) Terminus FE1.1s is USB2.0 protocol compliant 4-port USB HUB, It support diff --git a/SPECS/linux-lts/0288-UPSTREAM-riscv-Define-__riscv_copy_-vec_-words-bytes.patch b/SPECS/linux-lts/0285-UPSTREAM-riscv-Define-__riscv_copy_-vec_-words-bytes.patch similarity index 97% rename from SPECS/linux-lts/0288-UPSTREAM-riscv-Define-__riscv_copy_-vec_-words-bytes.patch rename to SPECS/linux-lts/0285-UPSTREAM-riscv-Define-__riscv_copy_-vec_-words-bytes.patch index 1d01c9a2ed..366e334f76 100644 --- a/SPECS/linux-lts/0288-UPSTREAM-riscv-Define-__riscv_copy_-vec_-words-bytes.patch +++ b/SPECS/linux-lts/0285-UPSTREAM-riscv-Define-__riscv_copy_-vec_-words-bytes.patch @@ -1,7 +1,7 @@ -From ed5a7f0bdca54d386d2e845f3ebadc8b204c271c Mon Sep 17 00:00:00 2001 +From 3df7916fd6c198c8e58d6d4914ab06ebca3918bc Mon Sep 17 00:00:00 2001 From: Nathan Chancellor Date: Wed, 29 Apr 2026 20:38:17 -0600 -Subject: [PATCH 288/467] UPSTREAM: riscv: Define +Subject: [RUYI PATCH] UPSTREAM: riscv: Define __riscv_copy_{,vec_}{words,bytes}_unaligned() using SYM_TYPED_FUNC_START After commit 67bdd7b01387 ("riscv: Split out measure_cycles() for diff --git a/SPECS/linux-lts/0290-UPSTREAM-spi-dt-bindings-fsl-qspi-support-SpacemiT-K.patch b/SPECS/linux-lts/0286-UPSTREAM-spi-dt-bindings-fsl-qspi-support-SpacemiT-K.patch similarity index 90% rename from SPECS/linux-lts/0290-UPSTREAM-spi-dt-bindings-fsl-qspi-support-SpacemiT-K.patch rename to SPECS/linux-lts/0286-UPSTREAM-spi-dt-bindings-fsl-qspi-support-SpacemiT-K.patch index 9e5685bd91..74474ab04e 100644 --- a/SPECS/linux-lts/0290-UPSTREAM-spi-dt-bindings-fsl-qspi-support-SpacemiT-K.patch +++ b/SPECS/linux-lts/0286-UPSTREAM-spi-dt-bindings-fsl-qspi-support-SpacemiT-K.patch @@ -1,8 +1,8 @@ -From b163c53eda4a5dd98999c324051fbec43d33e6d9 Mon Sep 17 00:00:00 2001 +From 2eae98ea7476677c8119a80ff9bf50c8a3600315 Mon Sep 17 00:00:00 2001 From: Zhengyu He Date: Thu, 21 May 2026 22:44:45 +0800 -Subject: [PATCH 290/467] UPSTREAM: spi: dt-bindings: fsl-qspi: support - SpacemiT K3 +Subject: [RUYI PATCH] UPSTREAM: spi: dt-bindings: fsl-qspi: support SpacemiT + K3 Add the SpacemiT K3 QSPI compatible to the fsl-qspi binding. diff --git a/SPECS/linux-lts/0291-UPSTREAM-RISC-V-KVM-Fix-NULL-pointer-dereference-in-.patch b/SPECS/linux-lts/0287-UPSTREAM-RISC-V-KVM-Fix-NULL-pointer-dereference-in-.patch similarity index 90% rename from SPECS/linux-lts/0291-UPSTREAM-RISC-V-KVM-Fix-NULL-pointer-dereference-in-.patch rename to SPECS/linux-lts/0287-UPSTREAM-RISC-V-KVM-Fix-NULL-pointer-dereference-in-.patch index 1e760e063a..cee092d499 100644 --- a/SPECS/linux-lts/0291-UPSTREAM-RISC-V-KVM-Fix-NULL-pointer-dereference-in-.patch +++ b/SPECS/linux-lts/0287-UPSTREAM-RISC-V-KVM-Fix-NULL-pointer-dereference-in-.patch @@ -1,8 +1,8 @@ -From ffdb403e8aa1eacebe47a4796578523b663508ee Mon Sep 17 00:00:00 2001 +From 4f4bff270953588decae0547de96ac02939beaad Mon Sep 17 00:00:00 2001 From: Jiakai Xu Date: Sun, 17 May 2026 12:44:14 +0000 -Subject: [PATCH 291/467] UPSTREAM: RISC-V: KVM: Fix NULL pointer dereference - in SBI v0.1 SEND_IPI handler +Subject: [RUYI PATCH] UPSTREAM: RISC-V: KVM: Fix NULL pointer dereference in + SBI v0.1 SEND_IPI handler The SBI v0.1 SEND_IPI handler iterates over the hart mask and calls kvm_get_vcpu_by_id() to find the target vcpu for each set bit. When a diff --git a/SPECS/linux-lts/0288-UPSTREAM-dt-bindings-mmc-sdhci-of-dwcmshc-Add-Eswin-.patch b/SPECS/linux-lts/0288-UPSTREAM-dt-bindings-mmc-sdhci-of-dwcmshc-Add-Eswin-.patch new file mode 100644 index 0000000000..e7deac9aea --- /dev/null +++ b/SPECS/linux-lts/0288-UPSTREAM-dt-bindings-mmc-sdhci-of-dwcmshc-Add-Eswin-.patch @@ -0,0 +1,108 @@ +From bb40d8362ee33eb3d7341201cc0193113631e03c Mon Sep 17 00:00:00 2001 +From: Huan He +Date: Sun, 19 Oct 2025 19:52:38 +0800 +Subject: [RUYI PATCH] UPSTREAM: dt-bindings: mmc: sdhci-of-dwcmshc: Add Eswin + EIC7700 + +EIC7700 use Synopsys dwcmshc IP for SD/eMMC controllers. +Add Eswin EIC7700 support in sdhci-of-dwcmshc.yaml. + +Signed-off-by: Huan He +Reviewed-by: Conor Dooley +Signed-off-by: Ulf Hansson +(cherry picked from commit 30009a21f257a02feea7a7708ef3d0118e7f824a) +Signed-off-by: Han Gao +--- + .../bindings/mmc/snps,dwcmshc-sdhci.yaml | 57 +++++++++++++++++-- + 1 file changed, 51 insertions(+), 6 deletions(-) + +diff --git a/Documentation/devicetree/bindings/mmc/snps,dwcmshc-sdhci.yaml b/Documentation/devicetree/bindings/mmc/snps,dwcmshc-sdhci.yaml +index f882219a0a26..7e7c55dc2440 100644 +--- a/Documentation/devicetree/bindings/mmc/snps,dwcmshc-sdhci.yaml ++++ b/Documentation/devicetree/bindings/mmc/snps,dwcmshc-sdhci.yaml +@@ -30,6 +30,7 @@ properties: + - sophgo,sg2002-dwcmshc + - sophgo,sg2042-dwcmshc + - thead,th1520-dwcmshc ++ - eswin,eic7700-dwcmshc + + reg: + maxItems: 1 +@@ -52,17 +53,30 @@ properties: + maxItems: 5 + + reset-names: +- items: +- - const: core +- - const: bus +- - const: axi +- - const: block +- - const: timer ++ maxItems: 5 + + rockchip,txclk-tapnum: + description: Specify the number of delay for tx sampling. + $ref: /schemas/types.yaml#/definitions/uint8 + ++ eswin,hsp-sp-csr: ++ $ref: /schemas/types.yaml#/definitions/phandle-array ++ items: ++ - items: ++ - description: Phandle to HSP(High-Speed Peripheral) device ++ - description: Offset of the stability status register for internal ++ clock. ++ - description: Offset of the stability register for host regulator ++ voltage. ++ description: ++ HSP CSR is to control and get status of different high-speed peripherals ++ (such as Ethernet, USB, SATA, etc.) via register, which can tune ++ board-level's parameters of PHY, etc. ++ ++ eswin,drive-impedance-ohms: ++ description: Specifies the drive impedance in Ohm. ++ enum: [33, 40, 50, 66, 100] ++ + required: + - compatible + - reg +@@ -110,6 +124,37 @@ allOf: + - const: block + - const: timer + ++ - if: ++ properties: ++ compatible: ++ contains: ++ const: eswin,eic7700-dwcmshc ++ then: ++ properties: ++ resets: ++ minItems: 4 ++ maxItems: 4 ++ reset-names: ++ items: ++ - const: axi ++ - const: phy ++ - const: prstn ++ - const: txrx ++ required: ++ - eswin,hsp-sp-csr ++ - eswin,drive-impedance-ohms ++ else: ++ properties: ++ resets: ++ maxItems: 5 ++ reset-names: ++ items: ++ - const: core ++ - const: bus ++ - const: axi ++ - const: block ++ - const: timer ++ + - if: + properties: + compatible: +-- +2.53.0 + diff --git a/SPECS/linux-lts/0289-UPSTREAM-mmc-sdhci-of-dwcmshc-Add-support-for-Eswin-.patch b/SPECS/linux-lts/0289-UPSTREAM-mmc-sdhci-of-dwcmshc-Add-support-for-Eswin-.patch new file mode 100644 index 0000000000..ca470143dd --- /dev/null +++ b/SPECS/linux-lts/0289-UPSTREAM-mmc-sdhci-of-dwcmshc-Add-support-for-Eswin-.patch @@ -0,0 +1,614 @@ +From 09f0d19162ff660efb7b93fd764ae93f6d004129 Mon Sep 17 00:00:00 2001 +From: Huan He +Date: Sun, 19 Oct 2025 19:53:16 +0800 +Subject: [RUYI PATCH] UPSTREAM: mmc: sdhci-of-dwcmshc: Add support for Eswin + EIC7700 + +Add support for the mmc controller in the Eswin EIC7700 with the new +compatible "eswin,eic7700-dwcmshc". Implement custom sdhci_ops for +set_clock, reset, set_uhs_signaling, platform_execute_tuning. + +Signed-off-by: Huan He +Acked-by: Adrian Hunter +Signed-off-by: Ulf Hansson +(cherry picked from commit 32b2633219d3509d8174737bb0a8afa060e55655) +Signed-off-by: Han Gao +--- + drivers/mmc/host/sdhci-of-dwcmshc.c | 502 +++++++++++++++++++++++++++- + 1 file changed, 491 insertions(+), 11 deletions(-) + +diff --git a/drivers/mmc/host/sdhci-of-dwcmshc.c b/drivers/mmc/host/sdhci-of-dwcmshc.c +index 5b7ffc359414..dfad61f332c4 100644 +--- a/drivers/mmc/host/sdhci-of-dwcmshc.c ++++ b/drivers/mmc/host/sdhci-of-dwcmshc.c +@@ -11,6 +11,7 @@ + #include + #include + #include ++#include + #include + #include + #include +@@ -19,8 +20,11 @@ + #include + #include + #include ++#include + #include + #include ++#include ++#include + + #include "sdhci-pltfm.h" + #include "cqhci.h" +@@ -39,6 +43,7 @@ + #define DWCMSHC_CARD_IS_EMMC BIT(0) + #define DWCMSHC_ENHANCED_STROBE BIT(8) + #define DWCMSHC_EMMC_ATCTRL 0x40 ++#define DWCMSHC_AT_STAT 0x44 + /* Tuning and auto-tuning fields in AT_CTRL_R control register */ + #define AT_CTRL_AT_EN BIT(0) /* autotuning is enabled */ + #define AT_CTRL_CI_SEL BIT(1) /* interval to drive center phase select */ +@@ -194,6 +199,19 @@ + #define PHY_DLLDL_CNFG_SLV_INPSEL_MASK GENMASK(6, 5) /* bits [6:5] */ + #define PHY_DLLDL_CNFG_SLV_INPSEL 0x3 /* clock source select for slave DL */ + ++/* PHY DLL offset setting register */ ++#define PHY_DLL_OFFST_R (DWC_MSHC_PTR_PHY_R + 0x29) ++/* DLL LBT setting register */ ++#define PHY_DLLBT_CNFG_R (DWC_MSHC_PTR_PHY_R + 0x2c) ++/* DLL Status register */ ++#define PHY_DLL_STATUS_R (DWC_MSHC_PTR_PHY_R + 0x2e) ++#define DLL_LOCK_STS BIT(0)/* DLL is locked and ready */ ++/* ++ * Captures the value of DLL's lock error status information. Value is valid ++ * only when LOCK_STS is set. ++ */ ++#define DLL_ERROR_STS BIT(1) ++ + #define FLAG_IO_FIXED_1V8 BIT(0) + + #define BOUNDARY_OK(addr, len) \ +@@ -206,6 +224,31 @@ + /* SMC call for BlueField-3 eMMC RST_N */ + #define BLUEFIELD_SMC_SET_EMMC_RST_N 0x82000007 + ++/* Eswin specific Registers */ ++#define EIC7700_CARD_CLK_STABLE BIT(28) ++#define EIC7700_INT_BCLK_STABLE BIT(16) ++#define EIC7700_INT_ACLK_STABLE BIT(8) ++#define EIC7700_INT_TMCLK_STABLE BIT(0) ++#define EIC7700_INT_CLK_STABLE (EIC7700_CARD_CLK_STABLE | \ ++ EIC7700_INT_ACLK_STABLE | \ ++ EIC7700_INT_BCLK_STABLE | \ ++ EIC7700_INT_TMCLK_STABLE) ++#define EIC7700_HOST_VAL_STABLE BIT(0) ++ ++/* strength definition */ ++#define PHYCTRL_DR_33OHM 0xee ++#define PHYCTRL_DR_40OHM 0xcc ++#define PHYCTRL_DR_50OHM 0x88 ++#define PHYCTRL_DR_66OHM 0x44 ++#define PHYCTRL_DR_100OHM 0x00 ++ ++#define MAX_PHASE_CODE 0xff ++#define TUNING_RANGE_THRESHOLD 40 ++#define PHY_CLK_MAX_DELAY_MASK 0x7f ++#define PHY_DELAY_CODE_MAX 0x7f ++#define PHY_DELAY_CODE_EMMC 0x17 ++#define PHY_DELAY_CODE_SD 0x55 ++ + enum dwcmshc_rk_type { + DWCMSHC_RK3568, + DWCMSHC_RK3588, +@@ -217,6 +260,11 @@ struct rk35xx_priv { + u8 txclk_tapnum; + }; + ++struct eic7700_priv { ++ struct reset_control *reset; ++ unsigned int drive_impedance; ++}; ++ + #define DWCMSHC_MAX_OTHER_CLKS 3 + + struct dwcmshc_priv { +@@ -238,6 +286,17 @@ struct dwcmshc_pltfm_data { + void (*postinit)(struct sdhci_host *host, struct dwcmshc_priv *dwc_priv); + }; + ++static void dwcmshc_enable_card_clk(struct sdhci_host *host) ++{ ++ u16 ctrl; ++ ++ ctrl = sdhci_readw(host, SDHCI_CLOCK_CONTROL); ++ if ((ctrl & SDHCI_CLOCK_INT_EN) && !(ctrl & SDHCI_CLOCK_CARD_EN)) { ++ ctrl |= SDHCI_CLOCK_CARD_EN; ++ sdhci_writew(host, ctrl, SDHCI_CLOCK_CONTROL); ++ } ++} ++ + static int dwcmshc_get_enable_other_clks(struct device *dev, + struct dwcmshc_priv *priv, + int num_clks, +@@ -1120,6 +1179,411 @@ static int sg2042_init(struct device *dev, struct sdhci_host *host, + ARRAY_SIZE(clk_ids), clk_ids); + } + ++static void sdhci_eic7700_set_clock(struct sdhci_host *host, unsigned int clock) ++{ ++ struct sdhci_pltfm_host *pltfm_host = sdhci_priv(host); ++ u16 clk; ++ ++ host->mmc->actual_clock = clock; ++ ++ if (clock == 0) { ++ sdhci_set_clock(host, clock); ++ return; ++ } ++ ++ clk_set_rate(pltfm_host->clk, clock); ++ ++ clk = sdhci_readw(host, SDHCI_CLOCK_CONTROL); ++ clk |= SDHCI_CLOCK_INT_EN; ++ sdhci_writew(host, clk, SDHCI_CLOCK_CONTROL); ++ ++ dwcmshc_enable_card_clk(host); ++} ++ ++static void sdhci_eic7700_config_phy_delay(struct sdhci_host *host, int delay) ++{ ++ delay &= PHY_CLK_MAX_DELAY_MASK; ++ ++ /* phy clk delay line config */ ++ sdhci_writeb(host, PHY_SDCLKDL_CNFG_UPDATE, PHY_SDCLKDL_CNFG_R); ++ sdhci_writeb(host, delay, PHY_SDCLKDL_DC_R); ++ sdhci_writeb(host, 0x0, PHY_SDCLKDL_CNFG_R); ++} ++ ++static void sdhci_eic7700_config_phy(struct sdhci_host *host) ++{ ++ struct sdhci_pltfm_host *pltfm_host = sdhci_priv(host); ++ struct dwcmshc_priv *dwc_priv = sdhci_pltfm_priv(pltfm_host); ++ u32 emmc_caps = MMC_CAP2_NO_SD | MMC_CAP2_NO_SDIO; ++ struct eic7700_priv *priv = dwc_priv->priv; ++ unsigned int val, drv; ++ ++ drv = FIELD_PREP(PHY_CNFG_PAD_SP_MASK, priv->drive_impedance & 0xF); ++ drv |= FIELD_PREP(PHY_CNFG_PAD_SN_MASK, (priv->drive_impedance >> 4) & 0xF); ++ ++ if ((host->mmc->caps2 & emmc_caps) == emmc_caps) { ++ val = sdhci_readw(host, dwc_priv->vendor_specific_area1 + DWCMSHC_EMMC_CONTROL); ++ val |= DWCMSHC_CARD_IS_EMMC; ++ sdhci_writew(host, val, dwc_priv->vendor_specific_area1 + DWCMSHC_EMMC_CONTROL); ++ } ++ ++ /* reset phy, config phy's pad */ ++ sdhci_writel(host, drv | ~PHY_CNFG_RSTN_DEASSERT, PHY_CNFG_R); ++ ++ /* configure phy pads */ ++ val = FIELD_PREP(PHY_PAD_TXSLEW_CTRL_P_MASK, PHY_PAD_TXSLEW_CTRL_N_SG2042); ++ val |= FIELD_PREP(PHY_PAD_TXSLEW_CTRL_N_MASK, PHY_PAD_TXSLEW_CTRL_N_SG2042); ++ val |= FIELD_PREP(PHY_PAD_WEAKPULL_MASK, PHY_PAD_WEAKPULL_PULLUP); ++ val |= PHY_PAD_RXSEL_1V8; ++ sdhci_writew(host, val, PHY_CMDPAD_CNFG_R); ++ sdhci_writew(host, val, PHY_DATAPAD_CNFG_R); ++ sdhci_writew(host, val, PHY_RSTNPAD_CNFG_R); ++ ++ /* Clock PAD Setting */ ++ val = FIELD_PREP(PHY_PAD_TXSLEW_CTRL_P_MASK, PHY_PAD_TXSLEW_CTRL_N_SG2042); ++ val |= FIELD_PREP(PHY_PAD_TXSLEW_CTRL_N_MASK, PHY_PAD_TXSLEW_CTRL_N_SG2042); ++ sdhci_writew(host, val, PHY_CLKPAD_CNFG_R); ++ ++ /* PHY strobe PAD setting (EMMC only) */ ++ if ((host->mmc->caps2 & emmc_caps) == emmc_caps) { ++ val = FIELD_PREP(PHY_PAD_TXSLEW_CTRL_P_MASK, PHY_PAD_TXSLEW_CTRL_N_SG2042); ++ val |= FIELD_PREP(PHY_PAD_TXSLEW_CTRL_N_MASK, PHY_PAD_TXSLEW_CTRL_N_SG2042); ++ val |= PHY_PAD_RXSEL_1V8; ++ sdhci_writew(host, val, PHY_STBPAD_CNFG_R); ++ } ++ usleep_range(2000, 3000); ++ sdhci_writel(host, drv | PHY_CNFG_RSTN_DEASSERT, PHY_CNFG_R); ++ sdhci_eic7700_config_phy_delay(host, dwc_priv->delay_line); ++} ++ ++static void sdhci_eic7700_reset(struct sdhci_host *host, u8 mask) ++{ ++ sdhci_reset(host, mask); ++ ++ /* after reset all, the phy's config will be clear */ ++ if (mask == SDHCI_RESET_ALL) ++ sdhci_eic7700_config_phy(host); ++} ++ ++static int sdhci_eic7700_reset_init(struct device *dev, struct eic7700_priv *priv) ++{ ++ int ret; ++ ++ priv->reset = devm_reset_control_array_get_optional_exclusive(dev); ++ if (IS_ERR(priv->reset)) { ++ ret = PTR_ERR(priv->reset); ++ dev_err(dev, "failed to get reset control %d\n", ret); ++ return ret; ++ } ++ ++ ret = reset_control_assert(priv->reset); ++ if (ret) { ++ dev_err(dev, "Failed to assert reset signals: %d\n", ret); ++ return ret; ++ } ++ usleep_range(2000, 2100); ++ ret = reset_control_deassert(priv->reset); ++ if (ret) { ++ dev_err(dev, "Failed to deassert reset signals: %d\n", ret); ++ return ret; ++ } ++ ++ return ret; ++} ++ ++static unsigned int eic7700_convert_drive_impedance_ohm(struct device *dev, unsigned int dr_ohm) ++{ ++ switch (dr_ohm) { ++ case 100: ++ return PHYCTRL_DR_100OHM; ++ case 66: ++ return PHYCTRL_DR_66OHM; ++ case 50: ++ return PHYCTRL_DR_50OHM; ++ case 40: ++ return PHYCTRL_DR_40OHM; ++ case 33: ++ return PHYCTRL_DR_33OHM; ++ } ++ ++ dev_warn(dev, "Invalid value %u for drive-impedance-ohms.\n", dr_ohm); ++ return PHYCTRL_DR_50OHM; ++} ++ ++static int sdhci_eic7700_delay_tuning(struct sdhci_host *host, u32 opcode) ++{ ++ struct sdhci_pltfm_host *pltfm_host = sdhci_priv(host); ++ struct dwcmshc_priv *dwc_priv = sdhci_pltfm_priv(pltfm_host); ++ int delay_min = -1; ++ int delay_max = -1; ++ int cmd_error = 0; ++ int delay = 0; ++ int i = 0; ++ int ret; ++ ++ for (i = 0; i <= PHY_DELAY_CODE_MAX; i++) { ++ sdhci_eic7700_config_phy_delay(host, i); ++ ret = mmc_send_tuning(host->mmc, opcode, &cmd_error); ++ if (ret) { ++ host->ops->reset(host, SDHCI_RESET_CMD | SDHCI_RESET_DATA); ++ usleep_range(200, 210); ++ if (delay_min != -1 && delay_max != -1) ++ break; ++ } else { ++ if (delay_min == -1) { ++ delay_min = i; ++ continue; ++ } else { ++ delay_max = i; ++ continue; ++ } ++ } ++ } ++ if (delay_min == -1 && delay_max == -1) { ++ pr_err("%s: delay code tuning failed!\n", mmc_hostname(host->mmc)); ++ sdhci_eic7700_config_phy_delay(host, dwc_priv->delay_line); ++ return ret; ++ } ++ ++ delay = (delay_min + delay_max) / 2; ++ sdhci_eic7700_config_phy_delay(host, delay); ++ ++ return 0; ++} ++ ++static int sdhci_eic7700_phase_code_tuning(struct sdhci_host *host, u32 opcode) ++{ ++ struct sdhci_pltfm_host *pltfm_host = sdhci_priv(host); ++ struct dwcmshc_priv *priv = sdhci_pltfm_priv(pltfm_host); ++ u32 sd_caps = MMC_CAP2_NO_MMC | MMC_CAP2_NO_SDIO; ++ int phase_code = -1; ++ int code_range = -1; ++ bool is_sd = false; ++ int code_min = -1; ++ int code_max = -1; ++ int cmd_error = 0; ++ int ret = 0; ++ int i = 0; ++ ++ if ((host->mmc->caps2 & sd_caps) == sd_caps) ++ is_sd = true; ++ ++ for (i = 0; i <= MAX_PHASE_CODE; i++) { ++ /* Centered Phase code */ ++ sdhci_writew(host, i, priv->vendor_specific_area1 + DWCMSHC_AT_STAT); ++ ret = mmc_send_tuning(host->mmc, opcode, &cmd_error); ++ host->ops->reset(host, SDHCI_RESET_CMD | SDHCI_RESET_DATA); ++ ++ if (ret) { ++ /* SD specific range tracking */ ++ if (is_sd && code_min != -1 && code_max != -1) { ++ if (code_max - code_min > code_range) { ++ code_range = code_max - code_min; ++ phase_code = (code_min + code_max) / 2; ++ if (code_range > TUNING_RANGE_THRESHOLD) ++ break; ++ } ++ code_min = -1; ++ code_max = -1; ++ } ++ /* EMMC breaks after first valid range */ ++ if (!is_sd && code_min != -1 && code_max != -1) ++ break; ++ } else { ++ /* Track valid phase code range */ ++ if (code_min == -1) { ++ code_min = i; ++ if (!is_sd) ++ continue; ++ } ++ code_max = i; ++ if (is_sd && i == MAX_PHASE_CODE) { ++ if (code_max - code_min > code_range) { ++ code_range = code_max - code_min; ++ phase_code = (code_min + code_max) / 2; ++ } ++ } ++ } ++ } ++ ++ /* Handle tuning failure case */ ++ if ((is_sd && phase_code == -1) || ++ (!is_sd && code_min == -1 && code_max == -1)) { ++ pr_err("%s: phase code tuning failed!\n", mmc_hostname(host->mmc)); ++ sdhci_writew(host, 0, priv->vendor_specific_area1 + DWCMSHC_AT_STAT); ++ return -EIO; ++ } ++ if (!is_sd) ++ phase_code = (code_min + code_max) / 2; ++ ++ sdhci_writew(host, phase_code, priv->vendor_specific_area1 + DWCMSHC_AT_STAT); ++ ++ /* SD specific final verification */ ++ if (is_sd) { ++ ret = mmc_send_tuning(host->mmc, opcode, &cmd_error); ++ host->ops->reset(host, SDHCI_RESET_CMD | SDHCI_RESET_DATA); ++ if (ret) { ++ pr_err("%s: Final phase code 0x%x verification failed!\n", ++ mmc_hostname(host->mmc), phase_code); ++ return ret; ++ } ++ } ++ ++ return 0; ++} ++ ++static int sdhci_eic7700_executing_tuning(struct sdhci_host *host, u32 opcode) ++{ ++ struct sdhci_pltfm_host *pltfm_host = sdhci_priv(host); ++ struct dwcmshc_priv *priv = sdhci_pltfm_priv(pltfm_host); ++ u32 emmc_caps = MMC_CAP2_NO_SD | MMC_CAP2_NO_SDIO; ++ int ret = 0; ++ u16 ctrl; ++ u32 val; ++ ++ ctrl = sdhci_readw(host, SDHCI_HOST_CONTROL2); ++ ctrl &= ~SDHCI_CTRL_TUNED_CLK; ++ sdhci_writew(host, ctrl, SDHCI_HOST_CONTROL2); ++ ++ val = sdhci_readl(host, priv->vendor_specific_area1 + DWCMSHC_EMMC_ATCTRL); ++ val |= AT_CTRL_SW_TUNE_EN; ++ sdhci_writew(host, val, priv->vendor_specific_area1 + DWCMSHC_EMMC_ATCTRL); ++ ++ sdhci_writew(host, 0, priv->vendor_specific_area1 + DWCMSHC_AT_STAT); ++ sdhci_writew(host, 0x0, SDHCI_CMD_DATA); ++ ++ if ((host->mmc->caps2 & emmc_caps) == emmc_caps) { ++ ret = sdhci_eic7700_delay_tuning(host, opcode); ++ if (ret) ++ return ret; ++ } ++ ++ ret = sdhci_eic7700_phase_code_tuning(host, opcode); ++ if (ret) ++ return ret; ++ ++ return 0; ++} ++ ++static void sdhci_eic7700_set_uhs_signaling(struct sdhci_host *host, unsigned int timing) ++{ ++ struct sdhci_pltfm_host *pltfm_host = sdhci_priv(host); ++ struct dwcmshc_priv *priv = sdhci_pltfm_priv(pltfm_host); ++ u8 status; ++ u32 val; ++ int ret; ++ ++ dwcmshc_set_uhs_signaling(host, timing); ++ ++ /* here need make dll locked when in hs400 at 200MHz */ ++ if (timing == MMC_TIMING_MMC_HS400 && host->clock == 200000000) { ++ val = sdhci_readl(host, priv->vendor_specific_area1 + DWCMSHC_EMMC_ATCTRL); ++ val &= ~(FIELD_PREP(AT_CTRL_POST_CHANGE_DLY_MASK, AT_CTRL_POST_CHANGE_DLY)); ++ /* 2-cycle latency */ ++ val |= FIELD_PREP(AT_CTRL_POST_CHANGE_DLY_MASK, 0x2); ++ sdhci_writew(host, val, priv->vendor_specific_area1 + DWCMSHC_EMMC_ATCTRL); ++ ++ sdhci_writeb(host, FIELD_PREP(PHY_DLL_CNFG1_SLVDLY_MASK, PHY_DLL_CNFG1_SLVDLY) | ++ 0x3, PHY_DLL_CNFG1_R);/* DLL wait cycle input */ ++ /* DLL jump step input */ ++ sdhci_writeb(host, 0x02, PHY_DLL_CNFG2_R); ++ sdhci_writeb(host, FIELD_PREP(PHY_DLLDL_CNFG_SLV_INPSEL_MASK, ++ PHY_DLLDL_CNFG_SLV_INPSEL), PHY_DLLDL_CNFG_R); ++ /* Sets the value of DLL's offset input */ ++ sdhci_writeb(host, 0x00, PHY_DLL_OFFST_R); ++ /* ++ * Sets the value of DLL's olbt loadval input. Controls the Ibt ++ * timer's timeout value at which DLL runs a revalidation cycle. ++ */ ++ sdhci_writew(host, 0xffff, PHY_DLLBT_CNFG_R); ++ sdhci_writeb(host, PHY_DLL_CTRL_ENABLE, PHY_DLL_CTRL_R); ++ usleep_range(100, 110); ++ ++ ret = read_poll_timeout(sdhci_readb, status, status & DLL_LOCK_STS, 100, 1000000, ++ false, host, PHY_DLL_STATUS_R); ++ if (ret) { ++ pr_err("%s: DLL lock timeout! status: 0x%x\n", ++ mmc_hostname(host->mmc), status); ++ return; ++ } ++ ++ status = sdhci_readb(host, PHY_DLL_STATUS_R); ++ if (status & DLL_ERROR_STS) { ++ pr_err("%s: DLL lock failed!err_status:0x%x\n", ++ mmc_hostname(host->mmc), status); ++ } ++ } ++} ++ ++static void sdhci_eic7700_set_uhs_wrapper(struct sdhci_host *host, unsigned int timing) ++{ ++ u32 sd_caps = MMC_CAP2_NO_MMC | MMC_CAP2_NO_SDIO; ++ ++ if ((host->mmc->caps2 & sd_caps) == sd_caps) ++ sdhci_set_uhs_signaling(host, timing); ++ else ++ sdhci_eic7700_set_uhs_signaling(host, timing); ++} ++ ++static int eic7700_init(struct device *dev, struct sdhci_host *host, struct dwcmshc_priv *dwc_priv) ++{ ++ u32 emmc_caps = MMC_CAP2_NO_SD | MMC_CAP2_NO_SDIO; ++ unsigned int val, hsp_int_status, hsp_pwr_ctrl; ++ struct of_phandle_args args; ++ struct eic7700_priv *priv; ++ struct regmap *hsp_regmap; ++ int ret; ++ ++ priv = devm_kzalloc(dev, sizeof(struct eic7700_priv), GFP_KERNEL); ++ if (!priv) ++ return -ENOMEM; ++ ++ dwc_priv->priv = priv; ++ ++ ret = sdhci_eic7700_reset_init(dev, dwc_priv->priv); ++ if (ret) { ++ dev_err(dev, "failed to reset\n"); ++ return ret; ++ } ++ ++ ret = of_parse_phandle_with_fixed_args(dev->of_node, "eswin,hsp-sp-csr", 2, 0, &args); ++ if (ret) { ++ dev_err(dev, "Fail to parse 'eswin,hsp-sp-csr' phandle (%d)\n", ret); ++ return ret; ++ } ++ ++ hsp_regmap = syscon_node_to_regmap(args.np); ++ if (IS_ERR(hsp_regmap)) { ++ dev_err(dev, "Failed to get regmap for 'eswin,hsp-sp-csr'\n"); ++ of_node_put(args.np); ++ return PTR_ERR(hsp_regmap); ++ } ++ hsp_int_status = args.args[0]; ++ hsp_pwr_ctrl = args.args[1]; ++ of_node_put(args.np); ++ /* ++ * Assert clock stability: write EIC7700_INT_CLK_STABLE to hsp_int_status. ++ * This signals to the eMMC controller that platform clocks (card, ACLK, ++ * BCLK, TMCLK) are enabled and stable. ++ */ ++ regmap_write(hsp_regmap, hsp_int_status, EIC7700_INT_CLK_STABLE); ++ /* ++ * Assert voltage stability: write EIC7700_HOST_VAL_STABLE to hsp_pwr_ctrl. ++ * This signals that VDD is stable and permits transition to high-speed ++ * modes (e.g., UHS-I). ++ */ ++ regmap_write(hsp_regmap, hsp_pwr_ctrl, EIC7700_HOST_VAL_STABLE); ++ ++ if ((host->mmc->caps2 & emmc_caps) == emmc_caps) ++ dwc_priv->delay_line = PHY_DELAY_CODE_EMMC; ++ else ++ dwc_priv->delay_line = PHY_DELAY_CODE_SD; ++ ++ if (!of_property_read_u32(dev->of_node, "eswin,drive-impedance-ohms", &val)) ++ priv->drive_impedance = eic7700_convert_drive_impedance_ohm(dev, val); ++ return 0; ++} ++ + static const struct sdhci_ops sdhci_dwcmshc_ops = { + .set_clock = sdhci_set_clock, + .set_bus_width = sdhci_set_bus_width, +@@ -1194,6 +1658,18 @@ static const struct sdhci_ops sdhci_dwcmshc_sg2042_ops = { + .platform_execute_tuning = th1520_execute_tuning, + }; + ++static const struct sdhci_ops sdhci_dwcmshc_eic7700_ops = { ++ .set_clock = sdhci_eic7700_set_clock, ++ .get_max_clock = sdhci_pltfm_clk_get_max_clock, ++ .get_timeout_clock = sdhci_pltfm_clk_get_max_clock, ++ .set_bus_width = sdhci_set_bus_width, ++ .reset = sdhci_eic7700_reset, ++ .set_uhs_signaling = sdhci_eic7700_set_uhs_wrapper, ++ .set_power = sdhci_set_power_and_bus_voltage, ++ .irq = dwcmshc_cqe_irq_handler, ++ .platform_execute_tuning = sdhci_eic7700_executing_tuning, ++}; ++ + static const struct dwcmshc_pltfm_data sdhci_dwcmshc_pdata = { + .pdata = { + .ops = &sdhci_dwcmshc_ops, +@@ -1263,6 +1739,17 @@ static const struct dwcmshc_pltfm_data sdhci_dwcmshc_sg2042_pdata = { + .init = sg2042_init, + }; + ++static const struct dwcmshc_pltfm_data sdhci_dwcmshc_eic7700_pdata = { ++ .pdata = { ++ .ops = &sdhci_dwcmshc_eic7700_ops, ++ .quirks = SDHCI_QUIRK_CAP_CLOCK_BASE_BROKEN | ++ SDHCI_QUIRK_BROKEN_TIMEOUT_VAL, ++ .quirks2 = SDHCI_QUIRK2_PRESET_VALUE_BROKEN | ++ SDHCI_QUIRK2_CLOCK_DIV_ZERO_BROKEN, ++ }, ++ .init = eic7700_init, ++}; ++ + static const struct cqhci_host_ops dwcmshc_cqhci_ops = { + .enable = dwcmshc_sdhci_cqe_enable, + .disable = sdhci_cqe_disable, +@@ -1363,6 +1850,10 @@ static const struct of_device_id sdhci_dwcmshc_dt_ids[] = { + .compatible = "sophgo,sg2042-dwcmshc", + .data = &sdhci_dwcmshc_sg2042_pdata, + }, ++ { ++ .compatible = "eswin,eic7700-dwcmshc", ++ .data = &sdhci_dwcmshc_eic7700_pdata, ++ }, + {}, + }; + MODULE_DEVICE_TABLE(of, sdhci_dwcmshc_dt_ids); +@@ -1595,17 +2086,6 @@ static int dwcmshc_resume(struct device *dev) + return ret; + } + +-static void dwcmshc_enable_card_clk(struct sdhci_host *host) +-{ +- u16 ctrl; +- +- ctrl = sdhci_readw(host, SDHCI_CLOCK_CONTROL); +- if ((ctrl & SDHCI_CLOCK_INT_EN) && !(ctrl & SDHCI_CLOCK_CARD_EN)) { +- ctrl |= SDHCI_CLOCK_CARD_EN; +- sdhci_writew(host, ctrl, SDHCI_CLOCK_CONTROL); +- } +-} +- + static int dwcmshc_runtime_suspend(struct device *dev) + { + struct sdhci_host *host = dev_get_drvdata(dev); +-- +2.53.0 + diff --git a/SPECS/linux-lts/0289-UPSTREAM-riscv-mm-Fixup-no5lvl-failure-when-vaddr-is.patch b/SPECS/linux-lts/0289-UPSTREAM-riscv-mm-Fixup-no5lvl-failure-when-vaddr-is.patch deleted file mode 100644 index 66787c96fb..0000000000 --- a/SPECS/linux-lts/0289-UPSTREAM-riscv-mm-Fixup-no5lvl-failure-when-vaddr-is.patch +++ /dev/null @@ -1,85 +0,0 @@ -From 3de0647d68580730c9dea18c73c0c4298eeaea58 Mon Sep 17 00:00:00 2001 -From: "Guo Ren (Alibaba DAMO Academy)" -Date: Sun, 25 Jan 2026 00:52:12 -0500 -Subject: [PATCH 289/467] UPSTREAM: riscv: mm: Fixup no5lvl failure when vaddr - is invalid -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -Unlike no4lvl, no5lvl still continues to detect satp, which -requires va=pa mapping. When pa=0x800000000000, no5lvl -would fail in Sv48 mode due to an illegal VA value of -0x800000000000. - -So, prevent detecting the satp flow for no5lvl, when -vaddr is invalid. Add the is_vaddr_valid() function for -checking. - -Fixes: 26e7aacb83df ("riscv: Allow to downgrade paging mode from the command line") -Cc: Alexandre Ghiti -Cc: Björn Töpel -Signed-off-by: Guo Ren (Alibaba DAMO Academy) -Tested-by: Fangyu Yu -Link: https://patch.msgid.link/20260125055212.433163-1-guoren@kernel.org -[pjw@kernel.org: cleaned up commit message] -Signed-off-by: Paul Walmsley -(cherry picked from commit db909bd7986c10da074917af3dae83a60fa65093) -Signed-off-by: Han Gao ---- - arch/riscv/mm/init.c | 25 +++++++++++++++++++++++++ - 1 file changed, 25 insertions(+) - -diff --git a/arch/riscv/mm/init.c b/arch/riscv/mm/init.c -index a7d0cde6536b..8f4e7e505906 100644 ---- a/arch/riscv/mm/init.c -+++ b/arch/riscv/mm/init.c -@@ -852,6 +852,27 @@ static void __init set_mmap_rnd_bits_max(void) - mmap_rnd_bits_max = MMAP_VA_BITS - PAGE_SHIFT - 3; - } - -+static bool __init is_vaddr_valid(unsigned long va) -+{ -+ unsigned long up = 0; -+ -+ switch (satp_mode) { -+ case SATP_MODE_39: -+ up = 1UL << 38; -+ break; -+ case SATP_MODE_48: -+ up = 1UL << 47; -+ break; -+ case SATP_MODE_57: -+ up = 1UL << 56; -+ break; -+ default: -+ return false; -+ } -+ -+ return (va < up) || (va >= (ULONG_MAX - up + 1)); -+} -+ - /* - * There is a simple way to determine if 4-level is supported by the - * underlying hardware: establish 1:1 mapping in 4-level page table mode -@@ -893,6 +914,9 @@ static __init void set_satp_mode(uintptr_t dtb_pa) - set_satp_mode_pmd + PMD_SIZE, - PMD_SIZE, PAGE_KERNEL_EXEC); - retry: -+ if (!is_vaddr_valid(set_satp_mode_pmd)) -+ goto out; -+ - create_pgd_mapping(early_pg_dir, - set_satp_mode_pmd, - pgtable_l5_enabled ? -@@ -915,6 +939,7 @@ static __init void set_satp_mode(uintptr_t dtb_pa) - disable_pgtable_l4(); - } - -+out: - memset(early_pg_dir, 0, PAGE_SIZE); - memset(early_p4d, 0, PAGE_SIZE); - memset(early_pud, 0, PAGE_SIZE); --- -2.53.0 - diff --git a/SPECS/linux-lts/0290-UPSTREAM-mmc-sdhci-of-dwcmshc-Fix-init-for-AXI-clock.patch b/SPECS/linux-lts/0290-UPSTREAM-mmc-sdhci-of-dwcmshc-Fix-init-for-AXI-clock.patch new file mode 100644 index 0000000000..8991fa572e --- /dev/null +++ b/SPECS/linux-lts/0290-UPSTREAM-mmc-sdhci-of-dwcmshc-Fix-init-for-AXI-clock.patch @@ -0,0 +1,45 @@ +From eec5a961f5c9f3a5b4a99624544700e30ae02323 Mon Sep 17 00:00:00 2001 +From: Huan He +Date: Wed, 14 Jan 2026 20:21:41 +0800 +Subject: [RUYI PATCH] UPSTREAM: mmc: sdhci-of-dwcmshc: Fix init for AXI clock + for Eswin EIC7700 + +Accessing the High-Speed registers requires the AXI clock to be enabled. + +Signed-off-by: Huan He +Acked-by: Adrian Hunter +Fixes: 32b2633219d3 ("mmc: sdhci-of-dwcmshc: Add support for Eswin EIC7700") +Signed-off-by: Ulf Hansson +(cherry picked from commit fd9809ec6704db0c162b4510b11f877ec7b72065) +Signed-off-by: Han Gao +--- + drivers/mmc/host/sdhci-of-dwcmshc.c | 6 ++++++ + 1 file changed, 6 insertions(+) + +diff --git a/drivers/mmc/host/sdhci-of-dwcmshc.c b/drivers/mmc/host/sdhci-of-dwcmshc.c +index dfad61f332c4..2ce2626a7993 100644 +--- a/drivers/mmc/host/sdhci-of-dwcmshc.c ++++ b/drivers/mmc/host/sdhci-of-dwcmshc.c +@@ -1529,6 +1529,7 @@ static int eic7700_init(struct device *dev, struct sdhci_host *host, struct dwcm + { + u32 emmc_caps = MMC_CAP2_NO_SD | MMC_CAP2_NO_SDIO; + unsigned int val, hsp_int_status, hsp_pwr_ctrl; ++ static const char * const clk_ids[] = {"axi"}; + struct of_phandle_args args; + struct eic7700_priv *priv; + struct regmap *hsp_regmap; +@@ -1546,6 +1547,11 @@ static int eic7700_init(struct device *dev, struct sdhci_host *host, struct dwcm + return ret; + } + ++ ret = dwcmshc_get_enable_other_clks(mmc_dev(host->mmc), dwc_priv, ++ ARRAY_SIZE(clk_ids), clk_ids); ++ if (ret) ++ return ret; ++ + ret = of_parse_phandle_with_fixed_args(dev->of_node, "eswin,hsp-sp-csr", 2, 0, &args); + if (ret) { + dev_err(dev, "Fail to parse 'eswin,hsp-sp-csr' phandle (%d)\n", ret); +-- +2.53.0 + diff --git a/SPECS/linux-lts/0291-UPSTREAM-mmc-sdhci-of-dwcmshc-Fix-DMA-128MB-boundary.patch b/SPECS/linux-lts/0291-UPSTREAM-mmc-sdhci-of-dwcmshc-Fix-DMA-128MB-boundary.patch new file mode 100644 index 0000000000..25b1fd7b47 --- /dev/null +++ b/SPECS/linux-lts/0291-UPSTREAM-mmc-sdhci-of-dwcmshc-Fix-DMA-128MB-boundary.patch @@ -0,0 +1,35 @@ +From 3cd03e009502a385f88e1102cb0517e2f25f455c Mon Sep 17 00:00:00 2001 +From: Huan He +Date: Wed, 14 Jan 2026 20:22:56 +0800 +Subject: [RUYI PATCH] UPSTREAM: mmc: sdhci-of-dwcmshc: Fix DMA 128MB boundary + for Eswin EIC7700 + +This DWC MSHC has a 128MB limitation where the data buffer size and start +address must not exceed the 128MB boundary. Registering the missing +'adma_write_desc' callback function. + +Signed-off-by: Huan He +Acked-by: Adrian Hunter +Fixes: 32b2633219d3 ("mmc: sdhci-of-dwcmshc: Add support for Eswin EIC7700") +Signed-off-by: Ulf Hansson +(cherry picked from commit 5cfc828502cbd0c827113bdb5694c2658af2c37c) +Signed-off-by: Han Gao +--- + drivers/mmc/host/sdhci-of-dwcmshc.c | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/drivers/mmc/host/sdhci-of-dwcmshc.c b/drivers/mmc/host/sdhci-of-dwcmshc.c +index 2ce2626a7993..90aa146a1be3 100644 +--- a/drivers/mmc/host/sdhci-of-dwcmshc.c ++++ b/drivers/mmc/host/sdhci-of-dwcmshc.c +@@ -1673,6 +1673,7 @@ static const struct sdhci_ops sdhci_dwcmshc_eic7700_ops = { + .set_uhs_signaling = sdhci_eic7700_set_uhs_wrapper, + .set_power = sdhci_set_power_and_bus_voltage, + .irq = dwcmshc_cqe_irq_handler, ++ .adma_write_desc = dwcmshc_adma_write_desc, + .platform_execute_tuning = sdhci_eic7700_executing_tuning, + }; + +-- +2.53.0 + diff --git a/SPECS/linux-lts/0292-FROMGIT-drm-imagination-Count-paired-job-fence-as-de.patch b/SPECS/linux-lts/0292-FROMGIT-drm-imagination-Count-paired-job-fence-as-de.patch index 6ce60cb539..c72f779250 100644 --- a/SPECS/linux-lts/0292-FROMGIT-drm-imagination-Count-paired-job-fence-as-de.patch +++ b/SPECS/linux-lts/0292-FROMGIT-drm-imagination-Count-paired-job-fence-as-de.patch @@ -1,7 +1,7 @@ -From a609d4433c7a1614a618e8aa8e2eab96362fefac Mon Sep 17 00:00:00 2001 +From 07935065ada83928cfb96ceab6a5ec204787eed5 Mon Sep 17 00:00:00 2001 From: Alessio Belle Date: Mon, 30 Mar 2026 08:56:36 +0100 -Subject: [PATCH 292/467] FROMGIT: drm/imagination: Count paired job fence as +Subject: [RUYI PATCH] FROMGIT: drm/imagination: Count paired job fence as dependency in prepare_job() The DRM scheduler's prepare_job() callback counts the remaining diff --git a/SPECS/linux-lts/0293-FROMGIT-drm-imagination-Fit-paired-fragment-job-in-t.patch b/SPECS/linux-lts/0293-FROMGIT-drm-imagination-Fit-paired-fragment-job-in-t.patch index 02e01dee82..26a9e98208 100644 --- a/SPECS/linux-lts/0293-FROMGIT-drm-imagination-Fit-paired-fragment-job-in-t.patch +++ b/SPECS/linux-lts/0293-FROMGIT-drm-imagination-Fit-paired-fragment-job-in-t.patch @@ -1,8 +1,8 @@ -From 9290d92ea555570942074fc606d13eb4d3bbf981 Mon Sep 17 00:00:00 2001 +From cc7e1eff70086b94e4cc0442c78e493d14ea2a91 Mon Sep 17 00:00:00 2001 From: Alessio Belle Date: Mon, 30 Mar 2026 08:56:37 +0100 -Subject: [PATCH 293/467] FROMGIT: drm/imagination: Fit paired fragment job in - the correct CCCB +Subject: [RUYI PATCH] FROMGIT: drm/imagination: Fit paired fragment job in the + correct CCCB For geometry jobs with a paired fragment job, at the moment, the DRM scheduler's prepare_job() callback: diff --git a/SPECS/linux-lts/0294-FROMGIT-drm-imagination-Skip-check-on-paired-job-fen.patch b/SPECS/linux-lts/0294-FROMGIT-drm-imagination-Skip-check-on-paired-job-fen.patch index 585fa629fa..ef8b49eec6 100644 --- a/SPECS/linux-lts/0294-FROMGIT-drm-imagination-Skip-check-on-paired-job-fen.patch +++ b/SPECS/linux-lts/0294-FROMGIT-drm-imagination-Skip-check-on-paired-job-fen.patch @@ -1,8 +1,8 @@ -From 9a88a3b7b00b1c31c53573cb70a52e28c6a93a00 Mon Sep 17 00:00:00 2001 +From a64a810c6fa9b9f608d345c1c8fddcb487bf750a Mon Sep 17 00:00:00 2001 From: Alessio Belle Date: Mon, 30 Mar 2026 08:56:38 +0100 -Subject: [PATCH 294/467] FROMGIT: drm/imagination: Skip check on paired job - fence during job submission +Subject: [RUYI PATCH] FROMGIT: drm/imagination: Skip check on paired job fence + during job submission While submitting a paired fragment job, there is no need to manually look for, and skip, the paired job fence, as the existing logic to diff --git a/SPECS/linux-lts/0295-FROMGIT-drm-imagination-Rename-pvr_queue_fence_is_uf.patch b/SPECS/linux-lts/0295-FROMGIT-drm-imagination-Rename-pvr_queue_fence_is_uf.patch index eee3351fd4..9cc27fddc4 100644 --- a/SPECS/linux-lts/0295-FROMGIT-drm-imagination-Rename-pvr_queue_fence_is_uf.patch +++ b/SPECS/linux-lts/0295-FROMGIT-drm-imagination-Rename-pvr_queue_fence_is_uf.patch @@ -1,7 +1,7 @@ -From f20230f3dc06eafd26b5cd6d132c0cca76331d33 Mon Sep 17 00:00:00 2001 +From 37bce3dfda3d6bfd8120dd4ca4ce59da566ffd8c Mon Sep 17 00:00:00 2001 From: Alessio Belle Date: Mon, 30 Mar 2026 08:56:39 +0100 -Subject: [PATCH 295/467] FROMGIT: drm/imagination: Rename +Subject: [RUYI PATCH] FROMGIT: drm/imagination: Rename pvr_queue_fence_is_ufo_backed() to reflect usage This function is only used by the synchronization code to figure out if diff --git a/SPECS/linux-lts/0296-FROMGIT-drm-imagination-Rename-fence-returned-by-pvr.patch b/SPECS/linux-lts/0296-FROMGIT-drm-imagination-Rename-fence-returned-by-pvr.patch index d4492c8980..726a6e00f1 100644 --- a/SPECS/linux-lts/0296-FROMGIT-drm-imagination-Rename-fence-returned-by-pvr.patch +++ b/SPECS/linux-lts/0296-FROMGIT-drm-imagination-Rename-fence-returned-by-pvr.patch @@ -1,7 +1,7 @@ -From d480bfc6a4ff28539bca859b78544e8a3762c85e Mon Sep 17 00:00:00 2001 +From 1b5c97a61b1f397f31c97959e50a7bafe4997757 Mon Sep 17 00:00:00 2001 From: Alessio Belle Date: Mon, 30 Mar 2026 08:56:40 +0100 -Subject: [PATCH 296/467] FROMGIT: drm/imagination: Rename fence returned by +Subject: [RUYI PATCH] FROMGIT: drm/imagination: Rename fence returned by pvr_queue_job_arm() Rename from done_fence to finished_fence, both because the function diff --git a/SPECS/linux-lts/0297-FROMGIT-drm-imagination-Move-repeated-job-fence-chec.patch b/SPECS/linux-lts/0297-FROMGIT-drm-imagination-Move-repeated-job-fence-chec.patch index 4e1d0d7c5d..aaa07dc5cb 100644 --- a/SPECS/linux-lts/0297-FROMGIT-drm-imagination-Move-repeated-job-fence-chec.patch +++ b/SPECS/linux-lts/0297-FROMGIT-drm-imagination-Move-repeated-job-fence-chec.patch @@ -1,8 +1,8 @@ -From 24d18b49f8c07b709700ed96d89d8612d2fb5668 Mon Sep 17 00:00:00 2001 +From 03aa10e9329f54737669ec56c2b2ab66eac2f987 Mon Sep 17 00:00:00 2001 From: Alessio Belle Date: Mon, 30 Mar 2026 08:56:41 +0100 -Subject: [PATCH 297/467] FROMGIT: drm/imagination: Move repeated job fence - check to its own function +Subject: [RUYI PATCH] FROMGIT: drm/imagination: Move repeated job fence check + to its own function This should make the code slightly clearer. diff --git a/SPECS/linux-lts/0298-FROMGIT-drm-imagination-Update-check-to-skip-prepare.patch b/SPECS/linux-lts/0298-FROMGIT-drm-imagination-Update-check-to-skip-prepare.patch index 6b4300cbe2..c27054fa2d 100644 --- a/SPECS/linux-lts/0298-FROMGIT-drm-imagination-Update-check-to-skip-prepare.patch +++ b/SPECS/linux-lts/0298-FROMGIT-drm-imagination-Update-check-to-skip-prepare.patch @@ -1,7 +1,7 @@ -From 9f3709e29e576a8943a5c7b99d82d4a0293cc32f Mon Sep 17 00:00:00 2001 +From de6096b77f0bf0bf39ff10bd616f13c5e0945d58 Mon Sep 17 00:00:00 2001 From: Alessio Belle Date: Mon, 30 Mar 2026 08:56:42 +0100 -Subject: [PATCH 298/467] FROMGIT: drm/imagination: Update check to skip +Subject: [RUYI PATCH] FROMGIT: drm/imagination: Update check to skip prepare_job() for fragment jobs By the time prepare_job() is called on a paired fragment job, the paired diff --git a/SPECS/linux-lts/0299-FROMGIT-drm-imagination-Minor-improvements-to-job-su.patch b/SPECS/linux-lts/0299-FROMGIT-drm-imagination-Minor-improvements-to-job-su.patch index fcc409d926..e093399458 100644 --- a/SPECS/linux-lts/0299-FROMGIT-drm-imagination-Minor-improvements-to-job-su.patch +++ b/SPECS/linux-lts/0299-FROMGIT-drm-imagination-Minor-improvements-to-job-su.patch @@ -1,7 +1,7 @@ -From b1bc1325baa32b8ced34662415894d905572c0e3 Mon Sep 17 00:00:00 2001 +From fea5671abc67fb18ac13ed5ac838464e6ac1d034 Mon Sep 17 00:00:00 2001 From: Alessio Belle Date: Mon, 30 Mar 2026 08:56:43 +0100 -Subject: [PATCH 299/467] FROMGIT: drm/imagination: Minor improvements to job +Subject: [RUYI PATCH] FROMGIT: drm/imagination: Minor improvements to job submission code documentation Mixed list of clarifications and typo fixes. diff --git a/SPECS/linux-lts/0300-FROMGIT-perf-riscv-Fix-discarded-const-qualifier-in-.patch b/SPECS/linux-lts/0300-FROMGIT-perf-riscv-Fix-discarded-const-qualifier-in-.patch index 3e227cd8fa..ed087c87c3 100644 --- a/SPECS/linux-lts/0300-FROMGIT-perf-riscv-Fix-discarded-const-qualifier-in-.patch +++ b/SPECS/linux-lts/0300-FROMGIT-perf-riscv-Fix-discarded-const-qualifier-in-.patch @@ -1,7 +1,7 @@ -From 347d0feb0828177c85358f21ba7942d4d10abb3f Mon Sep 17 00:00:00 2001 +From d6e9674d63435e685b8f714dd05c6d76d0cd3383 Mon Sep 17 00:00:00 2001 From: Li Guan Date: Thu, 14 May 2026 02:07:21 +0800 -Subject: [PATCH 300/467] FROMGIT: perf riscv: Fix discarded const qualifier in +Subject: [RUYI PATCH] FROMGIT: perf riscv: Fix discarded const qualifier in _get_field() The assignment of strrchr() return values to non-const char * variables diff --git a/SPECS/linux-lts/0301-FROMLIST-riscv-errata-Add-ERRATA_THEAD_WRITE_ONCE-fi.patch b/SPECS/linux-lts/0301-FROMLIST-riscv-errata-Add-ERRATA_THEAD_WRITE_ONCE-fi.patch index d4d9cf39fa..df45fcf2dc 100644 --- a/SPECS/linux-lts/0301-FROMLIST-riscv-errata-Add-ERRATA_THEAD_WRITE_ONCE-fi.patch +++ b/SPECS/linux-lts/0301-FROMLIST-riscv-errata-Add-ERRATA_THEAD_WRITE_ONCE-fi.patch @@ -1,7 +1,7 @@ -From c04270e93a53b96a6f98611da3684d1fb609b347 Mon Sep 17 00:00:00 2001 +From 9312f5952083473da163ade5c4b5f0cd1170caf2 Mon Sep 17 00:00:00 2001 From: "Guo Ren (Alibaba DAMO Academy)" Date: Tue, 21 Apr 2026 10:31:40 -0400 -Subject: [PATCH 301/467] FROMLIST: riscv: errata: Add ERRATA_THEAD_WRITE_ONCE +Subject: [RUYI PATCH] FROMLIST: riscv: errata: Add ERRATA_THEAD_WRITE_ONCE fixup The early version of XuanTie C910 core has a store merge buffer diff --git a/SPECS/linux-lts/0302-FROMLIST-PCI-Add-per-device-flag-to-disable-native-P.patch b/SPECS/linux-lts/0302-FROMLIST-PCI-Add-per-device-flag-to-disable-native-P.patch index eb1ea9ea73..747ee38919 100644 --- a/SPECS/linux-lts/0302-FROMLIST-PCI-Add-per-device-flag-to-disable-native-P.patch +++ b/SPECS/linux-lts/0302-FROMLIST-PCI-Add-per-device-flag-to-disable-native-P.patch @@ -1,7 +1,7 @@ -From f8ed95adec720bc723ed825f8d90a76e3b3b0a12 Mon Sep 17 00:00:00 2001 +From 4c835b4cf54a8879850b5743cbe7d75d2b218c9c Mon Sep 17 00:00:00 2001 From: Han Gao Date: Wed, 1 Apr 2026 01:56:57 +0800 -Subject: [PATCH 302/467] FROMLIST: PCI: Add per-device flag to disable native +Subject: [RUYI PATCH] FROMLIST: PCI: Add per-device flag to disable native PCIe port services Add PCI_DEV_FLAGS_NO_PORT_SERVICES to allow quirks to prevent the PCIe diff --git a/SPECS/linux-lts/0303-FROMLIST-PCI-Add-quirk-to-disable-PCIe-port-services.patch b/SPECS/linux-lts/0303-FROMLIST-PCI-Add-quirk-to-disable-PCIe-port-services.patch index 4f0837e1d9..58cd59ae0c 100644 --- a/SPECS/linux-lts/0303-FROMLIST-PCI-Add-quirk-to-disable-PCIe-port-services.patch +++ b/SPECS/linux-lts/0303-FROMLIST-PCI-Add-quirk-to-disable-PCIe-port-services.patch @@ -1,8 +1,8 @@ -From 283d1e50a78cf88b9bc5a76ae2e1ce0163dc502a Mon Sep 17 00:00:00 2001 +From cfb56bdda1f734ba778e001d5436e62217a69a3c Mon Sep 17 00:00:00 2001 From: Han Gao Date: Wed, 1 Apr 2026 01:56:58 +0800 -Subject: [PATCH 303/467] FROMLIST: PCI: Add quirk to disable PCIe port - services on Sophgo SG2042 +Subject: [RUYI PATCH] FROMLIST: PCI: Add quirk to disable PCIe port services + on Sophgo SG2042 SG2042's PCIe root ports [1f1c:2042] fail to deliver MSI interrupts to downstream devices when native port services are enabled. Devices under diff --git a/SPECS/linux-lts/0304-FROMLIST-PCI-Release-BAR0-of-an-integrated-bridge-to.patch b/SPECS/linux-lts/0304-FROMLIST-PCI-Release-BAR0-of-an-integrated-bridge-to.patch index 3533acb885..92052a71a6 100644 --- a/SPECS/linux-lts/0304-FROMLIST-PCI-Release-BAR0-of-an-integrated-bridge-to.patch +++ b/SPECS/linux-lts/0304-FROMLIST-PCI-Release-BAR0-of-an-integrated-bridge-to.patch @@ -1,8 +1,8 @@ -From 5061c065b398815d41839dbd6c2d13c2213c2d99 Mon Sep 17 00:00:00 2001 +From ef760574ea2b96b482691e4b76ea4544d2b04231 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ilpo=20J=C3=A4rvinen?= Date: Thu, 18 Sep 2025 13:58:56 -0700 -Subject: [PATCH 304/467] FROMLIST: PCI: Release BAR0 of an integrated bridge - to allow GPU BAR resize +Subject: [RUYI PATCH] FROMLIST: PCI: Release BAR0 of an integrated bridge to + allow GPU BAR resize MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit diff --git a/SPECS/linux-lts/0305-BACKPORT-FROMLIST-drm-ttm-save-the-device-s-DMA-cohe.patch b/SPECS/linux-lts/0305-BACKPORT-FROMLIST-drm-ttm-save-the-device-s-DMA-cohe.patch index 41052b1644..826058c0bf 100644 --- a/SPECS/linux-lts/0305-BACKPORT-FROMLIST-drm-ttm-save-the-device-s-DMA-cohe.patch +++ b/SPECS/linux-lts/0305-BACKPORT-FROMLIST-drm-ttm-save-the-device-s-DMA-cohe.patch @@ -1,7 +1,7 @@ -From 930af6ff12384f1fc15fbeaba533c8791537aafb Mon Sep 17 00:00:00 2001 +From 1f52ff4a8952f2dcd39f984b094e0d3ba4227bcd Mon Sep 17 00:00:00 2001 From: Icenowy Zheng Date: Sat, 29 Jun 2024 13:22:46 +0800 -Subject: [PATCH 305/467] BACKPORT: FROMLIST: drm/ttm: save the device's DMA +Subject: [RUYI PATCH] BACKPORT: FROMLIST: drm/ttm: save the device's DMA coherency status in ttm_device Currently TTM utilizes cached memory regardless of whether the device diff --git a/SPECS/linux-lts/0306-BACKPORT-FROMLIST-drm-ttm-downgrade-cached-to-write_.patch b/SPECS/linux-lts/0306-BACKPORT-FROMLIST-drm-ttm-downgrade-cached-to-write_.patch index 7dbe06800d..bb46fa248c 100644 --- a/SPECS/linux-lts/0306-BACKPORT-FROMLIST-drm-ttm-downgrade-cached-to-write_.patch +++ b/SPECS/linux-lts/0306-BACKPORT-FROMLIST-drm-ttm-downgrade-cached-to-write_.patch @@ -1,7 +1,7 @@ -From 6b19f0c2ff8d4334e8350b2aba256942682560f0 Mon Sep 17 00:00:00 2001 +From 555ac6aeaf274981371546928300e152ff7ac153 Mon Sep 17 00:00:00 2001 From: Icenowy Zheng Date: Sat, 29 Jun 2024 13:22:47 +0800 -Subject: [PATCH 306/467] BACKPORT: FROMLIST: drm/ttm: downgrade cached to +Subject: [RUYI PATCH] BACKPORT: FROMLIST: drm/ttm: downgrade cached to write_combined when snooping not available As we can now acquire the presence of the full DMA coherency (snooping diff --git a/SPECS/linux-lts/0307-FROMLIST-NFU-riscv-dts-thead-Add-CPU-clock-and-OPP-t.patch b/SPECS/linux-lts/0307-FROMLIST-NFU-riscv-dts-thead-Add-CPU-clock-and-OPP-t.patch index a7e829871e..58e516d738 100644 --- a/SPECS/linux-lts/0307-FROMLIST-NFU-riscv-dts-thead-Add-CPU-clock-and-OPP-t.patch +++ b/SPECS/linux-lts/0307-FROMLIST-NFU-riscv-dts-thead-Add-CPU-clock-and-OPP-t.patch @@ -1,8 +1,8 @@ -From 09dc9193b8a9859bdfcf7826fcef126692322cfa Mon Sep 17 00:00:00 2001 +From 5911aa5fe93310aba068d9a4361bc5827ce35b62 Mon Sep 17 00:00:00 2001 From: Yao Zi Date: Thu, 20 Nov 2025 13:14:16 +0000 -Subject: [PATCH 307/467] FROMLIST: NFU: riscv: dts: thead: Add CPU clock and - OPP table for TH1520 +Subject: [RUYI PATCH] FROMLIST: NFU: riscv: dts: thead: Add CPU clock and OPP + table for TH1520 Add operating point table for CPU cores, and wire up clocks for CPU nodes. diff --git a/SPECS/linux-lts/0308-FROMLIST-rust-export-BINDGEN_TARGET-from-a-separate-.patch b/SPECS/linux-lts/0308-FROMLIST-rust-export-BINDGEN_TARGET-from-a-separate-.patch index 1556101b34..207ec24976 100644 --- a/SPECS/linux-lts/0308-FROMLIST-rust-export-BINDGEN_TARGET-from-a-separate-.patch +++ b/SPECS/linux-lts/0308-FROMLIST-rust-export-BINDGEN_TARGET-from-a-separate-.patch @@ -1,7 +1,7 @@ -From fb63a586880480ca4a13569a25a63f4aecf4dc1c Mon Sep 17 00:00:00 2001 +From 1331a7f7caf771503583f18f7576c01b13e887ec Mon Sep 17 00:00:00 2001 From: Asuna Yang Date: Tue, 30 Dec 2025 17:47:54 +0100 -Subject: [PATCH 308/467] FROMLIST: rust: export BINDGEN_TARGET from a separate +Subject: [RUYI PATCH] FROMLIST: rust: export BINDGEN_TARGET from a separate Makefile A subsequent commit will add a new function `bindgen-option` to @@ -29,7 +29,7 @@ Signed-off-by: Han Gao create mode 100644 scripts/Makefile.rust diff --git a/Makefile b/Makefile -index dc63a98489a5..895fd1827580 100644 +index 5087bd6183dd..e5901ed88254 100644 --- a/Makefile +++ b/Makefile @@ -724,9 +724,10 @@ ifneq ($(findstring clang,$(CC_VERSION_TEXT)),) diff --git a/SPECS/linux-lts/0309-FROMLIST-rust-generate-a-fatal-error-if-BINDGEN_TARG.patch b/SPECS/linux-lts/0309-FROMLIST-rust-generate-a-fatal-error-if-BINDGEN_TARG.patch index 1346386899..99ff4e9cc0 100644 --- a/SPECS/linux-lts/0309-FROMLIST-rust-generate-a-fatal-error-if-BINDGEN_TARG.patch +++ b/SPECS/linux-lts/0309-FROMLIST-rust-generate-a-fatal-error-if-BINDGEN_TARG.patch @@ -1,8 +1,8 @@ -From 68a1f8f93b448edbae9513aa35f8fdfd2d0c9d10 Mon Sep 17 00:00:00 2001 +From 22c8be25d1ed7a76f36d5f1d30f0c61faa68b951 Mon Sep 17 00:00:00 2001 From: Asuna Yang Date: Tue, 30 Dec 2025 17:47:55 +0100 -Subject: [PATCH 309/467] FROMLIST: rust: generate a fatal error if - BINDGEN_TARGET is undefined +Subject: [RUYI PATCH] FROMLIST: rust: generate a fatal error if BINDGEN_TARGET + is undefined Generate a friendly fatal error if the target triplet is undefined for bindgen, rather than having the compiler generate obscure error messages diff --git a/SPECS/linux-lts/0310-FROMLIST-rust-add-a-Kconfig-function-to-test-for-sup.patch b/SPECS/linux-lts/0310-FROMLIST-rust-add-a-Kconfig-function-to-test-for-sup.patch index 73dc849cc5..f14c7c2ccd 100644 --- a/SPECS/linux-lts/0310-FROMLIST-rust-add-a-Kconfig-function-to-test-for-sup.patch +++ b/SPECS/linux-lts/0310-FROMLIST-rust-add-a-Kconfig-function-to-test-for-sup.patch @@ -1,7 +1,7 @@ -From e4594d4716d61ca97443e9a44af78e400c9462f9 Mon Sep 17 00:00:00 2001 +From 0bae0d06c2aca802becde0cd7d5cb153390dcd4d Mon Sep 17 00:00:00 2001 From: Asuna Yang Date: Tue, 30 Dec 2025 17:47:56 +0100 -Subject: [PATCH 310/467] FROMLIST: rust: add a Kconfig function to test for +Subject: [RUYI PATCH] FROMLIST: rust: add a Kconfig function to test for support of bindgen options Add a new `bindgen-backend-option` Kconfig function to test whether the diff --git a/SPECS/linux-lts/0311-FROMLIST-RISC-V-handle-extension-configs-for-bindgen.patch b/SPECS/linux-lts/0311-FROMLIST-RISC-V-handle-extension-configs-for-bindgen.patch index 89093b0689..22dad26c59 100644 --- a/SPECS/linux-lts/0311-FROMLIST-RISC-V-handle-extension-configs-for-bindgen.patch +++ b/SPECS/linux-lts/0311-FROMLIST-RISC-V-handle-extension-configs-for-bindgen.patch @@ -1,8 +1,8 @@ -From 4a0cd79c6b96ef6fc06137c6845d2d4f679efee9 Mon Sep 17 00:00:00 2001 +From bdb364df3673e4e729a0e33788d91c7ace67e22e Mon Sep 17 00:00:00 2001 From: Asuna Yang Date: Tue, 30 Dec 2025 17:47:57 +0100 -Subject: [PATCH 311/467] FROMLIST: RISC-V: handle extension configs for - bindgen, re-enable gcc + rust builds +Subject: [RUYI PATCH] FROMLIST: RISC-V: handle extension configs for bindgen, + re-enable gcc + rust builds Commit 33549fcf37ec ("RISC-V: disallow gcc + rust builds") disabled GCC + Rust builds for RISC-V due to differences in extension handling diff --git a/SPECS/linux-lts/0312-FROMLIST-dt-bindings-mmc-spacemit-sdhci-add-reset-su.patch b/SPECS/linux-lts/0312-FROMLIST-dt-bindings-mmc-spacemit-sdhci-add-reset-su.patch index 26ee47ecbd..cde256c3dd 100644 --- a/SPECS/linux-lts/0312-FROMLIST-dt-bindings-mmc-spacemit-sdhci-add-reset-su.patch +++ b/SPECS/linux-lts/0312-FROMLIST-dt-bindings-mmc-spacemit-sdhci-add-reset-su.patch @@ -1,7 +1,7 @@ -From 159388b0a2e5ca3f2f88124a933d969ed86fbeba Mon Sep 17 00:00:00 2001 +From 6b99e40ab4ea69deb0bef324e4a5160a020862f2 Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Sun, 21 Dec 2025 16:20:26 +0800 -Subject: [PATCH 312/467] FROMLIST: dt-bindings: mmc: spacemit,sdhci: add reset +Subject: [RUYI PATCH] FROMLIST: dt-bindings: mmc: spacemit,sdhci: add reset support The SpacemiT SDHCI controller has two reset lines, one connect to AXI bus diff --git a/SPECS/linux-lts/0313-FROMLIST-mfd-simple-mfd-i2c-add-a-reboot-cell-for-th.patch b/SPECS/linux-lts/0313-FROMLIST-mfd-simple-mfd-i2c-add-a-reboot-cell-for-th.patch index d14424b2c5..27e125777e 100644 --- a/SPECS/linux-lts/0313-FROMLIST-mfd-simple-mfd-i2c-add-a-reboot-cell-for-th.patch +++ b/SPECS/linux-lts/0313-FROMLIST-mfd-simple-mfd-i2c-add-a-reboot-cell-for-th.patch @@ -1,8 +1,8 @@ -From 8d7a4704394936b4c6294288c8ef99b5d613a2b5 Mon Sep 17 00:00:00 2001 +From e4c3413f71ca577a9344235a8e76978b9df6b41d Mon Sep 17 00:00:00 2001 From: Aurelien Jarno Date: Mon, 3 Nov 2025 00:02:00 +0100 -Subject: [PATCH 313/467] FROMLIST: mfd: simple-mfd-i2c: add a reboot cell for - the SpacemiT P1 chip +Subject: [RUYI PATCH] FROMLIST: mfd: simple-mfd-i2c: add a reboot cell for the + SpacemiT P1 chip Add a "spacemit-p1-reboot" cell for the SpacemiT P1 chip. diff --git a/SPECS/linux-lts/0314-FROMLIST-regulator-spacemit-MFD_SPACEMIT_P1-as-depen.patch b/SPECS/linux-lts/0314-FROMLIST-regulator-spacemit-MFD_SPACEMIT_P1-as-depen.patch index 6dfcd96600..2e6395db50 100644 --- a/SPECS/linux-lts/0314-FROMLIST-regulator-spacemit-MFD_SPACEMIT_P1-as-depen.patch +++ b/SPECS/linux-lts/0314-FROMLIST-regulator-spacemit-MFD_SPACEMIT_P1-as-depen.patch @@ -1,7 +1,7 @@ -From 454712fedf570ad8e52defdca4d86a789ae66c49 Mon Sep 17 00:00:00 2001 +From 976f3a509c35b7b5a88d9f5f44f15301bbfef945 Mon Sep 17 00:00:00 2001 From: Troy Mitchell Date: Thu, 8 Jan 2026 16:38:54 +0800 -Subject: [PATCH 314/467] FROMLIST: regulator: spacemit: MFD_SPACEMIT_P1 as +Subject: [RUYI PATCH] FROMLIST: regulator: spacemit: MFD_SPACEMIT_P1 as dependencies REGULATOR_SPACEMIT_P1 is a subdevice of P1 and should depend on diff --git a/SPECS/linux-lts/0315-FROMLIST-rtc-spacemit-default-module-when-MFD_SPACEM.patch b/SPECS/linux-lts/0315-FROMLIST-rtc-spacemit-default-module-when-MFD_SPACEM.patch index e05b43ffa7..a28f57c29e 100644 --- a/SPECS/linux-lts/0315-FROMLIST-rtc-spacemit-default-module-when-MFD_SPACEM.patch +++ b/SPECS/linux-lts/0315-FROMLIST-rtc-spacemit-default-module-when-MFD_SPACEM.patch @@ -1,7 +1,7 @@ -From 2364564dbaafd4e805bbea77f317865dd5622725 Mon Sep 17 00:00:00 2001 +From f7a63859a84191dd8619e6a34c9bf4d6664dcf23 Mon Sep 17 00:00:00 2001 From: Troy Mitchell Date: Thu, 8 Jan 2026 16:38:56 +0800 -Subject: [PATCH 315/467] FROMLIST: rtc: spacemit: default module when +Subject: [RUYI PATCH] FROMLIST: rtc: spacemit: default module when MFD_SPACEMIT_P1 is enabled The RTC driver defaulted to the same value as MFD_SPACEMIT_P1, which diff --git a/SPECS/linux-lts/0316-FROMLIST-spi-dt-bindings-add-SpacemiT-K1-SPI-support.patch b/SPECS/linux-lts/0316-FROMLIST-spi-dt-bindings-add-SpacemiT-K1-SPI-support.patch index 1418affeb4..6981bb7c1e 100644 --- a/SPECS/linux-lts/0316-FROMLIST-spi-dt-bindings-add-SpacemiT-K1-SPI-support.patch +++ b/SPECS/linux-lts/0316-FROMLIST-spi-dt-bindings-add-SpacemiT-K1-SPI-support.patch @@ -1,8 +1,7 @@ -From a1ffb3d0ac5dd81cbe0345aa8213f747b7560145 Mon Sep 17 00:00:00 2001 +From 2a9661946f61c576e2b7534403eae881deb90a82 Mon Sep 17 00:00:00 2001 From: Alex Elder Date: Sat, 2 May 2026 21:30:51 -0400 -Subject: [PATCH 316/467] FROMLIST: spi: dt-bindings: add SpacemiT K1 SPI - support +Subject: [RUYI PATCH] FROMLIST: spi: dt-bindings: add SpacemiT K1 SPI support Add support for the SPI controller implemented by the SpacemiT K1 SoC. diff --git a/SPECS/linux-lts/0317-FROMLIST-spi-spacemit-introduce-SpacemiT-K1-SPI-cont.patch b/SPECS/linux-lts/0317-FROMLIST-spi-spacemit-introduce-SpacemiT-K1-SPI-cont.patch index 4359fe4be8..0ee0c336df 100644 --- a/SPECS/linux-lts/0317-FROMLIST-spi-spacemit-introduce-SpacemiT-K1-SPI-cont.patch +++ b/SPECS/linux-lts/0317-FROMLIST-spi-spacemit-introduce-SpacemiT-K1-SPI-cont.patch @@ -1,7 +1,7 @@ -From 63948c550b2a578e8e796c78af7e572c4b02c041 Mon Sep 17 00:00:00 2001 +From 36ae899198d9231685aaf77e1dbcd6d51b0c9a76 Mon Sep 17 00:00:00 2001 From: Alex Elder Date: Sat, 2 May 2026 21:30:52 -0400 -Subject: [PATCH 317/467] FROMLIST: spi: spacemit: introduce SpacemiT K1 SPI +Subject: [RUYI PATCH] FROMLIST: spi: spacemit: introduce SpacemiT K1 SPI controller driver This patch introduces the driver for the SPI controller found in the diff --git a/SPECS/linux-lts/0318-FROMLIST-riscv-dts-spacemit-define-a-SPI-controller-.patch b/SPECS/linux-lts/0318-FROMLIST-riscv-dts-spacemit-define-a-SPI-controller-.patch index 0b7dc30a96..e4a7aa5c83 100644 --- a/SPECS/linux-lts/0318-FROMLIST-riscv-dts-spacemit-define-a-SPI-controller-.patch +++ b/SPECS/linux-lts/0318-FROMLIST-riscv-dts-spacemit-define-a-SPI-controller-.patch @@ -1,8 +1,8 @@ -From 6d39268afdf29820170db1c0b7f7b3d785ed0795 Mon Sep 17 00:00:00 2001 +From e61e5b8803d80c43b4959f8e4b6e863d1730fe51 Mon Sep 17 00:00:00 2001 From: Alex Elder Date: Sat, 2 May 2026 21:30:53 -0400 -Subject: [PATCH 318/467] FROMLIST: riscv: dts: spacemit: define a SPI - controller node +Subject: [RUYI PATCH] FROMLIST: riscv: dts: spacemit: define a SPI controller + node Define a node for the fourth SoC SPI controller (number 3) on the SpacemiT K1 SoC. diff --git a/SPECS/linux-lts/0319-FROMLIST-dt-bindings-thermal-Add-SpacemiT-K1-thermal.patch b/SPECS/linux-lts/0319-FROMLIST-dt-bindings-thermal-Add-SpacemiT-K1-thermal.patch index ff0f94f63b..7bd9ac4c2d 100644 --- a/SPECS/linux-lts/0319-FROMLIST-dt-bindings-thermal-Add-SpacemiT-K1-thermal.patch +++ b/SPECS/linux-lts/0319-FROMLIST-dt-bindings-thermal-Add-SpacemiT-K1-thermal.patch @@ -1,8 +1,8 @@ -From 28a0a1dcd7e90cf89bf17b18faf7da6856e72983 Mon Sep 17 00:00:00 2001 +From 7769d31e702d0f09a02488efb2a7b55c42255417 Mon Sep 17 00:00:00 2001 From: Shuwei Wu Date: Mon, 27 Apr 2026 15:15:15 +0800 -Subject: [PATCH 319/467] FROMLIST: dt-bindings: thermal: Add SpacemiT K1 - thermal sensor +Subject: [RUYI PATCH] FROMLIST: dt-bindings: thermal: Add SpacemiT K1 thermal + sensor Document the SpacemiT K1 Thermal Sensor, which supports monitoring temperatures for five zones: soc, package, gpu, cluster0, diff --git a/SPECS/linux-lts/0320-FROMLIST-thermal-spacemit-k1-Add-thermal-sensor-supp.patch b/SPECS/linux-lts/0320-FROMLIST-thermal-spacemit-k1-Add-thermal-sensor-supp.patch index 7b249b4f9e..0a1aad818b 100644 --- a/SPECS/linux-lts/0320-FROMLIST-thermal-spacemit-k1-Add-thermal-sensor-supp.patch +++ b/SPECS/linux-lts/0320-FROMLIST-thermal-spacemit-k1-Add-thermal-sensor-supp.patch @@ -1,7 +1,7 @@ -From 28919e9eba67c4c3ff61ca30861fad9fbcf74dca Mon Sep 17 00:00:00 2001 +From e87ee0243fcb7c4480eb9766f9800d4905e11b24 Mon Sep 17 00:00:00 2001 From: Shuwei Wu Date: Mon, 27 Apr 2026 15:15:16 +0800 -Subject: [PATCH 320/467] FROMLIST: thermal: spacemit: k1: Add thermal sensor +Subject: [RUYI PATCH] FROMLIST: thermal: spacemit: k1: Add thermal sensor support The thermal sensor on K1 supports monitoring five temperature zones. diff --git a/SPECS/linux-lts/0321-FROMLIST-riscv-dts-spacemit-Add-thermal-sensor-for-K.patch b/SPECS/linux-lts/0321-FROMLIST-riscv-dts-spacemit-Add-thermal-sensor-for-K.patch index e7612aa962..6ad93704d4 100644 --- a/SPECS/linux-lts/0321-FROMLIST-riscv-dts-spacemit-Add-thermal-sensor-for-K.patch +++ b/SPECS/linux-lts/0321-FROMLIST-riscv-dts-spacemit-Add-thermal-sensor-for-K.patch @@ -1,8 +1,8 @@ -From 620eb1089f29269e2b8d8cb733ae93bd8bf2b73a Mon Sep 17 00:00:00 2001 +From 99bf7248cb67723d749134575afb9fcb3425bccd Mon Sep 17 00:00:00 2001 From: Shuwei Wu Date: Mon, 27 Apr 2026 15:15:17 +0800 -Subject: [PATCH 321/467] FROMLIST: riscv: dts: spacemit: Add thermal sensor - for K1 SoC +Subject: [RUYI PATCH] FROMLIST: riscv: dts: spacemit: Add thermal sensor for + K1 SoC Include the Thermal Sensor node in the SpacemiT K1 dtsi with definitions for registers, clocks, and interrupts. diff --git a/SPECS/linux-lts/0322-FROMLIST-net-spacemit-Free-rings-of-memory-after-unm.patch b/SPECS/linux-lts/0322-FROMLIST-net-spacemit-Free-rings-of-memory-after-unm.patch index 59ab5c280e..560b162481 100644 --- a/SPECS/linux-lts/0322-FROMLIST-net-spacemit-Free-rings-of-memory-after-unm.patch +++ b/SPECS/linux-lts/0322-FROMLIST-net-spacemit-Free-rings-of-memory-after-unm.patch @@ -1,7 +1,7 @@ -From 9b48aded2603c80a65f27877a0ac7d5d6c21f77b Mon Sep 17 00:00:00 2001 +From 83a04d13a39350e2059289ae74da6a837187c63e Mon Sep 17 00:00:00 2001 From: Vivian Wang Date: Tue, 3 Mar 2026 17:24:21 +0800 -Subject: [PATCH 322/467] FROMLIST: net: spacemit: Free rings of memory after +Subject: [RUYI PATCH] FROMLIST: net: spacemit: Free rings of memory after unmapping DMA In emac_free_{tx,rx}_resources, call dma_free_coherent() to unmap DMA diff --git a/SPECS/linux-lts/0323-FROMLIST-riscv-mm-Extract-helper-mark_new_valid_map.patch b/SPECS/linux-lts/0323-FROMLIST-riscv-mm-Extract-helper-mark_new_valid_map.patch index 3dea49628f..5a383caca0 100644 --- a/SPECS/linux-lts/0323-FROMLIST-riscv-mm-Extract-helper-mark_new_valid_map.patch +++ b/SPECS/linux-lts/0323-FROMLIST-riscv-mm-Extract-helper-mark_new_valid_map.patch @@ -1,8 +1,7 @@ -From 52f87bf6d6ba5fb8c57374827a76e0cfdaa332f4 Mon Sep 17 00:00:00 2001 +From 0615284b82b82ee1dc7ccbc7146e31afa8bbbc9f Mon Sep 17 00:00:00 2001 From: Vivian Wang Date: Tue, 3 Mar 2026 13:29:45 +0800 -Subject: [PATCH 323/467] FROMLIST: riscv: mm: Extract helper - mark_new_valid_map() +Subject: [RUYI PATCH] FROMLIST: riscv: mm: Extract helper mark_new_valid_map() In preparation of a future patch using the same mechanism for non-vmalloc addresses, extract the mark_new_valid_map() helper from diff --git a/SPECS/linux-lts/0324-FROMLIST-riscv-kfence-Call-mark_new_valid_map-for-kf.patch b/SPECS/linux-lts/0324-FROMLIST-riscv-kfence-Call-mark_new_valid_map-for-kf.patch index e67a8f5e7c..24cfe28e1b 100644 --- a/SPECS/linux-lts/0324-FROMLIST-riscv-kfence-Call-mark_new_valid_map-for-kf.patch +++ b/SPECS/linux-lts/0324-FROMLIST-riscv-kfence-Call-mark_new_valid_map-for-kf.patch @@ -1,8 +1,8 @@ -From 8417f8da2a6a1f07550805e452db0d0ebe5c568a Mon Sep 17 00:00:00 2001 +From a6ee02e2ad7a759a5906206b87b7525c1ac580e4 Mon Sep 17 00:00:00 2001 From: Vivian Wang Date: Tue, 3 Mar 2026 13:29:46 +0800 -Subject: [PATCH 324/467] FROMLIST: riscv: kfence: Call mark_new_valid_map() - for kfence_unprotect() +Subject: [RUYI PATCH] FROMLIST: riscv: kfence: Call mark_new_valid_map() for + kfence_unprotect() In kfence_protect_page(), which kfence_unprotect() calls, we cannot send IPIs to other CPUs to ask them to flush TLB. This may lead to those CPUs diff --git a/SPECS/linux-lts/0325-FROMLIST-riscv-mm-Rename-new_vmalloc-into-new_valid_.patch b/SPECS/linux-lts/0325-FROMLIST-riscv-mm-Rename-new_vmalloc-into-new_valid_.patch index de6f2fb9c4..a75c6a24b4 100644 --- a/SPECS/linux-lts/0325-FROMLIST-riscv-mm-Rename-new_vmalloc-into-new_valid_.patch +++ b/SPECS/linux-lts/0325-FROMLIST-riscv-mm-Rename-new_vmalloc-into-new_valid_.patch @@ -1,7 +1,7 @@ -From 99970ee4696d11a17cec30bcbaae18f61ca484e0 Mon Sep 17 00:00:00 2001 +From 0ff2687ed24d31a6e1dcee2c1fd287112688dabe Mon Sep 17 00:00:00 2001 From: Vivian Wang Date: Tue, 3 Mar 2026 13:29:47 +0800 -Subject: [PATCH 325/467] FROMLIST: riscv: mm: Rename new_vmalloc into +Subject: [RUYI PATCH] FROMLIST: riscv: mm: Rename new_vmalloc into new_valid_map_cpus Since this mechanism is now used for the kfence pool, which comes from diff --git a/SPECS/linux-lts/0326-FROMLIST-riscv-mm-Use-the-bitmap-API-for-new_valid_m.patch b/SPECS/linux-lts/0326-FROMLIST-riscv-mm-Use-the-bitmap-API-for-new_valid_m.patch index 4e1aa9308b..6e8c075234 100644 --- a/SPECS/linux-lts/0326-FROMLIST-riscv-mm-Use-the-bitmap-API-for-new_valid_m.patch +++ b/SPECS/linux-lts/0326-FROMLIST-riscv-mm-Use-the-bitmap-API-for-new_valid_m.patch @@ -1,7 +1,7 @@ -From de070642f61aec41c533f778ceb930d16a10c18b Mon Sep 17 00:00:00 2001 +From e7c9b52a88814781a9b973a8bc5d43cb3655f869 Mon Sep 17 00:00:00 2001 From: Vivian Wang Date: Tue, 3 Mar 2026 13:29:48 +0800 -Subject: [PATCH 326/467] FROMLIST: riscv: mm: Use the bitmap API for +Subject: [RUYI PATCH] FROMLIST: riscv: mm: Use the bitmap API for new_valid_map_cpus The bitmap was defined with incorrect size. Fix it by using the proper diff --git a/SPECS/linux-lts/0327-FROMLIST-riscv-mm-Unconditionally-sfence.vma-for-spu.patch b/SPECS/linux-lts/0327-FROMLIST-riscv-mm-Unconditionally-sfence.vma-for-spu.patch index 5c74f6500e..9d00d9a51f 100644 --- a/SPECS/linux-lts/0327-FROMLIST-riscv-mm-Unconditionally-sfence.vma-for-spu.patch +++ b/SPECS/linux-lts/0327-FROMLIST-riscv-mm-Unconditionally-sfence.vma-for-spu.patch @@ -1,7 +1,7 @@ -From 4ffd4c28732d478d17dffb2e85279d7eca746271 Mon Sep 17 00:00:00 2001 +From 0236a57f077395bd67012bf4e9d33ba23ecdedd5 Mon Sep 17 00:00:00 2001 From: Vivian Wang Date: Tue, 3 Mar 2026 13:29:49 +0800 -Subject: [PATCH 327/467] FROMLIST: riscv: mm: Unconditionally sfence.vma for +Subject: [RUYI PATCH] FROMLIST: riscv: mm: Unconditionally sfence.vma for spurious fault Svvptc does not guarantee that it's safe to just return here. Since we diff --git a/SPECS/linux-lts/0328-FROMLIST-dt-bindings-phy-spacemit-k3-add-USB2-PHY-su.patch b/SPECS/linux-lts/0328-FROMLIST-dt-bindings-phy-spacemit-k3-add-USB2-PHY-su.patch index 43c7534f17..113e960802 100644 --- a/SPECS/linux-lts/0328-FROMLIST-dt-bindings-phy-spacemit-k3-add-USB2-PHY-su.patch +++ b/SPECS/linux-lts/0328-FROMLIST-dt-bindings-phy-spacemit-k3-add-USB2-PHY-su.patch @@ -1,8 +1,8 @@ -From bba7975767efba6ca778e4283bcfd050aa140145 Mon Sep 17 00:00:00 2001 +From 1bee6d3eac2cd34b39a8ce2c3e590aaf2f4f38f1 Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Thu, 5 Mar 2026 01:00:51 +0000 -Subject: [PATCH 328/467] FROMLIST: dt-bindings: phy: spacemit: k3: add USB2 - PHY support +Subject: [RUYI PATCH] FROMLIST: dt-bindings: phy: spacemit: k3: add USB2 PHY + support Introduce a compatible string for the USB2 PHY in SpacemiT K3 SoC. The IP of USB2 PHY mostly shares the same functionalities with K1 SoC, while has diff --git a/SPECS/linux-lts/0329-FROMLIST-phy-k1-usb-k3-add-USB2-PHY-support.patch b/SPECS/linux-lts/0329-FROMLIST-phy-k1-usb-k3-add-USB2-PHY-support.patch index 1d3d66b5ab..309f8ea1b2 100644 --- a/SPECS/linux-lts/0329-FROMLIST-phy-k1-usb-k3-add-USB2-PHY-support.patch +++ b/SPECS/linux-lts/0329-FROMLIST-phy-k1-usb-k3-add-USB2-PHY-support.patch @@ -1,7 +1,7 @@ -From 0ad076c041bad32acd43346053a2e901e8f92fe6 Mon Sep 17 00:00:00 2001 +From e42b13b733fe6bf35801da4dd939e98421377976 Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Thu, 5 Mar 2026 01:00:52 +0000 -Subject: [PATCH 329/467] FROMLIST: phy: k1-usb: k3: add USB2 PHY support +Subject: [RUYI PATCH] FROMLIST: phy: k1-usb: k3: add USB2 PHY support Add USB2 PHY support for SpacemiT K3 SoC. diff --git a/SPECS/linux-lts/0330-FROMLIST-cpufreq-dt-platdev-Add-SpacemiT-K1-SoC-to-t.patch b/SPECS/linux-lts/0330-FROMLIST-cpufreq-dt-platdev-Add-SpacemiT-K1-SoC-to-t.patch index 3e745bddcc..f84dd26276 100644 --- a/SPECS/linux-lts/0330-FROMLIST-cpufreq-dt-platdev-Add-SpacemiT-K1-SoC-to-t.patch +++ b/SPECS/linux-lts/0330-FROMLIST-cpufreq-dt-platdev-Add-SpacemiT-K1-SoC-to-t.patch @@ -1,7 +1,7 @@ -From 23c19485341345cc9ae14d6943205d5dec3eb56e Mon Sep 17 00:00:00 2001 +From 313a26d3fa86f65c2c9bcfdaa1d325594d4d3960 Mon Sep 17 00:00:00 2001 From: Shuwei Wu Date: Fri, 10 Apr 2026 15:58:22 +0800 -Subject: [PATCH 330/467] FROMLIST: cpufreq: dt-platdev: Add SpacemiT K1 SoC to +Subject: [RUYI PATCH] FROMLIST: cpufreq: dt-platdev: Add SpacemiT K1 SoC to the allowlist The SpacemiT K1 SoC uses standard device tree based CPU frequency diff --git a/SPECS/linux-lts/0331-FROMLIST-riscv-dts-spacemit-Add-cpu-scaling-for-K1-S.patch b/SPECS/linux-lts/0331-FROMLIST-riscv-dts-spacemit-Add-cpu-scaling-for-K1-S.patch index 4dea3b010e..ab37eecf22 100644 --- a/SPECS/linux-lts/0331-FROMLIST-riscv-dts-spacemit-Add-cpu-scaling-for-K1-S.patch +++ b/SPECS/linux-lts/0331-FROMLIST-riscv-dts-spacemit-Add-cpu-scaling-for-K1-S.patch @@ -1,8 +1,8 @@ -From 2dd9746124535df6e29c3f1b6ac66084412c1e34 Mon Sep 17 00:00:00 2001 +From 76023519e9da3b79768d23f7ffe1a08e230674bd Mon Sep 17 00:00:00 2001 From: Shuwei Wu Date: Fri, 10 Apr 2026 15:58:23 +0800 -Subject: [PATCH 331/467] FROMLIST: riscv: dts: spacemit: Add cpu scaling for - K1 SoC +Subject: [RUYI PATCH] FROMLIST: riscv: dts: spacemit: Add cpu scaling for K1 + SoC Add Operating Performance Points (OPP) tables and CPU clock properties for the two clusters in the SpacemiT K1 SoC. diff --git a/SPECS/linux-lts/0332-FROMLIST-riscv-mm-Define-DIRECT_MAP_PHYSMEM_END.patch b/SPECS/linux-lts/0332-FROMLIST-riscv-mm-Define-DIRECT_MAP_PHYSMEM_END.patch index 6f2c86a077..a5d6058fa5 100644 --- a/SPECS/linux-lts/0332-FROMLIST-riscv-mm-Define-DIRECT_MAP_PHYSMEM_END.patch +++ b/SPECS/linux-lts/0332-FROMLIST-riscv-mm-Define-DIRECT_MAP_PHYSMEM_END.patch @@ -1,7 +1,7 @@ -From 84df59a45f81e8ef941f44d41c695a0186bc324d Mon Sep 17 00:00:00 2001 +From b71c8252ef37bceafb077b1ac8b79eb81f094356 Mon Sep 17 00:00:00 2001 From: Vivian Wang Date: Mon, 9 Mar 2026 19:09:38 +0800 -Subject: [PATCH 332/467] FROMLIST: riscv: mm: Define DIRECT_MAP_PHYSMEM_END +Subject: [RUYI PATCH] FROMLIST: riscv: mm: Define DIRECT_MAP_PHYSMEM_END On RISC-V, the actual mappable range of physical address space is dependent on the current MMU mode i.e. satp_mode (See diff --git a/SPECS/linux-lts/0333-FROMLIST-drm-verisilicon-add-max-cursor-size-to-HWDB.patch b/SPECS/linux-lts/0333-FROMLIST-drm-verisilicon-add-max-cursor-size-to-HWDB.patch index ffdaa4ceaf..3cac36fd67 100644 --- a/SPECS/linux-lts/0333-FROMLIST-drm-verisilicon-add-max-cursor-size-to-HWDB.patch +++ b/SPECS/linux-lts/0333-FROMLIST-drm-verisilicon-add-max-cursor-size-to-HWDB.patch @@ -1,8 +1,7 @@ -From e9080d8837f54bf02fccf98d737de780bbba0ca0 Mon Sep 17 00:00:00 2001 +From 3d54bf791cf5017cc96bc5222094dc98fb50e585 Mon Sep 17 00:00:00 2001 From: Icenowy Zheng Date: Thu, 7 May 2026 01:56:09 +0800 -Subject: [PATCH 333/467] FROMLIST: drm: verisilicon: add max cursor size to - HWDB +Subject: [RUYI PATCH] FROMLIST: drm: verisilicon: add max cursor size to HWDB Different display controller variants support different maximum cursor size. All known DC8200 variants support both 32x32 and 64x64, but some diff --git a/SPECS/linux-lts/0334-FROMLIST-drm-verisilicon-add-support-for-cursor-plan.patch b/SPECS/linux-lts/0334-FROMLIST-drm-verisilicon-add-support-for-cursor-plan.patch index efa9ea2a66..0430f73844 100644 --- a/SPECS/linux-lts/0334-FROMLIST-drm-verisilicon-add-support-for-cursor-plan.patch +++ b/SPECS/linux-lts/0334-FROMLIST-drm-verisilicon-add-support-for-cursor-plan.patch @@ -1,7 +1,7 @@ -From 2bd08175bb99fd7bbb5cb6b7fdd965ec4ba85dc8 Mon Sep 17 00:00:00 2001 +From 5b2cb452135b05fe65a5440fa7f2e39d9b28d5f3 Mon Sep 17 00:00:00 2001 From: Icenowy Zheng Date: Thu, 7 May 2026 01:56:10 +0800 -Subject: [PATCH 334/467] FROMLIST: drm: verisilicon: add support for cursor +Subject: [RUYI PATCH] FROMLIST: drm: verisilicon: add support for cursor planes Verisilicon display controllers support hardware cursors per output diff --git a/SPECS/linux-lts/0335-FROMLIST-riscv-add-UltraRISC-SoC-family-Kconfig-supp.patch b/SPECS/linux-lts/0335-FROMLIST-riscv-add-UltraRISC-SoC-family-Kconfig-supp.patch index a0682cc71a..6d1f390fdf 100644 --- a/SPECS/linux-lts/0335-FROMLIST-riscv-add-UltraRISC-SoC-family-Kconfig-supp.patch +++ b/SPECS/linux-lts/0335-FROMLIST-riscv-add-UltraRISC-SoC-family-Kconfig-supp.patch @@ -1,7 +1,7 @@ -From cfebf812bf3cf178789e8e4b6e59b083c727c04a Mon Sep 17 00:00:00 2001 +From 7670121cc9020d50b0705929db01a06e18578be0 Mon Sep 17 00:00:00 2001 From: Jia Wang Date: Mon, 27 Apr 2026 09:32:10 +0800 -Subject: [PATCH 335/467] FROMLIST: riscv: add UltraRISC SoC family Kconfig +Subject: [RUYI PATCH] FROMLIST: riscv: add UltraRISC SoC family Kconfig support The first SoC in the UltraRISC series is UR-DP1000, containing octa diff --git a/SPECS/linux-lts/0336-FROMLIST-dt-bindings-PCI-Add-UltraRISC-DP1000-PCIe-c.patch b/SPECS/linux-lts/0336-FROMLIST-dt-bindings-PCI-Add-UltraRISC-DP1000-PCIe-c.patch index 3b43f26e44..e2d8d4c7b2 100644 --- a/SPECS/linux-lts/0336-FROMLIST-dt-bindings-PCI-Add-UltraRISC-DP1000-PCIe-c.patch +++ b/SPECS/linux-lts/0336-FROMLIST-dt-bindings-PCI-Add-UltraRISC-DP1000-PCIe-c.patch @@ -1,7 +1,7 @@ -From e5f3fecea63d9f7a27e40543136978db11aaa96e Mon Sep 17 00:00:00 2001 +From 7bdcfb039d0ab0b746a0ee44a449149463a7b94e Mon Sep 17 00:00:00 2001 From: Jia Wang Date: Mon, 27 Apr 2026 09:32:11 +0800 -Subject: [PATCH 336/467] FROMLIST: dt-bindings: PCI: Add UltraRISC DP1000 PCIe +Subject: [RUYI PATCH] FROMLIST: dt-bindings: PCI: Add UltraRISC DP1000 PCIe controller Add UltraRISC DP1000 SoC PCIe controller devicetree bindings. diff --git a/SPECS/linux-lts/0337-FROMLIST-PCI-ultrarisc-Add-UltraRISC-DP1000-PCIe-Roo.patch b/SPECS/linux-lts/0337-FROMLIST-PCI-ultrarisc-Add-UltraRISC-DP1000-PCIe-Roo.patch index 7be27531fb..520f243b8f 100644 --- a/SPECS/linux-lts/0337-FROMLIST-PCI-ultrarisc-Add-UltraRISC-DP1000-PCIe-Roo.patch +++ b/SPECS/linux-lts/0337-FROMLIST-PCI-ultrarisc-Add-UltraRISC-DP1000-PCIe-Roo.patch @@ -1,8 +1,8 @@ -From 5bcc18d72b72bff66068705f1f27ce4557a42f48 Mon Sep 17 00:00:00 2001 +From 4263860bea4eb50e8c9cce4769c096e144fd0400 Mon Sep 17 00:00:00 2001 From: Xincheng Zhang Date: Mon, 27 Apr 2026 09:32:12 +0800 -Subject: [PATCH 337/467] FROMLIST: PCI: ultrarisc: Add UltraRISC DP1000 PCIe - Root Complex driver +Subject: [RUYI PATCH] FROMLIST: PCI: ultrarisc: Add UltraRISC DP1000 PCIe Root + Complex driver Add DP1000 SoC PCIe Root Complex driver. diff --git a/SPECS/linux-lts/0338-FROMLIST-serial-8250_dwlib-move-DesignWare-register-.patch b/SPECS/linux-lts/0338-FROMLIST-serial-8250_dwlib-move-DesignWare-register-.patch index ec329324ac..43fcf3979b 100644 --- a/SPECS/linux-lts/0338-FROMLIST-serial-8250_dwlib-move-DesignWare-register-.patch +++ b/SPECS/linux-lts/0338-FROMLIST-serial-8250_dwlib-move-DesignWare-register-.patch @@ -1,8 +1,8 @@ -From 886ed98a1e1397b695753fffcc8263183552c408 Mon Sep 17 00:00:00 2001 +From 7215c59bd1680f8f694982585919d6ec01c2e009 Mon Sep 17 00:00:00 2001 From: Jia Wang Date: Tue, 28 Apr 2026 13:26:26 +0800 -Subject: [PATCH 338/467] FROMLIST: serial: 8250_dwlib: move DesignWare - register definitions to header +Subject: [RUYI PATCH] FROMLIST: serial: 8250_dwlib: move DesignWare register + definitions to header Move the DW_UART_* register offsets and CPR bit/field definitions from 8250_dwlib.c into 8250_dwlib.h so they can be shared by 8250_dw and diff --git a/SPECS/linux-lts/0339-FROMLIST-serial-8250_dw-build-Renesas-RZN1-CPR-value.patch b/SPECS/linux-lts/0339-FROMLIST-serial-8250_dw-build-Renesas-RZN1-CPR-value.patch index 130d9f9ba9..361bfc6547 100644 --- a/SPECS/linux-lts/0339-FROMLIST-serial-8250_dw-build-Renesas-RZN1-CPR-value.patch +++ b/SPECS/linux-lts/0339-FROMLIST-serial-8250_dw-build-Renesas-RZN1-CPR-value.patch @@ -1,8 +1,8 @@ -From 42a71ab9826c831f05fc6ceba6e355108b57394e Mon Sep 17 00:00:00 2001 +From 6180d1c44da7f8a61ffe42b1aa5f7fed0db947c5 Mon Sep 17 00:00:00 2001 From: Jia Wang Date: Tue, 28 Apr 2026 13:26:27 +0800 -Subject: [PATCH 339/467] FROMLIST: serial: 8250_dw: build Renesas RZN1 CPR - value from DW_UART_CPR_* definitions +Subject: [RUYI PATCH] FROMLIST: serial: 8250_dw: build Renesas RZN1 CPR value + from DW_UART_CPR_* definitions Replace the magic CPR value for Renesas RZ/N1 with a composition using DW_UART_CPR_* bit/field definitions and FIELD_PREP_CONST(). diff --git a/SPECS/linux-lts/0340-FROMLIST-dt-bindings-serial-snps-dw-apb-uart-Add-Ult.patch b/SPECS/linux-lts/0340-FROMLIST-dt-bindings-serial-snps-dw-apb-uart-Add-Ult.patch index 7595c4aa93..2d2f322fc8 100644 --- a/SPECS/linux-lts/0340-FROMLIST-dt-bindings-serial-snps-dw-apb-uart-Add-Ult.patch +++ b/SPECS/linux-lts/0340-FROMLIST-dt-bindings-serial-snps-dw-apb-uart-Add-Ult.patch @@ -1,7 +1,7 @@ -From 236f493127f843659bf2a955a31f416c1f8239bf Mon Sep 17 00:00:00 2001 +From 0b0183bf49240d8f6c2d66b6eaff2fe17c541d19 Mon Sep 17 00:00:00 2001 From: Jia Wang Date: Tue, 28 Apr 2026 13:26:28 +0800 -Subject: [PATCH 340/467] FROMLIST: dt-bindings: serial: snps-dw-apb-uart: Add +Subject: [RUYI PATCH] FROMLIST: dt-bindings: serial: snps-dw-apb-uart: Add UltraRISC DP1000 UART UltraRISC DP1000 integrates a Synopsys DesignWare APB UART, but it does diff --git a/SPECS/linux-lts/0341-FROMLIST-serial-8250_dw-Use-a-fixed-CPR-value-for-Ul.patch b/SPECS/linux-lts/0341-FROMLIST-serial-8250_dw-Use-a-fixed-CPR-value-for-Ul.patch index 35aee10ecf..710885bf79 100644 --- a/SPECS/linux-lts/0341-FROMLIST-serial-8250_dw-Use-a-fixed-CPR-value-for-Ul.patch +++ b/SPECS/linux-lts/0341-FROMLIST-serial-8250_dw-Use-a-fixed-CPR-value-for-Ul.patch @@ -1,7 +1,7 @@ -From 406c8fb8927861192219fce3ae1613ad4a1e0f0e Mon Sep 17 00:00:00 2001 +From 07e647f6d38a2395768391b1126d6af257685679 Mon Sep 17 00:00:00 2001 From: Jia Wang Date: Tue, 28 Apr 2026 13:26:29 +0800 -Subject: [PATCH 341/467] FROMLIST: serial: 8250_dw: Use a fixed CPR value for +Subject: [RUYI PATCH] FROMLIST: serial: 8250_dw: Use a fixed CPR value for UltraRISC DP1000 UART The UltraRISC DP1000 UART does not provide the standard CPR register used diff --git a/SPECS/linux-lts/0342-FROMLIST-riscv-disable-local-interrupts-and-stop-oth.patch b/SPECS/linux-lts/0342-FROMLIST-riscv-disable-local-interrupts-and-stop-oth.patch index 0f7ba1cddb..e964c8cfd5 100644 --- a/SPECS/linux-lts/0342-FROMLIST-riscv-disable-local-interrupts-and-stop-oth.patch +++ b/SPECS/linux-lts/0342-FROMLIST-riscv-disable-local-interrupts-and-stop-oth.patch @@ -1,8 +1,8 @@ -From 1c12aaa685ca33a5f2a5de71d4290b7374d1266c Mon Sep 17 00:00:00 2001 +From 53a9a6f9561ecf77c64e14e718b3c6677e450356 Mon Sep 17 00:00:00 2001 From: Troy Mitchell Date: Tue, 17 Mar 2026 16:48:06 +0800 -Subject: [PATCH 342/467] FROMLIST: riscv: disable local interrupts and stop - other CPUs before reboot/shutdown +Subject: [RUYI PATCH] FROMLIST: riscv: disable local interrupts and stop other + CPUs before reboot/shutdown Currently, the RISC-V implementation of machine_restart(), machine_halt(), and machine_power_off() invokes the kernel teardown chains (e.g., diff --git a/SPECS/linux-lts/0343-FROMLIST-drm-bridge-th1520-dw-hdmi-Fix-error-check-o.patch b/SPECS/linux-lts/0343-FROMLIST-drm-bridge-th1520-dw-hdmi-Fix-error-check-o.patch index 4858ae86ef..baf487668c 100644 --- a/SPECS/linux-lts/0343-FROMLIST-drm-bridge-th1520-dw-hdmi-Fix-error-check-o.patch +++ b/SPECS/linux-lts/0343-FROMLIST-drm-bridge-th1520-dw-hdmi-Fix-error-check-o.patch @@ -1,8 +1,8 @@ -From ccbeae62330c25b6ad110b82754b6ef592620f48 Mon Sep 17 00:00:00 2001 +From c3dbfd57b9930def2f6e386d4a107127d798a89e Mon Sep 17 00:00:00 2001 From: Felix Gu Date: Sat, 21 Mar 2026 03:12:10 +0800 -Subject: [PATCH 343/467] FROMLIST: drm/bridge: th1520-dw-hdmi: Fix error check - on dw_hdmi_probe() return value +Subject: [RUYI PATCH] FROMLIST: drm/bridge: th1520-dw-hdmi: Fix error check on + dw_hdmi_probe() return value The error check after calling dw_hdmi_probe() was incorrectly checking the struct pointer hdmi instead of the probe result hdmi->dw_hdmi. diff --git a/SPECS/linux-lts/0344-FROMLIST-drm-bridge-th1520-dw-hdmi-Fix-remove-callba.patch b/SPECS/linux-lts/0344-FROMLIST-drm-bridge-th1520-dw-hdmi-Fix-remove-callba.patch index 98f6f2d216..107fa9a940 100644 --- a/SPECS/linux-lts/0344-FROMLIST-drm-bridge-th1520-dw-hdmi-Fix-remove-callba.patch +++ b/SPECS/linux-lts/0344-FROMLIST-drm-bridge-th1520-dw-hdmi-Fix-remove-callba.patch @@ -1,7 +1,7 @@ -From a97ea68639336a5b8e0fdb9e4c6983351f80d0a9 Mon Sep 17 00:00:00 2001 +From e4498bef7d35202c1d4fff03e1f738c01c63141b Mon Sep 17 00:00:00 2001 From: Felix Gu Date: Sat, 21 Mar 2026 03:12:11 +0800 -Subject: [PATCH 344/467] FROMLIST: drm/bridge: th1520-dw-hdmi: Fix remove() +Subject: [RUYI PATCH] FROMLIST: drm/bridge: th1520-dw-hdmi: Fix remove() callback This driver stores struct th1520_hdmi * in platform drvdata, but diff --git a/SPECS/linux-lts/0345-FROMLIST-riscv-dts-spacemit-Enable-i2c8-adapter-for-.patch b/SPECS/linux-lts/0345-FROMLIST-riscv-dts-spacemit-Enable-i2c8-adapter-for-.patch index f3db0b293e..f320d51fd9 100644 --- a/SPECS/linux-lts/0345-FROMLIST-riscv-dts-spacemit-Enable-i2c8-adapter-for-.patch +++ b/SPECS/linux-lts/0345-FROMLIST-riscv-dts-spacemit-Enable-i2c8-adapter-for-.patch @@ -1,8 +1,8 @@ -From 166375a08d14e14a8b6eb3f9258fcba57cb866dc Mon Sep 17 00:00:00 2001 +From b6fedd583f0486d6ff23a73e611445adac11b2b7 Mon Sep 17 00:00:00 2001 From: Han Gao Date: Tue, 7 Apr 2026 23:28:14 +0800 -Subject: [PATCH 345/467] FROMLIST: riscv: dts: spacemit: Enable i2c8 adapter - for OrangePi RV2 +Subject: [RUYI PATCH] FROMLIST: riscv: dts: spacemit: Enable i2c8 adapter for + OrangePi RV2 The adapter is used to access the SpacemiT P1 PMIC present in this board. diff --git a/SPECS/linux-lts/0346-FROMLIST-riscv-dts-spacemit-Define-the-P1-PMIC-regul.patch b/SPECS/linux-lts/0346-FROMLIST-riscv-dts-spacemit-Define-the-P1-PMIC-regul.patch index 917a05e075..d8cc2b7e7f 100644 --- a/SPECS/linux-lts/0346-FROMLIST-riscv-dts-spacemit-Define-the-P1-PMIC-regul.patch +++ b/SPECS/linux-lts/0346-FROMLIST-riscv-dts-spacemit-Define-the-P1-PMIC-regul.patch @@ -1,7 +1,7 @@ -From 604976f3e404c825a56845e3b4bd0137fc436656 Mon Sep 17 00:00:00 2001 +From 8a8b83695e5206dc768419823d357d36066dcc1a Mon Sep 17 00:00:00 2001 From: Han Gao Date: Tue, 7 Apr 2026 23:28:15 +0800 -Subject: [PATCH 346/467] FROMLIST: riscv: dts: spacemit: Define the P1 PMIC +Subject: [RUYI PATCH] FROMLIST: riscv: dts: spacemit: Define the P1 PMIC regulators for OrangePi RV2 Define the DC power input and the 4v power as fixed regulator supplies. diff --git a/SPECS/linux-lts/0347-FROMLIST-riscv-dts-spacemit-Enable-USB3.0-PCIe-on-Or.patch b/SPECS/linux-lts/0347-FROMLIST-riscv-dts-spacemit-Enable-USB3.0-PCIe-on-Or.patch index cb5590d8b9..2eece049ed 100644 --- a/SPECS/linux-lts/0347-FROMLIST-riscv-dts-spacemit-Enable-USB3.0-PCIe-on-Or.patch +++ b/SPECS/linux-lts/0347-FROMLIST-riscv-dts-spacemit-Enable-USB3.0-PCIe-on-Or.patch @@ -1,7 +1,7 @@ -From f555e0c21e1df43b0df0074068872e999f825c2b Mon Sep 17 00:00:00 2001 +From be6360dcda59815d23e91c2273c7af8ee688b197 Mon Sep 17 00:00:00 2001 From: Han Gao Date: Tue, 7 Apr 2026 23:28:16 +0800 -Subject: [PATCH 347/467] FROMLIST: riscv: dts: spacemit: Enable USB3.0/PCIe on +Subject: [RUYI PATCH] FROMLIST: riscv: dts: spacemit: Enable USB3.0/PCIe on OrangePi RV2 Enable the DWC3 USB 3.0 controller and its associated usbphy2 on the diff --git a/SPECS/linux-lts/0348-FROMLIST-dt-bindings-dmaengine-Add-SpacemiT-K3-DMA-c.patch b/SPECS/linux-lts/0348-FROMLIST-dt-bindings-dmaengine-Add-SpacemiT-K3-DMA-c.patch index b8175caff4..ec194d2c76 100644 --- a/SPECS/linux-lts/0348-FROMLIST-dt-bindings-dmaengine-Add-SpacemiT-K3-DMA-c.patch +++ b/SPECS/linux-lts/0348-FROMLIST-dt-bindings-dmaengine-Add-SpacemiT-K3-DMA-c.patch @@ -1,7 +1,7 @@ -From 737838a83cfda4cb3b3cf4a600489972c9b23a6d Mon Sep 17 00:00:00 2001 +From 35352343154bd3b77a7ce708b33610ead4fa645b Mon Sep 17 00:00:00 2001 From: Guodong Xu Date: Mon, 18 May 2026 11:32:41 +0800 -Subject: [PATCH 348/467] FROMLIST: dt-bindings: dmaengine: Add SpacemiT K3 DMA +Subject: [RUYI PATCH] FROMLIST: dt-bindings: dmaengine: Add SpacemiT K3 DMA compatible string Add the "spacemit,k3-pdma" compatible string for the SpacemiT K3 SoC. diff --git a/SPECS/linux-lts/0349-FROMLIST-dmaengine-mmp_pdma-refactor-DRCMR-access-wi.patch b/SPECS/linux-lts/0349-FROMLIST-dmaengine-mmp_pdma-refactor-DRCMR-access-wi.patch index 71e53cff3d..2671371cc9 100644 --- a/SPECS/linux-lts/0349-FROMLIST-dmaengine-mmp_pdma-refactor-DRCMR-access-wi.patch +++ b/SPECS/linux-lts/0349-FROMLIST-dmaengine-mmp_pdma-refactor-DRCMR-access-wi.patch @@ -1,7 +1,7 @@ -From 5f2df0c7e8305b8b19caa95ac987d272196435e5 Mon Sep 17 00:00:00 2001 +From 086a8550aad82551854f105777656e655e68512f Mon Sep 17 00:00:00 2001 From: Guodong Xu Date: Mon, 18 May 2026 11:32:42 +0800 -Subject: [PATCH 349/467] FROMLIST: dmaengine: mmp_pdma: refactor DRCMR access +Subject: [RUYI PATCH] FROMLIST: dmaengine: mmp_pdma: refactor DRCMR access with helper function Refactor the DRCMR macro into a helper function mmp_pdma_get_drcmr() diff --git a/SPECS/linux-lts/0350-FROMLIST-dmaengine-mmp_pdma-add-SpacemiT-K3-support.patch b/SPECS/linux-lts/0350-FROMLIST-dmaengine-mmp_pdma-add-SpacemiT-K3-support.patch index 8c3206e558..db3d534951 100644 --- a/SPECS/linux-lts/0350-FROMLIST-dmaengine-mmp_pdma-add-SpacemiT-K3-support.patch +++ b/SPECS/linux-lts/0350-FROMLIST-dmaengine-mmp_pdma-add-SpacemiT-K3-support.patch @@ -1,8 +1,7 @@ -From 84f3de67f834507b179cd81bf093f799203f394a Mon Sep 17 00:00:00 2001 +From e077c02ed73be7f8782ceacc9a2f7dd9396857b0 Mon Sep 17 00:00:00 2001 From: Guodong Xu Date: Mon, 18 May 2026 11:32:43 +0800 -Subject: [PATCH 350/467] FROMLIST: dmaengine: mmp_pdma: add SpacemiT K3 - support +Subject: [RUYI PATCH] FROMLIST: dmaengine: mmp_pdma: add SpacemiT K3 support SpacemiT K3 reuses most of the PDMA IP design found on K1, with one difference being the extended DRCMR base address. Add "spacemit,k3-pdma" diff --git a/SPECS/linux-lts/0351-FROMLIST-riscv-dts-spacemit-Add-PDMA-controller-node.patch b/SPECS/linux-lts/0351-FROMLIST-riscv-dts-spacemit-Add-PDMA-controller-node.patch index 22e28c9866..3b955dda90 100644 --- a/SPECS/linux-lts/0351-FROMLIST-riscv-dts-spacemit-Add-PDMA-controller-node.patch +++ b/SPECS/linux-lts/0351-FROMLIST-riscv-dts-spacemit-Add-PDMA-controller-node.patch @@ -1,8 +1,8 @@ -From 35c22cf7e41f72e6b806aa58d4e48f88725f6c79 Mon Sep 17 00:00:00 2001 +From 21b7895de7539f827659bef3d905b99563ac4277 Mon Sep 17 00:00:00 2001 From: Troy Mitchell Date: Mon, 18 May 2026 11:32:44 +0800 -Subject: [PATCH 351/467] FROMLIST: riscv: dts: spacemit: Add PDMA controller - node for K3 SoC +Subject: [RUYI PATCH] FROMLIST: riscv: dts: spacemit: Add PDMA controller node + for K3 SoC Add the Peripheral DMA (PDMA) controller node for the SpacemiT K3 SoC. The PDMA controller provides general-purpose DMA capabilities for various diff --git a/SPECS/linux-lts/0352-FROMLIST-dt-bindings-pci-sophgo-Add-dma-coherent-pro.patch b/SPECS/linux-lts/0352-FROMLIST-dt-bindings-pci-sophgo-Add-dma-coherent-pro.patch index dbfadcecc7..505c1fcf8b 100644 --- a/SPECS/linux-lts/0352-FROMLIST-dt-bindings-pci-sophgo-Add-dma-coherent-pro.patch +++ b/SPECS/linux-lts/0352-FROMLIST-dt-bindings-pci-sophgo-Add-dma-coherent-pro.patch @@ -1,7 +1,7 @@ -From de29158aef7f0ff1a48fb23a0fed37c1d80cd812 Mon Sep 17 00:00:00 2001 +From e45053fa3fb846fee16140a46bfca3810a696d3a Mon Sep 17 00:00:00 2001 From: Han Gao Date: Wed, 1 Apr 2026 01:12:47 +0800 -Subject: [PATCH 352/467] FROMLIST: dt-bindings: pci: sophgo: Add dma-coherent +Subject: [RUYI PATCH] FROMLIST: dt-bindings: pci: sophgo: Add dma-coherent property for SG2042 Add dma-coherent as an allowed property in the SG2042 PCIe host diff --git a/SPECS/linux-lts/0353-FROMLIST-riscv-dts-sophgo-Add-dma-coherent-to-SG2042.patch b/SPECS/linux-lts/0353-FROMLIST-riscv-dts-sophgo-Add-dma-coherent-to-SG2042.patch index 9b7fdd2999..59e22401d2 100644 --- a/SPECS/linux-lts/0353-FROMLIST-riscv-dts-sophgo-Add-dma-coherent-to-SG2042.patch +++ b/SPECS/linux-lts/0353-FROMLIST-riscv-dts-sophgo-Add-dma-coherent-to-SG2042.patch @@ -1,8 +1,8 @@ -From 14a4dab155f695a1b19f164b9eeee33c118daf70 Mon Sep 17 00:00:00 2001 +From 4edb2b9deb6868de278295f9df339eb66e2dc5e6 Mon Sep 17 00:00:00 2001 From: Han Gao Date: Wed, 1 Apr 2026 01:12:48 +0800 -Subject: [PATCH 353/467] FROMLIST: riscv: dts: sophgo: Add dma-coherent to - SG2042 PCIe controllers +Subject: [RUYI PATCH] FROMLIST: riscv: dts: sophgo: Add dma-coherent to SG2042 + PCIe controllers SG2042's PCIe root complexes are cache-coherent with the CPU. Mark all four PCIe controller nodes (pcie_rc0 through pcie_rc3) as dma-coherent diff --git a/SPECS/linux-lts/0354-FROMLIST-riscv-mm-fix-SWIOTLB-initialization-for-sys.patch b/SPECS/linux-lts/0354-FROMLIST-riscv-mm-fix-SWIOTLB-initialization-for-sys.patch index 618303a1e3..54ce584981 100644 --- a/SPECS/linux-lts/0354-FROMLIST-riscv-mm-fix-SWIOTLB-initialization-for-sys.patch +++ b/SPECS/linux-lts/0354-FROMLIST-riscv-mm-fix-SWIOTLB-initialization-for-sys.patch @@ -1,7 +1,7 @@ -From 4d9c7d6292f64242b0740b0768cab12a1a481731 Mon Sep 17 00:00:00 2001 +From 4d5cd4b1f6fe26dc668fffd055e5d01af826c026 Mon Sep 17 00:00:00 2001 From: Troy Mitchell Date: Tue, 31 Mar 2026 15:37:22 +0800 -Subject: [PATCH 354/467] FROMLIST: riscv: mm: fix SWIOTLB initialization for +Subject: [RUYI PATCH] FROMLIST: riscv: mm: fix SWIOTLB initialization for systems with DRAM above 4GB On RISC-V platforms where the entire physical memory (DRAM) resides diff --git a/SPECS/linux-lts/0355-FROMLIST-riscv-dts-spacemit-k1-bananapi-f3-Add-vcc5v.patch b/SPECS/linux-lts/0355-FROMLIST-riscv-dts-spacemit-k1-bananapi-f3-Add-vcc5v.patch index 4200dc10cc..223d5a699f 100644 --- a/SPECS/linux-lts/0355-FROMLIST-riscv-dts-spacemit-k1-bananapi-f3-Add-vcc5v.patch +++ b/SPECS/linux-lts/0355-FROMLIST-riscv-dts-spacemit-k1-bananapi-f3-Add-vcc5v.patch @@ -1,7 +1,7 @@ -From 2dc1b2a77fff1059529b2bbe0401aebebcef36b6 Mon Sep 17 00:00:00 2001 +From 1e089bd4441c081e557a84db781ccfe5f79b5601 Mon Sep 17 00:00:00 2001 From: Anand Moon Date: Wed, 25 Mar 2026 13:46:08 +0530 -Subject: [PATCH 355/467] FROMLIST: riscv: dts: spacemit: k1-bananapi-f3: Add +Subject: [RUYI PATCH] FROMLIST: riscv: dts: spacemit: k1-bananapi-f3: Add vcc5v0_sys regulator for Banana Pi F3 Define the system 5V fixed regulator (vcc5v0_sys) supplied by the diff --git a/SPECS/linux-lts/0356-FROMLIST-riscv-dts-spacemit-k1-bananapi-f3-Update-US.patch b/SPECS/linux-lts/0356-FROMLIST-riscv-dts-spacemit-k1-bananapi-f3-Update-US.patch index 8ff016743a..5fda255af1 100644 --- a/SPECS/linux-lts/0356-FROMLIST-riscv-dts-spacemit-k1-bananapi-f3-Update-US.patch +++ b/SPECS/linux-lts/0356-FROMLIST-riscv-dts-spacemit-k1-bananapi-f3-Update-US.patch @@ -1,8 +1,8 @@ -From 9d3523b5cb45cb30a771f227a10b7c0231a04cca Mon Sep 17 00:00:00 2001 +From 9927a583ce5c19e8befcb7ed40a6238c53f79b35 Mon Sep 17 00:00:00 2001 From: Anand Moon Date: Wed, 25 Mar 2026 13:46:09 +0530 -Subject: [PATCH 356/467] FROMLIST: riscv: dts: spacemit: k1-bananapi-f3: - Update USB regulator on onboard usb and lable +Subject: [RUYI PATCH] FROMLIST: riscv: dts: spacemit: k1-bananapi-f3: Update + USB regulator on onboard usb and lable Update the USB regulator labels to align with the board schematics and power hierarchy. This change renames the regulator to reg_5v_vbus and diff --git a/SPECS/linux-lts/0357-FROMLIST-riscv-dts-spacemit-k1-bananapi-f3-Correct-U.patch b/SPECS/linux-lts/0357-FROMLIST-riscv-dts-spacemit-k1-bananapi-f3-Correct-U.patch index ea69bfa145..a3dbb529e4 100644 --- a/SPECS/linux-lts/0357-FROMLIST-riscv-dts-spacemit-k1-bananapi-f3-Correct-U.patch +++ b/SPECS/linux-lts/0357-FROMLIST-riscv-dts-spacemit-k1-bananapi-f3-Correct-U.patch @@ -1,8 +1,8 @@ -From c7a2f9b4d3c4915e78cf4248387543db008498e7 Mon Sep 17 00:00:00 2001 +From c3e497dbbb78a87638bd90cab0bd7540fd683d89 Mon Sep 17 00:00:00 2001 From: Anand Moon Date: Wed, 25 Mar 2026 13:46:10 +0530 -Subject: [PATCH 357/467] FROMLIST: riscv: dts: spacemit: k1-bananapi-f3: - Correct USB hub power hierarchy +Subject: [RUYI PATCH] FROMLIST: riscv: dts: spacemit: k1-bananapi-f3: Correct + USB hub power hierarchy MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit diff --git a/SPECS/linux-lts/0358-FROMLIST-riscv-dts-sophgo-sg2044-use-hex-for-CPU-uni.patch b/SPECS/linux-lts/0358-FROMLIST-riscv-dts-sophgo-sg2044-use-hex-for-CPU-uni.patch index eb490256c2..39245052d3 100644 --- a/SPECS/linux-lts/0358-FROMLIST-riscv-dts-sophgo-sg2044-use-hex-for-CPU-uni.patch +++ b/SPECS/linux-lts/0358-FROMLIST-riscv-dts-sophgo-sg2044-use-hex-for-CPU-uni.patch @@ -1,7 +1,7 @@ -From 630ef2347457f4560466095f5ad84c7b3acb944a Mon Sep 17 00:00:00 2001 +From a19f30eaeebdca312c928a1bd82a354ba9ce2e8e Mon Sep 17 00:00:00 2001 From: Inochi Amaoto Date: Sun, 26 Apr 2026 09:34:48 +0800 -Subject: [PATCH 358/467] FROMLIST: riscv: dts: sophgo: sg2044: use hex for CPU +Subject: [RUYI PATCH] FROMLIST: riscv: dts: sophgo: sg2044: use hex for CPU unit address Previous the CPU unit address cpu of sg2044 use decimal, it is diff --git a/SPECS/linux-lts/0359-FROMLIST-riscv-dts-sophgo-sg2042-use-hex-for-CPU-uni.patch b/SPECS/linux-lts/0359-FROMLIST-riscv-dts-sophgo-sg2042-use-hex-for-CPU-uni.patch index ae30ede27c..56f743e220 100644 --- a/SPECS/linux-lts/0359-FROMLIST-riscv-dts-sophgo-sg2042-use-hex-for-CPU-uni.patch +++ b/SPECS/linux-lts/0359-FROMLIST-riscv-dts-sophgo-sg2042-use-hex-for-CPU-uni.patch @@ -1,7 +1,7 @@ -From 067a2a1c8ce433461ac63ad6029f55a9ec8e23e5 Mon Sep 17 00:00:00 2001 +From 1e554a628178f25ce798d80c22f6e32c9013f918 Mon Sep 17 00:00:00 2001 From: Inochi Amaoto Date: Sun, 26 Apr 2026 09:34:49 +0800 -Subject: [PATCH 359/467] FROMLIST: riscv: dts: sophgo: sg2042: use hex for CPU +Subject: [RUYI PATCH] FROMLIST: riscv: dts: sophgo: sg2042: use hex for CPU unit address Previous the CPU unit address cpu of sg2042 use decimal, it is diff --git a/SPECS/linux-lts/0360-FROMLIST-riscv-Fix-fast_unaligned_access_speed_key-n.patch b/SPECS/linux-lts/0360-FROMLIST-riscv-Fix-fast_unaligned_access_speed_key-n.patch index 671d17f19a..3978b9eca3 100644 --- a/SPECS/linux-lts/0360-FROMLIST-riscv-Fix-fast_unaligned_access_speed_key-n.patch +++ b/SPECS/linux-lts/0360-FROMLIST-riscv-Fix-fast_unaligned_access_speed_key-n.patch @@ -1,8 +1,8 @@ -From 7874ddbe01ccbe13b5a4828243511becf3108c87 Mon Sep 17 00:00:00 2001 +From 344151a10b042115f283ccb3ceb2241243f4f16a Mon Sep 17 00:00:00 2001 From: Nam Cao Date: Tue, 7 Apr 2026 14:06:39 +0200 -Subject: [PATCH 360/467] FROMLIST: riscv: Fix fast_unaligned_access_speed_key - not getting initialized +Subject: [RUYI PATCH] FROMLIST: riscv: Fix fast_unaligned_access_speed_key not + getting initialized The static key fast_unaligned_access_speed_key is supposed to be initialized after check_unaligned_access_all_cpus() has been completed. diff --git a/SPECS/linux-lts/0361-FROMLIST-riscv-dts-sophgo-reduce-SG2042-MSI-count-to.patch b/SPECS/linux-lts/0361-FROMLIST-riscv-dts-sophgo-reduce-SG2042-MSI-count-to.patch index 032ecea051..4ca22126b9 100644 --- a/SPECS/linux-lts/0361-FROMLIST-riscv-dts-sophgo-reduce-SG2042-MSI-count-to.patch +++ b/SPECS/linux-lts/0361-FROMLIST-riscv-dts-sophgo-reduce-SG2042-MSI-count-to.patch @@ -1,8 +1,8 @@ -From 32a650e4403e9cc5000554982cacf78cf1e8d147 Mon Sep 17 00:00:00 2001 +From 6f609eb72f740d3d3be5b596fca48b7d76f3a181 Mon Sep 17 00:00:00 2001 From: Icenowy Zheng Date: Wed, 8 Apr 2026 00:01:43 +0800 -Subject: [PATCH 361/467] FROMLIST: riscv: dts: sophgo: reduce SG2042 MSI count - to 16 +Subject: [RUYI PATCH] FROMLIST: riscv: dts: sophgo: reduce SG2042 MSI count to + 16 The SG2042 MSI controller has one 32-bit doorbell register, and each bit corresponds to an interrupt. At a glance, it seems that the MSI diff --git a/SPECS/linux-lts/0362-FROMLIST-dt-bindings-pwm-marvell-pxa-pwm-Add-Spacemi.patch b/SPECS/linux-lts/0362-FROMLIST-dt-bindings-pwm-marvell-pxa-pwm-Add-Spacemi.patch index 81da872e3d..fe8f74bcb4 100644 --- a/SPECS/linux-lts/0362-FROMLIST-dt-bindings-pwm-marvell-pxa-pwm-Add-Spacemi.patch +++ b/SPECS/linux-lts/0362-FROMLIST-dt-bindings-pwm-marvell-pxa-pwm-Add-Spacemi.patch @@ -1,7 +1,7 @@ -From 4d5d4944086158dd4169828c2d3596f2ec8291f4 Mon Sep 17 00:00:00 2001 +From a42a4931c6355f9aec78b37eacf4e7f01afaa772 Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Tue, 28 Apr 2026 10:46:50 +0000 -Subject: [PATCH 362/467] FROMLIST: dt-bindings: pwm: marvell,pxa-pwm: Add +Subject: [RUYI PATCH] FROMLIST: dt-bindings: pwm: marvell,pxa-pwm: Add SpacemiT K3 PWM support The PWM controller in SpacemiT K3 SoC reuse the same IP as previous K1 diff --git a/SPECS/linux-lts/0363-FROMLIST-pwm-pxa-Add-optional-bus-clock.patch b/SPECS/linux-lts/0363-FROMLIST-pwm-pxa-Add-optional-bus-clock.patch index 0516614297..8346eff059 100644 --- a/SPECS/linux-lts/0363-FROMLIST-pwm-pxa-Add-optional-bus-clock.patch +++ b/SPECS/linux-lts/0363-FROMLIST-pwm-pxa-Add-optional-bus-clock.patch @@ -1,7 +1,7 @@ -From 9f3707cb456d37931f9025ad6d4c4f1e44e27460 Mon Sep 17 00:00:00 2001 +From 2173dcb3b9c7cd083216f7561ca2c80cc779e6c3 Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Tue, 28 Apr 2026 10:46:51 +0000 -Subject: [PATCH 363/467] FROMLIST: pwm: pxa: Add optional bus clock +Subject: [RUYI PATCH] FROMLIST: pwm: pxa: Add optional bus clock Add one secondary optional bus clock for the PWM PXA driver, also keep it compatible with old single clock. diff --git a/SPECS/linux-lts/0364-FROMLIST-riscv-ftrace-select-HAVE_BUILDTIME_MCOUNT_S.patch b/SPECS/linux-lts/0364-FROMLIST-riscv-ftrace-select-HAVE_BUILDTIME_MCOUNT_S.patch index d409c0ae6f..169b4e07b6 100644 --- a/SPECS/linux-lts/0364-FROMLIST-riscv-ftrace-select-HAVE_BUILDTIME_MCOUNT_S.patch +++ b/SPECS/linux-lts/0364-FROMLIST-riscv-ftrace-select-HAVE_BUILDTIME_MCOUNT_S.patch @@ -1,7 +1,7 @@ -From 6240fb17598cbb164c6964e57937b0e241213797 Mon Sep 17 00:00:00 2001 +From a9afe33a20c57d9588e3a723da69fe92572f5726 Mon Sep 17 00:00:00 2001 From: Chen Pei Date: Thu, 9 Apr 2026 19:47:36 +0800 -Subject: [PATCH 364/467] FROMLIST: riscv: ftrace: select +Subject: [RUYI PATCH] FROMLIST: riscv: ftrace: select HAVE_BUILDTIME_MCOUNT_SORT RISC-V already satisfies all prerequisites for build-time mcount sorting: diff --git a/SPECS/linux-lts/0365-FROMLIST-riscv-dts-spacemit-enable-USB3-on-OrangePi-.patch b/SPECS/linux-lts/0365-FROMLIST-riscv-dts-spacemit-enable-USB3-on-OrangePi-.patch index 0c063dad19..63660577e2 100644 --- a/SPECS/linux-lts/0365-FROMLIST-riscv-dts-spacemit-enable-USB3-on-OrangePi-.patch +++ b/SPECS/linux-lts/0365-FROMLIST-riscv-dts-spacemit-enable-USB3-on-OrangePi-.patch @@ -1,8 +1,8 @@ -From 198b6af6a42ee5ace108899f8074347faeed4504 Mon Sep 17 00:00:00 2001 +From 62c0719d1e7faf6136869e6f6da6b1f069f63523 Mon Sep 17 00:00:00 2001 From: Chukun Pan Date: Mon, 18 May 2026 18:00:30 +0800 -Subject: [PATCH 365/467] FROMLIST: riscv: dts: spacemit: enable USB3 on - OrangePi R2S +Subject: [RUYI PATCH] FROMLIST: riscv: dts: spacemit: enable USB3 on OrangePi + R2S Enable the DWC3 USB3.0 controller and its associated PHY on the OrangePi R2S. The USB regulator provides VBUS for USB2 and USB3 diff --git a/SPECS/linux-lts/0366-FROMLIST-dts-riscv-spacemit-correct-32k-clock-freque.patch b/SPECS/linux-lts/0366-FROMLIST-dts-riscv-spacemit-correct-32k-clock-freque.patch index 2398e5b545..84486826fc 100644 --- a/SPECS/linux-lts/0366-FROMLIST-dts-riscv-spacemit-correct-32k-clock-freque.patch +++ b/SPECS/linux-lts/0366-FROMLIST-dts-riscv-spacemit-correct-32k-clock-freque.patch @@ -1,7 +1,7 @@ -From 1810a45e1f7eb932747edb129c2cc22f50a85617 Mon Sep 17 00:00:00 2001 +From 5d9676891cd5d6a9735391e8b346e75d7f6559c9 Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Tue, 28 Apr 2026 10:57:29 +0000 -Subject: [PATCH 366/467] FROMLIST: dts: riscv: spacemit: correct 32k clock +Subject: [RUYI PATCH] FROMLIST: dts: riscv: spacemit: correct 32k clock frequency The 32k oscillator's clock frequency is actually 32768Hz, so correct it. diff --git a/SPECS/linux-lts/0367-FROMLIST-ASoC-dt-bindings-add-SpacemiT-K3-SoC-compat.patch b/SPECS/linux-lts/0367-FROMLIST-ASoC-dt-bindings-add-SpacemiT-K3-SoC-compat.patch index e142c9f76a..ae80025a53 100644 --- a/SPECS/linux-lts/0367-FROMLIST-ASoC-dt-bindings-add-SpacemiT-K3-SoC-compat.patch +++ b/SPECS/linux-lts/0367-FROMLIST-ASoC-dt-bindings-add-SpacemiT-K3-SoC-compat.patch @@ -1,7 +1,7 @@ -From d0fad1ec15d004a802d36b225277a28831021f52 Mon Sep 17 00:00:00 2001 +From 50c5274eb867073ad2b53bef51e6d9d19aa9ac2a Mon Sep 17 00:00:00 2001 From: Troy Mitchell Date: Thu, 7 May 2026 15:33:09 +0800 -Subject: [PATCH 367/467] FROMLIST: ASoC: dt-bindings: add SpacemiT K3 SoC +Subject: [RUYI PATCH] FROMLIST: ASoC: dt-bindings: add SpacemiT K3 SoC compatible Add the spacemit,k3-i2s compatible string for the K3 SoC I2S diff --git a/SPECS/linux-lts/0368-FROMLIST-ASoC-spacemit-add-K3-SoC-support-with-addit.patch b/SPECS/linux-lts/0368-FROMLIST-ASoC-spacemit-add-K3-SoC-support-with-addit.patch index 872f1859cf..f0c06195d2 100644 --- a/SPECS/linux-lts/0368-FROMLIST-ASoC-spacemit-add-K3-SoC-support-with-addit.patch +++ b/SPECS/linux-lts/0368-FROMLIST-ASoC-spacemit-add-K3-SoC-support-with-addit.patch @@ -1,7 +1,7 @@ -From fdabd394ccbcb3a01600534aae7a6a5b2c4adf5d Mon Sep 17 00:00:00 2001 +From ff69086b4bd33d60ba9c418d37ac92992aae8876 Mon Sep 17 00:00:00 2001 From: Troy Mitchell Date: Thu, 7 May 2026 15:33:10 +0800 -Subject: [PATCH 368/467] FROMLIST: ASoC: spacemit: add K3 SoC support with +Subject: [RUYI PATCH] FROMLIST: ASoC: spacemit: add K3 SoC support with additional clocks Add support for the SpacemiT K3 SoC I2S controller, which shares the diff --git a/SPECS/linux-lts/0369-FROMLIST-ASoC-soc-dai-add-shared-BCLK-clock-for-cros.patch b/SPECS/linux-lts/0369-FROMLIST-ASoC-soc-dai-add-shared-BCLK-clock-for-cros.patch index 0fc85b0aa1..7eaa0d4690 100644 --- a/SPECS/linux-lts/0369-FROMLIST-ASoC-soc-dai-add-shared-BCLK-clock-for-cros.patch +++ b/SPECS/linux-lts/0369-FROMLIST-ASoC-soc-dai-add-shared-BCLK-clock-for-cros.patch @@ -1,7 +1,7 @@ -From 71e5ec3830b135ac33f67234ab3560e96b244d65 Mon Sep 17 00:00:00 2001 +From 0151c24b6a7cffec1479bc57a27443328f1d2fef Mon Sep 17 00:00:00 2001 From: Troy Mitchell Date: Thu, 7 May 2026 18:31:42 +0800 -Subject: [PATCH 369/467] FROMLIST: ASoC: soc-dai: add shared BCLK clock for +Subject: [RUYI PATCH] FROMLIST: ASoC: soc-dai: add shared BCLK clock for cross-DAI rate constraints Add a bclk field to struct snd_soc_dai and a helper function diff --git a/SPECS/linux-lts/0370-FROMLIST-ASoC-soc-pcm-constrain-hw_params-when-DAIs-.patch b/SPECS/linux-lts/0370-FROMLIST-ASoC-soc-pcm-constrain-hw_params-when-DAIs-.patch index 8633e3a2c1..b2112c73cc 100644 --- a/SPECS/linux-lts/0370-FROMLIST-ASoC-soc-pcm-constrain-hw_params-when-DAIs-.patch +++ b/SPECS/linux-lts/0370-FROMLIST-ASoC-soc-pcm-constrain-hw_params-when-DAIs-.patch @@ -1,8 +1,8 @@ -From eafa7c60eb86e4ce51877b8dedcc634a13188bcf Mon Sep 17 00:00:00 2001 +From 811d7e0186f2cec4b5ebbd7506439ef84e15a0ff Mon Sep 17 00:00:00 2001 From: Troy Mitchell Date: Thu, 7 May 2026 18:31:43 +0800 -Subject: [PATCH 370/467] FROMLIST: ASoC: soc-pcm: constrain hw_params when - DAIs share the same BCLK +Subject: [RUYI PATCH] FROMLIST: ASoC: soc-pcm: constrain hw_params when DAIs + share the same BCLK When multiple CPU DAIs on the same sound card share the same physical BCLK, add a hw_rule during PCM open that constrains the sample rate so diff --git a/SPECS/linux-lts/0371-FROMLIST-ASoC-spacemit-declare-shared-BCLK-for-cross.patch b/SPECS/linux-lts/0371-FROMLIST-ASoC-spacemit-declare-shared-BCLK-for-cross.patch index df88e6dc93..ff936b2c7c 100644 --- a/SPECS/linux-lts/0371-FROMLIST-ASoC-spacemit-declare-shared-BCLK-for-cross.patch +++ b/SPECS/linux-lts/0371-FROMLIST-ASoC-spacemit-declare-shared-BCLK-for-cross.patch @@ -1,7 +1,7 @@ -From 87485a6e8c2da82863181097d7d37ba1ebc90eb9 Mon Sep 17 00:00:00 2001 +From ab006e609e125b2253d6016108a7ac52e642a192 Mon Sep 17 00:00:00 2001 From: Troy Mitchell Date: Thu, 7 May 2026 18:31:44 +0800 -Subject: [PATCH 371/467] FROMLIST: ASoC: spacemit: declare shared BCLK for +Subject: [RUYI PATCH] FROMLIST: ASoC: spacemit: declare shared BCLK for cross-DAI rate constraint On SpacemiT K3, multiple I2S controllers share the same physical BCLK diff --git a/SPECS/linux-lts/0372-FROMLIST-spi-spacemit-add-u64-cast-to-NSEC_PER_SEC-t.patch b/SPECS/linux-lts/0372-FROMLIST-spi-spacemit-add-u64-cast-to-NSEC_PER_SEC-t.patch index 54669c5f23..26e3e584c6 100644 --- a/SPECS/linux-lts/0372-FROMLIST-spi-spacemit-add-u64-cast-to-NSEC_PER_SEC-t.patch +++ b/SPECS/linux-lts/0372-FROMLIST-spi-spacemit-add-u64-cast-to-NSEC_PER_SEC-t.patch @@ -1,8 +1,8 @@ -From ff1bd9de50fd99b0b63391ed7079a66e92f5fb02 Mon Sep 17 00:00:00 2001 +From fd1098639a4174a54cfc40a6fe40bbcb9569aee6 Mon Sep 17 00:00:00 2001 From: Guodong Xu Date: Tue, 5 May 2026 09:53:34 -0400 -Subject: [PATCH 372/467] FROMLIST: spi: spacemit: add u64 cast to NSEC_PER_SEC - to avoid 32-bit overflow +Subject: [RUYI PATCH] FROMLIST: spi: spacemit: add u64 cast to NSEC_PER_SEC to + avoid 32-bit overflow NSEC_PER_SEC expands to the long constant 1000000000L, so NSEC_PER_SEC * BITS_PER_BYTE (8 * 10^9) overflows on 32-bit-long architectures diff --git a/SPECS/linux-lts/0373-FROMLIST-dt-bindings-clock-thead-add-TH1520-MISC-sub.patch b/SPECS/linux-lts/0373-FROMLIST-dt-bindings-clock-thead-add-TH1520-MISC-sub.patch index 06e80d2111..1ec5840379 100644 --- a/SPECS/linux-lts/0373-FROMLIST-dt-bindings-clock-thead-add-TH1520-MISC-sub.patch +++ b/SPECS/linux-lts/0373-FROMLIST-dt-bindings-clock-thead-add-TH1520-MISC-sub.patch @@ -1,7 +1,7 @@ -From eb891952a841254f3564aa2b534dd235469daaa5 Mon Sep 17 00:00:00 2001 +From 70157c501907a5cde732fdf89f3f458d3aba2959 Mon Sep 17 00:00:00 2001 From: Icenowy Zheng Date: Thu, 7 May 2026 16:16:59 +0800 -Subject: [PATCH 373/467] FROMLIST: dt-bindings: clock: thead: add TH1520 MISC +Subject: [RUYI PATCH] FROMLIST: dt-bindings: clock: thead: add TH1520 MISC subsys clock controller TH1520 has a subsystem clock controller called MISC_SUBSYS in its diff --git a/SPECS/linux-lts/0374-FROMLIST-clk-thead-th1520-ap-add-support-for-MISC-su.patch b/SPECS/linux-lts/0374-FROMLIST-clk-thead-th1520-ap-add-support-for-MISC-su.patch index 381e497d96..4e7272cafb 100644 --- a/SPECS/linux-lts/0374-FROMLIST-clk-thead-th1520-ap-add-support-for-MISC-su.patch +++ b/SPECS/linux-lts/0374-FROMLIST-clk-thead-th1520-ap-add-support-for-MISC-su.patch @@ -1,7 +1,7 @@ -From beef94a59a428c2ee10412cd8414e2f4022aa76c Mon Sep 17 00:00:00 2001 +From ff7baa8d99b3acfa161a96f9d572688e8fbfb14f Mon Sep 17 00:00:00 2001 From: Icenowy Zheng Date: Thu, 7 May 2026 16:17:00 +0800 -Subject: [PATCH 374/467] FROMLIST: clk: thead: th1520-ap: add support for MISC +Subject: [RUYI PATCH] FROMLIST: clk: thead: th1520-ap: add support for MISC subsys clocks The TH1520 SoC contains a MISC_SUBSYS clock controller, which allows diff --git a/SPECS/linux-lts/0375-FROMLIST-riscv-dts-thead-add-device-tree-node-for-MI.patch b/SPECS/linux-lts/0375-FROMLIST-riscv-dts-thead-add-device-tree-node-for-MI.patch index dc3399e4cb..5712f59936 100644 --- a/SPECS/linux-lts/0375-FROMLIST-riscv-dts-thead-add-device-tree-node-for-MI.patch +++ b/SPECS/linux-lts/0375-FROMLIST-riscv-dts-thead-add-device-tree-node-for-MI.patch @@ -1,7 +1,7 @@ -From 225dd81ab8f245421e354bac14e6182025c41df1 Mon Sep 17 00:00:00 2001 +From 25858e77df3fb64d1db8a210aa513630aa172761 Mon Sep 17 00:00:00 2001 From: Icenowy Zheng Date: Thu, 7 May 2026 16:17:01 +0800 -Subject: [PATCH 375/467] FROMLIST: riscv: dts: thead: add device tree node for +Subject: [RUYI PATCH] FROMLIST: riscv: dts: thead: add device tree node for MISC clock controller The MISC_SUBSYS clock controller on TH1520 SoC is a clock controller diff --git a/SPECS/linux-lts/0376-FROMLIST-dt-bindings-phy-add-binding-for-T-Head-TH15.patch b/SPECS/linux-lts/0376-FROMLIST-dt-bindings-phy-add-binding-for-T-Head-TH15.patch index b7ae4ae866..d6fc48cce2 100644 --- a/SPECS/linux-lts/0376-FROMLIST-dt-bindings-phy-add-binding-for-T-Head-TH15.patch +++ b/SPECS/linux-lts/0376-FROMLIST-dt-bindings-phy-add-binding-for-T-Head-TH15.patch @@ -1,7 +1,7 @@ -From 1f883f8b2aaf90f81e9cc3e07c5d07d624331025 Mon Sep 17 00:00:00 2001 +From bf1bce6b58599f811e5d960528b05a56606c6198 Mon Sep 17 00:00:00 2001 From: Icenowy Zheng Date: Thu, 7 May 2026 16:17:02 +0800 -Subject: [PATCH 376/467] FROMLIST: dt-bindings: phy: add binding for T-Head +Subject: [RUYI PATCH] FROMLIST: dt-bindings: phy: add binding for T-Head TH1520 USB PHY The TH1520 SoC features a Synopsys USB 3.0 FemtoPHY with some custom diff --git a/SPECS/linux-lts/0377-FROMLIST-phy-add-a-driver-for-T-Head-TH1520-USB-PHY.patch b/SPECS/linux-lts/0377-FROMLIST-phy-add-a-driver-for-T-Head-TH1520-USB-PHY.patch index 08e62a086f..f37bec7b80 100644 --- a/SPECS/linux-lts/0377-FROMLIST-phy-add-a-driver-for-T-Head-TH1520-USB-PHY.patch +++ b/SPECS/linux-lts/0377-FROMLIST-phy-add-a-driver-for-T-Head-TH1520-USB-PHY.patch @@ -1,7 +1,7 @@ -From dcb5013bc09740ec69367c77d4a4947ec96f20ed Mon Sep 17 00:00:00 2001 +From 6836defb3d09054866bd4165ee60f3bcd6135b07 Mon Sep 17 00:00:00 2001 From: Icenowy Zheng Date: Thu, 7 May 2026 16:17:03 +0800 -Subject: [PATCH 377/467] FROMLIST: phy: add a driver for T-Head TH1520 USB PHY +Subject: [RUYI PATCH] FROMLIST: phy: add a driver for T-Head TH1520 USB PHY The USB PHY on T-Head TH1520 SoC is a Synopsys USB 3.0 FemtoPHY, with some PHY parameters exported as another system controller along with it. diff --git a/SPECS/linux-lts/0378-FROMLIST-riscv-dts-thead-add-device-nodes-for-USB.patch b/SPECS/linux-lts/0378-FROMLIST-riscv-dts-thead-add-device-nodes-for-USB.patch index ce28cb8915..01b5e27c73 100644 --- a/SPECS/linux-lts/0378-FROMLIST-riscv-dts-thead-add-device-nodes-for-USB.patch +++ b/SPECS/linux-lts/0378-FROMLIST-riscv-dts-thead-add-device-nodes-for-USB.patch @@ -1,7 +1,7 @@ -From 762073e75c3906c685bc8388091a72f59d6e33f5 Mon Sep 17 00:00:00 2001 +From 2be6de531146e3cb05e762c17c5d087a15b3ad2d Mon Sep 17 00:00:00 2001 From: Icenowy Zheng Date: Thu, 7 May 2026 16:17:04 +0800 -Subject: [PATCH 378/467] FROMLIST: riscv: dts: thead: add device nodes for USB +Subject: [RUYI PATCH] FROMLIST: riscv: dts: thead: add device nodes for USB The TH1520 SoC contains a Synopsys DesignWare Cores SuperSpeed USB3.0 Dual Role Device controller in addition to a USB2+USB3 combo PHY based diff --git a/SPECS/linux-lts/0379-FROMLIST-dt-bindings-gpio-dwapb-allow-GPIO-hogs.patch b/SPECS/linux-lts/0379-FROMLIST-dt-bindings-gpio-dwapb-allow-GPIO-hogs.patch index 42750a360c..bd9aea764d 100644 --- a/SPECS/linux-lts/0379-FROMLIST-dt-bindings-gpio-dwapb-allow-GPIO-hogs.patch +++ b/SPECS/linux-lts/0379-FROMLIST-dt-bindings-gpio-dwapb-allow-GPIO-hogs.patch @@ -1,7 +1,7 @@ -From 1ecd168027599967fe95397ece7faa754e5f5e39 Mon Sep 17 00:00:00 2001 +From b2708e5bb25843313bbb63f5c6417d756f0ce5e0 Mon Sep 17 00:00:00 2001 From: Icenowy Zheng Date: Thu, 7 May 2026 16:17:05 +0800 -Subject: [PATCH 379/467] FROMLIST: dt-bindings: gpio: dwapb: allow GPIO hogs +Subject: [RUYI PATCH] FROMLIST: dt-bindings: gpio: dwapb: allow GPIO hogs GPIO hogs are described in the gpio.txt binding as automatic default GPIO configuration items. diff --git a/SPECS/linux-lts/0380-FROMLIST-dt-bindings-usb-vialab-vl817-allow-ports-pr.patch b/SPECS/linux-lts/0380-FROMLIST-dt-bindings-usb-vialab-vl817-allow-ports-pr.patch index a57fbf8f5b..00f4949ecd 100644 --- a/SPECS/linux-lts/0380-FROMLIST-dt-bindings-usb-vialab-vl817-allow-ports-pr.patch +++ b/SPECS/linux-lts/0380-FROMLIST-dt-bindings-usb-vialab-vl817-allow-ports-pr.patch @@ -1,7 +1,7 @@ -From 49426bc2f4eec81986cedeb4485276ce9681a724 Mon Sep 17 00:00:00 2001 +From d114c66e2f27fb7d5c538f14399ab98ce4960f83 Mon Sep 17 00:00:00 2001 From: Icenowy Zheng Date: Thu, 7 May 2026 16:17:06 +0800 -Subject: [PATCH 380/467] FROMLIST: dt-bindings: usb: vialab,vl817: allow ports +Subject: [RUYI PATCH] FROMLIST: dt-bindings: usb: vialab,vl817: allow ports property As a USB hub device, VL817 can surely be connected to external USB diff --git a/SPECS/linux-lts/0381-FROMLIST-riscv-dts-thead-lpi4a-sort-nodes.patch b/SPECS/linux-lts/0381-FROMLIST-riscv-dts-thead-lpi4a-sort-nodes.patch index d00e626d15..16cdfd9cbf 100644 --- a/SPECS/linux-lts/0381-FROMLIST-riscv-dts-thead-lpi4a-sort-nodes.patch +++ b/SPECS/linux-lts/0381-FROMLIST-riscv-dts-thead-lpi4a-sort-nodes.patch @@ -1,7 +1,7 @@ -From 6dcc9b3c4294c90622f68260717fcf8f07891f3b Mon Sep 17 00:00:00 2001 +From f92fde63364be52d61f1457466f5b1697b0e9b09 Mon Sep 17 00:00:00 2001 From: Icenowy Zheng Date: Thu, 7 May 2026 16:17:07 +0800 -Subject: [PATCH 381/467] FROMLIST: riscv: dts: thead: lpi4a: sort nodes +Subject: [RUYI PATCH] FROMLIST: riscv: dts: thead: lpi4a: sort nodes Although "D" and "H" are earlier in the alphabet than "P", the DPU and HDMI nodes were added after PADCTRL node in the Lichee Pi 4A device tree. diff --git a/SPECS/linux-lts/0382-FROMLIST-riscv-dts-thead-Add-TH1520-I2C-nodes.patch b/SPECS/linux-lts/0382-FROMLIST-riscv-dts-thead-Add-TH1520-I2C-nodes.patch index e9b32dab3d..e70fcfd352 100644 --- a/SPECS/linux-lts/0382-FROMLIST-riscv-dts-thead-Add-TH1520-I2C-nodes.patch +++ b/SPECS/linux-lts/0382-FROMLIST-riscv-dts-thead-Add-TH1520-I2C-nodes.patch @@ -1,7 +1,7 @@ -From 9ce853f956a1bebf43c4053c02a67914c6fd8b50 Mon Sep 17 00:00:00 2001 +From 235225ebc673fe3cf62d79eb1936fb0ef9b3aa52 Mon Sep 17 00:00:00 2001 From: Thomas Bonnefille Date: Thu, 7 May 2026 16:17:08 +0800 -Subject: [PATCH 382/467] FROMLIST: riscv: dts: thead: Add TH1520 I2C nodes +Subject: [RUYI PATCH] FROMLIST: riscv: dts: thead: Add TH1520 I2C nodes Add nodes for the six I2C on the T-Head TH1520 RISCV SoC. diff --git a/SPECS/linux-lts/0383-FROMLIST-riscv-dts-thead-Add-Lichee-Pi-4A-IO-expansi.patch b/SPECS/linux-lts/0383-FROMLIST-riscv-dts-thead-Add-Lichee-Pi-4A-IO-expansi.patch index 5c45f4179f..6905dfac60 100644 --- a/SPECS/linux-lts/0383-FROMLIST-riscv-dts-thead-Add-Lichee-Pi-4A-IO-expansi.patch +++ b/SPECS/linux-lts/0383-FROMLIST-riscv-dts-thead-Add-Lichee-Pi-4A-IO-expansi.patch @@ -1,7 +1,7 @@ -From b4e786b2f0c59be9a66614adc05dff50460e5292 Mon Sep 17 00:00:00 2001 +From e7621614a1d93b84b3994cc4e147e2f5f24e8b8c Mon Sep 17 00:00:00 2001 From: Emil Renner Berthing Date: Thu, 7 May 2026 16:17:09 +0800 -Subject: [PATCH 383/467] FROMLIST: riscv: dts: thead: Add Lichee Pi 4A IO +Subject: [RUYI PATCH] FROMLIST: riscv: dts: thead: Add Lichee Pi 4A IO expansions Lichee Pi 4A has 3 I2C IO expansion chips onboard, connected to the diff --git a/SPECS/linux-lts/0384-FROMLIST-riscv-dts-thead-enable-USB3-ports-on-Lichee.patch b/SPECS/linux-lts/0384-FROMLIST-riscv-dts-thead-enable-USB3-ports-on-Lichee.patch index 5fc96a0c1d..f1e49e1290 100644 --- a/SPECS/linux-lts/0384-FROMLIST-riscv-dts-thead-enable-USB3-ports-on-Lichee.patch +++ b/SPECS/linux-lts/0384-FROMLIST-riscv-dts-thead-enable-USB3-ports-on-Lichee.patch @@ -1,8 +1,8 @@ -From e65c217e4f180a09599dcf963d7917ca8f2dce56 Mon Sep 17 00:00:00 2001 +From 0b1e399727d5ebc0f998864161be37205403f479 Mon Sep 17 00:00:00 2001 From: Icenowy Zheng Date: Thu, 7 May 2026 16:17:10 +0800 -Subject: [PATCH 384/467] FROMLIST: riscv: dts: thead: enable USB3 ports on - Lichee Pi 4A +Subject: [RUYI PATCH] FROMLIST: riscv: dts: thead: enable USB3 ports on Lichee + Pi 4A The Lichee Pi 4A board features an onboard VIA VL817 hub connected to the SoC's USB3 as upstream and 4 USB-3.0-capable Type-A ports as diff --git a/SPECS/linux-lts/0385-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-add-PMIC-a.patch b/SPECS/linux-lts/0385-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-add-PMIC-a.patch index c128317cc7..9a32cb3ce3 100644 --- a/SPECS/linux-lts/0385-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-add-PMIC-a.patch +++ b/SPECS/linux-lts/0385-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-add-PMIC-a.patch @@ -1,8 +1,8 @@ -From 74fce4ca0259a2fb6f07e9a9db0da7a4b6d187ad Mon Sep 17 00:00:00 2001 +From 52e6648f05a98b5daa57d14ffbc7a8f17e0a2e70 Mon Sep 17 00:00:00 2001 From: Andre Heider Date: Mon, 11 May 2026 13:11:08 +0200 -Subject: [PATCH 385/467] FROMLIST: riscv: dts: spacemit: k1-musepi-pro: add - PMIC and power infrastructure +Subject: [RUYI PATCH] FROMLIST: riscv: dts: spacemit: k1-musepi-pro: add PMIC + and power infrastructure Enable i2c8 and add the connected SpacemiT P1 PMIC with its related regulators for the board's power infrastructure and voltage regulation support. diff --git a/SPECS/linux-lts/0386-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-add-24c04-.patch b/SPECS/linux-lts/0386-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-add-24c04-.patch index 7c213bac42..27c61ac393 100644 --- a/SPECS/linux-lts/0386-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-add-24c04-.patch +++ b/SPECS/linux-lts/0386-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-add-24c04-.patch @@ -1,8 +1,8 @@ -From 46e98f453443e84d2c39d1a192493f63035cb983 Mon Sep 17 00:00:00 2001 +From 766c66afb264021498a9385a2332b05c2ab32653 Mon Sep 17 00:00:00 2001 From: Andre Heider Date: Mon, 11 May 2026 13:11:09 +0200 -Subject: [PATCH 386/467] FROMLIST: riscv: dts: spacemit: k1-musepi-pro: add - 24c04 eeprom +Subject: [RUYI PATCH] FROMLIST: riscv: dts: spacemit: k1-musepi-pro: add 24c04 + eeprom Enable i2c2 and add the connected 24c04 EEPROM. diff --git a/SPECS/linux-lts/0387-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-enable-QSP.patch b/SPECS/linux-lts/0387-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-enable-QSP.patch index 93c6f40848..bb1a850bdd 100644 --- a/SPECS/linux-lts/0387-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-enable-QSP.patch +++ b/SPECS/linux-lts/0387-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-enable-QSP.patch @@ -1,7 +1,7 @@ -From 75a37f9d516eb90b20c532be235d4a9752fba6be Mon Sep 17 00:00:00 2001 +From c117a7fcd7c10d4f8235ca033fe3b09674838cc2 Mon Sep 17 00:00:00 2001 From: Andre Heider Date: Mon, 11 May 2026 13:11:10 +0200 -Subject: [PATCH 387/467] FROMLIST: riscv: dts: spacemit: k1-musepi-pro: enable +Subject: [RUYI PATCH] FROMLIST: riscv: dts: spacemit: k1-musepi-pro: enable QSPI and add SPI NOR Add the QSPI controller node and describe the attached SPI NOR flash diff --git a/SPECS/linux-lts/0388-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-enable-USB.patch b/SPECS/linux-lts/0388-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-enable-USB.patch index aa1fefae14..e2dbb68dfc 100644 --- a/SPECS/linux-lts/0388-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-enable-USB.patch +++ b/SPECS/linux-lts/0388-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-enable-USB.patch @@ -1,7 +1,7 @@ -From 74f565b6e699c8ec0bd9138b54c7af5f73b625e3 Mon Sep 17 00:00:00 2001 +From a94156daa45213f4dfc1d6f6cc6a3f25b4e635c1 Mon Sep 17 00:00:00 2001 From: Andre Heider Date: Mon, 11 May 2026 13:11:11 +0200 -Subject: [PATCH 388/467] FROMLIST: riscv: dts: spacemit: k1-musepi-pro: enable +Subject: [RUYI PATCH] FROMLIST: riscv: dts: spacemit: k1-musepi-pro: enable USB 3 ports Enable the DWC3 USB 3.0 controller, its associated combo_phy (USB 3 PHY) diff --git a/SPECS/linux-lts/0389-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-enable-PCI.patch b/SPECS/linux-lts/0389-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-enable-PCI.patch index 4d368a61b1..23832d06b8 100644 --- a/SPECS/linux-lts/0389-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-enable-PCI.patch +++ b/SPECS/linux-lts/0389-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-enable-PCI.patch @@ -1,7 +1,7 @@ -From b2f775e8f1fe4ec525455361eadc7df47250a44b Mon Sep 17 00:00:00 2001 +From 349e55f2df85d45315a64261930482121af299e5 Mon Sep 17 00:00:00 2001 From: Andre Heider Date: Mon, 11 May 2026 13:11:12 +0200 -Subject: [PATCH 389/467] FROMLIST: riscv: dts: spacemit: k1-musepi-pro: enable +Subject: [RUYI PATCH] FROMLIST: riscv: dts: spacemit: k1-musepi-pro: enable PCIe ports Enable the two PCIe controller along with and their associated PHYs. They diff --git a/SPECS/linux-lts/0390-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-set-defaul.patch b/SPECS/linux-lts/0390-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-set-defaul.patch index ee53b03556..2a721e03c5 100644 --- a/SPECS/linux-lts/0390-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-set-defaul.patch +++ b/SPECS/linux-lts/0390-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-set-defaul.patch @@ -1,7 +1,7 @@ -From d3e09b27f344f7b9353cf66a5884e1eaa20cc2d9 Mon Sep 17 00:00:00 2001 +From 9a43c78660975e06c30cbaf943e981dd50feee99 Mon Sep 17 00:00:00 2001 From: Andre Heider Date: Mon, 11 May 2026 13:11:13 +0200 -Subject: [PATCH 390/467] FROMLIST: riscv: dts: spacemit: k1-musepi-pro: set +Subject: [RUYI PATCH] FROMLIST: riscv: dts: spacemit: k1-musepi-pro: set default console baud rate Allow serial output with the same uboot/opensbi settings so the diff --git a/SPECS/linux-lts/0391-FROMLIST-riscv-dts-spacemit-k3-Add-pwm-support.patch b/SPECS/linux-lts/0391-FROMLIST-riscv-dts-spacemit-k3-Add-pwm-support.patch index 5e1bb550cd..e480697ecf 100644 --- a/SPECS/linux-lts/0391-FROMLIST-riscv-dts-spacemit-k3-Add-pwm-support.patch +++ b/SPECS/linux-lts/0391-FROMLIST-riscv-dts-spacemit-k3-Add-pwm-support.patch @@ -1,7 +1,7 @@ -From 17640c2f952d4636e28f6c91c28cad7c0cbcfeb5 Mon Sep 17 00:00:00 2001 +From 19e0459a70fb9e1c62f2eb097e72e73136997ccd Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Thu, 21 May 2026 00:24:41 +0000 -Subject: [PATCH 391/467] FROMLIST: riscv: dts: spacemit: k3: Add pwm support +Subject: [RUYI PATCH] FROMLIST: riscv: dts: spacemit: k3: Add pwm support Populate all pwm device tree nodes for SpacemiT K3 SoC, also documents the pinctrl info which would easily help to enable them in future. diff --git a/SPECS/linux-lts/0392-FROMLIST-riscv-use-sysfs_emit-in-cpu_show_ghostwrite.patch b/SPECS/linux-lts/0392-FROMLIST-riscv-use-sysfs_emit-in-cpu_show_ghostwrite.patch index ded1d721e2..dfea8b63a1 100644 --- a/SPECS/linux-lts/0392-FROMLIST-riscv-use-sysfs_emit-in-cpu_show_ghostwrite.patch +++ b/SPECS/linux-lts/0392-FROMLIST-riscv-use-sysfs_emit-in-cpu_show_ghostwrite.patch @@ -1,8 +1,7 @@ -From 8a3c697d67f26e7001badacbe651347af98734fc Mon Sep 17 00:00:00 2001 +From 990e07e7b25d9ad6863585a17875fd32e9b194ed Mon Sep 17 00:00:00 2001 From: Thorsten Blum Date: Sun, 10 May 2026 18:54:21 +0200 -Subject: [PATCH 392/467] FROMLIST: riscv: use sysfs_emit in - cpu_show_ghostwrite +Subject: [RUYI PATCH] FROMLIST: riscv: use sysfs_emit in cpu_show_ghostwrite Replace sprintf() with sysfs_emit() in cpu_show_ghostwrite(), which is preferred for formatting sysfs output because it provides safer bounds diff --git a/SPECS/linux-lts/0393-FROMLIST-clk-spacemit-k3-Switch-to-pll2_d6-as-parent.patch b/SPECS/linux-lts/0393-FROMLIST-clk-spacemit-k3-Switch-to-pll2_d6-as-parent.patch index 0f04216c5b..61c699fb6b 100644 --- a/SPECS/linux-lts/0393-FROMLIST-clk-spacemit-k3-Switch-to-pll2_d6-as-parent.patch +++ b/SPECS/linux-lts/0393-FROMLIST-clk-spacemit-k3-Switch-to-pll2_d6-as-parent.patch @@ -1,8 +1,8 @@ -From 5a543b79cba1602b35c7bf4c272f6c1082403ec9 Mon Sep 17 00:00:00 2001 +From 5feeaceeac1d83b0bc4b52a476972edb0633b9b1 Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Mon, 11 May 2026 02:59:09 +0000 -Subject: [PATCH 393/467] FROMLIST: clk: spacemit: k3: Switch to pll2_d6 as - parent for PCIe clock +Subject: [RUYI PATCH] FROMLIST: clk: spacemit: k3: Switch to pll2_d6 as parent + for PCIe clock According to SpacemiT updated docs, the PCIe master and slave clock's parent is the pll2_d6 clock, so fix it. diff --git a/SPECS/linux-lts/0394-FROMLIST-clk-spacemit-k3-Fix-PCIe-clock-register-off.patch b/SPECS/linux-lts/0394-FROMLIST-clk-spacemit-k3-Fix-PCIe-clock-register-off.patch index 1709d97c4d..cec142274b 100644 --- a/SPECS/linux-lts/0394-FROMLIST-clk-spacemit-k3-Fix-PCIe-clock-register-off.patch +++ b/SPECS/linux-lts/0394-FROMLIST-clk-spacemit-k3-Fix-PCIe-clock-register-off.patch @@ -1,7 +1,7 @@ -From e8eb8752ce8b21f83609892d2702ada2791d6878 Mon Sep 17 00:00:00 2001 +From e7889702a01dfeefc13f75527701150067033d27 Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Mon, 11 May 2026 02:59:10 +0000 -Subject: [PATCH 394/467] FROMLIST: clk: spacemit: k3: Fix PCIe clock register +Subject: [RUYI PATCH] FROMLIST: clk: spacemit: k3: Fix PCIe clock register offset The offset of PCIe Clock CTRL register for port B and C controller was diff --git a/SPECS/linux-lts/0395-FROMLIST-dt-bindings-soc-spacemit-k3-Add-PCIe-DBI-cl.patch b/SPECS/linux-lts/0395-FROMLIST-dt-bindings-soc-spacemit-k3-Add-PCIe-DBI-cl.patch index 40b18595f7..8c7de819c6 100644 --- a/SPECS/linux-lts/0395-FROMLIST-dt-bindings-soc-spacemit-k3-Add-PCIe-DBI-cl.patch +++ b/SPECS/linux-lts/0395-FROMLIST-dt-bindings-soc-spacemit-k3-Add-PCIe-DBI-cl.patch @@ -1,8 +1,8 @@ -From 71cbe41aa3e3af9d8f5d8e6ecd78f702cebb6de4 Mon Sep 17 00:00:00 2001 +From 81e7dee63c57fbbbf525e3b3e475ac4463f4be56 Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Mon, 11 May 2026 02:59:11 +0000 -Subject: [PATCH 395/467] FROMLIST: dt-bindings: soc: spacemit: k3: Add PCIe - DBI clock IDs +Subject: [RUYI PATCH] FROMLIST: dt-bindings: soc: spacemit: k3: Add PCIe DBI + clock IDs Add clock IDs of PCIe DBI (Data Bus Interface) clock. diff --git a/SPECS/linux-lts/0396-FROMLIST-clk-spacemit-k3-Add-PCIe-DBI-clock.patch b/SPECS/linux-lts/0396-FROMLIST-clk-spacemit-k3-Add-PCIe-DBI-clock.patch index 77b2c6bba2..b1757a1b9e 100644 --- a/SPECS/linux-lts/0396-FROMLIST-clk-spacemit-k3-Add-PCIe-DBI-clock.patch +++ b/SPECS/linux-lts/0396-FROMLIST-clk-spacemit-k3-Add-PCIe-DBI-clock.patch @@ -1,7 +1,7 @@ -From f93186e43511bbaed54be71b65d9a4479244fd07 Mon Sep 17 00:00:00 2001 +From 2e07351b454e444fdff46836d26d0ca8f0f1d241 Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Mon, 11 May 2026 02:59:12 +0000 -Subject: [PATCH 396/467] FROMLIST: clk: spacemit: k3: Add PCIe DBI clock +Subject: [RUYI PATCH] FROMLIST: clk: spacemit: k3: Add PCIe DBI clock Add PCIe DBI (Data Bus Interface) clock which was missing, This will support PCIe driver to explicitly request and enable all clocks that diff --git a/SPECS/linux-lts/0397-FROMLIST-riscv-dts-spacemit-enable-eMMC-for-OrangePi.patch b/SPECS/linux-lts/0397-FROMLIST-riscv-dts-spacemit-enable-eMMC-for-OrangePi.patch index 498e072354..3c8f831c46 100644 --- a/SPECS/linux-lts/0397-FROMLIST-riscv-dts-spacemit-enable-eMMC-for-OrangePi.patch +++ b/SPECS/linux-lts/0397-FROMLIST-riscv-dts-spacemit-enable-eMMC-for-OrangePi.patch @@ -1,8 +1,8 @@ -From 6ff2a06cb85f689598ffa5ccd38fc8fe6b494f5f Mon Sep 17 00:00:00 2001 +From 1e42639469619e69ed0fe533281513ebbf8fb45f Mon Sep 17 00:00:00 2001 From: Chukun Pan Date: Sat, 9 May 2026 18:00:00 +0800 -Subject: [PATCH 397/467] FROMLIST: riscv: dts: spacemit: enable eMMC for - OrangePi RV2 +Subject: [RUYI PATCH] FROMLIST: riscv: dts: spacemit: enable eMMC for OrangePi + RV2 The OrangePi RV2 board has one eMMC slot, so enable eMMC. Tested using a 16 GiB AJTD4R eMMC module. diff --git a/SPECS/linux-lts/0398-FROMLIST-i2c-spacemit-configure-ILCR-IWCR-for-accura.patch b/SPECS/linux-lts/0398-FROMLIST-i2c-spacemit-configure-ILCR-IWCR-for-accura.patch index e24ba9833d..f786ba93a4 100644 --- a/SPECS/linux-lts/0398-FROMLIST-i2c-spacemit-configure-ILCR-IWCR-for-accura.patch +++ b/SPECS/linux-lts/0398-FROMLIST-i2c-spacemit-configure-ILCR-IWCR-for-accura.patch @@ -1,7 +1,7 @@ -From 1dffaef4daca33ae971decf2ae555fde6d43ccd1 Mon Sep 17 00:00:00 2001 +From 952ad4c278b4a099d4fbcabc3b23304339f3277a Mon Sep 17 00:00:00 2001 From: Troy Mitchell Date: Fri, 8 May 2026 15:25:24 +0800 -Subject: [PATCH 398/467] FROMLIST: i2c: spacemit: configure ILCR/IWCR for +Subject: [RUYI PATCH] FROMLIST: i2c: spacemit: configure ILCR/IWCR for accurate SCL frequency The SpacemiT I2C controller's SCL (Serial Clock Line) frequency for diff --git a/SPECS/linux-lts/0399-FROMLIST-i2c-spacemit-drop-warning-when-clock-freque.patch b/SPECS/linux-lts/0399-FROMLIST-i2c-spacemit-drop-warning-when-clock-freque.patch index ca4e9fec31..7e3a638bb7 100644 --- a/SPECS/linux-lts/0399-FROMLIST-i2c-spacemit-drop-warning-when-clock-freque.patch +++ b/SPECS/linux-lts/0399-FROMLIST-i2c-spacemit-drop-warning-when-clock-freque.patch @@ -1,7 +1,7 @@ -From dbd9d83cae62b43735c4ed79553380f3d33cf666 Mon Sep 17 00:00:00 2001 +From 362a9bc03d8080d38e5ea64ba2c39884e945e945 Mon Sep 17 00:00:00 2001 From: Troy Mitchell Date: Fri, 8 May 2026 15:25:25 +0800 -Subject: [PATCH 399/467] FROMLIST: i2c: spacemit: drop warning when +Subject: [RUYI PATCH] FROMLIST: i2c: spacemit: drop warning when clock-frequency property is absent The clock-frequency property is optional according to the DT binding. diff --git a/SPECS/linux-lts/0400-FROMLIST-dt-bindings-mmc-spacemit-sdhci-add-pinctrl-.patch b/SPECS/linux-lts/0400-FROMLIST-dt-bindings-mmc-spacemit-sdhci-add-pinctrl-.patch index 62f24cc91b..837fc9207b 100644 --- a/SPECS/linux-lts/0400-FROMLIST-dt-bindings-mmc-spacemit-sdhci-add-pinctrl-.patch +++ b/SPECS/linux-lts/0400-FROMLIST-dt-bindings-mmc-spacemit-sdhci-add-pinctrl-.patch @@ -1,8 +1,8 @@ -From d7f231111494d8c2ec36cad45aabe28d70c55167 Mon Sep 17 00:00:00 2001 +From 56ba1d8c335d661163b9d3b1d870a9e07dd575cc Mon Sep 17 00:00:00 2001 From: Iker Pedrosa Date: Mon, 11 May 2026 10:53:56 +0200 -Subject: [PATCH 400/467] FROMLIST: dt-bindings: mmc: spacemit,sdhci: add - pinctrl support for voltage switching +Subject: [RUYI PATCH] FROMLIST: dt-bindings: mmc: spacemit,sdhci: add pinctrl + support for voltage switching Document pinctrl properties to support voltage-dependent pin configuration switching for UHS-I SD card modes. diff --git a/SPECS/linux-lts/0401-FROMLIST-mmc-sdhci-of-k1-enable-essential-clock-infr.patch b/SPECS/linux-lts/0401-FROMLIST-mmc-sdhci-of-k1-enable-essential-clock-infr.patch index f52dc6e418..5583dc6077 100644 --- a/SPECS/linux-lts/0401-FROMLIST-mmc-sdhci-of-k1-enable-essential-clock-infr.patch +++ b/SPECS/linux-lts/0401-FROMLIST-mmc-sdhci-of-k1-enable-essential-clock-infr.patch @@ -1,7 +1,7 @@ -From 59062924d61974dd50fb52db1a6267bdd0e9caa5 Mon Sep 17 00:00:00 2001 +From a164c67f524d96eea999938772b0e7664cf8432d Mon Sep 17 00:00:00 2001 From: Iker Pedrosa Date: Mon, 11 May 2026 10:53:57 +0200 -Subject: [PATCH 401/467] FROMLIST: mmc: sdhci-of-k1: enable essential clock +Subject: [RUYI PATCH] FROMLIST: mmc: sdhci-of-k1: enable essential clock infrastructure for SD operation Ensure SD card pins receive clock signals by enabling pad clock diff --git a/SPECS/linux-lts/0402-FROMLIST-mmc-sdhci-of-k1-add-regulator-and-pinctrl-v.patch b/SPECS/linux-lts/0402-FROMLIST-mmc-sdhci-of-k1-add-regulator-and-pinctrl-v.patch index 98058cb5ec..d77d4b7d8e 100644 --- a/SPECS/linux-lts/0402-FROMLIST-mmc-sdhci-of-k1-add-regulator-and-pinctrl-v.patch +++ b/SPECS/linux-lts/0402-FROMLIST-mmc-sdhci-of-k1-add-regulator-and-pinctrl-v.patch @@ -1,7 +1,7 @@ -From 6bff1487d38af8eca2467da0d9f7b7e22ef8941d Mon Sep 17 00:00:00 2001 +From 7104b26621a3b8b7a0f213f846d4e94f40cbd6ef Mon Sep 17 00:00:00 2001 From: Iker Pedrosa Date: Mon, 11 May 2026 10:53:58 +0200 -Subject: [PATCH 402/467] FROMLIST: mmc: sdhci-of-k1: add regulator and pinctrl +Subject: [RUYI PATCH] FROMLIST: mmc: sdhci-of-k1: add regulator and pinctrl voltage switching support Add voltage switching infrastructure for UHS-I modes by integrating both diff --git a/SPECS/linux-lts/0403-FROMLIST-mmc-sdhci-of-k1-add-comprehensive-SDR-tunin.patch b/SPECS/linux-lts/0403-FROMLIST-mmc-sdhci-of-k1-add-comprehensive-SDR-tunin.patch index 763c405e53..a431dd69fd 100644 --- a/SPECS/linux-lts/0403-FROMLIST-mmc-sdhci-of-k1-add-comprehensive-SDR-tunin.patch +++ b/SPECS/linux-lts/0403-FROMLIST-mmc-sdhci-of-k1-add-comprehensive-SDR-tunin.patch @@ -1,8 +1,8 @@ -From 7a0c2f9d8bc3d427aff7d62359f74e8a21ecb98f Mon Sep 17 00:00:00 2001 +From 88c16045a194f9da4ac3d1e41104c2bc67bef52f Mon Sep 17 00:00:00 2001 From: Iker Pedrosa Date: Mon, 11 May 2026 10:53:59 +0200 -Subject: [PATCH 403/467] FROMLIST: mmc: sdhci-of-k1: add comprehensive SDR - tuning support +Subject: [RUYI PATCH] FROMLIST: mmc: sdhci-of-k1: add comprehensive SDR tuning + support MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit diff --git a/SPECS/linux-lts/0404-FROMLIST-riscv-dts-spacemit-k1-add-SD-card-controlle.patch b/SPECS/linux-lts/0404-FROMLIST-riscv-dts-spacemit-k1-add-SD-card-controlle.patch index 0efaca8eaf..acee11c137 100644 --- a/SPECS/linux-lts/0404-FROMLIST-riscv-dts-spacemit-k1-add-SD-card-controlle.patch +++ b/SPECS/linux-lts/0404-FROMLIST-riscv-dts-spacemit-k1-add-SD-card-controlle.patch @@ -1,7 +1,7 @@ -From 81aae30b2ea47630a098bc16822c4b8ce486f96b Mon Sep 17 00:00:00 2001 +From c7ea3695cea289291e871b1d5ee24585b4b969ad Mon Sep 17 00:00:00 2001 From: Iker Pedrosa Date: Fri, 15 May 2026 12:48:59 +0200 -Subject: [PATCH 404/467] FROMLIST: riscv: dts: spacemit: k1: add SD card +Subject: [RUYI PATCH] FROMLIST: riscv: dts: spacemit: k1: add SD card controller and pinctrl support Add SD card controller infrastructure for SpacemiT K1 SoC with complete diff --git a/SPECS/linux-lts/0405-FROMLIST-riscv-dts-spacemit-k1-orangepi-rv2-add-SD-c.patch b/SPECS/linux-lts/0405-FROMLIST-riscv-dts-spacemit-k1-orangepi-rv2-add-SD-c.patch index fb0555d636..ba6141397e 100644 --- a/SPECS/linux-lts/0405-FROMLIST-riscv-dts-spacemit-k1-orangepi-rv2-add-SD-c.patch +++ b/SPECS/linux-lts/0405-FROMLIST-riscv-dts-spacemit-k1-orangepi-rv2-add-SD-c.patch @@ -1,8 +1,8 @@ -From 0d69badbae2aa8cfd8dceca3cf87987d79f9a61e Mon Sep 17 00:00:00 2001 +From 43968e62edda768281d634a038212b96befc49e5 Mon Sep 17 00:00:00 2001 From: Iker Pedrosa Date: Fri, 15 May 2026 12:49:00 +0200 -Subject: [PATCH 405/467] FROMLIST: riscv: dts: spacemit: k1-orangepi-rv2: add - SD card support with UHS modes +Subject: [RUYI PATCH] FROMLIST: riscv: dts: spacemit: k1-orangepi-rv2: add SD + card support with UHS modes Add complete SD card controller support with UHS high-speed modes. diff --git a/SPECS/linux-lts/0406-FROMLIST-riscv-dts-spacemit-k1-bananapi-f3-add-SD-ca.patch b/SPECS/linux-lts/0406-FROMLIST-riscv-dts-spacemit-k1-bananapi-f3-add-SD-ca.patch index 76ff2fbb1d..5173364a60 100644 --- a/SPECS/linux-lts/0406-FROMLIST-riscv-dts-spacemit-k1-bananapi-f3-add-SD-ca.patch +++ b/SPECS/linux-lts/0406-FROMLIST-riscv-dts-spacemit-k1-bananapi-f3-add-SD-ca.patch @@ -1,8 +1,8 @@ -From f2d8d59f6d99fa77ef4d8ba4fd987daeff28eab5 Mon Sep 17 00:00:00 2001 +From 139e0716fdfe2ce733d52f88221f1b6727235cf7 Mon Sep 17 00:00:00 2001 From: Iker Pedrosa Date: Fri, 15 May 2026 12:49:01 +0200 -Subject: [PATCH 406/467] FROMLIST: riscv: dts: spacemit: k1-bananapi-f3: add - SD card support with UHS modes +Subject: [RUYI PATCH] FROMLIST: riscv: dts: spacemit: k1-bananapi-f3: add SD + card support with UHS modes Add complete SD card controller support with UHS high-speed modes. diff --git a/SPECS/linux-lts/0407-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-add-SD-car.patch b/SPECS/linux-lts/0407-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-add-SD-car.patch index 998c64454d..fc44499a76 100644 --- a/SPECS/linux-lts/0407-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-add-SD-car.patch +++ b/SPECS/linux-lts/0407-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-add-SD-car.patch @@ -1,7 +1,7 @@ -From f96189263aef32389c97389eb3235827e96b5a5d Mon Sep 17 00:00:00 2001 +From 25997e10bcbb4842cd8f7f69db1754a807b4515b Mon Sep 17 00:00:00 2001 From: Trevor Gamblin Date: Fri, 15 May 2026 12:49:02 +0200 -Subject: [PATCH 407/467] FROMLIST: riscv: dts: spacemit: k1-musepi-pro: add SD +Subject: [RUYI PATCH] FROMLIST: riscv: dts: spacemit: k1-musepi-pro: add SD card support with UHS modes Update the Muse Pi Pro devicetree with SD card support to match what diff --git a/SPECS/linux-lts/0408-FROMLIST-riscv-dts-thead-Enable-wifi-on-the-BeagleV-.patch b/SPECS/linux-lts/0408-FROMLIST-riscv-dts-thead-Enable-wifi-on-the-BeagleV-.patch index 4a176d39a7..5f154ddf37 100644 --- a/SPECS/linux-lts/0408-FROMLIST-riscv-dts-thead-Enable-wifi-on-the-BeagleV-.patch +++ b/SPECS/linux-lts/0408-FROMLIST-riscv-dts-thead-Enable-wifi-on-the-BeagleV-.patch @@ -1,7 +1,7 @@ -From a366a6ddd2d146abfc8ac12c6d57701a94a7c725 Mon Sep 17 00:00:00 2001 +From 30f59c0f689a00390e4183a7b58ec3108d1d55a8 Mon Sep 17 00:00:00 2001 From: Thomas Gerner Date: Thu, 14 May 2026 20:32:01 +0200 -Subject: [PATCH 408/467] FROMLIST: riscv: dts: thead: Enable wifi on the +Subject: [RUYI PATCH] FROMLIST: riscv: dts: thead: Enable wifi on the BeagleV-Ahead The BeagleV-Ahead board uses an AP6203BM WiFi chip from AMPAK Technology diff --git a/SPECS/linux-lts/0409-FROMLIST-riscv-module-Use-generic-cmp_int-instead-of.patch b/SPECS/linux-lts/0409-FROMLIST-riscv-module-Use-generic-cmp_int-instead-of.patch index 52300d9fdd..d8e8c34faf 100644 --- a/SPECS/linux-lts/0409-FROMLIST-riscv-module-Use-generic-cmp_int-instead-of.patch +++ b/SPECS/linux-lts/0409-FROMLIST-riscv-module-Use-generic-cmp_int-instead-of.patch @@ -1,8 +1,8 @@ -From 5eb58bc515879ba41b74f3e37a8bdc20196e4ed0 Mon Sep 17 00:00:00 2001 +From d02e702da21996ccb557b91e5cb594f6c76e0025 Mon Sep 17 00:00:00 2001 From: Florian Schmaus Date: Tue, 12 May 2026 08:32:31 +0200 -Subject: [PATCH 409/467] FROMLIST: riscv: module: Use generic cmp_int() - instead of custom cmp_3way() +Subject: [RUYI PATCH] FROMLIST: riscv: module: Use generic cmp_int() instead + of custom cmp_3way() The module-sections.c file defines a custom cmp_3way() macro to perform 3-way comparisons during relocation sorting. diff --git a/SPECS/linux-lts/0410-FROMLIST-riscv-propagate-insert_resource-result-from.patch b/SPECS/linux-lts/0410-FROMLIST-riscv-propagate-insert_resource-result-from.patch index 78445b0fd9..616724be18 100644 --- a/SPECS/linux-lts/0410-FROMLIST-riscv-propagate-insert_resource-result-from.patch +++ b/SPECS/linux-lts/0410-FROMLIST-riscv-propagate-insert_resource-result-from.patch @@ -1,8 +1,8 @@ -From 2cba62c648b6d8eaad866c02dec48f863e787414 Mon Sep 17 00:00:00 2001 +From 41705cbe35101c7de961fb93f3c0d01b4f424bd3 Mon Sep 17 00:00:00 2001 From: Thorsten Blum Date: Tue, 12 May 2026 19:20:35 +0200 -Subject: [PATCH 410/467] FROMLIST: riscv: propagate insert_resource result - from add_resource +Subject: [RUYI PATCH] FROMLIST: riscv: propagate insert_resource result from + add_resource Currently, add_resource() returns 1 on success, even though its callers only check for negative values. Instead, propagate the insert_resource() diff --git a/SPECS/linux-lts/0411-FROMLIST-PCI-spacemit-k1-Add-device-data-support.patch b/SPECS/linux-lts/0411-FROMLIST-PCI-spacemit-k1-Add-device-data-support.patch index 43182331d6..d8ae0df53d 100644 --- a/SPECS/linux-lts/0411-FROMLIST-PCI-spacemit-k1-Add-device-data-support.patch +++ b/SPECS/linux-lts/0411-FROMLIST-PCI-spacemit-k1-Add-device-data-support.patch @@ -1,7 +1,7 @@ -From 42583ca7d256f65f3ea896a2719f5e5a76a3ab57 Mon Sep 17 00:00:00 2001 +From a380dc5ba876575445cbffdd6abae226725a9fce Mon Sep 17 00:00:00 2001 From: Inochi Amaoto Date: Sun, 17 May 2026 09:48:36 +0800 -Subject: [PATCH 411/467] FROMLIST: PCI: spacemit-k1: Add device data support +Subject: [RUYI PATCH] FROMLIST: PCI: spacemit-k1: Add device data support To reuse the K1 PCIe driver logic for K3 PCIe controller, add device data to handle the K1 specific logic and make room for the incoming diff --git a/SPECS/linux-lts/0412-FROMLIST-PCI-spacemit-k1-Add-multiple-PHY-handles-su.patch b/SPECS/linux-lts/0412-FROMLIST-PCI-spacemit-k1-Add-multiple-PHY-handles-su.patch index c7cc73fe1f..b4cf2fd137 100644 --- a/SPECS/linux-lts/0412-FROMLIST-PCI-spacemit-k1-Add-multiple-PHY-handles-su.patch +++ b/SPECS/linux-lts/0412-FROMLIST-PCI-spacemit-k1-Add-multiple-PHY-handles-su.patch @@ -1,7 +1,7 @@ -From 641cdd56986dd7dd9d5ffec8b4a316e528313390 Mon Sep 17 00:00:00 2001 +From 291d83131cb1a80661bf10272be1b0aab99fb39d Mon Sep 17 00:00:00 2001 From: Inochi Amaoto Date: Sun, 17 May 2026 09:48:37 +0800 -Subject: [PATCH 412/467] FROMLIST: PCI: spacemit-k1: Add multiple PHY handles +Subject: [RUYI PATCH] FROMLIST: PCI: spacemit-k1: Add multiple PHY handles support The PCIe controller on Spacemit K3 may use multiple PHYs at the diff --git a/SPECS/linux-lts/0413-FROMLIST-dt-bindings-PCI-snps-dw-pcie-Add-msi-parent.patch b/SPECS/linux-lts/0413-FROMLIST-dt-bindings-PCI-snps-dw-pcie-Add-msi-parent.patch index e8c8226d5d..d0085e05ec 100644 --- a/SPECS/linux-lts/0413-FROMLIST-dt-bindings-PCI-snps-dw-pcie-Add-msi-parent.patch +++ b/SPECS/linux-lts/0413-FROMLIST-dt-bindings-PCI-snps-dw-pcie-Add-msi-parent.patch @@ -1,8 +1,8 @@ -From ff7b3a40f58430d7040609bb6beb23f080eb3bec Mon Sep 17 00:00:00 2001 +From e1caa735029246df2abdcf416ccc274ca3ff53d5 Mon Sep 17 00:00:00 2001 From: Inochi Amaoto Date: Sun, 17 May 2026 09:48:38 +0800 -Subject: [PATCH 413/467] FROMLIST: dt-bindings: PCI: snps,dw-pcie: Add - msi-parent for MSI handle check +Subject: [RUYI PATCH] FROMLIST: dt-bindings: PCI: snps,dw-pcie: Add msi-parent + for MSI handle check The IMSIC device on RISC-V based system does not require ID remapping for MSI. So this device only needs "msi-parent" diff --git a/SPECS/linux-lts/0414-FROMLIST-dt-bindings-PCI-spacemit-Introduce-Spacemit.patch b/SPECS/linux-lts/0414-FROMLIST-dt-bindings-PCI-spacemit-Introduce-Spacemit.patch index a9f880b0b2..ce7568b3bb 100644 --- a/SPECS/linux-lts/0414-FROMLIST-dt-bindings-PCI-spacemit-Introduce-Spacemit.patch +++ b/SPECS/linux-lts/0414-FROMLIST-dt-bindings-PCI-spacemit-Introduce-Spacemit.patch @@ -1,8 +1,8 @@ -From b71db7acd338b565ebfa25fdafffccc306c3f667 Mon Sep 17 00:00:00 2001 +From f9aab33c4cd724380b176901c11e9b2d5dbe7b6f Mon Sep 17 00:00:00 2001 From: Inochi Amaoto Date: Sun, 17 May 2026 09:48:39 +0800 -Subject: [PATCH 414/467] FROMLIST: dt-bindings: PCI: spacemit: Introduce - Spacemit K3 PCIe host controller +Subject: [RUYI PATCH] FROMLIST: dt-bindings: PCI: spacemit: Introduce Spacemit + K3 PCIe host controller Add binding support for the PCIe controller on the SpacemiT K3 SoC. This controller is almost a standard Synopsys DesignWare PCIe IP, diff --git a/SPECS/linux-lts/0415-FROMLIST-PCI-spacemit-k1-Add-Spacemit-K3-PCIe-host-c.patch b/SPECS/linux-lts/0415-FROMLIST-PCI-spacemit-k1-Add-Spacemit-K3-PCIe-host-c.patch index 94610a7b9a..66e63181b2 100644 --- a/SPECS/linux-lts/0415-FROMLIST-PCI-spacemit-k1-Add-Spacemit-K3-PCIe-host-c.patch +++ b/SPECS/linux-lts/0415-FROMLIST-PCI-spacemit-k1-Add-Spacemit-K3-PCIe-host-c.patch @@ -1,7 +1,7 @@ -From 099bfd3e55205ace595ca828ce5afae419eefaf7 Mon Sep 17 00:00:00 2001 +From 28a3c6b229dbe4b76f568ab83a3d0405809c7f1b Mon Sep 17 00:00:00 2001 From: Inochi Amaoto Date: Sun, 17 May 2026 09:48:40 +0800 -Subject: [PATCH 415/467] FROMLIST: PCI: spacemit-k1: Add Spacemit K3 PCIe host +Subject: [RUYI PATCH] FROMLIST: PCI: spacemit-k1: Add Spacemit K3 PCIe host controller support The PCIe controller on Spacemit K3 is almost a standard Synopsys diff --git a/SPECS/linux-lts/0416-FROMLIST-riscv-dts-spacemit-enable-QSPI-for-OrangePi.patch b/SPECS/linux-lts/0416-FROMLIST-riscv-dts-spacemit-enable-QSPI-for-OrangePi.patch index 416a37403f..80bd621ef2 100644 --- a/SPECS/linux-lts/0416-FROMLIST-riscv-dts-spacemit-enable-QSPI-for-OrangePi.patch +++ b/SPECS/linux-lts/0416-FROMLIST-riscv-dts-spacemit-enable-QSPI-for-OrangePi.patch @@ -1,8 +1,8 @@ -From 2d3f6de67eb533903d80677a6a462979c87143b9 Mon Sep 17 00:00:00 2001 +From e933fb1426b50978196a70b05655d5cb7a3bcb76 Mon Sep 17 00:00:00 2001 From: Chukun Pan Date: Sat, 16 May 2026 16:00:30 +0800 -Subject: [PATCH 416/467] FROMLIST: riscv: dts: spacemit: enable QSPI for - OrangePi RV2 +Subject: [RUYI PATCH] FROMLIST: riscv: dts: spacemit: enable QSPI for OrangePi + RV2 Enable the QSPI controller and the XM25QU128C SPI NOR flash on the OrangePi RV2 board. Add a flash partition layout from vendor UBoot. diff --git a/SPECS/linux-lts/0417-FROMLIST-clk-spacemit-k3-fix-USB2-bus-clock.patch b/SPECS/linux-lts/0417-FROMLIST-clk-spacemit-k3-fix-USB2-bus-clock.patch index c6980ac2dd..7ce6604711 100644 --- a/SPECS/linux-lts/0417-FROMLIST-clk-spacemit-k3-fix-USB2-bus-clock.patch +++ b/SPECS/linux-lts/0417-FROMLIST-clk-spacemit-k3-fix-USB2-bus-clock.patch @@ -1,7 +1,7 @@ -From c77834df77a830ed52e78558f67b5e02fa4379f9 Mon Sep 17 00:00:00 2001 +From 9ffbd34c853c426d82f3daf0bb7512fc1b08d611 Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Mon, 18 May 2026 02:58:36 +0000 -Subject: [PATCH 417/467] FROMLIST: clk: spacemit: k3: fix USB2 bus clock +Subject: [RUYI PATCH] FROMLIST: clk: spacemit: k3: fix USB2 bus clock According to SpacemiT K3's updated docs, the USB2 ahb reset and USB2 bus clock enable bit was wrongly swapped, the correct one should be: diff --git a/SPECS/linux-lts/0418-FROMLIST-reset-spacemit-k3-fix-USB2-ahb-reset.patch b/SPECS/linux-lts/0418-FROMLIST-reset-spacemit-k3-fix-USB2-ahb-reset.patch index 350548f91c..ef6c5cfcb2 100644 --- a/SPECS/linux-lts/0418-FROMLIST-reset-spacemit-k3-fix-USB2-ahb-reset.patch +++ b/SPECS/linux-lts/0418-FROMLIST-reset-spacemit-k3-fix-USB2-ahb-reset.patch @@ -1,7 +1,7 @@ -From a9788cf9dae7cfe18b553bd1ae42afe7ef003b45 Mon Sep 17 00:00:00 2001 +From d420aa127fcbe63635453a4103d4d013e9027703 Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Mon, 18 May 2026 02:58:37 +0000 -Subject: [PATCH 418/467] FROMLIST: reset: spacemit: k3: fix USB2 ahb reset +Subject: [RUYI PATCH] FROMLIST: reset: spacemit: k3: fix USB2 ahb reset According to SpacemiT K3's updated docs, the USB2 ahb reset and USB2 bus clock enable bit was wrongly swapped, the correct one should be: diff --git a/SPECS/linux-lts/0419-FROMLIST-dts-riscv-spacemit-k3-Fix-I-O-power-setting.patch b/SPECS/linux-lts/0419-FROMLIST-dts-riscv-spacemit-k3-Fix-I-O-power-setting.patch index 48fdd3cc67..05b9ee6eb7 100644 --- a/SPECS/linux-lts/0419-FROMLIST-dts-riscv-spacemit-k3-Fix-I-O-power-setting.patch +++ b/SPECS/linux-lts/0419-FROMLIST-dts-riscv-spacemit-k3-Fix-I-O-power-setting.patch @@ -1,7 +1,7 @@ -From 4224b1f1d490ae209fbb371252179c523d1733f9 Mon Sep 17 00:00:00 2001 +From cf3c64c0e469dac06db3606b299ff2b6be12345c Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Mon, 18 May 2026 20:58:16 +0000 -Subject: [PATCH 419/467] FROMLIST: dts: riscv: spacemit: k3: Fix I/O power +Subject: [RUYI PATCH] FROMLIST: dts: riscv: spacemit: k3: Fix I/O power settings SpacemiT K3 SoC support dual-voltage I/O power domain, while initially diff --git a/SPECS/linux-lts/0420-FROMLIST-riscv-dts-spacemit-set-console-baud-rate-on.patch b/SPECS/linux-lts/0420-FROMLIST-riscv-dts-spacemit-set-console-baud-rate-on.patch index 65aa7a68b9..5640477b61 100644 --- a/SPECS/linux-lts/0420-FROMLIST-riscv-dts-spacemit-set-console-baud-rate-on.patch +++ b/SPECS/linux-lts/0420-FROMLIST-riscv-dts-spacemit-set-console-baud-rate-on.patch @@ -1,8 +1,8 @@ -From ad3f20a31772c6ad7ebc8fa7c75029764a774a46 Mon Sep 17 00:00:00 2001 +From 24e92b2f714ec09b1217533e18d18a7a1416d52f Mon Sep 17 00:00:00 2001 From: Aurelien Jarno Date: Tue, 19 May 2026 06:12:35 +0200 -Subject: [PATCH 420/467] FROMLIST: riscv: dts: spacemit: set console baud rate - on Milk-V Jupiter +Subject: [RUYI PATCH] FROMLIST: riscv: dts: spacemit: set console baud rate on + Milk-V Jupiter Because the default console's baud rate is not set, defconfig kernels do not have any serial output on this platform. Set the baud rate to diff --git a/SPECS/linux-lts/0421-FROMLIST-riscv-dts-spacemit-sort-aliases-on-Milk-V-J.patch b/SPECS/linux-lts/0421-FROMLIST-riscv-dts-spacemit-sort-aliases-on-Milk-V-J.patch index 6e6cedf534..f35dbf7a0b 100644 --- a/SPECS/linux-lts/0421-FROMLIST-riscv-dts-spacemit-sort-aliases-on-Milk-V-J.patch +++ b/SPECS/linux-lts/0421-FROMLIST-riscv-dts-spacemit-sort-aliases-on-Milk-V-J.patch @@ -1,8 +1,8 @@ -From 430637bb4afb74146c8c8829d0da513b6bd4c91e Mon Sep 17 00:00:00 2001 +From 8422624a96d6035950f1902cc537f1e7d2a4c281 Mon Sep 17 00:00:00 2001 From: Aurelien Jarno Date: Tue, 19 May 2026 06:12:36 +0200 -Subject: [PATCH 421/467] FROMLIST: riscv: dts: spacemit: sort aliases on - Milk-V Jupiter +Subject: [RUYI PATCH] FROMLIST: riscv: dts: spacemit: sort aliases on Milk-V + Jupiter Before adding more aliases, just sort them. diff --git a/SPECS/linux-lts/0422-FROMLIST-riscv-dts-spacemit-enable-eMMC-on-Milk-V-Ju.patch b/SPECS/linux-lts/0422-FROMLIST-riscv-dts-spacemit-enable-eMMC-on-Milk-V-Ju.patch index 2dba11e059..ebf0663617 100644 --- a/SPECS/linux-lts/0422-FROMLIST-riscv-dts-spacemit-enable-eMMC-on-Milk-V-Ju.patch +++ b/SPECS/linux-lts/0422-FROMLIST-riscv-dts-spacemit-enable-eMMC-on-Milk-V-Ju.patch @@ -1,7 +1,7 @@ -From 5128b77b7248e5ff6e789388a31e1d4980db9625 Mon Sep 17 00:00:00 2001 +From 72311926929a84047a95c07cdcaf0f7211764d88 Mon Sep 17 00:00:00 2001 From: Aurelien Jarno Date: Tue, 19 May 2026 06:12:37 +0200 -Subject: [PATCH 422/467] FROMLIST: riscv: dts: spacemit: enable eMMC on Milk-V +Subject: [RUYI PATCH] FROMLIST: riscv: dts: spacemit: enable eMMC on Milk-V Jupiter The Milk-V Jupiter board has a connector for an eMMC module. Add an diff --git a/SPECS/linux-lts/0423-FROMLIST-riscv-dts-spacemit-enable-SD-card-support-o.patch b/SPECS/linux-lts/0423-FROMLIST-riscv-dts-spacemit-enable-SD-card-support-o.patch index 8563b02bad..7b0fee89d3 100644 --- a/SPECS/linux-lts/0423-FROMLIST-riscv-dts-spacemit-enable-SD-card-support-o.patch +++ b/SPECS/linux-lts/0423-FROMLIST-riscv-dts-spacemit-enable-SD-card-support-o.patch @@ -1,8 +1,8 @@ -From e4c393d2cacfe99846fc5b646d0e38cbe35f4d0b Mon Sep 17 00:00:00 2001 +From 629f9f3c4e0f9cca344b52a02ceedd2e91ab9756 Mon Sep 17 00:00:00 2001 From: Aurelien Jarno Date: Tue, 19 May 2026 06:12:38 +0200 -Subject: [PATCH 423/467] FROMLIST: riscv: dts: spacemit: enable SD card - support on Milk-V Jupiter +Subject: [RUYI PATCH] FROMLIST: riscv: dts: spacemit: enable SD card support + on Milk-V Jupiter Add complete SD card controller support with UHS high-speed modes. diff --git a/SPECS/linux-lts/0424-FROMLIST-riscv-dts-spacemit-fix-uboot-partition-offs.patch b/SPECS/linux-lts/0424-FROMLIST-riscv-dts-spacemit-fix-uboot-partition-offs.patch index b8e8229208..c52a677920 100644 --- a/SPECS/linux-lts/0424-FROMLIST-riscv-dts-spacemit-fix-uboot-partition-offs.patch +++ b/SPECS/linux-lts/0424-FROMLIST-riscv-dts-spacemit-fix-uboot-partition-offs.patch @@ -1,7 +1,7 @@ -From 9b3916fc9b9300620706c675eef564914105dc63 Mon Sep 17 00:00:00 2001 +From 396d9a81ca85057f4a8bc7ad711b684dcffafb06 Mon Sep 17 00:00:00 2001 From: Aurelien Jarno Date: Tue, 19 May 2026 06:12:39 +0200 -Subject: [PATCH 424/467] FROMLIST: riscv: dts: spacemit: fix uboot partition +Subject: [RUYI PATCH] FROMLIST: riscv: dts: spacemit: fix uboot partition offset on Milk-V Jupiter Correct the uboot partition node name to match its actual offset. diff --git a/SPECS/linux-lts/0425-FROMLIST-riscv-dts-spacemit-add-QSPI-support-for-K3-.patch b/SPECS/linux-lts/0425-FROMLIST-riscv-dts-spacemit-add-QSPI-support-for-K3-.patch index 67c3e016f4..3cee4760cd 100644 --- a/SPECS/linux-lts/0425-FROMLIST-riscv-dts-spacemit-add-QSPI-support-for-K3-.patch +++ b/SPECS/linux-lts/0425-FROMLIST-riscv-dts-spacemit-add-QSPI-support-for-K3-.patch @@ -1,8 +1,8 @@ -From 79d41f5abc296c99b6a3b3418eb3600e2082a9e3 Mon Sep 17 00:00:00 2001 +From 98c6ddea13512cec403705f0e1898daa262466b1 Mon Sep 17 00:00:00 2001 From: Zhengyu He Date: Thu, 21 May 2026 22:44:46 +0800 -Subject: [PATCH 425/467] FROMLIST: riscv: dts: spacemit: add QSPI support for - K3 Pico-ITX +Subject: [RUYI PATCH] FROMLIST: riscv: dts: spacemit: add QSPI support for K3 + Pico-ITX Add K3 QSPI controller node into k3.dtsi, and add related pinmux configuration. diff --git a/SPECS/linux-lts/0426-FROMLIST-pinctrl-spacemit-fix-NULL-check-in-spacemit.patch b/SPECS/linux-lts/0426-FROMLIST-pinctrl-spacemit-fix-NULL-check-in-spacemit.patch index e4ca4afdfc..2df47fbbeb 100644 --- a/SPECS/linux-lts/0426-FROMLIST-pinctrl-spacemit-fix-NULL-check-in-spacemit.patch +++ b/SPECS/linux-lts/0426-FROMLIST-pinctrl-spacemit-fix-NULL-check-in-spacemit.patch @@ -1,7 +1,7 @@ -From f8132c56be19ef8420d61eee66dc7352ecdd3ded Mon Sep 17 00:00:00 2001 +From 4188a3bf42259d212c5d61101e694a2dc05e3dd4 Mon Sep 17 00:00:00 2001 From: Han Gao Date: Wed, 20 May 2026 00:40:07 +0800 -Subject: [PATCH 426/467] FROMLIST: pinctrl: spacemit: fix NULL check in +Subject: [RUYI PATCH] FROMLIST: pinctrl: spacemit: fix NULL check in spacemit_pin_set_config spacemit_pin_set_config() looks up the per-pin descriptor with diff --git a/SPECS/linux-lts/0427-FROMLIST-riscv-unconditionally-select-ARCH_KEEP_MEMB.patch b/SPECS/linux-lts/0427-FROMLIST-riscv-unconditionally-select-ARCH_KEEP_MEMB.patch index 02c7c4c58f..950680a506 100644 --- a/SPECS/linux-lts/0427-FROMLIST-riscv-unconditionally-select-ARCH_KEEP_MEMB.patch +++ b/SPECS/linux-lts/0427-FROMLIST-riscv-unconditionally-select-ARCH_KEEP_MEMB.patch @@ -1,7 +1,7 @@ -From 9255f275eddde413b57b043618f6838db76a010c Mon Sep 17 00:00:00 2001 +From 2e0cced73e82d39a2fd99776f4972c20778cd27b Mon Sep 17 00:00:00 2001 From: Han Gao Date: Wed, 20 May 2026 00:55:46 +0800 -Subject: [PATCH 427/467] FROMLIST: riscv: unconditionally select +Subject: [RUYI PATCH] FROMLIST: riscv: unconditionally select ARCH_KEEP_MEMBLOCK Select ARCH_KEEP_MEMBLOCK unconditionally. kexec requires memblock diff --git a/SPECS/linux-lts/0428-FROMLIST-riscv-kexec_file-Constrain-segment-placemen.patch b/SPECS/linux-lts/0428-FROMLIST-riscv-kexec_file-Constrain-segment-placemen.patch index 309e71bdd7..c4ff341f5d 100644 --- a/SPECS/linux-lts/0428-FROMLIST-riscv-kexec_file-Constrain-segment-placemen.patch +++ b/SPECS/linux-lts/0428-FROMLIST-riscv-kexec_file-Constrain-segment-placemen.patch @@ -1,8 +1,8 @@ -From 20deb98d0307212f2ae260f532f5c40944d5cfd4 Mon Sep 17 00:00:00 2001 +From 3c28d26c50aa548e866a1681ca068993386a91c3 Mon Sep 17 00:00:00 2001 From: Han Gao Date: Wed, 20 May 2026 01:06:41 +0800 -Subject: [PATCH 428/467] FROMLIST: riscv: kexec_file: Constrain segment - placement to direct map +Subject: [RUYI PATCH] FROMLIST: riscv: kexec_file: Constrain segment placement + to direct map When kexec_file_load places segments with buf_max=ULONG_MAX and top_down=true, they land at the highest available physical addresses. diff --git a/SPECS/linux-lts/0429-FROMLIST-dt-bindings-riscv-spacemit-Add-K3-CoM260-IF.patch b/SPECS/linux-lts/0429-FROMLIST-dt-bindings-riscv-spacemit-Add-K3-CoM260-IF.patch index 970ceb6e88..35f6ab7227 100644 --- a/SPECS/linux-lts/0429-FROMLIST-dt-bindings-riscv-spacemit-Add-K3-CoM260-IF.patch +++ b/SPECS/linux-lts/0429-FROMLIST-dt-bindings-riscv-spacemit-Add-K3-CoM260-IF.patch @@ -1,7 +1,7 @@ -From f0bf64c6e64658862d7fd2f298df04c873197db3 Mon Sep 17 00:00:00 2001 +From 66203a4e0eefa5812e80d8953dd2e958bbeaa89b Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Wed, 20 May 2026 23:45:27 +0000 -Subject: [PATCH 429/467] FROMLIST: dt-bindings: riscv: spacemit: Add K3 +Subject: [RUYI PATCH] FROMLIST: dt-bindings: riscv: spacemit: Add K3 CoM260-IFX board MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 diff --git a/SPECS/linux-lts/0430-FROMLIST-riscv-dts-spacemit-k3-Initial-support-for-C.patch b/SPECS/linux-lts/0430-FROMLIST-riscv-dts-spacemit-k3-Initial-support-for-C.patch index 2679db01b7..30fcfb32cb 100644 --- a/SPECS/linux-lts/0430-FROMLIST-riscv-dts-spacemit-k3-Initial-support-for-C.patch +++ b/SPECS/linux-lts/0430-FROMLIST-riscv-dts-spacemit-k3-Initial-support-for-C.patch @@ -1,8 +1,8 @@ -From c7390a2a3f64b04ffd7c0a83d5e8e49be1607158 Mon Sep 17 00:00:00 2001 +From 204ddf86a80e19378811ebf324fd4e8474fa0834 Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Wed, 20 May 2026 23:45:28 +0000 -Subject: [PATCH 430/467] FROMLIST: riscv: dts: spacemit: k3: Initial support - for CoM260-IFX board +Subject: [RUYI PATCH] FROMLIST: riscv: dts: spacemit: k3: Initial support for + CoM260-IFX board The K3 CoM260-IFX board combine with one 260 pins "Gold Finger" computer module with a carrier board. The module integrates the K3 SoC, LPDDR5, diff --git a/SPECS/linux-lts/0431-FROMLIST-riscv-dts-spacemit-enable-PMIC-on-OrangePi-.patch b/SPECS/linux-lts/0431-FROMLIST-riscv-dts-spacemit-enable-PMIC-on-OrangePi-.patch index e7f194e629..70f7cc89e9 100644 --- a/SPECS/linux-lts/0431-FROMLIST-riscv-dts-spacemit-enable-PMIC-on-OrangePi-.patch +++ b/SPECS/linux-lts/0431-FROMLIST-riscv-dts-spacemit-enable-PMIC-on-OrangePi-.patch @@ -1,8 +1,8 @@ -From d2737c5027f8388399e5428feeb50be212faf26b Mon Sep 17 00:00:00 2001 +From 78d249e0f67dafbf778883d6990fcb4c34638969 Mon Sep 17 00:00:00 2001 From: Chukun Pan Date: Wed, 20 May 2026 18:00:00 +0800 -Subject: [PATCH 431/467] FROMLIST: riscv: dts: spacemit: enable PMIC on - OrangePi R2S +Subject: [RUYI PATCH] FROMLIST: riscv: dts: spacemit: enable PMIC on OrangePi + R2S Enable the i2c8 interface and add the connected SpacemiT P1 PMIC and its associated regulators to support voltage regulation on the board. diff --git a/SPECS/linux-lts/0432-FROMLIST-riscv-dts-spacemit-set-console-baud-rate-on.patch b/SPECS/linux-lts/0432-FROMLIST-riscv-dts-spacemit-set-console-baud-rate-on.patch index 1717fb80dd..5e9e4db788 100644 --- a/SPECS/linux-lts/0432-FROMLIST-riscv-dts-spacemit-set-console-baud-rate-on.patch +++ b/SPECS/linux-lts/0432-FROMLIST-riscv-dts-spacemit-set-console-baud-rate-on.patch @@ -1,8 +1,8 @@ -From db15fe493d454f8d6639f751b051418ca4ffa796 Mon Sep 17 00:00:00 2001 +From 6aa02cc299f6c36d323e193ab8c1f6118e33d3f9 Mon Sep 17 00:00:00 2001 From: Jennifer Berringer Date: Wed, 20 May 2026 07:11:50 -0400 -Subject: [PATCH 432/467] FROMLIST: riscv: dts: spacemit: set console baud rate - on OrangePi RV2 +Subject: [RUYI PATCH] FROMLIST: riscv: dts: spacemit: set console baud rate on + OrangePi RV2 Set the baud rate to 115200, matching what is used by U-Boot on this platform so that the console is usable even when console options are not diff --git a/SPECS/linux-lts/0433-FROMLIST-riscv-mm-Call-mark_new_valid_map-after-hotp.patch b/SPECS/linux-lts/0433-FROMLIST-riscv-mm-Call-mark_new_valid_map-after-hotp.patch index 19747d8e29..cd9e99e6c3 100644 --- a/SPECS/linux-lts/0433-FROMLIST-riscv-mm-Call-mark_new_valid_map-after-hotp.patch +++ b/SPECS/linux-lts/0433-FROMLIST-riscv-mm-Call-mark_new_valid_map-after-hotp.patch @@ -1,7 +1,7 @@ -From e61fb83553f88a67832eb605add845486af0407c Mon Sep 17 00:00:00 2001 +From 82b7ff76828e1cb4e0a7b4cf12583f33f99e37bc Mon Sep 17 00:00:00 2001 From: Vivian Wang Date: Mon, 25 May 2026 12:23:29 +0800 -Subject: [PATCH 433/467] FROMLIST: riscv: mm: Call mark_new_valid_map() after +Subject: [RUYI PATCH] FROMLIST: riscv: mm: Call mark_new_valid_map() after hotplugging vmemmap section_activate() creates new mappings in the vmemmap range without diff --git a/SPECS/linux-lts/0434-FROMLIST-riscv-dts-spacemit-k3-Add-Ziccrse-extension.patch b/SPECS/linux-lts/0434-FROMLIST-riscv-dts-spacemit-k3-Add-Ziccrse-extension.patch new file mode 100644 index 0000000000..de078902a8 --- /dev/null +++ b/SPECS/linux-lts/0434-FROMLIST-riscv-dts-spacemit-k3-Add-Ziccrse-extension.patch @@ -0,0 +1,99 @@ +From 39f4f9ff2f7384331b347a162c95587733dbc042 Mon Sep 17 00:00:00 2001 +From: Guodong Xu +Date: Tue, 26 May 2026 15:22:58 -0400 +Subject: [RUYI PATCH] FROMLIST: riscv: dts: spacemit: k3: Add Ziccrse + extension for X100 cores + +Add the Ziccrse ISA extension to all eight X100 cores. Ziccrse +provides a forward progress guarantee on LR/SC sequences in main +memory regions with cacheability and coherence PMAs. + +The SpacemiT X100 core supports it per the SpacemiT K3 hardware +specification. + +Signed-off-by: Guodong Xu +Link: https://lore.kernel.org/r/20260526-k3-ziccrse-v1-1-c759792ca3a3@riscstar.com +Signed-off-by: Han Gao +--- + arch/riscv/boot/dts/spacemit/k3.dtsi | 16 ++++++++-------- + 1 file changed, 8 insertions(+), 8 deletions(-) + +diff --git a/arch/riscv/boot/dts/spacemit/k3.dtsi b/arch/riscv/boot/dts/spacemit/k3.dtsi +index 5b17612fe58e..ed046714a7ac 100644 +--- a/arch/riscv/boot/dts/spacemit/k3.dtsi ++++ b/arch/riscv/boot/dts/spacemit/k3.dtsi +@@ -36,7 +36,7 @@ cpu_0: cpu@0 { + "zawrs", "zba", "zbb", "zbc", "zbs", "zca", + "zcb", "zcd", "zcmop", "zfa", "zfbfmin", + "zfh", "zfhmin", "zicbom", "zicbop", "zicboz", +- "ziccamoa", "ziccif", "zicclsm", "zicntr", ++ "ziccamoa", "ziccif", "zicclsm", "ziccrse", "zicntr", + "zicond", "zicsr", "zifencei", "zihintntl", + "zihintpause", "zihpm", "zimop", "zkt", "zvbb", + "zvbc", "zvfbfmin", "zvfbfwma", "zvfh", +@@ -77,7 +77,7 @@ cpu_1: cpu@1 { + "zawrs", "zba", "zbb", "zbc", "zbs", "zca", + "zcb", "zcd", "zcmop", "zfa", "zfbfmin", + "zfh", "zfhmin", "zicbom", "zicbop", "zicboz", +- "ziccamoa", "ziccif", "zicclsm", "zicntr", ++ "ziccamoa", "ziccif", "zicclsm", "ziccrse", "zicntr", + "zicond", "zicsr", "zifencei", "zihintntl", + "zihintpause", "zihpm", "zimop", "zkt", "zvbb", + "zvbc", "zvfbfmin", "zvfbfwma", "zvfh", +@@ -118,7 +118,7 @@ cpu_2: cpu@2 { + "zawrs", "zba", "zbb", "zbc", "zbs", "zca", + "zcb", "zcd", "zcmop", "zfa", "zfbfmin", + "zfh", "zfhmin", "zicbom", "zicbop", "zicboz", +- "ziccamoa", "ziccif", "zicclsm", "zicntr", ++ "ziccamoa", "ziccif", "zicclsm", "ziccrse", "zicntr", + "zicond", "zicsr", "zifencei", "zihintntl", + "zihintpause", "zihpm", "zimop", "zkt", "zvbb", + "zvbc", "zvfbfmin", "zvfbfwma", "zvfh", +@@ -159,7 +159,7 @@ cpu_3: cpu@3 { + "zawrs", "zba", "zbb", "zbc", "zbs", "zca", + "zcb", "zcd", "zcmop", "zfa", "zfbfmin", + "zfh", "zfhmin", "zicbom", "zicbop", "zicboz", +- "ziccamoa", "ziccif", "zicclsm", "zicntr", ++ "ziccamoa", "ziccif", "zicclsm", "ziccrse", "zicntr", + "zicond", "zicsr", "zifencei", "zihintntl", + "zihintpause", "zihpm", "zimop", "zkt", "zvbb", + "zvbc", "zvfbfmin", "zvfbfwma", "zvfh", +@@ -200,7 +200,7 @@ cpu_4: cpu@4 { + "zawrs", "zba", "zbb", "zbc", "zbs", "zca", + "zcb", "zcd", "zcmop", "zfa", "zfbfmin", + "zfh", "zfhmin", "zicbom", "zicbop", "zicboz", +- "ziccamoa", "ziccif", "zicclsm", "zicntr", ++ "ziccamoa", "ziccif", "zicclsm", "ziccrse", "zicntr", + "zicond", "zicsr", "zifencei", "zihintntl", + "zihintpause", "zihpm", "zimop", "zkt", "zvbb", + "zvbc", "zvfbfmin", "zvfbfwma", "zvfh", +@@ -241,7 +241,7 @@ cpu_5: cpu@5 { + "zawrs", "zba", "zbb", "zbc", "zbs", "zca", + "zcb", "zcd", "zcmop", "zfa", "zfbfmin", + "zfh", "zfhmin", "zicbom", "zicbop", "zicboz", +- "ziccamoa", "ziccif", "zicclsm", "zicntr", ++ "ziccamoa", "ziccif", "zicclsm", "ziccrse", "zicntr", + "zicond", "zicsr", "zifencei", "zihintntl", + "zihintpause", "zihpm", "zimop", "zkt", "zvbb", + "zvbc", "zvfbfmin", "zvfbfwma", "zvfh", +@@ -282,7 +282,7 @@ cpu_6: cpu@6 { + "zawrs", "zba", "zbb", "zbc", "zbs", "zca", + "zcb", "zcd", "zcmop", "zfa", "zfbfmin", + "zfh", "zfhmin", "zicbom", "zicbop", "zicboz", +- "ziccamoa", "ziccif", "zicclsm", "zicntr", ++ "ziccamoa", "ziccif", "zicclsm", "ziccrse", "zicntr", + "zicond", "zicsr", "zifencei", "zihintntl", + "zihintpause", "zihpm", "zimop", "zkt", "zvbb", + "zvbc", "zvfbfmin", "zvfbfwma", "zvfh", +@@ -323,7 +323,7 @@ cpu_7: cpu@7 { + "zawrs", "zba", "zbb", "zbc", "zbs", "zca", + "zcb", "zcd", "zcmop", "zfa", "zfbfmin", + "zfh", "zfhmin", "zicbom", "zicbop", "zicboz", +- "ziccamoa", "ziccif", "zicclsm", "zicntr", ++ "ziccamoa", "ziccif", "zicclsm", "ziccrse", "zicntr", + "zicond", "zicsr", "zifencei", "zihintntl", + "zihintpause", "zihpm", "zimop", "zkt", "zvbb", + "zvbc", "zvfbfmin", "zvfbfwma", "zvfh", +-- +2.53.0 + diff --git a/SPECS/linux-lts/0435-FROMLIST-RISC-V-KVM-Enhance-the-logging-check-for-mm.patch b/SPECS/linux-lts/0435-FROMLIST-RISC-V-KVM-Enhance-the-logging-check-for-mm.patch new file mode 100644 index 0000000000..3c0a31840b --- /dev/null +++ b/SPECS/linux-lts/0435-FROMLIST-RISC-V-KVM-Enhance-the-logging-check-for-mm.patch @@ -0,0 +1,52 @@ +From 5bf0a7bd6d1da26628096529743d98bfd1be37e1 Mon Sep 17 00:00:00 2001 +From: Inochi Amaoto +Date: Thu, 28 May 2026 19:38:39 +0800 +Subject: [RUYI PATCH] FROMLIST: RISC-V: KVM: Enhance the logging check for mmu + mapping + +When enabling dirty ring, the dirty bitmap is disable, and the logging +check is always false as the RISC-V architecture does not select +"NEED_KVM_DIRTY_RING_WITH_BITMAP". Although the dirty log is recorded +since the write path already trying to add the dirty log, the logic for +logging check is broken and some side effect will occurs. + +Enhance the logging check for mmu mapping so it can check both the dirty +ring and the dirty bitmap. + +Signed-off-by: Inochi Amaoto +Link: https://lore.kernel.org/r/20260528113840.2629186-1-inochiama@gmail.com +Signed-off-by: Han Gao +--- + arch/riscv/kvm/mmu.c | 9 ++++----- + 1 file changed, 4 insertions(+), 5 deletions(-) + +diff --git a/arch/riscv/kvm/mmu.c b/arch/riscv/kvm/mmu.c +index 58f5f3536ffd..a0d9c113258e 100644 +--- a/arch/riscv/kvm/mmu.c ++++ b/arch/riscv/kvm/mmu.c +@@ -157,9 +157,8 @@ void kvm_arch_commit_memory_region(struct kvm *kvm, + enum kvm_mr_change change) + { + /* +- * At this point memslot has been committed and there is an +- * allocated dirty_bitmap[], dirty pages will be tracked while +- * the memory slot is write protected. ++ * At this point memslot has been committed and dirty pages will be ++ * tracked while the memory slot is write protected. + */ + if (change != KVM_MR_DELETE && new->flags & KVM_MEM_LOG_DIRTY_PAGES) + mmu_wp_memory_region(kvm, new->id); +@@ -314,8 +313,8 @@ int kvm_riscv_mmu_map(struct kvm_vcpu *vcpu, struct kvm_memory_slot *memslot, + struct vm_area_struct *vma; + struct kvm *kvm = vcpu->kvm; + struct kvm_mmu_memory_cache *pcache = &vcpu->arch.mmu_page_cache; +- bool logging = (memslot->dirty_bitmap && +- !(memslot->flags & KVM_MEM_READONLY)) ? true : false; ++ bool logging = kvm_slot_dirty_track_enabled(memslot) && ++ !(memslot->flags & KVM_MEM_READONLY); + unsigned long vma_pagesize, mmu_seq; + struct kvm_gstage gstage; + struct page *page; +-- +2.53.0 + diff --git a/SPECS/linux-lts/0436-FROMLIST-riscv-dts-spacemit-enable-PCIe-on-OrangePi-.patch b/SPECS/linux-lts/0436-FROMLIST-riscv-dts-spacemit-enable-PCIe-on-OrangePi-.patch new file mode 100644 index 0000000000..3af359443c --- /dev/null +++ b/SPECS/linux-lts/0436-FROMLIST-riscv-dts-spacemit-enable-PCIe-on-OrangePi-.patch @@ -0,0 +1,75 @@ +From 1089052df50a4781f12e65e68f2cfeb75dca9d84 Mon Sep 17 00:00:00 2001 +From: Chukun Pan +Date: Tue, 2 Jun 2026 18:00:00 +0800 +Subject: [RUYI PATCH] FROMLIST: riscv: dts: spacemit: enable PCIe on OrangePi + R2S + +Enable the two RTL8125 network controllers and corresponding +PHYs connected via the PCIe controllers on the OrangePi R2S. + +Signed-off-by: Chukun Pan +Link: https://lore.kernel.org/r/20260602100000.2402784-1-amadeus@jmu.edu.cn +Signed-off-by: Han Gao +--- + .../boot/dts/spacemit/k1-orangepi-r2s.dts | 38 +++++++++++++++++++ + 1 file changed, 38 insertions(+) + +diff --git a/arch/riscv/boot/dts/spacemit/k1-orangepi-r2s.dts b/arch/riscv/boot/dts/spacemit/k1-orangepi-r2s.dts +index b13a8d6a2670..919e5b451109 100644 +--- a/arch/riscv/boot/dts/spacemit/k1-orangepi-r2s.dts ++++ b/arch/riscv/boot/dts/spacemit/k1-orangepi-r2s.dts +@@ -23,6 +23,14 @@ chosen { + stdout-path = "serial0"; + }; + ++ pcie_vcc3v3: regulator-pcie-vcc3v3 { ++ compatible = "regulator-fixed"; ++ regulator-name = "pcie_vcc3v3"; ++ regulator-min-microvolt = <3300000>; ++ regulator-max-microvolt = <3300000>; ++ regulator-always-on; ++ }; ++ + vcc4v0: regulator-vcc4v0 { + compatible = "regulator-fixed"; + regulator-name = "vcc4v0"; +@@ -228,6 +236,36 @@ dldo7 { + }; + }; + ++&pcie1_phy { ++ pinctrl-names = "default"; ++ pinctrl-0 = <&pcie1_3_cfg>; ++ status = "okay"; ++}; ++ ++&pcie1_port { ++ phys = <&pcie1_phy>; ++ vpcie3v3-supply = <&pcie_vcc3v3>; ++}; ++ ++&pcie1 { ++ status = "okay"; ++}; ++ ++&pcie2_phy { ++ pinctrl-names = "default"; ++ pinctrl-0 = <&pcie2_4_cfg>; ++ status = "okay"; ++}; ++ ++&pcie2_port { ++ phys = <&pcie2_phy>; ++ vpcie3v3-supply = <&pcie_vcc3v3>; ++}; ++ ++&pcie2 { ++ status = "okay"; ++}; ++ + &pdma { + status = "okay"; + }; +-- +2.53.0 + diff --git a/SPECS/linux-lts/0437-FROMLIST-iommu-riscv-Add-dependency-between-iommu-an.patch b/SPECS/linux-lts/0437-FROMLIST-iommu-riscv-Add-dependency-between-iommu-an.patch new file mode 100644 index 0000000000..0150c1e446 --- /dev/null +++ b/SPECS/linux-lts/0437-FROMLIST-iommu-riscv-Add-dependency-between-iommu-an.patch @@ -0,0 +1,105 @@ +From 63031abd1c4c52dfc3b406612721eff99c69ed49 Mon Sep 17 00:00:00 2001 +From: Wang Yechao +Date: Thu, 4 Jun 2026 14:55:10 +0800 +Subject: [RUYI PATCH] FROMLIST: iommu/riscv: Add dependency between iommu and + devices + +Commit 9156585280f1 ("ACPI: RIMT: Add dependency between iommu and +devices") adds the dependency between iommu and devices on ACPI +systems. On devicetree systems, the incorrect removal order also +occurs. + +It can be reproduced on the QEMU RISC-V machine if the kernel enables +IOMMU_DMA: + +[ 635.081530] e1000e: EEE TX LPI TIMER: 00000000 +[ 656.100306] rcu: INFO: rcu_sched self-detected stall on CPU +[ 656.101374] rcu: 5-....: (5250 ticks this GP) idle=d774/1/0x4000000000000000 softirq=5173/5185 fqs=2625 +[ 656.102237] rcu: (t=5251 jiffies g=36825 q=101 ncpus=16) +[ 656.103801] CPU: 5 UID: 0 PID: 1958 Comm: reboot Tainted: G W 7.1.0-rc5 #31 PREEMPTLAZY +[ 656.104127] Tainted: [W]=WARN +[ 656.104182] Hardware name: QEMU QEMU Virtual Machine, BIOS 2.7 02/02/2022 +[ 656.104339] epc : riscv_iommu_cmd_sync.constprop.0+0xb8/0x148 +[ 656.105352] ra : riscv_iommu_cmd_sync.constprop.0+0xa8/0x148 +[ 656.105433] epc : ffffffff807ca980 ra : ffffffff807ca970 sp : ff60000085dbf960 +[ 656.105475] gp : ffffffff81e0d798 tp : ff60000084b58e00 t0 : ffffffff80021048 +[ 656.105514] t1 : ff60000081b18400 t2 : 45203a6530303031 s0 : ff60000085dbf9c0 +[ 656.105554] s1 : 00000098c92a567c a0 : 00000098c03986f0 a1 : ff60000085dbf970 +[ 656.105594] a2 : 000024bb5cac6aee a3 : ff200000004f1000 a4 : ff6000008140a040 +[ 656.105632] a5 : 0000000000000669 a6 : 0000000000000000 a7 : 00000000ffffa000 +[ 656.105669] s2 : 0000000000000000 s3 : 00000098c0398308 s4 : 000000000000066a +[ 656.105706] s5 : 0000000008f0d180 s6 : 000000a8d08b8de9 s7 : 0000000000001fff +[ 656.105743] s8 : ff6000008140a040 s9 : ff6000008484cb00 s10: ff200000005cc000 +[ 656.105781] s11: ff600000814652a0 t3 : 000000f000000000 t4 : 0000000000000000 +[ 656.105845] t5 : 0000000000000003 t6 : ff600000841666b0 ssp : 0000000000000000 +[ 656.105883] status: 0000000200000120 badaddr: 0000000000000000 cause: 8000000000000005 +[ 656.106072] riscv_iommu_cmd_sync.constprop.0+0xb8/0x148 +[ 656.106321] riscv_iommu_iotlb_inval+0x120/0x160 +[ 656.106373] riscv_iommu_iotlb_sync+0x48/0x60 +[ 656.106422] __iommu_dma_unmap+0xca/0xf8 +[ 656.106470] iommu_dma_unmap_phys+0x58/0xc8 +[ 656.106517] dma_unmap_phys+0x15c/0x248 +[ 656.106564] dma_unmap_page_attrs+0x1e/0x30 +[ 656.106915] e1000_clean_rx_ring+0x1d2/0x200 [e1000e] +[ 656.107668] e1000e_down+0x168/0x1c8 [e1000e] +[ 656.107995] e1000e_pm_freeze+0x94/0x128 [e1000e] +[ 656.108328] e1000_shutdown+0x28/0x48 [e1000e] +[ 656.108652] pci_device_shutdown+0x34/0x48 +[ 656.108706] device_shutdown+0x104/0x1e8 +[ 656.108752] kernel_restart+0x46/0xb8 +[ 656.108797] __do_sys_reboot+0xc0/0x1c8 +[ 656.108840] __riscv_sys_reboot+0x22/0x38 +[ 656.108882] do_trap_ecall_u+0x236/0x3f8 +[ 656.108947] handle_exception+0x15a/0x166 + +So move the device link into the iommu driver to fix both ACPI and +devicetree systems. + +Fixes: 488ffbf18171 ("iommu/riscv: Paging domain support") +Signed-off-by: Wang Yechao +Link: https://lore.kernel.org/r/20260604145510898G2kTwM2Pr25QE5H8T4Wh6@zte.com.cn +Signed-off-by: Han Gao +--- + drivers/acpi/riscv/rimt.c | 7 ------- + drivers/iommu/riscv/iommu.c | 7 +++++++ + 2 files changed, 7 insertions(+), 7 deletions(-) + +diff --git a/drivers/acpi/riscv/rimt.c b/drivers/acpi/riscv/rimt.c +index 8eaa8731bddd..7f423405e5ef 100644 +--- a/drivers/acpi/riscv/rimt.c ++++ b/drivers/acpi/riscv/rimt.c +@@ -263,13 +263,6 @@ static int rimt_iommu_xlate(struct device *dev, struct acpi_rimt_node *node, u32 + if (!rimt_fwnode) + return -EPROBE_DEFER; + +- /* +- * EPROBE_DEFER ensures IOMMU is probed before the devices that +- * depend on them. During shutdown, however, the IOMMU may be removed +- * first, leading to issues. To avoid this, a device link is added +- * which enforces the correct removal order. +- */ +- device_link_add(dev, rimt_fwnode->dev, DL_FLAG_AUTOREMOVE_CONSUMER); + return acpi_iommu_fwspec_init(dev, deviceid, rimt_fwnode); + } + +diff --git a/drivers/iommu/riscv/iommu.c b/drivers/iommu/riscv/iommu.c +index de286563bd44..07ae3c4ec38e 100644 +--- a/drivers/iommu/riscv/iommu.c ++++ b/drivers/iommu/riscv/iommu.c +@@ -1598,6 +1598,13 @@ static struct iommu_device *riscv_iommu_probe_device(struct device *dev) + + dev_iommu_priv_set(dev, info); + ++ /* ++ * During shutdown, however, the IOMMU may be removed first, leading ++ * to issues. To avoid this, a device link is added which enforces ++ * the correct removal order. ++ */ ++ device_link_add(dev, fwspec->iommu_fwnode->dev, DL_FLAG_AUTOREMOVE_CONSUMER); ++ + return &iommu->iommu; + } + +-- +2.53.0 + diff --git a/SPECS/linux-lts/0434-XUANTIE-riscv-dts-th1520-add-licheepi4a-16g-support.patch b/SPECS/linux-lts/0438-XUANTIE-riscv-dts-th1520-add-licheepi4a-16g-support.patch similarity index 91% rename from SPECS/linux-lts/0434-XUANTIE-riscv-dts-th1520-add-licheepi4a-16g-support.patch rename to SPECS/linux-lts/0438-XUANTIE-riscv-dts-th1520-add-licheepi4a-16g-support.patch index 5d85c8b043..19a9ca6539 100644 --- a/SPECS/linux-lts/0434-XUANTIE-riscv-dts-th1520-add-licheepi4a-16g-support.patch +++ b/SPECS/linux-lts/0438-XUANTIE-riscv-dts-th1520-add-licheepi4a-16g-support.patch @@ -1,8 +1,7 @@ -From f1a862c276fa513a0c9ccc9835a65f55feeb22d6 Mon Sep 17 00:00:00 2001 +From 202c07f948325a5c584ae346de90b289bd86b125 Mon Sep 17 00:00:00 2001 From: Han Gao Date: Mon, 24 Nov 2025 20:38:44 +0800 -Subject: [PATCH 434/467] XUANTIE: riscv: dts: th1520: add licheepi4a 16g - support +Subject: [RUYI PATCH] XUANTIE: riscv: dts: th1520: add licheepi4a 16g support From: https://github.com/revyos/th1520-linux-kernel/commit/01a510898e41e704bee1fe58a2c0c0a29cb96548 diff --git a/SPECS/linux-lts/0435-REVYOS-riscv-dts-th1520-rename-thead-to-xuantie.patch b/SPECS/linux-lts/0439-REVYOS-riscv-dts-th1520-rename-thead-to-xuantie.patch similarity index 85% rename from SPECS/linux-lts/0435-REVYOS-riscv-dts-th1520-rename-thead-to-xuantie.patch rename to SPECS/linux-lts/0439-REVYOS-riscv-dts-th1520-rename-thead-to-xuantie.patch index 4ffd3a5571..1c294c8a28 100644 --- a/SPECS/linux-lts/0435-REVYOS-riscv-dts-th1520-rename-thead-to-xuantie.patch +++ b/SPECS/linux-lts/0439-REVYOS-riscv-dts-th1520-rename-thead-to-xuantie.patch @@ -1,7 +1,7 @@ -From 48c328f5e19a84fb0c038a92a3aecb8167523082 Mon Sep 17 00:00:00 2001 +From 7b0831ac6fa2e8db34c9c89d4e02bf2aa105fab3 Mon Sep 17 00:00:00 2001 From: Han Gao Date: Wed, 14 May 2025 08:16:15 +0800 -Subject: [PATCH 435/467] REVYOS: riscv: dts: th1520: rename thead to xuantie +Subject: [RUYI PATCH] REVYOS: riscv: dts: th1520: rename thead to xuantie Signed-off-by: Han Gao [Icenowy: preserve the original compatible to allow Linux to match] diff --git a/SPECS/linux-lts/0436-REVYOS-riscv-dts-th1520-add-xuantie-th1520-mbox-r.patch b/SPECS/linux-lts/0440-REVYOS-riscv-dts-th1520-add-xuantie-th1520-mbox-r.patch similarity index 89% rename from SPECS/linux-lts/0436-REVYOS-riscv-dts-th1520-add-xuantie-th1520-mbox-r.patch rename to SPECS/linux-lts/0440-REVYOS-riscv-dts-th1520-add-xuantie-th1520-mbox-r.patch index ba1a3a3e56..757ee92472 100644 --- a/SPECS/linux-lts/0436-REVYOS-riscv-dts-th1520-add-xuantie-th1520-mbox-r.patch +++ b/SPECS/linux-lts/0440-REVYOS-riscv-dts-th1520-add-xuantie-th1520-mbox-r.patch @@ -1,7 +1,7 @@ -From e973bd6b6cca07542eeec6f28391bf5e9bf49ef3 Mon Sep 17 00:00:00 2001 +From 1fa033781168266e279c276df269822336f8d946 Mon Sep 17 00:00:00 2001 From: Han Gao Date: Wed, 14 May 2025 08:27:18 +0800 -Subject: [PATCH 436/467] REVYOS: riscv: dts: th1520: add xuantie,th1520-mbox-r +Subject: [RUYI PATCH] REVYOS: riscv: dts: th1520: add xuantie,th1520-mbox-r Signed-off-by: Han Gao [Icenowy: remove the interrupt-controller property] diff --git a/SPECS/linux-lts/0437-SOPHGO-dt-bindings-nvmem-Add-SG2044-eFuse-controller.patch b/SPECS/linux-lts/0441-SOPHGO-dt-bindings-nvmem-Add-SG2044-eFuse-controller.patch similarity index 92% rename from SPECS/linux-lts/0437-SOPHGO-dt-bindings-nvmem-Add-SG2044-eFuse-controller.patch rename to SPECS/linux-lts/0441-SOPHGO-dt-bindings-nvmem-Add-SG2044-eFuse-controller.patch index 3913520ac4..79f21e68df 100644 --- a/SPECS/linux-lts/0437-SOPHGO-dt-bindings-nvmem-Add-SG2044-eFuse-controller.patch +++ b/SPECS/linux-lts/0441-SOPHGO-dt-bindings-nvmem-Add-SG2044-eFuse-controller.patch @@ -1,8 +1,7 @@ -From 58b84bc14138597b9031f9e8d047b52130e77045 Mon Sep 17 00:00:00 2001 +From 40d9d7d4261e84ef42987558481248dd8a8a89b0 Mon Sep 17 00:00:00 2001 From: Inochi Amaoto Date: Sun, 19 Nov 2023 21:13:31 +0800 -Subject: [PATCH 437/467] SOPHGO: dt-bindings: nvmem: Add SG2044 eFuse - controller +Subject: [RUYI PATCH] SOPHGO: dt-bindings: nvmem: Add SG2044 eFuse controller Sophgo SG2044 uses eFuses used to store factory-programmed data such as ROM patch, public keys and other factory information. diff --git a/SPECS/linux-lts/0438-SOPHGO-nvmem-Add-Sophgo-SG2044-eFuse-driver.patch b/SPECS/linux-lts/0442-SOPHGO-nvmem-Add-Sophgo-SG2044-eFuse-driver.patch similarity index 97% rename from SPECS/linux-lts/0438-SOPHGO-nvmem-Add-Sophgo-SG2044-eFuse-driver.patch rename to SPECS/linux-lts/0442-SOPHGO-nvmem-Add-Sophgo-SG2044-eFuse-driver.patch index 7a5c632111..2ebd4453f3 100644 --- a/SPECS/linux-lts/0438-SOPHGO-nvmem-Add-Sophgo-SG2044-eFuse-driver.patch +++ b/SPECS/linux-lts/0442-SOPHGO-nvmem-Add-Sophgo-SG2044-eFuse-driver.patch @@ -1,7 +1,7 @@ -From 6ac29107a01f6a190188cc8c4ed3d8f9ac21c834 Mon Sep 17 00:00:00 2001 +From e96eabf82535fd6f2fc338f3f5af2fb50721a459 Mon Sep 17 00:00:00 2001 From: Inochi Amaoto Date: Sun, 19 Nov 2023 21:13:32 +0800 -Subject: [PATCH 438/467] SOPHGO: nvmem: Add Sophgo SG2044 eFuse driver +Subject: [RUYI PATCH] SOPHGO: nvmem: Add Sophgo SG2044 eFuse driver Sophgo SoCs such as SG2044 contain eFuses used to store factory-programmed data. diff --git a/SPECS/linux-lts/0439-SOPHGO-riscv-dts-sophgo-sg2044-Add-eFUSE-device.patch b/SPECS/linux-lts/0443-SOPHGO-riscv-dts-sophgo-sg2044-Add-eFUSE-device.patch similarity index 91% rename from SPECS/linux-lts/0439-SOPHGO-riscv-dts-sophgo-sg2044-Add-eFUSE-device.patch rename to SPECS/linux-lts/0443-SOPHGO-riscv-dts-sophgo-sg2044-Add-eFUSE-device.patch index 13be292227..ca1a921e5d 100644 --- a/SPECS/linux-lts/0439-SOPHGO-riscv-dts-sophgo-sg2044-Add-eFUSE-device.patch +++ b/SPECS/linux-lts/0443-SOPHGO-riscv-dts-sophgo-sg2044-Add-eFUSE-device.patch @@ -1,7 +1,7 @@ -From 067900c6efeb7cfec72358b2de3190c383988fb7 Mon Sep 17 00:00:00 2001 +From 973bb367e07f78196b1e441326cbdef6c366955f Mon Sep 17 00:00:00 2001 From: Inochi Amaoto Date: Thu, 5 Dec 2024 13:24:13 +0800 -Subject: [PATCH 439/467] SOPHGO: riscv: dts: sophgo: sg2044: Add eFUSE device +Subject: [RUYI PATCH] SOPHGO: riscv: dts: sophgo: sg2044: Add eFUSE device Add eFUSE controller node for SG2044. diff --git a/SPECS/linux-lts/0440-SOPHGO-dts-sg2044-Modify-pcie-bar-address.patch b/SPECS/linux-lts/0444-SOPHGO-dts-sg2044-Modify-pcie-bar-address.patch similarity index 97% rename from SPECS/linux-lts/0440-SOPHGO-dts-sg2044-Modify-pcie-bar-address.patch rename to SPECS/linux-lts/0444-SOPHGO-dts-sg2044-Modify-pcie-bar-address.patch index 4dd1171275..7551151403 100644 --- a/SPECS/linux-lts/0440-SOPHGO-dts-sg2044-Modify-pcie-bar-address.patch +++ b/SPECS/linux-lts/0444-SOPHGO-dts-sg2044-Modify-pcie-bar-address.patch @@ -1,7 +1,7 @@ -From 819aa39c2d1a6d2c6cbde41fb83516b927d08626 Mon Sep 17 00:00:00 2001 +From e2ed9e487c648247b91a25cef6515dc2a54aba85 Mon Sep 17 00:00:00 2001 From: Han Gao Date: Sun, 28 Dec 2025 23:02:15 +0800 -Subject: [PATCH 440/467] SOPHGO: dts: sg2044: Modify pcie bar address +Subject: [RUYI PATCH] SOPHGO: dts: sg2044: Modify pcie bar address FROM: https://github.com/sophgo/linux-riscv/commit/efddc3e2d3d57b27054415afb522100e6dce8692 diff --git a/SPECS/linux-lts/0441-SOPHGO-riscv-sg2042-errata-Replace-thead-cache-clean.patch b/SPECS/linux-lts/0445-SOPHGO-riscv-sg2042-errata-Replace-thead-cache-clean.patch similarity index 85% rename from SPECS/linux-lts/0441-SOPHGO-riscv-sg2042-errata-Replace-thead-cache-clean.patch rename to SPECS/linux-lts/0445-SOPHGO-riscv-sg2042-errata-Replace-thead-cache-clean.patch index 23c3d7b4f9..8f80489e78 100644 --- a/SPECS/linux-lts/0441-SOPHGO-riscv-sg2042-errata-Replace-thead-cache-clean.patch +++ b/SPECS/linux-lts/0445-SOPHGO-riscv-sg2042-errata-Replace-thead-cache-clean.patch @@ -1,8 +1,8 @@ -From c9a6181747df1dd9980ccca9e4e34a51afc1f1db Mon Sep 17 00:00:00 2001 +From 90bc96384294bf251a26f5f518765309821b8cd2 Mon Sep 17 00:00:00 2001 From: Xiaoguang Xing Date: Mon, 22 Jan 2024 10:31:30 +0800 -Subject: [PATCH 441/467] SOPHGO: riscv: sg2042: errata: Replace thead cache - clean with flush +Subject: [RUYI PATCH] SOPHGO: riscv: sg2042: errata: Replace thead cache clean + with flush FROM: https://github.com/sophgo/linux-riscv/commit/9f8fdd99aae6ae8f037ad9c80b968de7c4252a65 diff --git a/SPECS/linux-lts/0442-REVYSR-dt-bindings-net-ultrarisc-dp1000-gmac-Add-sup.patch b/SPECS/linux-lts/0446-REVYSR-dt-bindings-net-ultrarisc-dp1000-gmac-Add-sup.patch similarity index 95% rename from SPECS/linux-lts/0442-REVYSR-dt-bindings-net-ultrarisc-dp1000-gmac-Add-sup.patch rename to SPECS/linux-lts/0446-REVYSR-dt-bindings-net-ultrarisc-dp1000-gmac-Add-sup.patch index ff15f677fa..5ca806b352 100644 --- a/SPECS/linux-lts/0442-REVYSR-dt-bindings-net-ultrarisc-dp1000-gmac-Add-sup.patch +++ b/SPECS/linux-lts/0446-REVYSR-dt-bindings-net-ultrarisc-dp1000-gmac-Add-sup.patch @@ -1,7 +1,7 @@ -From 5d179609e5c15e909b3700913113fa6b03c0cb53 Mon Sep 17 00:00:00 2001 +From 283120c06a7de7f2b98715726a766cbef2459707 Mon Sep 17 00:00:00 2001 From: Han Gao Date: Fri, 24 Oct 2025 15:59:17 +0800 -Subject: [PATCH 442/467] REVYSR: dt-bindings: net: ultrarisc,dp1000-gmac: Add +Subject: [RUYI PATCH] REVYSR: dt-bindings: net: ultrarisc,dp1000-gmac: Add support for Ultrarisc DP1000 GMAC The GMAC IP on DP1000 is a standard Synopsys DesignWare MAC diff --git a/SPECS/linux-lts/0443-REVYSR-net-stmmac-add-support-for-dwmac-5.10a.patch b/SPECS/linux-lts/0447-REVYSR-net-stmmac-add-support-for-dwmac-5.10a.patch similarity index 87% rename from SPECS/linux-lts/0443-REVYSR-net-stmmac-add-support-for-dwmac-5.10a.patch rename to SPECS/linux-lts/0447-REVYSR-net-stmmac-add-support-for-dwmac-5.10a.patch index 86078006ad..271d5db9ac 100644 --- a/SPECS/linux-lts/0443-REVYSR-net-stmmac-add-support-for-dwmac-5.10a.patch +++ b/SPECS/linux-lts/0447-REVYSR-net-stmmac-add-support-for-dwmac-5.10a.patch @@ -1,7 +1,7 @@ -From f541fa0b3dbdffb41fa000bff4a473af0b9f662b Mon Sep 17 00:00:00 2001 +From 10d617cd5ad42153be1aa390de90e0cdd8376340 Mon Sep 17 00:00:00 2001 From: Han Gao Date: Fri, 24 Oct 2025 17:00:37 +0800 -Subject: [PATCH 443/467] REVYSR: net: stmmac: add support for dwmac 5.10a +Subject: [RUYI PATCH] REVYSR: net: stmmac: add support for dwmac 5.10a Signed-off-by: Han Gao FROM: https://github.com/RevySR/linux/commit/5bc2d2af06ccd13675b8d4751226fb56bc8ee6df diff --git a/SPECS/linux-lts/0444-RVCK-riscv-dts-add-dp1000.dts-for-UltraRIsc-DP1000-S.patch b/SPECS/linux-lts/0448-RVCK-riscv-dts-add-dp1000.dts-for-UltraRIsc-DP1000-S.patch similarity index 99% rename from SPECS/linux-lts/0444-RVCK-riscv-dts-add-dp1000.dts-for-UltraRIsc-DP1000-S.patch rename to SPECS/linux-lts/0448-RVCK-riscv-dts-add-dp1000.dts-for-UltraRIsc-DP1000-S.patch index e1c1a55eec..9de39c75e0 100644 --- a/SPECS/linux-lts/0444-RVCK-riscv-dts-add-dp1000.dts-for-UltraRIsc-DP1000-S.patch +++ b/SPECS/linux-lts/0448-RVCK-riscv-dts-add-dp1000.dts-for-UltraRIsc-DP1000-S.patch @@ -1,8 +1,7 @@ -From b77880a0dbc2004c552fb776369d9ee9c2e82477 Mon Sep 17 00:00:00 2001 +From 99ea7fd4bd1ccf2910170d8c84c997b33c948537 Mon Sep 17 00:00:00 2001 From: Jia Wang Date: Fri, 16 May 2025 11:12:26 +0800 -Subject: [PATCH 444/467] RVCK: riscv:dts: add dp1000.dts for UltraRIsc DP1000 - SoC +Subject: [RUYI PATCH] RVCK: riscv:dts: add dp1000.dts for UltraRIsc DP1000 SoC Signed-off-by: Jia Wang FROM: https://github.com/RVCK-Project/rvck/commit/8fa6586e8607e8f2b9bbf701a6cf282b29dac1f7 diff --git a/SPECS/linux-lts/0445-RVCK-pinctrl-add-pinctrl-dirver-for-UltraRisc-DP1000.patch b/SPECS/linux-lts/0449-RVCK-pinctrl-add-pinctrl-dirver-for-UltraRisc-DP1000.patch similarity index 99% rename from SPECS/linux-lts/0445-RVCK-pinctrl-add-pinctrl-dirver-for-UltraRisc-DP1000.patch rename to SPECS/linux-lts/0449-RVCK-pinctrl-add-pinctrl-dirver-for-UltraRisc-DP1000.patch index 2a78270fd1..fad0cc8ffd 100644 --- a/SPECS/linux-lts/0445-RVCK-pinctrl-add-pinctrl-dirver-for-UltraRisc-DP1000.patch +++ b/SPECS/linux-lts/0449-RVCK-pinctrl-add-pinctrl-dirver-for-UltraRisc-DP1000.patch @@ -1,8 +1,7 @@ -From 29f4764a9f5c2daf1ba382864a626abb65b50d8f Mon Sep 17 00:00:00 2001 +From 709a5329d0c5e869292d0fb40e080d1e280adb51 Mon Sep 17 00:00:00 2001 From: Jia Wang Date: Fri, 17 Jan 2025 19:34:48 +0800 -Subject: [PATCH 445/467] RVCK: pinctrl: add pinctrl dirver for UltraRisc - DP1000 +Subject: [RUYI PATCH] RVCK: pinctrl: add pinctrl dirver for UltraRisc DP1000 support pinmux and pinconf for UltraRisc DP1000 SoC diff --git a/SPECS/linux-lts/0446-RVCK-dts-add-pinctrl-dtsi-dts-for-UltraRisc-DP1000.patch b/SPECS/linux-lts/0450-RVCK-dts-add-pinctrl-dtsi-dts-for-UltraRisc-DP1000.patch similarity index 97% rename from SPECS/linux-lts/0446-RVCK-dts-add-pinctrl-dtsi-dts-for-UltraRisc-DP1000.patch rename to SPECS/linux-lts/0450-RVCK-dts-add-pinctrl-dtsi-dts-for-UltraRisc-DP1000.patch index 4e043bafce..935589d38c 100644 --- a/SPECS/linux-lts/0446-RVCK-dts-add-pinctrl-dtsi-dts-for-UltraRisc-DP1000.patch +++ b/SPECS/linux-lts/0450-RVCK-dts-add-pinctrl-dtsi-dts-for-UltraRisc-DP1000.patch @@ -1,7 +1,7 @@ -From 182a5e8e69bcf91baec912e83b948dfda780e9e5 Mon Sep 17 00:00:00 2001 +From c3b99eaa70d3c031fe29c503b85abb31e02d50a4 Mon Sep 17 00:00:00 2001 From: Jia Wang Date: Mon, 16 Jun 2025 10:25:31 +0800 -Subject: [PATCH 446/467] RVCK: dts: add pinctrl dtsi/dts for UltraRisc DP1000 +Subject: [RUYI PATCH] RVCK: dts: add pinctrl dtsi/dts for UltraRisc DP1000 The newly added dtsi/dts is used to describe the pinctrl configuration of the UltraRisc DP1000-EVB mainboard. diff --git a/SPECS/linux-lts/0447-RVCK-riscv-dp1000-dts-add-the-dts-of-UltraRISC-dp100.patch b/SPECS/linux-lts/0451-RVCK-riscv-dp1000-dts-add-the-dts-of-UltraRISC-dp100.patch similarity index 98% rename from SPECS/linux-lts/0447-RVCK-riscv-dp1000-dts-add-the-dts-of-UltraRISC-dp100.patch rename to SPECS/linux-lts/0451-RVCK-riscv-dp1000-dts-add-the-dts-of-UltraRISC-dp100.patch index c8897fb4ae..dfeb639386 100644 --- a/SPECS/linux-lts/0447-RVCK-riscv-dp1000-dts-add-the-dts-of-UltraRISC-dp100.patch +++ b/SPECS/linux-lts/0451-RVCK-riscv-dp1000-dts-add-the-dts-of-UltraRISC-dp100.patch @@ -1,7 +1,7 @@ -From 2faa790be1496587400ee51ba2cb7b112892e54d Mon Sep 17 00:00:00 2001 +From 6e08f5227680fcb9eef599c73c6a48dbba8d8f66 Mon Sep 17 00:00:00 2001 From: Jia Wang Date: Thu, 4 Sep 2025 16:31:30 +0800 -Subject: [PATCH 447/467] RVCK: riscv: dp1000: dts: add the dts of UltraRISC +Subject: [RUYI PATCH] RVCK: riscv: dp1000: dts: add the dts of UltraRISC dp1000-mo-v1 board adds the necessary device tree files for the UltraRISC diff --git a/SPECS/linux-lts/0448-RVCK-riscv-dp1000-dts-Move-mmc0-node-from-SoC-to-boa.patch b/SPECS/linux-lts/0452-RVCK-riscv-dp1000-dts-Move-mmc0-node-from-SoC-to-boa.patch similarity index 95% rename from SPECS/linux-lts/0448-RVCK-riscv-dp1000-dts-Move-mmc0-node-from-SoC-to-boa.patch rename to SPECS/linux-lts/0452-RVCK-riscv-dp1000-dts-Move-mmc0-node-from-SoC-to-boa.patch index e3ebcd1989..ee76518537 100644 --- a/SPECS/linux-lts/0448-RVCK-riscv-dp1000-dts-Move-mmc0-node-from-SoC-to-boa.patch +++ b/SPECS/linux-lts/0452-RVCK-riscv-dp1000-dts-Move-mmc0-node-from-SoC-to-boa.patch @@ -1,7 +1,7 @@ -From c88f25eebc30016da836312d9bdf40c93746a6ae Mon Sep 17 00:00:00 2001 +From b9ce7c71ab1aae741d95ad74bd380256a79a7de3 Mon Sep 17 00:00:00 2001 From: Jia Wang Date: Tue, 9 Sep 2025 15:45:52 +0800 -Subject: [PATCH 448/467] RVCK: riscv: dp1000: dts: Move mmc0 node from SoC to +Subject: [RUYI PATCH] RVCK: riscv: dp1000: dts: Move mmc0 node from SoC to board DTS The mmc0 node (mmc-spi-slot) is a board-level peripheral diff --git a/SPECS/linux-lts/0449-RVCK-riscv-dp1000-plic-add-plic-early-init-supports.patch b/SPECS/linux-lts/0453-RVCK-riscv-dp1000-plic-add-plic-early-init-supports.patch similarity index 94% rename from SPECS/linux-lts/0449-RVCK-riscv-dp1000-plic-add-plic-early-init-supports.patch rename to SPECS/linux-lts/0453-RVCK-riscv-dp1000-plic-add-plic-early-init-supports.patch index 67053738ec..2e0d7ad5ce 100644 --- a/SPECS/linux-lts/0449-RVCK-riscv-dp1000-plic-add-plic-early-init-supports.patch +++ b/SPECS/linux-lts/0453-RVCK-riscv-dp1000-plic-add-plic-early-init-supports.patch @@ -1,8 +1,7 @@ -From b8a01535a0fbc907f912f8d76412850ef78416a8 Mon Sep 17 00:00:00 2001 +From 2e69e921113ca412333654bea99e8cde384f3780 Mon Sep 17 00:00:00 2001 From: Jia Wang Date: Thu, 18 Sep 2025 10:44:01 +0800 -Subject: [PATCH 449/467] RVCK: riscv: dp1000: plic: add plic early init - supports +Subject: [RUYI PATCH] RVCK: riscv: dp1000: plic: add plic early init supports community inclusion category: feature diff --git a/SPECS/linux-lts/0450-RVCK-riscv-dp1000-dts-Move-chosen-node-from-common-t.patch b/SPECS/linux-lts/0454-RVCK-riscv-dp1000-dts-Move-chosen-node-from-common-t.patch similarity index 93% rename from SPECS/linux-lts/0450-RVCK-riscv-dp1000-dts-Move-chosen-node-from-common-t.patch rename to SPECS/linux-lts/0454-RVCK-riscv-dp1000-dts-Move-chosen-node-from-common-t.patch index fbb0fe8e41..87e90bc15e 100644 --- a/SPECS/linux-lts/0450-RVCK-riscv-dp1000-dts-Move-chosen-node-from-common-t.patch +++ b/SPECS/linux-lts/0454-RVCK-riscv-dp1000-dts-Move-chosen-node-from-common-t.patch @@ -1,8 +1,8 @@ -From c2b729c99b333e2485660b66669d1415bfd256bb Mon Sep 17 00:00:00 2001 +From c95a87c3fe519649f8470396461cd19be68bb138 Mon Sep 17 00:00:00 2001 From: Jia Wang Date: Mon, 10 Nov 2025 16:11:12 +0800 -Subject: [PATCH 450/467] RVCK: riscv: dp1000: dts: Move chosen node from - common to board-specific DTS +Subject: [RUYI PATCH] RVCK: riscv: dp1000: dts: Move chosen node from common + to board-specific DTS community inclusion category: feature diff --git a/SPECS/linux-lts/0451-RVCK-dts-riscv-ultrarisc-Refactor-DP1000-device-tree.patch b/SPECS/linux-lts/0455-RVCK-dts-riscv-ultrarisc-Refactor-DP1000-device-tree.patch similarity index 99% rename from SPECS/linux-lts/0451-RVCK-dts-riscv-ultrarisc-Refactor-DP1000-device-tree.patch rename to SPECS/linux-lts/0455-RVCK-dts-riscv-ultrarisc-Refactor-DP1000-device-tree.patch index bd085b039a..47458b4dd9 100644 --- a/SPECS/linux-lts/0451-RVCK-dts-riscv-ultrarisc-Refactor-DP1000-device-tree.patch +++ b/SPECS/linux-lts/0455-RVCK-dts-riscv-ultrarisc-Refactor-DP1000-device-tree.patch @@ -1,8 +1,8 @@ -From 03de28a6f7321aa6b3f914c0547661e9c15e62cc Mon Sep 17 00:00:00 2001 +From efed87f8a357dd6937ae5011627de96daf2e7029 Mon Sep 17 00:00:00 2001 From: Jia Wang Date: Tue, 11 Nov 2025 17:03:37 +0800 -Subject: [PATCH 451/467] RVCK: dts: riscv: ultrarisc: Refactor DP1000 device - tree files +Subject: [RUYI PATCH] RVCK: dts: riscv: ultrarisc: Refactor DP1000 device tree + files community inclusion category: feature diff --git a/SPECS/linux-lts/0452-RVCK-riscv-pinctrl-ultrarisc-Implement-pin-configura.patch b/SPECS/linux-lts/0456-RVCK-riscv-pinctrl-ultrarisc-Implement-pin-configura.patch similarity index 97% rename from SPECS/linux-lts/0452-RVCK-riscv-pinctrl-ultrarisc-Implement-pin-configura.patch rename to SPECS/linux-lts/0456-RVCK-riscv-pinctrl-ultrarisc-Implement-pin-configura.patch index 0bc0730651..ebf2263e4c 100644 --- a/SPECS/linux-lts/0452-RVCK-riscv-pinctrl-ultrarisc-Implement-pin-configura.patch +++ b/SPECS/linux-lts/0456-RVCK-riscv-pinctrl-ultrarisc-Implement-pin-configura.patch @@ -1,7 +1,7 @@ -From 9990048297fff986d79fe3f64e82e5f0856461e4 Mon Sep 17 00:00:00 2001 +From bae8242b84b2c9409608fced96e355aa782dfcd8 Mon Sep 17 00:00:00 2001 From: Jia Wang Date: Wed, 12 Nov 2025 15:43:27 +0800 -Subject: [PATCH 452/467] RVCK: riscv: pinctrl: ultrarisc: Implement pin +Subject: [RUYI PATCH] RVCK: riscv: pinctrl: ultrarisc: Implement pin configuration support community inclusion diff --git a/SPECS/linux-lts/0453-RVCK-riscv-dts-dp1000-add-dts-dtsi-for-Milk-V-Titan-.patch b/SPECS/linux-lts/0457-RVCK-riscv-dts-dp1000-add-dts-dtsi-for-Milk-V-Titan-.patch similarity index 98% rename from SPECS/linux-lts/0453-RVCK-riscv-dts-dp1000-add-dts-dtsi-for-Milk-V-Titan-.patch rename to SPECS/linux-lts/0457-RVCK-riscv-dts-dp1000-add-dts-dtsi-for-Milk-V-Titan-.patch index 1eed92849d..ca0081cabf 100644 --- a/SPECS/linux-lts/0453-RVCK-riscv-dts-dp1000-add-dts-dtsi-for-Milk-V-Titan-.patch +++ b/SPECS/linux-lts/0457-RVCK-riscv-dts-dp1000-add-dts-dtsi-for-Milk-V-Titan-.patch @@ -1,8 +1,8 @@ -From fbad2c8916d16de5ce5963b7dcc776529371ad4c Mon Sep 17 00:00:00 2001 +From 90a72c61206582a7f4df5b88119e6602cbafc201 Mon Sep 17 00:00:00 2001 From: Jia Wang Date: Tue, 18 Nov 2025 13:48:49 +0800 -Subject: [PATCH 453/467] RVCK: riscv: dts: dp1000: add dts/dtsi for Milk-V - Titan board based on UltraRISC DP1000 SoC +Subject: [RUYI PATCH] RVCK: riscv: dts: dp1000: add dts/dtsi for Milk-V Titan + board based on UltraRISC DP1000 SoC community inclusion category: feature diff --git a/SPECS/linux-lts/0454-REVYSR-pinctrl-ultrarisc-cleanup-probe-remove.patch b/SPECS/linux-lts/0458-REVYSR-pinctrl-ultrarisc-cleanup-probe-remove.patch similarity index 94% rename from SPECS/linux-lts/0454-REVYSR-pinctrl-ultrarisc-cleanup-probe-remove.patch rename to SPECS/linux-lts/0458-REVYSR-pinctrl-ultrarisc-cleanup-probe-remove.patch index 600e84fb7f..7b6568d84b 100644 --- a/SPECS/linux-lts/0454-REVYSR-pinctrl-ultrarisc-cleanup-probe-remove.patch +++ b/SPECS/linux-lts/0458-REVYSR-pinctrl-ultrarisc-cleanup-probe-remove.patch @@ -1,7 +1,7 @@ -From a5bc9efc302578399318b126b9ad08dc8f2925c9 Mon Sep 17 00:00:00 2001 +From ad2ca89827235515c3cfea8822ac22544a6f79f1 Mon Sep 17 00:00:00 2001 From: Han Gao Date: Mon, 23 Feb 2026 14:35:29 +0800 -Subject: [PATCH 454/467] REVYSR: pinctrl: ultrarisc: cleanup probe&remove +Subject: [RUYI PATCH] REVYSR: pinctrl: ultrarisc: cleanup probe&remove Signed-off-by: Han Gao --- diff --git a/SPECS/linux-lts/0455-REVYSR-riscv-dp1000-dts-use-ultrarisc-dp1000-pcie-fo.patch b/SPECS/linux-lts/0459-REVYSR-riscv-dp1000-dts-use-ultrarisc-dp1000-pcie-fo.patch similarity index 89% rename from SPECS/linux-lts/0455-REVYSR-riscv-dp1000-dts-use-ultrarisc-dp1000-pcie-fo.patch rename to SPECS/linux-lts/0459-REVYSR-riscv-dp1000-dts-use-ultrarisc-dp1000-pcie-fo.patch index 02ee603e78..3ab0a8fab6 100644 --- a/SPECS/linux-lts/0455-REVYSR-riscv-dp1000-dts-use-ultrarisc-dp1000-pcie-fo.patch +++ b/SPECS/linux-lts/0459-REVYSR-riscv-dp1000-dts-use-ultrarisc-dp1000-pcie-fo.patch @@ -1,7 +1,7 @@ -From e8065f872b91db0f8430308a5dd01266928a98d9 Mon Sep 17 00:00:00 2001 +From 3a0ec292f418c3f0ec2630531aeab29eea263f22 Mon Sep 17 00:00:00 2001 From: U2FsdGVkX1 Date: Sun, 29 Mar 2026 15:31:14 +0000 -Subject: [PATCH 455/467] REVYSR: riscv: dp1000: dts: use ultrarisc,dp1000-pcie +Subject: [RUYI PATCH] REVYSR: riscv: dp1000: dts: use ultrarisc,dp1000-pcie for PCIe nodes Signed-off-by: U2FsdGVkX1 diff --git a/SPECS/linux-lts/0456-ULTRARISC-hwmon-add-corepvt-driver-of-UltraRISC-DP10.patch b/SPECS/linux-lts/0460-ULTRARISC-hwmon-add-corepvt-driver-of-UltraRISC-DP10.patch similarity index 98% rename from SPECS/linux-lts/0456-ULTRARISC-hwmon-add-corepvt-driver-of-UltraRISC-DP10.patch rename to SPECS/linux-lts/0460-ULTRARISC-hwmon-add-corepvt-driver-of-UltraRISC-DP10.patch index cff95295c4..732de29759 100644 --- a/SPECS/linux-lts/0456-ULTRARISC-hwmon-add-corepvt-driver-of-UltraRISC-DP10.patch +++ b/SPECS/linux-lts/0460-ULTRARISC-hwmon-add-corepvt-driver-of-UltraRISC-DP10.patch @@ -1,8 +1,7 @@ -From 02e4c1a0f94cd44c90eee6410e5cf4484bb234a2 Mon Sep 17 00:00:00 2001 +From 3091a1fa3451d492041d5cc22aeb46f67edaf469 Mon Sep 17 00:00:00 2001 From: Jia Wang Date: Thu, 13 Feb 2025 15:50:12 +0800 -Subject: [PATCH 456/467] ULTRARISC: hwmon: add corepvt driver of UltraRISC - DP1000 +Subject: [RUYI PATCH] ULTRARISC: hwmon: add corepvt driver of UltraRISC DP1000 From: https://github.com/ultrarisc/linux-6.8.0/commit/2cb818e1179844847d3be752b978a4ee7e633bc3 diff --git a/SPECS/linux-lts/0457-RUYI-SYNC-riscv-dts-dp1000-Update-dp1000.dtsi.patch b/SPECS/linux-lts/0461-RUYI-SYNC-riscv-dts-dp1000-Update-dp1000.dtsi.patch similarity index 99% rename from SPECS/linux-lts/0457-RUYI-SYNC-riscv-dts-dp1000-Update-dp1000.dtsi.patch rename to SPECS/linux-lts/0461-RUYI-SYNC-riscv-dts-dp1000-Update-dp1000.dtsi.patch index 6ef6c25e68..0582b1d016 100644 --- a/SPECS/linux-lts/0457-RUYI-SYNC-riscv-dts-dp1000-Update-dp1000.dtsi.patch +++ b/SPECS/linux-lts/0461-RUYI-SYNC-riscv-dts-dp1000-Update-dp1000.dtsi.patch @@ -1,7 +1,7 @@ -From f1121d3ef4c87b156c91316132e05476fc6b3bf4 Mon Sep 17 00:00:00 2001 +From 817a4331068207be97f31dbe87e3512e92b549de Mon Sep 17 00:00:00 2001 From: Han Gao Date: Sun, 12 Apr 2026 02:50:03 +0800 -Subject: [PATCH 457/467] RUYI: SYNC: riscv: dts: dp1000: Update dp1000.dtsi +Subject: [RUYI PATCH] RUYI: SYNC: riscv: dts: dp1000: Update dp1000.dtsi FROM: https://github.com/ultrarisc/linux-6.8.0/commit/b4a00f2f96a9c7d8d550259292fd19568fe9beec diff --git a/SPECS/linux-lts/0458-RUYI-riscv-dts-spacemit-k3-Add-USB2.0-support.patch b/SPECS/linux-lts/0462-RUYI-riscv-dts-spacemit-k3-Add-USB2.0-support.patch similarity index 94% rename from SPECS/linux-lts/0458-RUYI-riscv-dts-spacemit-k3-Add-USB2.0-support.patch rename to SPECS/linux-lts/0462-RUYI-riscv-dts-spacemit-k3-Add-USB2.0-support.patch index 7a4dc86808..f7231a5dd3 100644 --- a/SPECS/linux-lts/0458-RUYI-riscv-dts-spacemit-k3-Add-USB2.0-support.patch +++ b/SPECS/linux-lts/0462-RUYI-riscv-dts-spacemit-k3-Add-USB2.0-support.patch @@ -1,7 +1,7 @@ -From da670b3d82267098c5ec850e11e6810ba6c0141b Mon Sep 17 00:00:00 2001 +From 360a4acac1e14c683370c4ffa8f3e85733ca0207 Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Sat, 24 Jan 2026 08:48:53 +0800 -Subject: [PATCH 458/467] RUYI: riscv: dts: spacemit: k3: Add USB2.0 support +Subject: [RUYI PATCH] RUYI: riscv: dts: spacemit: k3: Add USB2.0 support FROM: https://github.com/spacemit-com/linux/commit/6f1578894e4484f8a6724aceff099d2e90450e10 @@ -56,7 +56,7 @@ index 61cbf924830b..ac965ec83f2c 100644 + status = "okay"; +}; diff --git a/arch/riscv/boot/dts/spacemit/k3.dtsi b/arch/riscv/boot/dts/spacemit/k3.dtsi -index 5b17612fe58e..66dcabd0a815 100644 +index ed046714a7ac..1b86c872accb 100644 --- a/arch/riscv/boot/dts/spacemit/k3.dtsi +++ b/arch/riscv/boot/dts/spacemit/k3.dtsi @@ -637,6 +637,37 @@ pdma: dma-controller@d4000000 { diff --git a/SPECS/linux-lts/0459-SPACEMIT-riscv-uaccess-don-t-use-vector-if-buffer-is.patch b/SPECS/linux-lts/0463-SPACEMIT-riscv-uaccess-don-t-use-vector-if-buffer-is.patch similarity index 96% rename from SPECS/linux-lts/0459-SPACEMIT-riscv-uaccess-don-t-use-vector-if-buffer-is.patch rename to SPECS/linux-lts/0463-SPACEMIT-riscv-uaccess-don-t-use-vector-if-buffer-is.patch index fb68ebb141..7871de10b3 100644 --- a/SPECS/linux-lts/0459-SPACEMIT-riscv-uaccess-don-t-use-vector-if-buffer-is.patch +++ b/SPECS/linux-lts/0463-SPACEMIT-riscv-uaccess-don-t-use-vector-if-buffer-is.patch @@ -1,8 +1,8 @@ -From a778bb9a14663755014caabaaa245eba24561659 Mon Sep 17 00:00:00 2001 +From 8b65d5e0ae467754eccf77dddcd58ae11ea35cdd Mon Sep 17 00:00:00 2001 From: Zhang Meng Date: Mon, 5 Jan 2026 20:05:04 +0800 -Subject: [PATCH 459/467] SPACEMIT: riscv: uaccess: don't use vector if buffer - is not cacheable +Subject: [RUYI PATCH] SPACEMIT: riscv: uaccess: don't use vector if buffer is + not cacheable FROM: https://github.com/spacemit-com/linux-6.18/commit/9168f7e0c6bfdcfa3b6a64a4d45e3cd68a81618f diff --git a/SPECS/linux-lts/0460-RUYI-dt-bindings-phy-Add-Spacemit-K3-USB3-PCIe-comb-.patch b/SPECS/linux-lts/0464-RUYI-dt-bindings-phy-Add-Spacemit-K3-USB3-PCIe-comb-.patch similarity index 94% rename from SPECS/linux-lts/0460-RUYI-dt-bindings-phy-Add-Spacemit-K3-USB3-PCIe-comb-.patch rename to SPECS/linux-lts/0464-RUYI-dt-bindings-phy-Add-Spacemit-K3-USB3-PCIe-comb-.patch index 7e8d2c8137..2a03ed4e12 100644 --- a/SPECS/linux-lts/0460-RUYI-dt-bindings-phy-Add-Spacemit-K3-USB3-PCIe-comb-.patch +++ b/SPECS/linux-lts/0464-RUYI-dt-bindings-phy-Add-Spacemit-K3-USB3-PCIe-comb-.patch @@ -1,8 +1,8 @@ -From b29e3da058bfbb22e49d731df4e66c5998bd6324 Mon Sep 17 00:00:00 2001 +From 675808049c603e6935816557a160a1d7f6eb5495 Mon Sep 17 00:00:00 2001 From: Inochi Amaoto Date: Fri, 13 Feb 2026 09:01:58 +0800 -Subject: [PATCH 460/467] RUYI: dt-bindings: phy: Add Spacemit K3 USB3/PCIe - comb phy support +Subject: [RUYI PATCH] RUYI: dt-bindings: phy: Add Spacemit K3 USB3/PCIe comb + phy support The USB3/PCIe comb PHY on the K3 is a complex PHY group that can provide multiple phy for both PCIe and USB controller. diff --git a/SPECS/linux-lts/0461-RUYI-phy-spacemit-Add-USB3-PCIe-comb-PHY-driver-for-.patch b/SPECS/linux-lts/0465-RUYI-phy-spacemit-Add-USB3-PCIe-comb-PHY-driver-for-.patch similarity index 99% rename from SPECS/linux-lts/0461-RUYI-phy-spacemit-Add-USB3-PCIe-comb-PHY-driver-for-.patch rename to SPECS/linux-lts/0465-RUYI-phy-spacemit-Add-USB3-PCIe-comb-PHY-driver-for-.patch index 5fcf731d24..4c1686add5 100644 --- a/SPECS/linux-lts/0461-RUYI-phy-spacemit-Add-USB3-PCIe-comb-PHY-driver-for-.patch +++ b/SPECS/linux-lts/0465-RUYI-phy-spacemit-Add-USB3-PCIe-comb-PHY-driver-for-.patch @@ -1,8 +1,8 @@ -From d562b4d41d3ea85b9696fdce97dcf47fc485046b Mon Sep 17 00:00:00 2001 +From 4ee622c1f03b3a5e9d6df7f54f612202f9462d8c Mon Sep 17 00:00:00 2001 From: Inochi Amaoto Date: Fri, 13 Feb 2026 09:09:58 +0800 -Subject: [PATCH 461/467] RUYI: phy: spacemit: Add USB3/PCIe comb PHY driver - for Spacemit K3 +Subject: [RUYI PATCH] RUYI: phy: spacemit: Add USB3/PCIe comb PHY driver for + Spacemit K3 The comb PHY on K3 requires to configure a syscon device for the right mux configuration. And it requires calibration before any diff --git a/SPECS/linux-lts/0462-RUYI-riscv-dts-spacemit-k3-add-USB-controller-and-US.patch b/SPECS/linux-lts/0466-RUYI-riscv-dts-spacemit-k3-add-USB-controller-and-US.patch similarity index 93% rename from SPECS/linux-lts/0462-RUYI-riscv-dts-spacemit-k3-add-USB-controller-and-US.patch rename to SPECS/linux-lts/0466-RUYI-riscv-dts-spacemit-k3-add-USB-controller-and-US.patch index bf914252d4..ce8ce857a9 100644 --- a/SPECS/linux-lts/0462-RUYI-riscv-dts-spacemit-k3-add-USB-controller-and-US.patch +++ b/SPECS/linux-lts/0466-RUYI-riscv-dts-spacemit-k3-add-USB-controller-and-US.patch @@ -1,8 +1,8 @@ -From 115adac703e8d0d67045f2ed4fe1a495ab4b5448 Mon Sep 17 00:00:00 2001 +From 448b7e9c38ae27c10f2aa343886ce7c2b8243f8d Mon Sep 17 00:00:00 2001 From: Inochi Amaoto Date: Fri, 27 Feb 2026 09:46:06 +0800 -Subject: [PATCH 462/467] RUYI: riscv: dts: spacemit: k3: add USB controller - and USB phy support +Subject: [RUYI PATCH] RUYI: riscv: dts: spacemit: k3: add USB controller and + USB phy support Add all USB device node to the Spacemit K3. @@ -42,7 +42,7 @@ index ac965ec83f2c..acfbb5029c15 100644 + status = "okay"; +}; diff --git a/arch/riscv/boot/dts/spacemit/k3.dtsi b/arch/riscv/boot/dts/spacemit/k3.dtsi -index 66dcabd0a815..130828ca3b43 100644 +index 1b86c872accb..e73e6838f6b0 100644 --- a/arch/riscv/boot/dts/spacemit/k3.dtsi +++ b/arch/riscv/boot/dts/spacemit/k3.dtsi @@ -7,6 +7,7 @@ diff --git a/SPECS/linux-lts/0463-RUYI-riscv-dts-spacemit-k3-Add-PCIe-device-node.patch b/SPECS/linux-lts/0467-RUYI-riscv-dts-spacemit-k3-Add-PCIe-device-node.patch similarity index 97% rename from SPECS/linux-lts/0463-RUYI-riscv-dts-spacemit-k3-Add-PCIe-device-node.patch rename to SPECS/linux-lts/0467-RUYI-riscv-dts-spacemit-k3-Add-PCIe-device-node.patch index e319ecab6f..76aa9565cc 100644 --- a/SPECS/linux-lts/0463-RUYI-riscv-dts-spacemit-k3-Add-PCIe-device-node.patch +++ b/SPECS/linux-lts/0467-RUYI-riscv-dts-spacemit-k3-Add-PCIe-device-node.patch @@ -1,7 +1,7 @@ -From 14ecb0eaa2ab52030c7f36a293df59f07bdc1bb0 Mon Sep 17 00:00:00 2001 +From 3e1379ca2b2ca099c8a0a6900f9be381e48213c6 Mon Sep 17 00:00:00 2001 From: Inochi Amaoto Date: Tue, 24 Mar 2026 11:06:24 +0800 -Subject: [PATCH 463/467] RUYI: riscv: dts: spacemit: k3: Add PCIe device node +Subject: [RUYI PATCH] RUYI: riscv: dts: spacemit: k3: Add PCIe device node Add all PCIe device node for Spacemit K3. @@ -96,7 +96,7 @@ index 846d5e8cc783..5a817610101b 100644 + }; }; diff --git a/arch/riscv/boot/dts/spacemit/k3.dtsi b/arch/riscv/boot/dts/spacemit/k3.dtsi -index 130828ca3b43..6adfbd505e9e 100644 +index e73e6838f6b0..9552089c7c73 100644 --- a/arch/riscv/boot/dts/spacemit/k3.dtsi +++ b/arch/riscv/boot/dts/spacemit/k3.dtsi @@ -638,6 +638,156 @@ pdma: dma-controller@d4000000 { diff --git a/SPECS/linux-lts/0464-RUYI-PCI-add-SpacemiT-vendor-id-and-its-K3-device-id.patch b/SPECS/linux-lts/0468-RUYI-PCI-add-SpacemiT-vendor-id-and-its-K3-device-id.patch similarity index 84% rename from SPECS/linux-lts/0464-RUYI-PCI-add-SpacemiT-vendor-id-and-its-K3-device-id.patch rename to SPECS/linux-lts/0468-RUYI-PCI-add-SpacemiT-vendor-id-and-its-K3-device-id.patch index cd7020b4ac..9a9326a3e9 100644 --- a/SPECS/linux-lts/0464-RUYI-PCI-add-SpacemiT-vendor-id-and-its-K3-device-id.patch +++ b/SPECS/linux-lts/0468-RUYI-PCI-add-SpacemiT-vendor-id-and-its-K3-device-id.patch @@ -1,8 +1,8 @@ -From a36a6a20bb6a9f93f79425be30e4469453576929 Mon Sep 17 00:00:00 2001 +From 88fa19733f8dc09f9c51bf41ded9c4d68c722b88 Mon Sep 17 00:00:00 2001 From: Icenowy Zheng Date: Wed, 20 May 2026 23:28:15 +0800 -Subject: [PATCH 464/467] RUYI: PCI: add SpacemiT vendor id and its K3 device - id to pci_ids +Subject: [RUYI PATCH] RUYI: PCI: add SpacemiT vendor id and its K3 device id + to pci_ids The SpacemiT K3 chip's root complex needs to be listed in the allowlist of rtw89 driver to allow 36-bit DMA. diff --git a/SPECS/linux-lts/0465-RUYI-wifi-rtw89-pci-add-SpacemiT-K3-to-36-bit-DMA-al.patch b/SPECS/linux-lts/0469-RUYI-wifi-rtw89-pci-add-SpacemiT-K3-to-36-bit-DMA-al.patch similarity index 87% rename from SPECS/linux-lts/0465-RUYI-wifi-rtw89-pci-add-SpacemiT-K3-to-36-bit-DMA-al.patch rename to SPECS/linux-lts/0469-RUYI-wifi-rtw89-pci-add-SpacemiT-K3-to-36-bit-DMA-al.patch index 00f7e5801c..e0b9eb8766 100644 --- a/SPECS/linux-lts/0465-RUYI-wifi-rtw89-pci-add-SpacemiT-K3-to-36-bit-DMA-al.patch +++ b/SPECS/linux-lts/0469-RUYI-wifi-rtw89-pci-add-SpacemiT-K3-to-36-bit-DMA-al.patch @@ -1,7 +1,7 @@ -From df6fd4d5556ae9ac72a7fe88d7ac07abeaaaa7d5 Mon Sep 17 00:00:00 2001 +From e57bb71611315a5153d479c9e82b806ab76de1fb Mon Sep 17 00:00:00 2001 From: Icenowy Zheng Date: Wed, 20 May 2026 23:29:46 +0800 -Subject: [PATCH 465/467] RUYI: wifi: rtw89: pci: add SpacemiT K3 to 36-bit DMA +Subject: [RUYI PATCH] RUYI: wifi: rtw89: pci: add SpacemiT K3 to 36-bit DMA allowlist The SpacemiT K3 platform has no system memory in the 32-bit address diff --git a/SPECS/linux-lts/0466-RUYI-drm-amdgpu-disable-dynamic-PCIe-speed-switch-on.patch b/SPECS/linux-lts/0470-RUYI-drm-amdgpu-disable-dynamic-PCIe-speed-switch-on.patch similarity index 85% rename from SPECS/linux-lts/0466-RUYI-drm-amdgpu-disable-dynamic-PCIe-speed-switch-on.patch rename to SPECS/linux-lts/0470-RUYI-drm-amdgpu-disable-dynamic-PCIe-speed-switch-on.patch index e3e07666c1..00daab299c 100644 --- a/SPECS/linux-lts/0466-RUYI-drm-amdgpu-disable-dynamic-PCIe-speed-switch-on.patch +++ b/SPECS/linux-lts/0470-RUYI-drm-amdgpu-disable-dynamic-PCIe-speed-switch-on.patch @@ -1,8 +1,8 @@ -From 1cae45d935c7ce67a69b1440b362c73b5ce1446c Mon Sep 17 00:00:00 2001 +From 50eb8f06ed16e79d0840e5c58220ae05cac7dbb1 Mon Sep 17 00:00:00 2001 From: Icenowy Zheng Date: Tue, 19 May 2026 19:57:52 +0800 -Subject: [PATCH 466/467] RUYI: drm/amdgpu: disable dynamic PCIe speed switch - on SpacemiT K3 +Subject: [RUYI PATCH] RUYI: drm/amdgpu: disable dynamic PCIe speed switch on + SpacemiT K3 The dynamic speed switch functionality seems to be broken on SpacemiT K3, and leads to frequent GPU crashes at least with Polaris GPUs. @@ -16,7 +16,7 @@ Signed-off-by: Han Gao 1 file changed, 19 insertions(+) diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c -index c22aea46efcd..c69fd0b66dd4 100644 +index c22aea46efcd..b54f7cdd0ce8 100644 --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c @@ -1867,6 +1867,14 @@ bool amdgpu_device_seamless_boot_supported(struct amdgpu_device *adev) @@ -39,7 +39,7 @@ index c22aea46efcd..c69fd0b66dd4 100644 return false; #endif + /* skip upstream/downstream switches internal to dGPU */ -+ while (parent->vendor == PCI_VENDOR_ID_ATI) { ++ while (parent && parent->vendor == PCI_VENDOR_ID_ATI) { + parent = pci_upstream_bridge(parent); + } + diff --git a/SPECS/linux-lts/0467-RVCK-driver-clk-k3-keep-some-system-based-clock-alwa.patch b/SPECS/linux-lts/0471-RVCK-driver-clk-k3-keep-some-system-based-clock-alwa.patch similarity index 92% rename from SPECS/linux-lts/0467-RVCK-driver-clk-k3-keep-some-system-based-clock-alwa.patch rename to SPECS/linux-lts/0471-RVCK-driver-clk-k3-keep-some-system-based-clock-alwa.patch index 654f9a8c87..daa05c9c8d 100644 --- a/SPECS/linux-lts/0467-RVCK-driver-clk-k3-keep-some-system-based-clock-alwa.patch +++ b/SPECS/linux-lts/0471-RVCK-driver-clk-k3-keep-some-system-based-clock-alwa.patch @@ -1,7 +1,7 @@ -From d56459ef2dadb714f51cfba37b08e7cec2640ea1 Mon Sep 17 00:00:00 2001 +From c0f35dd9ad2ce894ee2fef94f5ac86216d03ef46 Mon Sep 17 00:00:00 2001 From: Zhang Meng Date: Wed, 4 Feb 2026 08:54:40 +0800 -Subject: [PATCH 467/467] RVCK: driver: clk: k3: keep some system based clock +Subject: [RUYI PATCH] RVCK: driver: clk: k3: keep some system based clock always on FROM: https://github.com/RVCK-Project/rvck/pull/213 diff --git a/SPECS/linux-lts/0001-RUYI-mmc-sdhci-of-dwcmshc-Add-support-for-SG2042-FPG.patch b/SPECS/linux-lts/0472-RUYI-mmc-sdhci-of-dwcmshc-Add-support-for-SG2042-FPG.patch similarity index 65% rename from SPECS/linux-lts/0001-RUYI-mmc-sdhci-of-dwcmshc-Add-support-for-SG2042-FPG.patch rename to SPECS/linux-lts/0472-RUYI-mmc-sdhci-of-dwcmshc-Add-support-for-SG2042-FPG.patch index 5a3619f868..5c6f644043 100644 --- a/SPECS/linux-lts/0001-RUYI-mmc-sdhci-of-dwcmshc-Add-support-for-SG2042-FPG.patch +++ b/SPECS/linux-lts/0472-RUYI-mmc-sdhci-of-dwcmshc-Add-support-for-SG2042-FPG.patch @@ -1,23 +1,23 @@ -From fc295beff7031f45a9ab9984a426817f27ed21fe Mon Sep 17 00:00:00 2001 +From af2e3f98ce75fe961163f67f323465d95ce082d9 Mon Sep 17 00:00:00 2001 From: Vivian Wang Date: Thu, 28 May 2026 14:18:23 +0800 -Subject: [PATCH] RUYI: mmc: sdhci-of-dwcmshc: Add support for SG2042 FPGA +Subject: [RUYI PATCH] RUYI: mmc: sdhci-of-dwcmshc: Add support for SG2042 FPGA variant Add support for a testing variant of the SG2042 SDHCI controller without PHY reset and without the "timer" clock. -[ Vivian: Adjust context for 6.18 ] Signed-off-by: Vivian Wang +Signed-off-by: Han Gao --- drivers/mmc/host/sdhci-of-dwcmshc.c | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/drivers/mmc/host/sdhci-of-dwcmshc.c b/drivers/mmc/host/sdhci-of-dwcmshc.c -index 5b7ffc359414..9f3482b2a311 100644 +index 90aa146a1be3..292940d9c45b 100644 --- a/drivers/mmc/host/sdhci-of-dwcmshc.c +++ b/drivers/mmc/host/sdhci-of-dwcmshc.c -@@ -1194,6 +1194,16 @@ static const struct sdhci_ops sdhci_dwcmshc_sg2042_ops = { +@@ -1664,6 +1664,16 @@ static const struct sdhci_ops sdhci_dwcmshc_sg2042_ops = { .platform_execute_tuning = th1520_execute_tuning, }; @@ -31,10 +31,10 @@ index 5b7ffc359414..9f3482b2a311 100644 + .platform_execute_tuning = th1520_execute_tuning, +}; + - static const struct dwcmshc_pltfm_data sdhci_dwcmshc_pdata = { - .pdata = { - .ops = &sdhci_dwcmshc_ops, -@@ -1263,6 +1273,14 @@ static const struct dwcmshc_pltfm_data sdhci_dwcmshc_sg2042_pdata = { + static const struct sdhci_ops sdhci_dwcmshc_eic7700_ops = { + .set_clock = sdhci_eic7700_set_clock, + .get_max_clock = sdhci_pltfm_clk_get_max_clock, +@@ -1746,6 +1756,14 @@ static const struct dwcmshc_pltfm_data sdhci_dwcmshc_sg2042_pdata = { .init = sg2042_init, }; @@ -46,10 +46,10 @@ index 5b7ffc359414..9f3482b2a311 100644 + }, +}; + - static const struct cqhci_host_ops dwcmshc_cqhci_ops = { - .enable = dwcmshc_sdhci_cqe_enable, - .disable = sdhci_cqe_disable, -@@ -1363,6 +1381,10 @@ static const struct of_device_id sdhci_dwcmshc_dt_ids[] = { + static const struct dwcmshc_pltfm_data sdhci_dwcmshc_eic7700_pdata = { + .pdata = { + .ops = &sdhci_dwcmshc_eic7700_ops, +@@ -1857,6 +1875,10 @@ static const struct of_device_id sdhci_dwcmshc_dt_ids[] = { .compatible = "sophgo,sg2042-dwcmshc", .data = &sdhci_dwcmshc_sg2042_pdata, }, @@ -57,9 +57,9 @@ index 5b7ffc359414..9f3482b2a311 100644 + .compatible = "sophgo,sg2042-fpga-dwcmshc", + .data = &sdhci_dwcmshc_sg2042_fpga_pdata, + }, - {}, - }; - MODULE_DEVICE_TABLE(of, sdhci_dwcmshc_dt_ids); + { + .compatible = "eswin,eic7700-dwcmshc", + .data = &sdhci_dwcmshc_eic7700_pdata, -- -2.54.0 +2.53.0 diff --git a/SPECS/linux-lts/linux-lts.spec b/SPECS/linux-lts/linux-lts.spec index 2342f9c6b9..0f4104316e 100644 --- a/SPECS/linux-lts/linux-lts.spec +++ b/SPECS/linux-lts/linux-lts.spec @@ -23,14 +23,15 @@ %global kernel_make_flags LD=ld.bfd KBUILD_BUILD_VERSION=%{release} Name: linux-lts -Version: 6.18.33 +Version: 6.18.34 Release: %autorelease Summary: The Linux lts Kernel License: GPL-2.0-only URL: https://www.kernel.org/ -#!RemoteAsset: sha256:6f16ff302599f6fe34742890322cf0775703105fbd8767449682fca6af0fb782 +#!RemoteAsset: sha256:640c4732fb42842166db97e032c1fe7e5ff72c85a8982c75b40f74be3555d760 Source0: https://cdn.kernel.org/pub/linux/kernel/v6.x/linux-%{version}.tar.xz Source1: config.%{_arch} +Source2: series BuildRequires: gcc BuildRequires: bison @@ -72,474 +73,7 @@ Requires(post): kernel-install Requires(postun): kernel-install %patchlist -0001-UPSTREAM-drm-ttm-add-pgprot-handling-for-RISC-V.patch -0002-UPSTREAM-riscv-sophgo-dts-add-PCIe-controllers-for-S.patch -0003-UPSTREAM-riscv-sophgo-dts-enable-PCIe-for-PioneerBox.patch -0004-UPSTREAM-riscv-sophgo-dts-enable-PCIe-for-SG2042_EVB.patch -0005-UPSTREAM-riscv-sophgo-dts-enable-PCIe-for-SG2042_EVB.patch -0006-UPSTREAM-riscv-dts-sophgo-Add-SPI-NOR-node-for-SG204.patch -0007-UPSTREAM-riscv-dts-sophgo-Enable-SPI-NOR-node-for-Pi.patch -0008-UPSTREAM-riscv-dts-sophgo-Enable-SPI-NOR-node-for-SG.patch -0009-UPSTREAM-riscv-dts-sophgo-Enable-SPI-NOR-node-for-SG.patch -0010-UPSTREAM-dt-bindings-net-sophgo-sg2044-dwmac-add-phy.patch -0011-UPSTREAM-perf-vendor-events-riscv-add-T-HEAD-C920V2-.patch -0012-UPSTREAM-rust-macros-Add-support-for-imports_ns-to-m.patch -0013-UPSTREAM-pwm-Export-pwmchip_release-for-external-use.patch -0014-UPSTREAM-rust-pwm-Add-Kconfig-and-basic-data-structu.patch -0015-UPSTREAM-rust-pwm-Add-complete-abstraction-layer.patch -0016-UPSTREAM-rust-pwm-Add-module_pwm_platform_driver-mac.patch -0017-UPSTREAM-rust-pwm-Drop-wrapping-of-PWM-polarity-and-.patch -0018-UPSTREAM-rust-pwm-Fix-broken-intra-doc-link.patch -0019-UPSTREAM-pwm-Add-Rust-driver-for-T-HEAD-TH1520-SoC.patch -0020-UPSTREAM-dt-bindings-pwm-thead-Add-T-HEAD-TH1520-PWM.patch -0021-UPSTREAM-pwm-Fix-Rust-formatting.patch -0022-UPSTREAM-pwm-th1520-Fix-clippy-warning-for-redundant.patch -0023-UPSTREAM-pwm-th1520-Use-module_pwm_platform_driver-m.patch -0024-UPSTREAM-pwm-th1520-Fix-missing-Kconfig-dependencies.patch -0025-UPSTREAM-riscv-dts-thead-add-xtheadvector-to-the-th1.patch -0026-UPSTREAM-riscv-dts-thead-add-ziccrse-for-th1520.patch -0027-UPSTREAM-riscv-dts-thead-add-zfh-for-th1520.patch -0028-UPSTREAM-riscv-dts-thead-Add-PWM-controller-node.patch -0029-UPSTREAM-riscv-dts-thead-Add-PWM-fan-and-thermal-con.patch -0030-UPSTREAM-dt-bindings-vendor-prefixes-Add-UltraRISC.patch -0031-UPSTREAM-dt-bindings-interrupt-controller-Add-UltraR.patch -0032-UPSTREAM-irqchip-sifive-plic-Cache-the-interrupt-ena.patch -0033-UPSTREAM-irqchip-sifive-plic-Add-support-for-UltraRI.patch -0034-UPSTREAM-riscv-cpu_ops_sbi-smp_processor_id-returns-.patch -0035-UPSTREAM-spi-dt-bindings-fsl-qspi-support-SpacemiT-K.patch -0036-UPSTREAM-spi-dt-bindings-fsl-qspi-add-optional-reset.patch -0037-UPSTREAM-spi-fsl-qspi-add-optional-reset-support.patch -0038-UPSTREAM-spi-fsl-qspi-switch-predicates-to-bool.patch -0039-UPSTREAM-spi-fsl-qspi-add-a-clock-disable-quirk.patch -0040-UPSTREAM-spi-fsl-qspi-introduce-sfa_size-devtype-dat.patch -0041-UPSTREAM-spi-fsl-qspi-support-the-SpacemiT-K1-SoC.patch -0042-UPSTREAM-dt-bindings-pci-spacemit-Introduce-PCIe-hos.patch -0043-UPSTREAM-PCI-spacemit-Add-SpacemiT-PCIe-host-driver.patch -0044-UPSTREAM-ASoC-dt-bindings-Add-bindings-for-SpacemiT-.patch -0045-UPSTREAM-ASoC-spacemit-add-i2s-support-for-K1-SoC.patch -0046-UPSTREAM-riscv-dts-spacemit-add-UART-pinctrl-combina.patch -0047-UPSTREAM-riscv-dts-spacemit-enable-the-i2c8-adapter.patch -0048-UPSTREAM-riscv-dts-spacemit-define-fixed-regulators.patch -0049-UPSTREAM-riscv-dts-spacemit-define-regulator-constra.patch -0050-UPSTREAM-riscv-dts-spacemit-enable-the-i2c2-adapter-.patch -0051-UPSTREAM-riscv-dts-spacemit-add-24c02-eeprom-on-BPI-.patch -0052-UPSTREAM-riscv-dts-spacemit-add-i2c-aliases-on-BPI-F.patch -0053-UPSTREAM-riscv-dts-spacemit-add-Ethernet-and-PDMA-to.patch -0054-UPSTREAM-riscv-dts-spacemit-add-MusePi-Pro-board-dev.patch -0055-UPSTREAM-riscv-dts-spacemit-enable-K1-SoC-QSPI-on-BP.patch -0056-UPSTREAM-riscv-dts-spacemit-Add-OrangePi-R2S-board-d.patch -0057-UPSTREAM-riscv-dts-spacemit-reorder-i2c2-node.patch -0058-UPSTREAM-riscv-dts-spacemit-define-all-missing-I2C-c.patch -0059-UPSTREAM-rtc-spacemit-MFD_SPACEMIT_P1-as-dependencie.patch -0060-UPSTREAM-mfd-simple-mfd-i2c-Remove-select-I2C_K1-fro.patch -0061-UPSTREAM-driver-reset-spacemit-p1-add-driver-for-pow.patch -0062-UPSTREAM-riscv-remove-irqflags.h-inclusion-in-asm-bi.patch -0063-UPSTREAM-riscv-atomic.h-use-RISCV_FULL_BARRIER-in-_a.patch -0064-UPSTREAM-drm-dumb-buffers-Sanitize-output-on-errors.patch -0065-UPSTREAM-drm-dumb-buffers-Provide-helper-to-set-pitc.patch -0066-UPSTREAM-drm-vblank-Add-vblank-timer.patch -0067-UPSTREAM-drm-vblank-Add-CRTC-helpers-for-simple-use-.patch -0068-UPSTREAM-drm-vkms-Convert-to-DRM-s-vblank-timer.patch -0069-UPSTREAM-drm-hypervdrm-Use-vblank-timer.patch -0070-UPSTREAM-PCI-MSI-Convert-the-boolean-no_64bit_msi-fl.patch -0071-UPSTREAM-PCI-MSI-Check-the-device-specific-address-m.patch -0072-UPSTREAM-drm-radeon-Make-MSI-address-limit-based-on-.patch -0073-UPSTREAM-ALSA-hda-intel-Make-MSI-address-limit-based.patch -0074-UPSTREAM-riscv-dts-sophgo-enable-hardware-clock-RTC-.patch -0075-UPSTREAM-riscv-dts-sophgo-Move-PLIC-and-CLINT-node-i.patch -0076-UPSTREAM-riscv-dts-sophgo-fix-the-node-order-of-SG20.patch -0077-UPSTREAM-riscv-dts-spacemit-Enable-i2c8-adapter-for-.patch -0078-UPSTREAM-riscv-dts-spacemit-Define-fixed-regulators-.patch -0079-UPSTREAM-riscv-dts-spacemit-Define-the-P1-PMIC-regul.patch -0080-UPSTREAM-dt-bindings-phy-spacemit-Add-SpacemiT-PCIe-.patch -0081-UPSTREAM-dt-bindings-phy-spacemit-Introduce-PCIe-PHY.patch -0082-UPSTREAM-phy-spacemit-Introduce-PCIe-combo-PHY.patch -0083-UPSTREAM-riscv-dts-spacemit-Add-a-PCIe-regulator.patch -0084-UPSTREAM-riscv-dts-spacemit-PCIe-and-PHY-related-upd.patch -0085-UPSTREAM-dt-bindings-i2c-spacemit-add-optional-reset.patch -0086-UPSTREAM-i2c-k1-add-reset-support.patch -0087-UPSTREAM-riscv-dts-spacemit-add-reset-property.patch -0088-UPSTREAM-dt-bindings-phy-spacemit-add-K1-USB2-PHY.patch -0089-UPSTREAM-phy-spacemit-support-K1-USB2.0-PHY-controll.patch -0090-UPSTREAM-riscv-dts-spacemit-Add-USB2-PHY-node-for-K1.patch -0091-UPSTREAM-riscv-dts-spacemit-Add-DWC3-USB-3.0-control.patch -0092-UPSTREAM-riscv-dts-spacemit-Enable-USB3.0-on-BananaP.patch -0093-UPSTREAM-dt-bindings-pinctrl-spacemit-convert-drive-.patch -0094-UPSTREAM-dt-bindings-pinctrl-spacemit-add-K3-SoC-sup.patch -0095-UPSTREAM-pinctrl-spacemit-k3-add-initial-pin-support.patch -0096-UPSTREAM-pinctrl-spacemit-k3-adjust-drive-strength-a.patch -0097-UPSTREAM-dt-bindings-pinctrl-spacemit-add-syscon-pro.patch -0098-UPSTREAM-pinctrl-spacemit-support-I-O-power-domain-c.patch -0099-UPSTREAM-riscv-dts-spacemit-pinctrl-update-register-.patch -0100-UPSTREAM-dt-bindings-riscv-update-ratified-version-o.patch -0101-UPSTREAM-dt-bindings-riscv-Add-B-ISA-extension-descr.patch -0102-UPSTREAM-dt-bindings-riscv-Add-descriptions-for-Za64.patch -0103-UPSTREAM-dt-bindings-riscv-Add-Ssccptr-Sscounterenw-.patch -0104-UPSTREAM-dt-bindings-riscv-Add-Sha-and-its-comprised.patch -0105-UPSTREAM-riscv-dts-sophgo-sg2044-Add-b-ISA-extension.patch -0106-UPSTREAM-riscv-dts-spacemit-k1-Add-b-ISA-extension.patch -0107-UPSTREAM-dt-bindings-riscv-add-SpacemiT-X100-CPU-com.patch -0108-UPSTREAM-dt-bindings-timer-add-SpacemiT-K3-CLINT.patch -0109-UPSTREAM-dt-bindings-interrupt-controller-add-Spacem.patch -0110-UPSTREAM-dt-bindings-interrupt-controller-add-Spacem.patch -0111-UPSTREAM-dt-bindings-riscv-spacemit-add-K3-and-Pico-.patch -0112-UPSTREAM-riscv-dts-spacemit-add-initial-support-for-.patch -0113-UPSTREAM-riscv-dts-spacemit-add-K3-Pico-ITX-board-su.patch -0114-UPSTREAM-clk-spacemit-Hide-common-clock-driver-from-.patch -0115-UPSTREAM-clk-spacemit-prepare-common-ccu-header.patch -0116-UPSTREAM-clk-spacemit-extract-common-ccu-functions.patch -0117-UPSTREAM-clk-spacemit-add-platform-SoC-prefix-to-res.patch -0118-UPSTREAM-reset-spacemit-fix-auxiliary-device-id.patch -0119-UPSTREAM-dt-bindings-soc-spacemit-k3-add-clock-suppo.patch -0120-UPSTREAM-clk-spacemit-ccu_mix-add-inverted-enable-ga.patch -0121-UPSTREAM-clk-spacemit-ccu_pll-add-plla-type-clock.patch -0122-UPSTREAM-clk-spacemit-k3-extract-common-header.patch -0123-UPSTREAM-clk-spacemit-k3-add-the-clock-tree.patch -0124-UPSTREAM-dt-bindings-soc-spacemit-Add-K3-reset-suppo.patch -0125-UPSTREAM-reset-Create-subdirectory-for-SpacemiT-driv.patch -0126-UPSTREAM-reset-spacemit-Extract-common-K1-reset-code.patch -0127-UPSTREAM-reset-spacemit-Add-SpacemiT-K3-reset-driver.patch -0128-UPSTREAM-dt-bindings-gpio-spacemit-add-compatible-na.patch -0129-UPSTREAM-gpio-spacemit-Add-GPIO-support-for-K3-SoC.patch -0130-UPSTREAM-riscv-dts-spacemit-Disable-ETH-PHY-sleep-mo.patch -0131-UPSTREAM-dt-bindings-clock-thead-th1520-clk-ap-Add-I.patch -0132-UPSTREAM-clk-thead-th1520-ap-Add-C910-bus-clock.patch -0133-UPSTREAM-clk-thead-th1520-ap-Support-setting-PLL-rat.patch -0134-UPSTREAM-clk-thead-th1520-ap-Add-macro-to-define-mul.patch -0135-UPSTREAM-clk-thead-th1520-ap-Support-CPU-frequency-s.patch -0136-UPSTREAM-net-spacemit-display-phy-driver-information.patch -0137-UPSTREAM-gpio-spacemit-k1-Use-PDR-for-pin-direction-.patch -0138-UPSTREAM-phy-Kconfig-spacemit-add-COMMON_CLK-depende.patch -0139-UPSTREAM-mfd-Kconfig-Default-MFD_SPACEMIT_P1-to-m-if.patch -0140-UPSTREAM-riscv-dts-spacemit-sdhci-add-reset-support.patch -0141-UPSTREAM-irqchip-sifive-plic-Fix-call-to-__plic_togg.patch -0142-UPSTREAM-dt-bindings-interrupt-controller-sifive-pli.patch -0143-UPSTREAM-irqchip-sifive-plic-Handle-number-of-hardwa.patch -0144-UPSTREAM-PCI-dwc-Use-multiple-iATU-windows-for-mappi.patch -0145-UPSTREAM-pinctrl-th1520-Fix-typo.patch -0146-UPSTREAM-PCI-cadence-Add-module-support-for-platform.patch -0147-UPSTREAM-PCI-cadence-Split-PCIe-controller-header-fi.patch -0148-UPSTREAM-PCI-cadence-Move-PCIe-RP-common-functions-t.patch -0149-UPSTREAM-PCI-cadence-Add-support-for-High-Perf-Archi.patch -0150-UPSTREAM-net-stmmac-imx-use-phylink-s-interface-mode.patch -0151-UPSTREAM-net-stmmac-s32-move-PHY_INTF_SEL_x-definiti.patch -0152-UPSTREAM-net-stmmac-add-phy_intf_sel-and-ACTPHYIF-de.patch -0153-UPSTREAM-net-stmmac-add-stmmac_get_phy_intf_sel.patch -0154-UPSTREAM-net-stmmac-add-support-for-configuring-the-.patch -0155-UPSTREAM-net-stmmac-imx-convert-to-PHY_INTF_SEL_xxx.patch -0156-UPSTREAM-net-stmmac-imx-use-FIELD_PREP-FIELD_GET-for.patch -0157-UPSTREAM-net-stmmac-imx-use-stmmac_get_phy_intf_sel.patch -0158-UPSTREAM-net-stmmac-imx-simplify-set_intf_mode-imple.patch -0159-UPSTREAM-net-stmmac-imx-cleanup-arguments-for-set_in.patch -0160-UPSTREAM-net-stmmac-imx-use-set_phy_intf_sel.patch -0161-UPSTREAM-powerpc-pci-Initialize-msi_addr_mask-for-OF.patch -0162-UPSTREAM-sparc-PCI-Initialize-msi_addr_mask-for-OF-c.patch -0163-UPSTREAM-syscore-Pass-context-data-to-callbacks.patch -0164-UPSTREAM-irqchip-riscv-aplic-Preserve-APLIC-states-a.patch -0165-UPSTREAM-irqchip-riscv-aplic-Do-not-clear-ACPI-depen.patch -0166-UPSTREAM-irqchip-riscv-aplic-Register-syscore-operat.patch -0167-UPSTREAM-dt-bindings-usb-add-missed-compatible-strin.patch -0168-UPSTREAM-usb-dwc3-Add-software-managed-properties-fo.patch -0169-UPSTREAM-usb-dwc3-dwc3-generic-plat-Add-layerscape-d.patch -0170-UPSTREAM-dt-bindings-usb-Add-ESWIN-EIC7700-USB-contr.patch -0171-UPSTREAM-usb-dwc3-eic7700-Add-EIC7700-USB-driver.patch -0172-UPSTREAM-phy-k1-usb-add-disconnect-function-support.patch -0173-UPSTREAM-PCI-Add-ASPEED-vendor-ID-to-pci_ids.h.patch -0174-UPSTREAM-PCI-Add-PCI_BRIDGE_NO_ALIAS-quirk-for-ASPEE.patch -0175-UPSTREAM-riscv-patch-Avoid-early-phys_to_page.patch -0176-UPSTREAM-PCI-dwc-Fail-dw_pcie_host_init-if-dw_pcie_w.patch -0177-UPSTREAM-reset-spacemit-k3-Decouple-composite-reset-.patch -0178-UPSTREAM-rust-clk-implement-Send-and-Sync.patch -0179-UPSTREAM-tyr-remove-impl-Send-Sync-for-TyrData.patch -0180-UPSTREAM-pwm-th1520-fix-CLIPPY-1-warning.patch -0181-UPSTREAM-pwm-th1520-remove-impl-Send-Sync-for-Th1520.patch -0182-UPSTREAM-net-spacemit-Remove-unused-buff_addr-fields.patch -0183-UPSTREAM-dt-bindings-net-Add-support-for-Spacemit-K3.patch -0184-UPSTREAM-net-stmmac-platform-Add-snps-dwmac-5.40a-IP.patch -0185-UPSTREAM-net-stmmac-Add-glue-layer-for-Spacemit-K3-S.patch -0186-UPSTREAM-drm-imagination-Improve-handling-of-unknown.patch -0187-UPSTREAM-drm-imagination-Mark-FWCCB_CMD_UPDATE_STATS.patch -0188-UPSTREAM-drm-imagination-Improve-firmware-power-off-.patch -0189-UPSTREAM-drm-imagination-Skip-2nd-thread-DM-associat.patch -0190-UPSTREAM-drm-imagination-Add-missing-rogue-context-r.patch -0191-UPSTREAM-drm-imagination-Implement-handling-of-conte.patch -0192-UPSTREAM-dt-bindings-vendor-prefixes-add-verisilicon.patch -0193-UPSTREAM-dt-bindings-display-add-verisilicon-dc.patch -0194-UPSTREAM-drm-verisilicon-add-a-driver-for-Verisilico.patch -0195-UPSTREAM-dt-bindings-display-bridge-add-binding-for-.patch -0196-UPSTREAM-drm-bridge-add-a-driver-for-T-Head-TH1520-H.patch -0197-UPSTREAM-dt-bindings-mfd-spacemit-p1-Add-individual-.patch -0198-UPSTREAM-regulator-spacemit-p1-Update-supply-names.patch -0199-UPSTREAM-mmc-sdhci-of-k1-add-reset-support.patch -0200-UPSTREAM-dt-bindings-mmc-spacemit-sdhci-add-support-.patch -0201-UPSTREAM-mmc-sdhci-of-k1-spacemit-Add-support-for-K3.patch -0202-UPSTREAM-PCI-cadence-Add-flags-for-disabling-ASPM-ca.patch -0203-UPSTREAM-PCI-sg2042-Avoid-L0s-and-L1-on-Sophgo-2042-.patch -0204-UPSTREAM-dt-bindings-hwmon-moortec-mr75203-adapt-mul.patch -0205-UPSTREAM-drm-imagination-Disable-interrupts-before-s.patch -0206-UPSTREAM-riscv-dts-thead-add-DPU-and-HDMI-device-tre.patch -0207-UPSTREAM-riscv-dts-thead-lichee-pi-4a-enable-HDMI.patch -0208-UPSTREAM-riscv-dts-thead-th1520-add-coefficients-to-.patch -0209-UPSTREAM-riscv-dts-thead-beaglev-ahead-enable-HDMI-o.patch -0210-UPSTREAM-i2c-spacemit-move-i2c_xfer_msg.patch -0211-UPSTREAM-i2c-spacemit-introduce-pio-for-k1.patch -0212-UPSTREAM-pinctrl-spacemit-return-ENOTSUPP-for-unsupp.patch -0213-UPSTREAM-gpio-spacemit-k1-Add-set_config-callback-su.patch -0214-UPSTREAM-riscv-dts-spacemit-pcie-fix-missing-power-r.patch -0215-UPSTREAM-riscv-dts-spacemit-Update-PMIC-supply-prope.patch -0216-UPSTREAM-riscv-dts-spacemit-adapt-regulator-node-nam.patch -0217-UPSTREAM-riscv-dts-spacemit-Add-linux-pci-domain-to-.patch -0218-UPSTREAM-dt-bindings-serial-8250-spacemit-fix-clock-.patch -0219-UPSTREAM-riscv-dts-spacemit-k3-add-clock-tree.patch -0220-UPSTREAM-riscv-dts-spacemit-k3-add-pinctrl-support.patch -0221-UPSTREAM-riscv-dts-spacemit-k3-add-GPIO-support.patch -0222-UPSTREAM-riscv-dts-spacemit-k3-add-full-resource-to-.patch -0223-UPSTREAM-dt-bindings-usb-dwc3-spacemit-add-support-f.patch -0224-UPSTREAM-usb-dwc3-dwc3-generic-plat-spacemit-add-sup.patch -0225-UPSTREAM-usb-dwc3-Add-optional-VBUS-regulator-suppor.patch -0226-UPSTREAM-riscv-dts-spacemit-reorder-phy-nodes-for-K1.patch -0227-UPSTREAM-riscv-dts-spacemit-drop-incorrect-pinctrl-f.patch -0228-UPSTREAM-riscv-dts-spacemit-Add-ethernet-device-for-.patch -0229-UPSTREAM-riscv-dts-spacemit-add-LEDs-for-Milk-V-Jupi.patch -0230-UPSTREAM-riscv-dts-spacemit-add-24c04-eeprom-on-Milk.patch -0231-UPSTREAM-riscv-dts-spacemit-add-i2c-aliases-on-Milk-.patch -0232-UPSTREAM-riscv-dts-spacemit-enable-QSPI-and-add-SPI-.patch -0233-UPSTREAM-riscv-dts-spacemit-enable-USB-3-ports-on-Mi.patch -0234-UPSTREAM-riscv-dts-spacemit-enable-PCIe-ports-on-Mil.patch -0235-UPSTREAM-dt-bindings-i2c-spacemit-k3-Add-compatible.patch -0236-UPSTREAM-dts-riscv-spacemit-k3-Add-i2c-nodes.patch -0237-UPSTREAM-dts-riscv-spacemit-k3-add-P1-PMIC-regulator.patch -0238-UPSTREAM-perf-symbol-Add-RISCV-case-in-get_plt_sizes.patch -0239-UPSTREAM-riscv-Simplify-assignment-for-UTS_MACHINE.patch -0240-UPSTREAM-riscv-increase-COMMAND_LINE_SIZE-value-to-2.patch -0241-UPSTREAM-riscv-acpi-update-FADT-revision-check-to-6..patch -0242-UPSTREAM-riscv-mm-WARN_ON-for-bad-addresses-in-vmemm.patch -0243-UPSTREAM-riscv-enable-HAVE_IOREMAP_PROT.patch -0244-UPSTREAM-string-provide-strends.patch -0245-UPSTREAM-lib-string_kunit-add-correctness-test-for-s.patch -0246-UPSTREAM-lib-string_kunit-add-correctness-test-for-s.patch -0247-UPSTREAM-lib-string_kunit-add-correctness-test-for-s.patch -0248-UPSTREAM-lib-string_kunit-add-performance-benchmark-.patch -0249-UPSTREAM-lib-string_kunit-extend-benchmarks-to-strnl.patch -0250-UPSTREAM-riscv-lib-add-strnlen-implementation.patch -0251-UPSTREAM-riscv-lib-add-strchr-implementation.patch -0252-UPSTREAM-riscv-lib-add-strrchr-implementation.patch -0253-UPSTREAM-PCI-dwc-Add-register-and-bitfield-definitio.patch -0254-UPSTREAM-ASoC-spacemit-move-hw-constraints-from-hw_p.patch -0255-UPSTREAM-ASoC-spacemit-adjust-FIFO-trigger-threshold.patch -0256-UPSTREAM-dt-bindings-reset-thead-th1520-reset-Remove.patch -0257-UPSTREAM-dt-bindings-reset-thead-th1520-reset-Add-co.patch -0258-UPSTREAM-reset-th1520-Prepare-for-supporting-multipl.patch -0259-UPSTREAM-reset-th1520-Support-reset-controllers-in-m.patch -0260-UPSTREAM-riscv-dts-thead-Add-reset-controllers-of-mo.patch -0261-UPSTREAM-clk-spacemit-k3-mark-top_dclk-as-CLK_IS_CRI.patch -0262-UPSTREAM-ASoC-spacemit-fix-RX-DMA-params-not-set-whe.patch -0263-UPSTREAM-i2c-spacemit-drop-useless-spaces.patch -0264-UPSTREAM-clk-at91-pmc-undef-field_-get-prep-before-d.patch -0265-UPSTREAM-crypto-qat-undef-field_get-before-local-def.patch -0266-UPSTREAM-EDAC-ie31200-undef-field_get-before-local-d.patch -0267-UPSTREAM-gpio-aspeed-undef-field_-get-prep-before-lo.patch -0268-UPSTREAM-iio-dac-ad3530r-undef-field_prep-before-loc.patch -0269-UPSTREAM-iio-mlx90614-undef-field_-get-prep-before-l.patch -0270-UPSTREAM-pinctrl-ma35-undef-field_-get-prep-before-l.patch -0271-UPSTREAM-soc-renesas-rz-sysc-undef-field_get-before-.patch -0272-UPSTREAM-ALSA-usb-audio-undef-field_-get-prep-before.patch -0273-UPSTREAM-bitfield-Add-less-checking-__FIELD_-GET-PRE.patch -0274-UPSTREAM-bitfield-Add-non-constant-field_-prep-get-h.patch -0275-UPSTREAM-clk-at91-Convert-to-common-field_-get-prep-.patch -0276-UPSTREAM-crypto-qat-convert-to-common-field_get-help.patch -0277-UPSTREAM-EDAC-ie31200-Convert-to-common-field_get-he.patch -0278-UPSTREAM-gpio-aspeed-Convert-to-common-field_-get-pr.patch -0279-UPSTREAM-iio-dac-Convert-to-common-field_prep-helper.patch -0280-UPSTREAM-iio-mlx90614-Convert-to-common-field_-get-p.patch -0281-UPSTREAM-pinctrl-ma35-Convert-to-common-field_-get-p.patch -0282-UPSTREAM-soc-renesas-rz-sysc-Convert-to-common-field.patch -0283-UPSTREAM-ALSA-usb-audio-Convert-to-common-field_-get.patch -0284-UPSTREAM-clk-renesas-Use-bitfield-helpers.patch -0285-UPSTREAM-soc-renesas-Use-bitfield-helpers.patch -0286-UPSTREAM-dt-bindings-usb-Add-support-for-Terminus-FE.patch -0287-UPSTREAM-usb-misc-onboard_usb_dev-Add-Terminus-FE1.1.patch -0288-UPSTREAM-riscv-Define-__riscv_copy_-vec_-words-bytes.patch -0289-UPSTREAM-riscv-mm-Fixup-no5lvl-failure-when-vaddr-is.patch -0290-UPSTREAM-spi-dt-bindings-fsl-qspi-support-SpacemiT-K.patch -0291-UPSTREAM-RISC-V-KVM-Fix-NULL-pointer-dereference-in-.patch -0292-FROMGIT-drm-imagination-Count-paired-job-fence-as-de.patch -0293-FROMGIT-drm-imagination-Fit-paired-fragment-job-in-t.patch -0294-FROMGIT-drm-imagination-Skip-check-on-paired-job-fen.patch -0295-FROMGIT-drm-imagination-Rename-pvr_queue_fence_is_uf.patch -0296-FROMGIT-drm-imagination-Rename-fence-returned-by-pvr.patch -0297-FROMGIT-drm-imagination-Move-repeated-job-fence-chec.patch -0298-FROMGIT-drm-imagination-Update-check-to-skip-prepare.patch -0299-FROMGIT-drm-imagination-Minor-improvements-to-job-su.patch -0300-FROMGIT-perf-riscv-Fix-discarded-const-qualifier-in-.patch -0301-FROMLIST-riscv-errata-Add-ERRATA_THEAD_WRITE_ONCE-fi.patch -0302-FROMLIST-PCI-Add-per-device-flag-to-disable-native-P.patch -0303-FROMLIST-PCI-Add-quirk-to-disable-PCIe-port-services.patch -0304-FROMLIST-PCI-Release-BAR0-of-an-integrated-bridge-to.patch -0305-BACKPORT-FROMLIST-drm-ttm-save-the-device-s-DMA-cohe.patch -0306-BACKPORT-FROMLIST-drm-ttm-downgrade-cached-to-write_.patch -0307-FROMLIST-NFU-riscv-dts-thead-Add-CPU-clock-and-OPP-t.patch -0308-FROMLIST-rust-export-BINDGEN_TARGET-from-a-separate-.patch -0309-FROMLIST-rust-generate-a-fatal-error-if-BINDGEN_TARG.patch -0310-FROMLIST-rust-add-a-Kconfig-function-to-test-for-sup.patch -0311-FROMLIST-RISC-V-handle-extension-configs-for-bindgen.patch -0312-FROMLIST-dt-bindings-mmc-spacemit-sdhci-add-reset-su.patch -0313-FROMLIST-mfd-simple-mfd-i2c-add-a-reboot-cell-for-th.patch -0314-FROMLIST-regulator-spacemit-MFD_SPACEMIT_P1-as-depen.patch -0315-FROMLIST-rtc-spacemit-default-module-when-MFD_SPACEM.patch -0316-FROMLIST-spi-dt-bindings-add-SpacemiT-K1-SPI-support.patch -0317-FROMLIST-spi-spacemit-introduce-SpacemiT-K1-SPI-cont.patch -0318-FROMLIST-riscv-dts-spacemit-define-a-SPI-controller-.patch -0319-FROMLIST-dt-bindings-thermal-Add-SpacemiT-K1-thermal.patch -0320-FROMLIST-thermal-spacemit-k1-Add-thermal-sensor-supp.patch -0321-FROMLIST-riscv-dts-spacemit-Add-thermal-sensor-for-K.patch -0322-FROMLIST-net-spacemit-Free-rings-of-memory-after-unm.patch -0323-FROMLIST-riscv-mm-Extract-helper-mark_new_valid_map.patch -0324-FROMLIST-riscv-kfence-Call-mark_new_valid_map-for-kf.patch -0325-FROMLIST-riscv-mm-Rename-new_vmalloc-into-new_valid_.patch -0326-FROMLIST-riscv-mm-Use-the-bitmap-API-for-new_valid_m.patch -0327-FROMLIST-riscv-mm-Unconditionally-sfence.vma-for-spu.patch -0328-FROMLIST-dt-bindings-phy-spacemit-k3-add-USB2-PHY-su.patch -0329-FROMLIST-phy-k1-usb-k3-add-USB2-PHY-support.patch -0330-FROMLIST-cpufreq-dt-platdev-Add-SpacemiT-K1-SoC-to-t.patch -0331-FROMLIST-riscv-dts-spacemit-Add-cpu-scaling-for-K1-S.patch -0332-FROMLIST-riscv-mm-Define-DIRECT_MAP_PHYSMEM_END.patch -0333-FROMLIST-drm-verisilicon-add-max-cursor-size-to-HWDB.patch -0334-FROMLIST-drm-verisilicon-add-support-for-cursor-plan.patch -0335-FROMLIST-riscv-add-UltraRISC-SoC-family-Kconfig-supp.patch -0336-FROMLIST-dt-bindings-PCI-Add-UltraRISC-DP1000-PCIe-c.patch -0337-FROMLIST-PCI-ultrarisc-Add-UltraRISC-DP1000-PCIe-Roo.patch -0338-FROMLIST-serial-8250_dwlib-move-DesignWare-register-.patch -0339-FROMLIST-serial-8250_dw-build-Renesas-RZN1-CPR-value.patch -0340-FROMLIST-dt-bindings-serial-snps-dw-apb-uart-Add-Ult.patch -0341-FROMLIST-serial-8250_dw-Use-a-fixed-CPR-value-for-Ul.patch -0342-FROMLIST-riscv-disable-local-interrupts-and-stop-oth.patch -0343-FROMLIST-drm-bridge-th1520-dw-hdmi-Fix-error-check-o.patch -0344-FROMLIST-drm-bridge-th1520-dw-hdmi-Fix-remove-callba.patch -0345-FROMLIST-riscv-dts-spacemit-Enable-i2c8-adapter-for-.patch -0346-FROMLIST-riscv-dts-spacemit-Define-the-P1-PMIC-regul.patch -0347-FROMLIST-riscv-dts-spacemit-Enable-USB3.0-PCIe-on-Or.patch -0348-FROMLIST-dt-bindings-dmaengine-Add-SpacemiT-K3-DMA-c.patch -0349-FROMLIST-dmaengine-mmp_pdma-refactor-DRCMR-access-wi.patch -0350-FROMLIST-dmaengine-mmp_pdma-add-SpacemiT-K3-support.patch -0351-FROMLIST-riscv-dts-spacemit-Add-PDMA-controller-node.patch -0352-FROMLIST-dt-bindings-pci-sophgo-Add-dma-coherent-pro.patch -0353-FROMLIST-riscv-dts-sophgo-Add-dma-coherent-to-SG2042.patch -0354-FROMLIST-riscv-mm-fix-SWIOTLB-initialization-for-sys.patch -0355-FROMLIST-riscv-dts-spacemit-k1-bananapi-f3-Add-vcc5v.patch -0356-FROMLIST-riscv-dts-spacemit-k1-bananapi-f3-Update-US.patch -0357-FROMLIST-riscv-dts-spacemit-k1-bananapi-f3-Correct-U.patch -0358-FROMLIST-riscv-dts-sophgo-sg2044-use-hex-for-CPU-uni.patch -0359-FROMLIST-riscv-dts-sophgo-sg2042-use-hex-for-CPU-uni.patch -0360-FROMLIST-riscv-Fix-fast_unaligned_access_speed_key-n.patch -0361-FROMLIST-riscv-dts-sophgo-reduce-SG2042-MSI-count-to.patch -0362-FROMLIST-dt-bindings-pwm-marvell-pxa-pwm-Add-Spacemi.patch -0363-FROMLIST-pwm-pxa-Add-optional-bus-clock.patch -0364-FROMLIST-riscv-ftrace-select-HAVE_BUILDTIME_MCOUNT_S.patch -0365-FROMLIST-riscv-dts-spacemit-enable-USB3-on-OrangePi-.patch -0366-FROMLIST-dts-riscv-spacemit-correct-32k-clock-freque.patch -0367-FROMLIST-ASoC-dt-bindings-add-SpacemiT-K3-SoC-compat.patch -0368-FROMLIST-ASoC-spacemit-add-K3-SoC-support-with-addit.patch -0369-FROMLIST-ASoC-soc-dai-add-shared-BCLK-clock-for-cros.patch -0370-FROMLIST-ASoC-soc-pcm-constrain-hw_params-when-DAIs-.patch -0371-FROMLIST-ASoC-spacemit-declare-shared-BCLK-for-cross.patch -0372-FROMLIST-spi-spacemit-add-u64-cast-to-NSEC_PER_SEC-t.patch -0373-FROMLIST-dt-bindings-clock-thead-add-TH1520-MISC-sub.patch -0374-FROMLIST-clk-thead-th1520-ap-add-support-for-MISC-su.patch -0375-FROMLIST-riscv-dts-thead-add-device-tree-node-for-MI.patch -0376-FROMLIST-dt-bindings-phy-add-binding-for-T-Head-TH15.patch -0377-FROMLIST-phy-add-a-driver-for-T-Head-TH1520-USB-PHY.patch -0378-FROMLIST-riscv-dts-thead-add-device-nodes-for-USB.patch -0379-FROMLIST-dt-bindings-gpio-dwapb-allow-GPIO-hogs.patch -0380-FROMLIST-dt-bindings-usb-vialab-vl817-allow-ports-pr.patch -0381-FROMLIST-riscv-dts-thead-lpi4a-sort-nodes.patch -0382-FROMLIST-riscv-dts-thead-Add-TH1520-I2C-nodes.patch -0383-FROMLIST-riscv-dts-thead-Add-Lichee-Pi-4A-IO-expansi.patch -0384-FROMLIST-riscv-dts-thead-enable-USB3-ports-on-Lichee.patch -0385-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-add-PMIC-a.patch -0386-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-add-24c04-.patch -0387-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-enable-QSP.patch -0388-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-enable-USB.patch -0389-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-enable-PCI.patch -0390-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-set-defaul.patch -0391-FROMLIST-riscv-dts-spacemit-k3-Add-pwm-support.patch -0392-FROMLIST-riscv-use-sysfs_emit-in-cpu_show_ghostwrite.patch -0393-FROMLIST-clk-spacemit-k3-Switch-to-pll2_d6-as-parent.patch -0394-FROMLIST-clk-spacemit-k3-Fix-PCIe-clock-register-off.patch -0395-FROMLIST-dt-bindings-soc-spacemit-k3-Add-PCIe-DBI-cl.patch -0396-FROMLIST-clk-spacemit-k3-Add-PCIe-DBI-clock.patch -0397-FROMLIST-riscv-dts-spacemit-enable-eMMC-for-OrangePi.patch -0398-FROMLIST-i2c-spacemit-configure-ILCR-IWCR-for-accura.patch -0399-FROMLIST-i2c-spacemit-drop-warning-when-clock-freque.patch -0400-FROMLIST-dt-bindings-mmc-spacemit-sdhci-add-pinctrl-.patch -0401-FROMLIST-mmc-sdhci-of-k1-enable-essential-clock-infr.patch -0402-FROMLIST-mmc-sdhci-of-k1-add-regulator-and-pinctrl-v.patch -0403-FROMLIST-mmc-sdhci-of-k1-add-comprehensive-SDR-tunin.patch -0404-FROMLIST-riscv-dts-spacemit-k1-add-SD-card-controlle.patch -0405-FROMLIST-riscv-dts-spacemit-k1-orangepi-rv2-add-SD-c.patch -0406-FROMLIST-riscv-dts-spacemit-k1-bananapi-f3-add-SD-ca.patch -0407-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-add-SD-car.patch -0408-FROMLIST-riscv-dts-thead-Enable-wifi-on-the-BeagleV-.patch -0409-FROMLIST-riscv-module-Use-generic-cmp_int-instead-of.patch -0410-FROMLIST-riscv-propagate-insert_resource-result-from.patch -0411-FROMLIST-PCI-spacemit-k1-Add-device-data-support.patch -0412-FROMLIST-PCI-spacemit-k1-Add-multiple-PHY-handles-su.patch -0413-FROMLIST-dt-bindings-PCI-snps-dw-pcie-Add-msi-parent.patch -0414-FROMLIST-dt-bindings-PCI-spacemit-Introduce-Spacemit.patch -0415-FROMLIST-PCI-spacemit-k1-Add-Spacemit-K3-PCIe-host-c.patch -0416-FROMLIST-riscv-dts-spacemit-enable-QSPI-for-OrangePi.patch -0417-FROMLIST-clk-spacemit-k3-fix-USB2-bus-clock.patch -0418-FROMLIST-reset-spacemit-k3-fix-USB2-ahb-reset.patch -0419-FROMLIST-dts-riscv-spacemit-k3-Fix-I-O-power-setting.patch -0420-FROMLIST-riscv-dts-spacemit-set-console-baud-rate-on.patch -0421-FROMLIST-riscv-dts-spacemit-sort-aliases-on-Milk-V-J.patch -0422-FROMLIST-riscv-dts-spacemit-enable-eMMC-on-Milk-V-Ju.patch -0423-FROMLIST-riscv-dts-spacemit-enable-SD-card-support-o.patch -0424-FROMLIST-riscv-dts-spacemit-fix-uboot-partition-offs.patch -0425-FROMLIST-riscv-dts-spacemit-add-QSPI-support-for-K3-.patch -0426-FROMLIST-pinctrl-spacemit-fix-NULL-check-in-spacemit.patch -0427-FROMLIST-riscv-unconditionally-select-ARCH_KEEP_MEMB.patch -0428-FROMLIST-riscv-kexec_file-Constrain-segment-placemen.patch -0429-FROMLIST-dt-bindings-riscv-spacemit-Add-K3-CoM260-IF.patch -0430-FROMLIST-riscv-dts-spacemit-k3-Initial-support-for-C.patch -0431-FROMLIST-riscv-dts-spacemit-enable-PMIC-on-OrangePi-.patch -0432-FROMLIST-riscv-dts-spacemit-set-console-baud-rate-on.patch -0433-FROMLIST-riscv-mm-Call-mark_new_valid_map-after-hotp.patch -0434-XUANTIE-riscv-dts-th1520-add-licheepi4a-16g-support.patch -0435-REVYOS-riscv-dts-th1520-rename-thead-to-xuantie.patch -0436-REVYOS-riscv-dts-th1520-add-xuantie-th1520-mbox-r.patch -0437-SOPHGO-dt-bindings-nvmem-Add-SG2044-eFuse-controller.patch -0438-SOPHGO-nvmem-Add-Sophgo-SG2044-eFuse-driver.patch -0439-SOPHGO-riscv-dts-sophgo-sg2044-Add-eFUSE-device.patch -0440-SOPHGO-dts-sg2044-Modify-pcie-bar-address.patch -0441-SOPHGO-riscv-sg2042-errata-Replace-thead-cache-clean.patch -0442-REVYSR-dt-bindings-net-ultrarisc-dp1000-gmac-Add-sup.patch -0443-REVYSR-net-stmmac-add-support-for-dwmac-5.10a.patch -0444-RVCK-riscv-dts-add-dp1000.dts-for-UltraRIsc-DP1000-S.patch -0445-RVCK-pinctrl-add-pinctrl-dirver-for-UltraRisc-DP1000.patch -0446-RVCK-dts-add-pinctrl-dtsi-dts-for-UltraRisc-DP1000.patch -0447-RVCK-riscv-dp1000-dts-add-the-dts-of-UltraRISC-dp100.patch -0448-RVCK-riscv-dp1000-dts-Move-mmc0-node-from-SoC-to-boa.patch -0449-RVCK-riscv-dp1000-plic-add-plic-early-init-supports.patch -0450-RVCK-riscv-dp1000-dts-Move-chosen-node-from-common-t.patch -0451-RVCK-dts-riscv-ultrarisc-Refactor-DP1000-device-tree.patch -0452-RVCK-riscv-pinctrl-ultrarisc-Implement-pin-configura.patch -0453-RVCK-riscv-dts-dp1000-add-dts-dtsi-for-Milk-V-Titan-.patch -0454-REVYSR-pinctrl-ultrarisc-cleanup-probe-remove.patch -0455-REVYSR-riscv-dp1000-dts-use-ultrarisc-dp1000-pcie-fo.patch -0456-ULTRARISC-hwmon-add-corepvt-driver-of-UltraRISC-DP10.patch -0457-RUYI-SYNC-riscv-dts-dp1000-Update-dp1000.dtsi.patch -0458-RUYI-riscv-dts-spacemit-k3-Add-USB2.0-support.patch -0459-SPACEMIT-riscv-uaccess-don-t-use-vector-if-buffer-is.patch -0460-RUYI-dt-bindings-phy-Add-Spacemit-K3-USB3-PCIe-comb-.patch -0461-RUYI-phy-spacemit-Add-USB3-PCIe-comb-PHY-driver-for-.patch -0462-RUYI-riscv-dts-spacemit-k3-add-USB-controller-and-US.patch -0463-RUYI-riscv-dts-spacemit-k3-Add-PCIe-device-node.patch -0464-RUYI-PCI-add-SpacemiT-vendor-id-and-its-K3-device-id.patch -0465-RUYI-wifi-rtw89-pci-add-SpacemiT-K3-to-36-bit-DMA-al.patch -0466-RUYI-drm-amdgpu-disable-dynamic-PCIe-speed-switch-on.patch -0467-RVCK-driver-clk-k3-keep-some-system-based-clock-alwa.patch -0001-RUYI-mmc-sdhci-of-dwcmshc-Add-support-for-SG2042-FPG.patch +%include %{SOURCE2} %description This is a meta-package that installs the core kernel image and modules. diff --git a/SPECS/linux-lts/series b/SPECS/linux-lts/series new file mode 100644 index 0000000000..aa3b3648e0 --- /dev/null +++ b/SPECS/linux-lts/series @@ -0,0 +1,472 @@ +0001-UPSTREAM-drm-ttm-add-pgprot-handling-for-RISC-V.patch +0002-UPSTREAM-riscv-sophgo-dts-add-PCIe-controllers-for-S.patch +0003-UPSTREAM-riscv-sophgo-dts-enable-PCIe-for-PioneerBox.patch +0004-UPSTREAM-riscv-sophgo-dts-enable-PCIe-for-SG2042_EVB.patch +0005-UPSTREAM-riscv-sophgo-dts-enable-PCIe-for-SG2042_EVB.patch +0006-UPSTREAM-riscv-dts-sophgo-Add-SPI-NOR-node-for-SG204.patch +0007-UPSTREAM-riscv-dts-sophgo-Enable-SPI-NOR-node-for-Pi.patch +0008-UPSTREAM-riscv-dts-sophgo-Enable-SPI-NOR-node-for-SG.patch +0009-UPSTREAM-riscv-dts-sophgo-Enable-SPI-NOR-node-for-SG.patch +0010-UPSTREAM-dt-bindings-net-sophgo-sg2044-dwmac-add-phy.patch +0011-UPSTREAM-perf-vendor-events-riscv-add-T-HEAD-C920V2-.patch +0012-UPSTREAM-rust-macros-Add-support-for-imports_ns-to-m.patch +0013-UPSTREAM-pwm-Export-pwmchip_release-for-external-use.patch +0014-UPSTREAM-rust-pwm-Add-Kconfig-and-basic-data-structu.patch +0015-UPSTREAM-rust-pwm-Add-complete-abstraction-layer.patch +0016-UPSTREAM-rust-pwm-Add-module_pwm_platform_driver-mac.patch +0017-UPSTREAM-rust-pwm-Drop-wrapping-of-PWM-polarity-and-.patch +0018-UPSTREAM-rust-pwm-Fix-broken-intra-doc-link.patch +0019-UPSTREAM-pwm-Add-Rust-driver-for-T-HEAD-TH1520-SoC.patch +0020-UPSTREAM-dt-bindings-pwm-thead-Add-T-HEAD-TH1520-PWM.patch +0021-UPSTREAM-pwm-Fix-Rust-formatting.patch +0022-UPSTREAM-pwm-th1520-Fix-clippy-warning-for-redundant.patch +0023-UPSTREAM-pwm-th1520-Use-module_pwm_platform_driver-m.patch +0024-UPSTREAM-pwm-th1520-Fix-missing-Kconfig-dependencies.patch +0025-UPSTREAM-riscv-dts-thead-add-xtheadvector-to-the-th1.patch +0026-UPSTREAM-riscv-dts-thead-add-ziccrse-for-th1520.patch +0027-UPSTREAM-riscv-dts-thead-add-zfh-for-th1520.patch +0028-UPSTREAM-riscv-dts-thead-Add-PWM-controller-node.patch +0029-UPSTREAM-riscv-dts-thead-Add-PWM-fan-and-thermal-con.patch +0030-UPSTREAM-dt-bindings-vendor-prefixes-Add-UltraRISC.patch +0031-UPSTREAM-dt-bindings-interrupt-controller-Add-UltraR.patch +0032-UPSTREAM-irqchip-sifive-plic-Cache-the-interrupt-ena.patch +0033-UPSTREAM-irqchip-sifive-plic-Add-support-for-UltraRI.patch +0034-UPSTREAM-riscv-cpu_ops_sbi-smp_processor_id-returns-.patch +0035-UPSTREAM-spi-dt-bindings-fsl-qspi-support-SpacemiT-K.patch +0036-UPSTREAM-spi-dt-bindings-fsl-qspi-add-optional-reset.patch +0037-UPSTREAM-spi-fsl-qspi-add-optional-reset-support.patch +0038-UPSTREAM-spi-fsl-qspi-switch-predicates-to-bool.patch +0039-UPSTREAM-spi-fsl-qspi-add-a-clock-disable-quirk.patch +0040-UPSTREAM-spi-fsl-qspi-introduce-sfa_size-devtype-dat.patch +0041-UPSTREAM-spi-fsl-qspi-support-the-SpacemiT-K1-SoC.patch +0042-UPSTREAM-dt-bindings-pci-spacemit-Introduce-PCIe-hos.patch +0043-UPSTREAM-PCI-spacemit-Add-SpacemiT-PCIe-host-driver.patch +0044-UPSTREAM-ASoC-dt-bindings-Add-bindings-for-SpacemiT-.patch +0045-UPSTREAM-ASoC-spacemit-add-i2s-support-for-K1-SoC.patch +0046-UPSTREAM-riscv-dts-spacemit-add-UART-pinctrl-combina.patch +0047-UPSTREAM-riscv-dts-spacemit-enable-the-i2c8-adapter.patch +0048-UPSTREAM-riscv-dts-spacemit-define-fixed-regulators.patch +0049-UPSTREAM-riscv-dts-spacemit-define-regulator-constra.patch +0050-UPSTREAM-riscv-dts-spacemit-enable-the-i2c2-adapter-.patch +0051-UPSTREAM-riscv-dts-spacemit-add-24c02-eeprom-on-BPI-.patch +0052-UPSTREAM-riscv-dts-spacemit-add-i2c-aliases-on-BPI-F.patch +0053-UPSTREAM-riscv-dts-spacemit-add-Ethernet-and-PDMA-to.patch +0054-UPSTREAM-riscv-dts-spacemit-add-MusePi-Pro-board-dev.patch +0055-UPSTREAM-riscv-dts-spacemit-enable-K1-SoC-QSPI-on-BP.patch +0056-UPSTREAM-riscv-dts-spacemit-Add-OrangePi-R2S-board-d.patch +0057-UPSTREAM-riscv-dts-spacemit-reorder-i2c2-node.patch +0058-UPSTREAM-riscv-dts-spacemit-define-all-missing-I2C-c.patch +0059-UPSTREAM-rtc-spacemit-MFD_SPACEMIT_P1-as-dependencie.patch +0060-UPSTREAM-mfd-simple-mfd-i2c-Remove-select-I2C_K1-fro.patch +0061-UPSTREAM-driver-reset-spacemit-p1-add-driver-for-pow.patch +0062-UPSTREAM-riscv-remove-irqflags.h-inclusion-in-asm-bi.patch +0063-UPSTREAM-riscv-atomic.h-use-RISCV_FULL_BARRIER-in-_a.patch +0064-UPSTREAM-drm-dumb-buffers-Sanitize-output-on-errors.patch +0065-UPSTREAM-drm-dumb-buffers-Provide-helper-to-set-pitc.patch +0066-UPSTREAM-drm-hypervdrm-Use-vblank-timer.patch +0067-UPSTREAM-PCI-MSI-Convert-the-boolean-no_64bit_msi-fl.patch +0068-UPSTREAM-PCI-MSI-Check-the-device-specific-address-m.patch +0069-UPSTREAM-drm-radeon-Make-MSI-address-limit-based-on-.patch +0070-UPSTREAM-ALSA-hda-intel-Make-MSI-address-limit-based.patch +0071-UPSTREAM-riscv-dts-sophgo-enable-hardware-clock-RTC-.patch +0072-UPSTREAM-riscv-dts-sophgo-Move-PLIC-and-CLINT-node-i.patch +0073-UPSTREAM-riscv-dts-sophgo-fix-the-node-order-of-SG20.patch +0074-UPSTREAM-riscv-dts-spacemit-Enable-i2c8-adapter-for-.patch +0075-UPSTREAM-riscv-dts-spacemit-Define-fixed-regulators-.patch +0076-UPSTREAM-riscv-dts-spacemit-Define-the-P1-PMIC-regul.patch +0077-UPSTREAM-dt-bindings-phy-spacemit-Add-SpacemiT-PCIe-.patch +0078-UPSTREAM-dt-bindings-phy-spacemit-Introduce-PCIe-PHY.patch +0079-UPSTREAM-phy-spacemit-Introduce-PCIe-combo-PHY.patch +0080-UPSTREAM-riscv-dts-spacemit-Add-a-PCIe-regulator.patch +0081-UPSTREAM-riscv-dts-spacemit-PCIe-and-PHY-related-upd.patch +0082-UPSTREAM-dt-bindings-i2c-spacemit-add-optional-reset.patch +0083-UPSTREAM-i2c-k1-add-reset-support.patch +0084-UPSTREAM-riscv-dts-spacemit-add-reset-property.patch +0085-UPSTREAM-dt-bindings-phy-spacemit-add-K1-USB2-PHY.patch +0086-UPSTREAM-phy-spacemit-support-K1-USB2.0-PHY-controll.patch +0087-UPSTREAM-riscv-dts-spacemit-Add-USB2-PHY-node-for-K1.patch +0088-UPSTREAM-riscv-dts-spacemit-Add-DWC3-USB-3.0-control.patch +0089-UPSTREAM-riscv-dts-spacemit-Enable-USB3.0-on-BananaP.patch +0090-UPSTREAM-dt-bindings-pinctrl-spacemit-convert-drive-.patch +0091-UPSTREAM-dt-bindings-pinctrl-spacemit-add-K3-SoC-sup.patch +0092-UPSTREAM-pinctrl-spacemit-k3-add-initial-pin-support.patch +0093-UPSTREAM-pinctrl-spacemit-k3-adjust-drive-strength-a.patch +0094-UPSTREAM-dt-bindings-pinctrl-spacemit-add-syscon-pro.patch +0095-UPSTREAM-pinctrl-spacemit-support-I-O-power-domain-c.patch +0096-UPSTREAM-riscv-dts-spacemit-pinctrl-update-register-.patch +0097-UPSTREAM-dt-bindings-riscv-update-ratified-version-o.patch +0098-UPSTREAM-dt-bindings-riscv-Add-B-ISA-extension-descr.patch +0099-UPSTREAM-dt-bindings-riscv-Add-descriptions-for-Za64.patch +0100-UPSTREAM-dt-bindings-riscv-Add-Ssccptr-Sscounterenw-.patch +0101-UPSTREAM-dt-bindings-riscv-Add-Sha-and-its-comprised.patch +0102-UPSTREAM-riscv-dts-sophgo-sg2044-Add-b-ISA-extension.patch +0103-UPSTREAM-riscv-dts-spacemit-k1-Add-b-ISA-extension.patch +0104-UPSTREAM-dt-bindings-riscv-add-SpacemiT-X100-CPU-com.patch +0105-UPSTREAM-dt-bindings-timer-add-SpacemiT-K3-CLINT.patch +0106-UPSTREAM-dt-bindings-interrupt-controller-add-Spacem.patch +0107-UPSTREAM-dt-bindings-interrupt-controller-add-Spacem.patch +0108-UPSTREAM-dt-bindings-riscv-spacemit-add-K3-and-Pico-.patch +0109-UPSTREAM-riscv-dts-spacemit-add-initial-support-for-.patch +0110-UPSTREAM-riscv-dts-spacemit-add-K3-Pico-ITX-board-su.patch +0111-UPSTREAM-clk-spacemit-Hide-common-clock-driver-from-.patch +0112-UPSTREAM-clk-spacemit-prepare-common-ccu-header.patch +0113-UPSTREAM-clk-spacemit-extract-common-ccu-functions.patch +0114-UPSTREAM-clk-spacemit-add-platform-SoC-prefix-to-res.patch +0115-UPSTREAM-reset-spacemit-fix-auxiliary-device-id.patch +0116-UPSTREAM-dt-bindings-soc-spacemit-k3-add-clock-suppo.patch +0117-UPSTREAM-clk-spacemit-ccu_mix-add-inverted-enable-ga.patch +0118-UPSTREAM-clk-spacemit-ccu_pll-add-plla-type-clock.patch +0119-UPSTREAM-clk-spacemit-k3-extract-common-header.patch +0120-UPSTREAM-clk-spacemit-k3-add-the-clock-tree.patch +0121-UPSTREAM-dt-bindings-soc-spacemit-Add-K3-reset-suppo.patch +0122-UPSTREAM-reset-Create-subdirectory-for-SpacemiT-driv.patch +0123-UPSTREAM-reset-spacemit-Extract-common-K1-reset-code.patch +0124-UPSTREAM-reset-spacemit-Add-SpacemiT-K3-reset-driver.patch +0125-UPSTREAM-dt-bindings-gpio-spacemit-add-compatible-na.patch +0126-UPSTREAM-gpio-spacemit-Add-GPIO-support-for-K3-SoC.patch +0127-UPSTREAM-riscv-dts-spacemit-Disable-ETH-PHY-sleep-mo.patch +0128-UPSTREAM-dt-bindings-clock-thead-th1520-clk-ap-Add-I.patch +0129-UPSTREAM-clk-thead-th1520-ap-Add-C910-bus-clock.patch +0130-UPSTREAM-clk-thead-th1520-ap-Support-setting-PLL-rat.patch +0131-UPSTREAM-clk-thead-th1520-ap-Add-macro-to-define-mul.patch +0132-UPSTREAM-clk-thead-th1520-ap-Support-CPU-frequency-s.patch +0133-UPSTREAM-net-spacemit-display-phy-driver-information.patch +0134-UPSTREAM-gpio-spacemit-k1-Use-PDR-for-pin-direction-.patch +0135-UPSTREAM-phy-Kconfig-spacemit-add-COMMON_CLK-depende.patch +0136-UPSTREAM-mfd-Kconfig-Default-MFD_SPACEMIT_P1-to-m-if.patch +0137-UPSTREAM-riscv-dts-spacemit-sdhci-add-reset-support.patch +0138-UPSTREAM-irqchip-sifive-plic-Fix-call-to-__plic_togg.patch +0139-UPSTREAM-dt-bindings-interrupt-controller-sifive-pli.patch +0140-UPSTREAM-irqchip-sifive-plic-Handle-number-of-hardwa.patch +0141-UPSTREAM-PCI-dwc-Use-multiple-iATU-windows-for-mappi.patch +0142-UPSTREAM-pinctrl-th1520-Fix-typo.patch +0143-UPSTREAM-PCI-cadence-Add-module-support-for-platform.patch +0144-UPSTREAM-PCI-cadence-Split-PCIe-controller-header-fi.patch +0145-UPSTREAM-PCI-cadence-Move-PCIe-RP-common-functions-t.patch +0146-UPSTREAM-PCI-cadence-Add-support-for-High-Perf-Archi.patch +0147-UPSTREAM-net-stmmac-imx-use-phylink-s-interface-mode.patch +0148-UPSTREAM-net-stmmac-s32-move-PHY_INTF_SEL_x-definiti.patch +0149-UPSTREAM-net-stmmac-add-phy_intf_sel-and-ACTPHYIF-de.patch +0150-UPSTREAM-net-stmmac-add-stmmac_get_phy_intf_sel.patch +0151-UPSTREAM-net-stmmac-add-support-for-configuring-the-.patch +0152-UPSTREAM-net-stmmac-imx-convert-to-PHY_INTF_SEL_xxx.patch +0153-UPSTREAM-net-stmmac-imx-use-FIELD_PREP-FIELD_GET-for.patch +0154-UPSTREAM-net-stmmac-imx-use-stmmac_get_phy_intf_sel.patch +0155-UPSTREAM-net-stmmac-imx-simplify-set_intf_mode-imple.patch +0156-UPSTREAM-net-stmmac-imx-cleanup-arguments-for-set_in.patch +0157-UPSTREAM-net-stmmac-imx-use-set_phy_intf_sel.patch +0158-UPSTREAM-powerpc-pci-Initialize-msi_addr_mask-for-OF.patch +0159-UPSTREAM-sparc-PCI-Initialize-msi_addr_mask-for-OF-c.patch +0160-UPSTREAM-syscore-Pass-context-data-to-callbacks.patch +0161-UPSTREAM-irqchip-riscv-aplic-Preserve-APLIC-states-a.patch +0162-UPSTREAM-irqchip-riscv-aplic-Do-not-clear-ACPI-depen.patch +0163-UPSTREAM-irqchip-riscv-aplic-Register-syscore-operat.patch +0164-UPSTREAM-dt-bindings-usb-add-missed-compatible-strin.patch +0165-UPSTREAM-usb-dwc3-Add-software-managed-properties-fo.patch +0166-UPSTREAM-usb-dwc3-dwc3-generic-plat-Add-layerscape-d.patch +0167-UPSTREAM-dt-bindings-usb-Add-ESWIN-EIC7700-USB-contr.patch +0168-UPSTREAM-usb-dwc3-eic7700-Add-EIC7700-USB-driver.patch +0169-UPSTREAM-phy-k1-usb-add-disconnect-function-support.patch +0170-UPSTREAM-PCI-Add-ASPEED-vendor-ID-to-pci_ids.h.patch +0171-UPSTREAM-PCI-Add-PCI_BRIDGE_NO_ALIAS-quirk-for-ASPEE.patch +0172-UPSTREAM-riscv-patch-Avoid-early-phys_to_page.patch +0173-UPSTREAM-PCI-dwc-Fail-dw_pcie_host_init-if-dw_pcie_w.patch +0174-UPSTREAM-reset-spacemit-k3-Decouple-composite-reset-.patch +0175-UPSTREAM-rust-clk-implement-Send-and-Sync.patch +0176-UPSTREAM-tyr-remove-impl-Send-Sync-for-TyrData.patch +0177-UPSTREAM-pwm-th1520-fix-CLIPPY-1-warning.patch +0178-UPSTREAM-pwm-th1520-remove-impl-Send-Sync-for-Th1520.patch +0179-UPSTREAM-net-spacemit-Remove-unused-buff_addr-fields.patch +0180-UPSTREAM-dt-bindings-net-Add-support-for-Spacemit-K3.patch +0181-UPSTREAM-net-stmmac-platform-Add-snps-dwmac-5.40a-IP.patch +0182-UPSTREAM-net-stmmac-Add-glue-layer-for-Spacemit-K3-S.patch +0183-UPSTREAM-drm-imagination-Improve-handling-of-unknown.patch +0184-UPSTREAM-drm-imagination-Mark-FWCCB_CMD_UPDATE_STATS.patch +0185-UPSTREAM-drm-imagination-Improve-firmware-power-off-.patch +0186-UPSTREAM-drm-imagination-Skip-2nd-thread-DM-associat.patch +0187-UPSTREAM-drm-imagination-Add-missing-rogue-context-r.patch +0188-UPSTREAM-drm-imagination-Implement-handling-of-conte.patch +0189-UPSTREAM-dt-bindings-vendor-prefixes-add-verisilicon.patch +0190-UPSTREAM-dt-bindings-display-add-verisilicon-dc.patch +0191-UPSTREAM-drm-verisilicon-add-a-driver-for-Verisilico.patch +0192-UPSTREAM-dt-bindings-display-bridge-add-binding-for-.patch +0193-UPSTREAM-drm-bridge-add-a-driver-for-T-Head-TH1520-H.patch +0194-UPSTREAM-dt-bindings-mfd-spacemit-p1-Add-individual-.patch +0195-UPSTREAM-regulator-spacemit-p1-Update-supply-names.patch +0196-UPSTREAM-mmc-sdhci-of-k1-add-reset-support.patch +0197-UPSTREAM-dt-bindings-mmc-spacemit-sdhci-add-support-.patch +0198-UPSTREAM-mmc-sdhci-of-k1-spacemit-Add-support-for-K3.patch +0199-UPSTREAM-PCI-cadence-Add-flags-for-disabling-ASPM-ca.patch +0200-UPSTREAM-PCI-sg2042-Avoid-L0s-and-L1-on-Sophgo-2042-.patch +0201-UPSTREAM-dt-bindings-hwmon-moortec-mr75203-adapt-mul.patch +0202-UPSTREAM-drm-imagination-Disable-interrupts-before-s.patch +0203-UPSTREAM-riscv-dts-thead-add-DPU-and-HDMI-device-tre.patch +0204-UPSTREAM-riscv-dts-thead-lichee-pi-4a-enable-HDMI.patch +0205-UPSTREAM-riscv-dts-thead-th1520-add-coefficients-to-.patch +0206-UPSTREAM-riscv-dts-thead-beaglev-ahead-enable-HDMI-o.patch +0207-UPSTREAM-i2c-spacemit-move-i2c_xfer_msg.patch +0208-UPSTREAM-i2c-spacemit-introduce-pio-for-k1.patch +0209-UPSTREAM-pinctrl-spacemit-return-ENOTSUPP-for-unsupp.patch +0210-UPSTREAM-gpio-spacemit-k1-Add-set_config-callback-su.patch +0211-UPSTREAM-riscv-dts-spacemit-pcie-fix-missing-power-r.patch +0212-UPSTREAM-riscv-dts-spacemit-Update-PMIC-supply-prope.patch +0213-UPSTREAM-riscv-dts-spacemit-adapt-regulator-node-nam.patch +0214-UPSTREAM-riscv-dts-spacemit-Add-linux-pci-domain-to-.patch +0215-UPSTREAM-dt-bindings-serial-8250-spacemit-fix-clock-.patch +0216-UPSTREAM-riscv-dts-spacemit-k3-add-clock-tree.patch +0217-UPSTREAM-riscv-dts-spacemit-k3-add-pinctrl-support.patch +0218-UPSTREAM-riscv-dts-spacemit-k3-add-GPIO-support.patch +0219-UPSTREAM-riscv-dts-spacemit-k3-add-full-resource-to-.patch +0220-UPSTREAM-dt-bindings-usb-dwc3-spacemit-add-support-f.patch +0221-UPSTREAM-usb-dwc3-dwc3-generic-plat-spacemit-add-sup.patch +0222-UPSTREAM-usb-dwc3-Add-optional-VBUS-regulator-suppor.patch +0223-UPSTREAM-riscv-dts-spacemit-reorder-phy-nodes-for-K1.patch +0224-UPSTREAM-riscv-dts-spacemit-drop-incorrect-pinctrl-f.patch +0225-UPSTREAM-riscv-dts-spacemit-Add-ethernet-device-for-.patch +0226-UPSTREAM-riscv-dts-spacemit-add-LEDs-for-Milk-V-Jupi.patch +0227-UPSTREAM-riscv-dts-spacemit-add-24c04-eeprom-on-Milk.patch +0228-UPSTREAM-riscv-dts-spacemit-add-i2c-aliases-on-Milk-.patch +0229-UPSTREAM-riscv-dts-spacemit-enable-QSPI-and-add-SPI-.patch +0230-UPSTREAM-riscv-dts-spacemit-enable-USB-3-ports-on-Mi.patch +0231-UPSTREAM-riscv-dts-spacemit-enable-PCIe-ports-on-Mil.patch +0232-UPSTREAM-dt-bindings-i2c-spacemit-k3-Add-compatible.patch +0233-UPSTREAM-dts-riscv-spacemit-k3-Add-i2c-nodes.patch +0234-UPSTREAM-dts-riscv-spacemit-k3-add-P1-PMIC-regulator.patch +0235-UPSTREAM-perf-symbol-Add-RISCV-case-in-get_plt_sizes.patch +0236-UPSTREAM-riscv-Simplify-assignment-for-UTS_MACHINE.patch +0237-UPSTREAM-riscv-increase-COMMAND_LINE_SIZE-value-to-2.patch +0238-UPSTREAM-riscv-acpi-update-FADT-revision-check-to-6..patch +0239-UPSTREAM-riscv-mm-WARN_ON-for-bad-addresses-in-vmemm.patch +0240-UPSTREAM-riscv-enable-HAVE_IOREMAP_PROT.patch +0241-UPSTREAM-string-provide-strends.patch +0242-UPSTREAM-lib-string_kunit-add-correctness-test-for-s.patch +0243-UPSTREAM-lib-string_kunit-add-correctness-test-for-s.patch +0244-UPSTREAM-lib-string_kunit-add-correctness-test-for-s.patch +0245-UPSTREAM-lib-string_kunit-add-performance-benchmark-.patch +0246-UPSTREAM-lib-string_kunit-extend-benchmarks-to-strnl.patch +0247-UPSTREAM-riscv-lib-add-strnlen-implementation.patch +0248-UPSTREAM-riscv-lib-add-strchr-implementation.patch +0249-UPSTREAM-riscv-lib-add-strrchr-implementation.patch +0250-UPSTREAM-PCI-dwc-Add-register-and-bitfield-definitio.patch +0251-UPSTREAM-ASoC-spacemit-move-hw-constraints-from-hw_p.patch +0252-UPSTREAM-ASoC-spacemit-adjust-FIFO-trigger-threshold.patch +0253-UPSTREAM-dt-bindings-reset-thead-th1520-reset-Remove.patch +0254-UPSTREAM-dt-bindings-reset-thead-th1520-reset-Add-co.patch +0255-UPSTREAM-reset-th1520-Prepare-for-supporting-multipl.patch +0256-UPSTREAM-reset-th1520-Support-reset-controllers-in-m.patch +0257-UPSTREAM-riscv-dts-thead-Add-reset-controllers-of-mo.patch +0258-UPSTREAM-clk-spacemit-k3-mark-top_dclk-as-CLK_IS_CRI.patch +0259-UPSTREAM-ASoC-spacemit-fix-RX-DMA-params-not-set-whe.patch +0260-UPSTREAM-i2c-spacemit-drop-useless-spaces.patch +0261-UPSTREAM-clk-at91-pmc-undef-field_-get-prep-before-d.patch +0262-UPSTREAM-crypto-qat-undef-field_get-before-local-def.patch +0263-UPSTREAM-EDAC-ie31200-undef-field_get-before-local-d.patch +0264-UPSTREAM-gpio-aspeed-undef-field_-get-prep-before-lo.patch +0265-UPSTREAM-iio-dac-ad3530r-undef-field_prep-before-loc.patch +0266-UPSTREAM-iio-mlx90614-undef-field_-get-prep-before-l.patch +0267-UPSTREAM-pinctrl-ma35-undef-field_-get-prep-before-l.patch +0268-UPSTREAM-soc-renesas-rz-sysc-undef-field_get-before-.patch +0269-UPSTREAM-ALSA-usb-audio-undef-field_-get-prep-before.patch +0270-UPSTREAM-bitfield-Add-less-checking-__FIELD_-GET-PRE.patch +0271-UPSTREAM-bitfield-Add-non-constant-field_-prep-get-h.patch +0272-UPSTREAM-clk-at91-Convert-to-common-field_-get-prep-.patch +0273-UPSTREAM-crypto-qat-convert-to-common-field_get-help.patch +0274-UPSTREAM-EDAC-ie31200-Convert-to-common-field_get-he.patch +0275-UPSTREAM-gpio-aspeed-Convert-to-common-field_-get-pr.patch +0276-UPSTREAM-iio-dac-Convert-to-common-field_prep-helper.patch +0277-UPSTREAM-iio-mlx90614-Convert-to-common-field_-get-p.patch +0278-UPSTREAM-pinctrl-ma35-Convert-to-common-field_-get-p.patch +0279-UPSTREAM-soc-renesas-rz-sysc-Convert-to-common-field.patch +0280-UPSTREAM-ALSA-usb-audio-Convert-to-common-field_-get.patch +0281-UPSTREAM-clk-renesas-Use-bitfield-helpers.patch +0282-UPSTREAM-soc-renesas-Use-bitfield-helpers.patch +0283-UPSTREAM-dt-bindings-usb-Add-support-for-Terminus-FE.patch +0284-UPSTREAM-usb-misc-onboard_usb_dev-Add-Terminus-FE1.1.patch +0285-UPSTREAM-riscv-Define-__riscv_copy_-vec_-words-bytes.patch +0286-UPSTREAM-spi-dt-bindings-fsl-qspi-support-SpacemiT-K.patch +0287-UPSTREAM-RISC-V-KVM-Fix-NULL-pointer-dereference-in-.patch +0288-UPSTREAM-dt-bindings-mmc-sdhci-of-dwcmshc-Add-Eswin-.patch +0289-UPSTREAM-mmc-sdhci-of-dwcmshc-Add-support-for-Eswin-.patch +0290-UPSTREAM-mmc-sdhci-of-dwcmshc-Fix-init-for-AXI-clock.patch +0291-UPSTREAM-mmc-sdhci-of-dwcmshc-Fix-DMA-128MB-boundary.patch +0292-FROMGIT-drm-imagination-Count-paired-job-fence-as-de.patch +0293-FROMGIT-drm-imagination-Fit-paired-fragment-job-in-t.patch +0294-FROMGIT-drm-imagination-Skip-check-on-paired-job-fen.patch +0295-FROMGIT-drm-imagination-Rename-pvr_queue_fence_is_uf.patch +0296-FROMGIT-drm-imagination-Rename-fence-returned-by-pvr.patch +0297-FROMGIT-drm-imagination-Move-repeated-job-fence-chec.patch +0298-FROMGIT-drm-imagination-Update-check-to-skip-prepare.patch +0299-FROMGIT-drm-imagination-Minor-improvements-to-job-su.patch +0300-FROMGIT-perf-riscv-Fix-discarded-const-qualifier-in-.patch +0301-FROMLIST-riscv-errata-Add-ERRATA_THEAD_WRITE_ONCE-fi.patch +0302-FROMLIST-PCI-Add-per-device-flag-to-disable-native-P.patch +0303-FROMLIST-PCI-Add-quirk-to-disable-PCIe-port-services.patch +0304-FROMLIST-PCI-Release-BAR0-of-an-integrated-bridge-to.patch +0305-BACKPORT-FROMLIST-drm-ttm-save-the-device-s-DMA-cohe.patch +0306-BACKPORT-FROMLIST-drm-ttm-downgrade-cached-to-write_.patch +0307-FROMLIST-NFU-riscv-dts-thead-Add-CPU-clock-and-OPP-t.patch +0308-FROMLIST-rust-export-BINDGEN_TARGET-from-a-separate-.patch +0309-FROMLIST-rust-generate-a-fatal-error-if-BINDGEN_TARG.patch +0310-FROMLIST-rust-add-a-Kconfig-function-to-test-for-sup.patch +0311-FROMLIST-RISC-V-handle-extension-configs-for-bindgen.patch +0312-FROMLIST-dt-bindings-mmc-spacemit-sdhci-add-reset-su.patch +0313-FROMLIST-mfd-simple-mfd-i2c-add-a-reboot-cell-for-th.patch +0314-FROMLIST-regulator-spacemit-MFD_SPACEMIT_P1-as-depen.patch +0315-FROMLIST-rtc-spacemit-default-module-when-MFD_SPACEM.patch +0316-FROMLIST-spi-dt-bindings-add-SpacemiT-K1-SPI-support.patch +0317-FROMLIST-spi-spacemit-introduce-SpacemiT-K1-SPI-cont.patch +0318-FROMLIST-riscv-dts-spacemit-define-a-SPI-controller-.patch +0319-FROMLIST-dt-bindings-thermal-Add-SpacemiT-K1-thermal.patch +0320-FROMLIST-thermal-spacemit-k1-Add-thermal-sensor-supp.patch +0321-FROMLIST-riscv-dts-spacemit-Add-thermal-sensor-for-K.patch +0322-FROMLIST-net-spacemit-Free-rings-of-memory-after-unm.patch +0323-FROMLIST-riscv-mm-Extract-helper-mark_new_valid_map.patch +0324-FROMLIST-riscv-kfence-Call-mark_new_valid_map-for-kf.patch +0325-FROMLIST-riscv-mm-Rename-new_vmalloc-into-new_valid_.patch +0326-FROMLIST-riscv-mm-Use-the-bitmap-API-for-new_valid_m.patch +0327-FROMLIST-riscv-mm-Unconditionally-sfence.vma-for-spu.patch +0328-FROMLIST-dt-bindings-phy-spacemit-k3-add-USB2-PHY-su.patch +0329-FROMLIST-phy-k1-usb-k3-add-USB2-PHY-support.patch +0330-FROMLIST-cpufreq-dt-platdev-Add-SpacemiT-K1-SoC-to-t.patch +0331-FROMLIST-riscv-dts-spacemit-Add-cpu-scaling-for-K1-S.patch +0332-FROMLIST-riscv-mm-Define-DIRECT_MAP_PHYSMEM_END.patch +0333-FROMLIST-drm-verisilicon-add-max-cursor-size-to-HWDB.patch +0334-FROMLIST-drm-verisilicon-add-support-for-cursor-plan.patch +0335-FROMLIST-riscv-add-UltraRISC-SoC-family-Kconfig-supp.patch +0336-FROMLIST-dt-bindings-PCI-Add-UltraRISC-DP1000-PCIe-c.patch +0337-FROMLIST-PCI-ultrarisc-Add-UltraRISC-DP1000-PCIe-Roo.patch +0338-FROMLIST-serial-8250_dwlib-move-DesignWare-register-.patch +0339-FROMLIST-serial-8250_dw-build-Renesas-RZN1-CPR-value.patch +0340-FROMLIST-dt-bindings-serial-snps-dw-apb-uart-Add-Ult.patch +0341-FROMLIST-serial-8250_dw-Use-a-fixed-CPR-value-for-Ul.patch +0342-FROMLIST-riscv-disable-local-interrupts-and-stop-oth.patch +0343-FROMLIST-drm-bridge-th1520-dw-hdmi-Fix-error-check-o.patch +0344-FROMLIST-drm-bridge-th1520-dw-hdmi-Fix-remove-callba.patch +0345-FROMLIST-riscv-dts-spacemit-Enable-i2c8-adapter-for-.patch +0346-FROMLIST-riscv-dts-spacemit-Define-the-P1-PMIC-regul.patch +0347-FROMLIST-riscv-dts-spacemit-Enable-USB3.0-PCIe-on-Or.patch +0348-FROMLIST-dt-bindings-dmaengine-Add-SpacemiT-K3-DMA-c.patch +0349-FROMLIST-dmaengine-mmp_pdma-refactor-DRCMR-access-wi.patch +0350-FROMLIST-dmaengine-mmp_pdma-add-SpacemiT-K3-support.patch +0351-FROMLIST-riscv-dts-spacemit-Add-PDMA-controller-node.patch +0352-FROMLIST-dt-bindings-pci-sophgo-Add-dma-coherent-pro.patch +0353-FROMLIST-riscv-dts-sophgo-Add-dma-coherent-to-SG2042.patch +0354-FROMLIST-riscv-mm-fix-SWIOTLB-initialization-for-sys.patch +0355-FROMLIST-riscv-dts-spacemit-k1-bananapi-f3-Add-vcc5v.patch +0356-FROMLIST-riscv-dts-spacemit-k1-bananapi-f3-Update-US.patch +0357-FROMLIST-riscv-dts-spacemit-k1-bananapi-f3-Correct-U.patch +0358-FROMLIST-riscv-dts-sophgo-sg2044-use-hex-for-CPU-uni.patch +0359-FROMLIST-riscv-dts-sophgo-sg2042-use-hex-for-CPU-uni.patch +0360-FROMLIST-riscv-Fix-fast_unaligned_access_speed_key-n.patch +0361-FROMLIST-riscv-dts-sophgo-reduce-SG2042-MSI-count-to.patch +0362-FROMLIST-dt-bindings-pwm-marvell-pxa-pwm-Add-Spacemi.patch +0363-FROMLIST-pwm-pxa-Add-optional-bus-clock.patch +0364-FROMLIST-riscv-ftrace-select-HAVE_BUILDTIME_MCOUNT_S.patch +0365-FROMLIST-riscv-dts-spacemit-enable-USB3-on-OrangePi-.patch +0366-FROMLIST-dts-riscv-spacemit-correct-32k-clock-freque.patch +0367-FROMLIST-ASoC-dt-bindings-add-SpacemiT-K3-SoC-compat.patch +0368-FROMLIST-ASoC-spacemit-add-K3-SoC-support-with-addit.patch +0369-FROMLIST-ASoC-soc-dai-add-shared-BCLK-clock-for-cros.patch +0370-FROMLIST-ASoC-soc-pcm-constrain-hw_params-when-DAIs-.patch +0371-FROMLIST-ASoC-spacemit-declare-shared-BCLK-for-cross.patch +0372-FROMLIST-spi-spacemit-add-u64-cast-to-NSEC_PER_SEC-t.patch +0373-FROMLIST-dt-bindings-clock-thead-add-TH1520-MISC-sub.patch +0374-FROMLIST-clk-thead-th1520-ap-add-support-for-MISC-su.patch +0375-FROMLIST-riscv-dts-thead-add-device-tree-node-for-MI.patch +0376-FROMLIST-dt-bindings-phy-add-binding-for-T-Head-TH15.patch +0377-FROMLIST-phy-add-a-driver-for-T-Head-TH1520-USB-PHY.patch +0378-FROMLIST-riscv-dts-thead-add-device-nodes-for-USB.patch +0379-FROMLIST-dt-bindings-gpio-dwapb-allow-GPIO-hogs.patch +0380-FROMLIST-dt-bindings-usb-vialab-vl817-allow-ports-pr.patch +0381-FROMLIST-riscv-dts-thead-lpi4a-sort-nodes.patch +0382-FROMLIST-riscv-dts-thead-Add-TH1520-I2C-nodes.patch +0383-FROMLIST-riscv-dts-thead-Add-Lichee-Pi-4A-IO-expansi.patch +0384-FROMLIST-riscv-dts-thead-enable-USB3-ports-on-Lichee.patch +0385-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-add-PMIC-a.patch +0386-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-add-24c04-.patch +0387-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-enable-QSP.patch +0388-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-enable-USB.patch +0389-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-enable-PCI.patch +0390-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-set-defaul.patch +0391-FROMLIST-riscv-dts-spacemit-k3-Add-pwm-support.patch +0392-FROMLIST-riscv-use-sysfs_emit-in-cpu_show_ghostwrite.patch +0393-FROMLIST-clk-spacemit-k3-Switch-to-pll2_d6-as-parent.patch +0394-FROMLIST-clk-spacemit-k3-Fix-PCIe-clock-register-off.patch +0395-FROMLIST-dt-bindings-soc-spacemit-k3-Add-PCIe-DBI-cl.patch +0396-FROMLIST-clk-spacemit-k3-Add-PCIe-DBI-clock.patch +0397-FROMLIST-riscv-dts-spacemit-enable-eMMC-for-OrangePi.patch +0398-FROMLIST-i2c-spacemit-configure-ILCR-IWCR-for-accura.patch +0399-FROMLIST-i2c-spacemit-drop-warning-when-clock-freque.patch +0400-FROMLIST-dt-bindings-mmc-spacemit-sdhci-add-pinctrl-.patch +0401-FROMLIST-mmc-sdhci-of-k1-enable-essential-clock-infr.patch +0402-FROMLIST-mmc-sdhci-of-k1-add-regulator-and-pinctrl-v.patch +0403-FROMLIST-mmc-sdhci-of-k1-add-comprehensive-SDR-tunin.patch +0404-FROMLIST-riscv-dts-spacemit-k1-add-SD-card-controlle.patch +0405-FROMLIST-riscv-dts-spacemit-k1-orangepi-rv2-add-SD-c.patch +0406-FROMLIST-riscv-dts-spacemit-k1-bananapi-f3-add-SD-ca.patch +0407-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-add-SD-car.patch +0408-FROMLIST-riscv-dts-thead-Enable-wifi-on-the-BeagleV-.patch +0409-FROMLIST-riscv-module-Use-generic-cmp_int-instead-of.patch +0410-FROMLIST-riscv-propagate-insert_resource-result-from.patch +0411-FROMLIST-PCI-spacemit-k1-Add-device-data-support.patch +0412-FROMLIST-PCI-spacemit-k1-Add-multiple-PHY-handles-su.patch +0413-FROMLIST-dt-bindings-PCI-snps-dw-pcie-Add-msi-parent.patch +0414-FROMLIST-dt-bindings-PCI-spacemit-Introduce-Spacemit.patch +0415-FROMLIST-PCI-spacemit-k1-Add-Spacemit-K3-PCIe-host-c.patch +0416-FROMLIST-riscv-dts-spacemit-enable-QSPI-for-OrangePi.patch +0417-FROMLIST-clk-spacemit-k3-fix-USB2-bus-clock.patch +0418-FROMLIST-reset-spacemit-k3-fix-USB2-ahb-reset.patch +0419-FROMLIST-dts-riscv-spacemit-k3-Fix-I-O-power-setting.patch +0420-FROMLIST-riscv-dts-spacemit-set-console-baud-rate-on.patch +0421-FROMLIST-riscv-dts-spacemit-sort-aliases-on-Milk-V-J.patch +0422-FROMLIST-riscv-dts-spacemit-enable-eMMC-on-Milk-V-Ju.patch +0423-FROMLIST-riscv-dts-spacemit-enable-SD-card-support-o.patch +0424-FROMLIST-riscv-dts-spacemit-fix-uboot-partition-offs.patch +0425-FROMLIST-riscv-dts-spacemit-add-QSPI-support-for-K3-.patch +0426-FROMLIST-pinctrl-spacemit-fix-NULL-check-in-spacemit.patch +0427-FROMLIST-riscv-unconditionally-select-ARCH_KEEP_MEMB.patch +0428-FROMLIST-riscv-kexec_file-Constrain-segment-placemen.patch +0429-FROMLIST-dt-bindings-riscv-spacemit-Add-K3-CoM260-IF.patch +0430-FROMLIST-riscv-dts-spacemit-k3-Initial-support-for-C.patch +0431-FROMLIST-riscv-dts-spacemit-enable-PMIC-on-OrangePi-.patch +0432-FROMLIST-riscv-dts-spacemit-set-console-baud-rate-on.patch +0433-FROMLIST-riscv-mm-Call-mark_new_valid_map-after-hotp.patch +0434-FROMLIST-riscv-dts-spacemit-k3-Add-Ziccrse-extension.patch +0435-FROMLIST-RISC-V-KVM-Enhance-the-logging-check-for-mm.patch +0436-FROMLIST-riscv-dts-spacemit-enable-PCIe-on-OrangePi-.patch +0437-FROMLIST-iommu-riscv-Add-dependency-between-iommu-an.patch +0438-XUANTIE-riscv-dts-th1520-add-licheepi4a-16g-support.patch +0439-REVYOS-riscv-dts-th1520-rename-thead-to-xuantie.patch +0440-REVYOS-riscv-dts-th1520-add-xuantie-th1520-mbox-r.patch +0441-SOPHGO-dt-bindings-nvmem-Add-SG2044-eFuse-controller.patch +0442-SOPHGO-nvmem-Add-Sophgo-SG2044-eFuse-driver.patch +0443-SOPHGO-riscv-dts-sophgo-sg2044-Add-eFUSE-device.patch +0444-SOPHGO-dts-sg2044-Modify-pcie-bar-address.patch +0445-SOPHGO-riscv-sg2042-errata-Replace-thead-cache-clean.patch +0446-REVYSR-dt-bindings-net-ultrarisc-dp1000-gmac-Add-sup.patch +0447-REVYSR-net-stmmac-add-support-for-dwmac-5.10a.patch +0448-RVCK-riscv-dts-add-dp1000.dts-for-UltraRIsc-DP1000-S.patch +0449-RVCK-pinctrl-add-pinctrl-dirver-for-UltraRisc-DP1000.patch +0450-RVCK-dts-add-pinctrl-dtsi-dts-for-UltraRisc-DP1000.patch +0451-RVCK-riscv-dp1000-dts-add-the-dts-of-UltraRISC-dp100.patch +0452-RVCK-riscv-dp1000-dts-Move-mmc0-node-from-SoC-to-boa.patch +0453-RVCK-riscv-dp1000-plic-add-plic-early-init-supports.patch +0454-RVCK-riscv-dp1000-dts-Move-chosen-node-from-common-t.patch +0455-RVCK-dts-riscv-ultrarisc-Refactor-DP1000-device-tree.patch +0456-RVCK-riscv-pinctrl-ultrarisc-Implement-pin-configura.patch +0457-RVCK-riscv-dts-dp1000-add-dts-dtsi-for-Milk-V-Titan-.patch +0458-REVYSR-pinctrl-ultrarisc-cleanup-probe-remove.patch +0459-REVYSR-riscv-dp1000-dts-use-ultrarisc-dp1000-pcie-fo.patch +0460-ULTRARISC-hwmon-add-corepvt-driver-of-UltraRISC-DP10.patch +0461-RUYI-SYNC-riscv-dts-dp1000-Update-dp1000.dtsi.patch +0462-RUYI-riscv-dts-spacemit-k3-Add-USB2.0-support.patch +0463-SPACEMIT-riscv-uaccess-don-t-use-vector-if-buffer-is.patch +0464-RUYI-dt-bindings-phy-Add-Spacemit-K3-USB3-PCIe-comb-.patch +0465-RUYI-phy-spacemit-Add-USB3-PCIe-comb-PHY-driver-for-.patch +0466-RUYI-riscv-dts-spacemit-k3-add-USB-controller-and-US.patch +0467-RUYI-riscv-dts-spacemit-k3-Add-PCIe-device-node.patch +0468-RUYI-PCI-add-SpacemiT-vendor-id-and-its-K3-device-id.patch +0469-RUYI-wifi-rtw89-pci-add-SpacemiT-K3-to-36-bit-DMA-al.patch +0470-RUYI-drm-amdgpu-disable-dynamic-PCIe-speed-switch-on.patch +0471-RVCK-driver-clk-k3-keep-some-system-based-clock-alwa.patch +0472-RUYI-mmc-sdhci-of-dwcmshc-Add-support-for-SG2042-FPG.patch From 74d15e671926d68375aad2ca31f1b540c23dd983 Mon Sep 17 00:00:00 2001 From: Han Gao Date: Sat, 6 Jun 2026 01:02:40 +0800 Subject: [PATCH 3/3] SPECS: linux-lts-kmhv2: Bump to 6.18.34 & refresh patchset Signed-off-by: Han Gao --- ...m-ttm-add-pgprot-handling-for-RISC-V.patch | 4 +- ...1-XIANGSHAN-Flush-all-tlb-in-set_pte.patch | 4 +- ...ophgo-dts-add-PCIe-controllers-for-S.patch | 6 +- .../0002-XIANGSHAN-Add-two-sbi-calls.patch | 4 +- ...ophgo-dts-enable-PCIe-for-PioneerBox.patch | 5 +- ...orkaround-to-retry-when-access-fault.patch | 4 +- ...ophgo-dts-enable-PCIe-for-SG2042_EVB.patch | 4 +- ...ophgo-dts-enable-PCIe-for-SG2042_EVB.patch | 4 +- ...ts-sophgo-Add-SPI-NOR-node-for-SG204.patch | 4 +- ...ts-sophgo-Enable-SPI-NOR-node-for-Pi.patch | 4 +- ...ts-sophgo-Enable-SPI-NOR-node-for-SG.patch | 4 +- ...ts-sophgo-Enable-SPI-NOR-node-for-SG.patch | 4 +- ...ings-net-sophgo-sg2044-dwmac-add-phy.patch | 6 +- ...ndor-events-riscv-add-T-HEAD-C920V2-.patch | 4 +- ...cros-Add-support-for-imports_ns-to-m.patch | 6 +- ...ort-pwmchip_release-for-external-use.patch | 5 +- ...m-Add-Kconfig-and-basic-data-structu.patch | 4 +- ...t-pwm-Add-complete-abstraction-layer.patch | 4 +- ...m-Add-module_pwm_platform_driver-mac.patch | 4 +- ...m-Drop-wrapping-of-PWM-polarity-and-.patch | 6 +- ...M-rust-pwm-Fix-broken-intra-doc-link.patch | 4 +- ...dd-Rust-driver-for-T-HEAD-TH1520-SoC.patch | 4 +- ...ings-pwm-thead-Add-T-HEAD-TH1520-PWM.patch | 6 +- ...021-UPSTREAM-pwm-Fix-Rust-formatting.patch | 4 +- ...520-Fix-clippy-warning-for-redundant.patch | 6 +- ...520-Use-module_pwm_platform_driver-m.patch | 6 +- ...520-Fix-missing-Kconfig-dependencies.patch | 5 +- ...ts-thead-add-xtheadvector-to-the-th1.patch | 4 +- ...scv-dts-thead-add-ziccrse-for-th1520.patch | 4 +- ...M-riscv-dts-thead-add-zfh-for-th1520.patch | 4 +- ...cv-dts-thead-Add-PWM-controller-node.patch | 4 +- ...ts-thead-Add-PWM-fan-and-thermal-con.patch | 4 +- ...ndings-vendor-prefixes-Add-UltraRISC.patch | 4 +- ...ings-interrupt-controller-Add-UltraR.patch | 4 +- ...-sifive-plic-Cache-the-interrupt-ena.patch | 4 +- ...-sifive-plic-Add-support-for-UltraRI.patch | 6 +- ...pu_ops_sbi-smp_processor_id-returns-.patch | 6 +- ...bindings-fsl-qspi-support-SpacemiT-K.patch | 6 +- ...bindings-fsl-qspi-add-optional-reset.patch | 4 +- ...-fsl-qspi-add-optional-reset-support.patch | 4 +- ...i-fsl-qspi-switch-predicates-to-bool.patch | 4 +- ...i-fsl-qspi-add-a-clock-disable-quirk.patch | 4 +- ...-qspi-introduce-sfa_size-devtype-dat.patch | 5 +- ...fsl-qspi-support-the-SpacemiT-K1-SoC.patch | 4 +- ...ings-pci-spacemit-Introduce-PCIe-hos.patch | 4 +- ...acemit-Add-SpacemiT-PCIe-host-driver.patch | 5 +- ...-bindings-Add-bindings-for-SpacemiT-.patch | 6 +- ...-spacemit-add-i2s-support-for-K1-SoC.patch | 4 +- ...ts-spacemit-add-UART-pinctrl-combina.patch | 4 +- ...dts-spacemit-enable-the-i2c8-adapter.patch | 5 +- ...dts-spacemit-define-fixed-regulators.patch | 5 +- ...ts-spacemit-define-regulator-constra.patch | 4 +- ...ts-spacemit-enable-the-i2c2-adapter-.patch | 6 +- ...ts-spacemit-add-24c02-eeprom-on-BPI-.patch | 4 +- ...ts-spacemit-add-i2c-aliases-on-BPI-F.patch | 4 +- ...ts-spacemit-add-Ethernet-and-PDMA-to.patch | 6 +- ...ts-spacemit-add-MusePi-Pro-board-dev.patch | 4 +- ...ts-spacemit-enable-K1-SoC-QSPI-on-BP.patch | 4 +- ...ts-spacemit-Add-OrangePi-R2S-board-d.patch | 6 +- ...riscv-dts-spacemit-reorder-i2c2-node.patch | 4 +- ...ts-spacemit-define-all-missing-I2C-c.patch | 6 +- ...cemit-MFD_SPACEMIT_P1-as-dependencie.patch | 5 +- ...ple-mfd-i2c-Remove-select-I2C_K1-fro.patch | 6 +- ...reset-spacemit-p1-add-driver-for-pow.patch | 4 +- ...emove-irqflags.h-inclusion-in-asm-bi.patch | 4 +- ...tomic.h-use-RISCV_FULL_BARRIER-in-_a.patch | 4 +- ...mb-buffers-Sanitize-output-on-errors.patch | 4 +- ...b-buffers-Provide-helper-to-set-pitc.patch | 6 +- ...REAM-drm-hypervdrm-Use-vblank-timer.patch} | 4 +- ...UPSTREAM-drm-vblank-Add-vblank-timer.patch | 533 --------------- ...Convert-the-boolean-no_64bit_msi-fl.patch} | 6 +- ...ank-Add-CRTC-helpers-for-simple-use-.patch | 174 ----- ...Check-the-device-specific-address-m.patch} | 4 +- ...m-vkms-Convert-to-DRM-s-vblank-timer.patch | 172 ----- ...on-Make-MSI-address-limit-based-on-.patch} | 4 +- ...-intel-Make-MSI-address-limit-based.patch} | 6 +- ...s-sophgo-enable-hardware-clock-RTC-.patch} | 4 +- ...s-sophgo-Move-PLIC-and-CLINT-node-i.patch} | 6 +- ...s-sophgo-fix-the-node-order-of-SG20.patch} | 4 +- ...s-spacemit-Enable-i2c8-adapter-for-.patch} | 6 +- ...s-spacemit-Define-fixed-regulators-.patch} | 6 +- ...s-spacemit-Define-the-P1-PMIC-regul.patch} | 4 +- ...ngs-phy-spacemit-Add-SpacemiT-PCIe-.patch} | 4 +- ...ngs-phy-spacemit-Introduce-PCIe-PHY.patch} | 5 +- ...y-spacemit-Introduce-PCIe-combo-PHY.patch} | 4 +- ...v-dts-spacemit-Add-a-PCIe-regulator.patch} | 4 +- ...s-spacemit-PCIe-and-PHY-related-upd.patch} | 4 +- ...ngs-i2c-spacemit-add-optional-reset.patch} | 4 +- ...3-UPSTREAM-i2c-k1-add-reset-support.patch} | 4 +- ...scv-dts-spacemit-add-reset-property.patch} | 4 +- ...ndings-phy-spacemit-add-K1-USB2-PHY.patch} | 4 +- ...emit-support-K1-USB2.0-PHY-controll.patch} | 4 +- ...s-spacemit-Add-USB2-PHY-node-for-K1.patch} | 5 +- ...s-spacemit-Add-DWC3-USB-3.0-control.patch} | 4 +- ...s-spacemit-Enable-USB3.0-on-BananaP.patch} | 4 +- ...ngs-pinctrl-spacemit-convert-drive-.patch} | 6 +- ...ngs-pinctrl-spacemit-add-K3-SoC-sup.patch} | 4 +- ...spacemit-k3-add-initial-pin-support.patch} | 5 +- ...spacemit-k3-adjust-drive-strength-a.patch} | 6 +- ...ngs-pinctrl-spacemit-add-syscon-pro.patch} | 4 +- ...spacemit-support-I-O-power-domain-c.patch} | 4 +- ...s-spacemit-pinctrl-update-register-.patch} | 6 +- ...ngs-riscv-update-ratified-version-o.patch} | 6 +- ...ngs-riscv-Add-B-ISA-extension-descr.patch} | 4 +- ...ngs-riscv-Add-descriptions-for-Za64.patch} | 4 +- ...ngs-riscv-Add-Ssccptr-Sscounterenw-.patch} | 6 +- ...ngs-riscv-Add-Sha-and-its-comprised.patch} | 6 +- ...s-sophgo-sg2044-Add-b-ISA-extension.patch} | 4 +- ...dts-spacemit-k1-Add-b-ISA-extension.patch} | 4 +- ...ngs-riscv-add-SpacemiT-X100-CPU-com.patch} | 4 +- ...indings-timer-add-SpacemiT-K3-CLINT.patch} | 4 +- ...ngs-interrupt-controller-add-Spacem.patch} | 4 +- ...ngs-interrupt-controller-add-Spacem.patch} | 4 +- ...ngs-riscv-spacemit-add-K3-and-Pico-.patch} | 4 +- ...s-spacemit-add-initial-support-for-.patch} | 6 +- ...s-spacemit-add-K3-Pico-ITX-board-su.patch} | 4 +- ...emit-Hide-common-clock-driver-from-.patch} | 6 +- ...-spacemit-prepare-common-ccu-header.patch} | 4 +- ...acemit-extract-common-ccu-functions.patch} | 4 +- ...emit-add-platform-SoC-prefix-to-res.patch} | 4 +- ...et-spacemit-fix-auxiliary-device-id.patch} | 4 +- ...ngs-soc-spacemit-k3-add-clock-suppo.patch} | 4 +- ...emit-ccu_mix-add-inverted-enable-ga.patch} | 4 +- ...pacemit-ccu_pll-add-plla-type-clock.patch} | 4 +- ...k-spacemit-k3-extract-common-header.patch} | 4 +- ...-clk-spacemit-k3-add-the-clock-tree.patch} | 4 +- ...ngs-soc-spacemit-Add-K3-reset-suppo.patch} | 4 +- ...eate-subdirectory-for-SpacemiT-driv.patch} | 4 +- ...acemit-Extract-common-K1-reset-code.patch} | 5 +- ...acemit-Add-SpacemiT-K3-reset-driver.patch} | 5 +- ...ngs-gpio-spacemit-add-compatible-na.patch} | 4 +- ...pacemit-Add-GPIO-support-for-K3-SoC.patch} | 4 +- ...s-spacemit-Disable-ETH-PHY-sleep-mo.patch} | 4 +- ...ngs-clock-thead-th1520-clk-ap-Add-I.patch} | 6 +- ...-thead-th1520-ap-Add-C910-bus-clock.patch} | 4 +- ...d-th1520-ap-Support-setting-PLL-rat.patch} | 4 +- ...d-th1520-ap-Add-macro-to-define-mul.patch} | 4 +- ...d-th1520-ap-Support-CPU-frequency-s.patch} | 6 +- ...emit-display-phy-driver-information.patch} | 5 +- ...cemit-k1-Use-PDR-for-pin-direction-.patch} | 6 +- ...fig-spacemit-add-COMMON_CLK-depende.patch} | 4 +- ...fig-Default-MFD_SPACEMIT_P1-to-m-if.patch} | 6 +- ...ts-spacemit-sdhci-add-reset-support.patch} | 5 +- ...sifive-plic-Fix-call-to-__plic_togg.patch} | 4 +- ...ngs-interrupt-controller-sifive-pli.patch} | 4 +- ...sifive-plic-Handle-number-of-hardwa.patch} | 6 +- ...Use-multiple-iATU-windows-for-mappi.patch} | 4 +- ...42-UPSTREAM-pinctrl-th1520-Fix-typo.patch} | 4 +- ...nce-Add-module-support-for-platform.patch} | 6 +- ...nce-Split-PCIe-controller-header-fi.patch} | 4 +- ...nce-Move-PCIe-RP-common-functions-t.patch} | 6 +- ...nce-Add-support-for-High-Perf-Archi.patch} | 4 +- ...ac-imx-use-phylink-s-interface-mode.patch} | 6 +- ...ac-s32-move-PHY_INTF_SEL_x-definiti.patch} | 4 +- ...ac-add-phy_intf_sel-and-ACTPHYIF-de.patch} | 4 +- ...-stmmac-add-stmmac_get_phy_intf_sel.patch} | 4 +- ...ac-add-support-for-configuring-the-.patch} | 6 +- ...mac-imx-convert-to-PHY_INTF_SEL_xxx.patch} | 5 +- ...ac-imx-use-FIELD_PREP-FIELD_GET-for.patch} | 6 +- ...mac-imx-use-stmmac_get_phy_intf_sel.patch} | 4 +- ...ac-imx-simplify-set_intf_mode-imple.patch} | 4 +- ...ac-imx-cleanup-arguments-for-set_in.patch} | 4 +- ...net-stmmac-imx-use-set_phy_intf_sel.patch} | 4 +- ...pci-Initialize-msi_addr_mask-for-OF.patch} | 4 +- ...I-Initialize-msi_addr_mask-for-OF-c.patch} | 4 +- ...core-Pass-context-data-to-callbacks.patch} | 14 +- ...riscv-aplic-Preserve-APLIC-states-a.patch} | 4 +- ...riscv-aplic-Do-not-clear-ACPI-depen.patch} | 4 +- ...riscv-aplic-Register-syscore-operat.patch} | 4 +- ...ngs-usb-add-missed-compatible-strin.patch} | 6 +- ...-Add-software-managed-properties-fo.patch} | 6 +- ...-dwc3-generic-plat-Add-layerscape-d.patch} | 6 +- ...ngs-usb-Add-ESWIN-EIC7700-USB-contr.patch} | 4 +- ...dwc3-eic7700-Add-EIC7700-USB-driver.patch} | 4 +- ...usb-add-disconnect-function-support.patch} | 5 +- ...I-Add-ASPEED-vendor-ID-to-pci_ids.h.patch} | 4 +- ...PCI_BRIDGE_NO_ALIAS-quirk-for-ASPEE.patch} | 6 +- ...iscv-patch-Avoid-early-phys_to_page.patch} | 4 +- ...Fail-dw_pcie_host_init-if-dw_pcie_w.patch} | 4 +- ...acemit-k3-Decouple-composite-reset-.patch} | 6 +- ...AM-rust-clk-implement-Send-and-Sync.patch} | 4 +- ...r-remove-impl-Send-Sync-for-TyrData.patch} | 4 +- ...EAM-pwm-th1520-fix-CLIPPY-1-warning.patch} | 4 +- ...20-remove-impl-Send-Sync-for-Th1520.patch} | 4 +- ...emit-Remove-unused-buff_addr-fields.patch} | 5 +- ...ngs-net-Add-support-for-Spacemit-K3.patch} | 6 +- ...ac-platform-Add-snps-dwmac-5.40a-IP.patch} | 6 +- ...ac-Add-glue-layer-for-Spacemit-K3-S.patch} | 4 +- ...ination-Improve-handling-of-unknown.patch} | 6 +- ...ination-Mark-FWCCB_CMD_UPDATE_STATS.patch} | 6 +- ...ination-Improve-firmware-power-off-.patch} | 4 +- ...ination-Skip-2nd-thread-DM-associat.patch} | 4 +- ...ination-Add-missing-rogue-context-r.patch} | 4 +- ...ination-Implement-handling-of-conte.patch} | 6 +- ...ngs-vendor-prefixes-add-verisilicon.patch} | 5 +- ...bindings-display-add-verisilicon-dc.patch} | 4 +- ...silicon-add-a-driver-for-Verisilico.patch} | 6 +- ...ngs-display-bridge-add-binding-for-.patch} | 6 +- ...ge-add-a-driver-for-T-Head-TH1520-H.patch} | 4 +- ...ngs-mfd-spacemit-p1-Add-individual-.patch} | 6 +- ...tor-spacemit-p1-Update-supply-names.patch} | 4 +- ...M-mmc-sdhci-of-k1-add-reset-support.patch} | 4 +- ...ngs-mmc-spacemit-sdhci-add-support-.patch} | 6 +- ...i-of-k1-spacemit-Add-support-for-K3.patch} | 6 +- ...nce-Add-flags-for-disabling-ASPM-ca.patch} | 4 +- ...42-Avoid-L0s-and-L1-on-Sophgo-2042-.patch} | 6 +- ...ngs-hwmon-moortec-mr75203-adapt-mul.patch} | 4 +- ...ination-Disable-interrupts-before-s.patch} | 4 +- ...s-thead-add-DPU-and-HDMI-device-tre.patch} | 4 +- ...-dts-thead-lichee-pi-4a-enable-HDMI.patch} | 5 +- ...s-thead-th1520-add-coefficients-to-.patch} | 6 +- ...s-thead-beaglev-ahead-enable-HDMI-o.patch} | 6 +- ...REAM-i2c-spacemit-move-i2c_xfer_msg.patch} | 4 +- ...M-i2c-spacemit-introduce-pio-for-k1.patch} | 4 +- ...spacemit-return-ENOTSUPP-for-unsupp.patch} | 4 +- ...cemit-k1-Add-set_config-callback-su.patch} | 4 +- ...s-spacemit-pcie-fix-missing-power-r.patch} | 6 +- ...s-spacemit-Update-PMIC-supply-prope.patch} | 4 +- ...s-spacemit-adapt-regulator-node-nam.patch} | 4 +- ...s-spacemit-Add-linux-pci-domain-to-.patch} | 6 +- ...ngs-serial-8250-spacemit-fix-clock-.patch} | 6 +- ...iscv-dts-spacemit-k3-add-clock-tree.patch} | 4 +- ...dts-spacemit-k3-add-pinctrl-support.patch} | 5 +- ...cv-dts-spacemit-k3-add-GPIO-support.patch} | 4 +- ...s-spacemit-k3-add-full-resource-to-.patch} | 6 +- ...ngs-usb-dwc3-spacemit-add-support-f.patch} | 6 +- ...-dwc3-generic-plat-spacemit-add-sup.patch} | 4 +- ...-Add-optional-VBUS-regulator-suppor.patch} | 6 +- ...s-spacemit-reorder-phy-nodes-for-K1.patch} | 5 +- ...s-spacemit-drop-incorrect-pinctrl-f.patch} | 6 +- ...s-spacemit-Add-ethernet-device-for-.patch} | 6 +- ...s-spacemit-add-LEDs-for-Milk-V-Jupi.patch} | 4 +- ...s-spacemit-add-24c04-eeprom-on-Milk.patch} | 4 +- ...s-spacemit-add-i2c-aliases-on-Milk-.patch} | 4 +- ...s-spacemit-enable-QSPI-and-add-SPI-.patch} | 6 +- ...s-spacemit-enable-USB-3-ports-on-Mi.patch} | 4 +- ...s-spacemit-enable-PCIe-ports-on-Mil.patch} | 4 +- ...ings-i2c-spacemit-k3-Add-compatible.patch} | 5 +- ...dts-riscv-spacemit-k3-Add-i2c-nodes.patch} | 4 +- ...v-spacemit-k3-add-P1-PMIC-regulator.patch} | 4 +- ...bol-Add-RISCV-case-in-get_plt_sizes.patch} | 5 +- ...Simplify-assignment-for-UTS_MACHINE.patch} | 4 +- ...crease-COMMAND_LINE_SIZE-value-to-2.patch} | 4 +- ...pi-update-FADT-revision-check-to-6..patch} | 5 +- ...-WARN_ON-for-bad-addresses-in-vmemm.patch} | 8 +- ...REAM-riscv-enable-HAVE_IOREMAP_PROT.patch} | 4 +- ...241-UPSTREAM-string-provide-strends.patch} | 4 +- ...ng_kunit-add-correctness-test-for-s.patch} | 4 +- ...ng_kunit-add-correctness-test-for-s.patch} | 4 +- ...ng_kunit-add-correctness-test-for-s.patch} | 4 +- ...ng_kunit-add-performance-benchmark-.patch} | 4 +- ...ng_kunit-extend-benchmarks-to-strnl.patch} | 4 +- ...iscv-lib-add-strnlen-implementation.patch} | 4 +- ...riscv-lib-add-strchr-implementation.patch} | 4 +- ...iscv-lib-add-strrchr-implementation.patch} | 4 +- ...Add-register-and-bitfield-definitio.patch} | 4 +- ...cemit-move-hw-constraints-from-hw_p.patch} | 4 +- ...cemit-adjust-FIFO-trigger-threshold.patch} | 6 +- ...ngs-reset-thead-th1520-reset-Remove.patch} | 6 +- ...ngs-reset-thead-th1520-reset-Add-co.patch} | 4 +- ...1520-Prepare-for-supporting-multipl.patch} | 6 +- ...1520-Support-reset-controllers-in-m.patch} | 4 +- ...s-thead-Add-reset-controllers-of-mo.patch} | 4 +- ...emit-k3-mark-top_dclk-as-CLK_IS_CRI.patch} | 4 +- ...cemit-fix-RX-DMA-params-not-set-whe.patch} | 6 +- ...AM-i2c-spacemit-drop-useless-spaces.patch} | 4 +- ...-pmc-undef-field_-get-prep-before-d.patch} | 4 +- ...at-undef-field_get-before-local-def.patch} | 6 +- ...1200-undef-field_get-before-local-d.patch} | 6 +- ...eed-undef-field_-get-prep-before-lo.patch} | 6 +- ...ad3530r-undef-field_prep-before-loc.patch} | 6 +- ...0614-undef-field_-get-prep-before-l.patch} | 4 +- ...ma35-undef-field_-get-prep-before-l.patch} | 4 +- ...sas-rz-sysc-undef-field_get-before-.patch} | 4 +- ...-audio-undef-field_-get-prep-before.patch} | 4 +- ...-Add-less-checking-__FIELD_-GET-PRE.patch} | 4 +- ...-Add-non-constant-field_-prep-get-h.patch} | 6 +- ...-Convert-to-common-field_-get-prep-.patch} | 4 +- ...at-convert-to-common-field_get-help.patch} | 4 +- ...1200-Convert-to-common-field_get-he.patch} | 4 +- ...eed-Convert-to-common-field_-get-pr.patch} | 4 +- ...Convert-to-common-field_prep-helper.patch} | 4 +- ...0614-Convert-to-common-field_-get-p.patch} | 4 +- ...ma35-Convert-to-common-field_-get-p.patch} | 4 +- ...sas-rz-sysc-Convert-to-common-field.patch} | 4 +- ...-audio-Convert-to-common-field_-get.patch} | 4 +- ...AM-clk-renesas-Use-bitfield-helpers.patch} | 4 +- ...AM-soc-renesas-Use-bitfield-helpers.patch} | 4 +- ...ngs-usb-Add-support-for-Terminus-FE.patch} | 4 +- ...-onboard_usb_dev-Add-Terminus-FE1.1.patch} | 4 +- ...fine-__riscv_copy_-vec_-words-bytes.patch} | 4 +- ...indings-fsl-qspi-support-SpacemiT-K.patch} | 6 +- ...VM-Fix-NULL-pointer-dereference-in-.patch} | 6 +- ...ings-mmc-sdhci-of-dwcmshc-Add-Eswin-.patch | 108 +++ ...ci-of-dwcmshc-Add-support-for-Eswin-.patch | 614 ++++++++++++++++++ ...m-Fixup-no5lvl-failure-when-vaddr-is.patch | 85 --- ...ci-of-dwcmshc-Fix-init-for-AXI-clock.patch | 45 ++ ...ci-of-dwcmshc-Fix-DMA-128MB-boundary.patch | 35 + ...ination-Count-paired-job-fence-as-de.patch | 4 +- ...ination-Fit-paired-fragment-job-in-t.patch | 6 +- ...ination-Skip-check-on-paired-job-fen.patch | 6 +- ...ination-Rename-pvr_queue_fence_is_uf.patch | 4 +- ...ination-Rename-fence-returned-by-pvr.patch | 4 +- ...ination-Move-repeated-job-fence-chec.patch | 6 +- ...ination-Update-check-to-skip-prepare.patch | 4 +- ...ination-Minor-improvements-to-job-su.patch | 4 +- ...cv-Fix-discarded-const-qualifier-in-.patch | 4 +- ...rrata-Add-ERRATA_THEAD_WRITE_ONCE-fi.patch | 4 +- ...-per-device-flag-to-disable-native-P.patch | 4 +- ...-quirk-to-disable-PCIe-port-services.patch | 6 +- ...ease-BAR0-of-an-integrated-bridge-to.patch | 6 +- ...T-drm-ttm-save-the-device-s-DMA-cohe.patch | 4 +- ...T-drm-ttm-downgrade-cached-to-write_.patch | 4 +- ...cv-dts-thead-Add-CPU-clock-and-OPP-t.patch | 6 +- ...port-BINDGEN_TARGET-from-a-separate-.patch | 6 +- ...nerate-a-fatal-error-if-BINDGEN_TARG.patch | 6 +- ...d-a-Kconfig-function-to-test-for-sup.patch | 4 +- ...handle-extension-configs-for-bindgen.patch | 6 +- ...ings-mmc-spacemit-sdhci-add-reset-su.patch | 4 +- ...ple-mfd-i2c-add-a-reboot-cell-for-th.patch | 6 +- ...or-spacemit-MFD_SPACEMIT_P1-as-depen.patch | 4 +- ...cemit-default-module-when-MFD_SPACEM.patch | 4 +- ...bindings-add-SpacemiT-K1-SPI-support.patch | 5 +- ...cemit-introduce-SpacemiT-K1-SPI-cont.patch | 4 +- ...ts-spacemit-define-a-SPI-controller-.patch | 6 +- ...ings-thermal-Add-SpacemiT-K1-thermal.patch | 6 +- ...-spacemit-k1-Add-thermal-sensor-supp.patch | 4 +- ...ts-spacemit-Add-thermal-sensor-for-K.patch | 6 +- ...cemit-Free-rings-of-memory-after-unm.patch | 4 +- ...mm-Extract-helper-mark_new_valid_map.patch | 5 +- ...fence-Call-mark_new_valid_map-for-kf.patch | 6 +- ...m-Rename-new_vmalloc-into-new_valid_.patch | 4 +- ...m-Use-the-bitmap-API-for-new_valid_m.patch | 4 +- ...m-Unconditionally-sfence.vma-for-spu.patch | 4 +- ...ings-phy-spacemit-k3-add-USB2-PHY-su.patch | 6 +- ...T-phy-k1-usb-k3-add-USB2-PHY-support.patch | 4 +- ...-dt-platdev-Add-SpacemiT-K1-SoC-to-t.patch | 4 +- ...ts-spacemit-Add-cpu-scaling-for-K1-S.patch | 6 +- ...scv-mm-Define-DIRECT_MAP_PHYSMEM_END.patch | 4 +- ...isilicon-add-max-cursor-size-to-HWDB.patch | 5 +- ...isilicon-add-support-for-cursor-plan.patch | 4 +- ...dd-UltraRISC-SoC-family-Kconfig-supp.patch | 4 +- ...ings-PCI-Add-UltraRISC-DP1000-PCIe-c.patch | 4 +- ...rarisc-Add-UltraRISC-DP1000-PCIe-Roo.patch | 6 +- ...8250_dwlib-move-DesignWare-register-.patch | 6 +- ...8250_dw-build-Renesas-RZN1-CPR-value.patch | 6 +- ...ings-serial-snps-dw-apb-uart-Add-Ult.patch | 4 +- ...8250_dw-Use-a-fixed-CPR-value-for-Ul.patch | 4 +- ...isable-local-interrupts-and-stop-oth.patch | 6 +- ...dge-th1520-dw-hdmi-Fix-error-check-o.patch | 6 +- ...dge-th1520-dw-hdmi-Fix-remove-callba.patch | 4 +- ...ts-spacemit-Enable-i2c8-adapter-for-.patch | 6 +- ...ts-spacemit-Define-the-P1-PMIC-regul.patch | 4 +- ...ts-spacemit-Enable-USB3.0-PCIe-on-Or.patch | 4 +- ...ings-dmaengine-Add-SpacemiT-K3-DMA-c.patch | 4 +- ...ne-mmp_pdma-refactor-DRCMR-access-wi.patch | 4 +- ...ine-mmp_pdma-add-SpacemiT-K3-support.patch | 5 +- ...ts-spacemit-Add-PDMA-controller-node.patch | 6 +- ...ings-pci-sophgo-Add-dma-coherent-pro.patch | 4 +- ...ts-sophgo-Add-dma-coherent-to-SG2042.patch | 6 +- ...m-fix-SWIOTLB-initialization-for-sys.patch | 4 +- ...ts-spacemit-k1-bananapi-f3-Add-vcc5v.patch | 4 +- ...ts-spacemit-k1-bananapi-f3-Update-US.patch | 6 +- ...ts-spacemit-k1-bananapi-f3-Correct-U.patch | 6 +- ...ts-sophgo-sg2044-use-hex-for-CPU-uni.patch | 4 +- ...ts-sophgo-sg2042-use-hex-for-CPU-uni.patch | 4 +- ...ix-fast_unaligned_access_speed_key-n.patch | 6 +- ...ts-sophgo-reduce-SG2042-MSI-count-to.patch | 6 +- ...ings-pwm-marvell-pxa-pwm-Add-Spacemi.patch | 4 +- ...MLIST-pwm-pxa-Add-optional-bus-clock.patch | 4 +- ...trace-select-HAVE_BUILDTIME_MCOUNT_S.patch | 4 +- ...ts-spacemit-enable-USB3-on-OrangePi-.patch | 6 +- ...cv-spacemit-correct-32k-clock-freque.patch | 4 +- ...-bindings-add-SpacemiT-K3-SoC-compat.patch | 4 +- ...acemit-add-K3-SoC-support-with-addit.patch | 4 +- ...c-dai-add-shared-BCLK-clock-for-cros.patch | 4 +- ...c-pcm-constrain-hw_params-when-DAIs-.patch | 6 +- ...acemit-declare-shared-BCLK-for-cross.patch | 4 +- ...cemit-add-u64-cast-to-NSEC_PER_SEC-t.patch | 6 +- ...ings-clock-thead-add-TH1520-MISC-sub.patch | 4 +- ...ad-th1520-ap-add-support-for-MISC-su.patch | 4 +- ...ts-thead-add-device-tree-node-for-MI.patch | 4 +- ...ings-phy-add-binding-for-T-Head-TH15.patch | 4 +- ...d-a-driver-for-T-Head-TH1520-USB-PHY.patch | 4 +- ...v-dts-thead-add-device-nodes-for-USB.patch | 4 +- ...-bindings-gpio-dwapb-allow-GPIO-hogs.patch | 4 +- ...ings-usb-vialab-vl817-allow-ports-pr.patch | 4 +- ...IST-riscv-dts-thead-lpi4a-sort-nodes.patch | 4 +- ...riscv-dts-thead-Add-TH1520-I2C-nodes.patch | 4 +- ...ts-thead-Add-Lichee-Pi-4A-IO-expansi.patch | 4 +- ...ts-thead-enable-USB3-ports-on-Lichee.patch | 6 +- ...ts-spacemit-k1-musepi-pro-add-PMIC-a.patch | 6 +- ...ts-spacemit-k1-musepi-pro-add-24c04-.patch | 6 +- ...ts-spacemit-k1-musepi-pro-enable-QSP.patch | 4 +- ...ts-spacemit-k1-musepi-pro-enable-USB.patch | 4 +- ...ts-spacemit-k1-musepi-pro-enable-PCI.patch | 4 +- ...ts-spacemit-k1-musepi-pro-set-defaul.patch | 4 +- ...iscv-dts-spacemit-k3-Add-pwm-support.patch | 4 +- ...se-sysfs_emit-in-cpu_show_ghostwrite.patch | 5 +- ...cemit-k3-Switch-to-pll2_d6-as-parent.patch | 6 +- ...cemit-k3-Fix-PCIe-clock-register-off.patch | 4 +- ...ings-soc-spacemit-k3-Add-PCIe-DBI-cl.patch | 6 +- ...T-clk-spacemit-k3-Add-PCIe-DBI-clock.patch | 4 +- ...ts-spacemit-enable-eMMC-for-OrangePi.patch | 6 +- ...cemit-configure-ILCR-IWCR-for-accura.patch | 4 +- ...cemit-drop-warning-when-clock-freque.patch | 4 +- ...ings-mmc-spacemit-sdhci-add-pinctrl-.patch | 6 +- ...ci-of-k1-enable-essential-clock-infr.patch | 4 +- ...ci-of-k1-add-regulator-and-pinctrl-v.patch | 4 +- ...ci-of-k1-add-comprehensive-SDR-tunin.patch | 6 +- ...ts-spacemit-k1-add-SD-card-controlle.patch | 4 +- ...ts-spacemit-k1-orangepi-rv2-add-SD-c.patch | 6 +- ...ts-spacemit-k1-bananapi-f3-add-SD-ca.patch | 6 +- ...ts-spacemit-k1-musepi-pro-add-SD-car.patch | 4 +- ...ts-thead-Enable-wifi-on-the-BeagleV-.patch | 4 +- ...odule-Use-generic-cmp_int-instead-of.patch | 6 +- ...ropagate-insert_resource-result-from.patch | 6 +- ...-spacemit-k1-Add-device-data-support.patch | 4 +- ...cemit-k1-Add-multiple-PHY-handles-su.patch | 4 +- ...ings-PCI-snps-dw-pcie-Add-msi-parent.patch | 6 +- ...ings-PCI-spacemit-Introduce-Spacemit.patch | 6 +- ...cemit-k1-Add-Spacemit-K3-PCIe-host-c.patch | 4 +- ...ts-spacemit-enable-QSPI-for-OrangePi.patch | 6 +- ...T-clk-spacemit-k3-fix-USB2-bus-clock.patch | 4 +- ...reset-spacemit-k3-fix-USB2-ahb-reset.patch | 4 +- ...cv-spacemit-k3-Fix-I-O-power-setting.patch | 4 +- ...ts-spacemit-set-console-baud-rate-on.patch | 6 +- ...ts-spacemit-sort-aliases-on-Milk-V-J.patch | 6 +- ...ts-spacemit-enable-eMMC-on-Milk-V-Ju.patch | 4 +- ...ts-spacemit-enable-SD-card-support-o.patch | 6 +- ...ts-spacemit-fix-uboot-partition-offs.patch | 4 +- ...ts-spacemit-add-QSPI-support-for-K3-.patch | 6 +- ...-spacemit-fix-NULL-check-in-spacemit.patch | 4 +- ...nconditionally-select-ARCH_KEEP_MEMB.patch | 4 +- ...exec_file-Constrain-segment-placemen.patch | 6 +- ...ings-riscv-spacemit-Add-K3-CoM260-IF.patch | 4 +- ...ts-spacemit-k3-Initial-support-for-C.patch | 6 +- ...ts-spacemit-enable-PMIC-on-OrangePi-.patch | 6 +- ...ts-spacemit-set-console-baud-rate-on.patch | 6 +- ...m-Call-mark_new_valid_map-after-hotp.patch | 4 +- ...ts-spacemit-k3-Add-Ziccrse-extension.patch | 99 +++ ...KVM-Enhance-the-logging-check-for-mm.patch | 52 ++ ...ts-spacemit-enable-PCIe-on-OrangePi-.patch | 75 +++ ...iscv-Add-dependency-between-iommu-an.patch | 105 +++ ...s-th1520-add-licheepi4a-16g-support.patch} | 5 +- ...-dts-th1520-rename-thead-to-xuantie.patch} | 4 +- ...ts-th1520-add-xuantie-th1520-mbox-r.patch} | 4 +- ...s-nvmem-Add-SG2044-eFuse-controller.patch} | 5 +- ...vmem-Add-Sophgo-SG2044-eFuse-driver.patch} | 4 +- ...-dts-sophgo-sg2044-Add-eFUSE-device.patch} | 4 +- ...-dts-sg2044-Modify-pcie-bar-address.patch} | 4 +- ...42-errata-Replace-thead-cache-clean.patch} | 6 +- ...s-net-ultrarisc-dp1000-gmac-Add-sup.patch} | 4 +- ...-stmmac-add-support-for-dwmac-5.10a.patch} | 4 +- ...d-dp1000.dts-for-UltraRIsc-DP1000-S.patch} | 5 +- ...pinctrl-dirver-for-UltraRisc-DP1000.patch} | 5 +- ...nctrl-dtsi-dts-for-UltraRisc-DP1000.patch} | 4 +- ...-dts-add-the-dts-of-UltraRISC-dp100.patch} | 4 +- ...-dts-Move-mmc0-node-from-SoC-to-boa.patch} | 4 +- ...0-plic-add-plic-early-init-supports.patch} | 5 +- ...-dts-Move-chosen-node-from-common-t.patch} | 6 +- ...trarisc-Refactor-DP1000-device-tree.patch} | 6 +- ...l-ultrarisc-Implement-pin-configura.patch} | 4 +- ...1000-add-dts-dtsi-for-Milk-V-Titan-.patch} | 6 +- ...ctrl-ultrarisc-cleanup-probe-remove.patch} | 4 +- ...00-dts-use-ultrarisc-dp1000-pcie-fo.patch} | 4 +- ...dd-corepvt-driver-of-UltraRISC-DP10.patch} | 5 +- ...riscv-dts-dp1000-Update-dp1000.dtsi.patch} | 4 +- ...-dts-spacemit-k3-Add-USB2.0-support.patch} | 6 +- ...ccess-don-t-use-vector-if-buffer-is.patch} | 6 +- ...phy-Add-Spacemit-K3-USB3-PCIe-comb-.patch} | 6 +- ...-Add-USB3-PCIe-comb-PHY-driver-for-.patch} | 6 +- ...acemit-k3-add-USB-controller-and-US.patch} | 8 +- ...ts-spacemit-k3-Add-PCIe-device-node.patch} | 6 +- ...emiT-vendor-id-and-its-K3-device-id.patch} | 6 +- ...ci-add-SpacemiT-K3-to-36-bit-DMA-al.patch} | 4 +- ...isable-dynamic-PCIe-speed-switch-on.patch} | 10 +- ...3-keep-some-system-based-clock-alwa.patch} | 4 +- ...-dwcmshc-Add-support-for-SG2042-FPG.patch} | 34 +- SPECS/linux-lts-kmhv2/linux-lts-kmhv2.spec | 477 +------------- SPECS/linux-lts-kmhv2/series | 475 ++++++++++++++ 481 files changed, 2715 insertions(+), 2576 deletions(-) rename SPECS/linux-lts-kmhv2/{0069-UPSTREAM-drm-hypervdrm-Use-vblank-timer.patch => 0066-UPSTREAM-drm-hypervdrm-Use-vblank-timer.patch} (94%) delete mode 100644 SPECS/linux-lts-kmhv2/0066-UPSTREAM-drm-vblank-Add-vblank-timer.patch rename SPECS/linux-lts-kmhv2/{0070-UPSTREAM-PCI-MSI-Convert-the-boolean-no_64bit_msi-fl.patch => 0067-UPSTREAM-PCI-MSI-Convert-the-boolean-no_64bit_msi-fl.patch} (97%) delete mode 100644 SPECS/linux-lts-kmhv2/0067-UPSTREAM-drm-vblank-Add-CRTC-helpers-for-simple-use-.patch rename SPECS/linux-lts-kmhv2/{0071-UPSTREAM-PCI-MSI-Check-the-device-specific-address-m.patch => 0068-UPSTREAM-PCI-MSI-Check-the-device-specific-address-m.patch} (92%) delete mode 100644 SPECS/linux-lts-kmhv2/0068-UPSTREAM-drm-vkms-Convert-to-DRM-s-vblank-timer.patch rename SPECS/linux-lts-kmhv2/{0072-UPSTREAM-drm-radeon-Make-MSI-address-limit-based-on-.patch => 0069-UPSTREAM-drm-radeon-Make-MSI-address-limit-based-on-.patch} (95%) rename SPECS/linux-lts-kmhv2/{0073-UPSTREAM-ALSA-hda-intel-Make-MSI-address-limit-based.patch => 0070-UPSTREAM-ALSA-hda-intel-Make-MSI-address-limit-based.patch} (93%) rename SPECS/linux-lts-kmhv2/{0074-UPSTREAM-riscv-dts-sophgo-enable-hardware-clock-RTC-.patch => 0071-UPSTREAM-riscv-dts-sophgo-enable-hardware-clock-RTC-.patch} (92%) rename SPECS/linux-lts-kmhv2/{0075-UPSTREAM-riscv-dts-sophgo-Move-PLIC-and-CLINT-node-i.patch => 0072-UPSTREAM-riscv-dts-sophgo-Move-PLIC-and-CLINT-node-i.patch} (99%) rename SPECS/linux-lts-kmhv2/{0076-UPSTREAM-riscv-dts-sophgo-fix-the-node-order-of-SG20.patch => 0073-UPSTREAM-riscv-dts-sophgo-fix-the-node-order-of-SG20.patch} (98%) rename SPECS/linux-lts-kmhv2/{0077-UPSTREAM-riscv-dts-spacemit-Enable-i2c8-adapter-for-.patch => 0074-UPSTREAM-riscv-dts-spacemit-Enable-i2c8-adapter-for-.patch} (87%) rename SPECS/linux-lts-kmhv2/{0078-UPSTREAM-riscv-dts-spacemit-Define-fixed-regulators-.patch => 0075-UPSTREAM-riscv-dts-spacemit-Define-fixed-regulators-.patch} (89%) rename SPECS/linux-lts-kmhv2/{0079-UPSTREAM-riscv-dts-spacemit-Define-the-P1-PMIC-regul.patch => 0076-UPSTREAM-riscv-dts-spacemit-Define-the-P1-PMIC-regul.patch} (96%) rename SPECS/linux-lts-kmhv2/{0080-UPSTREAM-dt-bindings-phy-spacemit-Add-SpacemiT-PCIe-.patch => 0077-UPSTREAM-dt-bindings-phy-spacemit-Add-SpacemiT-PCIe-.patch} (97%) rename SPECS/linux-lts-kmhv2/{0081-UPSTREAM-dt-bindings-phy-spacemit-Introduce-PCIe-PHY.patch => 0078-UPSTREAM-dt-bindings-phy-spacemit-Introduce-PCIe-PHY.patch} (95%) rename SPECS/linux-lts-kmhv2/{0082-UPSTREAM-phy-spacemit-Introduce-PCIe-combo-PHY.patch => 0079-UPSTREAM-phy-spacemit-Introduce-PCIe-combo-PHY.patch} (99%) rename SPECS/linux-lts-kmhv2/{0083-UPSTREAM-riscv-dts-spacemit-Add-a-PCIe-regulator.patch => 0080-UPSTREAM-riscv-dts-spacemit-Add-a-PCIe-regulator.patch} (90%) rename SPECS/linux-lts-kmhv2/{0084-UPSTREAM-riscv-dts-spacemit-PCIe-and-PHY-related-upd.patch => 0081-UPSTREAM-riscv-dts-spacemit-PCIe-and-PHY-related-upd.patch} (98%) rename SPECS/linux-lts-kmhv2/{0085-UPSTREAM-dt-bindings-i2c-spacemit-add-optional-reset.patch => 0082-UPSTREAM-dt-bindings-i2c-spacemit-add-optional-reset.patch} (89%) rename SPECS/linux-lts-kmhv2/{0086-UPSTREAM-i2c-k1-add-reset-support.patch => 0083-UPSTREAM-i2c-k1-add-reset-support.patch} (93%) rename SPECS/linux-lts-kmhv2/{0087-UPSTREAM-riscv-dts-spacemit-add-reset-property.patch => 0084-UPSTREAM-riscv-dts-spacemit-add-reset-property.patch} (94%) rename SPECS/linux-lts-kmhv2/{0088-UPSTREAM-dt-bindings-phy-spacemit-add-K1-USB2-PHY.patch => 0085-UPSTREAM-dt-bindings-phy-spacemit-add-K1-USB2-PHY.patch} (92%) rename SPECS/linux-lts-kmhv2/{0089-UPSTREAM-phy-spacemit-support-K1-USB2.0-PHY-controll.patch => 0086-UPSTREAM-phy-spacemit-support-K1-USB2.0-PHY-controll.patch} (98%) rename SPECS/linux-lts-kmhv2/{0090-UPSTREAM-riscv-dts-spacemit-Add-USB2-PHY-node-for-K1.patch => 0087-UPSTREAM-riscv-dts-spacemit-Add-USB2-PHY-node-for-K1.patch} (90%) rename SPECS/linux-lts-kmhv2/{0091-UPSTREAM-riscv-dts-spacemit-Add-DWC3-USB-3.0-control.patch => 0088-UPSTREAM-riscv-dts-spacemit-Add-DWC3-USB-3.0-control.patch} (93%) rename SPECS/linux-lts-kmhv2/{0092-UPSTREAM-riscv-dts-spacemit-Enable-USB3.0-on-BananaP.patch => 0089-UPSTREAM-riscv-dts-spacemit-Enable-USB3.0-on-BananaP.patch} (94%) rename SPECS/linux-lts-kmhv2/{0093-UPSTREAM-dt-bindings-pinctrl-spacemit-convert-drive-.patch => 0090-UPSTREAM-dt-bindings-pinctrl-spacemit-convert-drive-.patch} (90%) rename SPECS/linux-lts-kmhv2/{0094-UPSTREAM-dt-bindings-pinctrl-spacemit-add-K3-SoC-sup.patch => 0091-UPSTREAM-dt-bindings-pinctrl-spacemit-add-K3-SoC-sup.patch} (92%) rename SPECS/linux-lts-kmhv2/{0095-UPSTREAM-pinctrl-spacemit-k3-add-initial-pin-support.patch => 0092-UPSTREAM-pinctrl-spacemit-k3-add-initial-pin-support.patch} (99%) rename SPECS/linux-lts-kmhv2/{0096-UPSTREAM-pinctrl-spacemit-k3-adjust-drive-strength-a.patch => 0093-UPSTREAM-pinctrl-spacemit-k3-adjust-drive-strength-a.patch} (98%) rename SPECS/linux-lts-kmhv2/{0097-UPSTREAM-dt-bindings-pinctrl-spacemit-add-syscon-pro.patch => 0094-UPSTREAM-dt-bindings-pinctrl-spacemit-add-syscon-pro.patch} (92%) rename SPECS/linux-lts-kmhv2/{0098-UPSTREAM-pinctrl-spacemit-support-I-O-power-domain-c.patch => 0095-UPSTREAM-pinctrl-spacemit-support-I-O-power-domain-c.patch} (98%) rename SPECS/linux-lts-kmhv2/{0099-UPSTREAM-riscv-dts-spacemit-pinctrl-update-register-.patch => 0096-UPSTREAM-riscv-dts-spacemit-pinctrl-update-register-.patch} (91%) rename SPECS/linux-lts-kmhv2/{0100-UPSTREAM-dt-bindings-riscv-update-ratified-version-o.patch => 0097-UPSTREAM-dt-bindings-riscv-update-ratified-version-o.patch} (95%) rename SPECS/linux-lts-kmhv2/{0101-UPSTREAM-dt-bindings-riscv-Add-B-ISA-extension-descr.patch => 0098-UPSTREAM-dt-bindings-riscv-Add-B-ISA-extension-descr.patch} (95%) rename SPECS/linux-lts-kmhv2/{0102-UPSTREAM-dt-bindings-riscv-Add-descriptions-for-Za64.patch => 0099-UPSTREAM-dt-bindings-riscv-Add-descriptions-for-Za64.patch} (97%) rename SPECS/linux-lts-kmhv2/{0103-UPSTREAM-dt-bindings-riscv-Add-Ssccptr-Sscounterenw-.patch => 0100-UPSTREAM-dt-bindings-riscv-Add-Ssccptr-Sscounterenw-.patch} (95%) rename SPECS/linux-lts-kmhv2/{0104-UPSTREAM-dt-bindings-riscv-Add-Sha-and-its-comprised.patch => 0101-UPSTREAM-dt-bindings-riscv-Add-Sha-and-its-comprised.patch} (97%) rename SPECS/linux-lts-kmhv2/{0105-UPSTREAM-riscv-dts-sophgo-sg2044-Add-b-ISA-extension.patch => 0102-UPSTREAM-riscv-dts-sophgo-sg2044-Add-b-ISA-extension.patch} (99%) rename SPECS/linux-lts-kmhv2/{0106-UPSTREAM-riscv-dts-spacemit-k1-Add-b-ISA-extension.patch => 0103-UPSTREAM-riscv-dts-spacemit-k1-Add-b-ISA-extension.patch} (98%) rename SPECS/linux-lts-kmhv2/{0107-UPSTREAM-dt-bindings-riscv-add-SpacemiT-X100-CPU-com.patch => 0104-UPSTREAM-dt-bindings-riscv-add-SpacemiT-X100-CPU-com.patch} (92%) rename SPECS/linux-lts-kmhv2/{0108-UPSTREAM-dt-bindings-timer-add-SpacemiT-K3-CLINT.patch => 0105-UPSTREAM-dt-bindings-timer-add-SpacemiT-K3-CLINT.patch} (90%) rename SPECS/linux-lts-kmhv2/{0109-UPSTREAM-dt-bindings-interrupt-controller-add-Spacem.patch => 0106-UPSTREAM-dt-bindings-interrupt-controller-add-Spacem.patch} (89%) rename SPECS/linux-lts-kmhv2/{0110-UPSTREAM-dt-bindings-interrupt-controller-add-Spacem.patch => 0107-UPSTREAM-dt-bindings-interrupt-controller-add-Spacem.patch} (89%) rename SPECS/linux-lts-kmhv2/{0111-UPSTREAM-dt-bindings-riscv-spacemit-add-K3-and-Pico-.patch => 0108-UPSTREAM-dt-bindings-riscv-spacemit-add-K3-and-Pico-.patch} (91%) rename SPECS/linux-lts-kmhv2/{0112-UPSTREAM-riscv-dts-spacemit-add-initial-support-for-.patch => 0109-UPSTREAM-riscv-dts-spacemit-add-initial-support-for-.patch} (99%) rename SPECS/linux-lts-kmhv2/{0113-UPSTREAM-riscv-dts-spacemit-add-K3-Pico-ITX-board-su.patch => 0110-UPSTREAM-riscv-dts-spacemit-add-K3-Pico-ITX-board-su.patch} (93%) rename SPECS/linux-lts-kmhv2/{0114-UPSTREAM-clk-spacemit-Hide-common-clock-driver-from-.patch => 0111-UPSTREAM-clk-spacemit-Hide-common-clock-driver-from-.patch} (90%) rename SPECS/linux-lts-kmhv2/{0115-UPSTREAM-clk-spacemit-prepare-common-ccu-header.patch => 0112-UPSTREAM-clk-spacemit-prepare-common-ccu-header.patch} (94%) rename SPECS/linux-lts-kmhv2/{0116-UPSTREAM-clk-spacemit-extract-common-ccu-functions.patch => 0113-UPSTREAM-clk-spacemit-extract-common-ccu-functions.patch} (98%) rename SPECS/linux-lts-kmhv2/{0117-UPSTREAM-clk-spacemit-add-platform-SoC-prefix-to-res.patch => 0114-UPSTREAM-clk-spacemit-add-platform-SoC-prefix-to-res.patch} (94%) rename SPECS/linux-lts-kmhv2/{0118-UPSTREAM-reset-spacemit-fix-auxiliary-device-id.patch => 0115-UPSTREAM-reset-spacemit-fix-auxiliary-device-id.patch} (92%) rename SPECS/linux-lts-kmhv2/{0119-UPSTREAM-dt-bindings-soc-spacemit-k3-add-clock-suppo.patch => 0116-UPSTREAM-dt-bindings-soc-spacemit-k3-add-clock-suppo.patch} (99%) rename SPECS/linux-lts-kmhv2/{0120-UPSTREAM-clk-spacemit-ccu_mix-add-inverted-enable-ga.patch => 0117-UPSTREAM-clk-spacemit-ccu_mix-add-inverted-enable-ga.patch} (96%) rename SPECS/linux-lts-kmhv2/{0121-UPSTREAM-clk-spacemit-ccu_pll-add-plla-type-clock.patch => 0118-UPSTREAM-clk-spacemit-ccu_pll-add-plla-type-clock.patch} (98%) rename SPECS/linux-lts-kmhv2/{0122-UPSTREAM-clk-spacemit-k3-extract-common-header.patch => 0119-UPSTREAM-clk-spacemit-k3-extract-common-header.patch} (98%) rename SPECS/linux-lts-kmhv2/{0123-UPSTREAM-clk-spacemit-k3-add-the-clock-tree.patch => 0120-UPSTREAM-clk-spacemit-k3-add-the-clock-tree.patch} (99%) rename SPECS/linux-lts-kmhv2/{0124-UPSTREAM-dt-bindings-soc-spacemit-Add-K3-reset-suppo.patch => 0121-UPSTREAM-dt-bindings-soc-spacemit-Add-K3-reset-suppo.patch} (98%) rename SPECS/linux-lts-kmhv2/{0125-UPSTREAM-reset-Create-subdirectory-for-SpacemiT-driv.patch => 0122-UPSTREAM-reset-Create-subdirectory-for-SpacemiT-driv.patch} (97%) rename SPECS/linux-lts-kmhv2/{0126-UPSTREAM-reset-spacemit-Extract-common-K1-reset-code.patch => 0123-UPSTREAM-reset-spacemit-Extract-common-K1-reset-code.patch} (98%) rename SPECS/linux-lts-kmhv2/{0127-UPSTREAM-reset-spacemit-Add-SpacemiT-K3-reset-driver.patch => 0124-UPSTREAM-reset-spacemit-Add-SpacemiT-K3-reset-driver.patch} (99%) rename SPECS/linux-lts-kmhv2/{0128-UPSTREAM-dt-bindings-gpio-spacemit-add-compatible-na.patch => 0125-UPSTREAM-dt-bindings-gpio-spacemit-add-compatible-na.patch} (89%) rename SPECS/linux-lts-kmhv2/{0129-UPSTREAM-gpio-spacemit-Add-GPIO-support-for-K3-SoC.patch => 0126-UPSTREAM-gpio-spacemit-Add-GPIO-support-for-K3-SoC.patch} (98%) rename SPECS/linux-lts-kmhv2/{0130-UPSTREAM-riscv-dts-spacemit-Disable-ETH-PHY-sleep-mo.patch => 0127-UPSTREAM-riscv-dts-spacemit-Disable-ETH-PHY-sleep-mo.patch} (92%) rename SPECS/linux-lts-kmhv2/{0131-UPSTREAM-dt-bindings-clock-thead-th1520-clk-ap-Add-I.patch => 0128-UPSTREAM-dt-bindings-clock-thead-th1520-clk-ap-Add-I.patch} (85%) rename SPECS/linux-lts-kmhv2/{0132-UPSTREAM-clk-thead-th1520-ap-Add-C910-bus-clock.patch => 0129-UPSTREAM-clk-thead-th1520-ap-Add-C910-bus-clock.patch} (92%) rename SPECS/linux-lts-kmhv2/{0133-UPSTREAM-clk-thead-th1520-ap-Support-setting-PLL-rat.patch => 0130-UPSTREAM-clk-thead-th1520-ap-Support-setting-PLL-rat.patch} (98%) rename SPECS/linux-lts-kmhv2/{0134-UPSTREAM-clk-thead-th1520-ap-Add-macro-to-define-mul.patch => 0131-UPSTREAM-clk-thead-th1520-ap-Add-macro-to-define-mul.patch} (91%) rename SPECS/linux-lts-kmhv2/{0135-UPSTREAM-clk-thead-th1520-ap-Support-CPU-frequency-s.patch => 0132-UPSTREAM-clk-thead-th1520-ap-Support-CPU-frequency-s.patch} (97%) rename SPECS/linux-lts-kmhv2/{0136-UPSTREAM-net-spacemit-display-phy-driver-information.patch => 0133-UPSTREAM-net-spacemit-display-phy-driver-information.patch} (87%) rename SPECS/linux-lts-kmhv2/{0137-UPSTREAM-gpio-spacemit-k1-Use-PDR-for-pin-direction-.patch => 0134-UPSTREAM-gpio-spacemit-k1-Use-PDR-for-pin-direction-.patch} (95%) rename SPECS/linux-lts-kmhv2/{0138-UPSTREAM-phy-Kconfig-spacemit-add-COMMON_CLK-depende.patch => 0135-UPSTREAM-phy-Kconfig-spacemit-add-COMMON_CLK-depende.patch} (89%) rename SPECS/linux-lts-kmhv2/{0139-UPSTREAM-mfd-Kconfig-Default-MFD_SPACEMIT_P1-to-m-if.patch => 0136-UPSTREAM-mfd-Kconfig-Default-MFD_SPACEMIT_P1-to-m-if.patch} (86%) rename SPECS/linux-lts-kmhv2/{0140-UPSTREAM-riscv-dts-spacemit-sdhci-add-reset-support.patch => 0137-UPSTREAM-riscv-dts-spacemit-sdhci-add-reset-support.patch} (87%) rename SPECS/linux-lts-kmhv2/{0141-UPSTREAM-irqchip-sifive-plic-Fix-call-to-__plic_togg.patch => 0138-UPSTREAM-irqchip-sifive-plic-Fix-call-to-__plic_togg.patch} (93%) rename SPECS/linux-lts-kmhv2/{0142-UPSTREAM-dt-bindings-interrupt-controller-sifive-pli.patch => 0139-UPSTREAM-dt-bindings-interrupt-controller-sifive-pli.patch} (92%) rename SPECS/linux-lts-kmhv2/{0143-UPSTREAM-irqchip-sifive-plic-Handle-number-of-hardwa.patch => 0140-UPSTREAM-irqchip-sifive-plic-Handle-number-of-hardwa.patch} (97%) rename SPECS/linux-lts-kmhv2/{0144-UPSTREAM-PCI-dwc-Use-multiple-iATU-windows-for-mappi.patch => 0141-UPSTREAM-PCI-dwc-Use-multiple-iATU-windows-for-mappi.patch} (97%) rename SPECS/linux-lts-kmhv2/{0145-UPSTREAM-pinctrl-th1520-Fix-typo.patch => 0142-UPSTREAM-pinctrl-th1520-Fix-typo.patch} (91%) rename SPECS/linux-lts-kmhv2/{0146-UPSTREAM-PCI-cadence-Add-module-support-for-platform.patch => 0143-UPSTREAM-PCI-cadence-Add-module-support-for-platform.patch} (94%) rename SPECS/linux-lts-kmhv2/{0147-UPSTREAM-PCI-cadence-Split-PCIe-controller-header-fi.patch => 0144-UPSTREAM-PCI-cadence-Split-PCIe-controller-header-fi.patch} (99%) rename SPECS/linux-lts-kmhv2/{0148-UPSTREAM-PCI-cadence-Move-PCIe-RP-common-functions-t.patch => 0145-UPSTREAM-PCI-cadence-Move-PCIe-RP-common-functions-t.patch} (99%) rename SPECS/linux-lts-kmhv2/{0149-UPSTREAM-PCI-cadence-Add-support-for-High-Perf-Archi.patch => 0146-UPSTREAM-PCI-cadence-Add-support-for-High-Perf-Archi.patch} (99%) rename SPECS/linux-lts-kmhv2/{0150-UPSTREAM-net-stmmac-imx-use-phylink-s-interface-mode.patch => 0147-UPSTREAM-net-stmmac-imx-use-phylink-s-interface-mode.patch} (89%) rename SPECS/linux-lts-kmhv2/{0151-UPSTREAM-net-stmmac-s32-move-PHY_INTF_SEL_x-definiti.patch => 0148-UPSTREAM-net-stmmac-s32-move-PHY_INTF_SEL_x-definiti.patch} (93%) rename SPECS/linux-lts-kmhv2/{0152-UPSTREAM-net-stmmac-add-phy_intf_sel-and-ACTPHYIF-de.patch => 0149-UPSTREAM-net-stmmac-add-phy_intf_sel-and-ACTPHYIF-de.patch} (91%) rename SPECS/linux-lts-kmhv2/{0153-UPSTREAM-net-stmmac-add-stmmac_get_phy_intf_sel.patch => 0150-UPSTREAM-net-stmmac-add-stmmac_get_phy_intf_sel.patch} (94%) rename SPECS/linux-lts-kmhv2/{0154-UPSTREAM-net-stmmac-add-support-for-configuring-the-.patch => 0151-UPSTREAM-net-stmmac-add-support-for-configuring-the-.patch} (95%) rename SPECS/linux-lts-kmhv2/{0155-UPSTREAM-net-stmmac-imx-convert-to-PHY_INTF_SEL_xxx.patch => 0152-UPSTREAM-net-stmmac-imx-convert-to-PHY_INTF_SEL_xxx.patch} (95%) rename SPECS/linux-lts-kmhv2/{0156-UPSTREAM-net-stmmac-imx-use-FIELD_PREP-FIELD_GET-for.patch => 0153-UPSTREAM-net-stmmac-imx-use-FIELD_PREP-FIELD_GET-for.patch} (97%) rename SPECS/linux-lts-kmhv2/{0157-UPSTREAM-net-stmmac-imx-use-stmmac_get_phy_intf_sel.patch => 0154-UPSTREAM-net-stmmac-imx-use-stmmac_get_phy_intf_sel.patch} (97%) rename SPECS/linux-lts-kmhv2/{0158-UPSTREAM-net-stmmac-imx-simplify-set_intf_mode-imple.patch => 0155-UPSTREAM-net-stmmac-imx-simplify-set_intf_mode-imple.patch} (96%) rename SPECS/linux-lts-kmhv2/{0159-UPSTREAM-net-stmmac-imx-cleanup-arguments-for-set_in.patch => 0156-UPSTREAM-net-stmmac-imx-cleanup-arguments-for-set_in.patch} (95%) rename SPECS/linux-lts-kmhv2/{0160-UPSTREAM-net-stmmac-imx-use-set_phy_intf_sel.patch => 0157-UPSTREAM-net-stmmac-imx-use-set_phy_intf_sel.patch} (94%) rename SPECS/linux-lts-kmhv2/{0161-UPSTREAM-powerpc-pci-Initialize-msi_addr_mask-for-OF.patch => 0158-UPSTREAM-powerpc-pci-Initialize-msi_addr_mask-for-OF.patch} (94%) rename SPECS/linux-lts-kmhv2/{0162-UPSTREAM-sparc-PCI-Initialize-msi_addr_mask-for-OF-c.patch => 0159-UPSTREAM-sparc-PCI-Initialize-msi_addr_mask-for-OF-c.patch} (93%) rename SPECS/linux-lts-kmhv2/{0163-UPSTREAM-syscore-Pass-context-data-to-callbacks.patch => 0160-UPSTREAM-syscore-Pass-context-data-to-callbacks.patch} (99%) rename SPECS/linux-lts-kmhv2/{0164-UPSTREAM-irqchip-riscv-aplic-Preserve-APLIC-states-a.patch => 0161-UPSTREAM-irqchip-riscv-aplic-Preserve-APLIC-states-a.patch} (98%) rename SPECS/linux-lts-kmhv2/{0165-UPSTREAM-irqchip-riscv-aplic-Do-not-clear-ACPI-depen.patch => 0162-UPSTREAM-irqchip-riscv-aplic-Do-not-clear-ACPI-depen.patch} (93%) rename SPECS/linux-lts-kmhv2/{0166-UPSTREAM-irqchip-riscv-aplic-Register-syscore-operat.patch => 0163-UPSTREAM-irqchip-riscv-aplic-Register-syscore-operat.patch} (94%) rename SPECS/linux-lts-kmhv2/{0167-UPSTREAM-dt-bindings-usb-add-missed-compatible-strin.patch => 0164-UPSTREAM-dt-bindings-usb-add-missed-compatible-strin.patch} (93%) rename SPECS/linux-lts-kmhv2/{0168-UPSTREAM-usb-dwc3-Add-software-managed-properties-fo.patch => 0165-UPSTREAM-usb-dwc3-Add-software-managed-properties-fo.patch} (96%) rename SPECS/linux-lts-kmhv2/{0169-UPSTREAM-usb-dwc3-dwc3-generic-plat-Add-layerscape-d.patch => 0166-UPSTREAM-usb-dwc3-dwc3-generic-plat-Add-layerscape-d.patch} (93%) rename SPECS/linux-lts-kmhv2/{0170-UPSTREAM-dt-bindings-usb-Add-ESWIN-EIC7700-USB-contr.patch => 0167-UPSTREAM-dt-bindings-usb-Add-ESWIN-EIC7700-USB-contr.patch} (95%) rename SPECS/linux-lts-kmhv2/{0171-UPSTREAM-usb-dwc3-eic7700-Add-EIC7700-USB-driver.patch => 0168-UPSTREAM-usb-dwc3-eic7700-Add-EIC7700-USB-driver.patch} (97%) rename SPECS/linux-lts-kmhv2/{0172-UPSTREAM-phy-k1-usb-add-disconnect-function-support.patch => 0169-UPSTREAM-phy-k1-usb-add-disconnect-function-support.patch} (92%) rename SPECS/linux-lts-kmhv2/{0173-UPSTREAM-PCI-Add-ASPEED-vendor-ID-to-pci_ids.h.patch => 0170-UPSTREAM-PCI-Add-ASPEED-vendor-ID-to-pci_ids.h.patch} (92%) rename SPECS/linux-lts-kmhv2/{0174-UPSTREAM-PCI-Add-PCI_BRIDGE_NO_ALIAS-quirk-for-ASPEE.patch => 0171-UPSTREAM-PCI-Add-PCI_BRIDGE_NO_ALIAS-quirk-for-ASPEE.patch} (95%) rename SPECS/linux-lts-kmhv2/{0175-UPSTREAM-riscv-patch-Avoid-early-phys_to_page.patch => 0172-UPSTREAM-riscv-patch-Avoid-early-phys_to_page.patch} (95%) rename SPECS/linux-lts-kmhv2/{0176-UPSTREAM-PCI-dwc-Fail-dw_pcie_host_init-if-dw_pcie_w.patch => 0173-UPSTREAM-PCI-dwc-Fail-dw_pcie_host_init-if-dw_pcie_w.patch} (93%) rename SPECS/linux-lts-kmhv2/{0177-UPSTREAM-reset-spacemit-k3-Decouple-composite-reset-.patch => 0174-UPSTREAM-reset-spacemit-k3-Decouple-composite-reset-.patch} (98%) rename SPECS/linux-lts-kmhv2/{0178-UPSTREAM-rust-clk-implement-Send-and-Sync.patch => 0175-UPSTREAM-rust-clk-implement-Send-and-Sync.patch} (92%) rename SPECS/linux-lts-kmhv2/{0179-UPSTREAM-tyr-remove-impl-Send-Sync-for-TyrData.patch => 0176-UPSTREAM-tyr-remove-impl-Send-Sync-for-TyrData.patch} (93%) rename SPECS/linux-lts-kmhv2/{0180-UPSTREAM-pwm-th1520-fix-CLIPPY-1-warning.patch => 0177-UPSTREAM-pwm-th1520-fix-CLIPPY-1-warning.patch} (95%) rename SPECS/linux-lts-kmhv2/{0181-UPSTREAM-pwm-th1520-remove-impl-Send-Sync-for-Th1520.patch => 0178-UPSTREAM-pwm-th1520-remove-impl-Send-Sync-for-Th1520.patch} (93%) rename SPECS/linux-lts-kmhv2/{0182-UPSTREAM-net-spacemit-Remove-unused-buff_addr-fields.patch => 0179-UPSTREAM-net-spacemit-Remove-unused-buff_addr-fields.patch} (89%) rename SPECS/linux-lts-kmhv2/{0183-UPSTREAM-dt-bindings-net-Add-support-for-Spacemit-K3.patch => 0180-UPSTREAM-dt-bindings-net-Add-support-for-Spacemit-K3.patch} (96%) rename SPECS/linux-lts-kmhv2/{0184-UPSTREAM-net-stmmac-platform-Add-snps-dwmac-5.40a-IP.patch => 0181-UPSTREAM-net-stmmac-platform-Add-snps-dwmac-5.40a-IP.patch} (87%) rename SPECS/linux-lts-kmhv2/{0185-UPSTREAM-net-stmmac-Add-glue-layer-for-Spacemit-K3-S.patch => 0182-UPSTREAM-net-stmmac-Add-glue-layer-for-Spacemit-K3-S.patch} (98%) rename SPECS/linux-lts-kmhv2/{0186-UPSTREAM-drm-imagination-Improve-handling-of-unknown.patch => 0183-UPSTREAM-drm-imagination-Improve-handling-of-unknown.patch} (92%) rename SPECS/linux-lts-kmhv2/{0187-UPSTREAM-drm-imagination-Mark-FWCCB_CMD_UPDATE_STATS.patch => 0184-UPSTREAM-drm-imagination-Mark-FWCCB_CMD_UPDATE_STATS.patch} (90%) rename SPECS/linux-lts-kmhv2/{0188-UPSTREAM-drm-imagination-Improve-firmware-power-off-.patch => 0185-UPSTREAM-drm-imagination-Improve-firmware-power-off-.patch} (97%) rename SPECS/linux-lts-kmhv2/{0189-UPSTREAM-drm-imagination-Skip-2nd-thread-DM-associat.patch => 0186-UPSTREAM-drm-imagination-Skip-2nd-thread-DM-associat.patch} (93%) rename SPECS/linux-lts-kmhv2/{0190-UPSTREAM-drm-imagination-Add-missing-rogue-context-r.patch => 0187-UPSTREAM-drm-imagination-Add-missing-rogue-context-r.patch} (93%) rename SPECS/linux-lts-kmhv2/{0191-UPSTREAM-drm-imagination-Implement-handling-of-conte.patch => 0188-UPSTREAM-drm-imagination-Implement-handling-of-conte.patch} (97%) rename SPECS/linux-lts-kmhv2/{0192-UPSTREAM-dt-bindings-vendor-prefixes-add-verisilicon.patch => 0189-UPSTREAM-dt-bindings-vendor-prefixes-add-verisilicon.patch} (90%) rename SPECS/linux-lts-kmhv2/{0193-UPSTREAM-dt-bindings-display-add-verisilicon-dc.patch => 0190-UPSTREAM-dt-bindings-display-add-verisilicon-dc.patch} (96%) rename SPECS/linux-lts-kmhv2/{0194-UPSTREAM-drm-verisilicon-add-a-driver-for-Verisilico.patch => 0191-UPSTREAM-drm-verisilicon-add-a-driver-for-Verisilico.patch} (99%) rename SPECS/linux-lts-kmhv2/{0195-UPSTREAM-dt-bindings-display-bridge-add-binding-for-.patch => 0192-UPSTREAM-dt-bindings-display-bridge-add-binding-for-.patch} (95%) rename SPECS/linux-lts-kmhv2/{0196-UPSTREAM-drm-bridge-add-a-driver-for-T-Head-TH1520-H.patch => 0193-UPSTREAM-drm-bridge-add-a-driver-for-T-Head-TH1520-H.patch} (98%) rename SPECS/linux-lts-kmhv2/{0197-UPSTREAM-dt-bindings-mfd-spacemit-p1-Add-individual-.patch => 0194-UPSTREAM-dt-bindings-mfd-spacemit-p1-Add-individual-.patch} (94%) rename SPECS/linux-lts-kmhv2/{0198-UPSTREAM-regulator-spacemit-p1-Update-supply-names.patch => 0195-UPSTREAM-regulator-spacemit-p1-Update-supply-names.patch} (94%) rename SPECS/linux-lts-kmhv2/{0199-UPSTREAM-mmc-sdhci-of-k1-add-reset-support.patch => 0196-UPSTREAM-mmc-sdhci-of-k1-add-reset-support.patch} (93%) rename SPECS/linux-lts-kmhv2/{0200-UPSTREAM-dt-bindings-mmc-spacemit-sdhci-add-support-.patch => 0197-UPSTREAM-dt-bindings-mmc-spacemit-sdhci-add-support-.patch} (87%) rename SPECS/linux-lts-kmhv2/{0201-UPSTREAM-mmc-sdhci-of-k1-spacemit-Add-support-for-K3.patch => 0198-UPSTREAM-mmc-sdhci-of-k1-spacemit-Add-support-for-K3.patch} (93%) rename SPECS/linux-lts-kmhv2/{0202-UPSTREAM-PCI-cadence-Add-flags-for-disabling-ASPM-ca.patch => 0199-UPSTREAM-PCI-cadence-Add-flags-for-disabling-ASPM-ca.patch} (95%) rename SPECS/linux-lts-kmhv2/{0203-UPSTREAM-PCI-sg2042-Avoid-L0s-and-L1-on-Sophgo-2042-.patch => 0200-UPSTREAM-PCI-sg2042-Avoid-L0s-and-L1-on-Sophgo-2042-.patch} (91%) rename SPECS/linux-lts-kmhv2/{0204-UPSTREAM-dt-bindings-hwmon-moortec-mr75203-adapt-mul.patch => 0201-UPSTREAM-dt-bindings-hwmon-moortec-mr75203-adapt-mul.patch} (93%) rename SPECS/linux-lts-kmhv2/{0205-UPSTREAM-drm-imagination-Disable-interrupts-before-s.patch => 0202-UPSTREAM-drm-imagination-Disable-interrupts-before-s.patch} (95%) rename SPECS/linux-lts-kmhv2/{0206-UPSTREAM-riscv-dts-thead-add-DPU-and-HDMI-device-tre.patch => 0203-UPSTREAM-riscv-dts-thead-add-DPU-and-HDMI-device-tre.patch} (95%) rename SPECS/linux-lts-kmhv2/{0207-UPSTREAM-riscv-dts-thead-lichee-pi-4a-enable-HDMI.patch => 0204-UPSTREAM-riscv-dts-thead-lichee-pi-4a-enable-HDMI.patch} (92%) rename SPECS/linux-lts-kmhv2/{0208-UPSTREAM-riscv-dts-thead-th1520-add-coefficients-to-.patch => 0205-UPSTREAM-riscv-dts-thead-th1520-add-coefficients-to-.patch} (88%) rename SPECS/linux-lts-kmhv2/{0209-UPSTREAM-riscv-dts-thead-beaglev-ahead-enable-HDMI-o.patch => 0206-UPSTREAM-riscv-dts-thead-beaglev-ahead-enable-HDMI-o.patch} (90%) rename SPECS/linux-lts-kmhv2/{0210-UPSTREAM-i2c-spacemit-move-i2c_xfer_msg.patch => 0207-UPSTREAM-i2c-spacemit-move-i2c_xfer_msg.patch} (95%) rename SPECS/linux-lts-kmhv2/{0211-UPSTREAM-i2c-spacemit-introduce-pio-for-k1.patch => 0208-UPSTREAM-i2c-spacemit-introduce-pio-for-k1.patch} (99%) rename SPECS/linux-lts-kmhv2/{0212-UPSTREAM-pinctrl-spacemit-return-ENOTSUPP-for-unsupp.patch => 0209-UPSTREAM-pinctrl-spacemit-return-ENOTSUPP-for-unsupp.patch} (95%) rename SPECS/linux-lts-kmhv2/{0213-UPSTREAM-gpio-spacemit-k1-Add-set_config-callback-su.patch => 0210-UPSTREAM-gpio-spacemit-k1-Add-set_config-callback-su.patch} (90%) rename SPECS/linux-lts-kmhv2/{0214-UPSTREAM-riscv-dts-spacemit-pcie-fix-missing-power-r.patch => 0211-UPSTREAM-riscv-dts-spacemit-pcie-fix-missing-power-r.patch} (89%) rename SPECS/linux-lts-kmhv2/{0215-UPSTREAM-riscv-dts-spacemit-Update-PMIC-supply-prope.patch => 0212-UPSTREAM-riscv-dts-spacemit-Update-PMIC-supply-prope.patch} (94%) rename SPECS/linux-lts-kmhv2/{0216-UPSTREAM-riscv-dts-spacemit-adapt-regulator-node-nam.patch => 0213-UPSTREAM-riscv-dts-spacemit-adapt-regulator-node-nam.patch} (95%) rename SPECS/linux-lts-kmhv2/{0217-UPSTREAM-riscv-dts-spacemit-Add-linux-pci-domain-to-.patch => 0214-UPSTREAM-riscv-dts-spacemit-Add-linux-pci-domain-to-.patch} (92%) rename SPECS/linux-lts-kmhv2/{0218-UPSTREAM-dt-bindings-serial-8250-spacemit-fix-clock-.patch => 0215-UPSTREAM-dt-bindings-serial-8250-spacemit-fix-clock-.patch} (89%) rename SPECS/linux-lts-kmhv2/{0219-UPSTREAM-riscv-dts-spacemit-k3-add-clock-tree.patch => 0216-UPSTREAM-riscv-dts-spacemit-k3-add-clock-tree.patch} (96%) rename SPECS/linux-lts-kmhv2/{0220-UPSTREAM-riscv-dts-spacemit-k3-add-pinctrl-support.patch => 0217-UPSTREAM-riscv-dts-spacemit-k3-add-pinctrl-support.patch} (89%) rename SPECS/linux-lts-kmhv2/{0221-UPSTREAM-riscv-dts-spacemit-k3-add-GPIO-support.patch => 0218-UPSTREAM-riscv-dts-spacemit-k3-add-GPIO-support.patch} (91%) rename SPECS/linux-lts-kmhv2/{0222-UPSTREAM-riscv-dts-spacemit-k3-add-full-resource-to-.patch => 0219-UPSTREAM-riscv-dts-spacemit-k3-add-full-resource-to-.patch} (97%) rename SPECS/linux-lts-kmhv2/{0223-UPSTREAM-dt-bindings-usb-dwc3-spacemit-add-support-f.patch => 0220-UPSTREAM-dt-bindings-usb-dwc3-spacemit-add-support-f.patch} (92%) rename SPECS/linux-lts-kmhv2/{0224-UPSTREAM-usb-dwc3-dwc3-generic-plat-spacemit-add-sup.patch => 0221-UPSTREAM-usb-dwc3-dwc3-generic-plat-spacemit-add-sup.patch} (89%) rename SPECS/linux-lts-kmhv2/{0225-UPSTREAM-usb-dwc3-Add-optional-VBUS-regulator-suppor.patch => 0222-UPSTREAM-usb-dwc3-Add-optional-VBUS-regulator-suppor.patch} (94%) rename SPECS/linux-lts-kmhv2/{0226-UPSTREAM-riscv-dts-spacemit-reorder-phy-nodes-for-K1.patch => 0223-UPSTREAM-riscv-dts-spacemit-reorder-phy-nodes-for-K1.patch} (96%) rename SPECS/linux-lts-kmhv2/{0227-UPSTREAM-riscv-dts-spacemit-drop-incorrect-pinctrl-f.patch => 0224-UPSTREAM-riscv-dts-spacemit-drop-incorrect-pinctrl-f.patch} (89%) rename SPECS/linux-lts-kmhv2/{0228-UPSTREAM-riscv-dts-spacemit-Add-ethernet-device-for-.patch => 0225-UPSTREAM-riscv-dts-spacemit-Add-ethernet-device-for-.patch} (97%) rename SPECS/linux-lts-kmhv2/{0229-UPSTREAM-riscv-dts-spacemit-add-LEDs-for-Milk-V-Jupi.patch => 0226-UPSTREAM-riscv-dts-spacemit-add-LEDs-for-Milk-V-Jupi.patch} (92%) rename SPECS/linux-lts-kmhv2/{0230-UPSTREAM-riscv-dts-spacemit-add-24c04-eeprom-on-Milk.patch => 0227-UPSTREAM-riscv-dts-spacemit-add-24c04-eeprom-on-Milk.patch} (92%) rename SPECS/linux-lts-kmhv2/{0231-UPSTREAM-riscv-dts-spacemit-add-i2c-aliases-on-Milk-.patch => 0228-UPSTREAM-riscv-dts-spacemit-add-i2c-aliases-on-Milk-.patch} (89%) rename SPECS/linux-lts-kmhv2/{0232-UPSTREAM-riscv-dts-spacemit-enable-QSPI-and-add-SPI-.patch => 0229-UPSTREAM-riscv-dts-spacemit-enable-QSPI-and-add-SPI-.patch} (93%) rename SPECS/linux-lts-kmhv2/{0233-UPSTREAM-riscv-dts-spacemit-enable-USB-3-ports-on-Mi.patch => 0230-UPSTREAM-riscv-dts-spacemit-enable-USB-3-ports-on-Mi.patch} (95%) rename SPECS/linux-lts-kmhv2/{0234-UPSTREAM-riscv-dts-spacemit-enable-PCIe-ports-on-Mil.patch => 0231-UPSTREAM-riscv-dts-spacemit-enable-PCIe-ports-on-Mil.patch} (93%) rename SPECS/linux-lts-kmhv2/{0235-UPSTREAM-dt-bindings-i2c-spacemit-k3-Add-compatible.patch => 0232-UPSTREAM-dt-bindings-i2c-spacemit-k3-Add-compatible.patch} (89%) rename SPECS/linux-lts-kmhv2/{0236-UPSTREAM-dts-riscv-spacemit-k3-Add-i2c-nodes.patch => 0233-UPSTREAM-dts-riscv-spacemit-k3-Add-i2c-nodes.patch} (97%) rename SPECS/linux-lts-kmhv2/{0237-UPSTREAM-dts-riscv-spacemit-k3-add-P1-PMIC-regulator.patch => 0234-UPSTREAM-dts-riscv-spacemit-k3-add-P1-PMIC-regulator.patch} (97%) rename SPECS/linux-lts-kmhv2/{0238-UPSTREAM-perf-symbol-Add-RISCV-case-in-get_plt_sizes.patch => 0235-UPSTREAM-perf-symbol-Add-RISCV-case-in-get_plt_sizes.patch} (91%) rename SPECS/linux-lts-kmhv2/{0239-UPSTREAM-riscv-Simplify-assignment-for-UTS_MACHINE.patch => 0236-UPSTREAM-riscv-Simplify-assignment-for-UTS_MACHINE.patch} (91%) rename SPECS/linux-lts-kmhv2/{0240-UPSTREAM-riscv-increase-COMMAND_LINE_SIZE-value-to-2.patch => 0237-UPSTREAM-riscv-increase-COMMAND_LINE_SIZE-value-to-2.patch} (88%) rename SPECS/linux-lts-kmhv2/{0241-UPSTREAM-riscv-acpi-update-FADT-revision-check-to-6..patch => 0238-UPSTREAM-riscv-acpi-update-FADT-revision-check-to-6..patch} (93%) rename SPECS/linux-lts-kmhv2/{0242-UPSTREAM-riscv-mm-WARN_ON-for-bad-addresses-in-vmemm.patch => 0239-UPSTREAM-riscv-mm-WARN_ON-for-bad-addresses-in-vmemm.patch} (81%) rename SPECS/linux-lts-kmhv2/{0243-UPSTREAM-riscv-enable-HAVE_IOREMAP_PROT.patch => 0240-UPSTREAM-riscv-enable-HAVE_IOREMAP_PROT.patch} (93%) rename SPECS/linux-lts-kmhv2/{0244-UPSTREAM-string-provide-strends.patch => 0241-UPSTREAM-string-provide-strends.patch} (95%) rename SPECS/linux-lts-kmhv2/{0245-UPSTREAM-lib-string_kunit-add-correctness-test-for-s.patch => 0242-UPSTREAM-lib-string_kunit-add-correctness-test-for-s.patch} (95%) rename SPECS/linux-lts-kmhv2/{0246-UPSTREAM-lib-string_kunit-add-correctness-test-for-s.patch => 0243-UPSTREAM-lib-string_kunit-add-correctness-test-for-s.patch} (94%) rename SPECS/linux-lts-kmhv2/{0247-UPSTREAM-lib-string_kunit-add-correctness-test-for-s.patch => 0244-UPSTREAM-lib-string_kunit-add-correctness-test-for-s.patch} (93%) rename SPECS/linux-lts-kmhv2/{0248-UPSTREAM-lib-string_kunit-add-performance-benchmark-.patch => 0245-UPSTREAM-lib-string_kunit-add-performance-benchmark-.patch} (98%) rename SPECS/linux-lts-kmhv2/{0249-UPSTREAM-lib-string_kunit-extend-benchmarks-to-strnl.patch => 0246-UPSTREAM-lib-string_kunit-extend-benchmarks-to-strnl.patch} (93%) rename SPECS/linux-lts-kmhv2/{0250-UPSTREAM-riscv-lib-add-strnlen-implementation.patch => 0247-UPSTREAM-riscv-lib-add-strnlen-implementation.patch} (97%) rename SPECS/linux-lts-kmhv2/{0251-UPSTREAM-riscv-lib-add-strchr-implementation.patch => 0248-UPSTREAM-riscv-lib-add-strchr-implementation.patch} (96%) rename SPECS/linux-lts-kmhv2/{0252-UPSTREAM-riscv-lib-add-strrchr-implementation.patch => 0249-UPSTREAM-riscv-lib-add-strrchr-implementation.patch} (96%) rename SPECS/linux-lts-kmhv2/{0253-UPSTREAM-PCI-dwc-Add-register-and-bitfield-definitio.patch => 0250-UPSTREAM-PCI-dwc-Add-register-and-bitfield-definitio.patch} (92%) rename SPECS/linux-lts-kmhv2/{0254-UPSTREAM-ASoC-spacemit-move-hw-constraints-from-hw_p.patch => 0251-UPSTREAM-ASoC-spacemit-move-hw-constraints-from-hw_p.patch} (96%) rename SPECS/linux-lts-kmhv2/{0255-UPSTREAM-ASoC-spacemit-adjust-FIFO-trigger-threshold.patch => 0252-UPSTREAM-ASoC-spacemit-adjust-FIFO-trigger-threshold.patch} (89%) rename SPECS/linux-lts-kmhv2/{0256-UPSTREAM-dt-bindings-reset-thead-th1520-reset-Remove.patch => 0253-UPSTREAM-dt-bindings-reset-thead-th1520-reset-Remove.patch} (89%) rename SPECS/linux-lts-kmhv2/{0257-UPSTREAM-dt-bindings-reset-thead-th1520-reset-Add-co.patch => 0254-UPSTREAM-dt-bindings-reset-thead-th1520-reset-Add-co.patch} (98%) rename SPECS/linux-lts-kmhv2/{0258-UPSTREAM-reset-th1520-Prepare-for-supporting-multipl.patch => 0255-UPSTREAM-reset-th1520-Prepare-for-supporting-multipl.patch} (95%) rename SPECS/linux-lts-kmhv2/{0259-UPSTREAM-reset-th1520-Support-reset-controllers-in-m.patch => 0256-UPSTREAM-reset-th1520-Support-reset-controllers-in-m.patch} (99%) rename SPECS/linux-lts-kmhv2/{0260-UPSTREAM-riscv-dts-thead-Add-reset-controllers-of-mo.patch => 0257-UPSTREAM-riscv-dts-thead-Add-reset-controllers-of-mo.patch} (94%) rename SPECS/linux-lts-kmhv2/{0261-UPSTREAM-clk-spacemit-k3-mark-top_dclk-as-CLK_IS_CRI.patch => 0258-UPSTREAM-clk-spacemit-k3-mark-top_dclk-as-CLK_IS_CRI.patch} (90%) rename SPECS/linux-lts-kmhv2/{0262-UPSTREAM-ASoC-spacemit-fix-RX-DMA-params-not-set-whe.patch => 0259-UPSTREAM-ASoC-spacemit-fix-RX-DMA-params-not-set-whe.patch} (91%) rename SPECS/linux-lts-kmhv2/{0263-UPSTREAM-i2c-spacemit-drop-useless-spaces.patch => 0260-UPSTREAM-i2c-spacemit-drop-useless-spaces.patch} (91%) rename SPECS/linux-lts-kmhv2/{0264-UPSTREAM-clk-at91-pmc-undef-field_-get-prep-before-d.patch => 0261-UPSTREAM-clk-at91-pmc-undef-field_-get-prep-before-d.patch} (90%) rename SPECS/linux-lts-kmhv2/{0265-UPSTREAM-crypto-qat-undef-field_get-before-local-def.patch => 0262-UPSTREAM-crypto-qat-undef-field_get-before-local-def.patch} (89%) rename SPECS/linux-lts-kmhv2/{0266-UPSTREAM-EDAC-ie31200-undef-field_get-before-local-d.patch => 0263-UPSTREAM-EDAC-ie31200-undef-field_get-before-local-d.patch} (87%) rename SPECS/linux-lts-kmhv2/{0267-UPSTREAM-gpio-aspeed-undef-field_-get-prep-before-lo.patch => 0264-UPSTREAM-gpio-aspeed-undef-field_-get-prep-before-lo.patch} (88%) rename SPECS/linux-lts-kmhv2/{0268-UPSTREAM-iio-dac-ad3530r-undef-field_prep-before-loc.patch => 0265-UPSTREAM-iio-dac-ad3530r-undef-field_prep-before-loc.patch} (87%) rename SPECS/linux-lts-kmhv2/{0269-UPSTREAM-iio-mlx90614-undef-field_-get-prep-before-l.patch => 0266-UPSTREAM-iio-mlx90614-undef-field_-get-prep-before-l.patch} (90%) rename SPECS/linux-lts-kmhv2/{0270-UPSTREAM-pinctrl-ma35-undef-field_-get-prep-before-l.patch => 0267-UPSTREAM-pinctrl-ma35-undef-field_-get-prep-before-l.patch} (90%) rename SPECS/linux-lts-kmhv2/{0271-UPSTREAM-soc-renesas-rz-sysc-undef-field_get-before-.patch => 0268-UPSTREAM-soc-renesas-rz-sysc-undef-field_get-before-.patch} (88%) rename SPECS/linux-lts-kmhv2/{0272-UPSTREAM-ALSA-usb-audio-undef-field_-get-prep-before.patch => 0269-UPSTREAM-ALSA-usb-audio-undef-field_-get-prep-before.patch} (90%) rename SPECS/linux-lts-kmhv2/{0273-UPSTREAM-bitfield-Add-less-checking-__FIELD_-GET-PRE.patch => 0270-UPSTREAM-bitfield-Add-less-checking-__FIELD_-GET-PRE.patch} (96%) rename SPECS/linux-lts-kmhv2/{0274-UPSTREAM-bitfield-Add-non-constant-field_-prep-get-h.patch => 0271-UPSTREAM-bitfield-Add-non-constant-field_-prep-get-h.patch} (96%) rename SPECS/linux-lts-kmhv2/{0275-UPSTREAM-clk-at91-Convert-to-common-field_-get-prep-.patch => 0272-UPSTREAM-clk-at91-Convert-to-common-field_-get-prep-.patch} (93%) rename SPECS/linux-lts-kmhv2/{0276-UPSTREAM-crypto-qat-convert-to-common-field_get-help.patch => 0273-UPSTREAM-crypto-qat-convert-to-common-field_get-help.patch} (91%) rename SPECS/linux-lts-kmhv2/{0277-UPSTREAM-EDAC-ie31200-Convert-to-common-field_get-he.patch => 0274-UPSTREAM-EDAC-ie31200-Convert-to-common-field_get-he.patch} (90%) rename SPECS/linux-lts-kmhv2/{0278-UPSTREAM-gpio-aspeed-Convert-to-common-field_-get-pr.patch => 0275-UPSTREAM-gpio-aspeed-Convert-to-common-field_-get-pr.patch} (91%) rename SPECS/linux-lts-kmhv2/{0279-UPSTREAM-iio-dac-Convert-to-common-field_prep-helper.patch => 0276-UPSTREAM-iio-dac-Convert-to-common-field_prep-helper.patch} (88%) rename SPECS/linux-lts-kmhv2/{0280-UPSTREAM-iio-mlx90614-Convert-to-common-field_-get-p.patch => 0277-UPSTREAM-iio-mlx90614-Convert-to-common-field_-get-p.patch} (92%) rename SPECS/linux-lts-kmhv2/{0281-UPSTREAM-pinctrl-ma35-Convert-to-common-field_-get-p.patch => 0278-UPSTREAM-pinctrl-ma35-Convert-to-common-field_-get-p.patch} (91%) rename SPECS/linux-lts-kmhv2/{0282-UPSTREAM-soc-renesas-rz-sysc-Convert-to-common-field.patch => 0279-UPSTREAM-soc-renesas-rz-sysc-Convert-to-common-field.patch} (89%) rename SPECS/linux-lts-kmhv2/{0283-UPSTREAM-ALSA-usb-audio-Convert-to-common-field_-get.patch => 0280-UPSTREAM-ALSA-usb-audio-Convert-to-common-field_-get.patch} (91%) rename SPECS/linux-lts-kmhv2/{0284-UPSTREAM-clk-renesas-Use-bitfield-helpers.patch => 0281-UPSTREAM-clk-renesas-Use-bitfield-helpers.patch} (97%) rename SPECS/linux-lts-kmhv2/{0285-UPSTREAM-soc-renesas-Use-bitfield-helpers.patch => 0282-UPSTREAM-soc-renesas-Use-bitfield-helpers.patch} (90%) rename SPECS/linux-lts-kmhv2/{0286-UPSTREAM-dt-bindings-usb-Add-support-for-Terminus-FE.patch => 0283-UPSTREAM-dt-bindings-usb-Add-support-for-Terminus-FE.patch} (94%) rename SPECS/linux-lts-kmhv2/{0287-UPSTREAM-usb-misc-onboard_usb_dev-Add-Terminus-FE1.1.patch => 0284-UPSTREAM-usb-misc-onboard_usb_dev-Add-Terminus-FE1.1.patch} (95%) rename SPECS/linux-lts-kmhv2/{0288-UPSTREAM-riscv-Define-__riscv_copy_-vec_-words-bytes.patch => 0285-UPSTREAM-riscv-Define-__riscv_copy_-vec_-words-bytes.patch} (97%) rename SPECS/linux-lts-kmhv2/{0290-UPSTREAM-spi-dt-bindings-fsl-qspi-support-SpacemiT-K.patch => 0286-UPSTREAM-spi-dt-bindings-fsl-qspi-support-SpacemiT-K.patch} (90%) rename SPECS/linux-lts-kmhv2/{0291-UPSTREAM-RISC-V-KVM-Fix-NULL-pointer-dereference-in-.patch => 0287-UPSTREAM-RISC-V-KVM-Fix-NULL-pointer-dereference-in-.patch} (90%) create mode 100644 SPECS/linux-lts-kmhv2/0288-UPSTREAM-dt-bindings-mmc-sdhci-of-dwcmshc-Add-Eswin-.patch create mode 100644 SPECS/linux-lts-kmhv2/0289-UPSTREAM-mmc-sdhci-of-dwcmshc-Add-support-for-Eswin-.patch delete mode 100644 SPECS/linux-lts-kmhv2/0289-UPSTREAM-riscv-mm-Fixup-no5lvl-failure-when-vaddr-is.patch create mode 100644 SPECS/linux-lts-kmhv2/0290-UPSTREAM-mmc-sdhci-of-dwcmshc-Fix-init-for-AXI-clock.patch create mode 100644 SPECS/linux-lts-kmhv2/0291-UPSTREAM-mmc-sdhci-of-dwcmshc-Fix-DMA-128MB-boundary.patch create mode 100644 SPECS/linux-lts-kmhv2/0434-FROMLIST-riscv-dts-spacemit-k3-Add-Ziccrse-extension.patch create mode 100644 SPECS/linux-lts-kmhv2/0435-FROMLIST-RISC-V-KVM-Enhance-the-logging-check-for-mm.patch create mode 100644 SPECS/linux-lts-kmhv2/0436-FROMLIST-riscv-dts-spacemit-enable-PCIe-on-OrangePi-.patch create mode 100644 SPECS/linux-lts-kmhv2/0437-FROMLIST-iommu-riscv-Add-dependency-between-iommu-an.patch rename SPECS/linux-lts-kmhv2/{0434-XUANTIE-riscv-dts-th1520-add-licheepi4a-16g-support.patch => 0438-XUANTIE-riscv-dts-th1520-add-licheepi4a-16g-support.patch} (91%) rename SPECS/linux-lts-kmhv2/{0435-REVYOS-riscv-dts-th1520-rename-thead-to-xuantie.patch => 0439-REVYOS-riscv-dts-th1520-rename-thead-to-xuantie.patch} (85%) rename SPECS/linux-lts-kmhv2/{0436-REVYOS-riscv-dts-th1520-add-xuantie-th1520-mbox-r.patch => 0440-REVYOS-riscv-dts-th1520-add-xuantie-th1520-mbox-r.patch} (89%) rename SPECS/linux-lts-kmhv2/{0437-SOPHGO-dt-bindings-nvmem-Add-SG2044-eFuse-controller.patch => 0441-SOPHGO-dt-bindings-nvmem-Add-SG2044-eFuse-controller.patch} (92%) rename SPECS/linux-lts-kmhv2/{0438-SOPHGO-nvmem-Add-Sophgo-SG2044-eFuse-driver.patch => 0442-SOPHGO-nvmem-Add-Sophgo-SG2044-eFuse-driver.patch} (97%) rename SPECS/linux-lts-kmhv2/{0439-SOPHGO-riscv-dts-sophgo-sg2044-Add-eFUSE-device.patch => 0443-SOPHGO-riscv-dts-sophgo-sg2044-Add-eFUSE-device.patch} (91%) rename SPECS/linux-lts-kmhv2/{0440-SOPHGO-dts-sg2044-Modify-pcie-bar-address.patch => 0444-SOPHGO-dts-sg2044-Modify-pcie-bar-address.patch} (97%) rename SPECS/linux-lts-kmhv2/{0441-SOPHGO-riscv-sg2042-errata-Replace-thead-cache-clean.patch => 0445-SOPHGO-riscv-sg2042-errata-Replace-thead-cache-clean.patch} (85%) rename SPECS/linux-lts-kmhv2/{0442-REVYSR-dt-bindings-net-ultrarisc-dp1000-gmac-Add-sup.patch => 0446-REVYSR-dt-bindings-net-ultrarisc-dp1000-gmac-Add-sup.patch} (95%) rename SPECS/linux-lts-kmhv2/{0443-REVYSR-net-stmmac-add-support-for-dwmac-5.10a.patch => 0447-REVYSR-net-stmmac-add-support-for-dwmac-5.10a.patch} (87%) rename SPECS/linux-lts-kmhv2/{0444-RVCK-riscv-dts-add-dp1000.dts-for-UltraRIsc-DP1000-S.patch => 0448-RVCK-riscv-dts-add-dp1000.dts-for-UltraRIsc-DP1000-S.patch} (99%) rename SPECS/linux-lts-kmhv2/{0445-RVCK-pinctrl-add-pinctrl-dirver-for-UltraRisc-DP1000.patch => 0449-RVCK-pinctrl-add-pinctrl-dirver-for-UltraRisc-DP1000.patch} (99%) rename SPECS/linux-lts-kmhv2/{0446-RVCK-dts-add-pinctrl-dtsi-dts-for-UltraRisc-DP1000.patch => 0450-RVCK-dts-add-pinctrl-dtsi-dts-for-UltraRisc-DP1000.patch} (97%) rename SPECS/linux-lts-kmhv2/{0447-RVCK-riscv-dp1000-dts-add-the-dts-of-UltraRISC-dp100.patch => 0451-RVCK-riscv-dp1000-dts-add-the-dts-of-UltraRISC-dp100.patch} (98%) rename SPECS/linux-lts-kmhv2/{0448-RVCK-riscv-dp1000-dts-Move-mmc0-node-from-SoC-to-boa.patch => 0452-RVCK-riscv-dp1000-dts-Move-mmc0-node-from-SoC-to-boa.patch} (95%) rename SPECS/linux-lts-kmhv2/{0449-RVCK-riscv-dp1000-plic-add-plic-early-init-supports.patch => 0453-RVCK-riscv-dp1000-plic-add-plic-early-init-supports.patch} (94%) rename SPECS/linux-lts-kmhv2/{0450-RVCK-riscv-dp1000-dts-Move-chosen-node-from-common-t.patch => 0454-RVCK-riscv-dp1000-dts-Move-chosen-node-from-common-t.patch} (93%) rename SPECS/linux-lts-kmhv2/{0451-RVCK-dts-riscv-ultrarisc-Refactor-DP1000-device-tree.patch => 0455-RVCK-dts-riscv-ultrarisc-Refactor-DP1000-device-tree.patch} (99%) rename SPECS/linux-lts-kmhv2/{0452-RVCK-riscv-pinctrl-ultrarisc-Implement-pin-configura.patch => 0456-RVCK-riscv-pinctrl-ultrarisc-Implement-pin-configura.patch} (97%) rename SPECS/linux-lts-kmhv2/{0453-RVCK-riscv-dts-dp1000-add-dts-dtsi-for-Milk-V-Titan-.patch => 0457-RVCK-riscv-dts-dp1000-add-dts-dtsi-for-Milk-V-Titan-.patch} (98%) rename SPECS/linux-lts-kmhv2/{0454-REVYSR-pinctrl-ultrarisc-cleanup-probe-remove.patch => 0458-REVYSR-pinctrl-ultrarisc-cleanup-probe-remove.patch} (94%) rename SPECS/linux-lts-kmhv2/{0455-REVYSR-riscv-dp1000-dts-use-ultrarisc-dp1000-pcie-fo.patch => 0459-REVYSR-riscv-dp1000-dts-use-ultrarisc-dp1000-pcie-fo.patch} (89%) rename SPECS/linux-lts-kmhv2/{0456-ULTRARISC-hwmon-add-corepvt-driver-of-UltraRISC-DP10.patch => 0460-ULTRARISC-hwmon-add-corepvt-driver-of-UltraRISC-DP10.patch} (98%) rename SPECS/linux-lts-kmhv2/{0457-RUYI-SYNC-riscv-dts-dp1000-Update-dp1000.dtsi.patch => 0461-RUYI-SYNC-riscv-dts-dp1000-Update-dp1000.dtsi.patch} (99%) rename SPECS/linux-lts-kmhv2/{0458-RUYI-riscv-dts-spacemit-k3-Add-USB2.0-support.patch => 0462-RUYI-riscv-dts-spacemit-k3-Add-USB2.0-support.patch} (94%) rename SPECS/linux-lts-kmhv2/{0459-SPACEMIT-riscv-uaccess-don-t-use-vector-if-buffer-is.patch => 0463-SPACEMIT-riscv-uaccess-don-t-use-vector-if-buffer-is.patch} (96%) rename SPECS/linux-lts-kmhv2/{0460-RUYI-dt-bindings-phy-Add-Spacemit-K3-USB3-PCIe-comb-.patch => 0464-RUYI-dt-bindings-phy-Add-Spacemit-K3-USB3-PCIe-comb-.patch} (94%) rename SPECS/linux-lts-kmhv2/{0461-RUYI-phy-spacemit-Add-USB3-PCIe-comb-PHY-driver-for-.patch => 0465-RUYI-phy-spacemit-Add-USB3-PCIe-comb-PHY-driver-for-.patch} (99%) rename SPECS/linux-lts-kmhv2/{0462-RUYI-riscv-dts-spacemit-k3-add-USB-controller-and-US.patch => 0466-RUYI-riscv-dts-spacemit-k3-add-USB-controller-and-US.patch} (93%) rename SPECS/linux-lts-kmhv2/{0463-RUYI-riscv-dts-spacemit-k3-Add-PCIe-device-node.patch => 0467-RUYI-riscv-dts-spacemit-k3-Add-PCIe-device-node.patch} (97%) rename SPECS/linux-lts-kmhv2/{0464-RUYI-PCI-add-SpacemiT-vendor-id-and-its-K3-device-id.patch => 0468-RUYI-PCI-add-SpacemiT-vendor-id-and-its-K3-device-id.patch} (84%) rename SPECS/linux-lts-kmhv2/{0465-RUYI-wifi-rtw89-pci-add-SpacemiT-K3-to-36-bit-DMA-al.patch => 0469-RUYI-wifi-rtw89-pci-add-SpacemiT-K3-to-36-bit-DMA-al.patch} (87%) rename SPECS/linux-lts-kmhv2/{0466-RUYI-drm-amdgpu-disable-dynamic-PCIe-speed-switch-on.patch => 0470-RUYI-drm-amdgpu-disable-dynamic-PCIe-speed-switch-on.patch} (85%) rename SPECS/linux-lts-kmhv2/{0467-RVCK-driver-clk-k3-keep-some-system-based-clock-alwa.patch => 0471-RVCK-driver-clk-k3-keep-some-system-based-clock-alwa.patch} (92%) rename SPECS/linux-lts-kmhv2/{0001-RUYI-mmc-sdhci-of-dwcmshc-Add-support-for-SG2042-FPG.patch => 0472-RUYI-mmc-sdhci-of-dwcmshc-Add-support-for-SG2042-FPG.patch} (65%) create mode 100644 SPECS/linux-lts-kmhv2/series diff --git a/SPECS/linux-lts-kmhv2/0001-UPSTREAM-drm-ttm-add-pgprot-handling-for-RISC-V.patch b/SPECS/linux-lts-kmhv2/0001-UPSTREAM-drm-ttm-add-pgprot-handling-for-RISC-V.patch index 5a44481abf..dd82e46153 100644 --- a/SPECS/linux-lts-kmhv2/0001-UPSTREAM-drm-ttm-add-pgprot-handling-for-RISC-V.patch +++ b/SPECS/linux-lts-kmhv2/0001-UPSTREAM-drm-ttm-add-pgprot-handling-for-RISC-V.patch @@ -1,7 +1,7 @@ -From 68f4d24c96b911ab659b964add869d541d519b43 Mon Sep 17 00:00:00 2001 +From e8197b44ac58d76565180793e59b2ff39d0ff8a1 Mon Sep 17 00:00:00 2001 From: Han Gao Date: Fri, 5 Dec 2025 10:42:07 +0800 -Subject: [PATCH 001/467] UPSTREAM: drm/ttm: add pgprot handling for RISC-V +Subject: [RUYI PATCH] UPSTREAM: drm/ttm: add pgprot handling for RISC-V MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit diff --git a/SPECS/linux-lts-kmhv2/0001-XIANGSHAN-Flush-all-tlb-in-set_pte.patch b/SPECS/linux-lts-kmhv2/0001-XIANGSHAN-Flush-all-tlb-in-set_pte.patch index 99340fe4e2..a8bd9c03dd 100644 --- a/SPECS/linux-lts-kmhv2/0001-XIANGSHAN-Flush-all-tlb-in-set_pte.patch +++ b/SPECS/linux-lts-kmhv2/0001-XIANGSHAN-Flush-all-tlb-in-set_pte.patch @@ -1,7 +1,7 @@ -From 7c072bb9e9f01429f8040ac7fc65086c052beb89 Mon Sep 17 00:00:00 2001 +From 8c1d176b72034e3df9780310de7c4ea43d72c9ed Mon Sep 17 00:00:00 2001 From: Ran Wang Date: Fri, 20 Mar 2026 15:31:20 +0800 -Subject: [PATCH 1/3] XIANGSHAN: Flush all tlb in set_pte() +Subject: [RUYI PATCH] XIANGSHAN: Flush all tlb in set_pte() Signed-off-by: Ran Wang Signed-off-by: Han Gao diff --git a/SPECS/linux-lts-kmhv2/0002-UPSTREAM-riscv-sophgo-dts-add-PCIe-controllers-for-S.patch b/SPECS/linux-lts-kmhv2/0002-UPSTREAM-riscv-sophgo-dts-add-PCIe-controllers-for-S.patch index c7224a0b81..b8cb7f6ff0 100644 --- a/SPECS/linux-lts-kmhv2/0002-UPSTREAM-riscv-sophgo-dts-add-PCIe-controllers-for-S.patch +++ b/SPECS/linux-lts-kmhv2/0002-UPSTREAM-riscv-sophgo-dts-add-PCIe-controllers-for-S.patch @@ -1,8 +1,8 @@ -From a6570cc0fbc912cd59b63b6cc0e3dfb0e74e8d08 Mon Sep 17 00:00:00 2001 +From 172fa2e5a76c1351ea1bb6903e1d03944ce8a778 Mon Sep 17 00:00:00 2001 From: Chen Wang Date: Mon, 20 Oct 2025 11:33:43 +0800 -Subject: [PATCH 002/467] UPSTREAM: riscv: sophgo: dts: add PCIe controllers - for SG2042 +Subject: [RUYI PATCH] UPSTREAM: riscv: sophgo: dts: add PCIe controllers for + SG2042 Add PCIe controller nodes in DTS for Sophgo SG2042. Default they are disabled. diff --git a/SPECS/linux-lts-kmhv2/0002-XIANGSHAN-Add-two-sbi-calls.patch b/SPECS/linux-lts-kmhv2/0002-XIANGSHAN-Add-two-sbi-calls.patch index ea4bd70ae2..eb448a6a4e 100644 --- a/SPECS/linux-lts-kmhv2/0002-XIANGSHAN-Add-two-sbi-calls.patch +++ b/SPECS/linux-lts-kmhv2/0002-XIANGSHAN-Add-two-sbi-calls.patch @@ -1,7 +1,7 @@ -From eb55ca6799bbf38ce108fc237284f10f279a1da7 Mon Sep 17 00:00:00 2001 +From 72813582d41500d578c0d5b500c4224f33824e91 Mon Sep 17 00:00:00 2001 From: Ran Wang Date: Fri, 20 Mar 2026 15:36:58 +0800 -Subject: [PATCH 2/3] XIANGSHAN: Add two sbi calls +Subject: [RUYI PATCH] XIANGSHAN: Add two sbi calls Signed-off-by: Ran Wang Signed-off-by: Han Gao diff --git a/SPECS/linux-lts-kmhv2/0003-UPSTREAM-riscv-sophgo-dts-enable-PCIe-for-PioneerBox.patch b/SPECS/linux-lts-kmhv2/0003-UPSTREAM-riscv-sophgo-dts-enable-PCIe-for-PioneerBox.patch index 7528086c94..43e4f49e7c 100644 --- a/SPECS/linux-lts-kmhv2/0003-UPSTREAM-riscv-sophgo-dts-enable-PCIe-for-PioneerBox.patch +++ b/SPECS/linux-lts-kmhv2/0003-UPSTREAM-riscv-sophgo-dts-enable-PCIe-for-PioneerBox.patch @@ -1,8 +1,7 @@ -From a2b3dccf02d815c4cbbaa8ea797f337204196c30 Mon Sep 17 00:00:00 2001 +From eb8e783adc4036ef80be48cfc8469b4be20fb577 Mon Sep 17 00:00:00 2001 From: Chen Wang Date: Mon, 20 Oct 2025 11:34:05 +0800 -Subject: [PATCH 003/467] UPSTREAM: riscv: sophgo: dts: enable PCIe for - PioneerBox +Subject: [RUYI PATCH] UPSTREAM: riscv: sophgo: dts: enable PCIe for PioneerBox Enable PCIe controllers for PioneerBox, which uses SG2042 SoC. diff --git a/SPECS/linux-lts-kmhv2/0003-XIANGSHAN-Add-workaround-to-retry-when-access-fault.patch b/SPECS/linux-lts-kmhv2/0003-XIANGSHAN-Add-workaround-to-retry-when-access-fault.patch index 9043b9f47c..1aee7a490c 100644 --- a/SPECS/linux-lts-kmhv2/0003-XIANGSHAN-Add-workaround-to-retry-when-access-fault.patch +++ b/SPECS/linux-lts-kmhv2/0003-XIANGSHAN-Add-workaround-to-retry-when-access-fault.patch @@ -1,7 +1,7 @@ -From 7601c632bcc8afe89b7f067eb31bec6b9ca6b2ca Mon Sep 17 00:00:00 2001 +From 221755ad22855e46ff06ad063bde801c81b4bb75 Mon Sep 17 00:00:00 2001 From: Ran Wang Date: Fri, 20 Mar 2026 15:50:27 +0800 -Subject: [PATCH 3/3] XIANGSHAN: Add workaround to retry when access fault +Subject: [RUYI PATCH] XIANGSHAN: Add workaround to retry when access fault Signed-off-by: Ran Wang Signed-off-by: Han Gao diff --git a/SPECS/linux-lts-kmhv2/0004-UPSTREAM-riscv-sophgo-dts-enable-PCIe-for-SG2042_EVB.patch b/SPECS/linux-lts-kmhv2/0004-UPSTREAM-riscv-sophgo-dts-enable-PCIe-for-SG2042_EVB.patch index 4191eceda0..46b8b479dc 100644 --- a/SPECS/linux-lts-kmhv2/0004-UPSTREAM-riscv-sophgo-dts-enable-PCIe-for-SG2042_EVB.patch +++ b/SPECS/linux-lts-kmhv2/0004-UPSTREAM-riscv-sophgo-dts-enable-PCIe-for-SG2042_EVB.patch @@ -1,7 +1,7 @@ -From ea11e07b03ac17c6cc757dd58c1097140d35647f Mon Sep 17 00:00:00 2001 +From 97f3ca4bfb8cf08fc5f01da48adbd2e295d9bf62 Mon Sep 17 00:00:00 2001 From: Chen Wang Date: Mon, 20 Oct 2025 11:39:22 +0800 -Subject: [PATCH 004/467] UPSTREAM: riscv: sophgo: dts: enable PCIe for +Subject: [RUYI PATCH] UPSTREAM: riscv: sophgo: dts: enable PCIe for SG2042_EVB_V1.X Enable PCIe controllers for Sophgo SG2042_EVB_V1.X board, diff --git a/SPECS/linux-lts-kmhv2/0005-UPSTREAM-riscv-sophgo-dts-enable-PCIe-for-SG2042_EVB.patch b/SPECS/linux-lts-kmhv2/0005-UPSTREAM-riscv-sophgo-dts-enable-PCIe-for-SG2042_EVB.patch index fa69fdde31..118243db74 100644 --- a/SPECS/linux-lts-kmhv2/0005-UPSTREAM-riscv-sophgo-dts-enable-PCIe-for-SG2042_EVB.patch +++ b/SPECS/linux-lts-kmhv2/0005-UPSTREAM-riscv-sophgo-dts-enable-PCIe-for-SG2042_EVB.patch @@ -1,7 +1,7 @@ -From 85ca5757d41f28ceee07c296a8562fc8ee987444 Mon Sep 17 00:00:00 2001 +From adfc1b75ef3710cc675487e2d856fe811e92c9cf Mon Sep 17 00:00:00 2001 From: Chen Wang Date: Mon, 20 Oct 2025 11:40:09 +0800 -Subject: [PATCH 005/467] UPSTREAM: riscv: sophgo: dts: enable PCIe for +Subject: [RUYI PATCH] UPSTREAM: riscv: sophgo: dts: enable PCIe for SG2042_EVB_V2.0 Enable PCIe controllers for Sophgo SG2042_EVB_V2.0 board, diff --git a/SPECS/linux-lts-kmhv2/0006-UPSTREAM-riscv-dts-sophgo-Add-SPI-NOR-node-for-SG204.patch b/SPECS/linux-lts-kmhv2/0006-UPSTREAM-riscv-dts-sophgo-Add-SPI-NOR-node-for-SG204.patch index 434e018363..0105843995 100644 --- a/SPECS/linux-lts-kmhv2/0006-UPSTREAM-riscv-dts-sophgo-Add-SPI-NOR-node-for-SG204.patch +++ b/SPECS/linux-lts-kmhv2/0006-UPSTREAM-riscv-dts-sophgo-Add-SPI-NOR-node-for-SG204.patch @@ -1,7 +1,7 @@ -From 6655e6812bc952f6ca617368b081df8ab2f94dc0 Mon Sep 17 00:00:00 2001 +From 0fe3f721fe45c7b4cfd9c65eaea2e94c7d05d05a Mon Sep 17 00:00:00 2001 From: Zixian Zeng Date: Tue, 16 Sep 2025 21:22:50 +0800 -Subject: [PATCH 006/467] UPSTREAM: riscv: dts: sophgo: Add SPI NOR node for +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: sophgo: Add SPI NOR node for SG2042 Add SPI NOR controller node for SG2042 diff --git a/SPECS/linux-lts-kmhv2/0007-UPSTREAM-riscv-dts-sophgo-Enable-SPI-NOR-node-for-Pi.patch b/SPECS/linux-lts-kmhv2/0007-UPSTREAM-riscv-dts-sophgo-Enable-SPI-NOR-node-for-Pi.patch index a2068d8a3f..e7d51ad4e9 100644 --- a/SPECS/linux-lts-kmhv2/0007-UPSTREAM-riscv-dts-sophgo-Enable-SPI-NOR-node-for-Pi.patch +++ b/SPECS/linux-lts-kmhv2/0007-UPSTREAM-riscv-dts-sophgo-Enable-SPI-NOR-node-for-Pi.patch @@ -1,7 +1,7 @@ -From 15e5a76787a30da2ef62756cfd195210851cf09f Mon Sep 17 00:00:00 2001 +From 9e5ebf3bb03d5951a1ac6273a557a7d3b42aaf5d Mon Sep 17 00:00:00 2001 From: Zixian Zeng Date: Tue, 16 Sep 2025 21:22:51 +0800 -Subject: [PATCH 007/467] UPSTREAM: riscv: dts: sophgo: Enable SPI NOR node for +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: sophgo: Enable SPI NOR node for PioneerBox Enable SPI NOR node for PioneerBox device tree diff --git a/SPECS/linux-lts-kmhv2/0008-UPSTREAM-riscv-dts-sophgo-Enable-SPI-NOR-node-for-SG.patch b/SPECS/linux-lts-kmhv2/0008-UPSTREAM-riscv-dts-sophgo-Enable-SPI-NOR-node-for-SG.patch index dea06361cb..0353c0d45c 100644 --- a/SPECS/linux-lts-kmhv2/0008-UPSTREAM-riscv-dts-sophgo-Enable-SPI-NOR-node-for-SG.patch +++ b/SPECS/linux-lts-kmhv2/0008-UPSTREAM-riscv-dts-sophgo-Enable-SPI-NOR-node-for-SG.patch @@ -1,7 +1,7 @@ -From d1a07634e134fcadea2caad89fcdcf622e23a136 Mon Sep 17 00:00:00 2001 +From ca6b4bc1ae282908399370569de96b507b11a199 Mon Sep 17 00:00:00 2001 From: Zixian Zeng Date: Tue, 16 Sep 2025 21:22:52 +0800 -Subject: [PATCH 008/467] UPSTREAM: riscv: dts: sophgo: Enable SPI NOR node for +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: sophgo: Enable SPI NOR node for SG2042_EVB_V1 Enable SPI NOR node for SG2042_EVB_V1 device tree diff --git a/SPECS/linux-lts-kmhv2/0009-UPSTREAM-riscv-dts-sophgo-Enable-SPI-NOR-node-for-SG.patch b/SPECS/linux-lts-kmhv2/0009-UPSTREAM-riscv-dts-sophgo-Enable-SPI-NOR-node-for-SG.patch index 9584149d3e..849dbb07fb 100644 --- a/SPECS/linux-lts-kmhv2/0009-UPSTREAM-riscv-dts-sophgo-Enable-SPI-NOR-node-for-SG.patch +++ b/SPECS/linux-lts-kmhv2/0009-UPSTREAM-riscv-dts-sophgo-Enable-SPI-NOR-node-for-SG.patch @@ -1,7 +1,7 @@ -From 53f32e5b4fe4b9f2bd8fecbf74e973f6b8c32c42 Mon Sep 17 00:00:00 2001 +From ef69ecb5f71cc9ec10bbe973e96dec13a22d83c5 Mon Sep 17 00:00:00 2001 From: Zixian Zeng Date: Tue, 16 Sep 2025 21:22:53 +0800 -Subject: [PATCH 009/467] UPSTREAM: riscv: dts: sophgo: Enable SPI NOR node for +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: sophgo: Enable SPI NOR node for SG2042_EVB_V2 Enable SPI NOR node for SG2042_EVB_V2 device tree diff --git a/SPECS/linux-lts-kmhv2/0010-UPSTREAM-dt-bindings-net-sophgo-sg2044-dwmac-add-phy.patch b/SPECS/linux-lts-kmhv2/0010-UPSTREAM-dt-bindings-net-sophgo-sg2044-dwmac-add-phy.patch index 176f1f72fa..f9aa138c7a 100644 --- a/SPECS/linux-lts-kmhv2/0010-UPSTREAM-dt-bindings-net-sophgo-sg2044-dwmac-add-phy.patch +++ b/SPECS/linux-lts-kmhv2/0010-UPSTREAM-dt-bindings-net-sophgo-sg2044-dwmac-add-phy.patch @@ -1,8 +1,8 @@ -From fa290cfeb4782f7d5f70c9bfc7c9a45a8d783bba Mon Sep 17 00:00:00 2001 +From 4cec01963100499caa46c4c97acb3d80549132f6 Mon Sep 17 00:00:00 2001 From: Inochi Amaoto Date: Fri, 14 Nov 2025 08:38:03 +0800 -Subject: [PATCH 010/467] UPSTREAM: dt-bindings: net: sophgo,sg2044-dwmac: add - phy mode restriction +Subject: [RUYI PATCH] UPSTREAM: dt-bindings: net: sophgo,sg2044-dwmac: add phy + mode restriction As the ethernet controller of SG2044 and SG2042 only supports RGMII phy. Add phy-mode property to restrict the value. diff --git a/SPECS/linux-lts-kmhv2/0011-UPSTREAM-perf-vendor-events-riscv-add-T-HEAD-C920V2-.patch b/SPECS/linux-lts-kmhv2/0011-UPSTREAM-perf-vendor-events-riscv-add-T-HEAD-C920V2-.patch index eab71a2128..d0b72dcb45 100644 --- a/SPECS/linux-lts-kmhv2/0011-UPSTREAM-perf-vendor-events-riscv-add-T-HEAD-C920V2-.patch +++ b/SPECS/linux-lts-kmhv2/0011-UPSTREAM-perf-vendor-events-riscv-add-T-HEAD-C920V2-.patch @@ -1,7 +1,7 @@ -From 5d275d4fdc0ad5140b356cbcb753365217315b31 Mon Sep 17 00:00:00 2001 +From 97f62d7522d266af5df939fe3f50a0e365d78d37 Mon Sep 17 00:00:00 2001 From: Inochi Amaoto Date: Tue, 14 Oct 2025 09:48:29 +0800 -Subject: [PATCH 011/467] UPSTREAM: perf vendor events riscv: add T-HEAD C920V2 +Subject: [RUYI PATCH] UPSTREAM: perf vendor events riscv: add T-HEAD C920V2 JSON support T-HEAD C920 has a V2 iteration, which supports Sscompmf. The V2 diff --git a/SPECS/linux-lts-kmhv2/0012-UPSTREAM-rust-macros-Add-support-for-imports_ns-to-m.patch b/SPECS/linux-lts-kmhv2/0012-UPSTREAM-rust-macros-Add-support-for-imports_ns-to-m.patch index a79f509cec..de2b418bcf 100644 --- a/SPECS/linux-lts-kmhv2/0012-UPSTREAM-rust-macros-Add-support-for-imports_ns-to-m.patch +++ b/SPECS/linux-lts-kmhv2/0012-UPSTREAM-rust-macros-Add-support-for-imports_ns-to-m.patch @@ -1,8 +1,8 @@ -From 367f56da193fa8ee4a1896f1086d913d2ce34435 Mon Sep 17 00:00:00 2001 +From e140a5124e38afd1d68eb3c9da0a96a9bc0c1fd8 Mon Sep 17 00:00:00 2001 From: Michal Wilczynski Date: Tue, 28 Oct 2025 13:22:32 +0100 -Subject: [PATCH 012/467] UPSTREAM: rust: macros: Add support for 'imports_ns' - to module! +Subject: [RUYI PATCH] UPSTREAM: rust: macros: Add support for 'imports_ns' to + module! MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit diff --git a/SPECS/linux-lts-kmhv2/0013-UPSTREAM-pwm-Export-pwmchip_release-for-external-use.patch b/SPECS/linux-lts-kmhv2/0013-UPSTREAM-pwm-Export-pwmchip_release-for-external-use.patch index 03d9743457..a4878efc8e 100644 --- a/SPECS/linux-lts-kmhv2/0013-UPSTREAM-pwm-Export-pwmchip_release-for-external-use.patch +++ b/SPECS/linux-lts-kmhv2/0013-UPSTREAM-pwm-Export-pwmchip_release-for-external-use.patch @@ -1,8 +1,7 @@ -From 21c80df86a56778bb86caf30236f44822c7c78ab Mon Sep 17 00:00:00 2001 +From 6eec5416f899b995199e6a78acdba366552fe74b Mon Sep 17 00:00:00 2001 From: Michal Wilczynski Date: Thu, 16 Oct 2025 15:38:01 +0200 -Subject: [PATCH 013/467] UPSTREAM: pwm: Export `pwmchip_release` for external - use +Subject: [RUYI PATCH] UPSTREAM: pwm: Export `pwmchip_release` for external use MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit diff --git a/SPECS/linux-lts-kmhv2/0014-UPSTREAM-rust-pwm-Add-Kconfig-and-basic-data-structu.patch b/SPECS/linux-lts-kmhv2/0014-UPSTREAM-rust-pwm-Add-Kconfig-and-basic-data-structu.patch index 1bc49e3700..3a11557826 100644 --- a/SPECS/linux-lts-kmhv2/0014-UPSTREAM-rust-pwm-Add-Kconfig-and-basic-data-structu.patch +++ b/SPECS/linux-lts-kmhv2/0014-UPSTREAM-rust-pwm-Add-Kconfig-and-basic-data-structu.patch @@ -1,7 +1,7 @@ -From 7012d45ae8771935292a62a8dcaa765c6adb7f56 Mon Sep 17 00:00:00 2001 +From dc77d3e5fd4e58d58519c452e5ab3a3dc0d30352 Mon Sep 17 00:00:00 2001 From: Michal Wilczynski Date: Thu, 16 Oct 2025 15:38:02 +0200 -Subject: [PATCH 014/467] UPSTREAM: rust: pwm: Add Kconfig and basic data +Subject: [RUYI PATCH] UPSTREAM: rust: pwm: Add Kconfig and basic data structures MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 diff --git a/SPECS/linux-lts-kmhv2/0015-UPSTREAM-rust-pwm-Add-complete-abstraction-layer.patch b/SPECS/linux-lts-kmhv2/0015-UPSTREAM-rust-pwm-Add-complete-abstraction-layer.patch index b977783a21..ae5c79af9d 100644 --- a/SPECS/linux-lts-kmhv2/0015-UPSTREAM-rust-pwm-Add-complete-abstraction-layer.patch +++ b/SPECS/linux-lts-kmhv2/0015-UPSTREAM-rust-pwm-Add-complete-abstraction-layer.patch @@ -1,7 +1,7 @@ -From df53f3655e6b9bf34d2b0af69746d7e7efcf5c82 Mon Sep 17 00:00:00 2001 +From fad4bc85d938d1fa411bfc7c09b2c327dc21cad2 Mon Sep 17 00:00:00 2001 From: Michal Wilczynski Date: Thu, 16 Oct 2025 15:38:03 +0200 -Subject: [PATCH 015/467] UPSTREAM: rust: pwm: Add complete abstraction layer +Subject: [RUYI PATCH] UPSTREAM: rust: pwm: Add complete abstraction layer MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit diff --git a/SPECS/linux-lts-kmhv2/0016-UPSTREAM-rust-pwm-Add-module_pwm_platform_driver-mac.patch b/SPECS/linux-lts-kmhv2/0016-UPSTREAM-rust-pwm-Add-module_pwm_platform_driver-mac.patch index 40837d9bee..abdc4b8594 100644 --- a/SPECS/linux-lts-kmhv2/0016-UPSTREAM-rust-pwm-Add-module_pwm_platform_driver-mac.patch +++ b/SPECS/linux-lts-kmhv2/0016-UPSTREAM-rust-pwm-Add-module_pwm_platform_driver-mac.patch @@ -1,7 +1,7 @@ -From 5ad798527f4b4099b19ab390304846d618b490fb Mon Sep 17 00:00:00 2001 +From a8369a239ce03856b5d63e39d5c92586c0641c18 Mon Sep 17 00:00:00 2001 From: Michal Wilczynski Date: Tue, 28 Oct 2025 13:22:33 +0100 -Subject: [PATCH 016/467] UPSTREAM: rust: pwm: Add module_pwm_platform_driver! +Subject: [RUYI PATCH] UPSTREAM: rust: pwm: Add module_pwm_platform_driver! macro MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 diff --git a/SPECS/linux-lts-kmhv2/0017-UPSTREAM-rust-pwm-Drop-wrapping-of-PWM-polarity-and-.patch b/SPECS/linux-lts-kmhv2/0017-UPSTREAM-rust-pwm-Drop-wrapping-of-PWM-polarity-and-.patch index 8a537db5b7..a2e4a4474c 100644 --- a/SPECS/linux-lts-kmhv2/0017-UPSTREAM-rust-pwm-Drop-wrapping-of-PWM-polarity-and-.patch +++ b/SPECS/linux-lts-kmhv2/0017-UPSTREAM-rust-pwm-Drop-wrapping-of-PWM-polarity-and-.patch @@ -1,8 +1,8 @@ -From 07a4233a04f77fea6255070d799f8158192c7896 Mon Sep 17 00:00:00 2001 +From 0bed1f7ddadef9191b85230b6f078bf48a1ddfc1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Uwe=20Kleine-K=C3=B6nig?= Date: Sat, 25 Oct 2025 14:23:56 +0200 -Subject: [PATCH 017/467] UPSTREAM: rust: pwm: Drop wrapping of PWM polarity - and state +Subject: [RUYI PATCH] UPSTREAM: rust: pwm: Drop wrapping of PWM polarity and + state MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit diff --git a/SPECS/linux-lts-kmhv2/0018-UPSTREAM-rust-pwm-Fix-broken-intra-doc-link.patch b/SPECS/linux-lts-kmhv2/0018-UPSTREAM-rust-pwm-Fix-broken-intra-doc-link.patch index 1bf1f84011..aaf7682aaf 100644 --- a/SPECS/linux-lts-kmhv2/0018-UPSTREAM-rust-pwm-Fix-broken-intra-doc-link.patch +++ b/SPECS/linux-lts-kmhv2/0018-UPSTREAM-rust-pwm-Fix-broken-intra-doc-link.patch @@ -1,7 +1,7 @@ -From 124a1875f86fff16688c63594e8e073464b6f4dd Mon Sep 17 00:00:00 2001 +From ce0cfe6521836f8d1bff1dbb1dd784f8dbe2f0f1 Mon Sep 17 00:00:00 2001 From: Miguel Ojeda Date: Wed, 29 Oct 2025 19:19:40 +0100 -Subject: [PATCH 018/467] UPSTREAM: rust: pwm: Fix broken intra-doc link +Subject: [RUYI PATCH] UPSTREAM: rust: pwm: Fix broken intra-doc link MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit diff --git a/SPECS/linux-lts-kmhv2/0019-UPSTREAM-pwm-Add-Rust-driver-for-T-HEAD-TH1520-SoC.patch b/SPECS/linux-lts-kmhv2/0019-UPSTREAM-pwm-Add-Rust-driver-for-T-HEAD-TH1520-SoC.patch index 6d68bf4ad8..4a1351eb60 100644 --- a/SPECS/linux-lts-kmhv2/0019-UPSTREAM-pwm-Add-Rust-driver-for-T-HEAD-TH1520-SoC.patch +++ b/SPECS/linux-lts-kmhv2/0019-UPSTREAM-pwm-Add-Rust-driver-for-T-HEAD-TH1520-SoC.patch @@ -1,7 +1,7 @@ -From 5c016dc78cc84fad38fbee81b56b42b02313be87 Mon Sep 17 00:00:00 2001 +From 323a18dcdb57c3c4a56d687fff097af3249b0fe3 Mon Sep 17 00:00:00 2001 From: Michal Wilczynski Date: Thu, 16 Oct 2025 15:38:04 +0200 -Subject: [PATCH 019/467] UPSTREAM: pwm: Add Rust driver for T-HEAD TH1520 SoC +Subject: [RUYI PATCH] UPSTREAM: pwm: Add Rust driver for T-HEAD TH1520 SoC MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit diff --git a/SPECS/linux-lts-kmhv2/0020-UPSTREAM-dt-bindings-pwm-thead-Add-T-HEAD-TH1520-PWM.patch b/SPECS/linux-lts-kmhv2/0020-UPSTREAM-dt-bindings-pwm-thead-Add-T-HEAD-TH1520-PWM.patch index 7e8f6f69f9..72b7b6e552 100644 --- a/SPECS/linux-lts-kmhv2/0020-UPSTREAM-dt-bindings-pwm-thead-Add-T-HEAD-TH1520-PWM.patch +++ b/SPECS/linux-lts-kmhv2/0020-UPSTREAM-dt-bindings-pwm-thead-Add-T-HEAD-TH1520-PWM.patch @@ -1,8 +1,8 @@ -From 75682c170513cae6790cdc8c45c039ae28ac86a8 Mon Sep 17 00:00:00 2001 +From 1ff5f22be0212ca408aa7b7fb452742a1c0e44d8 Mon Sep 17 00:00:00 2001 From: Michal Wilczynski Date: Thu, 16 Oct 2025 15:38:05 +0200 -Subject: [PATCH 020/467] UPSTREAM: dt-bindings: pwm: thead: Add T-HEAD TH1520 - PWM controller +Subject: [RUYI PATCH] UPSTREAM: dt-bindings: pwm: thead: Add T-HEAD TH1520 PWM + controller MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit diff --git a/SPECS/linux-lts-kmhv2/0021-UPSTREAM-pwm-Fix-Rust-formatting.patch b/SPECS/linux-lts-kmhv2/0021-UPSTREAM-pwm-Fix-Rust-formatting.patch index 2822d39394..b045d4a3cf 100644 --- a/SPECS/linux-lts-kmhv2/0021-UPSTREAM-pwm-Fix-Rust-formatting.patch +++ b/SPECS/linux-lts-kmhv2/0021-UPSTREAM-pwm-Fix-Rust-formatting.patch @@ -1,7 +1,7 @@ -From 16e23a75ada51fa0c1e922c0c532193c2465a324 Mon Sep 17 00:00:00 2001 +From d512570ff756b751d74f27121ccd6784be182855 Mon Sep 17 00:00:00 2001 From: Miguel Ojeda Date: Wed, 29 Oct 2025 19:25:02 +0100 -Subject: [PATCH 021/467] UPSTREAM: pwm: Fix Rust formatting +Subject: [RUYI PATCH] UPSTREAM: pwm: Fix Rust formatting MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit diff --git a/SPECS/linux-lts-kmhv2/0022-UPSTREAM-pwm-th1520-Fix-clippy-warning-for-redundant.patch b/SPECS/linux-lts-kmhv2/0022-UPSTREAM-pwm-th1520-Fix-clippy-warning-for-redundant.patch index e395108a1d..06d4f3cc31 100644 --- a/SPECS/linux-lts-kmhv2/0022-UPSTREAM-pwm-th1520-Fix-clippy-warning-for-redundant.patch +++ b/SPECS/linux-lts-kmhv2/0022-UPSTREAM-pwm-th1520-Fix-clippy-warning-for-redundant.patch @@ -1,8 +1,8 @@ -From 24db3f421ffa17c4b9c6a3a054c6cb6d164a3645 Mon Sep 17 00:00:00 2001 +From b8e48fd0e9516c83f6a6193730b5d042ed5263bd Mon Sep 17 00:00:00 2001 From: Michal Wilczynski Date: Tue, 28 Oct 2025 13:22:35 +0100 -Subject: [PATCH 022/467] UPSTREAM: pwm: th1520: Fix clippy warning for - redundant struct field init +Subject: [RUYI PATCH] UPSTREAM: pwm: th1520: Fix clippy warning for redundant + struct field init MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit diff --git a/SPECS/linux-lts-kmhv2/0023-UPSTREAM-pwm-th1520-Use-module_pwm_platform_driver-m.patch b/SPECS/linux-lts-kmhv2/0023-UPSTREAM-pwm-th1520-Use-module_pwm_platform_driver-m.patch index b5b15a3878..b4384ef364 100644 --- a/SPECS/linux-lts-kmhv2/0023-UPSTREAM-pwm-th1520-Use-module_pwm_platform_driver-m.patch +++ b/SPECS/linux-lts-kmhv2/0023-UPSTREAM-pwm-th1520-Use-module_pwm_platform_driver-m.patch @@ -1,8 +1,8 @@ -From 0e92472e39f3b94fbd120e69f625a2b4d5ade50d Mon Sep 17 00:00:00 2001 +From e4ad935868f5592d06155265261be5934f1821ec Mon Sep 17 00:00:00 2001 From: Michal Wilczynski Date: Tue, 28 Oct 2025 13:22:34 +0100 -Subject: [PATCH 023/467] UPSTREAM: pwm: th1520: Use - module_pwm_platform_driver! macro +Subject: [RUYI PATCH] UPSTREAM: pwm: th1520: Use module_pwm_platform_driver! + macro MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit diff --git a/SPECS/linux-lts-kmhv2/0024-UPSTREAM-pwm-th1520-Fix-missing-Kconfig-dependencies.patch b/SPECS/linux-lts-kmhv2/0024-UPSTREAM-pwm-th1520-Fix-missing-Kconfig-dependencies.patch index 5f7489ce32..f01d4fe843 100644 --- a/SPECS/linux-lts-kmhv2/0024-UPSTREAM-pwm-th1520-Fix-missing-Kconfig-dependencies.patch +++ b/SPECS/linux-lts-kmhv2/0024-UPSTREAM-pwm-th1520-Fix-missing-Kconfig-dependencies.patch @@ -1,8 +1,7 @@ -From 0580c630050cf90e3e014a44e421a8876ab2c452 Mon Sep 17 00:00:00 2001 +From 04ac502626ab9c23c88cb52a8447f2a6d6871231 Mon Sep 17 00:00:00 2001 From: Michal Wilczynski Date: Tue, 9 Dec 2025 21:06:03 +0100 -Subject: [PATCH 024/467] UPSTREAM: pwm: th1520: Fix missing Kconfig - dependencies +Subject: [RUYI PATCH] UPSTREAM: pwm: th1520: Fix missing Kconfig dependencies MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit diff --git a/SPECS/linux-lts-kmhv2/0025-UPSTREAM-riscv-dts-thead-add-xtheadvector-to-the-th1.patch b/SPECS/linux-lts-kmhv2/0025-UPSTREAM-riscv-dts-thead-add-xtheadvector-to-the-th1.patch index 7f73a0b809..4f6592382a 100644 --- a/SPECS/linux-lts-kmhv2/0025-UPSTREAM-riscv-dts-thead-add-xtheadvector-to-the-th1.patch +++ b/SPECS/linux-lts-kmhv2/0025-UPSTREAM-riscv-dts-thead-add-xtheadvector-to-the-th1.patch @@ -1,7 +1,7 @@ -From 95091d9394da630c87c6cfa3824b397f4eee2f73 Mon Sep 17 00:00:00 2001 +From c413ed4426b184f8cb2304ff2897825e2a215871 Mon Sep 17 00:00:00 2001 From: Han Gao Date: Fri, 19 Sep 2025 04:44:47 +0800 -Subject: [PATCH 025/467] UPSTREAM: riscv: dts: thead: add xtheadvector to the +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: thead: add xtheadvector to the th1520 devicetree The th1520 support xtheadvector [1] so it can be included in the diff --git a/SPECS/linux-lts-kmhv2/0026-UPSTREAM-riscv-dts-thead-add-ziccrse-for-th1520.patch b/SPECS/linux-lts-kmhv2/0026-UPSTREAM-riscv-dts-thead-add-ziccrse-for-th1520.patch index c199f87111..645a855fa1 100644 --- a/SPECS/linux-lts-kmhv2/0026-UPSTREAM-riscv-dts-thead-add-ziccrse-for-th1520.patch +++ b/SPECS/linux-lts-kmhv2/0026-UPSTREAM-riscv-dts-thead-add-ziccrse-for-th1520.patch @@ -1,7 +1,7 @@ -From ce397038e6fdb45ea0afe6fc74d6710bb294ef61 Mon Sep 17 00:00:00 2001 +From d86f79c2f13ca9a4c232cce2f5dd5020f18a9656 Mon Sep 17 00:00:00 2001 From: Han Gao Date: Fri, 19 Sep 2025 04:44:48 +0800 -Subject: [PATCH 026/467] UPSTREAM: riscv: dts: thead: add ziccrse for th1520 +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: thead: add ziccrse for th1520 Existing rv64 hardware conforms to the rva20 profile. diff --git a/SPECS/linux-lts-kmhv2/0027-UPSTREAM-riscv-dts-thead-add-zfh-for-th1520.patch b/SPECS/linux-lts-kmhv2/0027-UPSTREAM-riscv-dts-thead-add-zfh-for-th1520.patch index 756d021b59..02c41e4add 100644 --- a/SPECS/linux-lts-kmhv2/0027-UPSTREAM-riscv-dts-thead-add-zfh-for-th1520.patch +++ b/SPECS/linux-lts-kmhv2/0027-UPSTREAM-riscv-dts-thead-add-zfh-for-th1520.patch @@ -1,7 +1,7 @@ -From bc00f9a0bbb6c14f199943da7ff9f30859dee923 Mon Sep 17 00:00:00 2001 +From 6c54c277dfd8b9c53a91aac3aa08d80a40eef35d Mon Sep 17 00:00:00 2001 From: Han Gao Date: Fri, 19 Sep 2025 04:44:49 +0800 -Subject: [PATCH 027/467] UPSTREAM: riscv: dts: thead: add zfh for th1520 +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: thead: add zfh for th1520 th1520 support Zfh ISA extension. It supports the same RISC-V extensions as SG2042. diff --git a/SPECS/linux-lts-kmhv2/0028-UPSTREAM-riscv-dts-thead-Add-PWM-controller-node.patch b/SPECS/linux-lts-kmhv2/0028-UPSTREAM-riscv-dts-thead-Add-PWM-controller-node.patch index 6dc799bdb4..1da5ef41e5 100644 --- a/SPECS/linux-lts-kmhv2/0028-UPSTREAM-riscv-dts-thead-Add-PWM-controller-node.patch +++ b/SPECS/linux-lts-kmhv2/0028-UPSTREAM-riscv-dts-thead-Add-PWM-controller-node.patch @@ -1,7 +1,7 @@ -From ccee5be0d66e8a00cbb23864ba081c741a37e009 Mon Sep 17 00:00:00 2001 +From 3ca9f9c1f974516ed56055f86fe810e70234d2e0 Mon Sep 17 00:00:00 2001 From: Michal Wilczynski Date: Thu, 16 Oct 2025 15:38:06 +0200 -Subject: [PATCH 028/467] UPSTREAM: riscv: dts: thead: Add PWM controller node +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: thead: Add PWM controller node Add the Device Tree node for the T-HEAD TH1520 SoC's PWM controller. diff --git a/SPECS/linux-lts-kmhv2/0029-UPSTREAM-riscv-dts-thead-Add-PWM-fan-and-thermal-con.patch b/SPECS/linux-lts-kmhv2/0029-UPSTREAM-riscv-dts-thead-Add-PWM-fan-and-thermal-con.patch index 4d0f44e4d2..16a6ff7a16 100644 --- a/SPECS/linux-lts-kmhv2/0029-UPSTREAM-riscv-dts-thead-Add-PWM-fan-and-thermal-con.patch +++ b/SPECS/linux-lts-kmhv2/0029-UPSTREAM-riscv-dts-thead-Add-PWM-fan-and-thermal-con.patch @@ -1,7 +1,7 @@ -From 6e4ddc5ab60b81304d73eac230c5c2d9b641f114 Mon Sep 17 00:00:00 2001 +From 34e6c9de17b9ff861746760bfc9334e3fc3060cb Mon Sep 17 00:00:00 2001 From: Michal Wilczynski Date: Thu, 16 Oct 2025 15:38:07 +0200 -Subject: [PATCH 029/467] UPSTREAM: riscv: dts: thead: Add PWM fan and thermal +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: thead: Add PWM fan and thermal control Add Device Tree nodes to enable a PWM controlled fan and it's associated diff --git a/SPECS/linux-lts-kmhv2/0030-UPSTREAM-dt-bindings-vendor-prefixes-Add-UltraRISC.patch b/SPECS/linux-lts-kmhv2/0030-UPSTREAM-dt-bindings-vendor-prefixes-Add-UltraRISC.patch index b61a71c164..073023bb11 100644 --- a/SPECS/linux-lts-kmhv2/0030-UPSTREAM-dt-bindings-vendor-prefixes-Add-UltraRISC.patch +++ b/SPECS/linux-lts-kmhv2/0030-UPSTREAM-dt-bindings-vendor-prefixes-Add-UltraRISC.patch @@ -1,7 +1,7 @@ -From 177d1708f10af38636c322a58f9e71637e3553b3 Mon Sep 17 00:00:00 2001 +From 185f8436e47e0844df0a0d25fbb995a69a565fd1 Mon Sep 17 00:00:00 2001 From: Lucas Zampieri Date: Fri, 24 Oct 2025 09:36:40 +0100 -Subject: [PATCH 030/467] UPSTREAM: dt-bindings: vendor-prefixes: Add UltraRISC +Subject: [RUYI PATCH] UPSTREAM: dt-bindings: vendor-prefixes: Add UltraRISC Add vendor prefix for UltraRISC Technology Co., Ltd. diff --git a/SPECS/linux-lts-kmhv2/0031-UPSTREAM-dt-bindings-interrupt-controller-Add-UltraR.patch b/SPECS/linux-lts-kmhv2/0031-UPSTREAM-dt-bindings-interrupt-controller-Add-UltraR.patch index 6ba2aa9b16..a9e42fff55 100644 --- a/SPECS/linux-lts-kmhv2/0031-UPSTREAM-dt-bindings-interrupt-controller-Add-UltraR.patch +++ b/SPECS/linux-lts-kmhv2/0031-UPSTREAM-dt-bindings-interrupt-controller-Add-UltraR.patch @@ -1,7 +1,7 @@ -From 1cb2556af5d85298241d0bccaeab5658801c313a Mon Sep 17 00:00:00 2001 +From 38033dfbe309976053db7684228a93e90a76f54f Mon Sep 17 00:00:00 2001 From: Charles Mirabile Date: Fri, 24 Oct 2025 09:36:41 +0100 -Subject: [PATCH 031/467] UPSTREAM: dt-bindings: interrupt-controller: Add +Subject: [RUYI PATCH] UPSTREAM: dt-bindings: interrupt-controller: Add UltraRISC DP1000 PLIC Add compatible strings for the PLIC found in UltraRISC DP1000 SoC. diff --git a/SPECS/linux-lts-kmhv2/0032-UPSTREAM-irqchip-sifive-plic-Cache-the-interrupt-ena.patch b/SPECS/linux-lts-kmhv2/0032-UPSTREAM-irqchip-sifive-plic-Cache-the-interrupt-ena.patch index cd328f7134..c47e05232b 100644 --- a/SPECS/linux-lts-kmhv2/0032-UPSTREAM-irqchip-sifive-plic-Cache-the-interrupt-ena.patch +++ b/SPECS/linux-lts-kmhv2/0032-UPSTREAM-irqchip-sifive-plic-Cache-the-interrupt-ena.patch @@ -1,7 +1,7 @@ -From 58300649d94886f078c9ae5211d5e73fdb5d86dd Mon Sep 17 00:00:00 2001 +From 3f8b27c28b0516d4675130d799e52fe0e47cc190 Mon Sep 17 00:00:00 2001 From: Charles Mirabile Date: Fri, 24 Oct 2025 09:36:42 +0100 -Subject: [PATCH 032/467] UPSTREAM: irqchip/sifive-plic: Cache the interrupt +Subject: [RUYI PATCH] UPSTREAM: irqchip/sifive-plic: Cache the interrupt enable state Optimize the PLIC driver by maintaining the interrupt enable state in the diff --git a/SPECS/linux-lts-kmhv2/0033-UPSTREAM-irqchip-sifive-plic-Add-support-for-UltraRI.patch b/SPECS/linux-lts-kmhv2/0033-UPSTREAM-irqchip-sifive-plic-Add-support-for-UltraRI.patch index 849bb391aa..35bf32dde3 100644 --- a/SPECS/linux-lts-kmhv2/0033-UPSTREAM-irqchip-sifive-plic-Add-support-for-UltraRI.patch +++ b/SPECS/linux-lts-kmhv2/0033-UPSTREAM-irqchip-sifive-plic-Add-support-for-UltraRI.patch @@ -1,8 +1,8 @@ -From 47ff9167559df87c4792972c083b403e13935fed Mon Sep 17 00:00:00 2001 +From 4ef8a6c6a0ad3046bd79c8e7ba68b55f65faba37 Mon Sep 17 00:00:00 2001 From: Charles Mirabile Date: Fri, 24 Oct 2025 09:36:43 +0100 -Subject: [PATCH 033/467] UPSTREAM: irqchip/sifive-plic: Add support for - UltraRISC DP1000 PLIC +Subject: [RUYI PATCH] UPSTREAM: irqchip/sifive-plic: Add support for UltraRISC + DP1000 PLIC Add a new compatible for the plic found in UltraRISC DP1000 with a quirk to work around a known hardware bug with IRQ claiming in the UR-CP100 cores. diff --git a/SPECS/linux-lts-kmhv2/0034-UPSTREAM-riscv-cpu_ops_sbi-smp_processor_id-returns-.patch b/SPECS/linux-lts-kmhv2/0034-UPSTREAM-riscv-cpu_ops_sbi-smp_processor_id-returns-.patch index d396f1c218..d80cdc947a 100644 --- a/SPECS/linux-lts-kmhv2/0034-UPSTREAM-riscv-cpu_ops_sbi-smp_processor_id-returns-.patch +++ b/SPECS/linux-lts-kmhv2/0034-UPSTREAM-riscv-cpu_ops_sbi-smp_processor_id-returns-.patch @@ -1,8 +1,8 @@ -From 44af92527d4da6d483b4439b15fafb8133938613 Mon Sep 17 00:00:00 2001 +From 88d1fb14b13933d5016b00a18582e2c2dec28c29 Mon Sep 17 00:00:00 2001 From: Ben Dooks Date: Fri, 2 Jan 2026 14:58:39 +0000 -Subject: [PATCH 034/467] UPSTREAM: riscv: cpu_ops_sbi: smp_processor_id() - returns int, not unsigned int +Subject: [RUYI PATCH] UPSTREAM: riscv: cpu_ops_sbi: smp_processor_id() returns + int, not unsigned int The print in sbi_cpu_stop() assumes smp_processor_id() returns an unsigned int, when it is actually an int. Fix the format string to diff --git a/SPECS/linux-lts-kmhv2/0035-UPSTREAM-spi-dt-bindings-fsl-qspi-support-SpacemiT-K.patch b/SPECS/linux-lts-kmhv2/0035-UPSTREAM-spi-dt-bindings-fsl-qspi-support-SpacemiT-K.patch index 5bf082acbe..8df22862a6 100644 --- a/SPECS/linux-lts-kmhv2/0035-UPSTREAM-spi-dt-bindings-fsl-qspi-support-SpacemiT-K.patch +++ b/SPECS/linux-lts-kmhv2/0035-UPSTREAM-spi-dt-bindings-fsl-qspi-support-SpacemiT-K.patch @@ -1,8 +1,8 @@ -From 5b142274eb87250e655c690bfa35b94fa0c7e37d Mon Sep 17 00:00:00 2001 +From b73688a2f1f8a16a7bb9609da304ebfd1dd7f968 Mon Sep 17 00:00:00 2001 From: Alex Elder Date: Mon, 27 Oct 2025 08:29:59 -0500 -Subject: [PATCH 035/467] UPSTREAM: spi: dt-bindings: fsl-qspi: support - SpacemiT K1 +Subject: [RUYI PATCH] UPSTREAM: spi: dt-bindings: fsl-qspi: support SpacemiT + K1 Add the SpacemiT K1 SoC QSPI IP to the list of supported hardware. This is the first non-Freescale device represented here. It has a nearly diff --git a/SPECS/linux-lts-kmhv2/0036-UPSTREAM-spi-dt-bindings-fsl-qspi-add-optional-reset.patch b/SPECS/linux-lts-kmhv2/0036-UPSTREAM-spi-dt-bindings-fsl-qspi-add-optional-reset.patch index df87b1b4de..398331aef3 100644 --- a/SPECS/linux-lts-kmhv2/0036-UPSTREAM-spi-dt-bindings-fsl-qspi-add-optional-reset.patch +++ b/SPECS/linux-lts-kmhv2/0036-UPSTREAM-spi-dt-bindings-fsl-qspi-add-optional-reset.patch @@ -1,7 +1,7 @@ -From 3ac3b07de446afd26f22edb65a08e995d1e10394 Mon Sep 17 00:00:00 2001 +From 10c6bee274527e1fa5cf933eade792a8269bfa6e Mon Sep 17 00:00:00 2001 From: Alex Elder Date: Mon, 27 Oct 2025 08:30:00 -0500 -Subject: [PATCH 036/467] UPSTREAM: spi: dt-bindings: fsl-qspi: add optional +Subject: [RUYI PATCH] UPSTREAM: spi: dt-bindings: fsl-qspi: add optional resets Allow two resets to be defined to support the SpacemiT K1 SoC QSPI IP. diff --git a/SPECS/linux-lts-kmhv2/0037-UPSTREAM-spi-fsl-qspi-add-optional-reset-support.patch b/SPECS/linux-lts-kmhv2/0037-UPSTREAM-spi-fsl-qspi-add-optional-reset-support.patch index 8cf653eea4..cb7815d689 100644 --- a/SPECS/linux-lts-kmhv2/0037-UPSTREAM-spi-fsl-qspi-add-optional-reset-support.patch +++ b/SPECS/linux-lts-kmhv2/0037-UPSTREAM-spi-fsl-qspi-add-optional-reset-support.patch @@ -1,7 +1,7 @@ -From 2383a4b7bd0919af694b0148ac45bfa98b5c3e5e Mon Sep 17 00:00:00 2001 +From eef2e7554dce124c0d27d06663f545ebf8b06b4f Mon Sep 17 00:00:00 2001 From: Alex Elder Date: Mon, 27 Oct 2025 08:30:01 -0500 -Subject: [PATCH 037/467] UPSTREAM: spi: fsl-qspi: add optional reset support +Subject: [RUYI PATCH] UPSTREAM: spi: fsl-qspi: add optional reset support Add support for one or more optional exclusive resets. These simply need to be deasserted at probe time, and can remain that way for the life of the diff --git a/SPECS/linux-lts-kmhv2/0038-UPSTREAM-spi-fsl-qspi-switch-predicates-to-bool.patch b/SPECS/linux-lts-kmhv2/0038-UPSTREAM-spi-fsl-qspi-switch-predicates-to-bool.patch index 5790e35633..78d52fb913 100644 --- a/SPECS/linux-lts-kmhv2/0038-UPSTREAM-spi-fsl-qspi-switch-predicates-to-bool.patch +++ b/SPECS/linux-lts-kmhv2/0038-UPSTREAM-spi-fsl-qspi-switch-predicates-to-bool.patch @@ -1,7 +1,7 @@ -From 6c4d84191d4a646424af4fd8f0bfa0cb6a8b88a5 Mon Sep 17 00:00:00 2001 +From 01d5441431b796aa0c7bef71294e87584b3a7ac2 Mon Sep 17 00:00:00 2001 From: Alex Elder Date: Mon, 27 Oct 2025 08:30:02 -0500 -Subject: [PATCH 038/467] UPSTREAM: spi: fsl-qspi: switch predicates to bool +Subject: [RUYI PATCH] UPSTREAM: spi: fsl-qspi: switch predicates to bool Change all the needs_*() functions so they are no longer inline, and return bool rather than int. diff --git a/SPECS/linux-lts-kmhv2/0039-UPSTREAM-spi-fsl-qspi-add-a-clock-disable-quirk.patch b/SPECS/linux-lts-kmhv2/0039-UPSTREAM-spi-fsl-qspi-add-a-clock-disable-quirk.patch index 2a0208b72d..2a381e6fb3 100644 --- a/SPECS/linux-lts-kmhv2/0039-UPSTREAM-spi-fsl-qspi-add-a-clock-disable-quirk.patch +++ b/SPECS/linux-lts-kmhv2/0039-UPSTREAM-spi-fsl-qspi-add-a-clock-disable-quirk.patch @@ -1,7 +1,7 @@ -From df1020f14b967f34e7183e2820998cf3ae06f448 Mon Sep 17 00:00:00 2001 +From 513e5c7ca8e7b4847c1a9fa9328ecc1da6e03ca4 Mon Sep 17 00:00:00 2001 From: Alex Elder Date: Mon, 27 Oct 2025 08:30:03 -0500 -Subject: [PATCH 039/467] UPSTREAM: spi: fsl-qspi: add a clock disable quirk +Subject: [RUYI PATCH] UPSTREAM: spi: fsl-qspi: add a clock disable quirk The SpacemiT K1 SoC QSPI implementation needs to avoid shutting off the clock when changing its rate. Add a new quirk to indicate that disabling diff --git a/SPECS/linux-lts-kmhv2/0040-UPSTREAM-spi-fsl-qspi-introduce-sfa_size-devtype-dat.patch b/SPECS/linux-lts-kmhv2/0040-UPSTREAM-spi-fsl-qspi-introduce-sfa_size-devtype-dat.patch index 25af899158..c71778c496 100644 --- a/SPECS/linux-lts-kmhv2/0040-UPSTREAM-spi-fsl-qspi-introduce-sfa_size-devtype-dat.patch +++ b/SPECS/linux-lts-kmhv2/0040-UPSTREAM-spi-fsl-qspi-introduce-sfa_size-devtype-dat.patch @@ -1,8 +1,7 @@ -From 5ee33dac7a10929555229bc766263ba35d9f130b Mon Sep 17 00:00:00 2001 +From a5d94c358a562e2cf863fff92b78f0ee109abf10 Mon Sep 17 00:00:00 2001 From: Alex Elder Date: Mon, 27 Oct 2025 08:30:04 -0500 -Subject: [PATCH 040/467] UPSTREAM: spi: fsl-qspi: introduce sfa_size devtype - data +Subject: [RUYI PATCH] UPSTREAM: spi: fsl-qspi: introduce sfa_size devtype data In fsl_qspi_default_setup(), four registers define the size of blocks of data to written to each of four chips that comprise SPI NOR flash storage. diff --git a/SPECS/linux-lts-kmhv2/0041-UPSTREAM-spi-fsl-qspi-support-the-SpacemiT-K1-SoC.patch b/SPECS/linux-lts-kmhv2/0041-UPSTREAM-spi-fsl-qspi-support-the-SpacemiT-K1-SoC.patch index 2b3039720f..f9a55c89ea 100644 --- a/SPECS/linux-lts-kmhv2/0041-UPSTREAM-spi-fsl-qspi-support-the-SpacemiT-K1-SoC.patch +++ b/SPECS/linux-lts-kmhv2/0041-UPSTREAM-spi-fsl-qspi-support-the-SpacemiT-K1-SoC.patch @@ -1,7 +1,7 @@ -From a8bec413546fceae68a0a397e5a6838e88544773 Mon Sep 17 00:00:00 2001 +From 014a6255ae46191c6eae14aa9de40535b4226ff0 Mon Sep 17 00:00:00 2001 From: Alex Elder Date: Mon, 27 Oct 2025 08:30:05 -0500 -Subject: [PATCH 041/467] UPSTREAM: spi: fsl-qspi: support the SpacemiT K1 SoC +Subject: [RUYI PATCH] UPSTREAM: spi: fsl-qspi: support the SpacemiT K1 SoC Allow the SPI_FSL_QUADSPI Kconfig option to be selected if ARCH_SPACEMIT enabled. diff --git a/SPECS/linux-lts-kmhv2/0042-UPSTREAM-dt-bindings-pci-spacemit-Introduce-PCIe-hos.patch b/SPECS/linux-lts-kmhv2/0042-UPSTREAM-dt-bindings-pci-spacemit-Introduce-PCIe-hos.patch index 6059a178c4..8ad45c9e57 100644 --- a/SPECS/linux-lts-kmhv2/0042-UPSTREAM-dt-bindings-pci-spacemit-Introduce-PCIe-hos.patch +++ b/SPECS/linux-lts-kmhv2/0042-UPSTREAM-dt-bindings-pci-spacemit-Introduce-PCIe-hos.patch @@ -1,7 +1,7 @@ -From da811b95eb6cac6d2befd327921dfa943928d913 Mon Sep 17 00:00:00 2001 +From 0d6c9d0a071fcea507cb2b62195d329fbfd4e3fa Mon Sep 17 00:00:00 2001 From: Alex Elder Date: Thu, 13 Nov 2025 15:45:35 -0600 -Subject: [PATCH 042/467] UPSTREAM: dt-bindings: pci: spacemit: Introduce PCIe +Subject: [RUYI PATCH] UPSTREAM: dt-bindings: pci: spacemit: Introduce PCIe host controller Add the Devicetree binding for the PCIe Root Complex found on the SpacemiT diff --git a/SPECS/linux-lts-kmhv2/0043-UPSTREAM-PCI-spacemit-Add-SpacemiT-PCIe-host-driver.patch b/SPECS/linux-lts-kmhv2/0043-UPSTREAM-PCI-spacemit-Add-SpacemiT-PCIe-host-driver.patch index c6df251f89..15f880c23c 100644 --- a/SPECS/linux-lts-kmhv2/0043-UPSTREAM-PCI-spacemit-Add-SpacemiT-PCIe-host-driver.patch +++ b/SPECS/linux-lts-kmhv2/0043-UPSTREAM-PCI-spacemit-Add-SpacemiT-PCIe-host-driver.patch @@ -1,8 +1,7 @@ -From 2cd4c603d19ce303b9a474892adb6f0982e1a630 Mon Sep 17 00:00:00 2001 +From e886894eecb01fde7c6d687a520c00f8f8c6577b Mon Sep 17 00:00:00 2001 From: Alex Elder Date: Thu, 13 Nov 2025 15:45:37 -0600 -Subject: [PATCH 043/467] UPSTREAM: PCI: spacemit: Add SpacemiT PCIe host - driver +Subject: [RUYI PATCH] UPSTREAM: PCI: spacemit: Add SpacemiT PCIe host driver Introduce a driver for the PCIe host controller found in the SpacemiT K1 SoC. The hardware is derived from the Synopsys DesignWare PCIe IP. The diff --git a/SPECS/linux-lts-kmhv2/0044-UPSTREAM-ASoC-dt-bindings-Add-bindings-for-SpacemiT-.patch b/SPECS/linux-lts-kmhv2/0044-UPSTREAM-ASoC-dt-bindings-Add-bindings-for-SpacemiT-.patch index 1485b4db34..9f87089128 100644 --- a/SPECS/linux-lts-kmhv2/0044-UPSTREAM-ASoC-dt-bindings-Add-bindings-for-SpacemiT-.patch +++ b/SPECS/linux-lts-kmhv2/0044-UPSTREAM-ASoC-dt-bindings-Add-bindings-for-SpacemiT-.patch @@ -1,8 +1,8 @@ -From 13a1831ca9975f970aa93217ef8f0d78be839558 Mon Sep 17 00:00:00 2001 +From dd167e5e356efc521fea95cca3dab9214d112f2f Mon Sep 17 00:00:00 2001 From: Troy Mitchell Date: Fri, 17 Oct 2025 11:16:17 +0800 -Subject: [PATCH 044/467] UPSTREAM: ASoC: dt-bindings: Add bindings for - SpacemiT K1 +Subject: [RUYI PATCH] UPSTREAM: ASoC: dt-bindings: Add bindings for SpacemiT + K1 Add dt-binding for the i2s driver of SpacemiT's K1 SoC. diff --git a/SPECS/linux-lts-kmhv2/0045-UPSTREAM-ASoC-spacemit-add-i2s-support-for-K1-SoC.patch b/SPECS/linux-lts-kmhv2/0045-UPSTREAM-ASoC-spacemit-add-i2s-support-for-K1-SoC.patch index 7ac964a344..79edb29c56 100644 --- a/SPECS/linux-lts-kmhv2/0045-UPSTREAM-ASoC-spacemit-add-i2s-support-for-K1-SoC.patch +++ b/SPECS/linux-lts-kmhv2/0045-UPSTREAM-ASoC-spacemit-add-i2s-support-for-K1-SoC.patch @@ -1,7 +1,7 @@ -From 80ddb8319d498df366ee69857ac128f3a759fa09 Mon Sep 17 00:00:00 2001 +From f80e4dd0f340bda7a0c1d1cbcb59d4a346aa00dd Mon Sep 17 00:00:00 2001 From: Troy Mitchell Date: Fri, 17 Oct 2025 11:16:18 +0800 -Subject: [PATCH 045/467] UPSTREAM: ASoC: spacemit: add i2s support for K1 SoC +Subject: [RUYI PATCH] UPSTREAM: ASoC: spacemit: add i2s support for K1 SoC Add ASoC platform driver for the SpacemiT K1 SoC full-duplex I2S controller. diff --git a/SPECS/linux-lts-kmhv2/0046-UPSTREAM-riscv-dts-spacemit-add-UART-pinctrl-combina.patch b/SPECS/linux-lts-kmhv2/0046-UPSTREAM-riscv-dts-spacemit-add-UART-pinctrl-combina.patch index 9821983f58..0efa4da8f2 100644 --- a/SPECS/linux-lts-kmhv2/0046-UPSTREAM-riscv-dts-spacemit-add-UART-pinctrl-combina.patch +++ b/SPECS/linux-lts-kmhv2/0046-UPSTREAM-riscv-dts-spacemit-add-UART-pinctrl-combina.patch @@ -1,7 +1,7 @@ -From f28219b541a910d335af7fc7097a19a6e07b8712 Mon Sep 17 00:00:00 2001 +From affb820dfce75897605fbf89105fc1537a97d75b Mon Sep 17 00:00:00 2001 From: Hendrik Hamerlinck Date: Wed, 17 Sep 2025 08:59:07 +0200 -Subject: [PATCH 046/467] UPSTREAM: riscv: dts: spacemit: add UART pinctrl +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: spacemit: add UART pinctrl combinations Add UART pinctrl configurations based on the SoC datasheet and the diff --git a/SPECS/linux-lts-kmhv2/0047-UPSTREAM-riscv-dts-spacemit-enable-the-i2c8-adapter.patch b/SPECS/linux-lts-kmhv2/0047-UPSTREAM-riscv-dts-spacemit-enable-the-i2c8-adapter.patch index 548745b649..0351d09704 100644 --- a/SPECS/linux-lts-kmhv2/0047-UPSTREAM-riscv-dts-spacemit-enable-the-i2c8-adapter.patch +++ b/SPECS/linux-lts-kmhv2/0047-UPSTREAM-riscv-dts-spacemit-enable-the-i2c8-adapter.patch @@ -1,8 +1,7 @@ -From 3f8785742d64517f721a7a1a9e35822265ad85a4 Mon Sep 17 00:00:00 2001 +From 1df92e173f9dd68d0498d92fb07c15a5b2ddf8eb Mon Sep 17 00:00:00 2001 From: Alex Elder Date: Mon, 25 Aug 2025 12:20:54 -0500 -Subject: [PATCH 047/467] UPSTREAM: riscv: dts: spacemit: enable the i2c8 - adapter +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: spacemit: enable the i2c8 adapter Define properties for the I2C adapter that provides access to the SpacemiT P1 PMIC. Enable this adapter on the Banana Pi BPI-F3. diff --git a/SPECS/linux-lts-kmhv2/0048-UPSTREAM-riscv-dts-spacemit-define-fixed-regulators.patch b/SPECS/linux-lts-kmhv2/0048-UPSTREAM-riscv-dts-spacemit-define-fixed-regulators.patch index f309738c32..3b5e57ed41 100644 --- a/SPECS/linux-lts-kmhv2/0048-UPSTREAM-riscv-dts-spacemit-define-fixed-regulators.patch +++ b/SPECS/linux-lts-kmhv2/0048-UPSTREAM-riscv-dts-spacemit-define-fixed-regulators.patch @@ -1,8 +1,7 @@ -From 60174cdbef524e4485dec91e48413d76da328022 Mon Sep 17 00:00:00 2001 +From b0c37d9383e9fff2cfae5d13e29a5b2fd134e33b Mon Sep 17 00:00:00 2001 From: Alex Elder Date: Mon, 25 Aug 2025 12:20:55 -0500 -Subject: [PATCH 048/467] UPSTREAM: riscv: dts: spacemit: define fixed - regulators +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: spacemit: define fixed regulators Define the DC power input and the 4v power as fixed supplies in the Banana Pi BPI-F3. diff --git a/SPECS/linux-lts-kmhv2/0049-UPSTREAM-riscv-dts-spacemit-define-regulator-constra.patch b/SPECS/linux-lts-kmhv2/0049-UPSTREAM-riscv-dts-spacemit-define-regulator-constra.patch index 0d1ed9ad79..4b13e15e20 100644 --- a/SPECS/linux-lts-kmhv2/0049-UPSTREAM-riscv-dts-spacemit-define-regulator-constra.patch +++ b/SPECS/linux-lts-kmhv2/0049-UPSTREAM-riscv-dts-spacemit-define-regulator-constra.patch @@ -1,7 +1,7 @@ -From 43691716fd0d18bd887592bb3f1a7dc63e9b49be Mon Sep 17 00:00:00 2001 +From 7fc9ff12b887fdc874ebb28f553e807648b6a4d4 Mon Sep 17 00:00:00 2001 From: Alex Elder Date: Mon, 25 Aug 2025 12:20:56 -0500 -Subject: [PATCH 049/467] UPSTREAM: riscv: dts: spacemit: define regulator +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: spacemit: define regulator constraints Define basic constraints for the regulators in the SpacemiT P1 PMIC, diff --git a/SPECS/linux-lts-kmhv2/0050-UPSTREAM-riscv-dts-spacemit-enable-the-i2c2-adapter-.patch b/SPECS/linux-lts-kmhv2/0050-UPSTREAM-riscv-dts-spacemit-enable-the-i2c2-adapter-.patch index 4266d9d06e..c64be604a7 100644 --- a/SPECS/linux-lts-kmhv2/0050-UPSTREAM-riscv-dts-spacemit-enable-the-i2c2-adapter-.patch +++ b/SPECS/linux-lts-kmhv2/0050-UPSTREAM-riscv-dts-spacemit-enable-the-i2c2-adapter-.patch @@ -1,8 +1,8 @@ -From 3d02f5d734bb489dc5c101affd5ad99687ffaffd Mon Sep 17 00:00:00 2001 +From a276be6d58f16c9c62bd6c0f76f6b2133fcfff5b Mon Sep 17 00:00:00 2001 From: Aurelien Jarno Date: Fri, 26 Sep 2025 19:54:37 +0200 -Subject: [PATCH 050/467] UPSTREAM: riscv: dts: spacemit: enable the i2c2 - adapter on BPI-F3 +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: spacemit: enable the i2c2 adapter + on BPI-F3 Define properties for the I2C adapter, and enable it on the BPI-F3. It will be used by the 24c02 eeprom. diff --git a/SPECS/linux-lts-kmhv2/0051-UPSTREAM-riscv-dts-spacemit-add-24c02-eeprom-on-BPI-.patch b/SPECS/linux-lts-kmhv2/0051-UPSTREAM-riscv-dts-spacemit-add-24c02-eeprom-on-BPI-.patch index feedcc216d..5c72618d50 100644 --- a/SPECS/linux-lts-kmhv2/0051-UPSTREAM-riscv-dts-spacemit-add-24c02-eeprom-on-BPI-.patch +++ b/SPECS/linux-lts-kmhv2/0051-UPSTREAM-riscv-dts-spacemit-add-24c02-eeprom-on-BPI-.patch @@ -1,7 +1,7 @@ -From dc2d05a9865f35af5203640dc5f517c300667ae2 Mon Sep 17 00:00:00 2001 +From c34d30a8bde9d30953c0d83f0fa993d925f5e038 Mon Sep 17 00:00:00 2001 From: Aurelien Jarno Date: Fri, 26 Sep 2025 19:54:38 +0200 -Subject: [PATCH 051/467] UPSTREAM: riscv: dts: spacemit: add 24c02 eeprom on +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: spacemit: add 24c02 eeprom on BPI-F3 The BPI-F3 board includes a 24c02 eeprom, that stores the MAC addresses diff --git a/SPECS/linux-lts-kmhv2/0052-UPSTREAM-riscv-dts-spacemit-add-i2c-aliases-on-BPI-F.patch b/SPECS/linux-lts-kmhv2/0052-UPSTREAM-riscv-dts-spacemit-add-i2c-aliases-on-BPI-F.patch index 3c9f8346f3..3e089bc47b 100644 --- a/SPECS/linux-lts-kmhv2/0052-UPSTREAM-riscv-dts-spacemit-add-i2c-aliases-on-BPI-F.patch +++ b/SPECS/linux-lts-kmhv2/0052-UPSTREAM-riscv-dts-spacemit-add-i2c-aliases-on-BPI-F.patch @@ -1,7 +1,7 @@ -From 583c054150ac0bc72eb5f38eba8088468c3e93b5 Mon Sep 17 00:00:00 2001 +From d0ff2694bd729289ac0e0a95bd0ad9c82b10cbe1 Mon Sep 17 00:00:00 2001 From: Aurelien Jarno Date: Fri, 26 Sep 2025 19:54:39 +0200 -Subject: [PATCH 052/467] UPSTREAM: riscv: dts: spacemit: add i2c aliases on +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: spacemit: add i2c aliases on BPI-F3 Add i2c aliases for i2c2 and i2c8 on BPI-F3. This is useful to keep a diff --git a/SPECS/linux-lts-kmhv2/0053-UPSTREAM-riscv-dts-spacemit-add-Ethernet-and-PDMA-to.patch b/SPECS/linux-lts-kmhv2/0053-UPSTREAM-riscv-dts-spacemit-add-Ethernet-and-PDMA-to.patch index 6ed1f8203d..2f6950c455 100644 --- a/SPECS/linux-lts-kmhv2/0053-UPSTREAM-riscv-dts-spacemit-add-Ethernet-and-PDMA-to.patch +++ b/SPECS/linux-lts-kmhv2/0053-UPSTREAM-riscv-dts-spacemit-add-Ethernet-and-PDMA-to.patch @@ -1,8 +1,8 @@ -From 84af2f4907b4dfc470ac41d11760d57cd7907927 Mon Sep 17 00:00:00 2001 +From 13fa4b662d56827d91fb4cbc78cbaf44253e90c9 Mon Sep 17 00:00:00 2001 From: Michael Opdenacker Date: Wed, 22 Oct 2025 20:18:38 +0000 -Subject: [PATCH 053/467] UPSTREAM: riscv: dts: spacemit: add Ethernet and PDMA - to OrangePi RV2 +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: spacemit: add Ethernet and PDMA to + OrangePi RV2 The OrangePi RV2 board ships two RGMII ethernet ports. Each has an external Motorcomm YT8531C PHY attached, the PHY uses GPIO diff --git a/SPECS/linux-lts-kmhv2/0054-UPSTREAM-riscv-dts-spacemit-add-MusePi-Pro-board-dev.patch b/SPECS/linux-lts-kmhv2/0054-UPSTREAM-riscv-dts-spacemit-add-MusePi-Pro-board-dev.patch index 2b5114e787..e1ebb490cb 100644 --- a/SPECS/linux-lts-kmhv2/0054-UPSTREAM-riscv-dts-spacemit-add-MusePi-Pro-board-dev.patch +++ b/SPECS/linux-lts-kmhv2/0054-UPSTREAM-riscv-dts-spacemit-add-MusePi-Pro-board-dev.patch @@ -1,7 +1,7 @@ -From 0c5f1b6c12c4797ce96d82ce0bc35941b7d11848 Mon Sep 17 00:00:00 2001 +From 3dafd093bd3316afd9db38030ed61ebb2382f469 Mon Sep 17 00:00:00 2001 From: Troy Mitchell Date: Thu, 23 Oct 2025 15:28:30 +0800 -Subject: [PATCH 054/467] UPSTREAM: riscv: dts: spacemit: add MusePi Pro board +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: spacemit: add MusePi Pro board device tree Add initial device tree support for the MusePi Pro board [1]. diff --git a/SPECS/linux-lts-kmhv2/0055-UPSTREAM-riscv-dts-spacemit-enable-K1-SoC-QSPI-on-BP.patch b/SPECS/linux-lts-kmhv2/0055-UPSTREAM-riscv-dts-spacemit-enable-K1-SoC-QSPI-on-BP.patch index b802662e55..1d90bd8999 100644 --- a/SPECS/linux-lts-kmhv2/0055-UPSTREAM-riscv-dts-spacemit-enable-K1-SoC-QSPI-on-BP.patch +++ b/SPECS/linux-lts-kmhv2/0055-UPSTREAM-riscv-dts-spacemit-enable-K1-SoC-QSPI-on-BP.patch @@ -1,7 +1,7 @@ -From 31318a05caadf4e7a9d89bf5c11a7e4bb248e835 Mon Sep 17 00:00:00 2001 +From ba2b866292f1f2f274ff75a54e87fe7bc5dad3e2 Mon Sep 17 00:00:00 2001 From: Alex Elder Date: Mon, 27 Oct 2025 08:30:06 -0500 -Subject: [PATCH 055/467] UPSTREAM: riscv: dts: spacemit: enable K1 SoC QSPI on +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: spacemit: enable K1 SoC QSPI on BPI-F3 Define DTS nodes to enable support for QSPI on the K1 SoC, including the diff --git a/SPECS/linux-lts-kmhv2/0056-UPSTREAM-riscv-dts-spacemit-Add-OrangePi-R2S-board-d.patch b/SPECS/linux-lts-kmhv2/0056-UPSTREAM-riscv-dts-spacemit-Add-OrangePi-R2S-board-d.patch index fdb81df0ad..6288d13917 100644 --- a/SPECS/linux-lts-kmhv2/0056-UPSTREAM-riscv-dts-spacemit-Add-OrangePi-R2S-board-d.patch +++ b/SPECS/linux-lts-kmhv2/0056-UPSTREAM-riscv-dts-spacemit-Add-OrangePi-R2S-board-d.patch @@ -1,8 +1,8 @@ -From bb2450948146eabe3ab427e20f97b58aca4b1d6c Mon Sep 17 00:00:00 2001 +From 24c1c297e0c77c81c2e3a9ed9690f3e133986a22 Mon Sep 17 00:00:00 2001 From: Michael Opdenacker Date: Wed, 12 Nov 2025 04:44:42 +0000 -Subject: [PATCH 056/467] UPSTREAM: riscv: dts: spacemit: Add OrangePi R2S - board device tree +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: spacemit: Add OrangePi R2S board + device tree Add initial device tree support for the OrangePi RV2 board [1], which is marketed as using the Ky X1 SoC but is identical in die and package diff --git a/SPECS/linux-lts-kmhv2/0057-UPSTREAM-riscv-dts-spacemit-reorder-i2c2-node.patch b/SPECS/linux-lts-kmhv2/0057-UPSTREAM-riscv-dts-spacemit-reorder-i2c2-node.patch index 8604ed55e1..d6b11da6e5 100644 --- a/SPECS/linux-lts-kmhv2/0057-UPSTREAM-riscv-dts-spacemit-reorder-i2c2-node.patch +++ b/SPECS/linux-lts-kmhv2/0057-UPSTREAM-riscv-dts-spacemit-reorder-i2c2-node.patch @@ -1,7 +1,7 @@ -From baea402c4353408511c0a1dd49a95a3a6cefa14c Mon Sep 17 00:00:00 2001 +From 1831ac73812e9bb0337b60cf0cbe5e61baaf4769 Mon Sep 17 00:00:00 2001 From: Troy Mitchell Date: Wed, 5 Nov 2025 11:37:43 +0800 -Subject: [PATCH 057/467] UPSTREAM: riscv: dts: spacemit: reorder i2c2 node +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: spacemit: reorder i2c2 node Reorder the i2c2 node to its correct position according to its register address.This improves the readability and maintainability diff --git a/SPECS/linux-lts-kmhv2/0058-UPSTREAM-riscv-dts-spacemit-define-all-missing-I2C-c.patch b/SPECS/linux-lts-kmhv2/0058-UPSTREAM-riscv-dts-spacemit-define-all-missing-I2C-c.patch index ae0c476561..128376f03e 100644 --- a/SPECS/linux-lts-kmhv2/0058-UPSTREAM-riscv-dts-spacemit-define-all-missing-I2C-c.patch +++ b/SPECS/linux-lts-kmhv2/0058-UPSTREAM-riscv-dts-spacemit-define-all-missing-I2C-c.patch @@ -1,8 +1,8 @@ -From c45c776b556de646db335514a310bf0caf45e297 Mon Sep 17 00:00:00 2001 +From 30931c3912167e96f982909390b4cb13d61548d5 Mon Sep 17 00:00:00 2001 From: Troy Mitchell Date: Wed, 5 Nov 2025 11:37:44 +0800 -Subject: [PATCH 058/467] UPSTREAM: riscv: dts: spacemit: define all missing - I2C controller nodes +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: spacemit: define all missing I2C + controller nodes SpacemiT K1 SoC is equipped with a total of nine I2C controllers, ranging from I2C0 to I2C8. diff --git a/SPECS/linux-lts-kmhv2/0059-UPSTREAM-rtc-spacemit-MFD_SPACEMIT_P1-as-dependencie.patch b/SPECS/linux-lts-kmhv2/0059-UPSTREAM-rtc-spacemit-MFD_SPACEMIT_P1-as-dependencie.patch index 9df139c76a..637f8129fd 100644 --- a/SPECS/linux-lts-kmhv2/0059-UPSTREAM-rtc-spacemit-MFD_SPACEMIT_P1-as-dependencie.patch +++ b/SPECS/linux-lts-kmhv2/0059-UPSTREAM-rtc-spacemit-MFD_SPACEMIT_P1-as-dependencie.patch @@ -1,8 +1,7 @@ -From 70f112bf88bec82aeedec4c778bcd4f3232a0765 Mon Sep 17 00:00:00 2001 +From 915b04c620188a1aac7cc9e8481bd1dc3069817d Mon Sep 17 00:00:00 2001 From: Troy Mitchell Date: Tue, 18 Nov 2025 14:08:06 +0800 -Subject: [PATCH 059/467] UPSTREAM: rtc: spacemit: MFD_SPACEMIT_P1 as - dependencies +Subject: [RUYI PATCH] UPSTREAM: rtc: spacemit: MFD_SPACEMIT_P1 as dependencies RTC_DRV_SPACEMIT_P1 is a subdevice of P1 and should depend on MFD_SPACEMIT_P1 rather than selecting it directly. Using 'select' diff --git a/SPECS/linux-lts-kmhv2/0060-UPSTREAM-mfd-simple-mfd-i2c-Remove-select-I2C_K1-fro.patch b/SPECS/linux-lts-kmhv2/0060-UPSTREAM-mfd-simple-mfd-i2c-Remove-select-I2C_K1-fro.patch index 8c75b3d1d7..8765e4955a 100644 --- a/SPECS/linux-lts-kmhv2/0060-UPSTREAM-mfd-simple-mfd-i2c-Remove-select-I2C_K1-fro.patch +++ b/SPECS/linux-lts-kmhv2/0060-UPSTREAM-mfd-simple-mfd-i2c-Remove-select-I2C_K1-fro.patch @@ -1,8 +1,8 @@ -From 5428e4b1551b578c73d4dbb8ca29e15132ed6cc3 Mon Sep 17 00:00:00 2001 +From 6069d468c347c12814556df14bbe53dade5799be Mon Sep 17 00:00:00 2001 From: Troy Mitchell Date: Mon, 27 Oct 2025 13:48:05 +0800 -Subject: [PATCH 060/467] UPSTREAM: mfd: simple-mfd-i2c: Remove select I2C_K1 - from MFD_SPACEMIT_P1 +Subject: [RUYI PATCH] UPSTREAM: mfd: simple-mfd-i2c: Remove select I2C_K1 from + MFD_SPACEMIT_P1 select will force a symbol to a specific value without considering its dependencies. As a result, the i2c-k1 driver will fail to build diff --git a/SPECS/linux-lts-kmhv2/0061-UPSTREAM-driver-reset-spacemit-p1-add-driver-for-pow.patch b/SPECS/linux-lts-kmhv2/0061-UPSTREAM-driver-reset-spacemit-p1-add-driver-for-pow.patch index e03efac6a9..29f66cd23f 100644 --- a/SPECS/linux-lts-kmhv2/0061-UPSTREAM-driver-reset-spacemit-p1-add-driver-for-pow.patch +++ b/SPECS/linux-lts-kmhv2/0061-UPSTREAM-driver-reset-spacemit-p1-add-driver-for-pow.patch @@ -1,7 +1,7 @@ -From d7b622bee8767fa7990914aca5f7df68b486ec3a Mon Sep 17 00:00:00 2001 +From eef8f9cc817fec7a4c2229a9b9ee475a0efcf53b Mon Sep 17 00:00:00 2001 From: Aurelien Jarno Date: Mon, 3 Nov 2025 00:01:59 +0100 -Subject: [PATCH 061/467] UPSTREAM: driver: reset: spacemit-p1: add driver for +Subject: [RUYI PATCH] UPSTREAM: driver: reset: spacemit-p1: add driver for poweroff/reboot This driver implements poweroff/reboot support for the SpacemiT P1 PMIC diff --git a/SPECS/linux-lts-kmhv2/0062-UPSTREAM-riscv-remove-irqflags.h-inclusion-in-asm-bi.patch b/SPECS/linux-lts-kmhv2/0062-UPSTREAM-riscv-remove-irqflags.h-inclusion-in-asm-bi.patch index e1ec6c0a80..9e03454da1 100644 --- a/SPECS/linux-lts-kmhv2/0062-UPSTREAM-riscv-remove-irqflags.h-inclusion-in-asm-bi.patch +++ b/SPECS/linux-lts-kmhv2/0062-UPSTREAM-riscv-remove-irqflags.h-inclusion-in-asm-bi.patch @@ -1,7 +1,7 @@ -From 689210eca440a1f4fbcfb711fec8d91331cea13e Mon Sep 17 00:00:00 2001 +From a33608232c9c99d13d018635c30ee0ff1983de7e Mon Sep 17 00:00:00 2001 From: Yunhui Cui Date: Tue, 16 Dec 2025 09:47:19 +0800 -Subject: [PATCH 062/467] UPSTREAM: riscv: remove irqflags.h inclusion in +Subject: [RUYI PATCH] UPSTREAM: riscv: remove irqflags.h inclusion in asm/bitops.h The arch/riscv/include/asm/bitops.h does not functionally require diff --git a/SPECS/linux-lts-kmhv2/0063-UPSTREAM-riscv-atomic.h-use-RISCV_FULL_BARRIER-in-_a.patch b/SPECS/linux-lts-kmhv2/0063-UPSTREAM-riscv-atomic.h-use-RISCV_FULL_BARRIER-in-_a.patch index 4191f8109c..0fb3f34661 100644 --- a/SPECS/linux-lts-kmhv2/0063-UPSTREAM-riscv-atomic.h-use-RISCV_FULL_BARRIER-in-_a.patch +++ b/SPECS/linux-lts-kmhv2/0063-UPSTREAM-riscv-atomic.h-use-RISCV_FULL_BARRIER-in-_a.patch @@ -1,7 +1,7 @@ -From c7f82d8c41148f7827e892b69de32cfc5f5b6ac8 Mon Sep 17 00:00:00 2001 +From 34f41ea98d21a5605f1d5973259656f6e6557de0 Mon Sep 17 00:00:00 2001 From: Zongmin Zhou Date: Thu, 20 Nov 2025 17:58:31 +0800 -Subject: [PATCH 063/467] UPSTREAM: riscv/atomic.h: use RISCV_FULL_BARRIER in +Subject: [RUYI PATCH] UPSTREAM: riscv/atomic.h: use RISCV_FULL_BARRIER in _arch_atomic* function. Replace the same code with the pre-defined macro diff --git a/SPECS/linux-lts-kmhv2/0064-UPSTREAM-drm-dumb-buffers-Sanitize-output-on-errors.patch b/SPECS/linux-lts-kmhv2/0064-UPSTREAM-drm-dumb-buffers-Sanitize-output-on-errors.patch index 81b4d9efe4..0604111102 100644 --- a/SPECS/linux-lts-kmhv2/0064-UPSTREAM-drm-dumb-buffers-Sanitize-output-on-errors.patch +++ b/SPECS/linux-lts-kmhv2/0064-UPSTREAM-drm-dumb-buffers-Sanitize-output-on-errors.patch @@ -1,7 +1,7 @@ -From 11ee08759592cbf595fbbc34aab1f2e631fcaaf1 Mon Sep 17 00:00:00 2001 +From 8030689f50a72fc225dd6c31ad77d6b868549463 Mon Sep 17 00:00:00 2001 From: Thomas Zimmermann Date: Thu, 21 Aug 2025 10:17:08 +0200 -Subject: [PATCH 064/467] UPSTREAM: drm/dumb-buffers: Sanitize output on errors +Subject: [RUYI PATCH] UPSTREAM: drm/dumb-buffers: Sanitize output on errors The ioctls MODE_CREATE_DUMB and MODE_MAP_DUMB return results into a memory buffer supplied by user space. On errors, it is possible that diff --git a/SPECS/linux-lts-kmhv2/0065-UPSTREAM-drm-dumb-buffers-Provide-helper-to-set-pitc.patch b/SPECS/linux-lts-kmhv2/0065-UPSTREAM-drm-dumb-buffers-Provide-helper-to-set-pitc.patch index a51677cd2c..c249232713 100644 --- a/SPECS/linux-lts-kmhv2/0065-UPSTREAM-drm-dumb-buffers-Provide-helper-to-set-pitc.patch +++ b/SPECS/linux-lts-kmhv2/0065-UPSTREAM-drm-dumb-buffers-Provide-helper-to-set-pitc.patch @@ -1,8 +1,8 @@ -From ffc2daa0d4924fb2007651922cc6c14f597aff80 Mon Sep 17 00:00:00 2001 +From cf1dda8a91f6866dead5cfac3205be1ea706a065 Mon Sep 17 00:00:00 2001 From: Thomas Zimmermann Date: Thu, 21 Aug 2025 10:17:09 +0200 -Subject: [PATCH 065/467] UPSTREAM: drm/dumb-buffers: Provide helper to set - pitch and size +Subject: [RUYI PATCH] UPSTREAM: drm/dumb-buffers: Provide helper to set pitch + and size Add drm_modes_size_dumb(), a helper to calculate the dumb-buffer scanline pitch and allocation size. Implementations of struct diff --git a/SPECS/linux-lts-kmhv2/0069-UPSTREAM-drm-hypervdrm-Use-vblank-timer.patch b/SPECS/linux-lts-kmhv2/0066-UPSTREAM-drm-hypervdrm-Use-vblank-timer.patch similarity index 94% rename from SPECS/linux-lts-kmhv2/0069-UPSTREAM-drm-hypervdrm-Use-vblank-timer.patch rename to SPECS/linux-lts-kmhv2/0066-UPSTREAM-drm-hypervdrm-Use-vblank-timer.patch index 0ad15ed0ef..d3d98f5867 100644 --- a/SPECS/linux-lts-kmhv2/0069-UPSTREAM-drm-hypervdrm-Use-vblank-timer.patch +++ b/SPECS/linux-lts-kmhv2/0066-UPSTREAM-drm-hypervdrm-Use-vblank-timer.patch @@ -1,7 +1,7 @@ -From e0e2839348f82a4bba9e9a4c7f122ed62ae7b0e1 Mon Sep 17 00:00:00 2001 +From 5a54ac19c87347a2165595055cab86383cefac4f Mon Sep 17 00:00:00 2001 From: Thomas Zimmermann Date: Tue, 16 Sep 2025 10:36:22 +0200 -Subject: [PATCH 069/467] UPSTREAM: drm/hypervdrm: Use vblank timer +Subject: [RUYI PATCH] UPSTREAM: drm/hypervdrm: Use vblank timer HyperV's virtual hardware does not provide vblank interrupts. Use a vblank timer to simulate the interrupt. Rate-limits the display's diff --git a/SPECS/linux-lts-kmhv2/0066-UPSTREAM-drm-vblank-Add-vblank-timer.patch b/SPECS/linux-lts-kmhv2/0066-UPSTREAM-drm-vblank-Add-vblank-timer.patch deleted file mode 100644 index 9ae7a30e23..0000000000 --- a/SPECS/linux-lts-kmhv2/0066-UPSTREAM-drm-vblank-Add-vblank-timer.patch +++ /dev/null @@ -1,533 +0,0 @@ -From e7f0684e97837281f337a4249384ae7efd8c3fc0 Mon Sep 17 00:00:00 2001 -From: Thomas Zimmermann -Date: Tue, 16 Sep 2025 10:36:19 +0200 -Subject: [PATCH 066/467] UPSTREAM: drm/vblank: Add vblank timer - -The vblank timer simulates a vblank interrupt for hardware without -support. Rate-limits the display update frequency. - -DRM drivers for hardware without vblank support apply display updates -ASAP. A vblank event informs DRM clients of the completed update. -Userspace compositors immediately schedule the next update, which -creates significant load on virtualization outputs. Display updates -are usually fast on virtualization outputs, as their framebuffers are -in regular system memory and there's no hardware vblank interrupt to -throttle the update rate. - -The vblank timer is a HR timer that signals the vblank in software. -It limits the update frequency of a DRM driver similar to a hardware -vblank interrupt. The timer is not synchronized to the actual vblank -interval of the display. - -The code has been adopted from vkms, which added the funtionality -in commit 3a0709928b17 ("drm/vkms: Add vblank events simulated by -hrtimers"). - -The new implementation is part of the existing vblank support, -which sets up the timer automatically. Drivers only have to start -and cancel the vblank timer as part of enabling and disabling the -CRTC. The new vblank helper library provides callbacks for struct -drm_crtc_funcs. - -The standard way for handling vblank is to call drm_crtc_handle_vblank(). -Drivers that require additional processing, such as vkms, can init -handle_vblank_timeout in struct drm_crtc_helper_funcs to refer to -their timeout handler. - -There's a possible deadlock between drm_crtc_handle_vblank() and -hrtimer_cancel(). [1] The implementation avoids to call hrtimer_cancel() -directly and instead signals to the timer function to not restart -itself. - -v4: -- fix possible race condition between timeout and atomic commit (Michael) -v3: -- avoid deadlock when cancelling timer (Ville, Lyude) -v2: -- implement vblank timer entirely in vblank helpers -- downgrade overrun warning to debug -- fix docs - -Signed-off-by: Thomas Zimmermann -Tested-by: Louis Chauvet -Reviewed-by: Louis Chauvet -Reviewed-by: Javier Martinez Canillas -Tested-by: Michael Kelley -Link: https://lore.kernel.org/all/20250510094757.4174662-1-zengheng4@huawei.com/ # [1] -Link: https://lore.kernel.org/r/20250916083816.30275-2-tzimmermann@suse.de -(cherry picked from commit 74afeb8128502a529041a2566febd26053a7be11) -Signed-off-by: Han Gao ---- - Documentation/gpu/drm-kms-helpers.rst | 12 ++ - drivers/gpu/drm/Makefile | 3 +- - drivers/gpu/drm/drm_vblank.c | 172 ++++++++++++++++++++++- - drivers/gpu/drm/drm_vblank_helper.c | 96 +++++++++++++ - include/drm/drm_modeset_helper_vtables.h | 12 ++ - include/drm/drm_vblank.h | 32 +++++ - include/drm/drm_vblank_helper.h | 33 +++++ - 7 files changed, 357 insertions(+), 3 deletions(-) - create mode 100644 drivers/gpu/drm/drm_vblank_helper.c - create mode 100644 include/drm/drm_vblank_helper.h - -diff --git a/Documentation/gpu/drm-kms-helpers.rst b/Documentation/gpu/drm-kms-helpers.rst -index 5139705089f2..781129f78b06 100644 ---- a/Documentation/gpu/drm-kms-helpers.rst -+++ b/Documentation/gpu/drm-kms-helpers.rst -@@ -92,6 +92,18 @@ GEM Atomic Helper Reference - .. kernel-doc:: drivers/gpu/drm/drm_gem_atomic_helper.c - :export: - -+VBLANK Helper Reference -+----------------------- -+ -+.. kernel-doc:: drivers/gpu/drm/drm_vblank_helper.c -+ :doc: overview -+ -+.. kernel-doc:: include/drm/drm_vblank_helper.h -+ :internal: -+ -+.. kernel-doc:: drivers/gpu/drm/drm_vblank_helper.c -+ :export: -+ - Simple KMS Helper Reference - =========================== - -diff --git a/drivers/gpu/drm/Makefile b/drivers/gpu/drm/Makefile -index 742f0d590c5a..b248e64587ed 100644 ---- a/drivers/gpu/drm/Makefile -+++ b/drivers/gpu/drm/Makefile -@@ -152,7 +152,8 @@ drm_kms_helper-y := \ - drm_plane_helper.o \ - drm_probe_helper.o \ - drm_self_refresh_helper.o \ -- drm_simple_kms_helper.o -+ drm_simple_kms_helper.o \ -+ drm_vblank_helper.o - drm_kms_helper-$(CONFIG_DRM_PANEL_BRIDGE) += bridge/panel.o - drm_kms_helper-$(CONFIG_DRM_FBDEV_EMULATION) += drm_fb_helper.o - obj-$(CONFIG_DRM_KMS_HELPER) += drm_kms_helper.o -diff --git a/drivers/gpu/drm/drm_vblank.c b/drivers/gpu/drm/drm_vblank.c -index 46f59883183d..61e211fd3c9c 100644 ---- a/drivers/gpu/drm/drm_vblank.c -+++ b/drivers/gpu/drm/drm_vblank.c -@@ -136,8 +136,17 @@ - * vblanks after a timer has expired, which can be configured through the - * ``vblankoffdelay`` module parameter. - * -- * Drivers for hardware without support for vertical-blanking interrupts -- * must not call drm_vblank_init(). For such drivers, atomic helpers will -+ * Drivers for hardware without support for vertical-blanking interrupts can -+ * use DRM vblank timers to send vblank events at the rate of the current -+ * display mode's refresh. While not synchronized to the hardware's -+ * vertical-blanking regions, the timer helps DRM clients and compositors to -+ * adapt their update cycle to the display output. Drivers should set up -+ * vblanking as usual, but call drm_crtc_vblank_start_timer() and -+ * drm_crtc_vblank_cancel_timer() as part of their atomic mode setting. -+ * See also DRM vblank helpers for more information. -+ * -+ * Drivers without support for vertical-blanking interrupts nor timers must -+ * not call drm_vblank_init(). For these drivers, atomic helpers will - * automatically generate fake vblank events as part of the display update. - * This functionality also can be controlled by the driver by enabling and - * disabling struct drm_crtc_state.no_vblank. -@@ -508,6 +517,9 @@ static void drm_vblank_init_release(struct drm_device *dev, void *ptr) - drm_WARN_ON(dev, READ_ONCE(vblank->enabled) && - drm_core_check_feature(dev, DRIVER_MODESET)); - -+ if (vblank->vblank_timer.crtc) -+ hrtimer_cancel(&vblank->vblank_timer.timer); -+ - drm_vblank_destroy_worker(vblank); - timer_delete_sync(&vblank->disable_timer); - } -@@ -2162,3 +2174,159 @@ int drm_crtc_queue_sequence_ioctl(struct drm_device *dev, void *data, - return ret; - } - -+/* -+ * VBLANK timer -+ */ -+ -+static enum hrtimer_restart drm_vblank_timer_function(struct hrtimer *timer) -+{ -+ struct drm_vblank_crtc_timer *vtimer = -+ container_of(timer, struct drm_vblank_crtc_timer, timer); -+ struct drm_crtc *crtc = vtimer->crtc; -+ const struct drm_crtc_helper_funcs *crtc_funcs = crtc->helper_private; -+ struct drm_device *dev = crtc->dev; -+ unsigned long flags; -+ ktime_t interval; -+ u64 ret_overrun; -+ bool succ; -+ -+ spin_lock_irqsave(&vtimer->interval_lock, flags); -+ interval = vtimer->interval; -+ spin_unlock_irqrestore(&vtimer->interval_lock, flags); -+ -+ if (!interval) -+ return HRTIMER_NORESTART; -+ -+ ret_overrun = hrtimer_forward_now(&vtimer->timer, interval); -+ if (ret_overrun != 1) -+ drm_dbg_vbl(dev, "vblank timer overrun\n"); -+ -+ if (crtc_funcs->handle_vblank_timeout) -+ succ = crtc_funcs->handle_vblank_timeout(crtc); -+ else -+ succ = drm_crtc_handle_vblank(crtc); -+ if (!succ) -+ return HRTIMER_NORESTART; -+ -+ return HRTIMER_RESTART; -+} -+ -+/** -+ * drm_crtc_vblank_start_timer - Starts the vblank timer on the given CRTC -+ * @crtc: the CRTC -+ * -+ * Drivers should call this function from their CRTC's enable_vblank -+ * function to start a vblank timer. The timer will fire after the duration -+ * of a full frame. drm_crtc_vblank_cancel_timer() disables a running timer. -+ * -+ * Returns: -+ * 0 on success, or a negative errno code otherwise. -+ */ -+int drm_crtc_vblank_start_timer(struct drm_crtc *crtc) -+{ -+ struct drm_vblank_crtc *vblank = drm_crtc_vblank_crtc(crtc); -+ struct drm_vblank_crtc_timer *vtimer = &vblank->vblank_timer; -+ unsigned long flags; -+ -+ if (!vtimer->crtc) { -+ /* -+ * Set up the data structures on the first invocation. -+ */ -+ vtimer->crtc = crtc; -+ spin_lock_init(&vtimer->interval_lock); -+ hrtimer_setup(&vtimer->timer, drm_vblank_timer_function, -+ CLOCK_MONOTONIC, HRTIMER_MODE_REL); -+ } else { -+ /* -+ * Timer should not be active. If it is, wait for the -+ * previous cancel operations to finish. -+ */ -+ while (hrtimer_active(&vtimer->timer)) -+ hrtimer_try_to_cancel(&vtimer->timer); -+ } -+ -+ drm_calc_timestamping_constants(crtc, &crtc->mode); -+ -+ spin_lock_irqsave(&vtimer->interval_lock, flags); -+ vtimer->interval = ns_to_ktime(vblank->framedur_ns); -+ spin_unlock_irqrestore(&vtimer->interval_lock, flags); -+ -+ hrtimer_start(&vtimer->timer, vtimer->interval, HRTIMER_MODE_REL); -+ -+ return 0; -+} -+EXPORT_SYMBOL(drm_crtc_vblank_start_timer); -+ -+/** -+ * drm_crtc_vblank_start_timer - Cancels the given CRTC's vblank timer -+ * @crtc: the CRTC -+ * -+ * Drivers should call this function from their CRTC's disable_vblank -+ * function to stop a vblank timer. -+ */ -+void drm_crtc_vblank_cancel_timer(struct drm_crtc *crtc) -+{ -+ struct drm_vblank_crtc *vblank = drm_crtc_vblank_crtc(crtc); -+ struct drm_vblank_crtc_timer *vtimer = &vblank->vblank_timer; -+ unsigned long flags; -+ -+ /* -+ * Calling hrtimer_cancel() can result in a deadlock with DRM's -+ * vblank_time_lime_lock and hrtimers' softirq_expiry_lock. So -+ * clear interval and indicate cancellation. The timer function -+ * will cancel itself on the next invocation. -+ */ -+ -+ spin_lock_irqsave(&vtimer->interval_lock, flags); -+ vtimer->interval = 0; -+ spin_unlock_irqrestore(&vtimer->interval_lock, flags); -+ -+ hrtimer_try_to_cancel(&vtimer->timer); -+} -+EXPORT_SYMBOL(drm_crtc_vblank_cancel_timer); -+ -+/** -+ * drm_crtc_vblank_get_vblank_timeout - Returns the vblank timeout -+ * @crtc: The CRTC -+ * @vblank_time: Returns the next vblank timestamp -+ * -+ * The helper drm_crtc_vblank_get_vblank_timeout() returns the next vblank -+ * timestamp of the CRTC's vblank timer according to the timer's expiry -+ * time. -+ */ -+void drm_crtc_vblank_get_vblank_timeout(struct drm_crtc *crtc, ktime_t *vblank_time) -+{ -+ struct drm_vblank_crtc *vblank = drm_crtc_vblank_crtc(crtc); -+ struct drm_vblank_crtc_timer *vtimer = &vblank->vblank_timer; -+ u64 cur_count; -+ ktime_t cur_time; -+ -+ if (!READ_ONCE(vblank->enabled)) { -+ *vblank_time = ktime_get(); -+ return; -+ } -+ -+ /* -+ * A concurrent vblank timeout could update the expires field before -+ * we compare it with the vblank time. Hence we'd compare the old -+ * expiry time to the new vblank time; deducing the timer had already -+ * expired. Reread until we get consistent values from both fields. -+ */ -+ do { -+ cur_count = drm_crtc_vblank_count_and_time(crtc, &cur_time); -+ *vblank_time = READ_ONCE(vtimer->timer.node.expires); -+ } while (cur_count != drm_crtc_vblank_count_and_time(crtc, &cur_time)); -+ -+ if (drm_WARN_ON(crtc->dev, !ktime_compare(*vblank_time, cur_time))) -+ return; /* Already expired */ -+ -+ /* -+ * To prevent races we roll the hrtimer forward before we do any -+ * interrupt processing - this is how real hw works (the interrupt -+ * is only generated after all the vblank registers are updated) -+ * and what the vblank core expects. Therefore we need to always -+ * correct the timestamp by one frame. -+ */ -+ *vblank_time = ktime_sub(*vblank_time, vtimer->interval); -+} -+EXPORT_SYMBOL(drm_crtc_vblank_get_vblank_timeout); -diff --git a/drivers/gpu/drm/drm_vblank_helper.c b/drivers/gpu/drm/drm_vblank_helper.c -new file mode 100644 -index 000000000000..f94d1e706191 ---- /dev/null -+++ b/drivers/gpu/drm/drm_vblank_helper.c -@@ -0,0 +1,96 @@ -+// SPDX-License-Identifier: MIT -+ -+#include -+#include -+#include -+#include -+#include -+#include -+ -+/** -+ * DOC: overview -+ * -+ * The vblank helper library provides functions for supporting vertical -+ * blanking in DRM drivers. -+ * -+ * For vblank timers, several callback implementations are available. -+ * Drivers enable support for vblank timers by setting the vblank callbacks -+ * in struct &drm_crtc_funcs to the helpers provided by this library. The -+ * initializer macro DRM_CRTC_VBLANK_TIMER_FUNCS does this conveniently. -+ * -+ * Once the driver enables vblank support with drm_vblank_init(), each -+ * CRTC's vblank timer fires according to the programmed display mode. By -+ * default, the vblank timer invokes drm_crtc_handle_vblank(). Drivers with -+ * more specific requirements can set their own handler function in -+ * struct &drm_crtc_helper_funcs.handle_vblank_timeout. -+ */ -+ -+/* -+ * VBLANK timer -+ */ -+ -+/** -+ * drm_crtc_vblank_helper_enable_vblank_timer - Implements struct &drm_crtc_funcs.enable_vblank -+ * @crtc: The CRTC -+ * -+ * The helper drm_crtc_vblank_helper_enable_vblank_timer() implements -+ * enable_vblank of struct drm_crtc_helper_funcs for CRTCs that require -+ * a VBLANK timer. It sets up the timer on the first invocation. The -+ * started timer expires after the current frame duration. See struct -+ * &drm_vblank_crtc.framedur_ns. -+ * -+ * See also struct &drm_crtc_helper_funcs.enable_vblank. -+ * -+ * Returns: -+ * 0 on success, or a negative errno code otherwise. -+ */ -+int drm_crtc_vblank_helper_enable_vblank_timer(struct drm_crtc *crtc) -+{ -+ return drm_crtc_vblank_start_timer(crtc); -+} -+EXPORT_SYMBOL(drm_crtc_vblank_helper_enable_vblank_timer); -+ -+/** -+ * drm_crtc_vblank_helper_disable_vblank_timer - Implements struct &drm_crtc_funcs.disable_vblank -+ * @crtc: The CRTC -+ * -+ * The helper drm_crtc_vblank_helper_disable_vblank_timer() implements -+ * disable_vblank of struct drm_crtc_funcs for CRTCs that require a -+ * VBLANK timer. -+ * -+ * See also struct &drm_crtc_helper_funcs.disable_vblank. -+ */ -+void drm_crtc_vblank_helper_disable_vblank_timer(struct drm_crtc *crtc) -+{ -+ drm_crtc_vblank_cancel_timer(crtc); -+} -+EXPORT_SYMBOL(drm_crtc_vblank_helper_disable_vblank_timer); -+ -+/** -+ * drm_crtc_vblank_helper_get_vblank_timestamp_from_timer - -+ * Implements struct &drm_crtc_funcs.get_vblank_timestamp -+ * @crtc: The CRTC -+ * @max_error: Maximum acceptable error -+ * @vblank_time: Returns the next vblank timestamp -+ * @in_vblank_irq: True is called from drm_crtc_handle_vblank() -+ * -+ * The helper drm_crtc_helper_get_vblank_timestamp_from_timer() implements -+ * get_vblank_timestamp of struct drm_crtc_funcs for CRTCs that require a -+ * VBLANK timer. It returns the timestamp according to the timer's expiry -+ * time. -+ * -+ * See also struct &drm_crtc_funcs.get_vblank_timestamp. -+ * -+ * Returns: -+ * True on success, or false otherwise. -+ */ -+bool drm_crtc_vblank_helper_get_vblank_timestamp_from_timer(struct drm_crtc *crtc, -+ int *max_error, -+ ktime_t *vblank_time, -+ bool in_vblank_irq) -+{ -+ drm_crtc_vblank_get_vblank_timeout(crtc, vblank_time); -+ -+ return true; -+} -+EXPORT_SYMBOL(drm_crtc_vblank_helper_get_vblank_timestamp_from_timer); -diff --git a/include/drm/drm_modeset_helper_vtables.h b/include/drm/drm_modeset_helper_vtables.h -index ce7c7aeac887..fe32854b7ffe 100644 ---- a/include/drm/drm_modeset_helper_vtables.h -+++ b/include/drm/drm_modeset_helper_vtables.h -@@ -490,6 +490,18 @@ struct drm_crtc_helper_funcs { - bool in_vblank_irq, int *vpos, int *hpos, - ktime_t *stime, ktime_t *etime, - const struct drm_display_mode *mode); -+ -+ /** -+ * @handle_vblank_timeout: Handles timeouts of the vblank timer. -+ * -+ * Called by CRTC's the vblank timer on each timeout. Semantics is -+ * equivalient to drm_crtc_handle_vblank(). Implementations should -+ * invoke drm_crtc_handle_vblank() as part of processing the timeout. -+ * -+ * This callback is optional. If unset, the vblank timer invokes -+ * drm_crtc_handle_vblank() directly. -+ */ -+ bool (*handle_vblank_timeout)(struct drm_crtc *crtc); - }; - - /** -diff --git a/include/drm/drm_vblank.h b/include/drm/drm_vblank.h -index 151ab1e85b1b..ffa564d79638 100644 ---- a/include/drm/drm_vblank.h -+++ b/include/drm/drm_vblank.h -@@ -25,6 +25,7 @@ - #define _DRM_VBLANK_H_ - - #include -+#include - #include - #include - #include -@@ -103,6 +104,28 @@ struct drm_vblank_crtc_config { - bool disable_immediate; - }; - -+/** -+ * struct drm_vblank_crtc_timer - vblank timer for a CRTC -+ */ -+struct drm_vblank_crtc_timer { -+ /** -+ * @timer: The vblank's high-resolution timer -+ */ -+ struct hrtimer timer; -+ /** -+ * @interval_lock: Protects @interval -+ */ -+ spinlock_t interval_lock; -+ /** -+ * @interval: Duration between two vblanks -+ */ -+ ktime_t interval; -+ /** -+ * @crtc: The timer's CRTC -+ */ -+ struct drm_crtc *crtc; -+}; -+ - /** - * struct drm_vblank_crtc - vblank tracking for a CRTC - * -@@ -254,6 +277,11 @@ struct drm_vblank_crtc { - * cancelled. - */ - wait_queue_head_t work_wait_queue; -+ -+ /** -+ * @vblank_timer: Holds the state of the vblank timer -+ */ -+ struct drm_vblank_crtc_timer vblank_timer; - }; - - struct drm_vblank_crtc *drm_crtc_vblank_crtc(struct drm_crtc *crtc); -@@ -290,6 +318,10 @@ wait_queue_head_t *drm_crtc_vblank_waitqueue(struct drm_crtc *crtc); - void drm_crtc_set_max_vblank_count(struct drm_crtc *crtc, - u32 max_vblank_count); - -+int drm_crtc_vblank_start_timer(struct drm_crtc *crtc); -+void drm_crtc_vblank_cancel_timer(struct drm_crtc *crtc); -+void drm_crtc_vblank_get_vblank_timeout(struct drm_crtc *crtc, ktime_t *vblank_time); -+ - /* - * Helpers for struct drm_crtc_funcs - */ -diff --git a/include/drm/drm_vblank_helper.h b/include/drm/drm_vblank_helper.h -new file mode 100644 -index 000000000000..74a971d0cfba ---- /dev/null -+++ b/include/drm/drm_vblank_helper.h -@@ -0,0 +1,33 @@ -+/* SPDX-License-Identifier: GPL-2.0+ */ -+ -+#ifndef _DRM_VBLANK_HELPER_H_ -+#define _DRM_VBLANK_HELPER_H_ -+ -+#include -+#include -+ -+struct drm_crtc; -+ -+/* -+ * VBLANK timer -+ */ -+ -+int drm_crtc_vblank_helper_enable_vblank_timer(struct drm_crtc *crtc); -+void drm_crtc_vblank_helper_disable_vblank_timer(struct drm_crtc *crtc); -+bool drm_crtc_vblank_helper_get_vblank_timestamp_from_timer(struct drm_crtc *crtc, -+ int *max_error, -+ ktime_t *vblank_time, -+ bool in_vblank_irq); -+ -+/** -+ * DRM_CRTC_VBLANK_TIMER_FUNCS - Default implementation for VBLANK timers -+ * -+ * This macro initializes struct &drm_crtc_funcs to default helpers for -+ * VBLANK timers. -+ */ -+#define DRM_CRTC_VBLANK_TIMER_FUNCS \ -+ .enable_vblank = drm_crtc_vblank_helper_enable_vblank_timer, \ -+ .disable_vblank = drm_crtc_vblank_helper_disable_vblank_timer, \ -+ .get_vblank_timestamp = drm_crtc_vblank_helper_get_vblank_timestamp_from_timer -+ -+#endif --- -2.53.0 - diff --git a/SPECS/linux-lts-kmhv2/0070-UPSTREAM-PCI-MSI-Convert-the-boolean-no_64bit_msi-fl.patch b/SPECS/linux-lts-kmhv2/0067-UPSTREAM-PCI-MSI-Convert-the-boolean-no_64bit_msi-fl.patch similarity index 97% rename from SPECS/linux-lts-kmhv2/0070-UPSTREAM-PCI-MSI-Convert-the-boolean-no_64bit_msi-fl.patch rename to SPECS/linux-lts-kmhv2/0067-UPSTREAM-PCI-MSI-Convert-the-boolean-no_64bit_msi-fl.patch index 443c2abc64..d6a9555b97 100644 --- a/SPECS/linux-lts-kmhv2/0070-UPSTREAM-PCI-MSI-Convert-the-boolean-no_64bit_msi-fl.patch +++ b/SPECS/linux-lts-kmhv2/0067-UPSTREAM-PCI-MSI-Convert-the-boolean-no_64bit_msi-fl.patch @@ -1,8 +1,8 @@ -From be105cf6e6a53eea68ee3af9b6c42db92be45a34 Mon Sep 17 00:00:00 2001 +From 82e88d4cfa7af6b1ae6ffc952a7d1903d2c8e3ea Mon Sep 17 00:00:00 2001 From: Vivian Wang Date: Thu, 29 Jan 2026 09:56:06 +0800 -Subject: [PATCH 070/467] UPSTREAM: PCI/MSI: Convert the boolean no_64bit_msi - flag to a DMA address mask +Subject: [RUYI PATCH] UPSTREAM: PCI/MSI: Convert the boolean no_64bit_msi flag + to a DMA address mask Some PCI devices have PCI_MSI_FLAGS_64BIT in the MSI capability, but implement less than 64 address bits. This breaks on platforms where such diff --git a/SPECS/linux-lts-kmhv2/0067-UPSTREAM-drm-vblank-Add-CRTC-helpers-for-simple-use-.patch b/SPECS/linux-lts-kmhv2/0067-UPSTREAM-drm-vblank-Add-CRTC-helpers-for-simple-use-.patch deleted file mode 100644 index 7253e51186..0000000000 --- a/SPECS/linux-lts-kmhv2/0067-UPSTREAM-drm-vblank-Add-CRTC-helpers-for-simple-use-.patch +++ /dev/null @@ -1,174 +0,0 @@ -From 583cfbbf548a142881ed47ae9a5e1ab10a4ddbb6 Mon Sep 17 00:00:00 2001 -From: Thomas Zimmermann -Date: Tue, 16 Sep 2025 10:36:20 +0200 -Subject: [PATCH 067/467] UPSTREAM: drm/vblank: Add CRTC helpers for simple use - cases - -Implement atomic_flush, atomic_enable and atomic_disable of struct -drm_crtc_helper_funcs for vblank handling. Driver with no further -requirements can use these functions instead of adding their own. -Also simplifies the use of vblank timers. - -The code has been adopted from vkms, which added the funtionality -in commit 3a0709928b17 ("drm/vkms: Add vblank events simulated by -hrtimers"). - -v3: -- mention vkms (Javier) -v2: -- fix docs - -Signed-off-by: Thomas Zimmermann -Reviewed-by: Javier Martinez Canillas -Tested-by: Michael Kelley -Link: https://lore.kernel.org/r/20250916083816.30275-3-tzimmermann@suse.de -(cherry picked from commit d54dbb5963bdbdf8559903fe2b2343e871adcb30) -Signed-off-by: Han Gao ---- - drivers/gpu/drm/drm_vblank_helper.c | 80 +++++++++++++++++++++++++++++ - include/drm/drm_vblank_helper.h | 23 +++++++++ - 2 files changed, 103 insertions(+) - -diff --git a/drivers/gpu/drm/drm_vblank_helper.c b/drivers/gpu/drm/drm_vblank_helper.c -index f94d1e706191..a04a6ba1b0ca 100644 ---- a/drivers/gpu/drm/drm_vblank_helper.c -+++ b/drivers/gpu/drm/drm_vblank_helper.c -@@ -1,5 +1,6 @@ - // SPDX-License-Identifier: MIT - -+#include - #include - #include - #include -@@ -17,6 +18,12 @@ - * Drivers enable support for vblank timers by setting the vblank callbacks - * in struct &drm_crtc_funcs to the helpers provided by this library. The - * initializer macro DRM_CRTC_VBLANK_TIMER_FUNCS does this conveniently. -+ * The driver further has to send the VBLANK event from its atomic_flush -+ * callback and control vblank from the CRTC's atomic_enable and atomic_disable -+ * callbacks. The callbacks are located in struct &drm_crtc_helper_funcs. -+ * The vblank helper library provides implementations of these callbacks -+ * for drivers without further requirements. The initializer macro -+ * DRM_CRTC_HELPER_VBLANK_FUNCS sets them coveniently. - * - * Once the driver enables vblank support with drm_vblank_init(), each - * CRTC's vblank timer fires according to the programmed display mode. By -@@ -25,6 +32,79 @@ - * struct &drm_crtc_helper_funcs.handle_vblank_timeout. - */ - -+/* -+ * VBLANK helpers -+ */ -+ -+/** -+ * drm_crtc_vblank_atomic_flush - -+ * Implements struct &drm_crtc_helper_funcs.atomic_flush -+ * @crtc: The CRTC -+ * @state: The atomic state to apply -+ * -+ * The helper drm_crtc_vblank_atomic_flush() implements atomic_flush of -+ * struct drm_crtc_helper_funcs for CRTCs that only need to send out a -+ * VBLANK event. -+ * -+ * See also struct &drm_crtc_helper_funcs.atomic_flush. -+ */ -+void drm_crtc_vblank_atomic_flush(struct drm_crtc *crtc, -+ struct drm_atomic_state *state) -+{ -+ struct drm_device *dev = crtc->dev; -+ struct drm_crtc_state *crtc_state = drm_atomic_get_new_crtc_state(state, crtc); -+ struct drm_pending_vblank_event *event; -+ -+ spin_lock_irq(&dev->event_lock); -+ -+ event = crtc_state->event; -+ crtc_state->event = NULL; -+ -+ if (event) { -+ if (drm_crtc_vblank_get(crtc) == 0) -+ drm_crtc_arm_vblank_event(crtc, event); -+ else -+ drm_crtc_send_vblank_event(crtc, event); -+ } -+ -+ spin_unlock_irq(&dev->event_lock); -+} -+EXPORT_SYMBOL(drm_crtc_vblank_atomic_flush); -+ -+/** -+ * drm_crtc_vblank_atomic_enable - Implements struct &drm_crtc_helper_funcs.atomic_enable -+ * @crtc: The CRTC -+ * @state: The atomic state -+ * -+ * The helper drm_crtc_vblank_atomic_enable() implements atomic_enable -+ * of struct drm_crtc_helper_funcs for CRTCs the only need to enable VBLANKs. -+ * -+ * See also struct &drm_crtc_helper_funcs.atomic_enable. -+ */ -+void drm_crtc_vblank_atomic_enable(struct drm_crtc *crtc, -+ struct drm_atomic_state *state) -+{ -+ drm_crtc_vblank_on(crtc); -+} -+EXPORT_SYMBOL(drm_crtc_vblank_atomic_enable); -+ -+/** -+ * drm_crtc_vblank_atomic_disable - Implements struct &drm_crtc_helper_funcs.atomic_disable -+ * @crtc: The CRTC -+ * @state: The atomic state -+ * -+ * The helper drm_crtc_vblank_atomic_disable() implements atomic_disable -+ * of struct drm_crtc_helper_funcs for CRTCs the only need to disable VBLANKs. -+ * -+ * See also struct &drm_crtc_funcs.atomic_disable. -+ */ -+void drm_crtc_vblank_atomic_disable(struct drm_crtc *crtc, -+ struct drm_atomic_state *state) -+{ -+ drm_crtc_vblank_off(crtc); -+} -+EXPORT_SYMBOL(drm_crtc_vblank_atomic_disable); -+ - /* - * VBLANK timer - */ -diff --git a/include/drm/drm_vblank_helper.h b/include/drm/drm_vblank_helper.h -index 74a971d0cfba..fcd8a9b35846 100644 ---- a/include/drm/drm_vblank_helper.h -+++ b/include/drm/drm_vblank_helper.h -@@ -6,8 +6,31 @@ - #include - #include - -+struct drm_atomic_state; - struct drm_crtc; - -+/* -+ * VBLANK helpers -+ */ -+ -+void drm_crtc_vblank_atomic_flush(struct drm_crtc *crtc, -+ struct drm_atomic_state *state); -+void drm_crtc_vblank_atomic_enable(struct drm_crtc *crtc, -+ struct drm_atomic_state *state); -+void drm_crtc_vblank_atomic_disable(struct drm_crtc *crtc, -+ struct drm_atomic_state *crtc_state); -+ -+/** -+ * DRM_CRTC_HELPER_VBLANK_FUNCS - Default implementation for VBLANK helpers -+ * -+ * This macro initializes struct &drm_crtc_helper_funcs to default helpers -+ * for VBLANK handling. -+ */ -+#define DRM_CRTC_HELPER_VBLANK_FUNCS \ -+ .atomic_flush = drm_crtc_vblank_atomic_flush, \ -+ .atomic_enable = drm_crtc_vblank_atomic_enable, \ -+ .atomic_disable = drm_crtc_vblank_atomic_disable -+ - /* - * VBLANK timer - */ --- -2.53.0 - diff --git a/SPECS/linux-lts-kmhv2/0071-UPSTREAM-PCI-MSI-Check-the-device-specific-address-m.patch b/SPECS/linux-lts-kmhv2/0068-UPSTREAM-PCI-MSI-Check-the-device-specific-address-m.patch similarity index 92% rename from SPECS/linux-lts-kmhv2/0071-UPSTREAM-PCI-MSI-Check-the-device-specific-address-m.patch rename to SPECS/linux-lts-kmhv2/0068-UPSTREAM-PCI-MSI-Check-the-device-specific-address-m.patch index c99a180597..46bc6278e3 100644 --- a/SPECS/linux-lts-kmhv2/0071-UPSTREAM-PCI-MSI-Check-the-device-specific-address-m.patch +++ b/SPECS/linux-lts-kmhv2/0068-UPSTREAM-PCI-MSI-Check-the-device-specific-address-m.patch @@ -1,7 +1,7 @@ -From 76e89b16cb73690ff25af12682731fc117be5c3e Mon Sep 17 00:00:00 2001 +From 4f4b809bc01cd7d00cf117b7e99a2a2b18a9d9f9 Mon Sep 17 00:00:00 2001 From: Vivian Wang Date: Thu, 29 Jan 2026 09:56:07 +0800 -Subject: [PATCH 071/467] UPSTREAM: PCI/MSI: Check the device specific address +Subject: [RUYI PATCH] UPSTREAM: PCI/MSI: Check the device specific address mask in msi_verify_entries() Instead of a 32-bit/64-bit dichotomy, check the MSI address against diff --git a/SPECS/linux-lts-kmhv2/0068-UPSTREAM-drm-vkms-Convert-to-DRM-s-vblank-timer.patch b/SPECS/linux-lts-kmhv2/0068-UPSTREAM-drm-vkms-Convert-to-DRM-s-vblank-timer.patch deleted file mode 100644 index 6dbce8b177..0000000000 --- a/SPECS/linux-lts-kmhv2/0068-UPSTREAM-drm-vkms-Convert-to-DRM-s-vblank-timer.patch +++ /dev/null @@ -1,172 +0,0 @@ -From 5c2dba8da42db8a451df4751fdd00dea997959e4 Mon Sep 17 00:00:00 2001 -From: Thomas Zimmermann -Date: Tue, 16 Sep 2025 10:36:21 +0200 -Subject: [PATCH 068/467] UPSTREAM: drm/vkms: Convert to DRM's vblank timer - -Replace vkms' vblank timer with the DRM implementation. The DRM -code is identical in concept, but differs in implementation. - -Vblank timers are covered in vblank helpers and initializer macros, -so remove the corresponding hrtimer in struct vkms_output. The -vblank timer calls vkms' custom timeout code via handle_vblank_timeout -in struct drm_crtc_helper_funcs. - -Signed-off-by: Thomas Zimmermann -Tested-by: Louis Chauvet -Reviewed-by: Louis Chauvet -Reviewed-by: Javier Martinez Canillas -Link: https://lore.kernel.org/r/20250916083816.30275-4-tzimmermann@suse.de -(cherry picked from commit 02e2681ffe1addde1fc8c35d05657b16bfa79613) -Signed-off-by: Han Gao ---- - drivers/gpu/drm/vkms/vkms_crtc.c | 83 +++----------------------------- - drivers/gpu/drm/vkms/vkms_drv.h | 2 - - 2 files changed, 7 insertions(+), 78 deletions(-) - -diff --git a/drivers/gpu/drm/vkms/vkms_crtc.c b/drivers/gpu/drm/vkms/vkms_crtc.c -index e60573e0f3e9..bd79f24686dc 100644 ---- a/drivers/gpu/drm/vkms/vkms_crtc.c -+++ b/drivers/gpu/drm/vkms/vkms_crtc.c -@@ -7,25 +7,18 @@ - #include - #include - #include -+#include - - #include "vkms_drv.h" - --static enum hrtimer_restart vkms_vblank_simulate(struct hrtimer *timer) -+static bool vkms_crtc_handle_vblank_timeout(struct drm_crtc *crtc) - { -- struct vkms_output *output = container_of(timer, struct vkms_output, -- vblank_hrtimer); -- struct drm_crtc *crtc = &output->crtc; -+ struct vkms_output *output = drm_crtc_to_vkms_output(crtc); - struct vkms_crtc_state *state; -- u64 ret_overrun; - bool ret, fence_cookie; - - fence_cookie = dma_fence_begin_signalling(); - -- ret_overrun = hrtimer_forward_now(&output->vblank_hrtimer, -- output->period_ns); -- if (ret_overrun != 1) -- pr_warn("%s: vblank timer overrun\n", __func__); -- - spin_lock(&output->lock); - ret = drm_crtc_handle_vblank(crtc); - if (!ret) -@@ -57,55 +50,6 @@ static enum hrtimer_restart vkms_vblank_simulate(struct hrtimer *timer) - - dma_fence_end_signalling(fence_cookie); - -- return HRTIMER_RESTART; --} -- --static int vkms_enable_vblank(struct drm_crtc *crtc) --{ -- struct drm_vblank_crtc *vblank = drm_crtc_vblank_crtc(crtc); -- struct vkms_output *out = drm_crtc_to_vkms_output(crtc); -- -- hrtimer_setup(&out->vblank_hrtimer, &vkms_vblank_simulate, CLOCK_MONOTONIC, -- HRTIMER_MODE_REL); -- out->period_ns = ktime_set(0, vblank->framedur_ns); -- hrtimer_start(&out->vblank_hrtimer, out->period_ns, HRTIMER_MODE_REL); -- -- return 0; --} -- --static void vkms_disable_vblank(struct drm_crtc *crtc) --{ -- struct vkms_output *out = drm_crtc_to_vkms_output(crtc); -- -- hrtimer_cancel(&out->vblank_hrtimer); --} -- --static bool vkms_get_vblank_timestamp(struct drm_crtc *crtc, -- int *max_error, ktime_t *vblank_time, -- bool in_vblank_irq) --{ -- struct vkms_output *output = drm_crtc_to_vkms_output(crtc); -- struct drm_vblank_crtc *vblank = drm_crtc_vblank_crtc(crtc); -- -- if (!READ_ONCE(vblank->enabled)) { -- *vblank_time = ktime_get(); -- return true; -- } -- -- *vblank_time = READ_ONCE(output->vblank_hrtimer.node.expires); -- -- if (WARN_ON(*vblank_time == vblank->time)) -- return true; -- -- /* -- * To prevent races we roll the hrtimer forward before we do any -- * interrupt processing - this is how real hw works (the interrupt is -- * only generated after all the vblank registers are updated) and what -- * the vblank core expects. Therefore we need to always correct the -- * timestampe by one frame. -- */ -- *vblank_time -= output->period_ns; -- - return true; - } - -@@ -159,9 +103,7 @@ static const struct drm_crtc_funcs vkms_crtc_funcs = { - .reset = vkms_atomic_crtc_reset, - .atomic_duplicate_state = vkms_atomic_crtc_duplicate_state, - .atomic_destroy_state = vkms_atomic_crtc_destroy_state, -- .enable_vblank = vkms_enable_vblank, -- .disable_vblank = vkms_disable_vblank, -- .get_vblank_timestamp = vkms_get_vblank_timestamp, -+ DRM_CRTC_VBLANK_TIMER_FUNCS, - .get_crc_sources = vkms_get_crc_sources, - .set_crc_source = vkms_set_crc_source, - .verify_crc_source = vkms_verify_crc_source, -@@ -213,18 +155,6 @@ static int vkms_crtc_atomic_check(struct drm_crtc *crtc, - return 0; - } - --static void vkms_crtc_atomic_enable(struct drm_crtc *crtc, -- struct drm_atomic_state *state) --{ -- drm_crtc_vblank_on(crtc); --} -- --static void vkms_crtc_atomic_disable(struct drm_crtc *crtc, -- struct drm_atomic_state *state) --{ -- drm_crtc_vblank_off(crtc); --} -- - static void vkms_crtc_atomic_begin(struct drm_crtc *crtc, - struct drm_atomic_state *state) - __acquires(&vkms_output->lock) -@@ -265,8 +195,9 @@ static const struct drm_crtc_helper_funcs vkms_crtc_helper_funcs = { - .atomic_check = vkms_crtc_atomic_check, - .atomic_begin = vkms_crtc_atomic_begin, - .atomic_flush = vkms_crtc_atomic_flush, -- .atomic_enable = vkms_crtc_atomic_enable, -- .atomic_disable = vkms_crtc_atomic_disable, -+ .atomic_enable = drm_crtc_vblank_atomic_enable, -+ .atomic_disable = drm_crtc_vblank_atomic_disable, -+ .handle_vblank_timeout = vkms_crtc_handle_vblank_timeout, - }; - - struct vkms_output *vkms_crtc_init(struct drm_device *dev, struct drm_plane *primary, -diff --git a/drivers/gpu/drm/vkms/vkms_drv.h b/drivers/gpu/drm/vkms/vkms_drv.h -index 8013c31efe3b..fb9711e1c6fb 100644 ---- a/drivers/gpu/drm/vkms/vkms_drv.h -+++ b/drivers/gpu/drm/vkms/vkms_drv.h -@@ -215,8 +215,6 @@ struct vkms_output { - struct drm_crtc crtc; - struct drm_writeback_connector wb_connector; - struct drm_encoder wb_encoder; -- struct hrtimer vblank_hrtimer; -- ktime_t period_ns; - struct workqueue_struct *composer_workq; - spinlock_t lock; - --- -2.53.0 - diff --git a/SPECS/linux-lts-kmhv2/0072-UPSTREAM-drm-radeon-Make-MSI-address-limit-based-on-.patch b/SPECS/linux-lts-kmhv2/0069-UPSTREAM-drm-radeon-Make-MSI-address-limit-based-on-.patch similarity index 95% rename from SPECS/linux-lts-kmhv2/0072-UPSTREAM-drm-radeon-Make-MSI-address-limit-based-on-.patch rename to SPECS/linux-lts-kmhv2/0069-UPSTREAM-drm-radeon-Make-MSI-address-limit-based-on-.patch index 3eaeffad7c..02e46aef2a 100644 --- a/SPECS/linux-lts-kmhv2/0072-UPSTREAM-drm-radeon-Make-MSI-address-limit-based-on-.patch +++ b/SPECS/linux-lts-kmhv2/0069-UPSTREAM-drm-radeon-Make-MSI-address-limit-based-on-.patch @@ -1,7 +1,7 @@ -From ad4fb64413f53de6281889e26345c8138c8057f0 Mon Sep 17 00:00:00 2001 +From 9dcbec59b17ddb9befc7e35efebe9f69ebeb2745 Mon Sep 17 00:00:00 2001 From: Vivian Wang Date: Thu, 29 Jan 2026 09:56:08 +0800 -Subject: [PATCH 072/467] UPSTREAM: drm/radeon: Make MSI address limit based on +Subject: [RUYI PATCH] UPSTREAM: drm/radeon: Make MSI address limit based on the device DMA limit MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 diff --git a/SPECS/linux-lts-kmhv2/0073-UPSTREAM-ALSA-hda-intel-Make-MSI-address-limit-based.patch b/SPECS/linux-lts-kmhv2/0070-UPSTREAM-ALSA-hda-intel-Make-MSI-address-limit-based.patch similarity index 93% rename from SPECS/linux-lts-kmhv2/0073-UPSTREAM-ALSA-hda-intel-Make-MSI-address-limit-based.patch rename to SPECS/linux-lts-kmhv2/0070-UPSTREAM-ALSA-hda-intel-Make-MSI-address-limit-based.patch index ff05d9aa86..5f8bf385cf 100644 --- a/SPECS/linux-lts-kmhv2/0073-UPSTREAM-ALSA-hda-intel-Make-MSI-address-limit-based.patch +++ b/SPECS/linux-lts-kmhv2/0070-UPSTREAM-ALSA-hda-intel-Make-MSI-address-limit-based.patch @@ -1,8 +1,8 @@ -From 749d96eafd7fb34b9586ad8b894f76b4c121a47a Mon Sep 17 00:00:00 2001 +From ed396d380559185d5e0dfad4f40fc5cd8c0382d1 Mon Sep 17 00:00:00 2001 From: Vivian Wang Date: Thu, 29 Jan 2026 09:56:09 +0800 -Subject: [PATCH 073/467] UPSTREAM: ALSA: hda/intel: Make MSI address limit - based on the device DMA limit +Subject: [RUYI PATCH] UPSTREAM: ALSA: hda/intel: Make MSI address limit based + on the device DMA limit The hda/intel driver restricts the MSI message address for devices which do not advertise full 64-bit DMA address space support to 32-bit due to the diff --git a/SPECS/linux-lts-kmhv2/0074-UPSTREAM-riscv-dts-sophgo-enable-hardware-clock-RTC-.patch b/SPECS/linux-lts-kmhv2/0071-UPSTREAM-riscv-dts-sophgo-enable-hardware-clock-RTC-.patch similarity index 92% rename from SPECS/linux-lts-kmhv2/0074-UPSTREAM-riscv-dts-sophgo-enable-hardware-clock-RTC-.patch rename to SPECS/linux-lts-kmhv2/0071-UPSTREAM-riscv-dts-sophgo-enable-hardware-clock-RTC-.patch index 37197af0cf..9eb8c66514 100644 --- a/SPECS/linux-lts-kmhv2/0074-UPSTREAM-riscv-dts-sophgo-enable-hardware-clock-RTC-.patch +++ b/SPECS/linux-lts-kmhv2/0071-UPSTREAM-riscv-dts-sophgo-enable-hardware-clock-RTC-.patch @@ -1,7 +1,7 @@ -From 30a1d9c76630cd4198787ef0603dd4921f1559cf Mon Sep 17 00:00:00 2001 +From f4bd9635e84e4d37d8e56a08bbd43581faeddc96 Mon Sep 17 00:00:00 2001 From: Michael Orlitzky Date: Wed, 7 Jan 2026 06:29:22 -0500 -Subject: [PATCH 074/467] UPSTREAM: riscv: dts: sophgo: enable hardware clock +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: sophgo: enable hardware clock (RTC) on the Milk-V Pioneer These boards have a working hardware clock if you put a CR-1220 diff --git a/SPECS/linux-lts-kmhv2/0075-UPSTREAM-riscv-dts-sophgo-Move-PLIC-and-CLINT-node-i.patch b/SPECS/linux-lts-kmhv2/0072-UPSTREAM-riscv-dts-sophgo-Move-PLIC-and-CLINT-node-i.patch similarity index 99% rename from SPECS/linux-lts-kmhv2/0075-UPSTREAM-riscv-dts-sophgo-Move-PLIC-and-CLINT-node-i.patch rename to SPECS/linux-lts-kmhv2/0072-UPSTREAM-riscv-dts-sophgo-Move-PLIC-and-CLINT-node-i.patch index bf6b8b20f9..0d1f78cb37 100644 --- a/SPECS/linux-lts-kmhv2/0075-UPSTREAM-riscv-dts-sophgo-Move-PLIC-and-CLINT-node-i.patch +++ b/SPECS/linux-lts-kmhv2/0072-UPSTREAM-riscv-dts-sophgo-Move-PLIC-and-CLINT-node-i.patch @@ -1,8 +1,8 @@ -From e07dd958a1dd608e75f5d83068968406cf2c73a1 Mon Sep 17 00:00:00 2001 +From 4a0cc33492f3fc8e642380ddcf6f355a4ec6cfc1 Mon Sep 17 00:00:00 2001 From: Inochi Amaoto Date: Tue, 13 Jan 2026 10:38:26 +0800 -Subject: [PATCH 075/467] UPSTREAM: riscv: dts: sophgo: Move PLIC and CLINT - node into CPU dtsi +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: sophgo: Move PLIC and CLINT node + into CPU dtsi As we have a separate CPU dtsi file, move the PLIC and CLINT node to the CPU dtsi file. This will make the sg2042.dtsi focus diff --git a/SPECS/linux-lts-kmhv2/0076-UPSTREAM-riscv-dts-sophgo-fix-the-node-order-of-SG20.patch b/SPECS/linux-lts-kmhv2/0073-UPSTREAM-riscv-dts-sophgo-fix-the-node-order-of-SG20.patch similarity index 98% rename from SPECS/linux-lts-kmhv2/0076-UPSTREAM-riscv-dts-sophgo-fix-the-node-order-of-SG20.patch rename to SPECS/linux-lts-kmhv2/0073-UPSTREAM-riscv-dts-sophgo-fix-the-node-order-of-SG20.patch index 568815bda9..0d20c75013 100644 --- a/SPECS/linux-lts-kmhv2/0076-UPSTREAM-riscv-dts-sophgo-fix-the-node-order-of-SG20.patch +++ b/SPECS/linux-lts-kmhv2/0073-UPSTREAM-riscv-dts-sophgo-fix-the-node-order-of-SG20.patch @@ -1,7 +1,7 @@ -From bc212a22b04c56496e4f069f7f3fca8cffd37025 Mon Sep 17 00:00:00 2001 +From 05c376f7568773671fcd81b7cc92e365126410d0 Mon Sep 17 00:00:00 2001 From: Inochi Amaoto Date: Tue, 13 Jan 2026 10:38:27 +0800 -Subject: [PATCH 076/467] UPSTREAM: riscv: dts: sophgo: fix the node order of +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: sophgo: fix the node order of SG2042 peripheral In sg2042.dtsi, some peripheral device node does not follow the diff --git a/SPECS/linux-lts-kmhv2/0077-UPSTREAM-riscv-dts-spacemit-Enable-i2c8-adapter-for-.patch b/SPECS/linux-lts-kmhv2/0074-UPSTREAM-riscv-dts-spacemit-Enable-i2c8-adapter-for-.patch similarity index 87% rename from SPECS/linux-lts-kmhv2/0077-UPSTREAM-riscv-dts-spacemit-Enable-i2c8-adapter-for-.patch rename to SPECS/linux-lts-kmhv2/0074-UPSTREAM-riscv-dts-spacemit-Enable-i2c8-adapter-for-.patch index 7f626bb434..5f97d6ec8f 100644 --- a/SPECS/linux-lts-kmhv2/0077-UPSTREAM-riscv-dts-spacemit-Enable-i2c8-adapter-for-.patch +++ b/SPECS/linux-lts-kmhv2/0074-UPSTREAM-riscv-dts-spacemit-Enable-i2c8-adapter-for-.patch @@ -1,8 +1,8 @@ -From 424c28f6634db764db1cd2faa2f13e276f698b61 Mon Sep 17 00:00:00 2001 +From 7b375e6d39b2d52853eaff4e1f70555adadc5253 Mon Sep 17 00:00:00 2001 From: Javier Martinez Canillas Date: Sat, 6 Dec 2025 14:44:53 +0100 -Subject: [PATCH 077/467] UPSTREAM: riscv: dts: spacemit: Enable i2c8 adapter - for Milk-V Jupiter +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: spacemit: Enable i2c8 adapter for + Milk-V Jupiter The adapter is used to access the SpacemiT P1 PMIC present in this board. diff --git a/SPECS/linux-lts-kmhv2/0078-UPSTREAM-riscv-dts-spacemit-Define-fixed-regulators-.patch b/SPECS/linux-lts-kmhv2/0075-UPSTREAM-riscv-dts-spacemit-Define-fixed-regulators-.patch similarity index 89% rename from SPECS/linux-lts-kmhv2/0078-UPSTREAM-riscv-dts-spacemit-Define-fixed-regulators-.patch rename to SPECS/linux-lts-kmhv2/0075-UPSTREAM-riscv-dts-spacemit-Define-fixed-regulators-.patch index 707ca5b47b..1a8e836f5a 100644 --- a/SPECS/linux-lts-kmhv2/0078-UPSTREAM-riscv-dts-spacemit-Define-fixed-regulators-.patch +++ b/SPECS/linux-lts-kmhv2/0075-UPSTREAM-riscv-dts-spacemit-Define-fixed-regulators-.patch @@ -1,8 +1,8 @@ -From 02cddb709249c02e0e30f24ad102a5b7190d26c2 Mon Sep 17 00:00:00 2001 +From 4274a55a8dac98543297e2416ea7c7f40c4f641a Mon Sep 17 00:00:00 2001 From: Javier Martinez Canillas Date: Sat, 6 Dec 2025 14:44:54 +0100 -Subject: [PATCH 078/467] UPSTREAM: riscv: dts: spacemit: Define fixed - regulators for Milk-V Jupiter +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: spacemit: Define fixed regulators + for Milk-V Jupiter Define the DC power input and the 4v power as fixed regulator supplies. diff --git a/SPECS/linux-lts-kmhv2/0079-UPSTREAM-riscv-dts-spacemit-Define-the-P1-PMIC-regul.patch b/SPECS/linux-lts-kmhv2/0076-UPSTREAM-riscv-dts-spacemit-Define-the-P1-PMIC-regul.patch similarity index 96% rename from SPECS/linux-lts-kmhv2/0079-UPSTREAM-riscv-dts-spacemit-Define-the-P1-PMIC-regul.patch rename to SPECS/linux-lts-kmhv2/0076-UPSTREAM-riscv-dts-spacemit-Define-the-P1-PMIC-regul.patch index 2215cfd65e..1be8407564 100644 --- a/SPECS/linux-lts-kmhv2/0079-UPSTREAM-riscv-dts-spacemit-Define-the-P1-PMIC-regul.patch +++ b/SPECS/linux-lts-kmhv2/0076-UPSTREAM-riscv-dts-spacemit-Define-the-P1-PMIC-regul.patch @@ -1,7 +1,7 @@ -From 160cf483f6a088e178a125f0e3a1e3013726ce5c Mon Sep 17 00:00:00 2001 +From 0af31fdff636f13c96b48c14fe2dce73dbf55dfd Mon Sep 17 00:00:00 2001 From: Javier Martinez Canillas Date: Sat, 6 Dec 2025 14:44:55 +0100 -Subject: [PATCH 079/467] UPSTREAM: riscv: dts: spacemit: Define the P1 PMIC +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: spacemit: Define the P1 PMIC regulators for Milk-V Jupiter Define the SpacemiT P1 PMIC voltage regulators and their constraints. diff --git a/SPECS/linux-lts-kmhv2/0080-UPSTREAM-dt-bindings-phy-spacemit-Add-SpacemiT-PCIe-.patch b/SPECS/linux-lts-kmhv2/0077-UPSTREAM-dt-bindings-phy-spacemit-Add-SpacemiT-PCIe-.patch similarity index 97% rename from SPECS/linux-lts-kmhv2/0080-UPSTREAM-dt-bindings-phy-spacemit-Add-SpacemiT-PCIe-.patch rename to SPECS/linux-lts-kmhv2/0077-UPSTREAM-dt-bindings-phy-spacemit-Add-SpacemiT-PCIe-.patch index 4511c729d0..51bfee722a 100644 --- a/SPECS/linux-lts-kmhv2/0080-UPSTREAM-dt-bindings-phy-spacemit-Add-SpacemiT-PCIe-.patch +++ b/SPECS/linux-lts-kmhv2/0077-UPSTREAM-dt-bindings-phy-spacemit-Add-SpacemiT-PCIe-.patch @@ -1,7 +1,7 @@ -From 506b6beaa759b6c9a08da251acd900242abbc6db Mon Sep 17 00:00:00 2001 +From 0cb6f99b1dee1c78c2cb66de8612480e505be4b7 Mon Sep 17 00:00:00 2001 From: Alex Elder Date: Thu, 18 Dec 2025 09:12:27 -0600 -Subject: [PATCH 080/467] UPSTREAM: dt-bindings: phy: spacemit: Add SpacemiT +Subject: [RUYI PATCH] UPSTREAM: dt-bindings: phy: spacemit: Add SpacemiT PCIe/combo PHY Add the Device Tree binding for the PCIe/USB 3.0 combo PHY found in diff --git a/SPECS/linux-lts-kmhv2/0081-UPSTREAM-dt-bindings-phy-spacemit-Introduce-PCIe-PHY.patch b/SPECS/linux-lts-kmhv2/0078-UPSTREAM-dt-bindings-phy-spacemit-Introduce-PCIe-PHY.patch similarity index 95% rename from SPECS/linux-lts-kmhv2/0081-UPSTREAM-dt-bindings-phy-spacemit-Introduce-PCIe-PHY.patch rename to SPECS/linux-lts-kmhv2/0078-UPSTREAM-dt-bindings-phy-spacemit-Introduce-PCIe-PHY.patch index db99c863ec..9b069cb469 100644 --- a/SPECS/linux-lts-kmhv2/0081-UPSTREAM-dt-bindings-phy-spacemit-Introduce-PCIe-PHY.patch +++ b/SPECS/linux-lts-kmhv2/0078-UPSTREAM-dt-bindings-phy-spacemit-Introduce-PCIe-PHY.patch @@ -1,8 +1,7 @@ -From 3cd6a40bb10240022a2201bf5616dd9ed857f053 Mon Sep 17 00:00:00 2001 +From 69d5a6d06db546fbe5f911a20eff130b7eb44927 Mon Sep 17 00:00:00 2001 From: Alex Elder Date: Thu, 18 Dec 2025 09:12:28 -0600 -Subject: [PATCH 081/467] UPSTREAM: dt-bindings: phy: spacemit: Introduce PCIe - PHY +Subject: [RUYI PATCH] UPSTREAM: dt-bindings: phy: spacemit: Introduce PCIe PHY Add the Device Tree binding for two PCIe PHYs present on the SpacemiT K1 SoC. These PHYs are dependent on a separate combo PHY, which diff --git a/SPECS/linux-lts-kmhv2/0082-UPSTREAM-phy-spacemit-Introduce-PCIe-combo-PHY.patch b/SPECS/linux-lts-kmhv2/0079-UPSTREAM-phy-spacemit-Introduce-PCIe-combo-PHY.patch similarity index 99% rename from SPECS/linux-lts-kmhv2/0082-UPSTREAM-phy-spacemit-Introduce-PCIe-combo-PHY.patch rename to SPECS/linux-lts-kmhv2/0079-UPSTREAM-phy-spacemit-Introduce-PCIe-combo-PHY.patch index 10a079192b..78fc295801 100644 --- a/SPECS/linux-lts-kmhv2/0082-UPSTREAM-phy-spacemit-Introduce-PCIe-combo-PHY.patch +++ b/SPECS/linux-lts-kmhv2/0079-UPSTREAM-phy-spacemit-Introduce-PCIe-combo-PHY.patch @@ -1,7 +1,7 @@ -From 096da94e3a5fd9f1512f24b16feafb77786b5dfc Mon Sep 17 00:00:00 2001 +From ec3144e3a9c21e5c60712fe8b72eb68e9f8c120f Mon Sep 17 00:00:00 2001 From: Alex Elder Date: Thu, 18 Dec 2025 09:12:29 -0600 -Subject: [PATCH 082/467] UPSTREAM: phy: spacemit: Introduce PCIe/combo PHY +Subject: [RUYI PATCH] UPSTREAM: phy: spacemit: Introduce PCIe/combo PHY Introduce a driver that supports three PHYs found on the SpacemiT K1 SoC. The first PHY is a combo PHY that can be configured for diff --git a/SPECS/linux-lts-kmhv2/0083-UPSTREAM-riscv-dts-spacemit-Add-a-PCIe-regulator.patch b/SPECS/linux-lts-kmhv2/0080-UPSTREAM-riscv-dts-spacemit-Add-a-PCIe-regulator.patch similarity index 90% rename from SPECS/linux-lts-kmhv2/0083-UPSTREAM-riscv-dts-spacemit-Add-a-PCIe-regulator.patch rename to SPECS/linux-lts-kmhv2/0080-UPSTREAM-riscv-dts-spacemit-Add-a-PCIe-regulator.patch index f3892b1a9e..4a013ca623 100644 --- a/SPECS/linux-lts-kmhv2/0083-UPSTREAM-riscv-dts-spacemit-Add-a-PCIe-regulator.patch +++ b/SPECS/linux-lts-kmhv2/0080-UPSTREAM-riscv-dts-spacemit-Add-a-PCIe-regulator.patch @@ -1,7 +1,7 @@ -From d4491d4d3cdceae1b08777accb31e16fced2cedf Mon Sep 17 00:00:00 2001 +From 1fce0749e1bf54d192dde74d2c105f51a35ab4d4 Mon Sep 17 00:00:00 2001 From: Alex Elder Date: Thu, 18 Dec 2025 09:12:30 -0600 -Subject: [PATCH 083/467] UPSTREAM: riscv: dts: spacemit: Add a PCIe regulator +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: spacemit: Add a PCIe regulator Define a 3.3v fixed voltage regulator to be used by PCIe on the Banana Pi BPI-F3. On this platform, this regulator is always on. diff --git a/SPECS/linux-lts-kmhv2/0084-UPSTREAM-riscv-dts-spacemit-PCIe-and-PHY-related-upd.patch b/SPECS/linux-lts-kmhv2/0081-UPSTREAM-riscv-dts-spacemit-PCIe-and-PHY-related-upd.patch similarity index 98% rename from SPECS/linux-lts-kmhv2/0084-UPSTREAM-riscv-dts-spacemit-PCIe-and-PHY-related-upd.patch rename to SPECS/linux-lts-kmhv2/0081-UPSTREAM-riscv-dts-spacemit-PCIe-and-PHY-related-upd.patch index 0ce1356ac4..ba9f3b4975 100644 --- a/SPECS/linux-lts-kmhv2/0084-UPSTREAM-riscv-dts-spacemit-PCIe-and-PHY-related-upd.patch +++ b/SPECS/linux-lts-kmhv2/0081-UPSTREAM-riscv-dts-spacemit-PCIe-and-PHY-related-upd.patch @@ -1,7 +1,7 @@ -From 18a1bfdbf520d71a0a3013e286a6cb9152dca8b4 Mon Sep 17 00:00:00 2001 +From cca8801247fe6e5967002d5519f537917e6a9bf5 Mon Sep 17 00:00:00 2001 From: Alex Elder Date: Thu, 18 Dec 2025 09:12:31 -0600 -Subject: [PATCH 084/467] UPSTREAM: riscv: dts: spacemit: PCIe and PHY-related +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: spacemit: PCIe and PHY-related updates Define PCIe and PHY-related Device Tree nodes for the SpacemiT K1 SoC. diff --git a/SPECS/linux-lts-kmhv2/0085-UPSTREAM-dt-bindings-i2c-spacemit-add-optional-reset.patch b/SPECS/linux-lts-kmhv2/0082-UPSTREAM-dt-bindings-i2c-spacemit-add-optional-reset.patch similarity index 89% rename from SPECS/linux-lts-kmhv2/0085-UPSTREAM-dt-bindings-i2c-spacemit-add-optional-reset.patch rename to SPECS/linux-lts-kmhv2/0082-UPSTREAM-dt-bindings-i2c-spacemit-add-optional-reset.patch index 55238bb179..c158eae42a 100644 --- a/SPECS/linux-lts-kmhv2/0085-UPSTREAM-dt-bindings-i2c-spacemit-add-optional-reset.patch +++ b/SPECS/linux-lts-kmhv2/0082-UPSTREAM-dt-bindings-i2c-spacemit-add-optional-reset.patch @@ -1,7 +1,7 @@ -From 76c5487f89e7e980c33e0ff5153a4b508e920406 Mon Sep 17 00:00:00 2001 +From f388858d4abee4592cdb3e48a66ed3c681b5801f Mon Sep 17 00:00:00 2001 From: Encrow Thorne Date: Tue, 30 Dec 2025 23:06:51 +0800 -Subject: [PATCH 085/467] UPSTREAM: dt-bindings: i2c: spacemit: add optional +Subject: [RUYI PATCH] UPSTREAM: dt-bindings: i2c: spacemit: add optional resets The I2C controller requires a reset to ensure it starts from a clean state. diff --git a/SPECS/linux-lts-kmhv2/0086-UPSTREAM-i2c-k1-add-reset-support.patch b/SPECS/linux-lts-kmhv2/0083-UPSTREAM-i2c-k1-add-reset-support.patch similarity index 93% rename from SPECS/linux-lts-kmhv2/0086-UPSTREAM-i2c-k1-add-reset-support.patch rename to SPECS/linux-lts-kmhv2/0083-UPSTREAM-i2c-k1-add-reset-support.patch index a444fe362e..8df67ed42a 100644 --- a/SPECS/linux-lts-kmhv2/0086-UPSTREAM-i2c-k1-add-reset-support.patch +++ b/SPECS/linux-lts-kmhv2/0083-UPSTREAM-i2c-k1-add-reset-support.patch @@ -1,7 +1,7 @@ -From 22ab3f10aeaedca84e6ca2414362223f5873ce76 Mon Sep 17 00:00:00 2001 +From ed3b67eff1ecc6048f6b6a76bff5a97ff2abb964 Mon Sep 17 00:00:00 2001 From: Encrow Thorne Date: Tue, 30 Dec 2025 23:06:52 +0800 -Subject: [PATCH 086/467] UPSTREAM: i2c: k1: add reset support +Subject: [RUYI PATCH] UPSTREAM: i2c: k1: add reset support The K1 I2C controller provides a reset line that needs to be deasserted before the controller can be accessed. diff --git a/SPECS/linux-lts-kmhv2/0087-UPSTREAM-riscv-dts-spacemit-add-reset-property.patch b/SPECS/linux-lts-kmhv2/0084-UPSTREAM-riscv-dts-spacemit-add-reset-property.patch similarity index 94% rename from SPECS/linux-lts-kmhv2/0087-UPSTREAM-riscv-dts-spacemit-add-reset-property.patch rename to SPECS/linux-lts-kmhv2/0084-UPSTREAM-riscv-dts-spacemit-add-reset-property.patch index 3792ddbbb7..19f85450fa 100644 --- a/SPECS/linux-lts-kmhv2/0087-UPSTREAM-riscv-dts-spacemit-add-reset-property.patch +++ b/SPECS/linux-lts-kmhv2/0084-UPSTREAM-riscv-dts-spacemit-add-reset-property.patch @@ -1,7 +1,7 @@ -From 44a7ef4342a13da4cdca6f3bde4e71312846a07f Mon Sep 17 00:00:00 2001 +From 3aa8e6c84101edb3c499478758e4a82cc230af36 Mon Sep 17 00:00:00 2001 From: Encrow Thorne Date: Tue, 30 Dec 2025 23:06:53 +0800 -Subject: [PATCH 087/467] UPSTREAM: riscv: dts: spacemit: add reset property +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: spacemit: add reset property Add resets property to K1 I2C node. diff --git a/SPECS/linux-lts-kmhv2/0088-UPSTREAM-dt-bindings-phy-spacemit-add-K1-USB2-PHY.patch b/SPECS/linux-lts-kmhv2/0085-UPSTREAM-dt-bindings-phy-spacemit-add-K1-USB2-PHY.patch similarity index 92% rename from SPECS/linux-lts-kmhv2/0088-UPSTREAM-dt-bindings-phy-spacemit-add-K1-USB2-PHY.patch rename to SPECS/linux-lts-kmhv2/0085-UPSTREAM-dt-bindings-phy-spacemit-add-K1-USB2-PHY.patch index 77424cfb1a..eae9b4c51d 100644 --- a/SPECS/linux-lts-kmhv2/0088-UPSTREAM-dt-bindings-phy-spacemit-add-K1-USB2-PHY.patch +++ b/SPECS/linux-lts-kmhv2/0085-UPSTREAM-dt-bindings-phy-spacemit-add-K1-USB2-PHY.patch @@ -1,7 +1,7 @@ -From e521f4b92c204c0a9d6242ff41c3c872440dbab8 Mon Sep 17 00:00:00 2001 +From 9d8fbb22b0d4fc7ec75661abcee3d71ca556f67a Mon Sep 17 00:00:00 2001 From: Ze Huang Date: Fri, 17 Oct 2025 22:49:52 +0800 -Subject: [PATCH 088/467] UPSTREAM: dt-bindings: phy: spacemit: add K1 USB2 PHY +Subject: [RUYI PATCH] UPSTREAM: dt-bindings: phy: spacemit: add K1 USB2 PHY Add support for USB2 PHY found on SpacemiT K1 SoC. diff --git a/SPECS/linux-lts-kmhv2/0089-UPSTREAM-phy-spacemit-support-K1-USB2.0-PHY-controll.patch b/SPECS/linux-lts-kmhv2/0086-UPSTREAM-phy-spacemit-support-K1-USB2.0-PHY-controll.patch similarity index 98% rename from SPECS/linux-lts-kmhv2/0089-UPSTREAM-phy-spacemit-support-K1-USB2.0-PHY-controll.patch rename to SPECS/linux-lts-kmhv2/0086-UPSTREAM-phy-spacemit-support-K1-USB2.0-PHY-controll.patch index 5dc7268528..dd0a27e19d 100644 --- a/SPECS/linux-lts-kmhv2/0089-UPSTREAM-phy-spacemit-support-K1-USB2.0-PHY-controll.patch +++ b/SPECS/linux-lts-kmhv2/0086-UPSTREAM-phy-spacemit-support-K1-USB2.0-PHY-controll.patch @@ -1,7 +1,7 @@ -From fcc3def145a5601559279ba46a849f87baebfb1e Mon Sep 17 00:00:00 2001 +From 6fe75e59d1834ffff41681bcd52b6a1a83446f3e Mon Sep 17 00:00:00 2001 From: Ze Huang Date: Fri, 17 Oct 2025 22:49:53 +0800 -Subject: [PATCH 089/467] UPSTREAM: phy: spacemit: support K1 USB2.0 PHY +Subject: [RUYI PATCH] UPSTREAM: phy: spacemit: support K1 USB2.0 PHY controller The SpacemiT K1 SoC includes three USB ports: diff --git a/SPECS/linux-lts-kmhv2/0090-UPSTREAM-riscv-dts-spacemit-Add-USB2-PHY-node-for-K1.patch b/SPECS/linux-lts-kmhv2/0087-UPSTREAM-riscv-dts-spacemit-Add-USB2-PHY-node-for-K1.patch similarity index 90% rename from SPECS/linux-lts-kmhv2/0090-UPSTREAM-riscv-dts-spacemit-Add-USB2-PHY-node-for-K1.patch rename to SPECS/linux-lts-kmhv2/0087-UPSTREAM-riscv-dts-spacemit-Add-USB2-PHY-node-for-K1.patch index 091c89cba7..dc4568a151 100644 --- a/SPECS/linux-lts-kmhv2/0090-UPSTREAM-riscv-dts-spacemit-Add-USB2-PHY-node-for-K1.patch +++ b/SPECS/linux-lts-kmhv2/0087-UPSTREAM-riscv-dts-spacemit-Add-USB2-PHY-node-for-K1.patch @@ -1,8 +1,7 @@ -From 70d873fa83fb580cdd0722e586b71f7d82918b64 Mon Sep 17 00:00:00 2001 +From 11169d35e4ee7faf38d3e24da227dd6ca781964d Mon Sep 17 00:00:00 2001 From: Ze Huang Date: Sun, 11 Jan 2026 14:41:02 +0800 -Subject: [PATCH 090/467] UPSTREAM: riscv: dts: spacemit: Add USB2 PHY node for - K1 +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: spacemit: Add USB2 PHY node for K1 K1's DWC3 USB 3.0 controller requires two separate PHYs to function: the USB 3.0 combophy (for SuperSpeed) and a USB 2.0 PHY (for High-Speed, diff --git a/SPECS/linux-lts-kmhv2/0091-UPSTREAM-riscv-dts-spacemit-Add-DWC3-USB-3.0-control.patch b/SPECS/linux-lts-kmhv2/0088-UPSTREAM-riscv-dts-spacemit-Add-DWC3-USB-3.0-control.patch similarity index 93% rename from SPECS/linux-lts-kmhv2/0091-UPSTREAM-riscv-dts-spacemit-Add-DWC3-USB-3.0-control.patch rename to SPECS/linux-lts-kmhv2/0088-UPSTREAM-riscv-dts-spacemit-Add-DWC3-USB-3.0-control.patch index f42a890268..f327e7bfc3 100644 --- a/SPECS/linux-lts-kmhv2/0091-UPSTREAM-riscv-dts-spacemit-Add-DWC3-USB-3.0-control.patch +++ b/SPECS/linux-lts-kmhv2/0088-UPSTREAM-riscv-dts-spacemit-Add-DWC3-USB-3.0-control.patch @@ -1,7 +1,7 @@ -From b30b757a7e4570e7923bf3fcebcf0ff34a42b70c Mon Sep 17 00:00:00 2001 +From f38cd0cdcf8e8fecf3db47eb57caf5849e92aa36 Mon Sep 17 00:00:00 2001 From: Ze Huang Date: Sun, 11 Jan 2026 14:41:03 +0800 -Subject: [PATCH 091/467] UPSTREAM: riscv: dts: spacemit: Add DWC3 USB 3.0 +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: spacemit: Add DWC3 USB 3.0 controller node for K1 Add node for the Synopsys DWC3 USB 3.0 host controller on the K1 SoC. diff --git a/SPECS/linux-lts-kmhv2/0092-UPSTREAM-riscv-dts-spacemit-Enable-USB3.0-on-BananaP.patch b/SPECS/linux-lts-kmhv2/0089-UPSTREAM-riscv-dts-spacemit-Enable-USB3.0-on-BananaP.patch similarity index 94% rename from SPECS/linux-lts-kmhv2/0092-UPSTREAM-riscv-dts-spacemit-Enable-USB3.0-on-BananaP.patch rename to SPECS/linux-lts-kmhv2/0089-UPSTREAM-riscv-dts-spacemit-Enable-USB3.0-on-BananaP.patch index 072d73ce93..ada9b260b3 100644 --- a/SPECS/linux-lts-kmhv2/0092-UPSTREAM-riscv-dts-spacemit-Enable-USB3.0-on-BananaP.patch +++ b/SPECS/linux-lts-kmhv2/0089-UPSTREAM-riscv-dts-spacemit-Enable-USB3.0-on-BananaP.patch @@ -1,7 +1,7 @@ -From 3f32c9b526efb54621fa05106172ff0a751d71c5 Mon Sep 17 00:00:00 2001 +From 35bdc15291717adfaa52c4c9d060b5da8fac5ddf Mon Sep 17 00:00:00 2001 From: Ze Huang Date: Sun, 11 Jan 2026 14:41:04 +0800 -Subject: [PATCH 092/467] UPSTREAM: riscv: dts: spacemit: Enable USB3.0 on +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: spacemit: Enable USB3.0 on BananaPi-F3 Enable the DWC3 USB 3.0 controller and its associated usbphy2 on the diff --git a/SPECS/linux-lts-kmhv2/0093-UPSTREAM-dt-bindings-pinctrl-spacemit-convert-drive-.patch b/SPECS/linux-lts-kmhv2/0090-UPSTREAM-dt-bindings-pinctrl-spacemit-convert-drive-.patch similarity index 90% rename from SPECS/linux-lts-kmhv2/0093-UPSTREAM-dt-bindings-pinctrl-spacemit-convert-drive-.patch rename to SPECS/linux-lts-kmhv2/0090-UPSTREAM-dt-bindings-pinctrl-spacemit-convert-drive-.patch index 90c3f81528..3e646a9468 100644 --- a/SPECS/linux-lts-kmhv2/0093-UPSTREAM-dt-bindings-pinctrl-spacemit-convert-drive-.patch +++ b/SPECS/linux-lts-kmhv2/0090-UPSTREAM-dt-bindings-pinctrl-spacemit-convert-drive-.patch @@ -1,8 +1,8 @@ -From a74398cd1206eaac108f02079a5c123a819062fc Mon Sep 17 00:00:00 2001 +From 58100bb2e0beb94bf6f7d14ee1fbc0ba755686ab Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Fri, 2 Jan 2026 15:00:22 +0800 -Subject: [PATCH 093/467] UPSTREAM: dt-bindings: pinctrl: spacemit: convert - drive strength to schema format +Subject: [RUYI PATCH] UPSTREAM: dt-bindings: pinctrl: spacemit: convert drive + strength to schema format In order to better extend the pinctrl support for future new SoC, convert drive strength setting from free form text to more standard schema format. diff --git a/SPECS/linux-lts-kmhv2/0094-UPSTREAM-dt-bindings-pinctrl-spacemit-add-K3-SoC-sup.patch b/SPECS/linux-lts-kmhv2/0091-UPSTREAM-dt-bindings-pinctrl-spacemit-add-K3-SoC-sup.patch similarity index 92% rename from SPECS/linux-lts-kmhv2/0094-UPSTREAM-dt-bindings-pinctrl-spacemit-add-K3-SoC-sup.patch rename to SPECS/linux-lts-kmhv2/0091-UPSTREAM-dt-bindings-pinctrl-spacemit-add-K3-SoC-sup.patch index 7ec035b202..39afc5d902 100644 --- a/SPECS/linux-lts-kmhv2/0094-UPSTREAM-dt-bindings-pinctrl-spacemit-add-K3-SoC-sup.patch +++ b/SPECS/linux-lts-kmhv2/0091-UPSTREAM-dt-bindings-pinctrl-spacemit-add-K3-SoC-sup.patch @@ -1,7 +1,7 @@ -From 37ffcc8cf5dbf1d1553b54b67b39e8f7728b2714 Mon Sep 17 00:00:00 2001 +From 2038df152864bcab073a9afa519466c854b79d21 Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Fri, 2 Jan 2026 15:00:23 +0800 -Subject: [PATCH 094/467] UPSTREAM: dt-bindings: pinctrl: spacemit: add K3 SoC +Subject: [RUYI PATCH] UPSTREAM: dt-bindings: pinctrl: spacemit: add K3 SoC support Add new compatible string for SpacemiT K3 SoC, the pinctrl IP shares diff --git a/SPECS/linux-lts-kmhv2/0095-UPSTREAM-pinctrl-spacemit-k3-add-initial-pin-support.patch b/SPECS/linux-lts-kmhv2/0092-UPSTREAM-pinctrl-spacemit-k3-add-initial-pin-support.patch similarity index 99% rename from SPECS/linux-lts-kmhv2/0095-UPSTREAM-pinctrl-spacemit-k3-add-initial-pin-support.patch rename to SPECS/linux-lts-kmhv2/0092-UPSTREAM-pinctrl-spacemit-k3-add-initial-pin-support.patch index a3919c7994..36707ca688 100644 --- a/SPECS/linux-lts-kmhv2/0095-UPSTREAM-pinctrl-spacemit-k3-add-initial-pin-support.patch +++ b/SPECS/linux-lts-kmhv2/0092-UPSTREAM-pinctrl-spacemit-k3-add-initial-pin-support.patch @@ -1,8 +1,7 @@ -From 33f3e51747fc087ba55c240d5d94baeb18d26db3 Mon Sep 17 00:00:00 2001 +From fa64b4a9c989f85c6522c5cb06ef127c6dab3d27 Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Fri, 2 Jan 2026 15:00:24 +0800 -Subject: [PATCH 095/467] UPSTREAM: pinctrl: spacemit: k3: add initial pin - support +Subject: [RUYI PATCH] UPSTREAM: pinctrl: spacemit: k3: add initial pin support For the pinctrl IP of SpacemiT's K3 SoC, it has different register offset comparing with previous SoC generation, so introduce a function to do the diff --git a/SPECS/linux-lts-kmhv2/0096-UPSTREAM-pinctrl-spacemit-k3-adjust-drive-strength-a.patch b/SPECS/linux-lts-kmhv2/0093-UPSTREAM-pinctrl-spacemit-k3-adjust-drive-strength-a.patch similarity index 98% rename from SPECS/linux-lts-kmhv2/0096-UPSTREAM-pinctrl-spacemit-k3-adjust-drive-strength-a.patch rename to SPECS/linux-lts-kmhv2/0093-UPSTREAM-pinctrl-spacemit-k3-adjust-drive-strength-a.patch index 02226d7349..1885c27345 100644 --- a/SPECS/linux-lts-kmhv2/0096-UPSTREAM-pinctrl-spacemit-k3-adjust-drive-strength-a.patch +++ b/SPECS/linux-lts-kmhv2/0093-UPSTREAM-pinctrl-spacemit-k3-adjust-drive-strength-a.patch @@ -1,8 +1,8 @@ -From 407a2b9253b9c3e753302f3a24021c64b468be47 Mon Sep 17 00:00:00 2001 +From 57250a2d8e90085ff17ab7670d16519f41b64f28 Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Fri, 2 Jan 2026 15:00:25 +0800 -Subject: [PATCH 096/467] UPSTREAM: pinctrl: spacemit: k3: adjust drive - strength and schmitter trigger +Subject: [RUYI PATCH] UPSTREAM: pinctrl: spacemit: k3: adjust drive strength + and schmitter trigger K3 SoC expand drive strength to 4 bits which support even larger settings table comparing to old SoC generation. Also schmitter trigger diff --git a/SPECS/linux-lts-kmhv2/0097-UPSTREAM-dt-bindings-pinctrl-spacemit-add-syscon-pro.patch b/SPECS/linux-lts-kmhv2/0094-UPSTREAM-dt-bindings-pinctrl-spacemit-add-syscon-pro.patch similarity index 92% rename from SPECS/linux-lts-kmhv2/0097-UPSTREAM-dt-bindings-pinctrl-spacemit-add-syscon-pro.patch rename to SPECS/linux-lts-kmhv2/0094-UPSTREAM-dt-bindings-pinctrl-spacemit-add-syscon-pro.patch index 6328b7b073..b203991c2d 100644 --- a/SPECS/linux-lts-kmhv2/0097-UPSTREAM-dt-bindings-pinctrl-spacemit-add-syscon-pro.patch +++ b/SPECS/linux-lts-kmhv2/0094-UPSTREAM-dt-bindings-pinctrl-spacemit-add-syscon-pro.patch @@ -1,7 +1,7 @@ -From 9c53bc78545cc3c695e01922464a71c887179572 Mon Sep 17 00:00:00 2001 +From f3a4b85d5279965fc53d7163a005b2e64ff1327a Mon Sep 17 00:00:00 2001 From: Troy Mitchell Date: Thu, 8 Jan 2026 14:42:38 +0800 -Subject: [PATCH 097/467] UPSTREAM: dt-bindings: pinctrl: spacemit: add syscon +Subject: [RUYI PATCH] UPSTREAM: dt-bindings: pinctrl: spacemit: add syscon property In order to access the protected IO power domain registers, a valid diff --git a/SPECS/linux-lts-kmhv2/0098-UPSTREAM-pinctrl-spacemit-support-I-O-power-domain-c.patch b/SPECS/linux-lts-kmhv2/0095-UPSTREAM-pinctrl-spacemit-support-I-O-power-domain-c.patch similarity index 98% rename from SPECS/linux-lts-kmhv2/0098-UPSTREAM-pinctrl-spacemit-support-I-O-power-domain-c.patch rename to SPECS/linux-lts-kmhv2/0095-UPSTREAM-pinctrl-spacemit-support-I-O-power-domain-c.patch index 220390317f..377503eb76 100644 --- a/SPECS/linux-lts-kmhv2/0098-UPSTREAM-pinctrl-spacemit-support-I-O-power-domain-c.patch +++ b/SPECS/linux-lts-kmhv2/0095-UPSTREAM-pinctrl-spacemit-support-I-O-power-domain-c.patch @@ -1,7 +1,7 @@ -From 4d7b192ae28c8fd62c4887c36d1d2daf3d5537ab Mon Sep 17 00:00:00 2001 +From 0a07233b0f550ed136cd45130d55ac5e079fc795 Mon Sep 17 00:00:00 2001 From: Troy Mitchell Date: Thu, 8 Jan 2026 14:42:39 +0800 -Subject: [PATCH 098/467] UPSTREAM: pinctrl: spacemit: support I/O power domain +Subject: [RUYI PATCH] UPSTREAM: pinctrl: spacemit: support I/O power domain configuration Dual-voltage GPIO banks default to 3.3V operation. Even when a bank is diff --git a/SPECS/linux-lts-kmhv2/0099-UPSTREAM-riscv-dts-spacemit-pinctrl-update-register-.patch b/SPECS/linux-lts-kmhv2/0096-UPSTREAM-riscv-dts-spacemit-pinctrl-update-register-.patch similarity index 91% rename from SPECS/linux-lts-kmhv2/0099-UPSTREAM-riscv-dts-spacemit-pinctrl-update-register-.patch rename to SPECS/linux-lts-kmhv2/0096-UPSTREAM-riscv-dts-spacemit-pinctrl-update-register-.patch index 678fbcc0c7..8f6837bba8 100644 --- a/SPECS/linux-lts-kmhv2/0099-UPSTREAM-riscv-dts-spacemit-pinctrl-update-register-.patch +++ b/SPECS/linux-lts-kmhv2/0096-UPSTREAM-riscv-dts-spacemit-pinctrl-update-register-.patch @@ -1,8 +1,8 @@ -From 5379340efd812454feda9bf0ebc36dad03992fda Mon Sep 17 00:00:00 2001 +From 404911e71521a30847ea8198f0e48c7d6c92dac5 Mon Sep 17 00:00:00 2001 From: Troy Mitchell Date: Thu, 8 Jan 2026 14:42:40 +0800 -Subject: [PATCH 099/467] UPSTREAM: riscv: dts: spacemit: pinctrl: update - register and IO power +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: spacemit: pinctrl: update register + and IO power Change the size of the reg register to 0x1000 to match the hardware. This register range covers the IO power domain's register addresses. diff --git a/SPECS/linux-lts-kmhv2/0100-UPSTREAM-dt-bindings-riscv-update-ratified-version-o.patch b/SPECS/linux-lts-kmhv2/0097-UPSTREAM-dt-bindings-riscv-update-ratified-version-o.patch similarity index 95% rename from SPECS/linux-lts-kmhv2/0100-UPSTREAM-dt-bindings-riscv-update-ratified-version-o.patch rename to SPECS/linux-lts-kmhv2/0097-UPSTREAM-dt-bindings-riscv-update-ratified-version-o.patch index 3f371e8651..9c1db3eb89 100644 --- a/SPECS/linux-lts-kmhv2/0100-UPSTREAM-dt-bindings-riscv-update-ratified-version-o.patch +++ b/SPECS/linux-lts-kmhv2/0097-UPSTREAM-dt-bindings-riscv-update-ratified-version-o.patch @@ -1,8 +1,8 @@ -From bd353c8584ce96ff556b222bfcbd29bbce5d0a16 Mon Sep 17 00:00:00 2001 +From 33a192939d2dd110bc17a0f1c65a5c654c617d16 Mon Sep 17 00:00:00 2001 From: Guodong Xu Date: Thu, 25 Dec 2025 14:24:20 +0800 -Subject: [PATCH 100/467] UPSTREAM: dt-bindings: riscv: update ratified version - of h, svinval, svnapot, svpbmt +Subject: [RUYI PATCH] UPSTREAM: dt-bindings: riscv: update ratified version of + h, svinval, svnapot, svpbmt The descriptions for h, svinval, svnapot, and svpbmt extensions currently reference the "20191213 version of the privileged ISA specification". diff --git a/SPECS/linux-lts-kmhv2/0101-UPSTREAM-dt-bindings-riscv-Add-B-ISA-extension-descr.patch b/SPECS/linux-lts-kmhv2/0098-UPSTREAM-dt-bindings-riscv-Add-B-ISA-extension-descr.patch similarity index 95% rename from SPECS/linux-lts-kmhv2/0101-UPSTREAM-dt-bindings-riscv-Add-B-ISA-extension-descr.patch rename to SPECS/linux-lts-kmhv2/0098-UPSTREAM-dt-bindings-riscv-Add-B-ISA-extension-descr.patch index 3298ffafa4..03b356c1c3 100644 --- a/SPECS/linux-lts-kmhv2/0101-UPSTREAM-dt-bindings-riscv-Add-B-ISA-extension-descr.patch +++ b/SPECS/linux-lts-kmhv2/0098-UPSTREAM-dt-bindings-riscv-Add-B-ISA-extension-descr.patch @@ -1,7 +1,7 @@ -From b7ad5620e1cca351de602305d9722ab055f70643 Mon Sep 17 00:00:00 2001 +From 8b082ec91bd4cfaf11f3a1b69d1b66ea599ba3f1 Mon Sep 17 00:00:00 2001 From: Guodong Xu Date: Sat, 10 Jan 2026 13:18:18 +0800 -Subject: [PATCH 101/467] UPSTREAM: dt-bindings: riscv: Add B ISA extension +Subject: [RUYI PATCH] UPSTREAM: dt-bindings: riscv: Add B ISA extension description Add description of the single-letter B extension for Bit Manipulation. diff --git a/SPECS/linux-lts-kmhv2/0102-UPSTREAM-dt-bindings-riscv-Add-descriptions-for-Za64.patch b/SPECS/linux-lts-kmhv2/0099-UPSTREAM-dt-bindings-riscv-Add-descriptions-for-Za64.patch similarity index 97% rename from SPECS/linux-lts-kmhv2/0102-UPSTREAM-dt-bindings-riscv-Add-descriptions-for-Za64.patch rename to SPECS/linux-lts-kmhv2/0099-UPSTREAM-dt-bindings-riscv-Add-descriptions-for-Za64.patch index 10b2fa9c6e..f6b09dc50b 100644 --- a/SPECS/linux-lts-kmhv2/0102-UPSTREAM-dt-bindings-riscv-Add-descriptions-for-Za64.patch +++ b/SPECS/linux-lts-kmhv2/0099-UPSTREAM-dt-bindings-riscv-Add-descriptions-for-Za64.patch @@ -1,7 +1,7 @@ -From 40de97191a9ea8701aed74a3c0772761a8046235 Mon Sep 17 00:00:00 2001 +From 293192824603c354264f56113a64fc91d889d750 Mon Sep 17 00:00:00 2001 From: Guodong Xu Date: Sat, 10 Jan 2026 13:18:19 +0800 -Subject: [PATCH 102/467] UPSTREAM: dt-bindings: riscv: Add descriptions for +Subject: [RUYI PATCH] UPSTREAM: dt-bindings: riscv: Add descriptions for Za64rs, Ziccamoa, Ziccif, and Zicclsm Add descriptions for four extensions: Za64rs, Ziccamoa, Ziccif, and diff --git a/SPECS/linux-lts-kmhv2/0103-UPSTREAM-dt-bindings-riscv-Add-Ssccptr-Sscounterenw-.patch b/SPECS/linux-lts-kmhv2/0100-UPSTREAM-dt-bindings-riscv-Add-Ssccptr-Sscounterenw-.patch similarity index 95% rename from SPECS/linux-lts-kmhv2/0103-UPSTREAM-dt-bindings-riscv-Add-Ssccptr-Sscounterenw-.patch rename to SPECS/linux-lts-kmhv2/0100-UPSTREAM-dt-bindings-riscv-Add-Ssccptr-Sscounterenw-.patch index 8f9f20a577..347e39618f 100644 --- a/SPECS/linux-lts-kmhv2/0103-UPSTREAM-dt-bindings-riscv-Add-Ssccptr-Sscounterenw-.patch +++ b/SPECS/linux-lts-kmhv2/0100-UPSTREAM-dt-bindings-riscv-Add-Ssccptr-Sscounterenw-.patch @@ -1,8 +1,8 @@ -From cb41ade08efabd7980780c3df13115056b7d5bbe Mon Sep 17 00:00:00 2001 +From 9f1f119c5d51420861951a5660e8714b87fcf2ce Mon Sep 17 00:00:00 2001 From: Guodong Xu Date: Sat, 10 Jan 2026 13:18:20 +0800 -Subject: [PATCH 103/467] UPSTREAM: dt-bindings: riscv: Add Ssccptr, - Sscounterenw, Sstvala, Sstvecd, Ssu64xl +Subject: [RUYI PATCH] UPSTREAM: dt-bindings: riscv: Add Ssccptr, Sscounterenw, + Sstvala, Sstvecd, Ssu64xl Add descriptions for five new extensions: Ssccptr, Sscounterenw, Sstvala, Sstvecd, and Ssu64xl. These extensions are ratified in RISC-V Profiles diff --git a/SPECS/linux-lts-kmhv2/0104-UPSTREAM-dt-bindings-riscv-Add-Sha-and-its-comprised.patch b/SPECS/linux-lts-kmhv2/0101-UPSTREAM-dt-bindings-riscv-Add-Sha-and-its-comprised.patch similarity index 97% rename from SPECS/linux-lts-kmhv2/0104-UPSTREAM-dt-bindings-riscv-Add-Sha-and-its-comprised.patch rename to SPECS/linux-lts-kmhv2/0101-UPSTREAM-dt-bindings-riscv-Add-Sha-and-its-comprised.patch index 6613221727..f4ee934072 100644 --- a/SPECS/linux-lts-kmhv2/0104-UPSTREAM-dt-bindings-riscv-Add-Sha-and-its-comprised.patch +++ b/SPECS/linux-lts-kmhv2/0101-UPSTREAM-dt-bindings-riscv-Add-Sha-and-its-comprised.patch @@ -1,8 +1,8 @@ -From 76d1441d889e836547a5be7be06231426dd50fc7 Mon Sep 17 00:00:00 2001 +From 1642e810c6656b4e941561a7bb884e733c44a2f6 Mon Sep 17 00:00:00 2001 From: Guodong Xu Date: Sat, 10 Jan 2026 13:18:21 +0800 -Subject: [PATCH 104/467] UPSTREAM: dt-bindings: riscv: Add Sha and its - comprised extensions +Subject: [RUYI PATCH] UPSTREAM: dt-bindings: riscv: Add Sha and its comprised + extensions Add descriptions for the Sha extension and the seven extensions it comprises: Shcounterenw, Shgatpa, Shtvala, Shvsatpa, Shvstvala, Shvstvecd, diff --git a/SPECS/linux-lts-kmhv2/0105-UPSTREAM-riscv-dts-sophgo-sg2044-Add-b-ISA-extension.patch b/SPECS/linux-lts-kmhv2/0102-UPSTREAM-riscv-dts-sophgo-sg2044-Add-b-ISA-extension.patch similarity index 99% rename from SPECS/linux-lts-kmhv2/0105-UPSTREAM-riscv-dts-sophgo-sg2044-Add-b-ISA-extension.patch rename to SPECS/linux-lts-kmhv2/0102-UPSTREAM-riscv-dts-sophgo-sg2044-Add-b-ISA-extension.patch index fb246009b4..7eef93f3d7 100644 --- a/SPECS/linux-lts-kmhv2/0105-UPSTREAM-riscv-dts-sophgo-sg2044-Add-b-ISA-extension.patch +++ b/SPECS/linux-lts-kmhv2/0102-UPSTREAM-riscv-dts-sophgo-sg2044-Add-b-ISA-extension.patch @@ -1,7 +1,7 @@ -From 0fd7679a286d8f4656076076047b3c5627b87815 Mon Sep 17 00:00:00 2001 +From 815614b3265facda28aaa4572e120d8f049a9c79 Mon Sep 17 00:00:00 2001 From: Guodong Xu Date: Thu, 15 Jan 2026 07:18:59 +0800 -Subject: [PATCH 105/467] UPSTREAM: riscv: dts: sophgo: sg2044: Add "b" ISA +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: sophgo: sg2044: Add "b" ISA extension "b" is ratified (Apr/2024) much later than its components zba/zbb/zbs diff --git a/SPECS/linux-lts-kmhv2/0106-UPSTREAM-riscv-dts-spacemit-k1-Add-b-ISA-extension.patch b/SPECS/linux-lts-kmhv2/0103-UPSTREAM-riscv-dts-spacemit-k1-Add-b-ISA-extension.patch similarity index 98% rename from SPECS/linux-lts-kmhv2/0106-UPSTREAM-riscv-dts-spacemit-k1-Add-b-ISA-extension.patch rename to SPECS/linux-lts-kmhv2/0103-UPSTREAM-riscv-dts-spacemit-k1-Add-b-ISA-extension.patch index 8190f7f0ca..1f0aba5728 100644 --- a/SPECS/linux-lts-kmhv2/0106-UPSTREAM-riscv-dts-spacemit-k1-Add-b-ISA-extension.patch +++ b/SPECS/linux-lts-kmhv2/0103-UPSTREAM-riscv-dts-spacemit-k1-Add-b-ISA-extension.patch @@ -1,7 +1,7 @@ -From adaead5f6b5ea0e1fd34595fb5fe60ad48dd0471 Mon Sep 17 00:00:00 2001 +From 039b44e9b855295ac8945486ffea47d65240d000 Mon Sep 17 00:00:00 2001 From: Guodong Xu Date: Thu, 15 Jan 2026 07:19:00 +0800 -Subject: [PATCH 106/467] UPSTREAM: riscv: dts: spacemit: k1: Add "b" ISA +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: spacemit: k1: Add "b" ISA extension "b" is ratified (Apr/2024) much later than its components zba/zbb/zbs diff --git a/SPECS/linux-lts-kmhv2/0107-UPSTREAM-dt-bindings-riscv-add-SpacemiT-X100-CPU-com.patch b/SPECS/linux-lts-kmhv2/0104-UPSTREAM-dt-bindings-riscv-add-SpacemiT-X100-CPU-com.patch similarity index 92% rename from SPECS/linux-lts-kmhv2/0107-UPSTREAM-dt-bindings-riscv-add-SpacemiT-X100-CPU-com.patch rename to SPECS/linux-lts-kmhv2/0104-UPSTREAM-dt-bindings-riscv-add-SpacemiT-X100-CPU-com.patch index 809cf69223..8f2845d570 100644 --- a/SPECS/linux-lts-kmhv2/0107-UPSTREAM-dt-bindings-riscv-add-SpacemiT-X100-CPU-com.patch +++ b/SPECS/linux-lts-kmhv2/0104-UPSTREAM-dt-bindings-riscv-add-SpacemiT-X100-CPU-com.patch @@ -1,7 +1,7 @@ -From 8e1a61160ad52213d592d47106334dc60232a82b Mon Sep 17 00:00:00 2001 +From 3a49674fb8ec24236b9a789e322ccc05b66c4d65 Mon Sep 17 00:00:00 2001 From: Guodong Xu Date: Thu, 15 Jan 2026 14:51:40 +0800 -Subject: [PATCH 107/467] UPSTREAM: dt-bindings: riscv: add SpacemiT X100 CPU +Subject: [RUYI PATCH] UPSTREAM: dt-bindings: riscv: add SpacemiT X100 CPU compatible Add compatible string for the SpacemiT X100 core. [1] diff --git a/SPECS/linux-lts-kmhv2/0108-UPSTREAM-dt-bindings-timer-add-SpacemiT-K3-CLINT.patch b/SPECS/linux-lts-kmhv2/0105-UPSTREAM-dt-bindings-timer-add-SpacemiT-K3-CLINT.patch similarity index 90% rename from SPECS/linux-lts-kmhv2/0108-UPSTREAM-dt-bindings-timer-add-SpacemiT-K3-CLINT.patch rename to SPECS/linux-lts-kmhv2/0105-UPSTREAM-dt-bindings-timer-add-SpacemiT-K3-CLINT.patch index 8b1c7bc20d..10acec0266 100644 --- a/SPECS/linux-lts-kmhv2/0108-UPSTREAM-dt-bindings-timer-add-SpacemiT-K3-CLINT.patch +++ b/SPECS/linux-lts-kmhv2/0105-UPSTREAM-dt-bindings-timer-add-SpacemiT-K3-CLINT.patch @@ -1,7 +1,7 @@ -From 7095ed807e459baec17231d727e1e5399c4753c7 Mon Sep 17 00:00:00 2001 +From 9e4be2e7c734325e83668eba93f9e2dbc1220efa Mon Sep 17 00:00:00 2001 From: Guodong Xu Date: Thu, 15 Jan 2026 14:51:41 +0800 -Subject: [PATCH 108/467] UPSTREAM: dt-bindings: timer: add SpacemiT K3 CLINT +Subject: [RUYI PATCH] UPSTREAM: dt-bindings: timer: add SpacemiT K3 CLINT Add compatible string for SpacemiT K3 CLINT. diff --git a/SPECS/linux-lts-kmhv2/0109-UPSTREAM-dt-bindings-interrupt-controller-add-Spacem.patch b/SPECS/linux-lts-kmhv2/0106-UPSTREAM-dt-bindings-interrupt-controller-add-Spacem.patch similarity index 89% rename from SPECS/linux-lts-kmhv2/0109-UPSTREAM-dt-bindings-interrupt-controller-add-Spacem.patch rename to SPECS/linux-lts-kmhv2/0106-UPSTREAM-dt-bindings-interrupt-controller-add-Spacem.patch index 3257d1e8d2..f8b908b4e1 100644 --- a/SPECS/linux-lts-kmhv2/0109-UPSTREAM-dt-bindings-interrupt-controller-add-Spacem.patch +++ b/SPECS/linux-lts-kmhv2/0106-UPSTREAM-dt-bindings-interrupt-controller-add-Spacem.patch @@ -1,7 +1,7 @@ -From a5bf205e23df3a195f132f1b23867635454771e9 Mon Sep 17 00:00:00 2001 +From 57ea95edd2da52d808cbd5a6d874d1cb368dea05 Mon Sep 17 00:00:00 2001 From: Guodong Xu Date: Thu, 15 Jan 2026 14:51:42 +0800 -Subject: [PATCH 109/467] UPSTREAM: dt-bindings: interrupt-controller: add +Subject: [RUYI PATCH] UPSTREAM: dt-bindings: interrupt-controller: add SpacemiT K3 APLIC Add compatible string for SpacemiT K3 APLIC. diff --git a/SPECS/linux-lts-kmhv2/0110-UPSTREAM-dt-bindings-interrupt-controller-add-Spacem.patch b/SPECS/linux-lts-kmhv2/0107-UPSTREAM-dt-bindings-interrupt-controller-add-Spacem.patch similarity index 89% rename from SPECS/linux-lts-kmhv2/0110-UPSTREAM-dt-bindings-interrupt-controller-add-Spacem.patch rename to SPECS/linux-lts-kmhv2/0107-UPSTREAM-dt-bindings-interrupt-controller-add-Spacem.patch index 1568e712e5..9699a897cf 100644 --- a/SPECS/linux-lts-kmhv2/0110-UPSTREAM-dt-bindings-interrupt-controller-add-Spacem.patch +++ b/SPECS/linux-lts-kmhv2/0107-UPSTREAM-dt-bindings-interrupt-controller-add-Spacem.patch @@ -1,7 +1,7 @@ -From d63371e2a5c8738aa915c7d56267e1a929c22dba Mon Sep 17 00:00:00 2001 +From 7d7a00a794501c279b94f46e44c33a60cc0ecf71 Mon Sep 17 00:00:00 2001 From: Guodong Xu Date: Thu, 15 Jan 2026 14:51:43 +0800 -Subject: [PATCH 110/467] UPSTREAM: dt-bindings: interrupt-controller: add +Subject: [RUYI PATCH] UPSTREAM: dt-bindings: interrupt-controller: add SpacemiT K3 IMSIC Add compatible string for SpacemiT K3 IMSIC. diff --git a/SPECS/linux-lts-kmhv2/0111-UPSTREAM-dt-bindings-riscv-spacemit-add-K3-and-Pico-.patch b/SPECS/linux-lts-kmhv2/0108-UPSTREAM-dt-bindings-riscv-spacemit-add-K3-and-Pico-.patch similarity index 91% rename from SPECS/linux-lts-kmhv2/0111-UPSTREAM-dt-bindings-riscv-spacemit-add-K3-and-Pico-.patch rename to SPECS/linux-lts-kmhv2/0108-UPSTREAM-dt-bindings-riscv-spacemit-add-K3-and-Pico-.patch index 38620c5098..0f66a78fa3 100644 --- a/SPECS/linux-lts-kmhv2/0111-UPSTREAM-dt-bindings-riscv-spacemit-add-K3-and-Pico-.patch +++ b/SPECS/linux-lts-kmhv2/0108-UPSTREAM-dt-bindings-riscv-spacemit-add-K3-and-Pico-.patch @@ -1,7 +1,7 @@ -From f7c8a235eb0f117b1a38380fced43d1f12ce6a90 Mon Sep 17 00:00:00 2001 +From 90385ee4dee92d3b318cb4a03b5de245c87b06f2 Mon Sep 17 00:00:00 2001 From: Guodong Xu Date: Thu, 15 Jan 2026 14:51:44 +0800 -Subject: [PATCH 111/467] UPSTREAM: dt-bindings: riscv: spacemit: add K3 and +Subject: [RUYI PATCH] UPSTREAM: dt-bindings: riscv: spacemit: add K3 and Pico-ITX board bindings Add DT binding documentation for the SpacemiT K3 SoC and the board Pico-ITX diff --git a/SPECS/linux-lts-kmhv2/0112-UPSTREAM-riscv-dts-spacemit-add-initial-support-for-.patch b/SPECS/linux-lts-kmhv2/0109-UPSTREAM-riscv-dts-spacemit-add-initial-support-for-.patch similarity index 99% rename from SPECS/linux-lts-kmhv2/0112-UPSTREAM-riscv-dts-spacemit-add-initial-support-for-.patch rename to SPECS/linux-lts-kmhv2/0109-UPSTREAM-riscv-dts-spacemit-add-initial-support-for-.patch index 238312a7d2..f038974db6 100644 --- a/SPECS/linux-lts-kmhv2/0112-UPSTREAM-riscv-dts-spacemit-add-initial-support-for-.patch +++ b/SPECS/linux-lts-kmhv2/0109-UPSTREAM-riscv-dts-spacemit-add-initial-support-for-.patch @@ -1,8 +1,8 @@ -From fe51e7041e2aff1c2d9c8aa9847ccab8ca54a056 Mon Sep 17 00:00:00 2001 +From b4a0b52d7cdbe329b44301f63847faf1c8631060 Mon Sep 17 00:00:00 2001 From: Guodong Xu Date: Thu, 15 Jan 2026 14:51:45 +0800 -Subject: [PATCH 112/467] UPSTREAM: riscv: dts: spacemit: add initial support - for K3 SoC +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: spacemit: add initial support for + K3 SoC SpacemiT K3 is equipped with 8 X100 cores, which are RVA23 compliant. Add nodes of uarts, timer and interrupt-controllers. Also add M-mode diff --git a/SPECS/linux-lts-kmhv2/0113-UPSTREAM-riscv-dts-spacemit-add-K3-Pico-ITX-board-su.patch b/SPECS/linux-lts-kmhv2/0110-UPSTREAM-riscv-dts-spacemit-add-K3-Pico-ITX-board-su.patch similarity index 93% rename from SPECS/linux-lts-kmhv2/0113-UPSTREAM-riscv-dts-spacemit-add-K3-Pico-ITX-board-su.patch rename to SPECS/linux-lts-kmhv2/0110-UPSTREAM-riscv-dts-spacemit-add-K3-Pico-ITX-board-su.patch index b8abaeb4f2..f252517e9d 100644 --- a/SPECS/linux-lts-kmhv2/0113-UPSTREAM-riscv-dts-spacemit-add-K3-Pico-ITX-board-su.patch +++ b/SPECS/linux-lts-kmhv2/0110-UPSTREAM-riscv-dts-spacemit-add-K3-Pico-ITX-board-su.patch @@ -1,7 +1,7 @@ -From fcd998b46e6d0b3681c7f4192cb27b126e034191 Mon Sep 17 00:00:00 2001 +From 377151dae3f25558fd27556e52c4f0854c988c8b Mon Sep 17 00:00:00 2001 From: Guodong Xu Date: Thu, 15 Jan 2026 14:51:46 +0800 -Subject: [PATCH 113/467] UPSTREAM: riscv: dts: spacemit: add K3 Pico-ITX board +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: spacemit: add K3 Pico-ITX board support K3 Pico-ITX is a 2.5-inch single-board computer equipted with a SpacemiT diff --git a/SPECS/linux-lts-kmhv2/0114-UPSTREAM-clk-spacemit-Hide-common-clock-driver-from-.patch b/SPECS/linux-lts-kmhv2/0111-UPSTREAM-clk-spacemit-Hide-common-clock-driver-from-.patch similarity index 90% rename from SPECS/linux-lts-kmhv2/0114-UPSTREAM-clk-spacemit-Hide-common-clock-driver-from-.patch rename to SPECS/linux-lts-kmhv2/0111-UPSTREAM-clk-spacemit-Hide-common-clock-driver-from-.patch index ec4fc1255f..ec9ea29ffd 100644 --- a/SPECS/linux-lts-kmhv2/0114-UPSTREAM-clk-spacemit-Hide-common-clock-driver-from-.patch +++ b/SPECS/linux-lts-kmhv2/0111-UPSTREAM-clk-spacemit-Hide-common-clock-driver-from-.patch @@ -1,8 +1,8 @@ -From 0e02ccc906b37757be6723a81e0e8d49131246c6 Mon Sep 17 00:00:00 2001 +From 2503ec0c2acbeba44796cf9a39cd65176b1b41b8 Mon Sep 17 00:00:00 2001 From: Inochi Amaoto Date: Fri, 19 Dec 2025 09:28:18 +0800 -Subject: [PATCH 114/467] UPSTREAM: clk: spacemit: Hide common clock driver - from user controller +Subject: [RUYI PATCH] UPSTREAM: clk: spacemit: Hide common clock driver from + user controller Since the common clock driver is only a dependency for other spacemit clock driver, it should not be enabled individually, so hide this in diff --git a/SPECS/linux-lts-kmhv2/0115-UPSTREAM-clk-spacemit-prepare-common-ccu-header.patch b/SPECS/linux-lts-kmhv2/0112-UPSTREAM-clk-spacemit-prepare-common-ccu-header.patch similarity index 94% rename from SPECS/linux-lts-kmhv2/0115-UPSTREAM-clk-spacemit-prepare-common-ccu-header.patch rename to SPECS/linux-lts-kmhv2/0112-UPSTREAM-clk-spacemit-prepare-common-ccu-header.patch index 8a5722dcf6..02f0837e38 100644 --- a/SPECS/linux-lts-kmhv2/0115-UPSTREAM-clk-spacemit-prepare-common-ccu-header.patch +++ b/SPECS/linux-lts-kmhv2/0112-UPSTREAM-clk-spacemit-prepare-common-ccu-header.patch @@ -1,7 +1,7 @@ -From 771281a6b5e7596444e45eefb3739c0fdc34a300 Mon Sep 17 00:00:00 2001 +From 5fd55e32b05d7b1c89471933925ea500ab96dc8f Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Fri, 19 Dec 2025 21:52:08 +0800 -Subject: [PATCH 115/467] UPSTREAM: clk: spacemit: prepare common ccu header +Subject: [RUYI PATCH] UPSTREAM: clk: spacemit: prepare common ccu header In order to prepare adding clock driver for new K3 SoC, extract generic code to a separate common ccu header file, so they are not defined diff --git a/SPECS/linux-lts-kmhv2/0116-UPSTREAM-clk-spacemit-extract-common-ccu-functions.patch b/SPECS/linux-lts-kmhv2/0113-UPSTREAM-clk-spacemit-extract-common-ccu-functions.patch similarity index 98% rename from SPECS/linux-lts-kmhv2/0116-UPSTREAM-clk-spacemit-extract-common-ccu-functions.patch rename to SPECS/linux-lts-kmhv2/0113-UPSTREAM-clk-spacemit-extract-common-ccu-functions.patch index 1d0ba908ed..07bf26b3d3 100644 --- a/SPECS/linux-lts-kmhv2/0116-UPSTREAM-clk-spacemit-extract-common-ccu-functions.patch +++ b/SPECS/linux-lts-kmhv2/0113-UPSTREAM-clk-spacemit-extract-common-ccu-functions.patch @@ -1,7 +1,7 @@ -From 4884ecab8b7bfb72589924db174968f01edb5910 Mon Sep 17 00:00:00 2001 +From 882ae01390f0d71acbaa666ad62660f1690558cb Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Fri, 19 Dec 2025 08:07:23 +0800 -Subject: [PATCH 116/467] UPSTREAM: clk: spacemit: extract common ccu functions +Subject: [RUYI PATCH] UPSTREAM: clk: spacemit: extract common ccu functions Refactor the probe function of SpacemiT's clock, and extract a common ccu file, so new clock driver added in the future can share the same code, diff --git a/SPECS/linux-lts-kmhv2/0117-UPSTREAM-clk-spacemit-add-platform-SoC-prefix-to-res.patch b/SPECS/linux-lts-kmhv2/0114-UPSTREAM-clk-spacemit-add-platform-SoC-prefix-to-res.patch similarity index 94% rename from SPECS/linux-lts-kmhv2/0117-UPSTREAM-clk-spacemit-add-platform-SoC-prefix-to-res.patch rename to SPECS/linux-lts-kmhv2/0114-UPSTREAM-clk-spacemit-add-platform-SoC-prefix-to-res.patch index 72381976e0..195fb33162 100644 --- a/SPECS/linux-lts-kmhv2/0117-UPSTREAM-clk-spacemit-add-platform-SoC-prefix-to-res.patch +++ b/SPECS/linux-lts-kmhv2/0114-UPSTREAM-clk-spacemit-add-platform-SoC-prefix-to-res.patch @@ -1,7 +1,7 @@ -From 7c0b4de9221472ba52db151507973c2e67c7f5c2 Mon Sep 17 00:00:00 2001 +From 597e2f7d18294ec1b59dc52d5be6ac61f4ef6075 Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Sat, 3 Jan 2026 14:14:36 +0800 -Subject: [PATCH 117/467] UPSTREAM: clk: spacemit: add platform SoC prefix to +Subject: [RUYI PATCH] UPSTREAM: clk: spacemit: add platform SoC prefix to reset name This change is needed for adding future new SpacemiT K3 reset driver. diff --git a/SPECS/linux-lts-kmhv2/0118-UPSTREAM-reset-spacemit-fix-auxiliary-device-id.patch b/SPECS/linux-lts-kmhv2/0115-UPSTREAM-reset-spacemit-fix-auxiliary-device-id.patch similarity index 92% rename from SPECS/linux-lts-kmhv2/0118-UPSTREAM-reset-spacemit-fix-auxiliary-device-id.patch rename to SPECS/linux-lts-kmhv2/0115-UPSTREAM-reset-spacemit-fix-auxiliary-device-id.patch index 42dc66ad65..1bbdfdf4b9 100644 --- a/SPECS/linux-lts-kmhv2/0118-UPSTREAM-reset-spacemit-fix-auxiliary-device-id.patch +++ b/SPECS/linux-lts-kmhv2/0115-UPSTREAM-reset-spacemit-fix-auxiliary-device-id.patch @@ -1,7 +1,7 @@ -From 316e5feca8326de2fcdcb6a5ad36fbdbf7b12758 Mon Sep 17 00:00:00 2001 +From 195ce637ead66f8aff72ecf491637b937ab32985 Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Fri, 19 Dec 2025 05:34:39 +0800 -Subject: [PATCH 118/467] UPSTREAM: reset: spacemit: fix auxiliary device id +Subject: [RUYI PATCH] UPSTREAM: reset: spacemit: fix auxiliary device id Due to the auxiliary register procedure moved to ccu common module where the module name changed to spacemit_ccu, then the reset auxiliary device diff --git a/SPECS/linux-lts-kmhv2/0119-UPSTREAM-dt-bindings-soc-spacemit-k3-add-clock-suppo.patch b/SPECS/linux-lts-kmhv2/0116-UPSTREAM-dt-bindings-soc-spacemit-k3-add-clock-suppo.patch similarity index 99% rename from SPECS/linux-lts-kmhv2/0119-UPSTREAM-dt-bindings-soc-spacemit-k3-add-clock-suppo.patch rename to SPECS/linux-lts-kmhv2/0116-UPSTREAM-dt-bindings-soc-spacemit-k3-add-clock-suppo.patch index 5b56ed2c06..eb8a0da4ac 100644 --- a/SPECS/linux-lts-kmhv2/0119-UPSTREAM-dt-bindings-soc-spacemit-k3-add-clock-suppo.patch +++ b/SPECS/linux-lts-kmhv2/0116-UPSTREAM-dt-bindings-soc-spacemit-k3-add-clock-suppo.patch @@ -1,7 +1,7 @@ -From 57bc7378dba997a6f4714c6180bf65bbaf53dccb Mon Sep 17 00:00:00 2001 +From 4887997f9fc66c19a62763d21f3beb9036a5470b Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Sat, 1 Nov 2025 20:56:42 +0800 -Subject: [PATCH 119/467] UPSTREAM: dt-bindings: soc: spacemit: k3: add clock +Subject: [RUYI PATCH] UPSTREAM: dt-bindings: soc: spacemit: k3: add clock support Add compatible strings for clock drivers to support Spacemit K3 SoC, diff --git a/SPECS/linux-lts-kmhv2/0120-UPSTREAM-clk-spacemit-ccu_mix-add-inverted-enable-ga.patch b/SPECS/linux-lts-kmhv2/0117-UPSTREAM-clk-spacemit-ccu_mix-add-inverted-enable-ga.patch similarity index 96% rename from SPECS/linux-lts-kmhv2/0120-UPSTREAM-clk-spacemit-ccu_mix-add-inverted-enable-ga.patch rename to SPECS/linux-lts-kmhv2/0117-UPSTREAM-clk-spacemit-ccu_mix-add-inverted-enable-ga.patch index 5c1f5ce5c7..3bd158963f 100644 --- a/SPECS/linux-lts-kmhv2/0120-UPSTREAM-clk-spacemit-ccu_mix-add-inverted-enable-ga.patch +++ b/SPECS/linux-lts-kmhv2/0117-UPSTREAM-clk-spacemit-ccu_mix-add-inverted-enable-ga.patch @@ -1,7 +1,7 @@ -From 963fb293372d266d46bee16fa3f3b74d277c8831 Mon Sep 17 00:00:00 2001 +From f461f20d8d5d33bdf1d9fa07acf5a6337f03e57c Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Fri, 31 Oct 2025 20:40:46 +0800 -Subject: [PATCH 120/467] UPSTREAM: clk: spacemit: ccu_mix: add inverted enable +Subject: [RUYI PATCH] UPSTREAM: clk: spacemit: ccu_mix: add inverted enable gate clock K3 SoC has the clock IP which support to write value 0 for enabling the diff --git a/SPECS/linux-lts-kmhv2/0121-UPSTREAM-clk-spacemit-ccu_pll-add-plla-type-clock.patch b/SPECS/linux-lts-kmhv2/0118-UPSTREAM-clk-spacemit-ccu_pll-add-plla-type-clock.patch similarity index 98% rename from SPECS/linux-lts-kmhv2/0121-UPSTREAM-clk-spacemit-ccu_pll-add-plla-type-clock.patch rename to SPECS/linux-lts-kmhv2/0118-UPSTREAM-clk-spacemit-ccu_pll-add-plla-type-clock.patch index 31fdf94a99..6dfcedf96e 100644 --- a/SPECS/linux-lts-kmhv2/0121-UPSTREAM-clk-spacemit-ccu_pll-add-plla-type-clock.patch +++ b/SPECS/linux-lts-kmhv2/0118-UPSTREAM-clk-spacemit-ccu_pll-add-plla-type-clock.patch @@ -1,7 +1,7 @@ -From 8a1339992d26116b2566f2ad5313da25901e4b2a Mon Sep 17 00:00:00 2001 +From a7ce4c7a2f5e9b248b21befc2f291b0d3ae3b195 Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Mon, 27 Oct 2025 21:41:24 +0800 -Subject: [PATCH 121/467] UPSTREAM: clk: spacemit: ccu_pll: add plla type clock +Subject: [RUYI PATCH] UPSTREAM: clk: spacemit: ccu_pll: add plla type clock Introduce a new clock PLLA for SpacemiT's K3 SoC which has a different register layout comparing to previous PPL type. And, It is configured diff --git a/SPECS/linux-lts-kmhv2/0122-UPSTREAM-clk-spacemit-k3-extract-common-header.patch b/SPECS/linux-lts-kmhv2/0119-UPSTREAM-clk-spacemit-k3-extract-common-header.patch similarity index 98% rename from SPECS/linux-lts-kmhv2/0122-UPSTREAM-clk-spacemit-k3-extract-common-header.patch rename to SPECS/linux-lts-kmhv2/0119-UPSTREAM-clk-spacemit-k3-extract-common-header.patch index deefe5b921..8ce677d1e4 100644 --- a/SPECS/linux-lts-kmhv2/0122-UPSTREAM-clk-spacemit-k3-extract-common-header.patch +++ b/SPECS/linux-lts-kmhv2/0119-UPSTREAM-clk-spacemit-k3-extract-common-header.patch @@ -1,7 +1,7 @@ -From 3b39ff3c0baef35c207ed2fe3f34137a9a874573 Mon Sep 17 00:00:00 2001 +From 22c56093a5cbcc8d011f81d4523ee8160d5caa5f Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Sat, 20 Dec 2025 21:28:15 +0800 -Subject: [PATCH 122/467] UPSTREAM: clk: spacemit: k3: extract common header +Subject: [RUYI PATCH] UPSTREAM: clk: spacemit: k3: extract common header Extracting common header file, which will be shared by clock and reset drivers. So will make it easy to add reset driver for K3 SoC later. diff --git a/SPECS/linux-lts-kmhv2/0123-UPSTREAM-clk-spacemit-k3-add-the-clock-tree.patch b/SPECS/linux-lts-kmhv2/0120-UPSTREAM-clk-spacemit-k3-add-the-clock-tree.patch similarity index 99% rename from SPECS/linux-lts-kmhv2/0123-UPSTREAM-clk-spacemit-k3-add-the-clock-tree.patch rename to SPECS/linux-lts-kmhv2/0120-UPSTREAM-clk-spacemit-k3-add-the-clock-tree.patch index 606059384f..ca7b6c2396 100644 --- a/SPECS/linux-lts-kmhv2/0123-UPSTREAM-clk-spacemit-k3-add-the-clock-tree.patch +++ b/SPECS/linux-lts-kmhv2/0120-UPSTREAM-clk-spacemit-k3-add-the-clock-tree.patch @@ -1,7 +1,7 @@ -From 762b40db00f83f963c11e08eb0a8b6a4ed8d3e58 Mon Sep 17 00:00:00 2001 +From 878e4e3217cc3b8b51d6d5480b8c6c8120d47144 Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Sun, 2 Nov 2025 21:17:17 +0800 -Subject: [PATCH 123/467] UPSTREAM: clk: spacemit: k3: add the clock tree +Subject: [RUYI PATCH] UPSTREAM: clk: spacemit: k3: add the clock tree Add clock support to SpacemiT K3 SoC, the clock tree consist of several blocks which are APBC, APBS, APMU, DCIU, MPUM. diff --git a/SPECS/linux-lts-kmhv2/0124-UPSTREAM-dt-bindings-soc-spacemit-Add-K3-reset-suppo.patch b/SPECS/linux-lts-kmhv2/0121-UPSTREAM-dt-bindings-soc-spacemit-Add-K3-reset-suppo.patch similarity index 98% rename from SPECS/linux-lts-kmhv2/0124-UPSTREAM-dt-bindings-soc-spacemit-Add-K3-reset-suppo.patch rename to SPECS/linux-lts-kmhv2/0121-UPSTREAM-dt-bindings-soc-spacemit-Add-K3-reset-suppo.patch index 5ef22ef32b..c049403590 100644 --- a/SPECS/linux-lts-kmhv2/0124-UPSTREAM-dt-bindings-soc-spacemit-Add-K3-reset-suppo.patch +++ b/SPECS/linux-lts-kmhv2/0121-UPSTREAM-dt-bindings-soc-spacemit-Add-K3-reset-suppo.patch @@ -1,7 +1,7 @@ -From 6eb7dce00142b5381c54a88e02ba870e0aebb1c9 Mon Sep 17 00:00:00 2001 +From c8b8aab18243d5ad3ee4a6b980f1448aee344adb Mon Sep 17 00:00:00 2001 From: Guodong Xu Date: Tue, 20 Jan 2026 19:10:49 +0800 -Subject: [PATCH 124/467] UPSTREAM: dt-bindings: soc: spacemit: Add K3 reset +Subject: [RUYI PATCH] UPSTREAM: dt-bindings: soc: spacemit: Add K3 reset support and IDs Update the spacemit,k1-syscon.yaml binding to document K3 SoC reset diff --git a/SPECS/linux-lts-kmhv2/0125-UPSTREAM-reset-Create-subdirectory-for-SpacemiT-driv.patch b/SPECS/linux-lts-kmhv2/0122-UPSTREAM-reset-Create-subdirectory-for-SpacemiT-driv.patch similarity index 97% rename from SPECS/linux-lts-kmhv2/0125-UPSTREAM-reset-Create-subdirectory-for-SpacemiT-driv.patch rename to SPECS/linux-lts-kmhv2/0122-UPSTREAM-reset-Create-subdirectory-for-SpacemiT-driv.patch index afc9137c09..6775e0de91 100644 --- a/SPECS/linux-lts-kmhv2/0125-UPSTREAM-reset-Create-subdirectory-for-SpacemiT-driv.patch +++ b/SPECS/linux-lts-kmhv2/0122-UPSTREAM-reset-Create-subdirectory-for-SpacemiT-driv.patch @@ -1,7 +1,7 @@ -From 9049262f9ac3ca9c394670007ce66ff407629b3d Mon Sep 17 00:00:00 2001 +From f58dcbda59da2a11300427e92f4c1abb7c6898f7 Mon Sep 17 00:00:00 2001 From: Guodong Xu Date: Tue, 20 Jan 2026 19:10:50 +0800 -Subject: [PATCH 125/467] UPSTREAM: reset: Create subdirectory for SpacemiT +Subject: [RUYI PATCH] UPSTREAM: reset: Create subdirectory for SpacemiT drivers Create a dedicated subdirectory for SpacemiT reset drivers to allow diff --git a/SPECS/linux-lts-kmhv2/0126-UPSTREAM-reset-spacemit-Extract-common-K1-reset-code.patch b/SPECS/linux-lts-kmhv2/0123-UPSTREAM-reset-spacemit-Extract-common-K1-reset-code.patch similarity index 98% rename from SPECS/linux-lts-kmhv2/0126-UPSTREAM-reset-spacemit-Extract-common-K1-reset-code.patch rename to SPECS/linux-lts-kmhv2/0123-UPSTREAM-reset-spacemit-Extract-common-K1-reset-code.patch index 9da72b5533..326c078c60 100644 --- a/SPECS/linux-lts-kmhv2/0126-UPSTREAM-reset-spacemit-Extract-common-K1-reset-code.patch +++ b/SPECS/linux-lts-kmhv2/0123-UPSTREAM-reset-spacemit-Extract-common-K1-reset-code.patch @@ -1,8 +1,7 @@ -From dd53659d917a2ad7245d28a312b4a386f3f4d730 Mon Sep 17 00:00:00 2001 +From 1928fc1030c03e43f009ef60762dac1829c39b0c Mon Sep 17 00:00:00 2001 From: Guodong Xu Date: Tue, 20 Jan 2026 19:10:51 +0800 -Subject: [PATCH 126/467] UPSTREAM: reset: spacemit: Extract common K1 reset - code +Subject: [RUYI PATCH] UPSTREAM: reset: spacemit: Extract common K1 reset code Extract the common reset controller code from the K1 driver into separate reset-spacemit-common.{c,h} files to prepare for additional diff --git a/SPECS/linux-lts-kmhv2/0127-UPSTREAM-reset-spacemit-Add-SpacemiT-K3-reset-driver.patch b/SPECS/linux-lts-kmhv2/0124-UPSTREAM-reset-spacemit-Add-SpacemiT-K3-reset-driver.patch similarity index 99% rename from SPECS/linux-lts-kmhv2/0127-UPSTREAM-reset-spacemit-Add-SpacemiT-K3-reset-driver.patch rename to SPECS/linux-lts-kmhv2/0124-UPSTREAM-reset-spacemit-Add-SpacemiT-K3-reset-driver.patch index 437a1f8811..3e39a6ab56 100644 --- a/SPECS/linux-lts-kmhv2/0127-UPSTREAM-reset-spacemit-Add-SpacemiT-K3-reset-driver.patch +++ b/SPECS/linux-lts-kmhv2/0124-UPSTREAM-reset-spacemit-Add-SpacemiT-K3-reset-driver.patch @@ -1,8 +1,7 @@ -From fd89e8eec8bc5d871ccade81be1d4cd0d0b54ae1 Mon Sep 17 00:00:00 2001 +From ba7026a22c43e830be9a0dccce75c3867b2bcaad Mon Sep 17 00:00:00 2001 From: Guodong Xu Date: Tue, 20 Jan 2026 19:10:52 +0800 -Subject: [PATCH 127/467] UPSTREAM: reset: spacemit: Add SpacemiT K3 reset - driver +Subject: [RUYI PATCH] UPSTREAM: reset: spacemit: Add SpacemiT K3 reset driver Add support for the SpacemiT K3 SoC reset controller. The K3 reset driver reuses the common reset controller code and provides K3-specific diff --git a/SPECS/linux-lts-kmhv2/0128-UPSTREAM-dt-bindings-gpio-spacemit-add-compatible-na.patch b/SPECS/linux-lts-kmhv2/0125-UPSTREAM-dt-bindings-gpio-spacemit-add-compatible-na.patch similarity index 89% rename from SPECS/linux-lts-kmhv2/0128-UPSTREAM-dt-bindings-gpio-spacemit-add-compatible-na.patch rename to SPECS/linux-lts-kmhv2/0125-UPSTREAM-dt-bindings-gpio-spacemit-add-compatible-na.patch index cdf007650e..87f1321e5c 100644 --- a/SPECS/linux-lts-kmhv2/0128-UPSTREAM-dt-bindings-gpio-spacemit-add-compatible-na.patch +++ b/SPECS/linux-lts-kmhv2/0125-UPSTREAM-dt-bindings-gpio-spacemit-add-compatible-na.patch @@ -1,7 +1,7 @@ -From e384f721e2318cd682396313c94562368356bdec Mon Sep 17 00:00:00 2001 +From 69b50555993d0e015534df599be1be5f756f84ea Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Tue, 6 Jan 2026 11:09:32 +0800 -Subject: [PATCH 128/467] UPSTREAM: dt-bindings: gpio: spacemit: add compatible +Subject: [RUYI PATCH] UPSTREAM: dt-bindings: gpio: spacemit: add compatible name for K3 SoC Add new compatible string for SpacemiT K3 SoC's GPIO controller. diff --git a/SPECS/linux-lts-kmhv2/0129-UPSTREAM-gpio-spacemit-Add-GPIO-support-for-K3-SoC.patch b/SPECS/linux-lts-kmhv2/0126-UPSTREAM-gpio-spacemit-Add-GPIO-support-for-K3-SoC.patch similarity index 98% rename from SPECS/linux-lts-kmhv2/0129-UPSTREAM-gpio-spacemit-Add-GPIO-support-for-K3-SoC.patch rename to SPECS/linux-lts-kmhv2/0126-UPSTREAM-gpio-spacemit-Add-GPIO-support-for-K3-SoC.patch index 8f4194d8bf..7b6a45b12a 100644 --- a/SPECS/linux-lts-kmhv2/0129-UPSTREAM-gpio-spacemit-Add-GPIO-support-for-K3-SoC.patch +++ b/SPECS/linux-lts-kmhv2/0126-UPSTREAM-gpio-spacemit-Add-GPIO-support-for-K3-SoC.patch @@ -1,7 +1,7 @@ -From a0fdf97c15b11ba0954d550993bad54d718c63e2 Mon Sep 17 00:00:00 2001 +From 409dadffdee997565a81b01180b046890adbdd47 Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Tue, 6 Jan 2026 11:09:33 +0800 -Subject: [PATCH 129/467] UPSTREAM: gpio: spacemit: Add GPIO support for K3 SoC +Subject: [RUYI PATCH] UPSTREAM: gpio: spacemit: Add GPIO support for K3 SoC SpacemiT K3 SoC has changed gpio register layout while comparing with previous generation, the register offset and bank offset diff --git a/SPECS/linux-lts-kmhv2/0130-UPSTREAM-riscv-dts-spacemit-Disable-ETH-PHY-sleep-mo.patch b/SPECS/linux-lts-kmhv2/0127-UPSTREAM-riscv-dts-spacemit-Disable-ETH-PHY-sleep-mo.patch similarity index 92% rename from SPECS/linux-lts-kmhv2/0130-UPSTREAM-riscv-dts-spacemit-Disable-ETH-PHY-sleep-mo.patch rename to SPECS/linux-lts-kmhv2/0127-UPSTREAM-riscv-dts-spacemit-Disable-ETH-PHY-sleep-mo.patch index 0383823803..a2882d0c20 100644 --- a/SPECS/linux-lts-kmhv2/0130-UPSTREAM-riscv-dts-spacemit-Disable-ETH-PHY-sleep-mo.patch +++ b/SPECS/linux-lts-kmhv2/0127-UPSTREAM-riscv-dts-spacemit-Disable-ETH-PHY-sleep-mo.patch @@ -1,7 +1,7 @@ -From 1a7c7e7ba083e58a4ccc3b3fa45b63089ffb6cf2 Mon Sep 17 00:00:00 2001 +From ea85c56c78cbe48a0e645e57bb5d0151fa6f9bfa Mon Sep 17 00:00:00 2001 From: Chukun Pan Date: Tue, 20 Jan 2026 18:00:01 +0800 -Subject: [PATCH 130/467] UPSTREAM: riscv: dts: spacemit: Disable ETH PHY sleep +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: spacemit: Disable ETH PHY sleep mode for OrangePi On the SpacemiT K1 platform, the MAC can't read statistics when the PHY diff --git a/SPECS/linux-lts-kmhv2/0131-UPSTREAM-dt-bindings-clock-thead-th1520-clk-ap-Add-I.patch b/SPECS/linux-lts-kmhv2/0128-UPSTREAM-dt-bindings-clock-thead-th1520-clk-ap-Add-I.patch similarity index 85% rename from SPECS/linux-lts-kmhv2/0131-UPSTREAM-dt-bindings-clock-thead-th1520-clk-ap-Add-I.patch rename to SPECS/linux-lts-kmhv2/0128-UPSTREAM-dt-bindings-clock-thead-th1520-clk-ap-Add-I.patch index 3201f9018c..412075183b 100644 --- a/SPECS/linux-lts-kmhv2/0131-UPSTREAM-dt-bindings-clock-thead-th1520-clk-ap-Add-I.patch +++ b/SPECS/linux-lts-kmhv2/0128-UPSTREAM-dt-bindings-clock-thead-th1520-clk-ap-Add-I.patch @@ -1,8 +1,8 @@ -From 9a01370936360c3ee7d656548a3f36e7749b5924 Mon Sep 17 00:00:00 2001 +From 8731712faebb3034f523e3ed6e95191f5e47a01b Mon Sep 17 00:00:00 2001 From: Yao Zi Date: Thu, 20 Nov 2025 13:14:10 +0000 -Subject: [PATCH 131/467] UPSTREAM: dt-bindings: clock: thead,th1520-clk-ap: - Add ID for C910 bus clock +Subject: [RUYI PATCH] UPSTREAM: dt-bindings: clock: thead,th1520-clk-ap: Add + ID for C910 bus clock Add binding ID for C910 bus clock, which takes CLK_C910 as parent and is essential for C910 cluster's operation. diff --git a/SPECS/linux-lts-kmhv2/0132-UPSTREAM-clk-thead-th1520-ap-Add-C910-bus-clock.patch b/SPECS/linux-lts-kmhv2/0129-UPSTREAM-clk-thead-th1520-ap-Add-C910-bus-clock.patch similarity index 92% rename from SPECS/linux-lts-kmhv2/0132-UPSTREAM-clk-thead-th1520-ap-Add-C910-bus-clock.patch rename to SPECS/linux-lts-kmhv2/0129-UPSTREAM-clk-thead-th1520-ap-Add-C910-bus-clock.patch index ef29245e54..e28d1d6f4f 100644 --- a/SPECS/linux-lts-kmhv2/0132-UPSTREAM-clk-thead-th1520-ap-Add-C910-bus-clock.patch +++ b/SPECS/linux-lts-kmhv2/0129-UPSTREAM-clk-thead-th1520-ap-Add-C910-bus-clock.patch @@ -1,7 +1,7 @@ -From b5d944cf3ab3b20841cc2e504d8b66be87592c96 Mon Sep 17 00:00:00 2001 +From 43765d604a0ac503f549b2772fc89a67b6df8779 Mon Sep 17 00:00:00 2001 From: Yao Zi Date: Thu, 20 Nov 2025 13:14:12 +0000 -Subject: [PATCH 132/467] UPSTREAM: clk: thead: th1520-ap: Add C910 bus clock +Subject: [RUYI PATCH] UPSTREAM: clk: thead: th1520-ap: Add C910 bus clock This divider takes c910_clk as parent and is essential for the C910 cluster to operate, thus is marked as CLK_IS_CRITICAL. diff --git a/SPECS/linux-lts-kmhv2/0133-UPSTREAM-clk-thead-th1520-ap-Support-setting-PLL-rat.patch b/SPECS/linux-lts-kmhv2/0130-UPSTREAM-clk-thead-th1520-ap-Support-setting-PLL-rat.patch similarity index 98% rename from SPECS/linux-lts-kmhv2/0133-UPSTREAM-clk-thead-th1520-ap-Support-setting-PLL-rat.patch rename to SPECS/linux-lts-kmhv2/0130-UPSTREAM-clk-thead-th1520-ap-Support-setting-PLL-rat.patch index af622a6e0c..0f3eeb5de1 100644 --- a/SPECS/linux-lts-kmhv2/0133-UPSTREAM-clk-thead-th1520-ap-Support-setting-PLL-rat.patch +++ b/SPECS/linux-lts-kmhv2/0130-UPSTREAM-clk-thead-th1520-ap-Support-setting-PLL-rat.patch @@ -1,7 +1,7 @@ -From 3107f6db39bfccf7730194c3fb729357945bf743 Mon Sep 17 00:00:00 2001 +From 00eda1e45b3379884782a9a27d245fcff13f8772 Mon Sep 17 00:00:00 2001 From: Yao Zi Date: Thu, 20 Nov 2025 13:14:13 +0000 -Subject: [PATCH 133/467] UPSTREAM: clk: thead: th1520-ap: Support setting PLL +Subject: [RUYI PATCH] UPSTREAM: clk: thead: th1520-ap: Support setting PLL rates TH1520 ships several PLLs that could operate in either integer or diff --git a/SPECS/linux-lts-kmhv2/0134-UPSTREAM-clk-thead-th1520-ap-Add-macro-to-define-mul.patch b/SPECS/linux-lts-kmhv2/0131-UPSTREAM-clk-thead-th1520-ap-Add-macro-to-define-mul.patch similarity index 91% rename from SPECS/linux-lts-kmhv2/0134-UPSTREAM-clk-thead-th1520-ap-Add-macro-to-define-mul.patch rename to SPECS/linux-lts-kmhv2/0131-UPSTREAM-clk-thead-th1520-ap-Add-macro-to-define-mul.patch index bb158844fe..2518407886 100644 --- a/SPECS/linux-lts-kmhv2/0134-UPSTREAM-clk-thead-th1520-ap-Add-macro-to-define-mul.patch +++ b/SPECS/linux-lts-kmhv2/0131-UPSTREAM-clk-thead-th1520-ap-Add-macro-to-define-mul.patch @@ -1,7 +1,7 @@ -From 94cd6930cd62b37d3a5be5f99c38418227dadc53 Mon Sep 17 00:00:00 2001 +From 17338e1f386a810ea7bbe685d7cf3953dae6a51f Mon Sep 17 00:00:00 2001 From: Yao Zi Date: Thu, 20 Nov 2025 13:14:14 +0000 -Subject: [PATCH 134/467] UPSTREAM: clk: thead: th1520-ap: Add macro to define +Subject: [RUYI PATCH] UPSTREAM: clk: thead: th1520-ap: Add macro to define multiplexers with flags The new macro, TH_CCU_MUX_FLAGS, extends TH_CCU_MUX macro by adding two diff --git a/SPECS/linux-lts-kmhv2/0135-UPSTREAM-clk-thead-th1520-ap-Support-CPU-frequency-s.patch b/SPECS/linux-lts-kmhv2/0132-UPSTREAM-clk-thead-th1520-ap-Support-CPU-frequency-s.patch similarity index 97% rename from SPECS/linux-lts-kmhv2/0135-UPSTREAM-clk-thead-th1520-ap-Support-CPU-frequency-s.patch rename to SPECS/linux-lts-kmhv2/0132-UPSTREAM-clk-thead-th1520-ap-Support-CPU-frequency-s.patch index 4e6527f2d0..5e088a3818 100644 --- a/SPECS/linux-lts-kmhv2/0135-UPSTREAM-clk-thead-th1520-ap-Support-CPU-frequency-s.patch +++ b/SPECS/linux-lts-kmhv2/0132-UPSTREAM-clk-thead-th1520-ap-Support-CPU-frequency-s.patch @@ -1,8 +1,8 @@ -From 67a3e5cab266ebbe091c06fb4f79f60e0d87455f Mon Sep 17 00:00:00 2001 +From fc08e30c489223facf41c8c180c1d3685bad9ee9 Mon Sep 17 00:00:00 2001 From: Yao Zi Date: Thu, 20 Nov 2025 13:14:15 +0000 -Subject: [PATCH 135/467] UPSTREAM: clk: thead: th1520-ap: Support CPU - frequency scaling +Subject: [RUYI PATCH] UPSTREAM: clk: thead: th1520-ap: Support CPU frequency + scaling On TH1520 SoC, c910_clk feeds the CPU cluster. It could be glitchlessly reparented to one of the two PLLs: either to cpu_pll0 indirectly through diff --git a/SPECS/linux-lts-kmhv2/0136-UPSTREAM-net-spacemit-display-phy-driver-information.patch b/SPECS/linux-lts-kmhv2/0133-UPSTREAM-net-spacemit-display-phy-driver-information.patch similarity index 87% rename from SPECS/linux-lts-kmhv2/0136-UPSTREAM-net-spacemit-display-phy-driver-information.patch rename to SPECS/linux-lts-kmhv2/0133-UPSTREAM-net-spacemit-display-phy-driver-information.patch index 756971bff5..ee84bea6d5 100644 --- a/SPECS/linux-lts-kmhv2/0136-UPSTREAM-net-spacemit-display-phy-driver-information.patch +++ b/SPECS/linux-lts-kmhv2/0133-UPSTREAM-net-spacemit-display-phy-driver-information.patch @@ -1,8 +1,7 @@ -From 20d3fa165cbcd3a84876fcbfe8f012363c75cfa0 Mon Sep 17 00:00:00 2001 +From 216580fd5ff0f2f9d1b045a0eebd53199b169c09 Mon Sep 17 00:00:00 2001 From: Chukun Pan Date: Sun, 1 Feb 2026 18:00:01 +0800 -Subject: [PATCH 136/467] UPSTREAM: net: spacemit: display phy driver - information +Subject: [RUYI PATCH] UPSTREAM: net: spacemit: display phy driver information Print the PHY driver used and interrupt status after connection. diff --git a/SPECS/linux-lts-kmhv2/0137-UPSTREAM-gpio-spacemit-k1-Use-PDR-for-pin-direction-.patch b/SPECS/linux-lts-kmhv2/0134-UPSTREAM-gpio-spacemit-k1-Use-PDR-for-pin-direction-.patch similarity index 95% rename from SPECS/linux-lts-kmhv2/0137-UPSTREAM-gpio-spacemit-k1-Use-PDR-for-pin-direction-.patch rename to SPECS/linux-lts-kmhv2/0134-UPSTREAM-gpio-spacemit-k1-Use-PDR-for-pin-direction-.patch index 96d941c0e6..71279bcd12 100644 --- a/SPECS/linux-lts-kmhv2/0137-UPSTREAM-gpio-spacemit-k1-Use-PDR-for-pin-direction-.patch +++ b/SPECS/linux-lts-kmhv2/0134-UPSTREAM-gpio-spacemit-k1-Use-PDR-for-pin-direction-.patch @@ -1,8 +1,8 @@ -From b747ec1922a3e8649cc3e23e2e18038cb693ff9d Mon Sep 17 00:00:00 2001 +From a000c3124b2434f1d7da679574181a5b8295c9b8 Mon Sep 17 00:00:00 2001 From: Vivian Wang Date: Tue, 27 Jan 2026 10:58:49 +0800 -Subject: [PATCH 137/467] UPSTREAM: gpio: spacemit-k1: Use PDR for pin - direction, not SDR/CDR +Subject: [RUYI PATCH] UPSTREAM: gpio: spacemit-k1: Use PDR for pin direction, + not SDR/CDR On the SpacemiT GPIO controller, the direction control register PDR is readable and writable [1]. Therefore, implement direction control by diff --git a/SPECS/linux-lts-kmhv2/0138-UPSTREAM-phy-Kconfig-spacemit-add-COMMON_CLK-depende.patch b/SPECS/linux-lts-kmhv2/0135-UPSTREAM-phy-Kconfig-spacemit-add-COMMON_CLK-depende.patch similarity index 89% rename from SPECS/linux-lts-kmhv2/0138-UPSTREAM-phy-Kconfig-spacemit-add-COMMON_CLK-depende.patch rename to SPECS/linux-lts-kmhv2/0135-UPSTREAM-phy-Kconfig-spacemit-add-COMMON_CLK-depende.patch index 2865bd4d90..315761b942 100644 --- a/SPECS/linux-lts-kmhv2/0138-UPSTREAM-phy-Kconfig-spacemit-add-COMMON_CLK-depende.patch +++ b/SPECS/linux-lts-kmhv2/0135-UPSTREAM-phy-Kconfig-spacemit-add-COMMON_CLK-depende.patch @@ -1,7 +1,7 @@ -From 333c560956b18cc11cf301ba2198e261c02c7e73 Mon Sep 17 00:00:00 2001 +From 9a9a68a7eddae8077db583fd6db0e31a7e837eab Mon Sep 17 00:00:00 2001 From: Alex Elder Date: Fri, 26 Dec 2025 11:32:27 -0600 -Subject: [PATCH 138/467] UPSTREAM: phy: Kconfig: spacemit: add COMMON_CLK +Subject: [RUYI PATCH] UPSTREAM: phy: Kconfig: spacemit: add COMMON_CLK dependency The SpacemiT PCIe PHY driver depends on the common clock framework. diff --git a/SPECS/linux-lts-kmhv2/0139-UPSTREAM-mfd-Kconfig-Default-MFD_SPACEMIT_P1-to-m-if.patch b/SPECS/linux-lts-kmhv2/0136-UPSTREAM-mfd-Kconfig-Default-MFD_SPACEMIT_P1-to-m-if.patch similarity index 86% rename from SPECS/linux-lts-kmhv2/0139-UPSTREAM-mfd-Kconfig-Default-MFD_SPACEMIT_P1-to-m-if.patch rename to SPECS/linux-lts-kmhv2/0136-UPSTREAM-mfd-Kconfig-Default-MFD_SPACEMIT_P1-to-m-if.patch index 437a02c89d..661b7fce58 100644 --- a/SPECS/linux-lts-kmhv2/0139-UPSTREAM-mfd-Kconfig-Default-MFD_SPACEMIT_P1-to-m-if.patch +++ b/SPECS/linux-lts-kmhv2/0136-UPSTREAM-mfd-Kconfig-Default-MFD_SPACEMIT_P1-to-m-if.patch @@ -1,8 +1,8 @@ -From 0eab8250c33a6d8337f71d836737b0f27ac47f13 Mon Sep 17 00:00:00 2001 +From 13956aef479172118fb402bab2ecea2f30a4a744 Mon Sep 17 00:00:00 2001 From: Troy Mitchell Date: Thu, 25 Dec 2025 15:46:32 +0800 -Subject: [PATCH 139/467] UPSTREAM: mfd: Kconfig: Default MFD_SPACEMIT_P1 to - 'm' if ARCH_SPACEMIT +Subject: [RUYI PATCH] UPSTREAM: mfd: Kconfig: Default MFD_SPACEMIT_P1 to 'm' + if ARCH_SPACEMIT The default value of the P1 sub-device depends on the value of P1, so P1 should have a default value here. diff --git a/SPECS/linux-lts-kmhv2/0140-UPSTREAM-riscv-dts-spacemit-sdhci-add-reset-support.patch b/SPECS/linux-lts-kmhv2/0137-UPSTREAM-riscv-dts-spacemit-sdhci-add-reset-support.patch similarity index 87% rename from SPECS/linux-lts-kmhv2/0140-UPSTREAM-riscv-dts-spacemit-sdhci-add-reset-support.patch rename to SPECS/linux-lts-kmhv2/0137-UPSTREAM-riscv-dts-spacemit-sdhci-add-reset-support.patch index 07df5e5f9d..f0ab6e429d 100644 --- a/SPECS/linux-lts-kmhv2/0140-UPSTREAM-riscv-dts-spacemit-sdhci-add-reset-support.patch +++ b/SPECS/linux-lts-kmhv2/0137-UPSTREAM-riscv-dts-spacemit-sdhci-add-reset-support.patch @@ -1,8 +1,7 @@ -From dded14b2f88c749f0ee43ce0475efa38aab240b7 Mon Sep 17 00:00:00 2001 +From c37e910069a44317c77ac4d11b37028e5c7a3473 Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Tue, 23 Dec 2025 10:24:51 +0800 -Subject: [PATCH 140/467] UPSTREAM: riscv: dts: spacemit: sdhci: add reset - support +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: spacemit: sdhci: add reset support Request two reset line explicitly for SDHCI controller. diff --git a/SPECS/linux-lts-kmhv2/0141-UPSTREAM-irqchip-sifive-plic-Fix-call-to-__plic_togg.patch b/SPECS/linux-lts-kmhv2/0138-UPSTREAM-irqchip-sifive-plic-Fix-call-to-__plic_togg.patch similarity index 93% rename from SPECS/linux-lts-kmhv2/0141-UPSTREAM-irqchip-sifive-plic-Fix-call-to-__plic_togg.patch rename to SPECS/linux-lts-kmhv2/0138-UPSTREAM-irqchip-sifive-plic-Fix-call-to-__plic_togg.patch index c0f3a9e111..d3ca21faa5 100644 --- a/SPECS/linux-lts-kmhv2/0141-UPSTREAM-irqchip-sifive-plic-Fix-call-to-__plic_togg.patch +++ b/SPECS/linux-lts-kmhv2/0138-UPSTREAM-irqchip-sifive-plic-Fix-call-to-__plic_togg.patch @@ -1,7 +1,7 @@ -From f58e9a459a7b6b435352438dc53508ab2626a69a Mon Sep 17 00:00:00 2001 +From cbbdae1821a5dd4f90a95e88d5c536f2421da1b6 Mon Sep 17 00:00:00 2001 From: Charles Mirabile Date: Mon, 3 Nov 2025 11:18:13 -0500 -Subject: [PATCH 141/467] UPSTREAM: irqchip/sifive-plic: Fix call to +Subject: [RUYI PATCH] UPSTREAM: irqchip/sifive-plic: Fix call to __plic_toggle() in M-Mode code path The code path for M-Mode linux that disables interrupts for other contexts diff --git a/SPECS/linux-lts-kmhv2/0142-UPSTREAM-dt-bindings-interrupt-controller-sifive-pli.patch b/SPECS/linux-lts-kmhv2/0139-UPSTREAM-dt-bindings-interrupt-controller-sifive-pli.patch similarity index 92% rename from SPECS/linux-lts-kmhv2/0142-UPSTREAM-dt-bindings-interrupt-controller-sifive-pli.patch rename to SPECS/linux-lts-kmhv2/0139-UPSTREAM-dt-bindings-interrupt-controller-sifive-pli.patch index 7916a81092..a2ed1e4b8d 100644 --- a/SPECS/linux-lts-kmhv2/0142-UPSTREAM-dt-bindings-interrupt-controller-sifive-pli.patch +++ b/SPECS/linux-lts-kmhv2/0139-UPSTREAM-dt-bindings-interrupt-controller-sifive-pli.patch @@ -1,7 +1,7 @@ -From bf88342cbbf18edbfbf27a30b622622f47dd21d1 Mon Sep 17 00:00:00 2001 +From d25027971bf83bf11dd914b3ce914fa9ada558c4 Mon Sep 17 00:00:00 2001 From: Yangyu Chen Date: Wed, 4 Feb 2026 01:21:48 +0800 -Subject: [PATCH 142/467] UPSTREAM: dt-bindings: interrupt-controller: +Subject: [RUYI PATCH] UPSTREAM: dt-bindings: interrupt-controller: sifive,plic: Clarify the riscv,ndev meaning in PLIC In PLIC, interrupt source 0 is reserved and should not be used. diff --git a/SPECS/linux-lts-kmhv2/0143-UPSTREAM-irqchip-sifive-plic-Handle-number-of-hardwa.patch b/SPECS/linux-lts-kmhv2/0140-UPSTREAM-irqchip-sifive-plic-Handle-number-of-hardwa.patch similarity index 97% rename from SPECS/linux-lts-kmhv2/0143-UPSTREAM-irqchip-sifive-plic-Handle-number-of-hardwa.patch rename to SPECS/linux-lts-kmhv2/0140-UPSTREAM-irqchip-sifive-plic-Handle-number-of-hardwa.patch index 127a04cfa3..b6309ec5fd 100644 --- a/SPECS/linux-lts-kmhv2/0143-UPSTREAM-irqchip-sifive-plic-Handle-number-of-hardwa.patch +++ b/SPECS/linux-lts-kmhv2/0140-UPSTREAM-irqchip-sifive-plic-Handle-number-of-hardwa.patch @@ -1,8 +1,8 @@ -From f5a054d7440d709d61511cb7a4d626b59ba00bf3 Mon Sep 17 00:00:00 2001 +From 8c3cf0715b0fdf641d78f56c2a4a207b6fb93525 Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Tue, 3 Feb 2026 20:16:12 +0100 -Subject: [PATCH 143/467] UPSTREAM: irqchip/sifive-plic: Handle number of - hardware interrupts correctly +Subject: [RUYI PATCH] UPSTREAM: irqchip/sifive-plic: Handle number of hardware + interrupts correctly The driver is handling the number of hardware interrupts inconsistently. diff --git a/SPECS/linux-lts-kmhv2/0144-UPSTREAM-PCI-dwc-Use-multiple-iATU-windows-for-mappi.patch b/SPECS/linux-lts-kmhv2/0141-UPSTREAM-PCI-dwc-Use-multiple-iATU-windows-for-mappi.patch similarity index 97% rename from SPECS/linux-lts-kmhv2/0144-UPSTREAM-PCI-dwc-Use-multiple-iATU-windows-for-mappi.patch rename to SPECS/linux-lts-kmhv2/0141-UPSTREAM-PCI-dwc-Use-multiple-iATU-windows-for-mappi.patch index eedd218a03..ec4bffaa6b 100644 --- a/SPECS/linux-lts-kmhv2/0144-UPSTREAM-PCI-dwc-Use-multiple-iATU-windows-for-mappi.patch +++ b/SPECS/linux-lts-kmhv2/0141-UPSTREAM-PCI-dwc-Use-multiple-iATU-windows-for-mappi.patch @@ -1,7 +1,7 @@ -From 24b2064ff98e5d2c22d87bc0a86ee411e19fa6bb Mon Sep 17 00:00:00 2001 +From fd2ed2a093642f9ae52054344b23d1c512e4d4b6 Mon Sep 17 00:00:00 2001 From: Samuel Holland Date: Fri, 9 Jan 2026 19:34:30 +0800 -Subject: [PATCH 144/467] UPSTREAM: PCI: dwc: Use multiple iATU windows for +Subject: [RUYI PATCH] UPSTREAM: PCI: dwc: Use multiple iATU windows for mapping large bridge windows and DMA ranges The DWC driver tries to use a single iATU region for mapping the individual diff --git a/SPECS/linux-lts-kmhv2/0145-UPSTREAM-pinctrl-th1520-Fix-typo.patch b/SPECS/linux-lts-kmhv2/0142-UPSTREAM-pinctrl-th1520-Fix-typo.patch similarity index 91% rename from SPECS/linux-lts-kmhv2/0145-UPSTREAM-pinctrl-th1520-Fix-typo.patch rename to SPECS/linux-lts-kmhv2/0142-UPSTREAM-pinctrl-th1520-Fix-typo.patch index 84781c827a..35a46d601c 100644 --- a/SPECS/linux-lts-kmhv2/0145-UPSTREAM-pinctrl-th1520-Fix-typo.patch +++ b/SPECS/linux-lts-kmhv2/0142-UPSTREAM-pinctrl-th1520-Fix-typo.patch @@ -1,7 +1,7 @@ -From d007ff0d047d973067f05a3f9898c1c1822af330 Mon Sep 17 00:00:00 2001 +From b88d7d9315cd6748d47a8ced520004d8f68ec0fc Mon Sep 17 00:00:00 2001 From: Thomas Gerner Date: Tue, 20 Jan 2026 09:59:26 +0100 -Subject: [PATCH 145/467] UPSTREAM: pinctrl: th1520: Fix typo +Subject: [RUYI PATCH] UPSTREAM: pinctrl: th1520: Fix typo This fixes a simple typo in the TH1520 SPI0 for group3 pins: QSPI0 is misspelled QSPI1. diff --git a/SPECS/linux-lts-kmhv2/0146-UPSTREAM-PCI-cadence-Add-module-support-for-platform.patch b/SPECS/linux-lts-kmhv2/0143-UPSTREAM-PCI-cadence-Add-module-support-for-platform.patch similarity index 94% rename from SPECS/linux-lts-kmhv2/0146-UPSTREAM-PCI-cadence-Add-module-support-for-platform.patch rename to SPECS/linux-lts-kmhv2/0143-UPSTREAM-PCI-cadence-Add-module-support-for-platform.patch index e1d681e245..88cfd245f1 100644 --- a/SPECS/linux-lts-kmhv2/0146-UPSTREAM-PCI-cadence-Add-module-support-for-platform.patch +++ b/SPECS/linux-lts-kmhv2/0143-UPSTREAM-PCI-cadence-Add-module-support-for-platform.patch @@ -1,8 +1,8 @@ -From cf8e9527657f4fc6aa823772be5089f8172402c7 Mon Sep 17 00:00:00 2001 +From e3974191639e3270eddc65bb437b729a750e5dc7 Mon Sep 17 00:00:00 2001 From: Manikandan K Pillai Date: Sat, 8 Nov 2025 22:02:56 +0800 -Subject: [PATCH 146/467] UPSTREAM: PCI: cadence: Add module support for - platform controller driver +Subject: [RUYI PATCH] UPSTREAM: PCI: cadence: Add module support for platform + controller driver Add support for building PCI cadence platforms as a module. diff --git a/SPECS/linux-lts-kmhv2/0147-UPSTREAM-PCI-cadence-Split-PCIe-controller-header-fi.patch b/SPECS/linux-lts-kmhv2/0144-UPSTREAM-PCI-cadence-Split-PCIe-controller-header-fi.patch similarity index 99% rename from SPECS/linux-lts-kmhv2/0147-UPSTREAM-PCI-cadence-Split-PCIe-controller-header-fi.patch rename to SPECS/linux-lts-kmhv2/0144-UPSTREAM-PCI-cadence-Split-PCIe-controller-header-fi.patch index 1f7191cbd3..53a32a761a 100644 --- a/SPECS/linux-lts-kmhv2/0147-UPSTREAM-PCI-cadence-Split-PCIe-controller-header-fi.patch +++ b/SPECS/linux-lts-kmhv2/0144-UPSTREAM-PCI-cadence-Split-PCIe-controller-header-fi.patch @@ -1,7 +1,7 @@ -From c11c8fffc2a4398eef7883769b12ef9c7e9d39ea Mon Sep 17 00:00:00 2001 +From 3918539e5418b2d1151b2a2e086601ded67796a3 Mon Sep 17 00:00:00 2001 From: Manikandan K Pillai Date: Sat, 8 Nov 2025 22:02:57 +0800 -Subject: [PATCH 147/467] UPSTREAM: PCI: cadence: Split PCIe controller header +Subject: [RUYI PATCH] UPSTREAM: PCI: cadence: Split PCIe controller header file Split the Cadence PCIe header file by moving the Legacy (LGA) controller diff --git a/SPECS/linux-lts-kmhv2/0148-UPSTREAM-PCI-cadence-Move-PCIe-RP-common-functions-t.patch b/SPECS/linux-lts-kmhv2/0145-UPSTREAM-PCI-cadence-Move-PCIe-RP-common-functions-t.patch similarity index 99% rename from SPECS/linux-lts-kmhv2/0148-UPSTREAM-PCI-cadence-Move-PCIe-RP-common-functions-t.patch rename to SPECS/linux-lts-kmhv2/0145-UPSTREAM-PCI-cadence-Move-PCIe-RP-common-functions-t.patch index 297fc9341d..666272aa6c 100644 --- a/SPECS/linux-lts-kmhv2/0148-UPSTREAM-PCI-cadence-Move-PCIe-RP-common-functions-t.patch +++ b/SPECS/linux-lts-kmhv2/0145-UPSTREAM-PCI-cadence-Move-PCIe-RP-common-functions-t.patch @@ -1,8 +1,8 @@ -From a8c954c135b4ad338d55143da55d606909cfffb3 Mon Sep 17 00:00:00 2001 +From 4fb7d19f2e7e5112722787c8f89b8ca56f6943be Mon Sep 17 00:00:00 2001 From: Manikandan K Pillai Date: Sat, 8 Nov 2025 22:02:58 +0800 -Subject: [PATCH 148/467] UPSTREAM: PCI: cadence: Move PCIe RP common functions - to a separate file +Subject: [RUYI PATCH] UPSTREAM: PCI: cadence: Move PCIe RP common functions to + a separate file Move the Cadence PCIe controller RP common functions into a separate file. The common library functions are split from legacy PCIe RP controller diff --git a/SPECS/linux-lts-kmhv2/0149-UPSTREAM-PCI-cadence-Add-support-for-High-Perf-Archi.patch b/SPECS/linux-lts-kmhv2/0146-UPSTREAM-PCI-cadence-Add-support-for-High-Perf-Archi.patch similarity index 99% rename from SPECS/linux-lts-kmhv2/0149-UPSTREAM-PCI-cadence-Add-support-for-High-Perf-Archi.patch rename to SPECS/linux-lts-kmhv2/0146-UPSTREAM-PCI-cadence-Add-support-for-High-Perf-Archi.patch index 44809270c8..c0c607ce23 100644 --- a/SPECS/linux-lts-kmhv2/0149-UPSTREAM-PCI-cadence-Add-support-for-High-Perf-Archi.patch +++ b/SPECS/linux-lts-kmhv2/0146-UPSTREAM-PCI-cadence-Add-support-for-High-Perf-Archi.patch @@ -1,7 +1,7 @@ -From 22b6ed1bca264e8e9b80d9630a7c430722561bec Mon Sep 17 00:00:00 2001 +From 169a3b6c0054a1a90e9a56316ce2530a6e1d21ad Mon Sep 17 00:00:00 2001 From: Manikandan K Pillai Date: Sat, 8 Nov 2025 22:02:59 +0800 -Subject: [PATCH 149/467] UPSTREAM: PCI: cadence: Add support for High Perf +Subject: [RUYI PATCH] UPSTREAM: PCI: cadence: Add support for High Perf Architecture (HPA) controller Add support for Cadence PCIe RP configuration for High Performance diff --git a/SPECS/linux-lts-kmhv2/0150-UPSTREAM-net-stmmac-imx-use-phylink-s-interface-mode.patch b/SPECS/linux-lts-kmhv2/0147-UPSTREAM-net-stmmac-imx-use-phylink-s-interface-mode.patch similarity index 89% rename from SPECS/linux-lts-kmhv2/0150-UPSTREAM-net-stmmac-imx-use-phylink-s-interface-mode.patch rename to SPECS/linux-lts-kmhv2/0147-UPSTREAM-net-stmmac-imx-use-phylink-s-interface-mode.patch index 58b32f5050..45d4cc96d9 100644 --- a/SPECS/linux-lts-kmhv2/0150-UPSTREAM-net-stmmac-imx-use-phylink-s-interface-mode.patch +++ b/SPECS/linux-lts-kmhv2/0147-UPSTREAM-net-stmmac-imx-use-phylink-s-interface-mode.patch @@ -1,8 +1,8 @@ -From 3fc48954f60468b378e31495b8a6b8c77c81f5f1 Mon Sep 17 00:00:00 2001 +From 668b64875b3a39ad0c809fd84baba5596b3f93c1 Mon Sep 17 00:00:00 2001 From: "Russell King (Oracle)" Date: Mon, 3 Nov 2025 11:49:55 +0000 -Subject: [PATCH 150/467] UPSTREAM: net: stmmac: imx: use phylink's interface - mode for set_clk_tx_rate() +Subject: [RUYI PATCH] UPSTREAM: net: stmmac: imx: use phylink's interface mode + for set_clk_tx_rate() imx_dwmac_set_clk_tx_rate() is passed the interface mode from phylink which will be the same as plat_dat->phy_interface. Use the passed-in diff --git a/SPECS/linux-lts-kmhv2/0151-UPSTREAM-net-stmmac-s32-move-PHY_INTF_SEL_x-definiti.patch b/SPECS/linux-lts-kmhv2/0148-UPSTREAM-net-stmmac-s32-move-PHY_INTF_SEL_x-definiti.patch similarity index 93% rename from SPECS/linux-lts-kmhv2/0151-UPSTREAM-net-stmmac-s32-move-PHY_INTF_SEL_x-definiti.patch rename to SPECS/linux-lts-kmhv2/0148-UPSTREAM-net-stmmac-s32-move-PHY_INTF_SEL_x-definiti.patch index ddbd2ddb3b..e6e34a7195 100644 --- a/SPECS/linux-lts-kmhv2/0151-UPSTREAM-net-stmmac-s32-move-PHY_INTF_SEL_x-definiti.patch +++ b/SPECS/linux-lts-kmhv2/0148-UPSTREAM-net-stmmac-s32-move-PHY_INTF_SEL_x-definiti.patch @@ -1,7 +1,7 @@ -From 1d729e5a3d02a0b30f4cc2145934e9ad02a2593c Mon Sep 17 00:00:00 2001 +From 821bb874c9ee51f801501a53f0bfaff22992f2fb Mon Sep 17 00:00:00 2001 From: "Russell King (Oracle)" Date: Mon, 3 Nov 2025 11:50:00 +0000 -Subject: [PATCH 151/467] UPSTREAM: net: stmmac: s32: move PHY_INTF_SEL_x +Subject: [RUYI PATCH] UPSTREAM: net: stmmac: s32: move PHY_INTF_SEL_x definitions out of the way S32's PHY_INTF_SEL_x definitions conflict with those for the dwmac diff --git a/SPECS/linux-lts-kmhv2/0152-UPSTREAM-net-stmmac-add-phy_intf_sel-and-ACTPHYIF-de.patch b/SPECS/linux-lts-kmhv2/0149-UPSTREAM-net-stmmac-add-phy_intf_sel-and-ACTPHYIF-de.patch similarity index 91% rename from SPECS/linux-lts-kmhv2/0152-UPSTREAM-net-stmmac-add-phy_intf_sel-and-ACTPHYIF-de.patch rename to SPECS/linux-lts-kmhv2/0149-UPSTREAM-net-stmmac-add-phy_intf_sel-and-ACTPHYIF-de.patch index 89b1cdbb0e..2109b174e4 100644 --- a/SPECS/linux-lts-kmhv2/0152-UPSTREAM-net-stmmac-add-phy_intf_sel-and-ACTPHYIF-de.patch +++ b/SPECS/linux-lts-kmhv2/0149-UPSTREAM-net-stmmac-add-phy_intf_sel-and-ACTPHYIF-de.patch @@ -1,7 +1,7 @@ -From 5ac0d54cbe08eb88695ec8feda51f1e2f957ee10 Mon Sep 17 00:00:00 2001 +From 90e4dd06e790973bb6661abbcb3f3e584ec56f1e Mon Sep 17 00:00:00 2001 From: "Russell King (Oracle)" Date: Mon, 3 Nov 2025 11:50:05 +0000 -Subject: [PATCH 152/467] UPSTREAM: net: stmmac: add phy_intf_sel and ACTPHYIF +Subject: [RUYI PATCH] UPSTREAM: net: stmmac: add phy_intf_sel and ACTPHYIF definitions Add definitions for the active PHY interface found in DMA hardware diff --git a/SPECS/linux-lts-kmhv2/0153-UPSTREAM-net-stmmac-add-stmmac_get_phy_intf_sel.patch b/SPECS/linux-lts-kmhv2/0150-UPSTREAM-net-stmmac-add-stmmac_get_phy_intf_sel.patch similarity index 94% rename from SPECS/linux-lts-kmhv2/0153-UPSTREAM-net-stmmac-add-stmmac_get_phy_intf_sel.patch rename to SPECS/linux-lts-kmhv2/0150-UPSTREAM-net-stmmac-add-stmmac_get_phy_intf_sel.patch index 7628db8ba4..9a20bd485f 100644 --- a/SPECS/linux-lts-kmhv2/0153-UPSTREAM-net-stmmac-add-stmmac_get_phy_intf_sel.patch +++ b/SPECS/linux-lts-kmhv2/0150-UPSTREAM-net-stmmac-add-stmmac_get_phy_intf_sel.patch @@ -1,7 +1,7 @@ -From 43838e019c5010025e2e2c06687a7e97c3153717 Mon Sep 17 00:00:00 2001 +From 624275e49ff1dc397c4e821f30d8afcc4c8f621e Mon Sep 17 00:00:00 2001 From: "Russell King (Oracle)" Date: Mon, 3 Nov 2025 11:50:10 +0000 -Subject: [PATCH 153/467] UPSTREAM: net: stmmac: add stmmac_get_phy_intf_sel() +Subject: [RUYI PATCH] UPSTREAM: net: stmmac: add stmmac_get_phy_intf_sel() Provide a function to translate the PHY interface mode to the phy_intf_sel pin configuration for dwmac1000 and dwmac4 cores that diff --git a/SPECS/linux-lts-kmhv2/0154-UPSTREAM-net-stmmac-add-support-for-configuring-the-.patch b/SPECS/linux-lts-kmhv2/0151-UPSTREAM-net-stmmac-add-support-for-configuring-the-.patch similarity index 95% rename from SPECS/linux-lts-kmhv2/0154-UPSTREAM-net-stmmac-add-support-for-configuring-the-.patch rename to SPECS/linux-lts-kmhv2/0151-UPSTREAM-net-stmmac-add-support-for-configuring-the-.patch index e57e4171fb..b7fa7e6a46 100644 --- a/SPECS/linux-lts-kmhv2/0154-UPSTREAM-net-stmmac-add-support-for-configuring-the-.patch +++ b/SPECS/linux-lts-kmhv2/0151-UPSTREAM-net-stmmac-add-support-for-configuring-the-.patch @@ -1,8 +1,8 @@ -From ea8b437fd179a8f307c0e49128898b0424718763 Mon Sep 17 00:00:00 2001 +From f194dd514161599163226c56b2674969caea19ca Mon Sep 17 00:00:00 2001 From: "Russell King (Oracle)" Date: Mon, 3 Nov 2025 11:50:15 +0000 -Subject: [PATCH 154/467] UPSTREAM: net: stmmac: add support for configuring - the phy_intf_sel inputs +Subject: [RUYI PATCH] UPSTREAM: net: stmmac: add support for configuring the + phy_intf_sel inputs When dwmac is synthesised with support for multiple PHY interfaces, the core provides phy_intf_sel inputs, sampled on reset, to configure the diff --git a/SPECS/linux-lts-kmhv2/0155-UPSTREAM-net-stmmac-imx-convert-to-PHY_INTF_SEL_xxx.patch b/SPECS/linux-lts-kmhv2/0152-UPSTREAM-net-stmmac-imx-convert-to-PHY_INTF_SEL_xxx.patch similarity index 95% rename from SPECS/linux-lts-kmhv2/0155-UPSTREAM-net-stmmac-imx-convert-to-PHY_INTF_SEL_xxx.patch rename to SPECS/linux-lts-kmhv2/0152-UPSTREAM-net-stmmac-imx-convert-to-PHY_INTF_SEL_xxx.patch index 4686086a36..9563df2a93 100644 --- a/SPECS/linux-lts-kmhv2/0155-UPSTREAM-net-stmmac-imx-convert-to-PHY_INTF_SEL_xxx.patch +++ b/SPECS/linux-lts-kmhv2/0152-UPSTREAM-net-stmmac-imx-convert-to-PHY_INTF_SEL_xxx.patch @@ -1,8 +1,7 @@ -From 298cb039696cadbf544bfbe91d55631386fabfa1 Mon Sep 17 00:00:00 2001 +From 89d282d18f9a93cdff176ee6469c67a8b11cb528 Mon Sep 17 00:00:00 2001 From: "Russell King (Oracle)" Date: Mon, 3 Nov 2025 11:50:21 +0000 -Subject: [PATCH 155/467] UPSTREAM: net: stmmac: imx: convert to - PHY_INTF_SEL_xxx +Subject: [RUYI PATCH] UPSTREAM: net: stmmac: imx: convert to PHY_INTF_SEL_xxx Convert dwmac-imx to use the PHY_INTF_SEL_xxx definitions rather than constants via: diff --git a/SPECS/linux-lts-kmhv2/0156-UPSTREAM-net-stmmac-imx-use-FIELD_PREP-FIELD_GET-for.patch b/SPECS/linux-lts-kmhv2/0153-UPSTREAM-net-stmmac-imx-use-FIELD_PREP-FIELD_GET-for.patch similarity index 97% rename from SPECS/linux-lts-kmhv2/0156-UPSTREAM-net-stmmac-imx-use-FIELD_PREP-FIELD_GET-for.patch rename to SPECS/linux-lts-kmhv2/0153-UPSTREAM-net-stmmac-imx-use-FIELD_PREP-FIELD_GET-for.patch index ff69081e5a..3546e04959 100644 --- a/SPECS/linux-lts-kmhv2/0156-UPSTREAM-net-stmmac-imx-use-FIELD_PREP-FIELD_GET-for.patch +++ b/SPECS/linux-lts-kmhv2/0153-UPSTREAM-net-stmmac-imx-use-FIELD_PREP-FIELD_GET-for.patch @@ -1,8 +1,8 @@ -From 96a2fbe70c985e615419f7e5872b429885c2832b Mon Sep 17 00:00:00 2001 +From cc8ade8e3e83180c2b2c2458f61161c29f310f53 Mon Sep 17 00:00:00 2001 From: "Russell King (Oracle)" Date: Mon, 3 Nov 2025 11:50:26 +0000 -Subject: [PATCH 156/467] UPSTREAM: net: stmmac: imx: use - FIELD_PREP()/FIELD_GET() for PHY_INTF_SEL_x +Subject: [RUYI PATCH] UPSTREAM: net: stmmac: imx: use FIELD_PREP()/FIELD_GET() + for PHY_INTF_SEL_x Use FIELD_PREP()/FIELD_GET() in the functions to construct the PHY interface selection bitfield or to extract its value. diff --git a/SPECS/linux-lts-kmhv2/0157-UPSTREAM-net-stmmac-imx-use-stmmac_get_phy_intf_sel.patch b/SPECS/linux-lts-kmhv2/0154-UPSTREAM-net-stmmac-imx-use-stmmac_get_phy_intf_sel.patch similarity index 97% rename from SPECS/linux-lts-kmhv2/0157-UPSTREAM-net-stmmac-imx-use-stmmac_get_phy_intf_sel.patch rename to SPECS/linux-lts-kmhv2/0154-UPSTREAM-net-stmmac-imx-use-stmmac_get_phy_intf_sel.patch index 948f2ff114..133ab7846d 100644 --- a/SPECS/linux-lts-kmhv2/0157-UPSTREAM-net-stmmac-imx-use-stmmac_get_phy_intf_sel.patch +++ b/SPECS/linux-lts-kmhv2/0154-UPSTREAM-net-stmmac-imx-use-stmmac_get_phy_intf_sel.patch @@ -1,7 +1,7 @@ -From a7b4a86b0a6221000c68f097653ff86de2485ea0 Mon Sep 17 00:00:00 2001 +From c242a53cab013ff50b42785236d0b703b63c9e37 Mon Sep 17 00:00:00 2001 From: "Russell King (Oracle)" Date: Mon, 3 Nov 2025 11:50:31 +0000 -Subject: [PATCH 157/467] UPSTREAM: net: stmmac: imx: use +Subject: [RUYI PATCH] UPSTREAM: net: stmmac: imx: use stmmac_get_phy_intf_sel() i.MX implementations other than IMX8DXL involve setting the dwmac core diff --git a/SPECS/linux-lts-kmhv2/0158-UPSTREAM-net-stmmac-imx-simplify-set_intf_mode-imple.patch b/SPECS/linux-lts-kmhv2/0155-UPSTREAM-net-stmmac-imx-simplify-set_intf_mode-imple.patch similarity index 96% rename from SPECS/linux-lts-kmhv2/0158-UPSTREAM-net-stmmac-imx-simplify-set_intf_mode-imple.patch rename to SPECS/linux-lts-kmhv2/0155-UPSTREAM-net-stmmac-imx-simplify-set_intf_mode-imple.patch index 4fca5088f0..cc5171568d 100644 --- a/SPECS/linux-lts-kmhv2/0158-UPSTREAM-net-stmmac-imx-simplify-set_intf_mode-imple.patch +++ b/SPECS/linux-lts-kmhv2/0155-UPSTREAM-net-stmmac-imx-simplify-set_intf_mode-imple.patch @@ -1,7 +1,7 @@ -From a4d4ff59a90369776a587bea80bb089b9b3ff2e4 Mon Sep 17 00:00:00 2001 +From 38044c901de858463843f7c8cfab808a34627f56 Mon Sep 17 00:00:00 2001 From: "Russell King (Oracle)" Date: Mon, 3 Nov 2025 11:50:36 +0000 -Subject: [PATCH 158/467] UPSTREAM: net: stmmac: imx: simplify set_intf_mode() +Subject: [RUYI PATCH] UPSTREAM: net: stmmac: imx: simplify set_intf_mode() implementations Simplify the set_intf_mode() implementations, testing the phy_intf_sel diff --git a/SPECS/linux-lts-kmhv2/0159-UPSTREAM-net-stmmac-imx-cleanup-arguments-for-set_in.patch b/SPECS/linux-lts-kmhv2/0156-UPSTREAM-net-stmmac-imx-cleanup-arguments-for-set_in.patch similarity index 95% rename from SPECS/linux-lts-kmhv2/0159-UPSTREAM-net-stmmac-imx-cleanup-arguments-for-set_in.patch rename to SPECS/linux-lts-kmhv2/0156-UPSTREAM-net-stmmac-imx-cleanup-arguments-for-set_in.patch index 416094c8bf..7f2c908494 100644 --- a/SPECS/linux-lts-kmhv2/0159-UPSTREAM-net-stmmac-imx-cleanup-arguments-for-set_in.patch +++ b/SPECS/linux-lts-kmhv2/0156-UPSTREAM-net-stmmac-imx-cleanup-arguments-for-set_in.patch @@ -1,7 +1,7 @@ -From 651b057371e02ed78100a1da8b724c5996480add Mon Sep 17 00:00:00 2001 +From 3c89184f3302aafeabc618409bf916aa970f4f16 Mon Sep 17 00:00:00 2001 From: "Russell King (Oracle)" Date: Mon, 3 Nov 2025 11:50:41 +0000 -Subject: [PATCH 159/467] UPSTREAM: net: stmmac: imx: cleanup arguments for +Subject: [RUYI PATCH] UPSTREAM: net: stmmac: imx: cleanup arguments for set_intf_mode() method Pass the imx_priv_data instead of the plat_stmmacenet_data into the diff --git a/SPECS/linux-lts-kmhv2/0160-UPSTREAM-net-stmmac-imx-use-set_phy_intf_sel.patch b/SPECS/linux-lts-kmhv2/0157-UPSTREAM-net-stmmac-imx-use-set_phy_intf_sel.patch similarity index 94% rename from SPECS/linux-lts-kmhv2/0160-UPSTREAM-net-stmmac-imx-use-set_phy_intf_sel.patch rename to SPECS/linux-lts-kmhv2/0157-UPSTREAM-net-stmmac-imx-use-set_phy_intf_sel.patch index cb7b7536b5..20bb16df38 100644 --- a/SPECS/linux-lts-kmhv2/0160-UPSTREAM-net-stmmac-imx-use-set_phy_intf_sel.patch +++ b/SPECS/linux-lts-kmhv2/0157-UPSTREAM-net-stmmac-imx-use-set_phy_intf_sel.patch @@ -1,7 +1,7 @@ -From dd51d5c75d4f912be30523c694e72ffe87fa3d99 Mon Sep 17 00:00:00 2001 +From e0a6c2e873b5d2ba2e3a62461407c4523f488812 Mon Sep 17 00:00:00 2001 From: "Russell King (Oracle)" Date: Mon, 3 Nov 2025 11:50:46 +0000 -Subject: [PATCH 160/467] UPSTREAM: net: stmmac: imx: use ->set_phy_intf_sel() +Subject: [RUYI PATCH] UPSTREAM: net: stmmac: imx: use ->set_phy_intf_sel() Rather than placing the phy_intf_sel() setup in the ->init() method, move it to the new ->set_phy_intf_sel() method. diff --git a/SPECS/linux-lts-kmhv2/0161-UPSTREAM-powerpc-pci-Initialize-msi_addr_mask-for-OF.patch b/SPECS/linux-lts-kmhv2/0158-UPSTREAM-powerpc-pci-Initialize-msi_addr_mask-for-OF.patch similarity index 94% rename from SPECS/linux-lts-kmhv2/0161-UPSTREAM-powerpc-pci-Initialize-msi_addr_mask-for-OF.patch rename to SPECS/linux-lts-kmhv2/0158-UPSTREAM-powerpc-pci-Initialize-msi_addr_mask-for-OF.patch index f7ae99a862..f73e1f62b4 100644 --- a/SPECS/linux-lts-kmhv2/0161-UPSTREAM-powerpc-pci-Initialize-msi_addr_mask-for-OF.patch +++ b/SPECS/linux-lts-kmhv2/0158-UPSTREAM-powerpc-pci-Initialize-msi_addr_mask-for-OF.patch @@ -1,7 +1,7 @@ -From d55d880c109f6894dbe383af6cca3b65ebab1537 Mon Sep 17 00:00:00 2001 +From d219e86b2ba446033884ed9b3f3cb9d0edcd98ef Mon Sep 17 00:00:00 2001 From: Nilay Shroff Date: Fri, 20 Feb 2026 12:32:27 +0530 -Subject: [PATCH 161/467] UPSTREAM: powerpc/pci: Initialize msi_addr_mask for +Subject: [RUYI PATCH] UPSTREAM: powerpc/pci: Initialize msi_addr_mask for OF-created PCI devices Recent changes replaced the use of no_64bit_msi with msi_addr_mask. As a diff --git a/SPECS/linux-lts-kmhv2/0162-UPSTREAM-sparc-PCI-Initialize-msi_addr_mask-for-OF-c.patch b/SPECS/linux-lts-kmhv2/0159-UPSTREAM-sparc-PCI-Initialize-msi_addr_mask-for-OF-c.patch similarity index 93% rename from SPECS/linux-lts-kmhv2/0162-UPSTREAM-sparc-PCI-Initialize-msi_addr_mask-for-OF-c.patch rename to SPECS/linux-lts-kmhv2/0159-UPSTREAM-sparc-PCI-Initialize-msi_addr_mask-for-OF-c.patch index ee5c00b176..e75eecbde3 100644 --- a/SPECS/linux-lts-kmhv2/0162-UPSTREAM-sparc-PCI-Initialize-msi_addr_mask-for-OF-c.patch +++ b/SPECS/linux-lts-kmhv2/0159-UPSTREAM-sparc-PCI-Initialize-msi_addr_mask-for-OF-c.patch @@ -1,7 +1,7 @@ -From 062318331f0323b6c2cde88974f89889bd3b3983 Mon Sep 17 00:00:00 2001 +From 9e9a5cb4c3cd15b6b321a0ec71d41d8318cfd254 Mon Sep 17 00:00:00 2001 From: Nilay Shroff Date: Fri, 20 Feb 2026 12:32:28 +0530 -Subject: [PATCH 162/467] UPSTREAM: sparc/PCI: Initialize msi_addr_mask for +Subject: [RUYI PATCH] UPSTREAM: sparc/PCI: Initialize msi_addr_mask for OF-created PCI devices Recent changes replaced the use of no_64bit_msi with msi_addr_mask, which diff --git a/SPECS/linux-lts-kmhv2/0163-UPSTREAM-syscore-Pass-context-data-to-callbacks.patch b/SPECS/linux-lts-kmhv2/0160-UPSTREAM-syscore-Pass-context-data-to-callbacks.patch similarity index 99% rename from SPECS/linux-lts-kmhv2/0163-UPSTREAM-syscore-Pass-context-data-to-callbacks.patch rename to SPECS/linux-lts-kmhv2/0160-UPSTREAM-syscore-Pass-context-data-to-callbacks.patch index d62c31b7b3..9f8cb3b4b0 100644 --- a/SPECS/linux-lts-kmhv2/0163-UPSTREAM-syscore-Pass-context-data-to-callbacks.patch +++ b/SPECS/linux-lts-kmhv2/0160-UPSTREAM-syscore-Pass-context-data-to-callbacks.patch @@ -1,7 +1,7 @@ -From 3db4461f56317b6d1205c5f1aa79d971772b0d4d Mon Sep 17 00:00:00 2001 +From 94993ae18a9db8b1a6f5939a8bfc465712f0e760 Mon Sep 17 00:00:00 2001 From: Thierry Reding Date: Wed, 29 Oct 2025 17:33:30 +0100 -Subject: [PATCH 163/467] UPSTREAM: syscore: Pass context data to callbacks +Subject: [RUYI PATCH] UPSTREAM: syscore: Pass context data to callbacks Several drivers can benefit from registering per-instance data along with the syscore operations. To achieve this, move the modifiable fields @@ -1651,10 +1651,10 @@ index bc7671f920a7..2c56f8730f59 100644 err_out_online: diff --git a/arch/x86/kernel/cpu/mce/core.c b/arch/x86/kernel/cpu/mce/core.c -index 460e90a1a0b1..23bfbc7dfb8e 100644 +index c8b112c6c549..26c98d9002bc 100644 --- a/arch/x86/kernel/cpu/mce/core.c +++ b/arch/x86/kernel/cpu/mce/core.c -@@ -2410,13 +2410,13 @@ static void vendor_disable_error_reporting(void) +@@ -2387,13 +2387,13 @@ static void vendor_disable_error_reporting(void) mce_disable_error_reporting(); } @@ -1670,7 +1670,7 @@ index 460e90a1a0b1..23bfbc7dfb8e 100644 { vendor_disable_error_reporting(); } -@@ -2426,7 +2426,7 @@ static void mce_syscore_shutdown(void) +@@ -2403,7 +2403,7 @@ static void mce_syscore_shutdown(void) * Only one CPU is active at this time, the others get re-added later using * CPU hotplug: */ @@ -1679,7 +1679,7 @@ index 460e90a1a0b1..23bfbc7dfb8e 100644 { __mcheck_cpu_init_generic(); __mcheck_cpu_init_vendor(raw_cpu_ptr(&cpu_info)); -@@ -2434,12 +2434,16 @@ static void mce_syscore_resume(void) +@@ -2411,12 +2411,16 @@ static void mce_syscore_resume(void) cr4_set_bits(X86_CR4_MCE); } @@ -1697,7 +1697,7 @@ index 460e90a1a0b1..23bfbc7dfb8e 100644 /* * mce_device: Sysfs support */ -@@ -2840,7 +2844,7 @@ static __init int mcheck_init_device(void) +@@ -2817,7 +2821,7 @@ static __init int mcheck_init_device(void) if (err < 0) goto err_out_online; diff --git a/SPECS/linux-lts-kmhv2/0164-UPSTREAM-irqchip-riscv-aplic-Preserve-APLIC-states-a.patch b/SPECS/linux-lts-kmhv2/0161-UPSTREAM-irqchip-riscv-aplic-Preserve-APLIC-states-a.patch similarity index 98% rename from SPECS/linux-lts-kmhv2/0164-UPSTREAM-irqchip-riscv-aplic-Preserve-APLIC-states-a.patch rename to SPECS/linux-lts-kmhv2/0161-UPSTREAM-irqchip-riscv-aplic-Preserve-APLIC-states-a.patch index 76e29a3422..778297758c 100644 --- a/SPECS/linux-lts-kmhv2/0164-UPSTREAM-irqchip-riscv-aplic-Preserve-APLIC-states-a.patch +++ b/SPECS/linux-lts-kmhv2/0161-UPSTREAM-irqchip-riscv-aplic-Preserve-APLIC-states-a.patch @@ -1,7 +1,7 @@ -From bb03ede744a1b004dd7ecaebdb891a4d0bc0c559 Mon Sep 17 00:00:00 2001 +From dc079d2d3ef26e7fc9ba38e7af9c67873ed5fc55 Mon Sep 17 00:00:00 2001 From: Nick Hu Date: Tue, 2 Dec 2025 14:07:41 +0800 -Subject: [PATCH 164/467] UPSTREAM: irqchip/riscv-aplic: Preserve APLIC states +Subject: [RUYI PATCH] UPSTREAM: irqchip/riscv-aplic: Preserve APLIC states across suspend/resume The APLIC states might be reset when the platform enters a low power diff --git a/SPECS/linux-lts-kmhv2/0165-UPSTREAM-irqchip-riscv-aplic-Do-not-clear-ACPI-depen.patch b/SPECS/linux-lts-kmhv2/0162-UPSTREAM-irqchip-riscv-aplic-Do-not-clear-ACPI-depen.patch similarity index 93% rename from SPECS/linux-lts-kmhv2/0165-UPSTREAM-irqchip-riscv-aplic-Do-not-clear-ACPI-depen.patch rename to SPECS/linux-lts-kmhv2/0162-UPSTREAM-irqchip-riscv-aplic-Do-not-clear-ACPI-depen.patch index 3b32023095..9ede52445f 100644 --- a/SPECS/linux-lts-kmhv2/0165-UPSTREAM-irqchip-riscv-aplic-Do-not-clear-ACPI-depen.patch +++ b/SPECS/linux-lts-kmhv2/0162-UPSTREAM-irqchip-riscv-aplic-Do-not-clear-ACPI-depen.patch @@ -1,7 +1,7 @@ -From 53ca58e7f8870492ce5c75dda934c60d28026396 Mon Sep 17 00:00:00 2001 +From 9030f2dc70b9b4bd8e20de88dcbbd8afa905d20e Mon Sep 17 00:00:00 2001 From: Jessica Liu Date: Tue, 10 Mar 2026 14:16:00 +0800 -Subject: [PATCH 165/467] UPSTREAM: irqchip/riscv-aplic: Do not clear ACPI +Subject: [RUYI PATCH] UPSTREAM: irqchip/riscv-aplic: Do not clear ACPI dependencies on probe failure aplic_probe() calls acpi_dev_clear_dependencies() unconditionally at the diff --git a/SPECS/linux-lts-kmhv2/0166-UPSTREAM-irqchip-riscv-aplic-Register-syscore-operat.patch b/SPECS/linux-lts-kmhv2/0163-UPSTREAM-irqchip-riscv-aplic-Register-syscore-operat.patch similarity index 94% rename from SPECS/linux-lts-kmhv2/0166-UPSTREAM-irqchip-riscv-aplic-Register-syscore-operat.patch rename to SPECS/linux-lts-kmhv2/0163-UPSTREAM-irqchip-riscv-aplic-Register-syscore-operat.patch index e1aff8100a..7e5c262b22 100644 --- a/SPECS/linux-lts-kmhv2/0166-UPSTREAM-irqchip-riscv-aplic-Register-syscore-operat.patch +++ b/SPECS/linux-lts-kmhv2/0163-UPSTREAM-irqchip-riscv-aplic-Register-syscore-operat.patch @@ -1,7 +1,7 @@ -From 8ae93b636f92b573aec71e026e1959d7342e76f5 Mon Sep 17 00:00:00 2001 +From f0f6537007b57483923b71a9da409d7811b4a6a1 Mon Sep 17 00:00:00 2001 From: Jessica Liu Date: Tue, 10 Mar 2026 14:17:31 +0800 -Subject: [PATCH 166/467] UPSTREAM: irqchip/riscv-aplic: Register syscore +Subject: [RUYI PATCH] UPSTREAM: irqchip/riscv-aplic: Register syscore operations only once Since commit 95a8ddde3660 ("irqchip/riscv-aplic: Preserve APLIC diff --git a/SPECS/linux-lts-kmhv2/0167-UPSTREAM-dt-bindings-usb-add-missed-compatible-strin.patch b/SPECS/linux-lts-kmhv2/0164-UPSTREAM-dt-bindings-usb-add-missed-compatible-strin.patch similarity index 93% rename from SPECS/linux-lts-kmhv2/0167-UPSTREAM-dt-bindings-usb-add-missed-compatible-strin.patch rename to SPECS/linux-lts-kmhv2/0164-UPSTREAM-dt-bindings-usb-add-missed-compatible-strin.patch index 9f4bf625b0..edf918ccc1 100644 --- a/SPECS/linux-lts-kmhv2/0167-UPSTREAM-dt-bindings-usb-add-missed-compatible-strin.patch +++ b/SPECS/linux-lts-kmhv2/0164-UPSTREAM-dt-bindings-usb-add-missed-compatible-strin.patch @@ -1,8 +1,8 @@ -From c8008d5da7b2415832577084ccba87ecd7a44f39 Mon Sep 17 00:00:00 2001 +From 362bcba652bd4b28531fbf93691ef6fba9a852a7 Mon Sep 17 00:00:00 2001 From: Frank Li Date: Mon, 29 Sep 2025 10:24:14 -0400 -Subject: [PATCH 167/467] UPSTREAM: dt-bindings: usb: add missed compatible - string for arm64 layerscape +Subject: [RUYI PATCH] UPSTREAM: dt-bindings: usb: add missed compatible string + for arm64 layerscape Add missed compatible string for arm64 layerscape platform. Allow these fallback to fsl,ls1028a-dwc3. diff --git a/SPECS/linux-lts-kmhv2/0168-UPSTREAM-usb-dwc3-Add-software-managed-properties-fo.patch b/SPECS/linux-lts-kmhv2/0165-UPSTREAM-usb-dwc3-Add-software-managed-properties-fo.patch similarity index 96% rename from SPECS/linux-lts-kmhv2/0168-UPSTREAM-usb-dwc3-Add-software-managed-properties-fo.patch rename to SPECS/linux-lts-kmhv2/0165-UPSTREAM-usb-dwc3-Add-software-managed-properties-fo.patch index 9c997b8d12..3f06b45545 100644 --- a/SPECS/linux-lts-kmhv2/0168-UPSTREAM-usb-dwc3-Add-software-managed-properties-fo.patch +++ b/SPECS/linux-lts-kmhv2/0165-UPSTREAM-usb-dwc3-Add-software-managed-properties-fo.patch @@ -1,8 +1,8 @@ -From ec754531fae0f05264d641470206d128b8955455 Mon Sep 17 00:00:00 2001 +From 95da822dbecb61c821f0748e19304ec198992377 Mon Sep 17 00:00:00 2001 From: Frank Li Date: Mon, 29 Sep 2025 10:24:15 -0400 -Subject: [PATCH 168/467] UPSTREAM: usb: dwc3: Add software-managed properties - for flattened model +Subject: [RUYI PATCH] UPSTREAM: usb: dwc3: Add software-managed properties for + flattened model Add software-managed properties for the flattened model, which does not need to use device tree properties to pass down information to the diff --git a/SPECS/linux-lts-kmhv2/0169-UPSTREAM-usb-dwc3-dwc3-generic-plat-Add-layerscape-d.patch b/SPECS/linux-lts-kmhv2/0166-UPSTREAM-usb-dwc3-dwc3-generic-plat-Add-layerscape-d.patch similarity index 93% rename from SPECS/linux-lts-kmhv2/0169-UPSTREAM-usb-dwc3-dwc3-generic-plat-Add-layerscape-d.patch rename to SPECS/linux-lts-kmhv2/0166-UPSTREAM-usb-dwc3-dwc3-generic-plat-Add-layerscape-d.patch index 5518a57821..0ff5ac0f10 100644 --- a/SPECS/linux-lts-kmhv2/0169-UPSTREAM-usb-dwc3-dwc3-generic-plat-Add-layerscape-d.patch +++ b/SPECS/linux-lts-kmhv2/0166-UPSTREAM-usb-dwc3-dwc3-generic-plat-Add-layerscape-d.patch @@ -1,8 +1,8 @@ -From 2ad4fd487b3a00d0f606fecc70edc0fe56d6b43e Mon Sep 17 00:00:00 2001 +From 336f616b6d4b4f53eb9ffdf8822f067ff0820efa Mon Sep 17 00:00:00 2001 From: Frank Li Date: Mon, 29 Sep 2025 10:24:16 -0400 -Subject: [PATCH 169/467] UPSTREAM: usb: dwc3: dwc3-generic-plat: Add - layerscape dwc3 support +Subject: [RUYI PATCH] UPSTREAM: usb: dwc3: dwc3-generic-plat: Add layerscape + dwc3 support Add layerscape dwc3 support by using flatten dwc3 core library. Layerscape dwc3 need set gsbuscfg0-reqinfo as 0x2222 when dma-coherence set. diff --git a/SPECS/linux-lts-kmhv2/0170-UPSTREAM-dt-bindings-usb-Add-ESWIN-EIC7700-USB-contr.patch b/SPECS/linux-lts-kmhv2/0167-UPSTREAM-dt-bindings-usb-Add-ESWIN-EIC7700-USB-contr.patch similarity index 95% rename from SPECS/linux-lts-kmhv2/0170-UPSTREAM-dt-bindings-usb-Add-ESWIN-EIC7700-USB-contr.patch rename to SPECS/linux-lts-kmhv2/0167-UPSTREAM-dt-bindings-usb-Add-ESWIN-EIC7700-USB-contr.patch index 6b5f344dd1..85f93bef67 100644 --- a/SPECS/linux-lts-kmhv2/0170-UPSTREAM-dt-bindings-usb-Add-ESWIN-EIC7700-USB-contr.patch +++ b/SPECS/linux-lts-kmhv2/0167-UPSTREAM-dt-bindings-usb-Add-ESWIN-EIC7700-USB-contr.patch @@ -1,7 +1,7 @@ -From fd6aed5b51bb1817267103bf54285d06b25b5d2f Mon Sep 17 00:00:00 2001 +From 4b1c4f9c84bda4bcf482c0efe496c3a6648372ca Mon Sep 17 00:00:00 2001 From: Hang Cao Date: Wed, 12 Nov 2025 13:53:21 +0800 -Subject: [PATCH 170/467] UPSTREAM: dt-bindings: usb: Add ESWIN EIC7700 USB +Subject: [RUYI PATCH] UPSTREAM: dt-bindings: usb: Add ESWIN EIC7700 USB controller Add Device Tree binding documentation for the ESWIN EIC7700 diff --git a/SPECS/linux-lts-kmhv2/0171-UPSTREAM-usb-dwc3-eic7700-Add-EIC7700-USB-driver.patch b/SPECS/linux-lts-kmhv2/0168-UPSTREAM-usb-dwc3-eic7700-Add-EIC7700-USB-driver.patch similarity index 97% rename from SPECS/linux-lts-kmhv2/0171-UPSTREAM-usb-dwc3-eic7700-Add-EIC7700-USB-driver.patch rename to SPECS/linux-lts-kmhv2/0168-UPSTREAM-usb-dwc3-eic7700-Add-EIC7700-USB-driver.patch index 7144558c46..c664c16a80 100644 --- a/SPECS/linux-lts-kmhv2/0171-UPSTREAM-usb-dwc3-eic7700-Add-EIC7700-USB-driver.patch +++ b/SPECS/linux-lts-kmhv2/0168-UPSTREAM-usb-dwc3-eic7700-Add-EIC7700-USB-driver.patch @@ -1,7 +1,7 @@ -From 76caa8b77c6909d2488024da63eb6de0ae401844 Mon Sep 17 00:00:00 2001 +From a2ce6ee9f23da731a7f30c0869f5b48c66d727e1 Mon Sep 17 00:00:00 2001 From: Hang Cao Date: Wed, 12 Nov 2025 13:53:45 +0800 -Subject: [PATCH 171/467] UPSTREAM: usb: dwc3: eic7700: Add EIC7700 USB driver +Subject: [RUYI PATCH] UPSTREAM: usb: dwc3: eic7700: Add EIC7700 USB driver The EIC7700 instantiates two USB 3.0 DWC3 IPs, each of which is backward compatible with USB interfaces. It supports Super-speed (5Gb/s), DRD mode, diff --git a/SPECS/linux-lts-kmhv2/0172-UPSTREAM-phy-k1-usb-add-disconnect-function-support.patch b/SPECS/linux-lts-kmhv2/0169-UPSTREAM-phy-k1-usb-add-disconnect-function-support.patch similarity index 92% rename from SPECS/linux-lts-kmhv2/0172-UPSTREAM-phy-k1-usb-add-disconnect-function-support.patch rename to SPECS/linux-lts-kmhv2/0169-UPSTREAM-phy-k1-usb-add-disconnect-function-support.patch index 324034713f..0830c4cd17 100644 --- a/SPECS/linux-lts-kmhv2/0172-UPSTREAM-phy-k1-usb-add-disconnect-function-support.patch +++ b/SPECS/linux-lts-kmhv2/0169-UPSTREAM-phy-k1-usb-add-disconnect-function-support.patch @@ -1,8 +1,7 @@ -From 7ce945a45771d022307a72be01e01ba8f621f6ae Mon Sep 17 00:00:00 2001 +From 9acac5b146b312ddb8525d13c2ba273dff6508a0 Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Mon, 16 Feb 2026 23:26:53 +0800 -Subject: [PATCH 172/467] UPSTREAM: phy: k1-usb: add disconnect function - support +Subject: [RUYI PATCH] UPSTREAM: phy: k1-usb: add disconnect function support A disconnect status BIT of USB2 PHY need to be cleared, otherwise it will fail to work properly during next connection when devices diff --git a/SPECS/linux-lts-kmhv2/0173-UPSTREAM-PCI-Add-ASPEED-vendor-ID-to-pci_ids.h.patch b/SPECS/linux-lts-kmhv2/0170-UPSTREAM-PCI-Add-ASPEED-vendor-ID-to-pci_ids.h.patch similarity index 92% rename from SPECS/linux-lts-kmhv2/0173-UPSTREAM-PCI-Add-ASPEED-vendor-ID-to-pci_ids.h.patch rename to SPECS/linux-lts-kmhv2/0170-UPSTREAM-PCI-Add-ASPEED-vendor-ID-to-pci_ids.h.patch index 33ff2c2664..f563981345 100644 --- a/SPECS/linux-lts-kmhv2/0173-UPSTREAM-PCI-Add-ASPEED-vendor-ID-to-pci_ids.h.patch +++ b/SPECS/linux-lts-kmhv2/0170-UPSTREAM-PCI-Add-ASPEED-vendor-ID-to-pci_ids.h.patch @@ -1,7 +1,7 @@ -From 6b3c31276fbb62225261d4063f231152756c3c24 Mon Sep 17 00:00:00 2001 +From 8aba9c8ffd6f7bf33950abcc2bb276254f6749cf Mon Sep 17 00:00:00 2001 From: Nirmoy Das Date: Wed, 17 Dec 2025 07:45:28 -0800 -Subject: [PATCH 173/467] UPSTREAM: PCI: Add ASPEED vendor ID to pci_ids.h +Subject: [RUYI PATCH] UPSTREAM: PCI: Add ASPEED vendor ID to pci_ids.h Add PCI_VENDOR_ID_ASPEED to the shared pci_ids.h header and remove the duplicate local definition from ehci-pci.c. diff --git a/SPECS/linux-lts-kmhv2/0174-UPSTREAM-PCI-Add-PCI_BRIDGE_NO_ALIAS-quirk-for-ASPEE.patch b/SPECS/linux-lts-kmhv2/0171-UPSTREAM-PCI-Add-PCI_BRIDGE_NO_ALIAS-quirk-for-ASPEE.patch similarity index 95% rename from SPECS/linux-lts-kmhv2/0174-UPSTREAM-PCI-Add-PCI_BRIDGE_NO_ALIAS-quirk-for-ASPEE.patch rename to SPECS/linux-lts-kmhv2/0171-UPSTREAM-PCI-Add-PCI_BRIDGE_NO_ALIAS-quirk-for-ASPEE.patch index 5c4614e51e..dba743541d 100644 --- a/SPECS/linux-lts-kmhv2/0174-UPSTREAM-PCI-Add-PCI_BRIDGE_NO_ALIAS-quirk-for-ASPEE.patch +++ b/SPECS/linux-lts-kmhv2/0171-UPSTREAM-PCI-Add-PCI_BRIDGE_NO_ALIAS-quirk-for-ASPEE.patch @@ -1,8 +1,8 @@ -From 12f86c495ee4dc708c6b0b172a7518faf4303656 Mon Sep 17 00:00:00 2001 +From ebc23bfadb5fbe0d0f28b65fd9c6837238e6e941 Mon Sep 17 00:00:00 2001 From: Nirmoy Das Date: Wed, 17 Dec 2025 07:45:29 -0800 -Subject: [PATCH 174/467] UPSTREAM: PCI: Add PCI_BRIDGE_NO_ALIAS quirk for - ASPEED AST1150 +Subject: [RUYI PATCH] UPSTREAM: PCI: Add PCI_BRIDGE_NO_ALIAS quirk for ASPEED + AST1150 ASPEED BMC controllers have VGA and USB functions behind a PCIe-to-PCI bridge that causes them to share the same StreamID: diff --git a/SPECS/linux-lts-kmhv2/0175-UPSTREAM-riscv-patch-Avoid-early-phys_to_page.patch b/SPECS/linux-lts-kmhv2/0172-UPSTREAM-riscv-patch-Avoid-early-phys_to_page.patch similarity index 95% rename from SPECS/linux-lts-kmhv2/0175-UPSTREAM-riscv-patch-Avoid-early-phys_to_page.patch rename to SPECS/linux-lts-kmhv2/0172-UPSTREAM-riscv-patch-Avoid-early-phys_to_page.patch index df952d8560..b717a1f71f 100644 --- a/SPECS/linux-lts-kmhv2/0175-UPSTREAM-riscv-patch-Avoid-early-phys_to_page.patch +++ b/SPECS/linux-lts-kmhv2/0172-UPSTREAM-riscv-patch-Avoid-early-phys_to_page.patch @@ -1,7 +1,7 @@ -From 8118d162255f24fd2cd5dee126efaea4a5cba952 Mon Sep 17 00:00:00 2001 +From 9b54a8b4866b22ba764ced5eadb4df836758c46b Mon Sep 17 00:00:00 2001 From: Vivian Wang Date: Mon, 23 Mar 2026 17:43:47 -0600 -Subject: [PATCH 175/467] UPSTREAM: riscv: patch: Avoid early phys_to_page() +Subject: [RUYI PATCH] UPSTREAM: riscv: patch: Avoid early phys_to_page() MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit diff --git a/SPECS/linux-lts-kmhv2/0176-UPSTREAM-PCI-dwc-Fail-dw_pcie_host_init-if-dw_pcie_w.patch b/SPECS/linux-lts-kmhv2/0173-UPSTREAM-PCI-dwc-Fail-dw_pcie_host_init-if-dw_pcie_w.patch similarity index 93% rename from SPECS/linux-lts-kmhv2/0176-UPSTREAM-PCI-dwc-Fail-dw_pcie_host_init-if-dw_pcie_w.patch rename to SPECS/linux-lts-kmhv2/0173-UPSTREAM-PCI-dwc-Fail-dw_pcie_host_init-if-dw_pcie_w.patch index 1bd8a9ebb3..7274ae6b1a 100644 --- a/SPECS/linux-lts-kmhv2/0176-UPSTREAM-PCI-dwc-Fail-dw_pcie_host_init-if-dw_pcie_w.patch +++ b/SPECS/linux-lts-kmhv2/0173-UPSTREAM-PCI-dwc-Fail-dw_pcie_host_init-if-dw_pcie_w.patch @@ -1,7 +1,7 @@ -From 23cc45c1d179af7b48fdde28d5607b138fb0ca43 Mon Sep 17 00:00:00 2001 +From 6727a0a8b7add2ff9543cd2e8e0f4e29a5a9b89a Mon Sep 17 00:00:00 2001 From: Manivannan Sadhasivam Date: Tue, 20 Jan 2026 23:17:44 +0530 -Subject: [PATCH 176/467] UPSTREAM: PCI: dwc: Fail dw_pcie_host_init() if +Subject: [RUYI PATCH] UPSTREAM: PCI: dwc: Fail dw_pcie_host_init() if dw_pcie_wait_for_link() returns -ETIMEDOUT The dw_pcie_wait_for_link() API now distinguishes link failures more diff --git a/SPECS/linux-lts-kmhv2/0177-UPSTREAM-reset-spacemit-k3-Decouple-composite-reset-.patch b/SPECS/linux-lts-kmhv2/0174-UPSTREAM-reset-spacemit-k3-Decouple-composite-reset-.patch similarity index 98% rename from SPECS/linux-lts-kmhv2/0177-UPSTREAM-reset-spacemit-k3-Decouple-composite-reset-.patch rename to SPECS/linux-lts-kmhv2/0174-UPSTREAM-reset-spacemit-k3-Decouple-composite-reset-.patch index 659010a91f..1cc4f9a6b9 100644 --- a/SPECS/linux-lts-kmhv2/0177-UPSTREAM-reset-spacemit-k3-Decouple-composite-reset-.patch +++ b/SPECS/linux-lts-kmhv2/0174-UPSTREAM-reset-spacemit-k3-Decouple-composite-reset-.patch @@ -1,8 +1,8 @@ -From 760f735fd91860a199a5219ec9e84def5029f0c6 Mon Sep 17 00:00:00 2001 +From a21ca9741cdf655d806097dd0285fc759b7550dd Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Fri, 20 Mar 2026 11:06:17 +0000 -Subject: [PATCH 177/467] UPSTREAM: reset: spacemit: k3: Decouple composite - reset lines +Subject: [RUYI PATCH] UPSTREAM: reset: spacemit: k3: Decouple composite reset + lines Instead of grouping several different reset lines into one composite reset, decouple them to individual ones which make it more aligned diff --git a/SPECS/linux-lts-kmhv2/0178-UPSTREAM-rust-clk-implement-Send-and-Sync.patch b/SPECS/linux-lts-kmhv2/0175-UPSTREAM-rust-clk-implement-Send-and-Sync.patch similarity index 92% rename from SPECS/linux-lts-kmhv2/0178-UPSTREAM-rust-clk-implement-Send-and-Sync.patch rename to SPECS/linux-lts-kmhv2/0175-UPSTREAM-rust-clk-implement-Send-and-Sync.patch index 1806623564..f22e81a3cb 100644 --- a/SPECS/linux-lts-kmhv2/0178-UPSTREAM-rust-clk-implement-Send-and-Sync.patch +++ b/SPECS/linux-lts-kmhv2/0175-UPSTREAM-rust-clk-implement-Send-and-Sync.patch @@ -1,7 +1,7 @@ -From 1642a007a0a6fae07e706694a837771d62f6a5fd Mon Sep 17 00:00:00 2001 +From 36c2fd3cabf5ec62efb4f91282e7b4afd1034963 Mon Sep 17 00:00:00 2001 From: Alice Ryhl Date: Mon, 23 Feb 2026 10:08:25 +0000 -Subject: [PATCH 178/467] UPSTREAM: rust: clk: implement Send and Sync +Subject: [RUYI PATCH] UPSTREAM: rust: clk: implement Send and Sync These traits are required for drivers to embed the Clk type in their own data structures because driver data structures are usually required to diff --git a/SPECS/linux-lts-kmhv2/0179-UPSTREAM-tyr-remove-impl-Send-Sync-for-TyrData.patch b/SPECS/linux-lts-kmhv2/0176-UPSTREAM-tyr-remove-impl-Send-Sync-for-TyrData.patch similarity index 93% rename from SPECS/linux-lts-kmhv2/0179-UPSTREAM-tyr-remove-impl-Send-Sync-for-TyrData.patch rename to SPECS/linux-lts-kmhv2/0176-UPSTREAM-tyr-remove-impl-Send-Sync-for-TyrData.patch index 8176cbc5dd..de7554e891 100644 --- a/SPECS/linux-lts-kmhv2/0179-UPSTREAM-tyr-remove-impl-Send-Sync-for-TyrData.patch +++ b/SPECS/linux-lts-kmhv2/0176-UPSTREAM-tyr-remove-impl-Send-Sync-for-TyrData.patch @@ -1,7 +1,7 @@ -From 98d1f3807843d1600d9c0fed44a0c1cfeee7e373 Mon Sep 17 00:00:00 2001 +From 83865522aaf93ce13b4bf32daff035cc0ffb1875 Mon Sep 17 00:00:00 2001 From: Alice Ryhl Date: Mon, 23 Feb 2026 10:08:26 +0000 -Subject: [PATCH 179/467] UPSTREAM: tyr: remove impl Send/Sync for TyrData +Subject: [RUYI PATCH] UPSTREAM: tyr: remove impl Send/Sync for TyrData Now that clk implements Send and Sync, we no longer need to manually implement these traits for TyrData. Thus remove the implementations. diff --git a/SPECS/linux-lts-kmhv2/0180-UPSTREAM-pwm-th1520-fix-CLIPPY-1-warning.patch b/SPECS/linux-lts-kmhv2/0177-UPSTREAM-pwm-th1520-fix-CLIPPY-1-warning.patch similarity index 95% rename from SPECS/linux-lts-kmhv2/0180-UPSTREAM-pwm-th1520-fix-CLIPPY-1-warning.patch rename to SPECS/linux-lts-kmhv2/0177-UPSTREAM-pwm-th1520-fix-CLIPPY-1-warning.patch index bfcbe3e3d7..96d1a40105 100644 --- a/SPECS/linux-lts-kmhv2/0180-UPSTREAM-pwm-th1520-fix-CLIPPY-1-warning.patch +++ b/SPECS/linux-lts-kmhv2/0177-UPSTREAM-pwm-th1520-fix-CLIPPY-1-warning.patch @@ -1,7 +1,7 @@ -From 9ca8e005adc28dc70cd2159ee5e1b4357360f8e3 Mon Sep 17 00:00:00 2001 +From 196de3c6b4e75a74ef0157f0c59ca867711beb1f Mon Sep 17 00:00:00 2001 From: Miguel Ojeda Date: Wed, 21 Jan 2026 19:37:19 +0100 -Subject: [PATCH 180/467] UPSTREAM: pwm: th1520: fix `CLIPPY=1` warning +Subject: [RUYI PATCH] UPSTREAM: pwm: th1520: fix `CLIPPY=1` warning MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit diff --git a/SPECS/linux-lts-kmhv2/0181-UPSTREAM-pwm-th1520-remove-impl-Send-Sync-for-Th1520.patch b/SPECS/linux-lts-kmhv2/0178-UPSTREAM-pwm-th1520-remove-impl-Send-Sync-for-Th1520.patch similarity index 93% rename from SPECS/linux-lts-kmhv2/0181-UPSTREAM-pwm-th1520-remove-impl-Send-Sync-for-Th1520.patch rename to SPECS/linux-lts-kmhv2/0178-UPSTREAM-pwm-th1520-remove-impl-Send-Sync-for-Th1520.patch index 90f301730b..bfdd63b39b 100644 --- a/SPECS/linux-lts-kmhv2/0181-UPSTREAM-pwm-th1520-remove-impl-Send-Sync-for-Th1520.patch +++ b/SPECS/linux-lts-kmhv2/0178-UPSTREAM-pwm-th1520-remove-impl-Send-Sync-for-Th1520.patch @@ -1,7 +1,7 @@ -From 17144d80f2540d040b45eb32a29a9afc0d23845e Mon Sep 17 00:00:00 2001 +From b521133241a4f965f50ccf4af99769c36904d779 Mon Sep 17 00:00:00 2001 From: Alice Ryhl Date: Mon, 23 Feb 2026 10:08:27 +0000 -Subject: [PATCH 181/467] UPSTREAM: pwm: th1520: remove impl Send/Sync for +Subject: [RUYI PATCH] UPSTREAM: pwm: th1520: remove impl Send/Sync for Th1520PwmDriverData MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 diff --git a/SPECS/linux-lts-kmhv2/0182-UPSTREAM-net-spacemit-Remove-unused-buff_addr-fields.patch b/SPECS/linux-lts-kmhv2/0179-UPSTREAM-net-spacemit-Remove-unused-buff_addr-fields.patch similarity index 89% rename from SPECS/linux-lts-kmhv2/0182-UPSTREAM-net-spacemit-Remove-unused-buff_addr-fields.patch rename to SPECS/linux-lts-kmhv2/0179-UPSTREAM-net-spacemit-Remove-unused-buff_addr-fields.patch index 5b71138373..3373671d06 100644 --- a/SPECS/linux-lts-kmhv2/0182-UPSTREAM-net-spacemit-Remove-unused-buff_addr-fields.patch +++ b/SPECS/linux-lts-kmhv2/0179-UPSTREAM-net-spacemit-Remove-unused-buff_addr-fields.patch @@ -1,8 +1,7 @@ -From 4a69779f56c915bdce7bc724b34f0efd8a77f9fb Mon Sep 17 00:00:00 2001 +From 32264ffa5210859b00dbce09fa640779874438f7 Mon Sep 17 00:00:00 2001 From: Vivian Wang Date: Thu, 5 Mar 2026 15:00:29 +0800 -Subject: [PATCH 182/467] UPSTREAM: net: spacemit: Remove unused buff_addr - fields +Subject: [RUYI PATCH] UPSTREAM: net: spacemit: Remove unused buff_addr fields These were never used. Just remove them. diff --git a/SPECS/linux-lts-kmhv2/0183-UPSTREAM-dt-bindings-net-Add-support-for-Spacemit-K3.patch b/SPECS/linux-lts-kmhv2/0180-UPSTREAM-dt-bindings-net-Add-support-for-Spacemit-K3.patch similarity index 96% rename from SPECS/linux-lts-kmhv2/0183-UPSTREAM-dt-bindings-net-Add-support-for-Spacemit-K3.patch rename to SPECS/linux-lts-kmhv2/0180-UPSTREAM-dt-bindings-net-Add-support-for-Spacemit-K3.patch index db4eb1efc3..9f38d216be 100644 --- a/SPECS/linux-lts-kmhv2/0183-UPSTREAM-dt-bindings-net-Add-support-for-Spacemit-K3.patch +++ b/SPECS/linux-lts-kmhv2/0180-UPSTREAM-dt-bindings-net-Add-support-for-Spacemit-K3.patch @@ -1,8 +1,8 @@ -From 4a88a11688e5e382e88e35f9cf81a4be6943b420 Mon Sep 17 00:00:00 2001 +From c446f352ebab05c2cef0a9835bd9224e19c24ccb Mon Sep 17 00:00:00 2001 From: Inochi Amaoto Date: Mon, 16 Mar 2026 09:00:37 +0800 -Subject: [PATCH 183/467] UPSTREAM: dt-bindings: net: Add support for Spacemit - K3 dwmac +Subject: [RUYI PATCH] UPSTREAM: dt-bindings: net: Add support for Spacemit K3 + dwmac The GMAC IP on Spacemit K3 is almost a standard Synopsys DesignWare MAC (version 5.40a) with some extra clock. diff --git a/SPECS/linux-lts-kmhv2/0184-UPSTREAM-net-stmmac-platform-Add-snps-dwmac-5.40a-IP.patch b/SPECS/linux-lts-kmhv2/0181-UPSTREAM-net-stmmac-platform-Add-snps-dwmac-5.40a-IP.patch similarity index 87% rename from SPECS/linux-lts-kmhv2/0184-UPSTREAM-net-stmmac-platform-Add-snps-dwmac-5.40a-IP.patch rename to SPECS/linux-lts-kmhv2/0181-UPSTREAM-net-stmmac-platform-Add-snps-dwmac-5.40a-IP.patch index e03a1f861d..e0e422ae4b 100644 --- a/SPECS/linux-lts-kmhv2/0184-UPSTREAM-net-stmmac-platform-Add-snps-dwmac-5.40a-IP.patch +++ b/SPECS/linux-lts-kmhv2/0181-UPSTREAM-net-stmmac-platform-Add-snps-dwmac-5.40a-IP.patch @@ -1,8 +1,8 @@ -From c8782bd2669420615c2b9caaadd9a78cd7da0123 Mon Sep 17 00:00:00 2001 +From 415d3b3b2a8fe07f5d9c84225c47c6f3be8fd827 Mon Sep 17 00:00:00 2001 From: Inochi Amaoto Date: Mon, 16 Mar 2026 09:00:38 +0800 -Subject: [PATCH 184/467] UPSTREAM: net: stmmac: platform: Add snps,dwmac-5.40a - IP compatible string +Subject: [RUYI PATCH] UPSTREAM: net: stmmac: platform: Add snps,dwmac-5.40a IP + compatible string Add compatible string for 5.40a version that can avoid to define some platform data in the glue layer. diff --git a/SPECS/linux-lts-kmhv2/0185-UPSTREAM-net-stmmac-Add-glue-layer-for-Spacemit-K3-S.patch b/SPECS/linux-lts-kmhv2/0182-UPSTREAM-net-stmmac-Add-glue-layer-for-Spacemit-K3-S.patch similarity index 98% rename from SPECS/linux-lts-kmhv2/0185-UPSTREAM-net-stmmac-Add-glue-layer-for-Spacemit-K3-S.patch rename to SPECS/linux-lts-kmhv2/0182-UPSTREAM-net-stmmac-Add-glue-layer-for-Spacemit-K3-S.patch index 2bfbada31b..e3ca4ecc6c 100644 --- a/SPECS/linux-lts-kmhv2/0185-UPSTREAM-net-stmmac-Add-glue-layer-for-Spacemit-K3-S.patch +++ b/SPECS/linux-lts-kmhv2/0182-UPSTREAM-net-stmmac-Add-glue-layer-for-Spacemit-K3-S.patch @@ -1,7 +1,7 @@ -From 837416c6927afd924e7c91dccfb60253d6a9e498 Mon Sep 17 00:00:00 2001 +From 945ce43958e6a4b22a3bf632d66514c6e279d2e9 Mon Sep 17 00:00:00 2001 From: Inochi Amaoto Date: Mon, 16 Mar 2026 09:00:39 +0800 -Subject: [PATCH 185/467] UPSTREAM: net: stmmac: Add glue layer for Spacemit K3 +Subject: [RUYI PATCH] UPSTREAM: net: stmmac: Add glue layer for Spacemit K3 SoC The ethernet controller on Spacemit K3 SoC is Synopsys DesignWare diff --git a/SPECS/linux-lts-kmhv2/0186-UPSTREAM-drm-imagination-Improve-handling-of-unknown.patch b/SPECS/linux-lts-kmhv2/0183-UPSTREAM-drm-imagination-Improve-handling-of-unknown.patch similarity index 92% rename from SPECS/linux-lts-kmhv2/0186-UPSTREAM-drm-imagination-Improve-handling-of-unknown.patch rename to SPECS/linux-lts-kmhv2/0183-UPSTREAM-drm-imagination-Improve-handling-of-unknown.patch index 6e6ee0a8cc..be1102a0eb 100644 --- a/SPECS/linux-lts-kmhv2/0186-UPSTREAM-drm-imagination-Improve-handling-of-unknown.patch +++ b/SPECS/linux-lts-kmhv2/0183-UPSTREAM-drm-imagination-Improve-handling-of-unknown.patch @@ -1,8 +1,8 @@ -From 870f5224fe15bfcd81de45da48168616a0d5c1d5 Mon Sep 17 00:00:00 2001 +From eaea87333b8ad51ffef8e8e2939c8aedc0c6f5f5 Mon Sep 17 00:00:00 2001 From: Matt Coster Date: Fri, 6 Feb 2026 16:02:12 +0000 -Subject: [PATCH 186/467] UPSTREAM: drm/imagination: Improve handling of - unknown FWCCB commands +Subject: [RUYI PATCH] UPSTREAM: drm/imagination: Improve handling of unknown + FWCCB commands A couple small changes: - Validate the magic value at the head of FWCCB commands, and diff --git a/SPECS/linux-lts-kmhv2/0187-UPSTREAM-drm-imagination-Mark-FWCCB_CMD_UPDATE_STATS.patch b/SPECS/linux-lts-kmhv2/0184-UPSTREAM-drm-imagination-Mark-FWCCB_CMD_UPDATE_STATS.patch similarity index 90% rename from SPECS/linux-lts-kmhv2/0187-UPSTREAM-drm-imagination-Mark-FWCCB_CMD_UPDATE_STATS.patch rename to SPECS/linux-lts-kmhv2/0184-UPSTREAM-drm-imagination-Mark-FWCCB_CMD_UPDATE_STATS.patch index 46f5bd7d70..d0de8aa1e5 100644 --- a/SPECS/linux-lts-kmhv2/0187-UPSTREAM-drm-imagination-Mark-FWCCB_CMD_UPDATE_STATS.patch +++ b/SPECS/linux-lts-kmhv2/0184-UPSTREAM-drm-imagination-Mark-FWCCB_CMD_UPDATE_STATS.patch @@ -1,8 +1,8 @@ -From 5e86b21fc9e1bab746f921d406840979e1851e0e Mon Sep 17 00:00:00 2001 +From 74c17747b1c536e207645c2cd6bd1399b9d2ec05 Mon Sep 17 00:00:00 2001 From: Matt Coster Date: Fri, 6 Feb 2026 16:02:13 +0000 -Subject: [PATCH 187/467] UPSTREAM: drm/imagination: Mark - FWCCB_CMD_UPDATE_STATS as known +Subject: [RUYI PATCH] UPSTREAM: drm/imagination: Mark FWCCB_CMD_UPDATE_STATS + as known Suppress the "unknown type" warning when processing a FWCCB command of type CMD_UPDATE_STATS which is known but (currently) unused. diff --git a/SPECS/linux-lts-kmhv2/0188-UPSTREAM-drm-imagination-Improve-firmware-power-off-.patch b/SPECS/linux-lts-kmhv2/0185-UPSTREAM-drm-imagination-Improve-firmware-power-off-.patch similarity index 97% rename from SPECS/linux-lts-kmhv2/0188-UPSTREAM-drm-imagination-Improve-firmware-power-off-.patch rename to SPECS/linux-lts-kmhv2/0185-UPSTREAM-drm-imagination-Improve-firmware-power-off-.patch index c50be1defc..50ffd104f5 100644 --- a/SPECS/linux-lts-kmhv2/0188-UPSTREAM-drm-imagination-Improve-firmware-power-off-.patch +++ b/SPECS/linux-lts-kmhv2/0185-UPSTREAM-drm-imagination-Improve-firmware-power-off-.patch @@ -1,7 +1,7 @@ -From c27b56fa68e0dc9f68c93f5024501db480e2a75f Mon Sep 17 00:00:00 2001 +From 913bf005c8fcc762460c945ae4c4b99a3b30e116 Mon Sep 17 00:00:00 2001 From: Brajesh Gupta Date: Fri, 13 Mar 2026 06:38:24 +0000 -Subject: [PATCH 188/467] UPSTREAM: drm/imagination: Improve firmware power off +Subject: [RUYI PATCH] UPSTREAM: drm/imagination: Improve firmware power off for layout_mars config In layout_mars HW config, Firmware MCU moved from Sidekick to new Mars diff --git a/SPECS/linux-lts-kmhv2/0189-UPSTREAM-drm-imagination-Skip-2nd-thread-DM-associat.patch b/SPECS/linux-lts-kmhv2/0186-UPSTREAM-drm-imagination-Skip-2nd-thread-DM-associat.patch similarity index 93% rename from SPECS/linux-lts-kmhv2/0189-UPSTREAM-drm-imagination-Skip-2nd-thread-DM-associat.patch rename to SPECS/linux-lts-kmhv2/0186-UPSTREAM-drm-imagination-Skip-2nd-thread-DM-associat.patch index a38db47b95..30928dca28 100644 --- a/SPECS/linux-lts-kmhv2/0189-UPSTREAM-drm-imagination-Skip-2nd-thread-DM-associat.patch +++ b/SPECS/linux-lts-kmhv2/0186-UPSTREAM-drm-imagination-Skip-2nd-thread-DM-associat.patch @@ -1,7 +1,7 @@ -From 5fa9c63710bdd821c67cb83870bd773ad29fb978 Mon Sep 17 00:00:00 2001 +From 1c4786d466085bd7d5e793bc432f8d9d77048fb9 Mon Sep 17 00:00:00 2001 From: Brajesh Gupta Date: Fri, 13 Mar 2026 06:38:25 +0000 -Subject: [PATCH 189/467] UPSTREAM: drm/imagination: Skip 2nd thread DM +Subject: [RUYI PATCH] UPSTREAM: drm/imagination: Skip 2nd thread DM association for non META Firmware Only a META firmware can have two threads. diff --git a/SPECS/linux-lts-kmhv2/0190-UPSTREAM-drm-imagination-Add-missing-rogue-context-r.patch b/SPECS/linux-lts-kmhv2/0187-UPSTREAM-drm-imagination-Add-missing-rogue-context-r.patch similarity index 93% rename from SPECS/linux-lts-kmhv2/0190-UPSTREAM-drm-imagination-Add-missing-rogue-context-r.patch rename to SPECS/linux-lts-kmhv2/0187-UPSTREAM-drm-imagination-Add-missing-rogue-context-r.patch index 47548d9611..74f768a3dd 100644 --- a/SPECS/linux-lts-kmhv2/0190-UPSTREAM-drm-imagination-Add-missing-rogue-context-r.patch +++ b/SPECS/linux-lts-kmhv2/0187-UPSTREAM-drm-imagination-Add-missing-rogue-context-r.patch @@ -1,7 +1,7 @@ -From abb8bc1c87a792d8e9fb2ec18bace8773ff287fa Mon Sep 17 00:00:00 2001 +From 2af0a8e17c8cfcbee59a2a2f6315c394a0342dc5 Mon Sep 17 00:00:00 2001 From: Alexandru Dadu Date: Mon, 23 Mar 2026 20:31:28 +0200 -Subject: [PATCH 190/467] UPSTREAM: drm/imagination: Add missing rogue context +Subject: [RUYI PATCH] UPSTREAM: drm/imagination: Add missing rogue context reset reasons Update the context reset reason enum with the missing reset reasons in diff --git a/SPECS/linux-lts-kmhv2/0191-UPSTREAM-drm-imagination-Implement-handling-of-conte.patch b/SPECS/linux-lts-kmhv2/0188-UPSTREAM-drm-imagination-Implement-handling-of-conte.patch similarity index 97% rename from SPECS/linux-lts-kmhv2/0191-UPSTREAM-drm-imagination-Implement-handling-of-conte.patch rename to SPECS/linux-lts-kmhv2/0188-UPSTREAM-drm-imagination-Implement-handling-of-conte.patch index 239f0e4598..0b560df8fc 100644 --- a/SPECS/linux-lts-kmhv2/0191-UPSTREAM-drm-imagination-Implement-handling-of-conte.patch +++ b/SPECS/linux-lts-kmhv2/0188-UPSTREAM-drm-imagination-Implement-handling-of-conte.patch @@ -1,8 +1,8 @@ -From 8b9e78b54cb9659d9121ea4bf1e3368763df3af7 Mon Sep 17 00:00:00 2001 +From 3ea351d649da005c14bb7563aff7c5a258116a18 Mon Sep 17 00:00:00 2001 From: Alexandru Dadu Date: Mon, 23 Mar 2026 20:31:30 +0200 -Subject: [PATCH 191/467] UPSTREAM: drm/imagination: Implement handling of - context reset notification +Subject: [RUYI PATCH] UPSTREAM: drm/imagination: Implement handling of context + reset notification The firmware will send the context reset notification message as part of handling hardware recovery (HWR) events deecoding the message diff --git a/SPECS/linux-lts-kmhv2/0192-UPSTREAM-dt-bindings-vendor-prefixes-add-verisilicon.patch b/SPECS/linux-lts-kmhv2/0189-UPSTREAM-dt-bindings-vendor-prefixes-add-verisilicon.patch similarity index 90% rename from SPECS/linux-lts-kmhv2/0192-UPSTREAM-dt-bindings-vendor-prefixes-add-verisilicon.patch rename to SPECS/linux-lts-kmhv2/0189-UPSTREAM-dt-bindings-vendor-prefixes-add-verisilicon.patch index feb6510c1b..f7d478ada1 100644 --- a/SPECS/linux-lts-kmhv2/0192-UPSTREAM-dt-bindings-vendor-prefixes-add-verisilicon.patch +++ b/SPECS/linux-lts-kmhv2/0189-UPSTREAM-dt-bindings-vendor-prefixes-add-verisilicon.patch @@ -1,8 +1,7 @@ -From 34a1f2a285caa0d97a9ec22b7fdad41bc44c6a59 Mon Sep 17 00:00:00 2001 +From e88d780551651b13977fcb9a0fc500f0edc4ec8d Mon Sep 17 00:00:00 2001 From: Icenowy Zheng Date: Thu, 29 Jan 2026 10:39:15 +0800 -Subject: [PATCH 192/467] UPSTREAM: dt-bindings: vendor-prefixes: add - verisilicon +Subject: [RUYI PATCH] UPSTREAM: dt-bindings: vendor-prefixes: add verisilicon VeriSilicon is a Silicon IP vendor, which is the current owner of Vivante series video-related IPs and Hantro series video codec IPs. diff --git a/SPECS/linux-lts-kmhv2/0193-UPSTREAM-dt-bindings-display-add-verisilicon-dc.patch b/SPECS/linux-lts-kmhv2/0190-UPSTREAM-dt-bindings-display-add-verisilicon-dc.patch similarity index 96% rename from SPECS/linux-lts-kmhv2/0193-UPSTREAM-dt-bindings-display-add-verisilicon-dc.patch rename to SPECS/linux-lts-kmhv2/0190-UPSTREAM-dt-bindings-display-add-verisilicon-dc.patch index aa338ea8fe..3ab06308e6 100644 --- a/SPECS/linux-lts-kmhv2/0193-UPSTREAM-dt-bindings-display-add-verisilicon-dc.patch +++ b/SPECS/linux-lts-kmhv2/0190-UPSTREAM-dt-bindings-display-add-verisilicon-dc.patch @@ -1,7 +1,7 @@ -From 0ed3496b3f01c4dd2f8e63571a0b1aaddeb71419 Mon Sep 17 00:00:00 2001 +From 0097108abfd8e7e0526f283feef46f9ff85d3019 Mon Sep 17 00:00:00 2001 From: Icenowy Zheng Date: Thu, 29 Jan 2026 10:39:16 +0800 -Subject: [PATCH 193/467] UPSTREAM: dt-bindings: display: add verisilicon,dc +Subject: [RUYI PATCH] UPSTREAM: dt-bindings: display: add verisilicon,dc Verisilicon has a series of display controllers prefixed with DC and with self-identification facility like their GC series GPUs. diff --git a/SPECS/linux-lts-kmhv2/0194-UPSTREAM-drm-verisilicon-add-a-driver-for-Verisilico.patch b/SPECS/linux-lts-kmhv2/0191-UPSTREAM-drm-verisilicon-add-a-driver-for-Verisilico.patch similarity index 99% rename from SPECS/linux-lts-kmhv2/0194-UPSTREAM-drm-verisilicon-add-a-driver-for-Verisilico.patch rename to SPECS/linux-lts-kmhv2/0191-UPSTREAM-drm-verisilicon-add-a-driver-for-Verisilico.patch index 8afe0ebfca..f6b7875e3a 100644 --- a/SPECS/linux-lts-kmhv2/0194-UPSTREAM-drm-verisilicon-add-a-driver-for-Verisilico.patch +++ b/SPECS/linux-lts-kmhv2/0191-UPSTREAM-drm-verisilicon-add-a-driver-for-Verisilico.patch @@ -1,8 +1,8 @@ -From 8c4bdd8a532c94e0c03dff0c3191f51e6d57c008 Mon Sep 17 00:00:00 2001 +From 6b2f35b64e7c0486c46921e2bae819b08dc83a72 Mon Sep 17 00:00:00 2001 From: Icenowy Zheng Date: Thu, 29 Jan 2026 10:39:17 +0800 -Subject: [PATCH 194/467] UPSTREAM: drm: verisilicon: add a driver for - Verisilicon display controllers +Subject: [RUYI PATCH] UPSTREAM: drm: verisilicon: add a driver for Verisilicon + display controllers This is a from-scratch driver targeting Verisilicon DC-series display controllers, which feature self-identification functionality like their diff --git a/SPECS/linux-lts-kmhv2/0195-UPSTREAM-dt-bindings-display-bridge-add-binding-for-.patch b/SPECS/linux-lts-kmhv2/0192-UPSTREAM-dt-bindings-display-bridge-add-binding-for-.patch similarity index 95% rename from SPECS/linux-lts-kmhv2/0195-UPSTREAM-dt-bindings-display-bridge-add-binding-for-.patch rename to SPECS/linux-lts-kmhv2/0192-UPSTREAM-dt-bindings-display-bridge-add-binding-for-.patch index 31987352cf..641e31a30d 100644 --- a/SPECS/linux-lts-kmhv2/0195-UPSTREAM-dt-bindings-display-bridge-add-binding-for-.patch +++ b/SPECS/linux-lts-kmhv2/0192-UPSTREAM-dt-bindings-display-bridge-add-binding-for-.patch @@ -1,8 +1,8 @@ -From ee91943024b041838f8d48b5875cd8083a8d0945 Mon Sep 17 00:00:00 2001 +From f3c9d099748a9f334530dc8d3b829667282a09e2 Mon Sep 17 00:00:00 2001 From: Icenowy Zheng Date: Thu, 29 Jan 2026 10:39:18 +0800 -Subject: [PATCH 195/467] UPSTREAM: dt-bindings: display/bridge: add binding - for TH1520 HDMI controller +Subject: [RUYI PATCH] UPSTREAM: dt-bindings: display/bridge: add binding for + TH1520 HDMI controller T-Head TH1520 SoC contains a Synopsys DesignWare HDMI controller paired with DesignWare HDMI PHY, with an extra clock gate for HDMI pixel clock diff --git a/SPECS/linux-lts-kmhv2/0196-UPSTREAM-drm-bridge-add-a-driver-for-T-Head-TH1520-H.patch b/SPECS/linux-lts-kmhv2/0193-UPSTREAM-drm-bridge-add-a-driver-for-T-Head-TH1520-H.patch similarity index 98% rename from SPECS/linux-lts-kmhv2/0196-UPSTREAM-drm-bridge-add-a-driver-for-T-Head-TH1520-H.patch rename to SPECS/linux-lts-kmhv2/0193-UPSTREAM-drm-bridge-add-a-driver-for-T-Head-TH1520-H.patch index d96c026cbf..cf9d00a163 100644 --- a/SPECS/linux-lts-kmhv2/0196-UPSTREAM-drm-bridge-add-a-driver-for-T-Head-TH1520-H.patch +++ b/SPECS/linux-lts-kmhv2/0193-UPSTREAM-drm-bridge-add-a-driver-for-T-Head-TH1520-H.patch @@ -1,7 +1,7 @@ -From 93ee7e5ff8c14262f2edbaebf59e12ec50ebeac0 Mon Sep 17 00:00:00 2001 +From 58ad5626c4911a37f2e711c60ae825d55251511b Mon Sep 17 00:00:00 2001 From: Icenowy Zheng Date: Thu, 29 Jan 2026 10:39:19 +0800 -Subject: [PATCH 196/467] UPSTREAM: drm/bridge: add a driver for T-Head TH1520 +Subject: [RUYI PATCH] UPSTREAM: drm/bridge: add a driver for T-Head TH1520 HDMI controller T-Head TH1520 SoC contains a Synopsys DesignWare HDMI controller (paired diff --git a/SPECS/linux-lts-kmhv2/0197-UPSTREAM-dt-bindings-mfd-spacemit-p1-Add-individual-.patch b/SPECS/linux-lts-kmhv2/0194-UPSTREAM-dt-bindings-mfd-spacemit-p1-Add-individual-.patch similarity index 94% rename from SPECS/linux-lts-kmhv2/0197-UPSTREAM-dt-bindings-mfd-spacemit-p1-Add-individual-.patch rename to SPECS/linux-lts-kmhv2/0194-UPSTREAM-dt-bindings-mfd-spacemit-p1-Add-individual-.patch index fd657fca32..6f796d9cbc 100644 --- a/SPECS/linux-lts-kmhv2/0197-UPSTREAM-dt-bindings-mfd-spacemit-p1-Add-individual-.patch +++ b/SPECS/linux-lts-kmhv2/0194-UPSTREAM-dt-bindings-mfd-spacemit-p1-Add-individual-.patch @@ -1,8 +1,8 @@ -From d3f0701d0caf105e3dca7e90f7611eb6111ae3e5 Mon Sep 17 00:00:00 2001 +From ea4a0e0935587b36a14380693c67c8cd0a9b30f1 Mon Sep 17 00:00:00 2001 From: Guodong Xu Date: Fri, 6 Feb 2026 10:32:02 +0800 -Subject: [PATCH 197/467] UPSTREAM: dt-bindings: mfd: spacemit,p1: Add - individual regulator supply properties +Subject: [RUYI PATCH] UPSTREAM: dt-bindings: mfd: spacemit,p1: Add individual + regulator supply properties Add supply properties that match the P1 PMIC's actual hardware topology where each buck converter has its own VIN pin and LDO groups share diff --git a/SPECS/linux-lts-kmhv2/0198-UPSTREAM-regulator-spacemit-p1-Update-supply-names.patch b/SPECS/linux-lts-kmhv2/0195-UPSTREAM-regulator-spacemit-p1-Update-supply-names.patch similarity index 94% rename from SPECS/linux-lts-kmhv2/0198-UPSTREAM-regulator-spacemit-p1-Update-supply-names.patch rename to SPECS/linux-lts-kmhv2/0195-UPSTREAM-regulator-spacemit-p1-Update-supply-names.patch index 369110a4e9..c1c7ac83ec 100644 --- a/SPECS/linux-lts-kmhv2/0198-UPSTREAM-regulator-spacemit-p1-Update-supply-names.patch +++ b/SPECS/linux-lts-kmhv2/0195-UPSTREAM-regulator-spacemit-p1-Update-supply-names.patch @@ -1,7 +1,7 @@ -From 9bd75aaa59fb6ab1d9e1b11f9f2ad77f1658b9a4 Mon Sep 17 00:00:00 2001 +From 42b7ba3e5273fbdc3ca27c1fb551be6f0eccab97 Mon Sep 17 00:00:00 2001 From: Guodong Xu Date: Fri, 6 Feb 2026 10:32:03 +0800 -Subject: [PATCH 198/467] UPSTREAM: regulator: spacemit-p1: Update supply names +Subject: [RUYI PATCH] UPSTREAM: regulator: spacemit-p1: Update supply names Update supply names to match the P1 PMIC's actual hardware pinout where each buck has an individual VIN pin (vin1-vin6) and LDO groups have diff --git a/SPECS/linux-lts-kmhv2/0199-UPSTREAM-mmc-sdhci-of-k1-add-reset-support.patch b/SPECS/linux-lts-kmhv2/0196-UPSTREAM-mmc-sdhci-of-k1-add-reset-support.patch similarity index 93% rename from SPECS/linux-lts-kmhv2/0199-UPSTREAM-mmc-sdhci-of-k1-add-reset-support.patch rename to SPECS/linux-lts-kmhv2/0196-UPSTREAM-mmc-sdhci-of-k1-add-reset-support.patch index ac158c2c11..7a0dd9d20a 100644 --- a/SPECS/linux-lts-kmhv2/0199-UPSTREAM-mmc-sdhci-of-k1-add-reset-support.patch +++ b/SPECS/linux-lts-kmhv2/0196-UPSTREAM-mmc-sdhci-of-k1-add-reset-support.patch @@ -1,7 +1,7 @@ -From 2d76e75bca7e55bd00d4506359572a867aa1b303 Mon Sep 17 00:00:00 2001 +From a16a762a96646468762203524a13847057523875 Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Tue, 23 Dec 2025 10:24:50 +0800 -Subject: [PATCH 199/467] UPSTREAM: mmc: sdhci-of-k1: add reset support +Subject: [RUYI PATCH] UPSTREAM: mmc: sdhci-of-k1: add reset support The SDHCI controller of SpacemiT K1 SoC requires two resets, add support to explicitly request the reset line and deassert during diff --git a/SPECS/linux-lts-kmhv2/0200-UPSTREAM-dt-bindings-mmc-spacemit-sdhci-add-support-.patch b/SPECS/linux-lts-kmhv2/0197-UPSTREAM-dt-bindings-mmc-spacemit-sdhci-add-support-.patch similarity index 87% rename from SPECS/linux-lts-kmhv2/0200-UPSTREAM-dt-bindings-mmc-spacemit-sdhci-add-support-.patch rename to SPECS/linux-lts-kmhv2/0197-UPSTREAM-dt-bindings-mmc-spacemit-sdhci-add-support-.patch index ab4886f545..271bd70fc5 100644 --- a/SPECS/linux-lts-kmhv2/0200-UPSTREAM-dt-bindings-mmc-spacemit-sdhci-add-support-.patch +++ b/SPECS/linux-lts-kmhv2/0197-UPSTREAM-dt-bindings-mmc-spacemit-sdhci-add-support-.patch @@ -1,8 +1,8 @@ -From c062f31f265429d1f2fce4dfb8396648bb008bee Mon Sep 17 00:00:00 2001 +From 3661bb1bda184323b7f27ca11c4f6aa2453a891b Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Thu, 22 Jan 2026 17:37:30 +0800 -Subject: [PATCH 200/467] UPSTREAM: dt-bindings: mmc: spacemit,sdhci: add - support for K3 SoC +Subject: [RUYI PATCH] UPSTREAM: dt-bindings: mmc: spacemit,sdhci: add support + for K3 SoC The SDHCI controller found on SpacemiT K3 SoC share the same IP with K1 generation, while fixed the broken 64BIT DMA issue. Introduce a diff --git a/SPECS/linux-lts-kmhv2/0201-UPSTREAM-mmc-sdhci-of-k1-spacemit-Add-support-for-K3.patch b/SPECS/linux-lts-kmhv2/0198-UPSTREAM-mmc-sdhci-of-k1-spacemit-Add-support-for-K3.patch similarity index 93% rename from SPECS/linux-lts-kmhv2/0201-UPSTREAM-mmc-sdhci-of-k1-spacemit-Add-support-for-K3.patch rename to SPECS/linux-lts-kmhv2/0198-UPSTREAM-mmc-sdhci-of-k1-spacemit-Add-support-for-K3.patch index 8b39d10761..067922ab83 100644 --- a/SPECS/linux-lts-kmhv2/0201-UPSTREAM-mmc-sdhci-of-k1-spacemit-Add-support-for-K3.patch +++ b/SPECS/linux-lts-kmhv2/0198-UPSTREAM-mmc-sdhci-of-k1-spacemit-Add-support-for-K3.patch @@ -1,8 +1,8 @@ -From bf01dbbc2a84e73472ec8407e03ad78c12a261d7 Mon Sep 17 00:00:00 2001 +From aef7fb87d55efc5bff2a628b6196c36b7eaf3e12 Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Thu, 22 Jan 2026 17:37:31 +0800 -Subject: [PATCH 201/467] UPSTREAM: mmc: sdhci-of-k1: spacemit: Add support for - K3 SoC +Subject: [RUYI PATCH] UPSTREAM: mmc: sdhci-of-k1: spacemit: Add support for K3 + SoC The SDHCI controller found on SpacemiT K3 SoC share the same IP with K1 generation and introduce a compatible data to denote the change that broken diff --git a/SPECS/linux-lts-kmhv2/0202-UPSTREAM-PCI-cadence-Add-flags-for-disabling-ASPM-ca.patch b/SPECS/linux-lts-kmhv2/0199-UPSTREAM-PCI-cadence-Add-flags-for-disabling-ASPM-ca.patch similarity index 95% rename from SPECS/linux-lts-kmhv2/0202-UPSTREAM-PCI-cadence-Add-flags-for-disabling-ASPM-ca.patch rename to SPECS/linux-lts-kmhv2/0199-UPSTREAM-PCI-cadence-Add-flags-for-disabling-ASPM-ca.patch index f4079da8cb..bd29a279bd 100644 --- a/SPECS/linux-lts-kmhv2/0202-UPSTREAM-PCI-cadence-Add-flags-for-disabling-ASPM-ca.patch +++ b/SPECS/linux-lts-kmhv2/0199-UPSTREAM-PCI-cadence-Add-flags-for-disabling-ASPM-ca.patch @@ -1,7 +1,7 @@ -From 666104d46e408b7abf14799de82ab3cefcdf0964 Mon Sep 17 00:00:00 2001 +From 71fc35504a003f43684f36757050f5c7e1ca7c23 Mon Sep 17 00:00:00 2001 From: Yao Zi Date: Sun, 5 Apr 2026 15:41:53 +0000 -Subject: [PATCH 202/467] UPSTREAM: PCI: cadence: Add flags for disabling ASPM +Subject: [RUYI PATCH] UPSTREAM: PCI: cadence: Add flags for disabling ASPM capability for broken Root Ports Add flags for disabling the ASPM L0s/L1 capability for broken Root Ports diff --git a/SPECS/linux-lts-kmhv2/0203-UPSTREAM-PCI-sg2042-Avoid-L0s-and-L1-on-Sophgo-2042-.patch b/SPECS/linux-lts-kmhv2/0200-UPSTREAM-PCI-sg2042-Avoid-L0s-and-L1-on-Sophgo-2042-.patch similarity index 91% rename from SPECS/linux-lts-kmhv2/0203-UPSTREAM-PCI-sg2042-Avoid-L0s-and-L1-on-Sophgo-2042-.patch rename to SPECS/linux-lts-kmhv2/0200-UPSTREAM-PCI-sg2042-Avoid-L0s-and-L1-on-Sophgo-2042-.patch index 9fcf206ede..863472668a 100644 --- a/SPECS/linux-lts-kmhv2/0203-UPSTREAM-PCI-sg2042-Avoid-L0s-and-L1-on-Sophgo-2042-.patch +++ b/SPECS/linux-lts-kmhv2/0200-UPSTREAM-PCI-sg2042-Avoid-L0s-and-L1-on-Sophgo-2042-.patch @@ -1,8 +1,8 @@ -From 97c5f5dec6275526d950871d6697610efd8bbfc9 Mon Sep 17 00:00:00 2001 +From b79c6a8e8737f691e21ed1f9492ed9784de03550 Mon Sep 17 00:00:00 2001 From: Yao Zi Date: Sun, 5 Apr 2026 15:41:54 +0000 -Subject: [PATCH 203/467] UPSTREAM: PCI: sg2042: Avoid L0s and L1 on Sophgo - 2042 PCIe Root Ports +Subject: [RUYI PATCH] UPSTREAM: PCI: sg2042: Avoid L0s and L1 on Sophgo 2042 + PCIe Root Ports Since commit f3ac2ff14834 ("PCI/ASPM: Enable all ClockPM and ASPM states for devicetree platforms") force enables ASPM on all device tree platforms, diff --git a/SPECS/linux-lts-kmhv2/0204-UPSTREAM-dt-bindings-hwmon-moortec-mr75203-adapt-mul.patch b/SPECS/linux-lts-kmhv2/0201-UPSTREAM-dt-bindings-hwmon-moortec-mr75203-adapt-mul.patch similarity index 93% rename from SPECS/linux-lts-kmhv2/0204-UPSTREAM-dt-bindings-hwmon-moortec-mr75203-adapt-mul.patch rename to SPECS/linux-lts-kmhv2/0201-UPSTREAM-dt-bindings-hwmon-moortec-mr75203-adapt-mul.patch index 2ddec8736f..45d9a8f9de 100644 --- a/SPECS/linux-lts-kmhv2/0204-UPSTREAM-dt-bindings-hwmon-moortec-mr75203-adapt-mul.patch +++ b/SPECS/linux-lts-kmhv2/0201-UPSTREAM-dt-bindings-hwmon-moortec-mr75203-adapt-mul.patch @@ -1,7 +1,7 @@ -From 9fa99cb8701fa1bb6152da334dca564f23e9f456 Mon Sep 17 00:00:00 2001 +From e8797e3dcfc25acbd3f8c8b268ec9d8bd1c28295 Mon Sep 17 00:00:00 2001 From: Icenowy Zheng Date: Tue, 10 Mar 2026 00:24:56 +0800 -Subject: [PATCH 204/467] UPSTREAM: dt-bindings: hwmon: moortec,mr75203: adapt +Subject: [RUYI PATCH] UPSTREAM: dt-bindings: hwmon: moortec,mr75203: adapt multipleOf for T-Head TH1520 The G and J coefficients provided by T-Head TH1520 manual (which calls diff --git a/SPECS/linux-lts-kmhv2/0205-UPSTREAM-drm-imagination-Disable-interrupts-before-s.patch b/SPECS/linux-lts-kmhv2/0202-UPSTREAM-drm-imagination-Disable-interrupts-before-s.patch similarity index 95% rename from SPECS/linux-lts-kmhv2/0205-UPSTREAM-drm-imagination-Disable-interrupts-before-s.patch rename to SPECS/linux-lts-kmhv2/0202-UPSTREAM-drm-imagination-Disable-interrupts-before-s.patch index eb78cafb3a..3011e77bd5 100644 --- a/SPECS/linux-lts-kmhv2/0205-UPSTREAM-drm-imagination-Disable-interrupts-before-s.patch +++ b/SPECS/linux-lts-kmhv2/0202-UPSTREAM-drm-imagination-Disable-interrupts-before-s.patch @@ -1,7 +1,7 @@ -From 2575af4e9ef38dd97f241b4be5afd8a68de35365 Mon Sep 17 00:00:00 2001 +From 42218f60a7def59ca6f9513365c5aed9fb77a124 Mon Sep 17 00:00:00 2001 From: Alessio Belle Date: Tue, 10 Mar 2026 11:41:12 +0000 -Subject: [PATCH 205/467] UPSTREAM: drm/imagination: Disable interrupts before +Subject: [RUYI PATCH] UPSTREAM: drm/imagination: Disable interrupts before suspending the GPU This is an additional safety layer to ensure no accesses to the GPU diff --git a/SPECS/linux-lts-kmhv2/0206-UPSTREAM-riscv-dts-thead-add-DPU-and-HDMI-device-tre.patch b/SPECS/linux-lts-kmhv2/0203-UPSTREAM-riscv-dts-thead-add-DPU-and-HDMI-device-tre.patch similarity index 95% rename from SPECS/linux-lts-kmhv2/0206-UPSTREAM-riscv-dts-thead-add-DPU-and-HDMI-device-tre.patch rename to SPECS/linux-lts-kmhv2/0203-UPSTREAM-riscv-dts-thead-add-DPU-and-HDMI-device-tre.patch index 279438ed87..97daa0a8b0 100644 --- a/SPECS/linux-lts-kmhv2/0206-UPSTREAM-riscv-dts-thead-add-DPU-and-HDMI-device-tre.patch +++ b/SPECS/linux-lts-kmhv2/0203-UPSTREAM-riscv-dts-thead-add-DPU-and-HDMI-device-tre.patch @@ -1,7 +1,7 @@ -From 889a08c4fbd66cd2cccce2fe6c281d18a78edf6f Mon Sep 17 00:00:00 2001 +From 9714f16b48717549d0332bbcd37661290bf0a765 Mon Sep 17 00:00:00 2001 From: Icenowy Zheng Date: Thu, 29 Jan 2026 10:39:20 +0800 -Subject: [PATCH 206/467] UPSTREAM: riscv: dts: thead: add DPU and HDMI device +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: thead: add DPU and HDMI device tree nodes T-Head TH1520 SoC contains a Verisilicon DC8200 display controller diff --git a/SPECS/linux-lts-kmhv2/0207-UPSTREAM-riscv-dts-thead-lichee-pi-4a-enable-HDMI.patch b/SPECS/linux-lts-kmhv2/0204-UPSTREAM-riscv-dts-thead-lichee-pi-4a-enable-HDMI.patch similarity index 92% rename from SPECS/linux-lts-kmhv2/0207-UPSTREAM-riscv-dts-thead-lichee-pi-4a-enable-HDMI.patch rename to SPECS/linux-lts-kmhv2/0204-UPSTREAM-riscv-dts-thead-lichee-pi-4a-enable-HDMI.patch index e9c9006b5c..df92d3aeea 100644 --- a/SPECS/linux-lts-kmhv2/0207-UPSTREAM-riscv-dts-thead-lichee-pi-4a-enable-HDMI.patch +++ b/SPECS/linux-lts-kmhv2/0204-UPSTREAM-riscv-dts-thead-lichee-pi-4a-enable-HDMI.patch @@ -1,8 +1,7 @@ -From efdb5c77db11f97a43075c7a399a52fb4beeadf1 Mon Sep 17 00:00:00 2001 +From 4633a7a2c68426c3f3fc28382fd6cba7df6134d8 Mon Sep 17 00:00:00 2001 From: Icenowy Zheng Date: Thu, 29 Jan 2026 10:39:21 +0800 -Subject: [PATCH 207/467] UPSTREAM: riscv: dts: thead: lichee-pi-4a: enable - HDMI +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: thead: lichee-pi-4a: enable HDMI Lichee Pi 4A board features a HDMI Type-A connector connected to the HDMI TX controller of TH1520 SoC. diff --git a/SPECS/linux-lts-kmhv2/0208-UPSTREAM-riscv-dts-thead-th1520-add-coefficients-to-.patch b/SPECS/linux-lts-kmhv2/0205-UPSTREAM-riscv-dts-thead-th1520-add-coefficients-to-.patch similarity index 88% rename from SPECS/linux-lts-kmhv2/0208-UPSTREAM-riscv-dts-thead-th1520-add-coefficients-to-.patch rename to SPECS/linux-lts-kmhv2/0205-UPSTREAM-riscv-dts-thead-th1520-add-coefficients-to-.patch index 4ccee80d92..dfee292fb6 100644 --- a/SPECS/linux-lts-kmhv2/0208-UPSTREAM-riscv-dts-thead-th1520-add-coefficients-to-.patch +++ b/SPECS/linux-lts-kmhv2/0205-UPSTREAM-riscv-dts-thead-th1520-add-coefficients-to-.patch @@ -1,8 +1,8 @@ -From 9e80c22940c9b510b2ee11be7109bdff5e262886 Mon Sep 17 00:00:00 2001 +From 00020f3b46c3943b6ce714ac17de5fd1573b399b Mon Sep 17 00:00:00 2001 From: Icenowy Zheng Date: Tue, 10 Mar 2026 00:24:57 +0800 -Subject: [PATCH 208/467] UPSTREAM: riscv: dts: thead: th1520: add coefficients - to the PVT node +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: thead: th1520: add coefficients to + the PVT node The manual of TH1520 contains a set of coefficients a little different to the driver default ones. diff --git a/SPECS/linux-lts-kmhv2/0209-UPSTREAM-riscv-dts-thead-beaglev-ahead-enable-HDMI-o.patch b/SPECS/linux-lts-kmhv2/0206-UPSTREAM-riscv-dts-thead-beaglev-ahead-enable-HDMI-o.patch similarity index 90% rename from SPECS/linux-lts-kmhv2/0209-UPSTREAM-riscv-dts-thead-beaglev-ahead-enable-HDMI-o.patch rename to SPECS/linux-lts-kmhv2/0206-UPSTREAM-riscv-dts-thead-beaglev-ahead-enable-HDMI-o.patch index 58b7193f04..03da857375 100644 --- a/SPECS/linux-lts-kmhv2/0209-UPSTREAM-riscv-dts-thead-beaglev-ahead-enable-HDMI-o.patch +++ b/SPECS/linux-lts-kmhv2/0206-UPSTREAM-riscv-dts-thead-beaglev-ahead-enable-HDMI-o.patch @@ -1,8 +1,8 @@ -From 2c28be0f3ea2c24030f397d840f378703b680aed Mon Sep 17 00:00:00 2001 +From 1cce6a25c0cf7aab271eb21e6d8b9ed58ed13b84 Mon Sep 17 00:00:00 2001 From: Robert Mazur Date: Wed, 25 Mar 2026 09:18:59 +0100 -Subject: [PATCH 209/467] UPSTREAM: riscv: dts: thead: beaglev-ahead: enable - HDMI output +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: thead: beaglev-ahead: enable HDMI + output The BeagleV Ahead board includes a micro HDMI connector (Type-D) wired to the TH1520 SoC's HDMI transmitter. diff --git a/SPECS/linux-lts-kmhv2/0210-UPSTREAM-i2c-spacemit-move-i2c_xfer_msg.patch b/SPECS/linux-lts-kmhv2/0207-UPSTREAM-i2c-spacemit-move-i2c_xfer_msg.patch similarity index 95% rename from SPECS/linux-lts-kmhv2/0210-UPSTREAM-i2c-spacemit-move-i2c_xfer_msg.patch rename to SPECS/linux-lts-kmhv2/0207-UPSTREAM-i2c-spacemit-move-i2c_xfer_msg.patch index b96de6f772..0128ba9bc1 100644 --- a/SPECS/linux-lts-kmhv2/0210-UPSTREAM-i2c-spacemit-move-i2c_xfer_msg.patch +++ b/SPECS/linux-lts-kmhv2/0207-UPSTREAM-i2c-spacemit-move-i2c_xfer_msg.patch @@ -1,7 +1,7 @@ -From 3ceed31e1551882d64e7fd0770c15f8c1a4c15e9 Mon Sep 17 00:00:00 2001 +From d2ce0203a4d1455b03013278280f7ac698fce115 Mon Sep 17 00:00:00 2001 From: Troy Mitchell Date: Sat, 7 Feb 2026 23:08:21 +0800 -Subject: [PATCH 210/467] UPSTREAM: i2c: spacemit: move i2c_xfer_msg() +Subject: [RUYI PATCH] UPSTREAM: i2c: spacemit: move i2c_xfer_msg() The upcoming PIO support requires a wait_pio_xfer() helper, which is invoked from xfer_msg(). diff --git a/SPECS/linux-lts-kmhv2/0211-UPSTREAM-i2c-spacemit-introduce-pio-for-k1.patch b/SPECS/linux-lts-kmhv2/0208-UPSTREAM-i2c-spacemit-introduce-pio-for-k1.patch similarity index 99% rename from SPECS/linux-lts-kmhv2/0211-UPSTREAM-i2c-spacemit-introduce-pio-for-k1.patch rename to SPECS/linux-lts-kmhv2/0208-UPSTREAM-i2c-spacemit-introduce-pio-for-k1.patch index 46854f2eb4..34101370a3 100644 --- a/SPECS/linux-lts-kmhv2/0211-UPSTREAM-i2c-spacemit-introduce-pio-for-k1.patch +++ b/SPECS/linux-lts-kmhv2/0208-UPSTREAM-i2c-spacemit-introduce-pio-for-k1.patch @@ -1,7 +1,7 @@ -From 4c5b92d265c0ff7e581b5979bc668b3a0358edba Mon Sep 17 00:00:00 2001 +From 4fa4815280ddada7e960eb90a9ccccd015916c00 Mon Sep 17 00:00:00 2001 From: Troy Mitchell Date: Sat, 7 Feb 2026 23:08:22 +0800 -Subject: [PATCH 211/467] UPSTREAM: i2c: spacemit: introduce pio for k1 +Subject: [RUYI PATCH] UPSTREAM: i2c: spacemit: introduce pio for k1 This patch introduces I2C PIO functionality for the Spacemit K1 SoC, enabling the use of I2C in atomic context. diff --git a/SPECS/linux-lts-kmhv2/0212-UPSTREAM-pinctrl-spacemit-return-ENOTSUPP-for-unsupp.patch b/SPECS/linux-lts-kmhv2/0209-UPSTREAM-pinctrl-spacemit-return-ENOTSUPP-for-unsupp.patch similarity index 95% rename from SPECS/linux-lts-kmhv2/0212-UPSTREAM-pinctrl-spacemit-return-ENOTSUPP-for-unsupp.patch rename to SPECS/linux-lts-kmhv2/0209-UPSTREAM-pinctrl-spacemit-return-ENOTSUPP-for-unsupp.patch index 829d6bbcd0..d01da0caa4 100644 --- a/SPECS/linux-lts-kmhv2/0212-UPSTREAM-pinctrl-spacemit-return-ENOTSUPP-for-unsupp.patch +++ b/SPECS/linux-lts-kmhv2/0209-UPSTREAM-pinctrl-spacemit-return-ENOTSUPP-for-unsupp.patch @@ -1,7 +1,7 @@ -From b353a7aa6259753c7025aedf18b101189b01e902 Mon Sep 17 00:00:00 2001 +From 55a3d0c1bf77d828f3581b3c07e12d8a25775e1c Mon Sep 17 00:00:00 2001 From: Junhui Liu Date: Thu, 12 Mar 2026 16:42:42 +0800 -Subject: [PATCH 212/467] UPSTREAM: pinctrl: spacemit: return -ENOTSUPP for +Subject: [RUYI PATCH] UPSTREAM: pinctrl: spacemit: return -ENOTSUPP for unsupported pin configurations Return -ENOTSUPP instead of -EINVAL when encountering unsupported pin diff --git a/SPECS/linux-lts-kmhv2/0213-UPSTREAM-gpio-spacemit-k1-Add-set_config-callback-su.patch b/SPECS/linux-lts-kmhv2/0210-UPSTREAM-gpio-spacemit-k1-Add-set_config-callback-su.patch similarity index 90% rename from SPECS/linux-lts-kmhv2/0213-UPSTREAM-gpio-spacemit-k1-Add-set_config-callback-su.patch rename to SPECS/linux-lts-kmhv2/0210-UPSTREAM-gpio-spacemit-k1-Add-set_config-callback-su.patch index 94351bf0cb..5b07efea54 100644 --- a/SPECS/linux-lts-kmhv2/0213-UPSTREAM-gpio-spacemit-k1-Add-set_config-callback-su.patch +++ b/SPECS/linux-lts-kmhv2/0210-UPSTREAM-gpio-spacemit-k1-Add-set_config-callback-su.patch @@ -1,7 +1,7 @@ -From d5b0b0437eee5d56c49e36bb6f428b5171ddb716 Mon Sep 17 00:00:00 2001 +From 698e2cf6a0e40c6a445aeefa403bb4ac1b28919a Mon Sep 17 00:00:00 2001 From: Junhui Liu Date: Thu, 12 Mar 2026 16:42:43 +0800 -Subject: [PATCH 213/467] UPSTREAM: gpio: spacemit-k1: Add set_config callback +Subject: [RUYI PATCH] UPSTREAM: gpio: spacemit-k1: Add set_config callback support Assign gpiochip_generic_config() to the set_config() callback to support diff --git a/SPECS/linux-lts-kmhv2/0214-UPSTREAM-riscv-dts-spacemit-pcie-fix-missing-power-r.patch b/SPECS/linux-lts-kmhv2/0211-UPSTREAM-riscv-dts-spacemit-pcie-fix-missing-power-r.patch similarity index 89% rename from SPECS/linux-lts-kmhv2/0214-UPSTREAM-riscv-dts-spacemit-pcie-fix-missing-power-r.patch rename to SPECS/linux-lts-kmhv2/0211-UPSTREAM-riscv-dts-spacemit-pcie-fix-missing-power-r.patch index af101ace4b..e3ff5c7bb8 100644 --- a/SPECS/linux-lts-kmhv2/0214-UPSTREAM-riscv-dts-spacemit-pcie-fix-missing-power-r.patch +++ b/SPECS/linux-lts-kmhv2/0211-UPSTREAM-riscv-dts-spacemit-pcie-fix-missing-power-r.patch @@ -1,8 +1,8 @@ -From 0b209a13a933458317f10fc48bd50c2986ab96fc Mon Sep 17 00:00:00 2001 +From 8572451bc96b2e6e3f43ce554e3806a5b1c7778c Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Thu, 26 Feb 2026 08:17:55 +0000 -Subject: [PATCH 214/467] UPSTREAM: riscv: dts: spacemit: pcie: fix missing - power regulator +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: spacemit: pcie: fix missing power + regulator The PCIe port require 3.3v power regulator for device to work properly, So explicitly add it to fix the DT warning: diff --git a/SPECS/linux-lts-kmhv2/0215-UPSTREAM-riscv-dts-spacemit-Update-PMIC-supply-prope.patch b/SPECS/linux-lts-kmhv2/0212-UPSTREAM-riscv-dts-spacemit-Update-PMIC-supply-prope.patch similarity index 94% rename from SPECS/linux-lts-kmhv2/0215-UPSTREAM-riscv-dts-spacemit-Update-PMIC-supply-prope.patch rename to SPECS/linux-lts-kmhv2/0212-UPSTREAM-riscv-dts-spacemit-Update-PMIC-supply-prope.patch index 812b0f1ef8..c1a03ad44a 100644 --- a/SPECS/linux-lts-kmhv2/0215-UPSTREAM-riscv-dts-spacemit-Update-PMIC-supply-prope.patch +++ b/SPECS/linux-lts-kmhv2/0212-UPSTREAM-riscv-dts-spacemit-Update-PMIC-supply-prope.patch @@ -1,7 +1,7 @@ -From 867d1c8308a1f4fcaa14a9efca280d8e5ca431a1 Mon Sep 17 00:00:00 2001 +From d591170d2ed25e8716eb3db09e686e859c5c318b Mon Sep 17 00:00:00 2001 From: Guodong Xu Date: Fri, 6 Feb 2026 10:32:04 +0800 -Subject: [PATCH 215/467] UPSTREAM: riscv: dts: spacemit: Update PMIC supply +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: spacemit: Update PMIC supply properties for BPI-F3 and Jupiter Use per-regulator supply names in pmic "spacemit,p1" node to specify diff --git a/SPECS/linux-lts-kmhv2/0216-UPSTREAM-riscv-dts-spacemit-adapt-regulator-node-nam.patch b/SPECS/linux-lts-kmhv2/0213-UPSTREAM-riscv-dts-spacemit-adapt-regulator-node-nam.patch similarity index 95% rename from SPECS/linux-lts-kmhv2/0216-UPSTREAM-riscv-dts-spacemit-adapt-regulator-node-nam.patch rename to SPECS/linux-lts-kmhv2/0213-UPSTREAM-riscv-dts-spacemit-adapt-regulator-node-nam.patch index 0baf5e0509..2dce8101f3 100644 --- a/SPECS/linux-lts-kmhv2/0216-UPSTREAM-riscv-dts-spacemit-adapt-regulator-node-nam.patch +++ b/SPECS/linux-lts-kmhv2/0213-UPSTREAM-riscv-dts-spacemit-adapt-regulator-node-nam.patch @@ -1,7 +1,7 @@ -From 8e847600364cd4fb332c1e6d69b370eab667157b Mon Sep 17 00:00:00 2001 +From d068a8147daedba4965fc79a896ad7dcaa91b9e4 Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Thu, 26 Feb 2026 09:35:00 +0000 -Subject: [PATCH 216/467] UPSTREAM: riscv: dts: spacemit: adapt regulator node +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: spacemit: adapt regulator node name to preferred form The preferred node name for fixed-regulators has changed to pattern [1]: diff --git a/SPECS/linux-lts-kmhv2/0217-UPSTREAM-riscv-dts-spacemit-Add-linux-pci-domain-to-.patch b/SPECS/linux-lts-kmhv2/0214-UPSTREAM-riscv-dts-spacemit-Add-linux-pci-domain-to-.patch similarity index 92% rename from SPECS/linux-lts-kmhv2/0217-UPSTREAM-riscv-dts-spacemit-Add-linux-pci-domain-to-.patch rename to SPECS/linux-lts-kmhv2/0214-UPSTREAM-riscv-dts-spacemit-Add-linux-pci-domain-to-.patch index 29c5e0b70c..dd31af6364 100644 --- a/SPECS/linux-lts-kmhv2/0217-UPSTREAM-riscv-dts-spacemit-Add-linux-pci-domain-to-.patch +++ b/SPECS/linux-lts-kmhv2/0214-UPSTREAM-riscv-dts-spacemit-Add-linux-pci-domain-to-.patch @@ -1,8 +1,8 @@ -From 6763f6325a6f023a8781d9eda31e4313f90861b7 Mon Sep 17 00:00:00 2001 +From 3c942f15e5112f8554b39f1c889cb52184bd3e90 Mon Sep 17 00:00:00 2001 From: Chukun Pan Date: Mon, 9 Mar 2026 11:00:00 +0800 -Subject: [PATCH 217/467] UPSTREAM: riscv: dts: spacemit: Add - 'linux,pci-domain' to PCIe nodes for K1 +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: spacemit: Add 'linux,pci-domain' + to PCIe nodes for K1 The SpacemiT K1 SoC has 3 PCIe EP controller nodes. Add the 'linux,pci-domain' property to assign a PCI domain number to diff --git a/SPECS/linux-lts-kmhv2/0218-UPSTREAM-dt-bindings-serial-8250-spacemit-fix-clock-.patch b/SPECS/linux-lts-kmhv2/0215-UPSTREAM-dt-bindings-serial-8250-spacemit-fix-clock-.patch similarity index 89% rename from SPECS/linux-lts-kmhv2/0218-UPSTREAM-dt-bindings-serial-8250-spacemit-fix-clock-.patch rename to SPECS/linux-lts-kmhv2/0215-UPSTREAM-dt-bindings-serial-8250-spacemit-fix-clock-.patch index cbfd5a28a6..1a6351971a 100644 --- a/SPECS/linux-lts-kmhv2/0218-UPSTREAM-dt-bindings-serial-8250-spacemit-fix-clock-.patch +++ b/SPECS/linux-lts-kmhv2/0215-UPSTREAM-dt-bindings-serial-8250-spacemit-fix-clock-.patch @@ -1,8 +1,8 @@ -From 8a9141deb50f0c4e00218a10123b0b9653a96872 Mon Sep 17 00:00:00 2001 +From e6fddcb8065f3568285549e732cda7618b1e5065 Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Wed, 4 Mar 2026 07:19:39 +0000 -Subject: [PATCH 218/467] UPSTREAM: dt-bindings: serial: 8250: spacemit: fix - clock property for K3 SoC +Subject: [RUYI PATCH] UPSTREAM: dt-bindings: serial: 8250: spacemit: fix clock + property for K3 SoC The UART of SpacemiT K3 SoC has same clock property as K1 generation which request two clock sources, fix the binding otherwise will get DT check diff --git a/SPECS/linux-lts-kmhv2/0219-UPSTREAM-riscv-dts-spacemit-k3-add-clock-tree.patch b/SPECS/linux-lts-kmhv2/0216-UPSTREAM-riscv-dts-spacemit-k3-add-clock-tree.patch similarity index 96% rename from SPECS/linux-lts-kmhv2/0219-UPSTREAM-riscv-dts-spacemit-k3-add-clock-tree.patch rename to SPECS/linux-lts-kmhv2/0216-UPSTREAM-riscv-dts-spacemit-k3-add-clock-tree.patch index 08aa7a8885..d84cac3c6d 100644 --- a/SPECS/linux-lts-kmhv2/0219-UPSTREAM-riscv-dts-spacemit-k3-add-clock-tree.patch +++ b/SPECS/linux-lts-kmhv2/0216-UPSTREAM-riscv-dts-spacemit-k3-add-clock-tree.patch @@ -1,7 +1,7 @@ -From d6d720c6f2938cc35fbb2411f4bcfffe2d3210cc Mon Sep 17 00:00:00 2001 +From d685ab6d599ba502610b5f425c35683c2c838c0a Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Wed, 4 Mar 2026 07:36:42 +0000 -Subject: [PATCH 219/467] UPSTREAM: riscv: dts: spacemit: k3: add clock tree +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: spacemit: k3: add clock tree Add clock support to SpacemiT K3 SoC, the clock tree consist of several blocks which are APBC, APMU, DCIU, MPUM. diff --git a/SPECS/linux-lts-kmhv2/0220-UPSTREAM-riscv-dts-spacemit-k3-add-pinctrl-support.patch b/SPECS/linux-lts-kmhv2/0217-UPSTREAM-riscv-dts-spacemit-k3-add-pinctrl-support.patch similarity index 89% rename from SPECS/linux-lts-kmhv2/0220-UPSTREAM-riscv-dts-spacemit-k3-add-pinctrl-support.patch rename to SPECS/linux-lts-kmhv2/0217-UPSTREAM-riscv-dts-spacemit-k3-add-pinctrl-support.patch index 7467adfc98..43081756d0 100644 --- a/SPECS/linux-lts-kmhv2/0220-UPSTREAM-riscv-dts-spacemit-k3-add-pinctrl-support.patch +++ b/SPECS/linux-lts-kmhv2/0217-UPSTREAM-riscv-dts-spacemit-k3-add-pinctrl-support.patch @@ -1,8 +1,7 @@ -From b712bbdcd69a0cf77827e15a2b8d0c593a348c55 Mon Sep 17 00:00:00 2001 +From 26584036220607376da285b0c0cf42306e1dc824 Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Wed, 4 Mar 2026 07:36:43 +0000 -Subject: [PATCH 220/467] UPSTREAM: riscv: dts: spacemit: k3: add pinctrl - support +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: spacemit: k3: add pinctrl support Populate pinctrl node in Device Tree for SpacemiT K3 SoC, So devices can request pinctrl resource properly. diff --git a/SPECS/linux-lts-kmhv2/0221-UPSTREAM-riscv-dts-spacemit-k3-add-GPIO-support.patch b/SPECS/linux-lts-kmhv2/0218-UPSTREAM-riscv-dts-spacemit-k3-add-GPIO-support.patch similarity index 91% rename from SPECS/linux-lts-kmhv2/0221-UPSTREAM-riscv-dts-spacemit-k3-add-GPIO-support.patch rename to SPECS/linux-lts-kmhv2/0218-UPSTREAM-riscv-dts-spacemit-k3-add-GPIO-support.patch index 267f0b7a53..dae1e8f109 100644 --- a/SPECS/linux-lts-kmhv2/0221-UPSTREAM-riscv-dts-spacemit-k3-add-GPIO-support.patch +++ b/SPECS/linux-lts-kmhv2/0218-UPSTREAM-riscv-dts-spacemit-k3-add-GPIO-support.patch @@ -1,7 +1,7 @@ -From 42bb1ee59c5be1344c00b635eb294286c0516236 Mon Sep 17 00:00:00 2001 +From d0197dc9c7ce0b6d04f508db631f06668553d958 Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Wed, 4 Mar 2026 07:36:44 +0000 -Subject: [PATCH 221/467] UPSTREAM: riscv: dts: spacemit: k3: add GPIO support +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: spacemit: k3: add GPIO support Add GPIO node in the Device Tree, so devices are able to request GPIO resource properly. diff --git a/SPECS/linux-lts-kmhv2/0222-UPSTREAM-riscv-dts-spacemit-k3-add-full-resource-to-.patch b/SPECS/linux-lts-kmhv2/0219-UPSTREAM-riscv-dts-spacemit-k3-add-full-resource-to-.patch similarity index 97% rename from SPECS/linux-lts-kmhv2/0222-UPSTREAM-riscv-dts-spacemit-k3-add-full-resource-to-.patch rename to SPECS/linux-lts-kmhv2/0219-UPSTREAM-riscv-dts-spacemit-k3-add-full-resource-to-.patch index 5ed83a3077..581044da67 100644 --- a/SPECS/linux-lts-kmhv2/0222-UPSTREAM-riscv-dts-spacemit-k3-add-full-resource-to-.patch +++ b/SPECS/linux-lts-kmhv2/0219-UPSTREAM-riscv-dts-spacemit-k3-add-full-resource-to-.patch @@ -1,8 +1,8 @@ -From e189d040b406ed393e4e7d5bf768de16b63cdf18 Mon Sep 17 00:00:00 2001 +From 186d384a785aeb3b664585647bd06ee2009145dd Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Wed, 4 Mar 2026 07:36:45 +0000 -Subject: [PATCH 222/467] UPSTREAM: riscv: dts: spacemit: k3: add full resource - to UART +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: spacemit: k3: add full resource to + UART Previously the UART rely on external bootloader to initialize clock, pinctrl and reset, to solve this, explicitly adding those resource in diff --git a/SPECS/linux-lts-kmhv2/0223-UPSTREAM-dt-bindings-usb-dwc3-spacemit-add-support-f.patch b/SPECS/linux-lts-kmhv2/0220-UPSTREAM-dt-bindings-usb-dwc3-spacemit-add-support-f.patch similarity index 92% rename from SPECS/linux-lts-kmhv2/0223-UPSTREAM-dt-bindings-usb-dwc3-spacemit-add-support-f.patch rename to SPECS/linux-lts-kmhv2/0220-UPSTREAM-dt-bindings-usb-dwc3-spacemit-add-support-f.patch index 11ec0b2493..a15e56ca61 100644 --- a/SPECS/linux-lts-kmhv2/0223-UPSTREAM-dt-bindings-usb-dwc3-spacemit-add-support-f.patch +++ b/SPECS/linux-lts-kmhv2/0220-UPSTREAM-dt-bindings-usb-dwc3-spacemit-add-support-f.patch @@ -1,8 +1,8 @@ -From 65d15c8340d9e4aa40a623ff2449950059808d92 Mon Sep 17 00:00:00 2001 +From 8ded8df1d9dccc63760629834a87ae2c8615e042 Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Fri, 20 Mar 2026 07:15:37 +0000 -Subject: [PATCH 223/467] UPSTREAM: dt-bindings: usb: dwc3: spacemit: add - support for K3 SoC +Subject: [RUYI PATCH] UPSTREAM: dt-bindings: usb: dwc3: spacemit: add support + for K3 SoC Add compatible string for DWC3 USB controller found in SpacemiT K3 SoC. diff --git a/SPECS/linux-lts-kmhv2/0224-UPSTREAM-usb-dwc3-dwc3-generic-plat-spacemit-add-sup.patch b/SPECS/linux-lts-kmhv2/0221-UPSTREAM-usb-dwc3-dwc3-generic-plat-spacemit-add-sup.patch similarity index 89% rename from SPECS/linux-lts-kmhv2/0224-UPSTREAM-usb-dwc3-dwc3-generic-plat-spacemit-add-sup.patch rename to SPECS/linux-lts-kmhv2/0221-UPSTREAM-usb-dwc3-dwc3-generic-plat-spacemit-add-sup.patch index dc96a39982..45a1cbb328 100644 --- a/SPECS/linux-lts-kmhv2/0224-UPSTREAM-usb-dwc3-dwc3-generic-plat-spacemit-add-sup.patch +++ b/SPECS/linux-lts-kmhv2/0221-UPSTREAM-usb-dwc3-dwc3-generic-plat-spacemit-add-sup.patch @@ -1,7 +1,7 @@ -From d139bb98d6afd681a1d2b0a68a1986ce01b0e4b7 Mon Sep 17 00:00:00 2001 +From 27133a501e88e5b271c1a5c98f2013d1f8dc931a Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Fri, 20 Mar 2026 07:15:38 +0000 -Subject: [PATCH 224/467] UPSTREAM: usb: dwc3: dwc3-generic-plat: spacemit: add +Subject: [RUYI PATCH] UPSTREAM: usb: dwc3: dwc3-generic-plat: spacemit: add support for K3 SoC Add support for the DWC3 USB controller which found in SpacemiT K3 SoC. diff --git a/SPECS/linux-lts-kmhv2/0225-UPSTREAM-usb-dwc3-Add-optional-VBUS-regulator-suppor.patch b/SPECS/linux-lts-kmhv2/0222-UPSTREAM-usb-dwc3-Add-optional-VBUS-regulator-suppor.patch similarity index 94% rename from SPECS/linux-lts-kmhv2/0225-UPSTREAM-usb-dwc3-Add-optional-VBUS-regulator-suppor.patch rename to SPECS/linux-lts-kmhv2/0222-UPSTREAM-usb-dwc3-Add-optional-VBUS-regulator-suppor.patch index 2b7267977c..e9139f8f74 100644 --- a/SPECS/linux-lts-kmhv2/0225-UPSTREAM-usb-dwc3-Add-optional-VBUS-regulator-suppor.patch +++ b/SPECS/linux-lts-kmhv2/0222-UPSTREAM-usb-dwc3-Add-optional-VBUS-regulator-suppor.patch @@ -1,8 +1,8 @@ -From 9990dc7ec3ce2387190d0ea86d2050589b85cd73 Mon Sep 17 00:00:00 2001 +From ec33bc462214da036d45ea0a3822c34e9f3d422b Mon Sep 17 00:00:00 2001 From: Chukun Pan Date: Thu, 26 Mar 2026 18:00:10 +0800 -Subject: [PATCH 225/467] UPSTREAM: usb: dwc3: Add optional VBUS regulator - support to SpacemiT K1 +Subject: [RUYI PATCH] UPSTREAM: usb: dwc3: Add optional VBUS regulator support + to SpacemiT K1 Some SpacemiT K1 boards (like OrangePi R2S) provide USB VBUS through a controllable regulator. Add support for the optional diff --git a/SPECS/linux-lts-kmhv2/0226-UPSTREAM-riscv-dts-spacemit-reorder-phy-nodes-for-K1.patch b/SPECS/linux-lts-kmhv2/0223-UPSTREAM-riscv-dts-spacemit-reorder-phy-nodes-for-K1.patch similarity index 96% rename from SPECS/linux-lts-kmhv2/0226-UPSTREAM-riscv-dts-spacemit-reorder-phy-nodes-for-K1.patch rename to SPECS/linux-lts-kmhv2/0223-UPSTREAM-riscv-dts-spacemit-reorder-phy-nodes-for-K1.patch index a511212ed8..4c498e66d6 100644 --- a/SPECS/linux-lts-kmhv2/0226-UPSTREAM-riscv-dts-spacemit-reorder-phy-nodes-for-K1.patch +++ b/SPECS/linux-lts-kmhv2/0223-UPSTREAM-riscv-dts-spacemit-reorder-phy-nodes-for-K1.patch @@ -1,8 +1,7 @@ -From eed2d8946ef831dead32e3b9c4d588b283ae1195 Mon Sep 17 00:00:00 2001 +From feb6ae05030bda7ec7a43a8384cfdffc80d33e30 Mon Sep 17 00:00:00 2001 From: Chukun Pan Date: Wed, 18 Mar 2026 18:00:00 +0800 -Subject: [PATCH 226/467] UPSTREAM: riscv: dts: spacemit: reorder phy nodes for - K1 +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: spacemit: reorder phy nodes for K1 Reorder the PHY nodes of USB and PCIe to the correct positions based on the register address. This improves the readability and maintainability diff --git a/SPECS/linux-lts-kmhv2/0227-UPSTREAM-riscv-dts-spacemit-drop-incorrect-pinctrl-f.patch b/SPECS/linux-lts-kmhv2/0224-UPSTREAM-riscv-dts-spacemit-drop-incorrect-pinctrl-f.patch similarity index 89% rename from SPECS/linux-lts-kmhv2/0227-UPSTREAM-riscv-dts-spacemit-drop-incorrect-pinctrl-f.patch rename to SPECS/linux-lts-kmhv2/0224-UPSTREAM-riscv-dts-spacemit-drop-incorrect-pinctrl-f.patch index d629f7d904..7d60f42287 100644 --- a/SPECS/linux-lts-kmhv2/0227-UPSTREAM-riscv-dts-spacemit-drop-incorrect-pinctrl-f.patch +++ b/SPECS/linux-lts-kmhv2/0224-UPSTREAM-riscv-dts-spacemit-drop-incorrect-pinctrl-f.patch @@ -1,8 +1,8 @@ -From 16fa682f25aa8efc5b297d6efcaaf5d684c6fd7b Mon Sep 17 00:00:00 2001 +From 9c90526d6c53498c2b0fce296ea54822274f4e03 Mon Sep 17 00:00:00 2001 From: Aurelien Jarno Date: Sun, 22 Mar 2026 21:25:01 +0100 -Subject: [PATCH 227/467] UPSTREAM: riscv: dts: spacemit: drop incorrect - pinctrl for combo PHY +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: spacemit: drop incorrect pinctrl + for combo PHY The combo PHY on the Banana Pi F3 is used for the USB 3.0 port. The high speed differential lanes are always configured as such, and do not diff --git a/SPECS/linux-lts-kmhv2/0228-UPSTREAM-riscv-dts-spacemit-Add-ethernet-device-for-.patch b/SPECS/linux-lts-kmhv2/0225-UPSTREAM-riscv-dts-spacemit-Add-ethernet-device-for-.patch similarity index 97% rename from SPECS/linux-lts-kmhv2/0228-UPSTREAM-riscv-dts-spacemit-Add-ethernet-device-for-.patch rename to SPECS/linux-lts-kmhv2/0225-UPSTREAM-riscv-dts-spacemit-Add-ethernet-device-for-.patch index aca0bf2ca8..daa6d30ac8 100644 --- a/SPECS/linux-lts-kmhv2/0228-UPSTREAM-riscv-dts-spacemit-Add-ethernet-device-for-.patch +++ b/SPECS/linux-lts-kmhv2/0225-UPSTREAM-riscv-dts-spacemit-Add-ethernet-device-for-.patch @@ -1,8 +1,8 @@ -From 03c170ac39ef66094f9171ed83e48fcf67edc777 Mon Sep 17 00:00:00 2001 +From f1fd9849a3a86e6e7567394bcfbd7e80314e1925 Mon Sep 17 00:00:00 2001 From: Inochi Amaoto Date: Thu, 26 Mar 2026 09:46:17 +0800 -Subject: [PATCH 228/467] UPSTREAM: riscv: dts: spacemit: Add ethernet device - for K3 +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: spacemit: Add ethernet device for + K3 Add all ethernet device nodes for K3 SoC. diff --git a/SPECS/linux-lts-kmhv2/0229-UPSTREAM-riscv-dts-spacemit-add-LEDs-for-Milk-V-Jupi.patch b/SPECS/linux-lts-kmhv2/0226-UPSTREAM-riscv-dts-spacemit-add-LEDs-for-Milk-V-Jupi.patch similarity index 92% rename from SPECS/linux-lts-kmhv2/0229-UPSTREAM-riscv-dts-spacemit-add-LEDs-for-Milk-V-Jupi.patch rename to SPECS/linux-lts-kmhv2/0226-UPSTREAM-riscv-dts-spacemit-add-LEDs-for-Milk-V-Jupi.patch index 7a250b9fd2..0ef10a2c37 100644 --- a/SPECS/linux-lts-kmhv2/0229-UPSTREAM-riscv-dts-spacemit-add-LEDs-for-Milk-V-Jupi.patch +++ b/SPECS/linux-lts-kmhv2/0226-UPSTREAM-riscv-dts-spacemit-add-LEDs-for-Milk-V-Jupi.patch @@ -1,7 +1,7 @@ -From f028688afe776c5820cff9effa08a9558b3e27e7 Mon Sep 17 00:00:00 2001 +From 22e068c1b0db347abe57240b5f4e6aea284b400a Mon Sep 17 00:00:00 2001 From: Aurelien Jarno Date: Thu, 26 Mar 2026 19:35:29 +0100 -Subject: [PATCH 229/467] UPSTREAM: riscv: dts: spacemit: add LEDs for Milk-V +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: spacemit: add LEDs for Milk-V Jupiter board The Milk-V Jupiter board provides support for two LEDs through the front diff --git a/SPECS/linux-lts-kmhv2/0230-UPSTREAM-riscv-dts-spacemit-add-24c04-eeprom-on-Milk.patch b/SPECS/linux-lts-kmhv2/0227-UPSTREAM-riscv-dts-spacemit-add-24c04-eeprom-on-Milk.patch similarity index 92% rename from SPECS/linux-lts-kmhv2/0230-UPSTREAM-riscv-dts-spacemit-add-24c04-eeprom-on-Milk.patch rename to SPECS/linux-lts-kmhv2/0227-UPSTREAM-riscv-dts-spacemit-add-24c04-eeprom-on-Milk.patch index 526c0f8b8d..d1757910da 100644 --- a/SPECS/linux-lts-kmhv2/0230-UPSTREAM-riscv-dts-spacemit-add-24c04-eeprom-on-Milk.patch +++ b/SPECS/linux-lts-kmhv2/0227-UPSTREAM-riscv-dts-spacemit-add-24c04-eeprom-on-Milk.patch @@ -1,7 +1,7 @@ -From 33c5fad73ed5d84207033735a7ebe3c7f3a3401b Mon Sep 17 00:00:00 2001 +From fd0cc30ddc8df5ecd44ae759b0d7ba0d8b5140c5 Mon Sep 17 00:00:00 2001 From: Aurelien Jarno Date: Thu, 26 Mar 2026 19:35:30 +0100 -Subject: [PATCH 230/467] UPSTREAM: riscv: dts: spacemit: add 24c04 eeprom on +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: spacemit: add 24c04 eeprom on Milk-V Jupiter The Milk-V Jupiter board includes a 24c04 eeprom on the i2c2 bus. The diff --git a/SPECS/linux-lts-kmhv2/0231-UPSTREAM-riscv-dts-spacemit-add-i2c-aliases-on-Milk-.patch b/SPECS/linux-lts-kmhv2/0228-UPSTREAM-riscv-dts-spacemit-add-i2c-aliases-on-Milk-.patch similarity index 89% rename from SPECS/linux-lts-kmhv2/0231-UPSTREAM-riscv-dts-spacemit-add-i2c-aliases-on-Milk-.patch rename to SPECS/linux-lts-kmhv2/0228-UPSTREAM-riscv-dts-spacemit-add-i2c-aliases-on-Milk-.patch index bf9e8fcaf8..d6371cd157 100644 --- a/SPECS/linux-lts-kmhv2/0231-UPSTREAM-riscv-dts-spacemit-add-i2c-aliases-on-Milk-.patch +++ b/SPECS/linux-lts-kmhv2/0228-UPSTREAM-riscv-dts-spacemit-add-i2c-aliases-on-Milk-.patch @@ -1,7 +1,7 @@ -From 91f109859aa003662be934a38045864d35c9ba4b Mon Sep 17 00:00:00 2001 +From 82fab0710b5af85d582db37f1628e0efe0783003 Mon Sep 17 00:00:00 2001 From: Aurelien Jarno Date: Thu, 26 Mar 2026 19:35:31 +0100 -Subject: [PATCH 231/467] UPSTREAM: riscv: dts: spacemit: add i2c aliases on +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: spacemit: add i2c aliases on Milk-V Jupiter Add i2c aliases for i2c2 and i2c8 on Milk-V Jupiter. This is useful to diff --git a/SPECS/linux-lts-kmhv2/0232-UPSTREAM-riscv-dts-spacemit-enable-QSPI-and-add-SPI-.patch b/SPECS/linux-lts-kmhv2/0229-UPSTREAM-riscv-dts-spacemit-enable-QSPI-and-add-SPI-.patch similarity index 93% rename from SPECS/linux-lts-kmhv2/0232-UPSTREAM-riscv-dts-spacemit-enable-QSPI-and-add-SPI-.patch rename to SPECS/linux-lts-kmhv2/0229-UPSTREAM-riscv-dts-spacemit-enable-QSPI-and-add-SPI-.patch index f3c36b8033..7da7a14692 100644 --- a/SPECS/linux-lts-kmhv2/0232-UPSTREAM-riscv-dts-spacemit-enable-QSPI-and-add-SPI-.patch +++ b/SPECS/linux-lts-kmhv2/0229-UPSTREAM-riscv-dts-spacemit-enable-QSPI-and-add-SPI-.patch @@ -1,8 +1,8 @@ -From da2e8b5f724f182ad77cb1d9607a06367e832eb8 Mon Sep 17 00:00:00 2001 +From 8cd168c0e1c6761c9dc36dba489883961c115b69 Mon Sep 17 00:00:00 2001 From: Aurelien Jarno Date: Thu, 26 Mar 2026 19:35:32 +0100 -Subject: [PATCH 232/467] UPSTREAM: riscv: dts: spacemit: enable QSPI and add - SPI NOR on Milk-V Jupiter +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: spacemit: enable QSPI and add SPI + NOR on Milk-V Jupiter Add the QSPI controller node for the Milk-V Jupiter board and describe the attached SPI NOR flash (GD25Q64E). diff --git a/SPECS/linux-lts-kmhv2/0233-UPSTREAM-riscv-dts-spacemit-enable-USB-3-ports-on-Mi.patch b/SPECS/linux-lts-kmhv2/0230-UPSTREAM-riscv-dts-spacemit-enable-USB-3-ports-on-Mi.patch similarity index 95% rename from SPECS/linux-lts-kmhv2/0233-UPSTREAM-riscv-dts-spacemit-enable-USB-3-ports-on-Mi.patch rename to SPECS/linux-lts-kmhv2/0230-UPSTREAM-riscv-dts-spacemit-enable-USB-3-ports-on-Mi.patch index e1e2fcd5ce..ab6defa852 100644 --- a/SPECS/linux-lts-kmhv2/0233-UPSTREAM-riscv-dts-spacemit-enable-USB-3-ports-on-Mi.patch +++ b/SPECS/linux-lts-kmhv2/0230-UPSTREAM-riscv-dts-spacemit-enable-USB-3-ports-on-Mi.patch @@ -1,7 +1,7 @@ -From 8618f21bd007f6291498d88d9392d4f15cd10805 Mon Sep 17 00:00:00 2001 +From 7c97859e0dc8e3a13976fbd8fa3512d2a6469e32 Mon Sep 17 00:00:00 2001 From: Aurelien Jarno Date: Thu, 26 Mar 2026 19:35:33 +0100 -Subject: [PATCH 233/467] UPSTREAM: riscv: dts: spacemit: enable USB 3 ports on +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: spacemit: enable USB 3 ports on Milk-V Jupiter Enable the DWC3 USB 3.0 controller (USB#2 port in the K1 datasheet) and diff --git a/SPECS/linux-lts-kmhv2/0234-UPSTREAM-riscv-dts-spacemit-enable-PCIe-ports-on-Mil.patch b/SPECS/linux-lts-kmhv2/0231-UPSTREAM-riscv-dts-spacemit-enable-PCIe-ports-on-Mil.patch similarity index 93% rename from SPECS/linux-lts-kmhv2/0234-UPSTREAM-riscv-dts-spacemit-enable-PCIe-ports-on-Mil.patch rename to SPECS/linux-lts-kmhv2/0231-UPSTREAM-riscv-dts-spacemit-enable-PCIe-ports-on-Mil.patch index 7bf6a68c5f..37c7e74275 100644 --- a/SPECS/linux-lts-kmhv2/0234-UPSTREAM-riscv-dts-spacemit-enable-PCIe-ports-on-Mil.patch +++ b/SPECS/linux-lts-kmhv2/0231-UPSTREAM-riscv-dts-spacemit-enable-PCIe-ports-on-Mil.patch @@ -1,7 +1,7 @@ -From 29c798bc348079c4005d8f1237132733e5fefd2a Mon Sep 17 00:00:00 2001 +From a6af60e5b4b61218cbfe45507b2a9c0740b13741 Mon Sep 17 00:00:00 2001 From: Aurelien Jarno Date: Thu, 26 Mar 2026 19:35:34 +0100 -Subject: [PATCH 234/467] UPSTREAM: riscv: dts: spacemit: enable PCIe ports on +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: spacemit: enable PCIe ports on Milk-V Jupiter Enable the two PCIe controller along with and their associated PHY. They diff --git a/SPECS/linux-lts-kmhv2/0235-UPSTREAM-dt-bindings-i2c-spacemit-k3-Add-compatible.patch b/SPECS/linux-lts-kmhv2/0232-UPSTREAM-dt-bindings-i2c-spacemit-k3-Add-compatible.patch similarity index 89% rename from SPECS/linux-lts-kmhv2/0235-UPSTREAM-dt-bindings-i2c-spacemit-k3-Add-compatible.patch rename to SPECS/linux-lts-kmhv2/0232-UPSTREAM-dt-bindings-i2c-spacemit-k3-Add-compatible.patch index e9b0909fb8..636cc98729 100644 --- a/SPECS/linux-lts-kmhv2/0235-UPSTREAM-dt-bindings-i2c-spacemit-k3-Add-compatible.patch +++ b/SPECS/linux-lts-kmhv2/0232-UPSTREAM-dt-bindings-i2c-spacemit-k3-Add-compatible.patch @@ -1,8 +1,7 @@ -From 06a529a2e71c9d5cfdfe39c8829383f4535447af Mon Sep 17 00:00:00 2001 +From ffb258a6f70ad79ca6c7b0a4c04cd38fbdd33471 Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Wed, 25 Mar 2026 09:49:24 +0000 -Subject: [PATCH 235/467] UPSTREAM: dt-bindings: i2c: spacemit: k3: Add - compatible +Subject: [RUYI PATCH] UPSTREAM: dt-bindings: i2c: spacemit: k3: Add compatible Add a compatible string for the I2C controller found in SpacemiT K3 SoC which use same I2C IP as K1, so make it fallback to K1 compatible. diff --git a/SPECS/linux-lts-kmhv2/0236-UPSTREAM-dts-riscv-spacemit-k3-Add-i2c-nodes.patch b/SPECS/linux-lts-kmhv2/0233-UPSTREAM-dts-riscv-spacemit-k3-Add-i2c-nodes.patch similarity index 97% rename from SPECS/linux-lts-kmhv2/0236-UPSTREAM-dts-riscv-spacemit-k3-Add-i2c-nodes.patch rename to SPECS/linux-lts-kmhv2/0233-UPSTREAM-dts-riscv-spacemit-k3-Add-i2c-nodes.patch index bcae7bdbb6..4fa6b0eb20 100644 --- a/SPECS/linux-lts-kmhv2/0236-UPSTREAM-dts-riscv-spacemit-k3-Add-i2c-nodes.patch +++ b/SPECS/linux-lts-kmhv2/0233-UPSTREAM-dts-riscv-spacemit-k3-Add-i2c-nodes.patch @@ -1,7 +1,7 @@ -From 51e77bd033c67ea1bad41c8dc364dc87af69176a Mon Sep 17 00:00:00 2001 +From 2e5ff84331e9d469cf732e06694632b4d7f0a64e Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Fri, 27 Mar 2026 11:40:40 +0000 -Subject: [PATCH 236/467] UPSTREAM: dts: riscv: spacemit: k3: Add i2c nodes +Subject: [RUYI PATCH] UPSTREAM: dts: riscv: spacemit: k3: Add i2c nodes Populate all I2C devicetree nodes for SpacemiT K3 SoC. The controller of i2c3 is reserved for secure domain, and not available from Linux. The diff --git a/SPECS/linux-lts-kmhv2/0237-UPSTREAM-dts-riscv-spacemit-k3-add-P1-PMIC-regulator.patch b/SPECS/linux-lts-kmhv2/0234-UPSTREAM-dts-riscv-spacemit-k3-add-P1-PMIC-regulator.patch similarity index 97% rename from SPECS/linux-lts-kmhv2/0237-UPSTREAM-dts-riscv-spacemit-k3-add-P1-PMIC-regulator.patch rename to SPECS/linux-lts-kmhv2/0234-UPSTREAM-dts-riscv-spacemit-k3-add-P1-PMIC-regulator.patch index 2dbc249507..fec47cecd6 100644 --- a/SPECS/linux-lts-kmhv2/0237-UPSTREAM-dts-riscv-spacemit-k3-add-P1-PMIC-regulator.patch +++ b/SPECS/linux-lts-kmhv2/0234-UPSTREAM-dts-riscv-spacemit-k3-add-P1-PMIC-regulator.patch @@ -1,7 +1,7 @@ -From 3d90cd2fe817a9d87061b1aaf12ab04d512bb830 Mon Sep 17 00:00:00 2001 +From 7602638398631706b3b851eeb82562691d9fbf20 Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Fri, 27 Mar 2026 11:51:18 +0000 -Subject: [PATCH 237/467] UPSTREAM: dts: riscv: spacemit: k3: add P1 PMIC +Subject: [RUYI PATCH] UPSTREAM: dts: riscv: spacemit: k3: add P1 PMIC regulator tree Add the P1 PMIC's regulator topology tree for pico-itx board. diff --git a/SPECS/linux-lts-kmhv2/0238-UPSTREAM-perf-symbol-Add-RISCV-case-in-get_plt_sizes.patch b/SPECS/linux-lts-kmhv2/0235-UPSTREAM-perf-symbol-Add-RISCV-case-in-get_plt_sizes.patch similarity index 91% rename from SPECS/linux-lts-kmhv2/0238-UPSTREAM-perf-symbol-Add-RISCV-case-in-get_plt_sizes.patch rename to SPECS/linux-lts-kmhv2/0235-UPSTREAM-perf-symbol-Add-RISCV-case-in-get_plt_sizes.patch index 050b3605d2..dc246bac07 100644 --- a/SPECS/linux-lts-kmhv2/0238-UPSTREAM-perf-symbol-Add-RISCV-case-in-get_plt_sizes.patch +++ b/SPECS/linux-lts-kmhv2/0235-UPSTREAM-perf-symbol-Add-RISCV-case-in-get_plt_sizes.patch @@ -1,8 +1,7 @@ -From 648a8870dbad32008ba12e159e37944eb9d7180e Mon Sep 17 00:00:00 2001 +From e2f15b90c20c9acc8b6524640ad61e8dd279261b Mon Sep 17 00:00:00 2001 From: Chen Pei Date: Tue, 17 Mar 2026 11:48:47 +0800 -Subject: [PATCH 238/467] UPSTREAM: perf symbol: Add RISCV case in - get_plt_sizes +Subject: [RUYI PATCH] UPSTREAM: perf symbol: Add RISCV case in get_plt_sizes According to RISC-V psABI specification, the PLT (Program Linkage Table) has the following layout: diff --git a/SPECS/linux-lts-kmhv2/0239-UPSTREAM-riscv-Simplify-assignment-for-UTS_MACHINE.patch b/SPECS/linux-lts-kmhv2/0236-UPSTREAM-riscv-Simplify-assignment-for-UTS_MACHINE.patch similarity index 91% rename from SPECS/linux-lts-kmhv2/0239-UPSTREAM-riscv-Simplify-assignment-for-UTS_MACHINE.patch rename to SPECS/linux-lts-kmhv2/0236-UPSTREAM-riscv-Simplify-assignment-for-UTS_MACHINE.patch index 9fe6fe1315..4135dc8422 100644 --- a/SPECS/linux-lts-kmhv2/0239-UPSTREAM-riscv-Simplify-assignment-for-UTS_MACHINE.patch +++ b/SPECS/linux-lts-kmhv2/0236-UPSTREAM-riscv-Simplify-assignment-for-UTS_MACHINE.patch @@ -1,7 +1,7 @@ -From f61f4c49f48046edb4ce0352be894de34dfcd5a3 Mon Sep 17 00:00:00 2001 +From 88b461165ff138a8bc16b7a3d1540a19c8a3710e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Uwe=20Kleine-K=C3=B6nig?= Date: Sat, 4 Apr 2026 18:42:40 -0600 -Subject: [PATCH 239/467] UPSTREAM: riscv: Simplify assignment for UTS_MACHINE +Subject: [RUYI PATCH] UPSTREAM: riscv: Simplify assignment for UTS_MACHINE MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit diff --git a/SPECS/linux-lts-kmhv2/0240-UPSTREAM-riscv-increase-COMMAND_LINE_SIZE-value-to-2.patch b/SPECS/linux-lts-kmhv2/0237-UPSTREAM-riscv-increase-COMMAND_LINE_SIZE-value-to-2.patch similarity index 88% rename from SPECS/linux-lts-kmhv2/0240-UPSTREAM-riscv-increase-COMMAND_LINE_SIZE-value-to-2.patch rename to SPECS/linux-lts-kmhv2/0237-UPSTREAM-riscv-increase-COMMAND_LINE_SIZE-value-to-2.patch index 35ec7040c2..c12445faca 100644 --- a/SPECS/linux-lts-kmhv2/0240-UPSTREAM-riscv-increase-COMMAND_LINE_SIZE-value-to-2.patch +++ b/SPECS/linux-lts-kmhv2/0237-UPSTREAM-riscv-increase-COMMAND_LINE_SIZE-value-to-2.patch @@ -1,7 +1,7 @@ -From 3d0d22f6281de4b039180e5e5096041117526be7 Mon Sep 17 00:00:00 2001 +From f64acae7865de9be5e3490b46bc253b9e0d8464e Mon Sep 17 00:00:00 2001 From: Austin Kim Date: Fri, 3 Apr 2026 19:28:47 -0600 -Subject: [PATCH 240/467] UPSTREAM: riscv: increase COMMAND_LINE_SIZE value to +Subject: [RUYI PATCH] UPSTREAM: riscv: increase COMMAND_LINE_SIZE value to 2048 SoC people may send many parameters to configure the drivers via kernel diff --git a/SPECS/linux-lts-kmhv2/0241-UPSTREAM-riscv-acpi-update-FADT-revision-check-to-6..patch b/SPECS/linux-lts-kmhv2/0238-UPSTREAM-riscv-acpi-update-FADT-revision-check-to-6..patch similarity index 93% rename from SPECS/linux-lts-kmhv2/0241-UPSTREAM-riscv-acpi-update-FADT-revision-check-to-6..patch rename to SPECS/linux-lts-kmhv2/0238-UPSTREAM-riscv-acpi-update-FADT-revision-check-to-6..patch index 0a4ec4eaf8..53eb710553 100644 --- a/SPECS/linux-lts-kmhv2/0241-UPSTREAM-riscv-acpi-update-FADT-revision-check-to-6..patch +++ b/SPECS/linux-lts-kmhv2/0238-UPSTREAM-riscv-acpi-update-FADT-revision-check-to-6..patch @@ -1,8 +1,7 @@ -From 40f9fb3f9445f0a2bab1227aad457b443ce8c21f Mon Sep 17 00:00:00 2001 +From 50da2d0c20ed5daeac5e56fc3b173a315118dc29 Mon Sep 17 00:00:00 2001 From: Yufeng Wang Date: Fri, 3 Apr 2026 19:28:47 -0600 -Subject: [PATCH 241/467] UPSTREAM: riscv: acpi: update FADT revision check to - 6.6 +Subject: [RUYI PATCH] UPSTREAM: riscv: acpi: update FADT revision check to 6.6 ACPI 6.6 is required for RISC-V as it introduces RISC-V specific tables such as RHCT (RISC-V Hart Capabilities Table) and diff --git a/SPECS/linux-lts-kmhv2/0242-UPSTREAM-riscv-mm-WARN_ON-for-bad-addresses-in-vmemm.patch b/SPECS/linux-lts-kmhv2/0239-UPSTREAM-riscv-mm-WARN_ON-for-bad-addresses-in-vmemm.patch similarity index 81% rename from SPECS/linux-lts-kmhv2/0242-UPSTREAM-riscv-mm-WARN_ON-for-bad-addresses-in-vmemm.patch rename to SPECS/linux-lts-kmhv2/0239-UPSTREAM-riscv-mm-WARN_ON-for-bad-addresses-in-vmemm.patch index f514478c34..03b0b8232a 100644 --- a/SPECS/linux-lts-kmhv2/0242-UPSTREAM-riscv-mm-WARN_ON-for-bad-addresses-in-vmemm.patch +++ b/SPECS/linux-lts-kmhv2/0239-UPSTREAM-riscv-mm-WARN_ON-for-bad-addresses-in-vmemm.patch @@ -1,7 +1,7 @@ -From a0fb9210411d1e9cf24e0002bf7eab0d439012ce Mon Sep 17 00:00:00 2001 +From 527bf47071201cafeeb74ad89ac94e5d61eb3691 Mon Sep 17 00:00:00 2001 From: Vivian Wang Date: Fri, 3 Apr 2026 19:28:47 -0600 -Subject: [PATCH 242/467] UPSTREAM: riscv: mm: WARN_ON() for bad addresses in +Subject: [RUYI PATCH] UPSTREAM: riscv: mm: WARN_ON() for bad addresses in vmemmap_populate() Similarly to the same check in arch/arm64/mm/mmu.c, in @@ -18,10 +18,10 @@ Signed-off-by: Han Gao 1 file changed, 2 insertions(+) diff --git a/arch/riscv/mm/init.c b/arch/riscv/mm/init.c -index d85efe74a4b6..a7d0cde6536b 100644 +index ee40ca01ac66..8f4e7e505906 100644 --- a/arch/riscv/mm/init.c +++ b/arch/riscv/mm/init.c -@@ -1461,6 +1461,8 @@ int __meminit vmemmap_check_pmd(pmd_t *pmdp, int node, +@@ -1486,6 +1486,8 @@ int __meminit vmemmap_check_pmd(pmd_t *pmdp, int node, int __meminit vmemmap_populate(unsigned long start, unsigned long end, int node, struct vmem_altmap *altmap) { diff --git a/SPECS/linux-lts-kmhv2/0243-UPSTREAM-riscv-enable-HAVE_IOREMAP_PROT.patch b/SPECS/linux-lts-kmhv2/0240-UPSTREAM-riscv-enable-HAVE_IOREMAP_PROT.patch similarity index 93% rename from SPECS/linux-lts-kmhv2/0243-UPSTREAM-riscv-enable-HAVE_IOREMAP_PROT.patch rename to SPECS/linux-lts-kmhv2/0240-UPSTREAM-riscv-enable-HAVE_IOREMAP_PROT.patch index f3074ab38b..d8e8ef3623 100644 --- a/SPECS/linux-lts-kmhv2/0243-UPSTREAM-riscv-enable-HAVE_IOREMAP_PROT.patch +++ b/SPECS/linux-lts-kmhv2/0240-UPSTREAM-riscv-enable-HAVE_IOREMAP_PROT.patch @@ -1,7 +1,7 @@ -From 91dae5c9d0216f41e065a75837f17dc7e99d545e Mon Sep 17 00:00:00 2001 +From 21223e48716232b52be9719f8d4361bc9f82af59 Mon Sep 17 00:00:00 2001 From: Yufeng Wang Date: Fri, 3 Apr 2026 19:28:47 -0600 -Subject: [PATCH 243/467] UPSTREAM: riscv: enable HAVE_IOREMAP_PROT +Subject: [RUYI PATCH] UPSTREAM: riscv: enable HAVE_IOREMAP_PROT RISC-V has implemented pte_pgprot() and selects GENERIC_IOREMAP, which provides a generic ioremap_prot() implementation. Enable diff --git a/SPECS/linux-lts-kmhv2/0244-UPSTREAM-string-provide-strends.patch b/SPECS/linux-lts-kmhv2/0241-UPSTREAM-string-provide-strends.patch similarity index 95% rename from SPECS/linux-lts-kmhv2/0244-UPSTREAM-string-provide-strends.patch rename to SPECS/linux-lts-kmhv2/0241-UPSTREAM-string-provide-strends.patch index a94ffb8092..1647db78f8 100644 --- a/SPECS/linux-lts-kmhv2/0244-UPSTREAM-string-provide-strends.patch +++ b/SPECS/linux-lts-kmhv2/0241-UPSTREAM-string-provide-strends.patch @@ -1,7 +1,7 @@ -From 51707af489a55246eec9dc64f9b85831e0fd4706 Mon Sep 17 00:00:00 2001 +From 94b2dc80662df98e75c5893573a98c832aa7b104 Mon Sep 17 00:00:00 2001 From: Bartosz Golaszewski Date: Wed, 12 Nov 2025 14:55:30 +0100 -Subject: [PATCH 244/467] UPSTREAM: string: provide strends() +Subject: [RUYI PATCH] UPSTREAM: string: provide strends() Implement a function for checking if a string ends with a different string and add its kunit test cases. diff --git a/SPECS/linux-lts-kmhv2/0245-UPSTREAM-lib-string_kunit-add-correctness-test-for-s.patch b/SPECS/linux-lts-kmhv2/0242-UPSTREAM-lib-string_kunit-add-correctness-test-for-s.patch similarity index 95% rename from SPECS/linux-lts-kmhv2/0245-UPSTREAM-lib-string_kunit-add-correctness-test-for-s.patch rename to SPECS/linux-lts-kmhv2/0242-UPSTREAM-lib-string_kunit-add-correctness-test-for-s.patch index 97e4def775..98ac349bfa 100644 --- a/SPECS/linux-lts-kmhv2/0245-UPSTREAM-lib-string_kunit-add-correctness-test-for-s.patch +++ b/SPECS/linux-lts-kmhv2/0242-UPSTREAM-lib-string_kunit-add-correctness-test-for-s.patch @@ -1,7 +1,7 @@ -From a0ea3d9866b712d229e263440d46912dd67c4437 Mon Sep 17 00:00:00 2001 +From 79e2cd89898e36fdb3d1714bbd7988fb286c84c7 Mon Sep 17 00:00:00 2001 From: Feng Jiang Date: Fri, 3 Apr 2026 19:28:47 -0600 -Subject: [PATCH 245/467] UPSTREAM: lib/string_kunit: add correctness test for +Subject: [RUYI PATCH] UPSTREAM: lib/string_kunit: add correctness test for strlen() Add a KUnit test for strlen() to verify correctness across diff --git a/SPECS/linux-lts-kmhv2/0246-UPSTREAM-lib-string_kunit-add-correctness-test-for-s.patch b/SPECS/linux-lts-kmhv2/0243-UPSTREAM-lib-string_kunit-add-correctness-test-for-s.patch similarity index 94% rename from SPECS/linux-lts-kmhv2/0246-UPSTREAM-lib-string_kunit-add-correctness-test-for-s.patch rename to SPECS/linux-lts-kmhv2/0243-UPSTREAM-lib-string_kunit-add-correctness-test-for-s.patch index b070b96048..cf2e77deb8 100644 --- a/SPECS/linux-lts-kmhv2/0246-UPSTREAM-lib-string_kunit-add-correctness-test-for-s.patch +++ b/SPECS/linux-lts-kmhv2/0243-UPSTREAM-lib-string_kunit-add-correctness-test-for-s.patch @@ -1,7 +1,7 @@ -From 7d205ff17788553db4370fc8017670aeff19fe77 Mon Sep 17 00:00:00 2001 +From 902bdb8bb0a0f55816f458cf513b52da08e503fb Mon Sep 17 00:00:00 2001 From: Feng Jiang Date: Fri, 3 Apr 2026 19:28:47 -0600 -Subject: [PATCH 246/467] UPSTREAM: lib/string_kunit: add correctness test for +Subject: [RUYI PATCH] UPSTREAM: lib/string_kunit: add correctness test for strnlen() Add a KUnit test for strnlen() to verify correctness across diff --git a/SPECS/linux-lts-kmhv2/0247-UPSTREAM-lib-string_kunit-add-correctness-test-for-s.patch b/SPECS/linux-lts-kmhv2/0244-UPSTREAM-lib-string_kunit-add-correctness-test-for-s.patch similarity index 93% rename from SPECS/linux-lts-kmhv2/0247-UPSTREAM-lib-string_kunit-add-correctness-test-for-s.patch rename to SPECS/linux-lts-kmhv2/0244-UPSTREAM-lib-string_kunit-add-correctness-test-for-s.patch index ce8b0f8a5b..b303a23ddc 100644 --- a/SPECS/linux-lts-kmhv2/0247-UPSTREAM-lib-string_kunit-add-correctness-test-for-s.patch +++ b/SPECS/linux-lts-kmhv2/0244-UPSTREAM-lib-string_kunit-add-correctness-test-for-s.patch @@ -1,7 +1,7 @@ -From 0a17629f949ff3604a42f6cbe6c0609a51050633 Mon Sep 17 00:00:00 2001 +From a35e09fa31b7cc0d163e681b2acef99edf7f626b Mon Sep 17 00:00:00 2001 From: Feng Jiang Date: Fri, 3 Apr 2026 19:28:47 -0600 -Subject: [PATCH 247/467] UPSTREAM: lib/string_kunit: add correctness test for +Subject: [RUYI PATCH] UPSTREAM: lib/string_kunit: add correctness test for strrchr() Add a KUnit test for strrchr() to verify correctness across diff --git a/SPECS/linux-lts-kmhv2/0248-UPSTREAM-lib-string_kunit-add-performance-benchmark-.patch b/SPECS/linux-lts-kmhv2/0245-UPSTREAM-lib-string_kunit-add-performance-benchmark-.patch similarity index 98% rename from SPECS/linux-lts-kmhv2/0248-UPSTREAM-lib-string_kunit-add-performance-benchmark-.patch rename to SPECS/linux-lts-kmhv2/0245-UPSTREAM-lib-string_kunit-add-performance-benchmark-.patch index 52ac6d1a18..8ed6b57c83 100644 --- a/SPECS/linux-lts-kmhv2/0248-UPSTREAM-lib-string_kunit-add-performance-benchmark-.patch +++ b/SPECS/linux-lts-kmhv2/0245-UPSTREAM-lib-string_kunit-add-performance-benchmark-.patch @@ -1,7 +1,7 @@ -From 1b38e17c75d77d3173ec154a74233c0c19c8f8f1 Mon Sep 17 00:00:00 2001 +From 3157c725cd7a5774a6e772aee7c537b7bc65a90e Mon Sep 17 00:00:00 2001 From: Feng Jiang Date: Fri, 3 Apr 2026 19:28:47 -0600 -Subject: [PATCH 248/467] UPSTREAM: lib/string_kunit: add performance benchmark +Subject: [RUYI PATCH] UPSTREAM: lib/string_kunit: add performance benchmark for strlen() Introduce a benchmarking framework to the string_kunit test suite to diff --git a/SPECS/linux-lts-kmhv2/0249-UPSTREAM-lib-string_kunit-extend-benchmarks-to-strnl.patch b/SPECS/linux-lts-kmhv2/0246-UPSTREAM-lib-string_kunit-extend-benchmarks-to-strnl.patch similarity index 93% rename from SPECS/linux-lts-kmhv2/0249-UPSTREAM-lib-string_kunit-extend-benchmarks-to-strnl.patch rename to SPECS/linux-lts-kmhv2/0246-UPSTREAM-lib-string_kunit-extend-benchmarks-to-strnl.patch index dfda66cc5e..8a4b47a942 100644 --- a/SPECS/linux-lts-kmhv2/0249-UPSTREAM-lib-string_kunit-extend-benchmarks-to-strnl.patch +++ b/SPECS/linux-lts-kmhv2/0246-UPSTREAM-lib-string_kunit-extend-benchmarks-to-strnl.patch @@ -1,7 +1,7 @@ -From d0124b59c28b2a764db245d8be9fc383ac7e7933 Mon Sep 17 00:00:00 2001 +From d4f3b19d0ba9850b6052f6adfda81bdd61650371 Mon Sep 17 00:00:00 2001 From: Feng Jiang Date: Fri, 3 Apr 2026 19:28:47 -0600 -Subject: [PATCH 249/467] UPSTREAM: lib/string_kunit: extend benchmarks to +Subject: [RUYI PATCH] UPSTREAM: lib/string_kunit: extend benchmarks to strnlen() and chr searches Extend the string benchmarking suite to include strnlen(), strchr(), diff --git a/SPECS/linux-lts-kmhv2/0250-UPSTREAM-riscv-lib-add-strnlen-implementation.patch b/SPECS/linux-lts-kmhv2/0247-UPSTREAM-riscv-lib-add-strnlen-implementation.patch similarity index 97% rename from SPECS/linux-lts-kmhv2/0250-UPSTREAM-riscv-lib-add-strnlen-implementation.patch rename to SPECS/linux-lts-kmhv2/0247-UPSTREAM-riscv-lib-add-strnlen-implementation.patch index c5b7f485ce..da2b0c30de 100644 --- a/SPECS/linux-lts-kmhv2/0250-UPSTREAM-riscv-lib-add-strnlen-implementation.patch +++ b/SPECS/linux-lts-kmhv2/0247-UPSTREAM-riscv-lib-add-strnlen-implementation.patch @@ -1,7 +1,7 @@ -From c90c1b627d1a7bfa2d85045606e6db6a1224dbe2 Mon Sep 17 00:00:00 2001 +From d7fce76a1ce208fab598335c38ae8071bb4d893d Mon Sep 17 00:00:00 2001 From: Feng Jiang Date: Fri, 3 Apr 2026 19:28:47 -0600 -Subject: [PATCH 250/467] UPSTREAM: riscv: lib: add strnlen() implementation +Subject: [RUYI PATCH] UPSTREAM: riscv: lib: add strnlen() implementation Add an optimized strnlen() implementation for RISC-V. This version includes a generic optimization and a Zbb-powered optimization using diff --git a/SPECS/linux-lts-kmhv2/0251-UPSTREAM-riscv-lib-add-strchr-implementation.patch b/SPECS/linux-lts-kmhv2/0248-UPSTREAM-riscv-lib-add-strchr-implementation.patch similarity index 96% rename from SPECS/linux-lts-kmhv2/0251-UPSTREAM-riscv-lib-add-strchr-implementation.patch rename to SPECS/linux-lts-kmhv2/0248-UPSTREAM-riscv-lib-add-strchr-implementation.patch index 11242e7cf1..82e732ebcb 100644 --- a/SPECS/linux-lts-kmhv2/0251-UPSTREAM-riscv-lib-add-strchr-implementation.patch +++ b/SPECS/linux-lts-kmhv2/0248-UPSTREAM-riscv-lib-add-strchr-implementation.patch @@ -1,7 +1,7 @@ -From d70c03b9f8f7b1f45dfa6d3b248cd26e173574bf Mon Sep 17 00:00:00 2001 +From 2f4c1bb28db6a3485cd348d5484cabeee5afb672 Mon Sep 17 00:00:00 2001 From: Feng Jiang Date: Fri, 3 Apr 2026 19:28:47 -0600 -Subject: [PATCH 251/467] UPSTREAM: riscv: lib: add strchr() implementation +Subject: [RUYI PATCH] UPSTREAM: riscv: lib: add strchr() implementation Add an assembly implementation of strchr() for RISC-V. diff --git a/SPECS/linux-lts-kmhv2/0252-UPSTREAM-riscv-lib-add-strrchr-implementation.patch b/SPECS/linux-lts-kmhv2/0249-UPSTREAM-riscv-lib-add-strrchr-implementation.patch similarity index 96% rename from SPECS/linux-lts-kmhv2/0252-UPSTREAM-riscv-lib-add-strrchr-implementation.patch rename to SPECS/linux-lts-kmhv2/0249-UPSTREAM-riscv-lib-add-strrchr-implementation.patch index bbb8905d30..4a1a619b26 100644 --- a/SPECS/linux-lts-kmhv2/0252-UPSTREAM-riscv-lib-add-strrchr-implementation.patch +++ b/SPECS/linux-lts-kmhv2/0249-UPSTREAM-riscv-lib-add-strrchr-implementation.patch @@ -1,7 +1,7 @@ -From d06ce21328bc140c9a983924c52277ee37808254 Mon Sep 17 00:00:00 2001 +From 7a1bef3a9306a7c4cd45d233b4965356c86f23d4 Mon Sep 17 00:00:00 2001 From: Feng Jiang Date: Fri, 3 Apr 2026 19:28:47 -0600 -Subject: [PATCH 252/467] UPSTREAM: riscv: lib: add strrchr() implementation +Subject: [RUYI PATCH] UPSTREAM: riscv: lib: add strrchr() implementation Add an assembly implementation of strrchr() for RISC-V. diff --git a/SPECS/linux-lts-kmhv2/0253-UPSTREAM-PCI-dwc-Add-register-and-bitfield-definitio.patch b/SPECS/linux-lts-kmhv2/0250-UPSTREAM-PCI-dwc-Add-register-and-bitfield-definitio.patch similarity index 92% rename from SPECS/linux-lts-kmhv2/0253-UPSTREAM-PCI-dwc-Add-register-and-bitfield-definitio.patch rename to SPECS/linux-lts-kmhv2/0250-UPSTREAM-PCI-dwc-Add-register-and-bitfield-definitio.patch index 139a305f3e..a11233ee84 100644 --- a/SPECS/linux-lts-kmhv2/0253-UPSTREAM-PCI-dwc-Add-register-and-bitfield-definitio.patch +++ b/SPECS/linux-lts-kmhv2/0250-UPSTREAM-PCI-dwc-Add-register-and-bitfield-definitio.patch @@ -1,7 +1,7 @@ -From 8d6883e557feae1df51a14f0a3008c5104978a75 Mon Sep 17 00:00:00 2001 +From 0bd7f056d6569dc61e0cc65e7eaab3c9d9d1e879 Mon Sep 17 00:00:00 2001 From: Vincent Guittot Date: Fri, 21 Nov 2025 17:49:18 +0100 -Subject: [PATCH 253/467] UPSTREAM: PCI: dwc: Add register and bitfield +Subject: [RUYI PATCH] UPSTREAM: PCI: dwc: Add register and bitfield definitions Add register and bitfield definitions: diff --git a/SPECS/linux-lts-kmhv2/0254-UPSTREAM-ASoC-spacemit-move-hw-constraints-from-hw_p.patch b/SPECS/linux-lts-kmhv2/0251-UPSTREAM-ASoC-spacemit-move-hw-constraints-from-hw_p.patch similarity index 96% rename from SPECS/linux-lts-kmhv2/0254-UPSTREAM-ASoC-spacemit-move-hw-constraints-from-hw_p.patch rename to SPECS/linux-lts-kmhv2/0251-UPSTREAM-ASoC-spacemit-move-hw-constraints-from-hw_p.patch index 802aad400b..9b9454daa8 100644 --- a/SPECS/linux-lts-kmhv2/0254-UPSTREAM-ASoC-spacemit-move-hw-constraints-from-hw_p.patch +++ b/SPECS/linux-lts-kmhv2/0251-UPSTREAM-ASoC-spacemit-move-hw-constraints-from-hw_p.patch @@ -1,7 +1,7 @@ -From 0b98034970a41ebd870d94873762f355265308b5 Mon Sep 17 00:00:00 2001 +From 22c3a93bf61eb47e3b47fd1cbfb9bed064b5de81 Mon Sep 17 00:00:00 2001 From: Troy Mitchell Date: Wed, 29 Apr 2026 09:38:47 +0800 -Subject: [PATCH 254/467] UPSTREAM: ASoC: spacemit: move hw constraints from +Subject: [RUYI PATCH] UPSTREAM: ASoC: spacemit: move hw constraints from hw_params to startup Hardware constraints should be applied in the startup callback rather diff --git a/SPECS/linux-lts-kmhv2/0255-UPSTREAM-ASoC-spacemit-adjust-FIFO-trigger-threshold.patch b/SPECS/linux-lts-kmhv2/0252-UPSTREAM-ASoC-spacemit-adjust-FIFO-trigger-threshold.patch similarity index 89% rename from SPECS/linux-lts-kmhv2/0255-UPSTREAM-ASoC-spacemit-adjust-FIFO-trigger-threshold.patch rename to SPECS/linux-lts-kmhv2/0252-UPSTREAM-ASoC-spacemit-adjust-FIFO-trigger-threshold.patch index 1e9bf3e407..a235db3255 100644 --- a/SPECS/linux-lts-kmhv2/0255-UPSTREAM-ASoC-spacemit-adjust-FIFO-trigger-threshold.patch +++ b/SPECS/linux-lts-kmhv2/0252-UPSTREAM-ASoC-spacemit-adjust-FIFO-trigger-threshold.patch @@ -1,8 +1,8 @@ -From ef5e4c0292bbb0c8ac2209001b6adcdb0ee1fc37 Mon Sep 17 00:00:00 2001 +From b81d7e8285e49c07fa31cdb599fdeedddec0fb3c Mon Sep 17 00:00:00 2001 From: Troy Mitchell Date: Wed, 29 Apr 2026 09:38:48 +0800 -Subject: [PATCH 255/467] UPSTREAM: ASoC: spacemit: adjust FIFO trigger - threshold to half FIFO size +Subject: [RUYI PATCH] UPSTREAM: ASoC: spacemit: adjust FIFO trigger threshold + to half FIFO size Set both TX and RX FIFO trigger thresholds (TFT/RFT) to 0xF (half of the 32-entry FIFO) instead of 5. This provides better DMA efficiency diff --git a/SPECS/linux-lts-kmhv2/0256-UPSTREAM-dt-bindings-reset-thead-th1520-reset-Remove.patch b/SPECS/linux-lts-kmhv2/0253-UPSTREAM-dt-bindings-reset-thead-th1520-reset-Remove.patch similarity index 89% rename from SPECS/linux-lts-kmhv2/0256-UPSTREAM-dt-bindings-reset-thead-th1520-reset-Remove.patch rename to SPECS/linux-lts-kmhv2/0253-UPSTREAM-dt-bindings-reset-thead-th1520-reset-Remove.patch index 069e0e55c6..dbc1d4ed46 100644 --- a/SPECS/linux-lts-kmhv2/0256-UPSTREAM-dt-bindings-reset-thead-th1520-reset-Remove.patch +++ b/SPECS/linux-lts-kmhv2/0253-UPSTREAM-dt-bindings-reset-thead-th1520-reset-Remove.patch @@ -1,8 +1,8 @@ -From 70c964d224ef054526b245c614230ab634b0bde7 Mon Sep 17 00:00:00 2001 +From 42cd6879691919aaf3200276ed71a8c7f081bf8f Mon Sep 17 00:00:00 2001 From: Yao Zi Date: Tue, 14 Oct 2025 13:10:28 +0000 -Subject: [PATCH 256/467] UPSTREAM: dt-bindings: reset: thead,th1520-reset: - Remove non-VO-subsystem resets +Subject: [RUYI PATCH] UPSTREAM: dt-bindings: reset: thead,th1520-reset: Remove + non-VO-subsystem resets Registers in control of TH1520_RESET_ID_{NPU,WDT0,WDT1} belong to AP reset controller, not the VO one which is documented as diff --git a/SPECS/linux-lts-kmhv2/0257-UPSTREAM-dt-bindings-reset-thead-th1520-reset-Add-co.patch b/SPECS/linux-lts-kmhv2/0254-UPSTREAM-dt-bindings-reset-thead-th1520-reset-Add-co.patch similarity index 98% rename from SPECS/linux-lts-kmhv2/0257-UPSTREAM-dt-bindings-reset-thead-th1520-reset-Add-co.patch rename to SPECS/linux-lts-kmhv2/0254-UPSTREAM-dt-bindings-reset-thead-th1520-reset-Add-co.patch index 1cbde5c75c..20d4cb4ce7 100644 --- a/SPECS/linux-lts-kmhv2/0257-UPSTREAM-dt-bindings-reset-thead-th1520-reset-Add-co.patch +++ b/SPECS/linux-lts-kmhv2/0254-UPSTREAM-dt-bindings-reset-thead-th1520-reset-Add-co.patch @@ -1,7 +1,7 @@ -From 184187292f9161178cb3c60ba9bc5998781517ec Mon Sep 17 00:00:00 2001 +From 729fb80f40c116319af3f00f273cb56718995e42 Mon Sep 17 00:00:00 2001 From: Yao Zi Date: Tue, 14 Oct 2025 13:10:29 +0000 -Subject: [PATCH 257/467] UPSTREAM: dt-bindings: reset: thead,th1520-reset: Add +Subject: [RUYI PATCH] UPSTREAM: dt-bindings: reset: thead,th1520-reset: Add controllers for more subsys TH1520 SoC is divided into several subsystems, most of them have diff --git a/SPECS/linux-lts-kmhv2/0258-UPSTREAM-reset-th1520-Prepare-for-supporting-multipl.patch b/SPECS/linux-lts-kmhv2/0255-UPSTREAM-reset-th1520-Prepare-for-supporting-multipl.patch similarity index 95% rename from SPECS/linux-lts-kmhv2/0258-UPSTREAM-reset-th1520-Prepare-for-supporting-multipl.patch rename to SPECS/linux-lts-kmhv2/0255-UPSTREAM-reset-th1520-Prepare-for-supporting-multipl.patch index 350dce55d4..46e0cf3948 100644 --- a/SPECS/linux-lts-kmhv2/0258-UPSTREAM-reset-th1520-Prepare-for-supporting-multipl.patch +++ b/SPECS/linux-lts-kmhv2/0255-UPSTREAM-reset-th1520-Prepare-for-supporting-multipl.patch @@ -1,8 +1,8 @@ -From db3838d594378909391879da3362ce86ec33cc81 Mon Sep 17 00:00:00 2001 +From 822ec8590fdd9c6e8152814eca6d64a56660f962 Mon Sep 17 00:00:00 2001 From: Yao Zi Date: Tue, 14 Oct 2025 13:10:30 +0000 -Subject: [PATCH 258/467] UPSTREAM: reset: th1520: Prepare for supporting - multiple controllers +Subject: [RUYI PATCH] UPSTREAM: reset: th1520: Prepare for supporting multiple + controllers TH1520 SoC is divided into several subsystems, shipping distinct reset controllers with similar control logic. Let's make reset signal mapping diff --git a/SPECS/linux-lts-kmhv2/0259-UPSTREAM-reset-th1520-Support-reset-controllers-in-m.patch b/SPECS/linux-lts-kmhv2/0256-UPSTREAM-reset-th1520-Support-reset-controllers-in-m.patch similarity index 99% rename from SPECS/linux-lts-kmhv2/0259-UPSTREAM-reset-th1520-Support-reset-controllers-in-m.patch rename to SPECS/linux-lts-kmhv2/0256-UPSTREAM-reset-th1520-Support-reset-controllers-in-m.patch index 6e02a295c5..7a6c0e9f96 100644 --- a/SPECS/linux-lts-kmhv2/0259-UPSTREAM-reset-th1520-Support-reset-controllers-in-m.patch +++ b/SPECS/linux-lts-kmhv2/0256-UPSTREAM-reset-th1520-Support-reset-controllers-in-m.patch @@ -1,7 +1,7 @@ -From 8109a7f9d10f1d9ce7e0ee5a3f63993d591d8673 Mon Sep 17 00:00:00 2001 +From 34aaa4adc6171c1a972e81edbb9861406d7dfa83 Mon Sep 17 00:00:00 2001 From: Yao Zi Date: Tue, 14 Oct 2025 13:10:31 +0000 -Subject: [PATCH 259/467] UPSTREAM: reset: th1520: Support reset controllers in +Subject: [RUYI PATCH] UPSTREAM: reset: th1520: Support reset controllers in more subsystems Introduce reset controllers for AP, MISC, VI, VP and DSP subsystems and diff --git a/SPECS/linux-lts-kmhv2/0260-UPSTREAM-riscv-dts-thead-Add-reset-controllers-of-mo.patch b/SPECS/linux-lts-kmhv2/0257-UPSTREAM-riscv-dts-thead-Add-reset-controllers-of-mo.patch similarity index 94% rename from SPECS/linux-lts-kmhv2/0260-UPSTREAM-riscv-dts-thead-Add-reset-controllers-of-mo.patch rename to SPECS/linux-lts-kmhv2/0257-UPSTREAM-riscv-dts-thead-Add-reset-controllers-of-mo.patch index ebe12f51cf..0509d7a26d 100644 --- a/SPECS/linux-lts-kmhv2/0260-UPSTREAM-riscv-dts-thead-Add-reset-controllers-of-mo.patch +++ b/SPECS/linux-lts-kmhv2/0257-UPSTREAM-riscv-dts-thead-Add-reset-controllers-of-mo.patch @@ -1,7 +1,7 @@ -From 58993e46afb677069983e73a6be1ea0562b65730 Mon Sep 17 00:00:00 2001 +From 9edafc5f3980e8fcb1a7a18a54466898f1279c14 Mon Sep 17 00:00:00 2001 From: Yao Zi Date: Tue, 14 Oct 2025 13:10:32 +0000 -Subject: [PATCH 260/467] UPSTREAM: riscv: dts: thead: Add reset controllers of +Subject: [RUYI PATCH] UPSTREAM: riscv: dts: thead: Add reset controllers of more subsystems for TH1520 Describe reset controllers for VI, MISC, AP, DSP and AO subsystems. The diff --git a/SPECS/linux-lts-kmhv2/0261-UPSTREAM-clk-spacemit-k3-mark-top_dclk-as-CLK_IS_CRI.patch b/SPECS/linux-lts-kmhv2/0258-UPSTREAM-clk-spacemit-k3-mark-top_dclk-as-CLK_IS_CRI.patch similarity index 90% rename from SPECS/linux-lts-kmhv2/0261-UPSTREAM-clk-spacemit-k3-mark-top_dclk-as-CLK_IS_CRI.patch rename to SPECS/linux-lts-kmhv2/0258-UPSTREAM-clk-spacemit-k3-mark-top_dclk-as-CLK_IS_CRI.patch index 7b49003d10..983dd64913 100644 --- a/SPECS/linux-lts-kmhv2/0261-UPSTREAM-clk-spacemit-k3-mark-top_dclk-as-CLK_IS_CRI.patch +++ b/SPECS/linux-lts-kmhv2/0258-UPSTREAM-clk-spacemit-k3-mark-top_dclk-as-CLK_IS_CRI.patch @@ -1,7 +1,7 @@ -From 15b0da3632a0e43073d2d2875332dc913c17ce30 Mon Sep 17 00:00:00 2001 +From 5f50d2a328f7b2daa106bafdb1d4a794f52fbdb4 Mon Sep 17 00:00:00 2001 From: Troy Mitchell Date: Fri, 24 Apr 2026 16:20:32 +0800 -Subject: [PATCH 261/467] UPSTREAM: clk: spacemit: k3: mark top_dclk as +Subject: [RUYI PATCH] UPSTREAM: clk: spacemit: k3: mark top_dclk as CLK_IS_CRITICAL top_dclk is the DDR bus clock. If it is gated by clk_disable_unused, diff --git a/SPECS/linux-lts-kmhv2/0262-UPSTREAM-ASoC-spacemit-fix-RX-DMA-params-not-set-whe.patch b/SPECS/linux-lts-kmhv2/0259-UPSTREAM-ASoC-spacemit-fix-RX-DMA-params-not-set-whe.patch similarity index 91% rename from SPECS/linux-lts-kmhv2/0262-UPSTREAM-ASoC-spacemit-fix-RX-DMA-params-not-set-whe.patch rename to SPECS/linux-lts-kmhv2/0259-UPSTREAM-ASoC-spacemit-fix-RX-DMA-params-not-set-whe.patch index 3d3549d028..b11d06885a 100644 --- a/SPECS/linux-lts-kmhv2/0262-UPSTREAM-ASoC-spacemit-fix-RX-DMA-params-not-set-whe.patch +++ b/SPECS/linux-lts-kmhv2/0259-UPSTREAM-ASoC-spacemit-fix-RX-DMA-params-not-set-whe.patch @@ -1,8 +1,8 @@ -From d025cd979cf997c3b4e7096ac8dddcdd81e4c90c Mon Sep 17 00:00:00 2001 +From a7739f1ea5fb20b796b4b1d3758fd44635a40ea9 Mon Sep 17 00:00:00 2001 From: Troy Mitchell Date: Wed, 29 Apr 2026 17:00:50 +0800 -Subject: [PATCH 262/467] UPSTREAM: ASoC: spacemit: fix RX DMA params not set - when TX is running +Subject: [RUYI PATCH] UPSTREAM: ASoC: spacemit: fix RX DMA params not set when + TX is running When TX is already running (SSCR_SSE is set), the hw_params callback returns early before setting up DMA parameters for the RX stream. This diff --git a/SPECS/linux-lts-kmhv2/0263-UPSTREAM-i2c-spacemit-drop-useless-spaces.patch b/SPECS/linux-lts-kmhv2/0260-UPSTREAM-i2c-spacemit-drop-useless-spaces.patch similarity index 91% rename from SPECS/linux-lts-kmhv2/0263-UPSTREAM-i2c-spacemit-drop-useless-spaces.patch rename to SPECS/linux-lts-kmhv2/0260-UPSTREAM-i2c-spacemit-drop-useless-spaces.patch index 8c37a3b093..23a5e1bf51 100644 --- a/SPECS/linux-lts-kmhv2/0263-UPSTREAM-i2c-spacemit-drop-useless-spaces.patch +++ b/SPECS/linux-lts-kmhv2/0260-UPSTREAM-i2c-spacemit-drop-useless-spaces.patch @@ -1,7 +1,7 @@ -From 695a3cc0b23ff691c0498a95c87551886e34dd5e Mon Sep 17 00:00:00 2001 +From 2c946683705fc6706119c588fd5499c0c91b2369 Mon Sep 17 00:00:00 2001 From: Troy Mitchell Date: Fri, 26 Dec 2025 16:31:59 +0800 -Subject: [PATCH 263/467] UPSTREAM: i2c: spacemit: drop useless spaces +Subject: [RUYI PATCH] UPSTREAM: i2c: spacemit: drop useless spaces Previously, the I2C driver had an extra leading space in column 0 of included header lines. This commit removes the redundant whitespace. diff --git a/SPECS/linux-lts-kmhv2/0264-UPSTREAM-clk-at91-pmc-undef-field_-get-prep-before-d.patch b/SPECS/linux-lts-kmhv2/0261-UPSTREAM-clk-at91-pmc-undef-field_-get-prep-before-d.patch similarity index 90% rename from SPECS/linux-lts-kmhv2/0264-UPSTREAM-clk-at91-pmc-undef-field_-get-prep-before-d.patch rename to SPECS/linux-lts-kmhv2/0261-UPSTREAM-clk-at91-pmc-undef-field_-get-prep-before-d.patch index 0936955312..dbb5d3dfe0 100644 --- a/SPECS/linux-lts-kmhv2/0264-UPSTREAM-clk-at91-pmc-undef-field_-get-prep-before-d.patch +++ b/SPECS/linux-lts-kmhv2/0261-UPSTREAM-clk-at91-pmc-undef-field_-get-prep-before-d.patch @@ -1,7 +1,7 @@ -From 03331389d49d55c643b7b13c9dcfefff41959a64 Mon Sep 17 00:00:00 2001 +From fa80698856016bcd983f8ac31a38e4f108170879 Mon Sep 17 00:00:00 2001 From: Geert Uytterhoeven Date: Thu, 6 Nov 2025 14:33:49 +0100 -Subject: [PATCH 264/467] UPSTREAM: clk: at91: pmc: #undef field_{get,prep}() +Subject: [RUYI PATCH] UPSTREAM: clk: at91: pmc: #undef field_{get,prep}() before definition Prepare for the advent of globally available common field_get() and diff --git a/SPECS/linux-lts-kmhv2/0265-UPSTREAM-crypto-qat-undef-field_get-before-local-def.patch b/SPECS/linux-lts-kmhv2/0262-UPSTREAM-crypto-qat-undef-field_get-before-local-def.patch similarity index 89% rename from SPECS/linux-lts-kmhv2/0265-UPSTREAM-crypto-qat-undef-field_get-before-local-def.patch rename to SPECS/linux-lts-kmhv2/0262-UPSTREAM-crypto-qat-undef-field_get-before-local-def.patch index 1b6177367f..28c2c8a5db 100644 --- a/SPECS/linux-lts-kmhv2/0265-UPSTREAM-crypto-qat-undef-field_get-before-local-def.patch +++ b/SPECS/linux-lts-kmhv2/0262-UPSTREAM-crypto-qat-undef-field_get-before-local-def.patch @@ -1,8 +1,8 @@ -From 392241b97a7350e89982e3083de87d916d7823fe Mon Sep 17 00:00:00 2001 +From 0443b117c46d5530b02f66cefa36882031ef8c7f Mon Sep 17 00:00:00 2001 From: Geert Uytterhoeven Date: Thu, 6 Nov 2025 14:33:50 +0100 -Subject: [PATCH 265/467] UPSTREAM: crypto: qat - #undef field_get() before - local definition +Subject: [RUYI PATCH] UPSTREAM: crypto: qat - #undef field_get() before local + definition Prepare for the advent of a globally available common field_get() macro by undefining the symbol before defining a local variant. This prevents diff --git a/SPECS/linux-lts-kmhv2/0266-UPSTREAM-EDAC-ie31200-undef-field_get-before-local-d.patch b/SPECS/linux-lts-kmhv2/0263-UPSTREAM-EDAC-ie31200-undef-field_get-before-local-d.patch similarity index 87% rename from SPECS/linux-lts-kmhv2/0266-UPSTREAM-EDAC-ie31200-undef-field_get-before-local-d.patch rename to SPECS/linux-lts-kmhv2/0263-UPSTREAM-EDAC-ie31200-undef-field_get-before-local-d.patch index d0db5deaca..5bd7f8e544 100644 --- a/SPECS/linux-lts-kmhv2/0266-UPSTREAM-EDAC-ie31200-undef-field_get-before-local-d.patch +++ b/SPECS/linux-lts-kmhv2/0263-UPSTREAM-EDAC-ie31200-undef-field_get-before-local-d.patch @@ -1,8 +1,8 @@ -From 6bfc62473ec56ec0afab933ca32873fe718bc7f2 Mon Sep 17 00:00:00 2001 +From 8d1903d76c78fd4c3f54ccb47a84b23de8c65c5a Mon Sep 17 00:00:00 2001 From: Geert Uytterhoeven Date: Thu, 6 Nov 2025 14:33:51 +0100 -Subject: [PATCH 266/467] UPSTREAM: EDAC/ie31200: #undef field_get() before - local definition +Subject: [RUYI PATCH] UPSTREAM: EDAC/ie31200: #undef field_get() before local + definition Prepare for the advent of a globally available common field_get() macro by undefining the symbol before defining a local variant. This prevents diff --git a/SPECS/linux-lts-kmhv2/0267-UPSTREAM-gpio-aspeed-undef-field_-get-prep-before-lo.patch b/SPECS/linux-lts-kmhv2/0264-UPSTREAM-gpio-aspeed-undef-field_-get-prep-before-lo.patch similarity index 88% rename from SPECS/linux-lts-kmhv2/0267-UPSTREAM-gpio-aspeed-undef-field_-get-prep-before-lo.patch rename to SPECS/linux-lts-kmhv2/0264-UPSTREAM-gpio-aspeed-undef-field_-get-prep-before-lo.patch index 61221b73a7..8d05fa846c 100644 --- a/SPECS/linux-lts-kmhv2/0267-UPSTREAM-gpio-aspeed-undef-field_-get-prep-before-lo.patch +++ b/SPECS/linux-lts-kmhv2/0264-UPSTREAM-gpio-aspeed-undef-field_-get-prep-before-lo.patch @@ -1,8 +1,8 @@ -From 137405298c4f5336043e5c49266ff25e7485e66c Mon Sep 17 00:00:00 2001 +From 8490549e86aef53fa8416d6accaa31283186c10b Mon Sep 17 00:00:00 2001 From: Geert Uytterhoeven Date: Thu, 6 Nov 2025 14:33:52 +0100 -Subject: [PATCH 267/467] UPSTREAM: gpio: aspeed: #undef field_{get,prep}() - before local definition +Subject: [RUYI PATCH] UPSTREAM: gpio: aspeed: #undef field_{get,prep}() before + local definition Prepare for the advent of globally available common field_get() and field_prep() macros by undefining the symbols before defining local diff --git a/SPECS/linux-lts-kmhv2/0268-UPSTREAM-iio-dac-ad3530r-undef-field_prep-before-loc.patch b/SPECS/linux-lts-kmhv2/0265-UPSTREAM-iio-dac-ad3530r-undef-field_prep-before-loc.patch similarity index 87% rename from SPECS/linux-lts-kmhv2/0268-UPSTREAM-iio-dac-ad3530r-undef-field_prep-before-loc.patch rename to SPECS/linux-lts-kmhv2/0265-UPSTREAM-iio-dac-ad3530r-undef-field_prep-before-loc.patch index 85b6350ba6..7595552488 100644 --- a/SPECS/linux-lts-kmhv2/0268-UPSTREAM-iio-dac-ad3530r-undef-field_prep-before-loc.patch +++ b/SPECS/linux-lts-kmhv2/0265-UPSTREAM-iio-dac-ad3530r-undef-field_prep-before-loc.patch @@ -1,8 +1,8 @@ -From fa6237d944a588964130114d731d4b7480bb020d Mon Sep 17 00:00:00 2001 +From 2fda7cbf1f4289cbb26b12faf98ad22cbbf1c6b6 Mon Sep 17 00:00:00 2001 From: Geert Uytterhoeven Date: Thu, 6 Nov 2025 14:33:53 +0100 -Subject: [PATCH 268/467] UPSTREAM: iio: dac: ad3530r: #undef field_prep() - before local definition +Subject: [RUYI PATCH] UPSTREAM: iio: dac: ad3530r: #undef field_prep() before + local definition Prepare for the advent of a globally available common field_prep() macro by undefining the symbol before defining a local variant. This prevents diff --git a/SPECS/linux-lts-kmhv2/0269-UPSTREAM-iio-mlx90614-undef-field_-get-prep-before-l.patch b/SPECS/linux-lts-kmhv2/0266-UPSTREAM-iio-mlx90614-undef-field_-get-prep-before-l.patch similarity index 90% rename from SPECS/linux-lts-kmhv2/0269-UPSTREAM-iio-mlx90614-undef-field_-get-prep-before-l.patch rename to SPECS/linux-lts-kmhv2/0266-UPSTREAM-iio-mlx90614-undef-field_-get-prep-before-l.patch index 98a708ccec..9deec2c78e 100644 --- a/SPECS/linux-lts-kmhv2/0269-UPSTREAM-iio-mlx90614-undef-field_-get-prep-before-l.patch +++ b/SPECS/linux-lts-kmhv2/0266-UPSTREAM-iio-mlx90614-undef-field_-get-prep-before-l.patch @@ -1,7 +1,7 @@ -From 37980b18b9c919ed290f5d9d31476b4b92d67a1d Mon Sep 17 00:00:00 2001 +From a31ca7ca552212b34bea5cb3fcf52759dc2a28a0 Mon Sep 17 00:00:00 2001 From: Geert Uytterhoeven Date: Thu, 6 Nov 2025 14:33:54 +0100 -Subject: [PATCH 269/467] UPSTREAM: iio: mlx90614: #undef field_{get,prep}() +Subject: [RUYI PATCH] UPSTREAM: iio: mlx90614: #undef field_{get,prep}() before local definition Prepare for the advent of globally available common field_get() and diff --git a/SPECS/linux-lts-kmhv2/0270-UPSTREAM-pinctrl-ma35-undef-field_-get-prep-before-l.patch b/SPECS/linux-lts-kmhv2/0267-UPSTREAM-pinctrl-ma35-undef-field_-get-prep-before-l.patch similarity index 90% rename from SPECS/linux-lts-kmhv2/0270-UPSTREAM-pinctrl-ma35-undef-field_-get-prep-before-l.patch rename to SPECS/linux-lts-kmhv2/0267-UPSTREAM-pinctrl-ma35-undef-field_-get-prep-before-l.patch index ead3cb8e47..747d0f1115 100644 --- a/SPECS/linux-lts-kmhv2/0270-UPSTREAM-pinctrl-ma35-undef-field_-get-prep-before-l.patch +++ b/SPECS/linux-lts-kmhv2/0267-UPSTREAM-pinctrl-ma35-undef-field_-get-prep-before-l.patch @@ -1,7 +1,7 @@ -From 5ec1150af9a71fda593306905af42d92479e2e05 Mon Sep 17 00:00:00 2001 +From 92ba8033d4f60d619ebeb8f1f465e68d66004e81 Mon Sep 17 00:00:00 2001 From: Geert Uytterhoeven Date: Thu, 6 Nov 2025 14:33:55 +0100 -Subject: [PATCH 270/467] UPSTREAM: pinctrl: ma35: #undef field_{get,prep}() +Subject: [RUYI PATCH] UPSTREAM: pinctrl: ma35: #undef field_{get,prep}() before local definition Prepare for the advent of globally available common field_get() and diff --git a/SPECS/linux-lts-kmhv2/0271-UPSTREAM-soc-renesas-rz-sysc-undef-field_get-before-.patch b/SPECS/linux-lts-kmhv2/0268-UPSTREAM-soc-renesas-rz-sysc-undef-field_get-before-.patch similarity index 88% rename from SPECS/linux-lts-kmhv2/0271-UPSTREAM-soc-renesas-rz-sysc-undef-field_get-before-.patch rename to SPECS/linux-lts-kmhv2/0268-UPSTREAM-soc-renesas-rz-sysc-undef-field_get-before-.patch index a86fd11345..a8085f2c11 100644 --- a/SPECS/linux-lts-kmhv2/0271-UPSTREAM-soc-renesas-rz-sysc-undef-field_get-before-.patch +++ b/SPECS/linux-lts-kmhv2/0268-UPSTREAM-soc-renesas-rz-sysc-undef-field_get-before-.patch @@ -1,7 +1,7 @@ -From 189ddb8df1658f8de6447a903b626df7170869eb Mon Sep 17 00:00:00 2001 +From f43d3afeb48fc78d1fa9aec7aaaefdf6964e4b6c Mon Sep 17 00:00:00 2001 From: Geert Uytterhoeven Date: Thu, 6 Nov 2025 14:33:56 +0100 -Subject: [PATCH 271/467] UPSTREAM: soc: renesas: rz-sysc: #undef field_get() +Subject: [RUYI PATCH] UPSTREAM: soc: renesas: rz-sysc: #undef field_get() before local definition Prepare for the advent of a globally available common field_get() macro diff --git a/SPECS/linux-lts-kmhv2/0272-UPSTREAM-ALSA-usb-audio-undef-field_-get-prep-before.patch b/SPECS/linux-lts-kmhv2/0269-UPSTREAM-ALSA-usb-audio-undef-field_-get-prep-before.patch similarity index 90% rename from SPECS/linux-lts-kmhv2/0272-UPSTREAM-ALSA-usb-audio-undef-field_-get-prep-before.patch rename to SPECS/linux-lts-kmhv2/0269-UPSTREAM-ALSA-usb-audio-undef-field_-get-prep-before.patch index 42d41b0ad2..ae69b76f2a 100644 --- a/SPECS/linux-lts-kmhv2/0272-UPSTREAM-ALSA-usb-audio-undef-field_-get-prep-before.patch +++ b/SPECS/linux-lts-kmhv2/0269-UPSTREAM-ALSA-usb-audio-undef-field_-get-prep-before.patch @@ -1,7 +1,7 @@ -From 6293531e707d6e8a2b3ad5606ee2ed0e96173a30 Mon Sep 17 00:00:00 2001 +From a743678cdf95c66206f1cefd74ad8f2e3157f680 Mon Sep 17 00:00:00 2001 From: Geert Uytterhoeven Date: Thu, 6 Nov 2025 14:33:57 +0100 -Subject: [PATCH 272/467] UPSTREAM: ALSA: usb-audio: #undef field_{get,prep}() +Subject: [RUYI PATCH] UPSTREAM: ALSA: usb-audio: #undef field_{get,prep}() before local definition Prepare for the advent of globally available common field_get() and diff --git a/SPECS/linux-lts-kmhv2/0273-UPSTREAM-bitfield-Add-less-checking-__FIELD_-GET-PRE.patch b/SPECS/linux-lts-kmhv2/0270-UPSTREAM-bitfield-Add-less-checking-__FIELD_-GET-PRE.patch similarity index 96% rename from SPECS/linux-lts-kmhv2/0273-UPSTREAM-bitfield-Add-less-checking-__FIELD_-GET-PRE.patch rename to SPECS/linux-lts-kmhv2/0270-UPSTREAM-bitfield-Add-less-checking-__FIELD_-GET-PRE.patch index 616035b685..9a78322adf 100644 --- a/SPECS/linux-lts-kmhv2/0273-UPSTREAM-bitfield-Add-less-checking-__FIELD_-GET-PRE.patch +++ b/SPECS/linux-lts-kmhv2/0270-UPSTREAM-bitfield-Add-less-checking-__FIELD_-GET-PRE.patch @@ -1,7 +1,7 @@ -From 61e3d11ff249dabbd495ec0164ee8a1425826bb9 Mon Sep 17 00:00:00 2001 +From c59127e75e8cf8ce74f12bd0fe0bb2574674fbe4 Mon Sep 17 00:00:00 2001 From: Geert Uytterhoeven Date: Thu, 6 Nov 2025 14:34:00 +0100 -Subject: [PATCH 273/467] UPSTREAM: bitfield: Add less-checking +Subject: [RUYI PATCH] UPSTREAM: bitfield: Add less-checking __FIELD_{GET,PREP}() The BUILD_BUG_ON_MSG() check against "~0ull" works only with "unsigned diff --git a/SPECS/linux-lts-kmhv2/0274-UPSTREAM-bitfield-Add-non-constant-field_-prep-get-h.patch b/SPECS/linux-lts-kmhv2/0271-UPSTREAM-bitfield-Add-non-constant-field_-prep-get-h.patch similarity index 96% rename from SPECS/linux-lts-kmhv2/0274-UPSTREAM-bitfield-Add-non-constant-field_-prep-get-h.patch rename to SPECS/linux-lts-kmhv2/0271-UPSTREAM-bitfield-Add-non-constant-field_-prep-get-h.patch index 7c6fbc972f..68212a5dda 100644 --- a/SPECS/linux-lts-kmhv2/0274-UPSTREAM-bitfield-Add-non-constant-field_-prep-get-h.patch +++ b/SPECS/linux-lts-kmhv2/0271-UPSTREAM-bitfield-Add-non-constant-field_-prep-get-h.patch @@ -1,8 +1,8 @@ -From e7e8f944057ad724dd477ac753b3c5b9c451fdcb Mon Sep 17 00:00:00 2001 +From 9508a0e99753a0d15b30509ead3b2314fe5d2572 Mon Sep 17 00:00:00 2001 From: Geert Uytterhoeven Date: Thu, 6 Nov 2025 14:34:01 +0100 -Subject: [PATCH 274/467] UPSTREAM: bitfield: Add non-constant - field_{prep,get}() helpers +Subject: [RUYI PATCH] UPSTREAM: bitfield: Add non-constant field_{prep,get}() + helpers MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit diff --git a/SPECS/linux-lts-kmhv2/0275-UPSTREAM-clk-at91-Convert-to-common-field_-get-prep-.patch b/SPECS/linux-lts-kmhv2/0272-UPSTREAM-clk-at91-Convert-to-common-field_-get-prep-.patch similarity index 93% rename from SPECS/linux-lts-kmhv2/0275-UPSTREAM-clk-at91-Convert-to-common-field_-get-prep-.patch rename to SPECS/linux-lts-kmhv2/0272-UPSTREAM-clk-at91-Convert-to-common-field_-get-prep-.patch index 5b6ce03e18..5f249092c8 100644 --- a/SPECS/linux-lts-kmhv2/0275-UPSTREAM-clk-at91-Convert-to-common-field_-get-prep-.patch +++ b/SPECS/linux-lts-kmhv2/0272-UPSTREAM-clk-at91-Convert-to-common-field_-get-prep-.patch @@ -1,7 +1,7 @@ -From ee4a40739254d7da1f8363a89f53765733b99b28 Mon Sep 17 00:00:00 2001 +From 7ab27d3da88e00fd0367baf7b18fb5484ac4fd65 Mon Sep 17 00:00:00 2001 From: Geert Uytterhoeven Date: Thu, 6 Nov 2025 14:34:02 +0100 -Subject: [PATCH 275/467] UPSTREAM: clk: at91: Convert to common +Subject: [RUYI PATCH] UPSTREAM: clk: at91: Convert to common field_{get,prep}() helpers Drop the driver-specific field_get() and field_prep() macros, in favor diff --git a/SPECS/linux-lts-kmhv2/0276-UPSTREAM-crypto-qat-convert-to-common-field_get-help.patch b/SPECS/linux-lts-kmhv2/0273-UPSTREAM-crypto-qat-convert-to-common-field_get-help.patch similarity index 91% rename from SPECS/linux-lts-kmhv2/0276-UPSTREAM-crypto-qat-convert-to-common-field_get-help.patch rename to SPECS/linux-lts-kmhv2/0273-UPSTREAM-crypto-qat-convert-to-common-field_get-help.patch index 98b12e48bb..ad7e2a30bc 100644 --- a/SPECS/linux-lts-kmhv2/0276-UPSTREAM-crypto-qat-convert-to-common-field_get-help.patch +++ b/SPECS/linux-lts-kmhv2/0273-UPSTREAM-crypto-qat-convert-to-common-field_get-help.patch @@ -1,7 +1,7 @@ -From 7a384b9f65e72b723c2c45d4d331ac597edb9b2a Mon Sep 17 00:00:00 2001 +From e7cc1307805b330990170342cd2e17a4790cae37 Mon Sep 17 00:00:00 2001 From: Geert Uytterhoeven Date: Thu, 6 Nov 2025 14:34:03 +0100 -Subject: [PATCH 276/467] UPSTREAM: crypto: qat - convert to common field_get() +Subject: [RUYI PATCH] UPSTREAM: crypto: qat - convert to common field_get() helper Drop the driver-specific field_get() macro, in favor of the globally diff --git a/SPECS/linux-lts-kmhv2/0277-UPSTREAM-EDAC-ie31200-Convert-to-common-field_get-he.patch b/SPECS/linux-lts-kmhv2/0274-UPSTREAM-EDAC-ie31200-Convert-to-common-field_get-he.patch similarity index 90% rename from SPECS/linux-lts-kmhv2/0277-UPSTREAM-EDAC-ie31200-Convert-to-common-field_get-he.patch rename to SPECS/linux-lts-kmhv2/0274-UPSTREAM-EDAC-ie31200-Convert-to-common-field_get-he.patch index 137572c73d..15800bac47 100644 --- a/SPECS/linux-lts-kmhv2/0277-UPSTREAM-EDAC-ie31200-Convert-to-common-field_get-he.patch +++ b/SPECS/linux-lts-kmhv2/0274-UPSTREAM-EDAC-ie31200-Convert-to-common-field_get-he.patch @@ -1,7 +1,7 @@ -From ce4af8fd49443cd868f89dbe502bbcca49cd05dd Mon Sep 17 00:00:00 2001 +From 435c6fcc72eff501ecd29fabd2fedec939c67aa6 Mon Sep 17 00:00:00 2001 From: Geert Uytterhoeven Date: Thu, 6 Nov 2025 14:34:04 +0100 -Subject: [PATCH 277/467] UPSTREAM: EDAC/ie31200: Convert to common field_get() +Subject: [RUYI PATCH] UPSTREAM: EDAC/ie31200: Convert to common field_get() helper Drop the driver-specific field_get() macro, in favor of the globally diff --git a/SPECS/linux-lts-kmhv2/0278-UPSTREAM-gpio-aspeed-Convert-to-common-field_-get-pr.patch b/SPECS/linux-lts-kmhv2/0275-UPSTREAM-gpio-aspeed-Convert-to-common-field_-get-pr.patch similarity index 91% rename from SPECS/linux-lts-kmhv2/0278-UPSTREAM-gpio-aspeed-Convert-to-common-field_-get-pr.patch rename to SPECS/linux-lts-kmhv2/0275-UPSTREAM-gpio-aspeed-Convert-to-common-field_-get-pr.patch index 071ded89ee..8bbf1a93ec 100644 --- a/SPECS/linux-lts-kmhv2/0278-UPSTREAM-gpio-aspeed-Convert-to-common-field_-get-pr.patch +++ b/SPECS/linux-lts-kmhv2/0275-UPSTREAM-gpio-aspeed-Convert-to-common-field_-get-pr.patch @@ -1,7 +1,7 @@ -From 60aa83cc5e5af809b2fd0c7b94edda8ab4da2eb1 Mon Sep 17 00:00:00 2001 +From d812b182981498ab3054a3c64531710d096f4e8a Mon Sep 17 00:00:00 2001 From: Geert Uytterhoeven Date: Thu, 6 Nov 2025 14:34:05 +0100 -Subject: [PATCH 278/467] UPSTREAM: gpio: aspeed: Convert to common +Subject: [RUYI PATCH] UPSTREAM: gpio: aspeed: Convert to common field_{get,prep}() helpers Drop the driver-specific field_get() and field_prep() macros, in favor diff --git a/SPECS/linux-lts-kmhv2/0279-UPSTREAM-iio-dac-Convert-to-common-field_prep-helper.patch b/SPECS/linux-lts-kmhv2/0276-UPSTREAM-iio-dac-Convert-to-common-field_prep-helper.patch similarity index 88% rename from SPECS/linux-lts-kmhv2/0279-UPSTREAM-iio-dac-Convert-to-common-field_prep-helper.patch rename to SPECS/linux-lts-kmhv2/0276-UPSTREAM-iio-dac-Convert-to-common-field_prep-helper.patch index 36b95a7cc1..0c7f9de5cc 100644 --- a/SPECS/linux-lts-kmhv2/0279-UPSTREAM-iio-dac-Convert-to-common-field_prep-helper.patch +++ b/SPECS/linux-lts-kmhv2/0276-UPSTREAM-iio-dac-Convert-to-common-field_prep-helper.patch @@ -1,7 +1,7 @@ -From 762f69a712f2a14242aa86c29e0cefe82355d45e Mon Sep 17 00:00:00 2001 +From 8c762e56b97e2dfa47081feffdf43f03d3f977e5 Mon Sep 17 00:00:00 2001 From: Geert Uytterhoeven Date: Thu, 6 Nov 2025 14:34:06 +0100 -Subject: [PATCH 279/467] UPSTREAM: iio: dac: Convert to common field_prep() +Subject: [RUYI PATCH] UPSTREAM: iio: dac: Convert to common field_prep() helper Drop the driver-specific field_prep() macro, in favor of the globally diff --git a/SPECS/linux-lts-kmhv2/0280-UPSTREAM-iio-mlx90614-Convert-to-common-field_-get-p.patch b/SPECS/linux-lts-kmhv2/0277-UPSTREAM-iio-mlx90614-Convert-to-common-field_-get-p.patch similarity index 92% rename from SPECS/linux-lts-kmhv2/0280-UPSTREAM-iio-mlx90614-Convert-to-common-field_-get-p.patch rename to SPECS/linux-lts-kmhv2/0277-UPSTREAM-iio-mlx90614-Convert-to-common-field_-get-p.patch index 88ee4da2de..5dec21e9bb 100644 --- a/SPECS/linux-lts-kmhv2/0280-UPSTREAM-iio-mlx90614-Convert-to-common-field_-get-p.patch +++ b/SPECS/linux-lts-kmhv2/0277-UPSTREAM-iio-mlx90614-Convert-to-common-field_-get-p.patch @@ -1,7 +1,7 @@ -From 2ddc0140e0d67f1413257af9982a7bc533c450f1 Mon Sep 17 00:00:00 2001 +From c7ea1c7ee160166a1ed64ca27681872c97335904 Mon Sep 17 00:00:00 2001 From: Geert Uytterhoeven Date: Thu, 6 Nov 2025 14:34:07 +0100 -Subject: [PATCH 280/467] UPSTREAM: iio: mlx90614: Convert to common +Subject: [RUYI PATCH] UPSTREAM: iio: mlx90614: Convert to common field_{get,prep}() helpers Drop the driver-specific field_get() and field_prep() macros, in favor diff --git a/SPECS/linux-lts-kmhv2/0281-UPSTREAM-pinctrl-ma35-Convert-to-common-field_-get-p.patch b/SPECS/linux-lts-kmhv2/0278-UPSTREAM-pinctrl-ma35-Convert-to-common-field_-get-p.patch similarity index 91% rename from SPECS/linux-lts-kmhv2/0281-UPSTREAM-pinctrl-ma35-Convert-to-common-field_-get-p.patch rename to SPECS/linux-lts-kmhv2/0278-UPSTREAM-pinctrl-ma35-Convert-to-common-field_-get-p.patch index f9a128bab3..d757b43507 100644 --- a/SPECS/linux-lts-kmhv2/0281-UPSTREAM-pinctrl-ma35-Convert-to-common-field_-get-p.patch +++ b/SPECS/linux-lts-kmhv2/0278-UPSTREAM-pinctrl-ma35-Convert-to-common-field_-get-p.patch @@ -1,7 +1,7 @@ -From 0eb5bae05723a59adbe4e3bbbab9ba880ecd2177 Mon Sep 17 00:00:00 2001 +From 2cbda24297eace09de563cb06455c5936a00088e Mon Sep 17 00:00:00 2001 From: Geert Uytterhoeven Date: Thu, 6 Nov 2025 14:34:08 +0100 -Subject: [PATCH 281/467] UPSTREAM: pinctrl: ma35: Convert to common +Subject: [RUYI PATCH] UPSTREAM: pinctrl: ma35: Convert to common field_{get,prep}() helpers Drop the driver-specific field_get() and field_prep() macros, in favor diff --git a/SPECS/linux-lts-kmhv2/0282-UPSTREAM-soc-renesas-rz-sysc-Convert-to-common-field.patch b/SPECS/linux-lts-kmhv2/0279-UPSTREAM-soc-renesas-rz-sysc-Convert-to-common-field.patch similarity index 89% rename from SPECS/linux-lts-kmhv2/0282-UPSTREAM-soc-renesas-rz-sysc-Convert-to-common-field.patch rename to SPECS/linux-lts-kmhv2/0279-UPSTREAM-soc-renesas-rz-sysc-Convert-to-common-field.patch index 53220f5a78..f9d9f0c492 100644 --- a/SPECS/linux-lts-kmhv2/0282-UPSTREAM-soc-renesas-rz-sysc-Convert-to-common-field.patch +++ b/SPECS/linux-lts-kmhv2/0279-UPSTREAM-soc-renesas-rz-sysc-Convert-to-common-field.patch @@ -1,7 +1,7 @@ -From 8f99a7fa8c497ef1e8a0fc31678125daf8f04aef Mon Sep 17 00:00:00 2001 +From 8833c4b417190dce1a91dbf31da82221a266f133 Mon Sep 17 00:00:00 2001 From: Geert Uytterhoeven Date: Thu, 6 Nov 2025 14:34:09 +0100 -Subject: [PATCH 282/467] UPSTREAM: soc: renesas: rz-sysc: Convert to common +Subject: [RUYI PATCH] UPSTREAM: soc: renesas: rz-sysc: Convert to common field_get() helper Drop the driver-specific field_get() macro, in favor of the globally diff --git a/SPECS/linux-lts-kmhv2/0283-UPSTREAM-ALSA-usb-audio-Convert-to-common-field_-get.patch b/SPECS/linux-lts-kmhv2/0280-UPSTREAM-ALSA-usb-audio-Convert-to-common-field_-get.patch similarity index 91% rename from SPECS/linux-lts-kmhv2/0283-UPSTREAM-ALSA-usb-audio-Convert-to-common-field_-get.patch rename to SPECS/linux-lts-kmhv2/0280-UPSTREAM-ALSA-usb-audio-Convert-to-common-field_-get.patch index 2ff6a0b412..9e36e61789 100644 --- a/SPECS/linux-lts-kmhv2/0283-UPSTREAM-ALSA-usb-audio-Convert-to-common-field_-get.patch +++ b/SPECS/linux-lts-kmhv2/0280-UPSTREAM-ALSA-usb-audio-Convert-to-common-field_-get.patch @@ -1,7 +1,7 @@ -From a254a77e47af456314d9166e8c477362f99da854 Mon Sep 17 00:00:00 2001 +From d565f3b6ace21a51f62812c86add16af8553952d Mon Sep 17 00:00:00 2001 From: Geert Uytterhoeven Date: Thu, 6 Nov 2025 14:34:10 +0100 -Subject: [PATCH 283/467] UPSTREAM: ALSA: usb-audio: Convert to common +Subject: [RUYI PATCH] UPSTREAM: ALSA: usb-audio: Convert to common field_{get,prep}() helpers Drop the driver-specific field_get() and field_prep() macros, in favor diff --git a/SPECS/linux-lts-kmhv2/0284-UPSTREAM-clk-renesas-Use-bitfield-helpers.patch b/SPECS/linux-lts-kmhv2/0281-UPSTREAM-clk-renesas-Use-bitfield-helpers.patch similarity index 97% rename from SPECS/linux-lts-kmhv2/0284-UPSTREAM-clk-renesas-Use-bitfield-helpers.patch rename to SPECS/linux-lts-kmhv2/0281-UPSTREAM-clk-renesas-Use-bitfield-helpers.patch index c4a78ea5e6..383627c806 100644 --- a/SPECS/linux-lts-kmhv2/0284-UPSTREAM-clk-renesas-Use-bitfield-helpers.patch +++ b/SPECS/linux-lts-kmhv2/0281-UPSTREAM-clk-renesas-Use-bitfield-helpers.patch @@ -1,7 +1,7 @@ -From 40419cc775df729cfc32aee2a6b02c853ad42dd1 Mon Sep 17 00:00:00 2001 +From 019a7bd0c854f0ec67ae6e379c46f05ccf4be4dd Mon Sep 17 00:00:00 2001 From: Geert Uytterhoeven Date: Thu, 6 Nov 2025 14:34:13 +0100 -Subject: [PATCH 284/467] UPSTREAM: clk: renesas: Use bitfield helpers +Subject: [RUYI PATCH] UPSTREAM: clk: renesas: Use bitfield helpers Use the FIELD_{GET,PREP}() and field_{get,prep}() helpers for const respective non-const bitfields, instead of open-coding the same diff --git a/SPECS/linux-lts-kmhv2/0285-UPSTREAM-soc-renesas-Use-bitfield-helpers.patch b/SPECS/linux-lts-kmhv2/0282-UPSTREAM-soc-renesas-Use-bitfield-helpers.patch similarity index 90% rename from SPECS/linux-lts-kmhv2/0285-UPSTREAM-soc-renesas-Use-bitfield-helpers.patch rename to SPECS/linux-lts-kmhv2/0282-UPSTREAM-soc-renesas-Use-bitfield-helpers.patch index d10c6a26d4..4685894400 100644 --- a/SPECS/linux-lts-kmhv2/0285-UPSTREAM-soc-renesas-Use-bitfield-helpers.patch +++ b/SPECS/linux-lts-kmhv2/0282-UPSTREAM-soc-renesas-Use-bitfield-helpers.patch @@ -1,7 +1,7 @@ -From fbb168fdc7492006a9f7780a6ec49834031eea6e Mon Sep 17 00:00:00 2001 +From 23fef80ff6550ef4d1ece307b5c601d37a1fe71c Mon Sep 17 00:00:00 2001 From: Geert Uytterhoeven Date: Thu, 6 Nov 2025 14:34:14 +0100 -Subject: [PATCH 285/467] UPSTREAM: soc: renesas: Use bitfield helpers +Subject: [RUYI PATCH] UPSTREAM: soc: renesas: Use bitfield helpers Use the field_get() helper, instead of open-coding the same operation. diff --git a/SPECS/linux-lts-kmhv2/0286-UPSTREAM-dt-bindings-usb-Add-support-for-Terminus-FE.patch b/SPECS/linux-lts-kmhv2/0283-UPSTREAM-dt-bindings-usb-Add-support-for-Terminus-FE.patch similarity index 94% rename from SPECS/linux-lts-kmhv2/0286-UPSTREAM-dt-bindings-usb-Add-support-for-Terminus-FE.patch rename to SPECS/linux-lts-kmhv2/0283-UPSTREAM-dt-bindings-usb-Add-support-for-Terminus-FE.patch index 0a3a2a1e7d..45f824af71 100644 --- a/SPECS/linux-lts-kmhv2/0286-UPSTREAM-dt-bindings-usb-Add-support-for-Terminus-FE.patch +++ b/SPECS/linux-lts-kmhv2/0283-UPSTREAM-dt-bindings-usb-Add-support-for-Terminus-FE.patch @@ -1,7 +1,7 @@ -From 42fe4e15f9f853b366dfddb9cd5fdda93c07db7b Mon Sep 17 00:00:00 2001 +From 56a298b59d7189961a4e6a04e449718ff2944c21 Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Thu, 19 Mar 2026 07:51:03 +0000 -Subject: [PATCH 286/467] UPSTREAM: dt-bindings: usb: Add support for Terminus +Subject: [RUYI PATCH] UPSTREAM: dt-bindings: usb: Add support for Terminus FE1.1s USB2.0 Hub controller Terminus FE1.1s is USB2.0 protocol compliant 4-port USB HUB, It support diff --git a/SPECS/linux-lts-kmhv2/0287-UPSTREAM-usb-misc-onboard_usb_dev-Add-Terminus-FE1.1.patch b/SPECS/linux-lts-kmhv2/0284-UPSTREAM-usb-misc-onboard_usb_dev-Add-Terminus-FE1.1.patch similarity index 95% rename from SPECS/linux-lts-kmhv2/0287-UPSTREAM-usb-misc-onboard_usb_dev-Add-Terminus-FE1.1.patch rename to SPECS/linux-lts-kmhv2/0284-UPSTREAM-usb-misc-onboard_usb_dev-Add-Terminus-FE1.1.patch index c3ed343dd6..d9fcc7fdbd 100644 --- a/SPECS/linux-lts-kmhv2/0287-UPSTREAM-usb-misc-onboard_usb_dev-Add-Terminus-FE1.1.patch +++ b/SPECS/linux-lts-kmhv2/0284-UPSTREAM-usb-misc-onboard_usb_dev-Add-Terminus-FE1.1.patch @@ -1,7 +1,7 @@ -From 6004bf7f9a93b484f6869e38172fbf3543cd888a Mon Sep 17 00:00:00 2001 +From 7cc16fe69696bb942fb6f1b9a227fd74082707ae Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Thu, 19 Mar 2026 07:51:04 +0000 -Subject: [PATCH 287/467] UPSTREAM: usb: misc: onboard_usb_dev: Add Terminus +Subject: [RUYI PATCH] UPSTREAM: usb: misc: onboard_usb_dev: Add Terminus FE1.1s USB2.0 Hub (1a40:0101) Terminus FE1.1s is USB2.0 protocol compliant 4-port USB HUB, It support diff --git a/SPECS/linux-lts-kmhv2/0288-UPSTREAM-riscv-Define-__riscv_copy_-vec_-words-bytes.patch b/SPECS/linux-lts-kmhv2/0285-UPSTREAM-riscv-Define-__riscv_copy_-vec_-words-bytes.patch similarity index 97% rename from SPECS/linux-lts-kmhv2/0288-UPSTREAM-riscv-Define-__riscv_copy_-vec_-words-bytes.patch rename to SPECS/linux-lts-kmhv2/0285-UPSTREAM-riscv-Define-__riscv_copy_-vec_-words-bytes.patch index 1d01c9a2ed..366e334f76 100644 --- a/SPECS/linux-lts-kmhv2/0288-UPSTREAM-riscv-Define-__riscv_copy_-vec_-words-bytes.patch +++ b/SPECS/linux-lts-kmhv2/0285-UPSTREAM-riscv-Define-__riscv_copy_-vec_-words-bytes.patch @@ -1,7 +1,7 @@ -From ed5a7f0bdca54d386d2e845f3ebadc8b204c271c Mon Sep 17 00:00:00 2001 +From 3df7916fd6c198c8e58d6d4914ab06ebca3918bc Mon Sep 17 00:00:00 2001 From: Nathan Chancellor Date: Wed, 29 Apr 2026 20:38:17 -0600 -Subject: [PATCH 288/467] UPSTREAM: riscv: Define +Subject: [RUYI PATCH] UPSTREAM: riscv: Define __riscv_copy_{,vec_}{words,bytes}_unaligned() using SYM_TYPED_FUNC_START After commit 67bdd7b01387 ("riscv: Split out measure_cycles() for diff --git a/SPECS/linux-lts-kmhv2/0290-UPSTREAM-spi-dt-bindings-fsl-qspi-support-SpacemiT-K.patch b/SPECS/linux-lts-kmhv2/0286-UPSTREAM-spi-dt-bindings-fsl-qspi-support-SpacemiT-K.patch similarity index 90% rename from SPECS/linux-lts-kmhv2/0290-UPSTREAM-spi-dt-bindings-fsl-qspi-support-SpacemiT-K.patch rename to SPECS/linux-lts-kmhv2/0286-UPSTREAM-spi-dt-bindings-fsl-qspi-support-SpacemiT-K.patch index 9e5685bd91..74474ab04e 100644 --- a/SPECS/linux-lts-kmhv2/0290-UPSTREAM-spi-dt-bindings-fsl-qspi-support-SpacemiT-K.patch +++ b/SPECS/linux-lts-kmhv2/0286-UPSTREAM-spi-dt-bindings-fsl-qspi-support-SpacemiT-K.patch @@ -1,8 +1,8 @@ -From b163c53eda4a5dd98999c324051fbec43d33e6d9 Mon Sep 17 00:00:00 2001 +From 2eae98ea7476677c8119a80ff9bf50c8a3600315 Mon Sep 17 00:00:00 2001 From: Zhengyu He Date: Thu, 21 May 2026 22:44:45 +0800 -Subject: [PATCH 290/467] UPSTREAM: spi: dt-bindings: fsl-qspi: support - SpacemiT K3 +Subject: [RUYI PATCH] UPSTREAM: spi: dt-bindings: fsl-qspi: support SpacemiT + K3 Add the SpacemiT K3 QSPI compatible to the fsl-qspi binding. diff --git a/SPECS/linux-lts-kmhv2/0291-UPSTREAM-RISC-V-KVM-Fix-NULL-pointer-dereference-in-.patch b/SPECS/linux-lts-kmhv2/0287-UPSTREAM-RISC-V-KVM-Fix-NULL-pointer-dereference-in-.patch similarity index 90% rename from SPECS/linux-lts-kmhv2/0291-UPSTREAM-RISC-V-KVM-Fix-NULL-pointer-dereference-in-.patch rename to SPECS/linux-lts-kmhv2/0287-UPSTREAM-RISC-V-KVM-Fix-NULL-pointer-dereference-in-.patch index 1e760e063a..cee092d499 100644 --- a/SPECS/linux-lts-kmhv2/0291-UPSTREAM-RISC-V-KVM-Fix-NULL-pointer-dereference-in-.patch +++ b/SPECS/linux-lts-kmhv2/0287-UPSTREAM-RISC-V-KVM-Fix-NULL-pointer-dereference-in-.patch @@ -1,8 +1,8 @@ -From ffdb403e8aa1eacebe47a4796578523b663508ee Mon Sep 17 00:00:00 2001 +From 4f4bff270953588decae0547de96ac02939beaad Mon Sep 17 00:00:00 2001 From: Jiakai Xu Date: Sun, 17 May 2026 12:44:14 +0000 -Subject: [PATCH 291/467] UPSTREAM: RISC-V: KVM: Fix NULL pointer dereference - in SBI v0.1 SEND_IPI handler +Subject: [RUYI PATCH] UPSTREAM: RISC-V: KVM: Fix NULL pointer dereference in + SBI v0.1 SEND_IPI handler The SBI v0.1 SEND_IPI handler iterates over the hart mask and calls kvm_get_vcpu_by_id() to find the target vcpu for each set bit. When a diff --git a/SPECS/linux-lts-kmhv2/0288-UPSTREAM-dt-bindings-mmc-sdhci-of-dwcmshc-Add-Eswin-.patch b/SPECS/linux-lts-kmhv2/0288-UPSTREAM-dt-bindings-mmc-sdhci-of-dwcmshc-Add-Eswin-.patch new file mode 100644 index 0000000000..e7deac9aea --- /dev/null +++ b/SPECS/linux-lts-kmhv2/0288-UPSTREAM-dt-bindings-mmc-sdhci-of-dwcmshc-Add-Eswin-.patch @@ -0,0 +1,108 @@ +From bb40d8362ee33eb3d7341201cc0193113631e03c Mon Sep 17 00:00:00 2001 +From: Huan He +Date: Sun, 19 Oct 2025 19:52:38 +0800 +Subject: [RUYI PATCH] UPSTREAM: dt-bindings: mmc: sdhci-of-dwcmshc: Add Eswin + EIC7700 + +EIC7700 use Synopsys dwcmshc IP for SD/eMMC controllers. +Add Eswin EIC7700 support in sdhci-of-dwcmshc.yaml. + +Signed-off-by: Huan He +Reviewed-by: Conor Dooley +Signed-off-by: Ulf Hansson +(cherry picked from commit 30009a21f257a02feea7a7708ef3d0118e7f824a) +Signed-off-by: Han Gao +--- + .../bindings/mmc/snps,dwcmshc-sdhci.yaml | 57 +++++++++++++++++-- + 1 file changed, 51 insertions(+), 6 deletions(-) + +diff --git a/Documentation/devicetree/bindings/mmc/snps,dwcmshc-sdhci.yaml b/Documentation/devicetree/bindings/mmc/snps,dwcmshc-sdhci.yaml +index f882219a0a26..7e7c55dc2440 100644 +--- a/Documentation/devicetree/bindings/mmc/snps,dwcmshc-sdhci.yaml ++++ b/Documentation/devicetree/bindings/mmc/snps,dwcmshc-sdhci.yaml +@@ -30,6 +30,7 @@ properties: + - sophgo,sg2002-dwcmshc + - sophgo,sg2042-dwcmshc + - thead,th1520-dwcmshc ++ - eswin,eic7700-dwcmshc + + reg: + maxItems: 1 +@@ -52,17 +53,30 @@ properties: + maxItems: 5 + + reset-names: +- items: +- - const: core +- - const: bus +- - const: axi +- - const: block +- - const: timer ++ maxItems: 5 + + rockchip,txclk-tapnum: + description: Specify the number of delay for tx sampling. + $ref: /schemas/types.yaml#/definitions/uint8 + ++ eswin,hsp-sp-csr: ++ $ref: /schemas/types.yaml#/definitions/phandle-array ++ items: ++ - items: ++ - description: Phandle to HSP(High-Speed Peripheral) device ++ - description: Offset of the stability status register for internal ++ clock. ++ - description: Offset of the stability register for host regulator ++ voltage. ++ description: ++ HSP CSR is to control and get status of different high-speed peripherals ++ (such as Ethernet, USB, SATA, etc.) via register, which can tune ++ board-level's parameters of PHY, etc. ++ ++ eswin,drive-impedance-ohms: ++ description: Specifies the drive impedance in Ohm. ++ enum: [33, 40, 50, 66, 100] ++ + required: + - compatible + - reg +@@ -110,6 +124,37 @@ allOf: + - const: block + - const: timer + ++ - if: ++ properties: ++ compatible: ++ contains: ++ const: eswin,eic7700-dwcmshc ++ then: ++ properties: ++ resets: ++ minItems: 4 ++ maxItems: 4 ++ reset-names: ++ items: ++ - const: axi ++ - const: phy ++ - const: prstn ++ - const: txrx ++ required: ++ - eswin,hsp-sp-csr ++ - eswin,drive-impedance-ohms ++ else: ++ properties: ++ resets: ++ maxItems: 5 ++ reset-names: ++ items: ++ - const: core ++ - const: bus ++ - const: axi ++ - const: block ++ - const: timer ++ + - if: + properties: + compatible: +-- +2.53.0 + diff --git a/SPECS/linux-lts-kmhv2/0289-UPSTREAM-mmc-sdhci-of-dwcmshc-Add-support-for-Eswin-.patch b/SPECS/linux-lts-kmhv2/0289-UPSTREAM-mmc-sdhci-of-dwcmshc-Add-support-for-Eswin-.patch new file mode 100644 index 0000000000..ca470143dd --- /dev/null +++ b/SPECS/linux-lts-kmhv2/0289-UPSTREAM-mmc-sdhci-of-dwcmshc-Add-support-for-Eswin-.patch @@ -0,0 +1,614 @@ +From 09f0d19162ff660efb7b93fd764ae93f6d004129 Mon Sep 17 00:00:00 2001 +From: Huan He +Date: Sun, 19 Oct 2025 19:53:16 +0800 +Subject: [RUYI PATCH] UPSTREAM: mmc: sdhci-of-dwcmshc: Add support for Eswin + EIC7700 + +Add support for the mmc controller in the Eswin EIC7700 with the new +compatible "eswin,eic7700-dwcmshc". Implement custom sdhci_ops for +set_clock, reset, set_uhs_signaling, platform_execute_tuning. + +Signed-off-by: Huan He +Acked-by: Adrian Hunter +Signed-off-by: Ulf Hansson +(cherry picked from commit 32b2633219d3509d8174737bb0a8afa060e55655) +Signed-off-by: Han Gao +--- + drivers/mmc/host/sdhci-of-dwcmshc.c | 502 +++++++++++++++++++++++++++- + 1 file changed, 491 insertions(+), 11 deletions(-) + +diff --git a/drivers/mmc/host/sdhci-of-dwcmshc.c b/drivers/mmc/host/sdhci-of-dwcmshc.c +index 5b7ffc359414..dfad61f332c4 100644 +--- a/drivers/mmc/host/sdhci-of-dwcmshc.c ++++ b/drivers/mmc/host/sdhci-of-dwcmshc.c +@@ -11,6 +11,7 @@ + #include + #include + #include ++#include + #include + #include + #include +@@ -19,8 +20,11 @@ + #include + #include + #include ++#include + #include + #include ++#include ++#include + + #include "sdhci-pltfm.h" + #include "cqhci.h" +@@ -39,6 +43,7 @@ + #define DWCMSHC_CARD_IS_EMMC BIT(0) + #define DWCMSHC_ENHANCED_STROBE BIT(8) + #define DWCMSHC_EMMC_ATCTRL 0x40 ++#define DWCMSHC_AT_STAT 0x44 + /* Tuning and auto-tuning fields in AT_CTRL_R control register */ + #define AT_CTRL_AT_EN BIT(0) /* autotuning is enabled */ + #define AT_CTRL_CI_SEL BIT(1) /* interval to drive center phase select */ +@@ -194,6 +199,19 @@ + #define PHY_DLLDL_CNFG_SLV_INPSEL_MASK GENMASK(6, 5) /* bits [6:5] */ + #define PHY_DLLDL_CNFG_SLV_INPSEL 0x3 /* clock source select for slave DL */ + ++/* PHY DLL offset setting register */ ++#define PHY_DLL_OFFST_R (DWC_MSHC_PTR_PHY_R + 0x29) ++/* DLL LBT setting register */ ++#define PHY_DLLBT_CNFG_R (DWC_MSHC_PTR_PHY_R + 0x2c) ++/* DLL Status register */ ++#define PHY_DLL_STATUS_R (DWC_MSHC_PTR_PHY_R + 0x2e) ++#define DLL_LOCK_STS BIT(0)/* DLL is locked and ready */ ++/* ++ * Captures the value of DLL's lock error status information. Value is valid ++ * only when LOCK_STS is set. ++ */ ++#define DLL_ERROR_STS BIT(1) ++ + #define FLAG_IO_FIXED_1V8 BIT(0) + + #define BOUNDARY_OK(addr, len) \ +@@ -206,6 +224,31 @@ + /* SMC call for BlueField-3 eMMC RST_N */ + #define BLUEFIELD_SMC_SET_EMMC_RST_N 0x82000007 + ++/* Eswin specific Registers */ ++#define EIC7700_CARD_CLK_STABLE BIT(28) ++#define EIC7700_INT_BCLK_STABLE BIT(16) ++#define EIC7700_INT_ACLK_STABLE BIT(8) ++#define EIC7700_INT_TMCLK_STABLE BIT(0) ++#define EIC7700_INT_CLK_STABLE (EIC7700_CARD_CLK_STABLE | \ ++ EIC7700_INT_ACLK_STABLE | \ ++ EIC7700_INT_BCLK_STABLE | \ ++ EIC7700_INT_TMCLK_STABLE) ++#define EIC7700_HOST_VAL_STABLE BIT(0) ++ ++/* strength definition */ ++#define PHYCTRL_DR_33OHM 0xee ++#define PHYCTRL_DR_40OHM 0xcc ++#define PHYCTRL_DR_50OHM 0x88 ++#define PHYCTRL_DR_66OHM 0x44 ++#define PHYCTRL_DR_100OHM 0x00 ++ ++#define MAX_PHASE_CODE 0xff ++#define TUNING_RANGE_THRESHOLD 40 ++#define PHY_CLK_MAX_DELAY_MASK 0x7f ++#define PHY_DELAY_CODE_MAX 0x7f ++#define PHY_DELAY_CODE_EMMC 0x17 ++#define PHY_DELAY_CODE_SD 0x55 ++ + enum dwcmshc_rk_type { + DWCMSHC_RK3568, + DWCMSHC_RK3588, +@@ -217,6 +260,11 @@ struct rk35xx_priv { + u8 txclk_tapnum; + }; + ++struct eic7700_priv { ++ struct reset_control *reset; ++ unsigned int drive_impedance; ++}; ++ + #define DWCMSHC_MAX_OTHER_CLKS 3 + + struct dwcmshc_priv { +@@ -238,6 +286,17 @@ struct dwcmshc_pltfm_data { + void (*postinit)(struct sdhci_host *host, struct dwcmshc_priv *dwc_priv); + }; + ++static void dwcmshc_enable_card_clk(struct sdhci_host *host) ++{ ++ u16 ctrl; ++ ++ ctrl = sdhci_readw(host, SDHCI_CLOCK_CONTROL); ++ if ((ctrl & SDHCI_CLOCK_INT_EN) && !(ctrl & SDHCI_CLOCK_CARD_EN)) { ++ ctrl |= SDHCI_CLOCK_CARD_EN; ++ sdhci_writew(host, ctrl, SDHCI_CLOCK_CONTROL); ++ } ++} ++ + static int dwcmshc_get_enable_other_clks(struct device *dev, + struct dwcmshc_priv *priv, + int num_clks, +@@ -1120,6 +1179,411 @@ static int sg2042_init(struct device *dev, struct sdhci_host *host, + ARRAY_SIZE(clk_ids), clk_ids); + } + ++static void sdhci_eic7700_set_clock(struct sdhci_host *host, unsigned int clock) ++{ ++ struct sdhci_pltfm_host *pltfm_host = sdhci_priv(host); ++ u16 clk; ++ ++ host->mmc->actual_clock = clock; ++ ++ if (clock == 0) { ++ sdhci_set_clock(host, clock); ++ return; ++ } ++ ++ clk_set_rate(pltfm_host->clk, clock); ++ ++ clk = sdhci_readw(host, SDHCI_CLOCK_CONTROL); ++ clk |= SDHCI_CLOCK_INT_EN; ++ sdhci_writew(host, clk, SDHCI_CLOCK_CONTROL); ++ ++ dwcmshc_enable_card_clk(host); ++} ++ ++static void sdhci_eic7700_config_phy_delay(struct sdhci_host *host, int delay) ++{ ++ delay &= PHY_CLK_MAX_DELAY_MASK; ++ ++ /* phy clk delay line config */ ++ sdhci_writeb(host, PHY_SDCLKDL_CNFG_UPDATE, PHY_SDCLKDL_CNFG_R); ++ sdhci_writeb(host, delay, PHY_SDCLKDL_DC_R); ++ sdhci_writeb(host, 0x0, PHY_SDCLKDL_CNFG_R); ++} ++ ++static void sdhci_eic7700_config_phy(struct sdhci_host *host) ++{ ++ struct sdhci_pltfm_host *pltfm_host = sdhci_priv(host); ++ struct dwcmshc_priv *dwc_priv = sdhci_pltfm_priv(pltfm_host); ++ u32 emmc_caps = MMC_CAP2_NO_SD | MMC_CAP2_NO_SDIO; ++ struct eic7700_priv *priv = dwc_priv->priv; ++ unsigned int val, drv; ++ ++ drv = FIELD_PREP(PHY_CNFG_PAD_SP_MASK, priv->drive_impedance & 0xF); ++ drv |= FIELD_PREP(PHY_CNFG_PAD_SN_MASK, (priv->drive_impedance >> 4) & 0xF); ++ ++ if ((host->mmc->caps2 & emmc_caps) == emmc_caps) { ++ val = sdhci_readw(host, dwc_priv->vendor_specific_area1 + DWCMSHC_EMMC_CONTROL); ++ val |= DWCMSHC_CARD_IS_EMMC; ++ sdhci_writew(host, val, dwc_priv->vendor_specific_area1 + DWCMSHC_EMMC_CONTROL); ++ } ++ ++ /* reset phy, config phy's pad */ ++ sdhci_writel(host, drv | ~PHY_CNFG_RSTN_DEASSERT, PHY_CNFG_R); ++ ++ /* configure phy pads */ ++ val = FIELD_PREP(PHY_PAD_TXSLEW_CTRL_P_MASK, PHY_PAD_TXSLEW_CTRL_N_SG2042); ++ val |= FIELD_PREP(PHY_PAD_TXSLEW_CTRL_N_MASK, PHY_PAD_TXSLEW_CTRL_N_SG2042); ++ val |= FIELD_PREP(PHY_PAD_WEAKPULL_MASK, PHY_PAD_WEAKPULL_PULLUP); ++ val |= PHY_PAD_RXSEL_1V8; ++ sdhci_writew(host, val, PHY_CMDPAD_CNFG_R); ++ sdhci_writew(host, val, PHY_DATAPAD_CNFG_R); ++ sdhci_writew(host, val, PHY_RSTNPAD_CNFG_R); ++ ++ /* Clock PAD Setting */ ++ val = FIELD_PREP(PHY_PAD_TXSLEW_CTRL_P_MASK, PHY_PAD_TXSLEW_CTRL_N_SG2042); ++ val |= FIELD_PREP(PHY_PAD_TXSLEW_CTRL_N_MASK, PHY_PAD_TXSLEW_CTRL_N_SG2042); ++ sdhci_writew(host, val, PHY_CLKPAD_CNFG_R); ++ ++ /* PHY strobe PAD setting (EMMC only) */ ++ if ((host->mmc->caps2 & emmc_caps) == emmc_caps) { ++ val = FIELD_PREP(PHY_PAD_TXSLEW_CTRL_P_MASK, PHY_PAD_TXSLEW_CTRL_N_SG2042); ++ val |= FIELD_PREP(PHY_PAD_TXSLEW_CTRL_N_MASK, PHY_PAD_TXSLEW_CTRL_N_SG2042); ++ val |= PHY_PAD_RXSEL_1V8; ++ sdhci_writew(host, val, PHY_STBPAD_CNFG_R); ++ } ++ usleep_range(2000, 3000); ++ sdhci_writel(host, drv | PHY_CNFG_RSTN_DEASSERT, PHY_CNFG_R); ++ sdhci_eic7700_config_phy_delay(host, dwc_priv->delay_line); ++} ++ ++static void sdhci_eic7700_reset(struct sdhci_host *host, u8 mask) ++{ ++ sdhci_reset(host, mask); ++ ++ /* after reset all, the phy's config will be clear */ ++ if (mask == SDHCI_RESET_ALL) ++ sdhci_eic7700_config_phy(host); ++} ++ ++static int sdhci_eic7700_reset_init(struct device *dev, struct eic7700_priv *priv) ++{ ++ int ret; ++ ++ priv->reset = devm_reset_control_array_get_optional_exclusive(dev); ++ if (IS_ERR(priv->reset)) { ++ ret = PTR_ERR(priv->reset); ++ dev_err(dev, "failed to get reset control %d\n", ret); ++ return ret; ++ } ++ ++ ret = reset_control_assert(priv->reset); ++ if (ret) { ++ dev_err(dev, "Failed to assert reset signals: %d\n", ret); ++ return ret; ++ } ++ usleep_range(2000, 2100); ++ ret = reset_control_deassert(priv->reset); ++ if (ret) { ++ dev_err(dev, "Failed to deassert reset signals: %d\n", ret); ++ return ret; ++ } ++ ++ return ret; ++} ++ ++static unsigned int eic7700_convert_drive_impedance_ohm(struct device *dev, unsigned int dr_ohm) ++{ ++ switch (dr_ohm) { ++ case 100: ++ return PHYCTRL_DR_100OHM; ++ case 66: ++ return PHYCTRL_DR_66OHM; ++ case 50: ++ return PHYCTRL_DR_50OHM; ++ case 40: ++ return PHYCTRL_DR_40OHM; ++ case 33: ++ return PHYCTRL_DR_33OHM; ++ } ++ ++ dev_warn(dev, "Invalid value %u for drive-impedance-ohms.\n", dr_ohm); ++ return PHYCTRL_DR_50OHM; ++} ++ ++static int sdhci_eic7700_delay_tuning(struct sdhci_host *host, u32 opcode) ++{ ++ struct sdhci_pltfm_host *pltfm_host = sdhci_priv(host); ++ struct dwcmshc_priv *dwc_priv = sdhci_pltfm_priv(pltfm_host); ++ int delay_min = -1; ++ int delay_max = -1; ++ int cmd_error = 0; ++ int delay = 0; ++ int i = 0; ++ int ret; ++ ++ for (i = 0; i <= PHY_DELAY_CODE_MAX; i++) { ++ sdhci_eic7700_config_phy_delay(host, i); ++ ret = mmc_send_tuning(host->mmc, opcode, &cmd_error); ++ if (ret) { ++ host->ops->reset(host, SDHCI_RESET_CMD | SDHCI_RESET_DATA); ++ usleep_range(200, 210); ++ if (delay_min != -1 && delay_max != -1) ++ break; ++ } else { ++ if (delay_min == -1) { ++ delay_min = i; ++ continue; ++ } else { ++ delay_max = i; ++ continue; ++ } ++ } ++ } ++ if (delay_min == -1 && delay_max == -1) { ++ pr_err("%s: delay code tuning failed!\n", mmc_hostname(host->mmc)); ++ sdhci_eic7700_config_phy_delay(host, dwc_priv->delay_line); ++ return ret; ++ } ++ ++ delay = (delay_min + delay_max) / 2; ++ sdhci_eic7700_config_phy_delay(host, delay); ++ ++ return 0; ++} ++ ++static int sdhci_eic7700_phase_code_tuning(struct sdhci_host *host, u32 opcode) ++{ ++ struct sdhci_pltfm_host *pltfm_host = sdhci_priv(host); ++ struct dwcmshc_priv *priv = sdhci_pltfm_priv(pltfm_host); ++ u32 sd_caps = MMC_CAP2_NO_MMC | MMC_CAP2_NO_SDIO; ++ int phase_code = -1; ++ int code_range = -1; ++ bool is_sd = false; ++ int code_min = -1; ++ int code_max = -1; ++ int cmd_error = 0; ++ int ret = 0; ++ int i = 0; ++ ++ if ((host->mmc->caps2 & sd_caps) == sd_caps) ++ is_sd = true; ++ ++ for (i = 0; i <= MAX_PHASE_CODE; i++) { ++ /* Centered Phase code */ ++ sdhci_writew(host, i, priv->vendor_specific_area1 + DWCMSHC_AT_STAT); ++ ret = mmc_send_tuning(host->mmc, opcode, &cmd_error); ++ host->ops->reset(host, SDHCI_RESET_CMD | SDHCI_RESET_DATA); ++ ++ if (ret) { ++ /* SD specific range tracking */ ++ if (is_sd && code_min != -1 && code_max != -1) { ++ if (code_max - code_min > code_range) { ++ code_range = code_max - code_min; ++ phase_code = (code_min + code_max) / 2; ++ if (code_range > TUNING_RANGE_THRESHOLD) ++ break; ++ } ++ code_min = -1; ++ code_max = -1; ++ } ++ /* EMMC breaks after first valid range */ ++ if (!is_sd && code_min != -1 && code_max != -1) ++ break; ++ } else { ++ /* Track valid phase code range */ ++ if (code_min == -1) { ++ code_min = i; ++ if (!is_sd) ++ continue; ++ } ++ code_max = i; ++ if (is_sd && i == MAX_PHASE_CODE) { ++ if (code_max - code_min > code_range) { ++ code_range = code_max - code_min; ++ phase_code = (code_min + code_max) / 2; ++ } ++ } ++ } ++ } ++ ++ /* Handle tuning failure case */ ++ if ((is_sd && phase_code == -1) || ++ (!is_sd && code_min == -1 && code_max == -1)) { ++ pr_err("%s: phase code tuning failed!\n", mmc_hostname(host->mmc)); ++ sdhci_writew(host, 0, priv->vendor_specific_area1 + DWCMSHC_AT_STAT); ++ return -EIO; ++ } ++ if (!is_sd) ++ phase_code = (code_min + code_max) / 2; ++ ++ sdhci_writew(host, phase_code, priv->vendor_specific_area1 + DWCMSHC_AT_STAT); ++ ++ /* SD specific final verification */ ++ if (is_sd) { ++ ret = mmc_send_tuning(host->mmc, opcode, &cmd_error); ++ host->ops->reset(host, SDHCI_RESET_CMD | SDHCI_RESET_DATA); ++ if (ret) { ++ pr_err("%s: Final phase code 0x%x verification failed!\n", ++ mmc_hostname(host->mmc), phase_code); ++ return ret; ++ } ++ } ++ ++ return 0; ++} ++ ++static int sdhci_eic7700_executing_tuning(struct sdhci_host *host, u32 opcode) ++{ ++ struct sdhci_pltfm_host *pltfm_host = sdhci_priv(host); ++ struct dwcmshc_priv *priv = sdhci_pltfm_priv(pltfm_host); ++ u32 emmc_caps = MMC_CAP2_NO_SD | MMC_CAP2_NO_SDIO; ++ int ret = 0; ++ u16 ctrl; ++ u32 val; ++ ++ ctrl = sdhci_readw(host, SDHCI_HOST_CONTROL2); ++ ctrl &= ~SDHCI_CTRL_TUNED_CLK; ++ sdhci_writew(host, ctrl, SDHCI_HOST_CONTROL2); ++ ++ val = sdhci_readl(host, priv->vendor_specific_area1 + DWCMSHC_EMMC_ATCTRL); ++ val |= AT_CTRL_SW_TUNE_EN; ++ sdhci_writew(host, val, priv->vendor_specific_area1 + DWCMSHC_EMMC_ATCTRL); ++ ++ sdhci_writew(host, 0, priv->vendor_specific_area1 + DWCMSHC_AT_STAT); ++ sdhci_writew(host, 0x0, SDHCI_CMD_DATA); ++ ++ if ((host->mmc->caps2 & emmc_caps) == emmc_caps) { ++ ret = sdhci_eic7700_delay_tuning(host, opcode); ++ if (ret) ++ return ret; ++ } ++ ++ ret = sdhci_eic7700_phase_code_tuning(host, opcode); ++ if (ret) ++ return ret; ++ ++ return 0; ++} ++ ++static void sdhci_eic7700_set_uhs_signaling(struct sdhci_host *host, unsigned int timing) ++{ ++ struct sdhci_pltfm_host *pltfm_host = sdhci_priv(host); ++ struct dwcmshc_priv *priv = sdhci_pltfm_priv(pltfm_host); ++ u8 status; ++ u32 val; ++ int ret; ++ ++ dwcmshc_set_uhs_signaling(host, timing); ++ ++ /* here need make dll locked when in hs400 at 200MHz */ ++ if (timing == MMC_TIMING_MMC_HS400 && host->clock == 200000000) { ++ val = sdhci_readl(host, priv->vendor_specific_area1 + DWCMSHC_EMMC_ATCTRL); ++ val &= ~(FIELD_PREP(AT_CTRL_POST_CHANGE_DLY_MASK, AT_CTRL_POST_CHANGE_DLY)); ++ /* 2-cycle latency */ ++ val |= FIELD_PREP(AT_CTRL_POST_CHANGE_DLY_MASK, 0x2); ++ sdhci_writew(host, val, priv->vendor_specific_area1 + DWCMSHC_EMMC_ATCTRL); ++ ++ sdhci_writeb(host, FIELD_PREP(PHY_DLL_CNFG1_SLVDLY_MASK, PHY_DLL_CNFG1_SLVDLY) | ++ 0x3, PHY_DLL_CNFG1_R);/* DLL wait cycle input */ ++ /* DLL jump step input */ ++ sdhci_writeb(host, 0x02, PHY_DLL_CNFG2_R); ++ sdhci_writeb(host, FIELD_PREP(PHY_DLLDL_CNFG_SLV_INPSEL_MASK, ++ PHY_DLLDL_CNFG_SLV_INPSEL), PHY_DLLDL_CNFG_R); ++ /* Sets the value of DLL's offset input */ ++ sdhci_writeb(host, 0x00, PHY_DLL_OFFST_R); ++ /* ++ * Sets the value of DLL's olbt loadval input. Controls the Ibt ++ * timer's timeout value at which DLL runs a revalidation cycle. ++ */ ++ sdhci_writew(host, 0xffff, PHY_DLLBT_CNFG_R); ++ sdhci_writeb(host, PHY_DLL_CTRL_ENABLE, PHY_DLL_CTRL_R); ++ usleep_range(100, 110); ++ ++ ret = read_poll_timeout(sdhci_readb, status, status & DLL_LOCK_STS, 100, 1000000, ++ false, host, PHY_DLL_STATUS_R); ++ if (ret) { ++ pr_err("%s: DLL lock timeout! status: 0x%x\n", ++ mmc_hostname(host->mmc), status); ++ return; ++ } ++ ++ status = sdhci_readb(host, PHY_DLL_STATUS_R); ++ if (status & DLL_ERROR_STS) { ++ pr_err("%s: DLL lock failed!err_status:0x%x\n", ++ mmc_hostname(host->mmc), status); ++ } ++ } ++} ++ ++static void sdhci_eic7700_set_uhs_wrapper(struct sdhci_host *host, unsigned int timing) ++{ ++ u32 sd_caps = MMC_CAP2_NO_MMC | MMC_CAP2_NO_SDIO; ++ ++ if ((host->mmc->caps2 & sd_caps) == sd_caps) ++ sdhci_set_uhs_signaling(host, timing); ++ else ++ sdhci_eic7700_set_uhs_signaling(host, timing); ++} ++ ++static int eic7700_init(struct device *dev, struct sdhci_host *host, struct dwcmshc_priv *dwc_priv) ++{ ++ u32 emmc_caps = MMC_CAP2_NO_SD | MMC_CAP2_NO_SDIO; ++ unsigned int val, hsp_int_status, hsp_pwr_ctrl; ++ struct of_phandle_args args; ++ struct eic7700_priv *priv; ++ struct regmap *hsp_regmap; ++ int ret; ++ ++ priv = devm_kzalloc(dev, sizeof(struct eic7700_priv), GFP_KERNEL); ++ if (!priv) ++ return -ENOMEM; ++ ++ dwc_priv->priv = priv; ++ ++ ret = sdhci_eic7700_reset_init(dev, dwc_priv->priv); ++ if (ret) { ++ dev_err(dev, "failed to reset\n"); ++ return ret; ++ } ++ ++ ret = of_parse_phandle_with_fixed_args(dev->of_node, "eswin,hsp-sp-csr", 2, 0, &args); ++ if (ret) { ++ dev_err(dev, "Fail to parse 'eswin,hsp-sp-csr' phandle (%d)\n", ret); ++ return ret; ++ } ++ ++ hsp_regmap = syscon_node_to_regmap(args.np); ++ if (IS_ERR(hsp_regmap)) { ++ dev_err(dev, "Failed to get regmap for 'eswin,hsp-sp-csr'\n"); ++ of_node_put(args.np); ++ return PTR_ERR(hsp_regmap); ++ } ++ hsp_int_status = args.args[0]; ++ hsp_pwr_ctrl = args.args[1]; ++ of_node_put(args.np); ++ /* ++ * Assert clock stability: write EIC7700_INT_CLK_STABLE to hsp_int_status. ++ * This signals to the eMMC controller that platform clocks (card, ACLK, ++ * BCLK, TMCLK) are enabled and stable. ++ */ ++ regmap_write(hsp_regmap, hsp_int_status, EIC7700_INT_CLK_STABLE); ++ /* ++ * Assert voltage stability: write EIC7700_HOST_VAL_STABLE to hsp_pwr_ctrl. ++ * This signals that VDD is stable and permits transition to high-speed ++ * modes (e.g., UHS-I). ++ */ ++ regmap_write(hsp_regmap, hsp_pwr_ctrl, EIC7700_HOST_VAL_STABLE); ++ ++ if ((host->mmc->caps2 & emmc_caps) == emmc_caps) ++ dwc_priv->delay_line = PHY_DELAY_CODE_EMMC; ++ else ++ dwc_priv->delay_line = PHY_DELAY_CODE_SD; ++ ++ if (!of_property_read_u32(dev->of_node, "eswin,drive-impedance-ohms", &val)) ++ priv->drive_impedance = eic7700_convert_drive_impedance_ohm(dev, val); ++ return 0; ++} ++ + static const struct sdhci_ops sdhci_dwcmshc_ops = { + .set_clock = sdhci_set_clock, + .set_bus_width = sdhci_set_bus_width, +@@ -1194,6 +1658,18 @@ static const struct sdhci_ops sdhci_dwcmshc_sg2042_ops = { + .platform_execute_tuning = th1520_execute_tuning, + }; + ++static const struct sdhci_ops sdhci_dwcmshc_eic7700_ops = { ++ .set_clock = sdhci_eic7700_set_clock, ++ .get_max_clock = sdhci_pltfm_clk_get_max_clock, ++ .get_timeout_clock = sdhci_pltfm_clk_get_max_clock, ++ .set_bus_width = sdhci_set_bus_width, ++ .reset = sdhci_eic7700_reset, ++ .set_uhs_signaling = sdhci_eic7700_set_uhs_wrapper, ++ .set_power = sdhci_set_power_and_bus_voltage, ++ .irq = dwcmshc_cqe_irq_handler, ++ .platform_execute_tuning = sdhci_eic7700_executing_tuning, ++}; ++ + static const struct dwcmshc_pltfm_data sdhci_dwcmshc_pdata = { + .pdata = { + .ops = &sdhci_dwcmshc_ops, +@@ -1263,6 +1739,17 @@ static const struct dwcmshc_pltfm_data sdhci_dwcmshc_sg2042_pdata = { + .init = sg2042_init, + }; + ++static const struct dwcmshc_pltfm_data sdhci_dwcmshc_eic7700_pdata = { ++ .pdata = { ++ .ops = &sdhci_dwcmshc_eic7700_ops, ++ .quirks = SDHCI_QUIRK_CAP_CLOCK_BASE_BROKEN | ++ SDHCI_QUIRK_BROKEN_TIMEOUT_VAL, ++ .quirks2 = SDHCI_QUIRK2_PRESET_VALUE_BROKEN | ++ SDHCI_QUIRK2_CLOCK_DIV_ZERO_BROKEN, ++ }, ++ .init = eic7700_init, ++}; ++ + static const struct cqhci_host_ops dwcmshc_cqhci_ops = { + .enable = dwcmshc_sdhci_cqe_enable, + .disable = sdhci_cqe_disable, +@@ -1363,6 +1850,10 @@ static const struct of_device_id sdhci_dwcmshc_dt_ids[] = { + .compatible = "sophgo,sg2042-dwcmshc", + .data = &sdhci_dwcmshc_sg2042_pdata, + }, ++ { ++ .compatible = "eswin,eic7700-dwcmshc", ++ .data = &sdhci_dwcmshc_eic7700_pdata, ++ }, + {}, + }; + MODULE_DEVICE_TABLE(of, sdhci_dwcmshc_dt_ids); +@@ -1595,17 +2086,6 @@ static int dwcmshc_resume(struct device *dev) + return ret; + } + +-static void dwcmshc_enable_card_clk(struct sdhci_host *host) +-{ +- u16 ctrl; +- +- ctrl = sdhci_readw(host, SDHCI_CLOCK_CONTROL); +- if ((ctrl & SDHCI_CLOCK_INT_EN) && !(ctrl & SDHCI_CLOCK_CARD_EN)) { +- ctrl |= SDHCI_CLOCK_CARD_EN; +- sdhci_writew(host, ctrl, SDHCI_CLOCK_CONTROL); +- } +-} +- + static int dwcmshc_runtime_suspend(struct device *dev) + { + struct sdhci_host *host = dev_get_drvdata(dev); +-- +2.53.0 + diff --git a/SPECS/linux-lts-kmhv2/0289-UPSTREAM-riscv-mm-Fixup-no5lvl-failure-when-vaddr-is.patch b/SPECS/linux-lts-kmhv2/0289-UPSTREAM-riscv-mm-Fixup-no5lvl-failure-when-vaddr-is.patch deleted file mode 100644 index 66787c96fb..0000000000 --- a/SPECS/linux-lts-kmhv2/0289-UPSTREAM-riscv-mm-Fixup-no5lvl-failure-when-vaddr-is.patch +++ /dev/null @@ -1,85 +0,0 @@ -From 3de0647d68580730c9dea18c73c0c4298eeaea58 Mon Sep 17 00:00:00 2001 -From: "Guo Ren (Alibaba DAMO Academy)" -Date: Sun, 25 Jan 2026 00:52:12 -0500 -Subject: [PATCH 289/467] UPSTREAM: riscv: mm: Fixup no5lvl failure when vaddr - is invalid -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -Unlike no4lvl, no5lvl still continues to detect satp, which -requires va=pa mapping. When pa=0x800000000000, no5lvl -would fail in Sv48 mode due to an illegal VA value of -0x800000000000. - -So, prevent detecting the satp flow for no5lvl, when -vaddr is invalid. Add the is_vaddr_valid() function for -checking. - -Fixes: 26e7aacb83df ("riscv: Allow to downgrade paging mode from the command line") -Cc: Alexandre Ghiti -Cc: Björn Töpel -Signed-off-by: Guo Ren (Alibaba DAMO Academy) -Tested-by: Fangyu Yu -Link: https://patch.msgid.link/20260125055212.433163-1-guoren@kernel.org -[pjw@kernel.org: cleaned up commit message] -Signed-off-by: Paul Walmsley -(cherry picked from commit db909bd7986c10da074917af3dae83a60fa65093) -Signed-off-by: Han Gao ---- - arch/riscv/mm/init.c | 25 +++++++++++++++++++++++++ - 1 file changed, 25 insertions(+) - -diff --git a/arch/riscv/mm/init.c b/arch/riscv/mm/init.c -index a7d0cde6536b..8f4e7e505906 100644 ---- a/arch/riscv/mm/init.c -+++ b/arch/riscv/mm/init.c -@@ -852,6 +852,27 @@ static void __init set_mmap_rnd_bits_max(void) - mmap_rnd_bits_max = MMAP_VA_BITS - PAGE_SHIFT - 3; - } - -+static bool __init is_vaddr_valid(unsigned long va) -+{ -+ unsigned long up = 0; -+ -+ switch (satp_mode) { -+ case SATP_MODE_39: -+ up = 1UL << 38; -+ break; -+ case SATP_MODE_48: -+ up = 1UL << 47; -+ break; -+ case SATP_MODE_57: -+ up = 1UL << 56; -+ break; -+ default: -+ return false; -+ } -+ -+ return (va < up) || (va >= (ULONG_MAX - up + 1)); -+} -+ - /* - * There is a simple way to determine if 4-level is supported by the - * underlying hardware: establish 1:1 mapping in 4-level page table mode -@@ -893,6 +914,9 @@ static __init void set_satp_mode(uintptr_t dtb_pa) - set_satp_mode_pmd + PMD_SIZE, - PMD_SIZE, PAGE_KERNEL_EXEC); - retry: -+ if (!is_vaddr_valid(set_satp_mode_pmd)) -+ goto out; -+ - create_pgd_mapping(early_pg_dir, - set_satp_mode_pmd, - pgtable_l5_enabled ? -@@ -915,6 +939,7 @@ static __init void set_satp_mode(uintptr_t dtb_pa) - disable_pgtable_l4(); - } - -+out: - memset(early_pg_dir, 0, PAGE_SIZE); - memset(early_p4d, 0, PAGE_SIZE); - memset(early_pud, 0, PAGE_SIZE); --- -2.53.0 - diff --git a/SPECS/linux-lts-kmhv2/0290-UPSTREAM-mmc-sdhci-of-dwcmshc-Fix-init-for-AXI-clock.patch b/SPECS/linux-lts-kmhv2/0290-UPSTREAM-mmc-sdhci-of-dwcmshc-Fix-init-for-AXI-clock.patch new file mode 100644 index 0000000000..8991fa572e --- /dev/null +++ b/SPECS/linux-lts-kmhv2/0290-UPSTREAM-mmc-sdhci-of-dwcmshc-Fix-init-for-AXI-clock.patch @@ -0,0 +1,45 @@ +From eec5a961f5c9f3a5b4a99624544700e30ae02323 Mon Sep 17 00:00:00 2001 +From: Huan He +Date: Wed, 14 Jan 2026 20:21:41 +0800 +Subject: [RUYI PATCH] UPSTREAM: mmc: sdhci-of-dwcmshc: Fix init for AXI clock + for Eswin EIC7700 + +Accessing the High-Speed registers requires the AXI clock to be enabled. + +Signed-off-by: Huan He +Acked-by: Adrian Hunter +Fixes: 32b2633219d3 ("mmc: sdhci-of-dwcmshc: Add support for Eswin EIC7700") +Signed-off-by: Ulf Hansson +(cherry picked from commit fd9809ec6704db0c162b4510b11f877ec7b72065) +Signed-off-by: Han Gao +--- + drivers/mmc/host/sdhci-of-dwcmshc.c | 6 ++++++ + 1 file changed, 6 insertions(+) + +diff --git a/drivers/mmc/host/sdhci-of-dwcmshc.c b/drivers/mmc/host/sdhci-of-dwcmshc.c +index dfad61f332c4..2ce2626a7993 100644 +--- a/drivers/mmc/host/sdhci-of-dwcmshc.c ++++ b/drivers/mmc/host/sdhci-of-dwcmshc.c +@@ -1529,6 +1529,7 @@ static int eic7700_init(struct device *dev, struct sdhci_host *host, struct dwcm + { + u32 emmc_caps = MMC_CAP2_NO_SD | MMC_CAP2_NO_SDIO; + unsigned int val, hsp_int_status, hsp_pwr_ctrl; ++ static const char * const clk_ids[] = {"axi"}; + struct of_phandle_args args; + struct eic7700_priv *priv; + struct regmap *hsp_regmap; +@@ -1546,6 +1547,11 @@ static int eic7700_init(struct device *dev, struct sdhci_host *host, struct dwcm + return ret; + } + ++ ret = dwcmshc_get_enable_other_clks(mmc_dev(host->mmc), dwc_priv, ++ ARRAY_SIZE(clk_ids), clk_ids); ++ if (ret) ++ return ret; ++ + ret = of_parse_phandle_with_fixed_args(dev->of_node, "eswin,hsp-sp-csr", 2, 0, &args); + if (ret) { + dev_err(dev, "Fail to parse 'eswin,hsp-sp-csr' phandle (%d)\n", ret); +-- +2.53.0 + diff --git a/SPECS/linux-lts-kmhv2/0291-UPSTREAM-mmc-sdhci-of-dwcmshc-Fix-DMA-128MB-boundary.patch b/SPECS/linux-lts-kmhv2/0291-UPSTREAM-mmc-sdhci-of-dwcmshc-Fix-DMA-128MB-boundary.patch new file mode 100644 index 0000000000..25b1fd7b47 --- /dev/null +++ b/SPECS/linux-lts-kmhv2/0291-UPSTREAM-mmc-sdhci-of-dwcmshc-Fix-DMA-128MB-boundary.patch @@ -0,0 +1,35 @@ +From 3cd03e009502a385f88e1102cb0517e2f25f455c Mon Sep 17 00:00:00 2001 +From: Huan He +Date: Wed, 14 Jan 2026 20:22:56 +0800 +Subject: [RUYI PATCH] UPSTREAM: mmc: sdhci-of-dwcmshc: Fix DMA 128MB boundary + for Eswin EIC7700 + +This DWC MSHC has a 128MB limitation where the data buffer size and start +address must not exceed the 128MB boundary. Registering the missing +'adma_write_desc' callback function. + +Signed-off-by: Huan He +Acked-by: Adrian Hunter +Fixes: 32b2633219d3 ("mmc: sdhci-of-dwcmshc: Add support for Eswin EIC7700") +Signed-off-by: Ulf Hansson +(cherry picked from commit 5cfc828502cbd0c827113bdb5694c2658af2c37c) +Signed-off-by: Han Gao +--- + drivers/mmc/host/sdhci-of-dwcmshc.c | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/drivers/mmc/host/sdhci-of-dwcmshc.c b/drivers/mmc/host/sdhci-of-dwcmshc.c +index 2ce2626a7993..90aa146a1be3 100644 +--- a/drivers/mmc/host/sdhci-of-dwcmshc.c ++++ b/drivers/mmc/host/sdhci-of-dwcmshc.c +@@ -1673,6 +1673,7 @@ static const struct sdhci_ops sdhci_dwcmshc_eic7700_ops = { + .set_uhs_signaling = sdhci_eic7700_set_uhs_wrapper, + .set_power = sdhci_set_power_and_bus_voltage, + .irq = dwcmshc_cqe_irq_handler, ++ .adma_write_desc = dwcmshc_adma_write_desc, + .platform_execute_tuning = sdhci_eic7700_executing_tuning, + }; + +-- +2.53.0 + diff --git a/SPECS/linux-lts-kmhv2/0292-FROMGIT-drm-imagination-Count-paired-job-fence-as-de.patch b/SPECS/linux-lts-kmhv2/0292-FROMGIT-drm-imagination-Count-paired-job-fence-as-de.patch index 6ce60cb539..c72f779250 100644 --- a/SPECS/linux-lts-kmhv2/0292-FROMGIT-drm-imagination-Count-paired-job-fence-as-de.patch +++ b/SPECS/linux-lts-kmhv2/0292-FROMGIT-drm-imagination-Count-paired-job-fence-as-de.patch @@ -1,7 +1,7 @@ -From a609d4433c7a1614a618e8aa8e2eab96362fefac Mon Sep 17 00:00:00 2001 +From 07935065ada83928cfb96ceab6a5ec204787eed5 Mon Sep 17 00:00:00 2001 From: Alessio Belle Date: Mon, 30 Mar 2026 08:56:36 +0100 -Subject: [PATCH 292/467] FROMGIT: drm/imagination: Count paired job fence as +Subject: [RUYI PATCH] FROMGIT: drm/imagination: Count paired job fence as dependency in prepare_job() The DRM scheduler's prepare_job() callback counts the remaining diff --git a/SPECS/linux-lts-kmhv2/0293-FROMGIT-drm-imagination-Fit-paired-fragment-job-in-t.patch b/SPECS/linux-lts-kmhv2/0293-FROMGIT-drm-imagination-Fit-paired-fragment-job-in-t.patch index 02e01dee82..26a9e98208 100644 --- a/SPECS/linux-lts-kmhv2/0293-FROMGIT-drm-imagination-Fit-paired-fragment-job-in-t.patch +++ b/SPECS/linux-lts-kmhv2/0293-FROMGIT-drm-imagination-Fit-paired-fragment-job-in-t.patch @@ -1,8 +1,8 @@ -From 9290d92ea555570942074fc606d13eb4d3bbf981 Mon Sep 17 00:00:00 2001 +From cc7e1eff70086b94e4cc0442c78e493d14ea2a91 Mon Sep 17 00:00:00 2001 From: Alessio Belle Date: Mon, 30 Mar 2026 08:56:37 +0100 -Subject: [PATCH 293/467] FROMGIT: drm/imagination: Fit paired fragment job in - the correct CCCB +Subject: [RUYI PATCH] FROMGIT: drm/imagination: Fit paired fragment job in the + correct CCCB For geometry jobs with a paired fragment job, at the moment, the DRM scheduler's prepare_job() callback: diff --git a/SPECS/linux-lts-kmhv2/0294-FROMGIT-drm-imagination-Skip-check-on-paired-job-fen.patch b/SPECS/linux-lts-kmhv2/0294-FROMGIT-drm-imagination-Skip-check-on-paired-job-fen.patch index 585fa629fa..ef8b49eec6 100644 --- a/SPECS/linux-lts-kmhv2/0294-FROMGIT-drm-imagination-Skip-check-on-paired-job-fen.patch +++ b/SPECS/linux-lts-kmhv2/0294-FROMGIT-drm-imagination-Skip-check-on-paired-job-fen.patch @@ -1,8 +1,8 @@ -From 9a88a3b7b00b1c31c53573cb70a52e28c6a93a00 Mon Sep 17 00:00:00 2001 +From a64a810c6fa9b9f608d345c1c8fddcb487bf750a Mon Sep 17 00:00:00 2001 From: Alessio Belle Date: Mon, 30 Mar 2026 08:56:38 +0100 -Subject: [PATCH 294/467] FROMGIT: drm/imagination: Skip check on paired job - fence during job submission +Subject: [RUYI PATCH] FROMGIT: drm/imagination: Skip check on paired job fence + during job submission While submitting a paired fragment job, there is no need to manually look for, and skip, the paired job fence, as the existing logic to diff --git a/SPECS/linux-lts-kmhv2/0295-FROMGIT-drm-imagination-Rename-pvr_queue_fence_is_uf.patch b/SPECS/linux-lts-kmhv2/0295-FROMGIT-drm-imagination-Rename-pvr_queue_fence_is_uf.patch index eee3351fd4..9cc27fddc4 100644 --- a/SPECS/linux-lts-kmhv2/0295-FROMGIT-drm-imagination-Rename-pvr_queue_fence_is_uf.patch +++ b/SPECS/linux-lts-kmhv2/0295-FROMGIT-drm-imagination-Rename-pvr_queue_fence_is_uf.patch @@ -1,7 +1,7 @@ -From f20230f3dc06eafd26b5cd6d132c0cca76331d33 Mon Sep 17 00:00:00 2001 +From 37bce3dfda3d6bfd8120dd4ca4ce59da566ffd8c Mon Sep 17 00:00:00 2001 From: Alessio Belle Date: Mon, 30 Mar 2026 08:56:39 +0100 -Subject: [PATCH 295/467] FROMGIT: drm/imagination: Rename +Subject: [RUYI PATCH] FROMGIT: drm/imagination: Rename pvr_queue_fence_is_ufo_backed() to reflect usage This function is only used by the synchronization code to figure out if diff --git a/SPECS/linux-lts-kmhv2/0296-FROMGIT-drm-imagination-Rename-fence-returned-by-pvr.patch b/SPECS/linux-lts-kmhv2/0296-FROMGIT-drm-imagination-Rename-fence-returned-by-pvr.patch index d4492c8980..726a6e00f1 100644 --- a/SPECS/linux-lts-kmhv2/0296-FROMGIT-drm-imagination-Rename-fence-returned-by-pvr.patch +++ b/SPECS/linux-lts-kmhv2/0296-FROMGIT-drm-imagination-Rename-fence-returned-by-pvr.patch @@ -1,7 +1,7 @@ -From d480bfc6a4ff28539bca859b78544e8a3762c85e Mon Sep 17 00:00:00 2001 +From 1b5c97a61b1f397f31c97959e50a7bafe4997757 Mon Sep 17 00:00:00 2001 From: Alessio Belle Date: Mon, 30 Mar 2026 08:56:40 +0100 -Subject: [PATCH 296/467] FROMGIT: drm/imagination: Rename fence returned by +Subject: [RUYI PATCH] FROMGIT: drm/imagination: Rename fence returned by pvr_queue_job_arm() Rename from done_fence to finished_fence, both because the function diff --git a/SPECS/linux-lts-kmhv2/0297-FROMGIT-drm-imagination-Move-repeated-job-fence-chec.patch b/SPECS/linux-lts-kmhv2/0297-FROMGIT-drm-imagination-Move-repeated-job-fence-chec.patch index 4e1d0d7c5d..aaa07dc5cb 100644 --- a/SPECS/linux-lts-kmhv2/0297-FROMGIT-drm-imagination-Move-repeated-job-fence-chec.patch +++ b/SPECS/linux-lts-kmhv2/0297-FROMGIT-drm-imagination-Move-repeated-job-fence-chec.patch @@ -1,8 +1,8 @@ -From 24d18b49f8c07b709700ed96d89d8612d2fb5668 Mon Sep 17 00:00:00 2001 +From 03aa10e9329f54737669ec56c2b2ab66eac2f987 Mon Sep 17 00:00:00 2001 From: Alessio Belle Date: Mon, 30 Mar 2026 08:56:41 +0100 -Subject: [PATCH 297/467] FROMGIT: drm/imagination: Move repeated job fence - check to its own function +Subject: [RUYI PATCH] FROMGIT: drm/imagination: Move repeated job fence check + to its own function This should make the code slightly clearer. diff --git a/SPECS/linux-lts-kmhv2/0298-FROMGIT-drm-imagination-Update-check-to-skip-prepare.patch b/SPECS/linux-lts-kmhv2/0298-FROMGIT-drm-imagination-Update-check-to-skip-prepare.patch index 6b4300cbe2..c27054fa2d 100644 --- a/SPECS/linux-lts-kmhv2/0298-FROMGIT-drm-imagination-Update-check-to-skip-prepare.patch +++ b/SPECS/linux-lts-kmhv2/0298-FROMGIT-drm-imagination-Update-check-to-skip-prepare.patch @@ -1,7 +1,7 @@ -From 9f3709e29e576a8943a5c7b99d82d4a0293cc32f Mon Sep 17 00:00:00 2001 +From de6096b77f0bf0bf39ff10bd616f13c5e0945d58 Mon Sep 17 00:00:00 2001 From: Alessio Belle Date: Mon, 30 Mar 2026 08:56:42 +0100 -Subject: [PATCH 298/467] FROMGIT: drm/imagination: Update check to skip +Subject: [RUYI PATCH] FROMGIT: drm/imagination: Update check to skip prepare_job() for fragment jobs By the time prepare_job() is called on a paired fragment job, the paired diff --git a/SPECS/linux-lts-kmhv2/0299-FROMGIT-drm-imagination-Minor-improvements-to-job-su.patch b/SPECS/linux-lts-kmhv2/0299-FROMGIT-drm-imagination-Minor-improvements-to-job-su.patch index fcc409d926..e093399458 100644 --- a/SPECS/linux-lts-kmhv2/0299-FROMGIT-drm-imagination-Minor-improvements-to-job-su.patch +++ b/SPECS/linux-lts-kmhv2/0299-FROMGIT-drm-imagination-Minor-improvements-to-job-su.patch @@ -1,7 +1,7 @@ -From b1bc1325baa32b8ced34662415894d905572c0e3 Mon Sep 17 00:00:00 2001 +From fea5671abc67fb18ac13ed5ac838464e6ac1d034 Mon Sep 17 00:00:00 2001 From: Alessio Belle Date: Mon, 30 Mar 2026 08:56:43 +0100 -Subject: [PATCH 299/467] FROMGIT: drm/imagination: Minor improvements to job +Subject: [RUYI PATCH] FROMGIT: drm/imagination: Minor improvements to job submission code documentation Mixed list of clarifications and typo fixes. diff --git a/SPECS/linux-lts-kmhv2/0300-FROMGIT-perf-riscv-Fix-discarded-const-qualifier-in-.patch b/SPECS/linux-lts-kmhv2/0300-FROMGIT-perf-riscv-Fix-discarded-const-qualifier-in-.patch index 3e227cd8fa..ed087c87c3 100644 --- a/SPECS/linux-lts-kmhv2/0300-FROMGIT-perf-riscv-Fix-discarded-const-qualifier-in-.patch +++ b/SPECS/linux-lts-kmhv2/0300-FROMGIT-perf-riscv-Fix-discarded-const-qualifier-in-.patch @@ -1,7 +1,7 @@ -From 347d0feb0828177c85358f21ba7942d4d10abb3f Mon Sep 17 00:00:00 2001 +From d6e9674d63435e685b8f714dd05c6d76d0cd3383 Mon Sep 17 00:00:00 2001 From: Li Guan Date: Thu, 14 May 2026 02:07:21 +0800 -Subject: [PATCH 300/467] FROMGIT: perf riscv: Fix discarded const qualifier in +Subject: [RUYI PATCH] FROMGIT: perf riscv: Fix discarded const qualifier in _get_field() The assignment of strrchr() return values to non-const char * variables diff --git a/SPECS/linux-lts-kmhv2/0301-FROMLIST-riscv-errata-Add-ERRATA_THEAD_WRITE_ONCE-fi.patch b/SPECS/linux-lts-kmhv2/0301-FROMLIST-riscv-errata-Add-ERRATA_THEAD_WRITE_ONCE-fi.patch index d4d9cf39fa..df45fcf2dc 100644 --- a/SPECS/linux-lts-kmhv2/0301-FROMLIST-riscv-errata-Add-ERRATA_THEAD_WRITE_ONCE-fi.patch +++ b/SPECS/linux-lts-kmhv2/0301-FROMLIST-riscv-errata-Add-ERRATA_THEAD_WRITE_ONCE-fi.patch @@ -1,7 +1,7 @@ -From c04270e93a53b96a6f98611da3684d1fb609b347 Mon Sep 17 00:00:00 2001 +From 9312f5952083473da163ade5c4b5f0cd1170caf2 Mon Sep 17 00:00:00 2001 From: "Guo Ren (Alibaba DAMO Academy)" Date: Tue, 21 Apr 2026 10:31:40 -0400 -Subject: [PATCH 301/467] FROMLIST: riscv: errata: Add ERRATA_THEAD_WRITE_ONCE +Subject: [RUYI PATCH] FROMLIST: riscv: errata: Add ERRATA_THEAD_WRITE_ONCE fixup The early version of XuanTie C910 core has a store merge buffer diff --git a/SPECS/linux-lts-kmhv2/0302-FROMLIST-PCI-Add-per-device-flag-to-disable-native-P.patch b/SPECS/linux-lts-kmhv2/0302-FROMLIST-PCI-Add-per-device-flag-to-disable-native-P.patch index eb1ea9ea73..747ee38919 100644 --- a/SPECS/linux-lts-kmhv2/0302-FROMLIST-PCI-Add-per-device-flag-to-disable-native-P.patch +++ b/SPECS/linux-lts-kmhv2/0302-FROMLIST-PCI-Add-per-device-flag-to-disable-native-P.patch @@ -1,7 +1,7 @@ -From f8ed95adec720bc723ed825f8d90a76e3b3b0a12 Mon Sep 17 00:00:00 2001 +From 4c835b4cf54a8879850b5743cbe7d75d2b218c9c Mon Sep 17 00:00:00 2001 From: Han Gao Date: Wed, 1 Apr 2026 01:56:57 +0800 -Subject: [PATCH 302/467] FROMLIST: PCI: Add per-device flag to disable native +Subject: [RUYI PATCH] FROMLIST: PCI: Add per-device flag to disable native PCIe port services Add PCI_DEV_FLAGS_NO_PORT_SERVICES to allow quirks to prevent the PCIe diff --git a/SPECS/linux-lts-kmhv2/0303-FROMLIST-PCI-Add-quirk-to-disable-PCIe-port-services.patch b/SPECS/linux-lts-kmhv2/0303-FROMLIST-PCI-Add-quirk-to-disable-PCIe-port-services.patch index 4f0837e1d9..58cd59ae0c 100644 --- a/SPECS/linux-lts-kmhv2/0303-FROMLIST-PCI-Add-quirk-to-disable-PCIe-port-services.patch +++ b/SPECS/linux-lts-kmhv2/0303-FROMLIST-PCI-Add-quirk-to-disable-PCIe-port-services.patch @@ -1,8 +1,8 @@ -From 283d1e50a78cf88b9bc5a76ae2e1ce0163dc502a Mon Sep 17 00:00:00 2001 +From cfb56bdda1f734ba778e001d5436e62217a69a3c Mon Sep 17 00:00:00 2001 From: Han Gao Date: Wed, 1 Apr 2026 01:56:58 +0800 -Subject: [PATCH 303/467] FROMLIST: PCI: Add quirk to disable PCIe port - services on Sophgo SG2042 +Subject: [RUYI PATCH] FROMLIST: PCI: Add quirk to disable PCIe port services + on Sophgo SG2042 SG2042's PCIe root ports [1f1c:2042] fail to deliver MSI interrupts to downstream devices when native port services are enabled. Devices under diff --git a/SPECS/linux-lts-kmhv2/0304-FROMLIST-PCI-Release-BAR0-of-an-integrated-bridge-to.patch b/SPECS/linux-lts-kmhv2/0304-FROMLIST-PCI-Release-BAR0-of-an-integrated-bridge-to.patch index 3533acb885..92052a71a6 100644 --- a/SPECS/linux-lts-kmhv2/0304-FROMLIST-PCI-Release-BAR0-of-an-integrated-bridge-to.patch +++ b/SPECS/linux-lts-kmhv2/0304-FROMLIST-PCI-Release-BAR0-of-an-integrated-bridge-to.patch @@ -1,8 +1,8 @@ -From 5061c065b398815d41839dbd6c2d13c2213c2d99 Mon Sep 17 00:00:00 2001 +From ef760574ea2b96b482691e4b76ea4544d2b04231 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ilpo=20J=C3=A4rvinen?= Date: Thu, 18 Sep 2025 13:58:56 -0700 -Subject: [PATCH 304/467] FROMLIST: PCI: Release BAR0 of an integrated bridge - to allow GPU BAR resize +Subject: [RUYI PATCH] FROMLIST: PCI: Release BAR0 of an integrated bridge to + allow GPU BAR resize MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit diff --git a/SPECS/linux-lts-kmhv2/0305-BACKPORT-FROMLIST-drm-ttm-save-the-device-s-DMA-cohe.patch b/SPECS/linux-lts-kmhv2/0305-BACKPORT-FROMLIST-drm-ttm-save-the-device-s-DMA-cohe.patch index 41052b1644..826058c0bf 100644 --- a/SPECS/linux-lts-kmhv2/0305-BACKPORT-FROMLIST-drm-ttm-save-the-device-s-DMA-cohe.patch +++ b/SPECS/linux-lts-kmhv2/0305-BACKPORT-FROMLIST-drm-ttm-save-the-device-s-DMA-cohe.patch @@ -1,7 +1,7 @@ -From 930af6ff12384f1fc15fbeaba533c8791537aafb Mon Sep 17 00:00:00 2001 +From 1f52ff4a8952f2dcd39f984b094e0d3ba4227bcd Mon Sep 17 00:00:00 2001 From: Icenowy Zheng Date: Sat, 29 Jun 2024 13:22:46 +0800 -Subject: [PATCH 305/467] BACKPORT: FROMLIST: drm/ttm: save the device's DMA +Subject: [RUYI PATCH] BACKPORT: FROMLIST: drm/ttm: save the device's DMA coherency status in ttm_device Currently TTM utilizes cached memory regardless of whether the device diff --git a/SPECS/linux-lts-kmhv2/0306-BACKPORT-FROMLIST-drm-ttm-downgrade-cached-to-write_.patch b/SPECS/linux-lts-kmhv2/0306-BACKPORT-FROMLIST-drm-ttm-downgrade-cached-to-write_.patch index 7dbe06800d..bb46fa248c 100644 --- a/SPECS/linux-lts-kmhv2/0306-BACKPORT-FROMLIST-drm-ttm-downgrade-cached-to-write_.patch +++ b/SPECS/linux-lts-kmhv2/0306-BACKPORT-FROMLIST-drm-ttm-downgrade-cached-to-write_.patch @@ -1,7 +1,7 @@ -From 6b19f0c2ff8d4334e8350b2aba256942682560f0 Mon Sep 17 00:00:00 2001 +From 555ac6aeaf274981371546928300e152ff7ac153 Mon Sep 17 00:00:00 2001 From: Icenowy Zheng Date: Sat, 29 Jun 2024 13:22:47 +0800 -Subject: [PATCH 306/467] BACKPORT: FROMLIST: drm/ttm: downgrade cached to +Subject: [RUYI PATCH] BACKPORT: FROMLIST: drm/ttm: downgrade cached to write_combined when snooping not available As we can now acquire the presence of the full DMA coherency (snooping diff --git a/SPECS/linux-lts-kmhv2/0307-FROMLIST-NFU-riscv-dts-thead-Add-CPU-clock-and-OPP-t.patch b/SPECS/linux-lts-kmhv2/0307-FROMLIST-NFU-riscv-dts-thead-Add-CPU-clock-and-OPP-t.patch index a7e829871e..58e516d738 100644 --- a/SPECS/linux-lts-kmhv2/0307-FROMLIST-NFU-riscv-dts-thead-Add-CPU-clock-and-OPP-t.patch +++ b/SPECS/linux-lts-kmhv2/0307-FROMLIST-NFU-riscv-dts-thead-Add-CPU-clock-and-OPP-t.patch @@ -1,8 +1,8 @@ -From 09dc9193b8a9859bdfcf7826fcef126692322cfa Mon Sep 17 00:00:00 2001 +From 5911aa5fe93310aba068d9a4361bc5827ce35b62 Mon Sep 17 00:00:00 2001 From: Yao Zi Date: Thu, 20 Nov 2025 13:14:16 +0000 -Subject: [PATCH 307/467] FROMLIST: NFU: riscv: dts: thead: Add CPU clock and - OPP table for TH1520 +Subject: [RUYI PATCH] FROMLIST: NFU: riscv: dts: thead: Add CPU clock and OPP + table for TH1520 Add operating point table for CPU cores, and wire up clocks for CPU nodes. diff --git a/SPECS/linux-lts-kmhv2/0308-FROMLIST-rust-export-BINDGEN_TARGET-from-a-separate-.patch b/SPECS/linux-lts-kmhv2/0308-FROMLIST-rust-export-BINDGEN_TARGET-from-a-separate-.patch index 1556101b34..207ec24976 100644 --- a/SPECS/linux-lts-kmhv2/0308-FROMLIST-rust-export-BINDGEN_TARGET-from-a-separate-.patch +++ b/SPECS/linux-lts-kmhv2/0308-FROMLIST-rust-export-BINDGEN_TARGET-from-a-separate-.patch @@ -1,7 +1,7 @@ -From fb63a586880480ca4a13569a25a63f4aecf4dc1c Mon Sep 17 00:00:00 2001 +From 1331a7f7caf771503583f18f7576c01b13e887ec Mon Sep 17 00:00:00 2001 From: Asuna Yang Date: Tue, 30 Dec 2025 17:47:54 +0100 -Subject: [PATCH 308/467] FROMLIST: rust: export BINDGEN_TARGET from a separate +Subject: [RUYI PATCH] FROMLIST: rust: export BINDGEN_TARGET from a separate Makefile A subsequent commit will add a new function `bindgen-option` to @@ -29,7 +29,7 @@ Signed-off-by: Han Gao create mode 100644 scripts/Makefile.rust diff --git a/Makefile b/Makefile -index dc63a98489a5..895fd1827580 100644 +index 5087bd6183dd..e5901ed88254 100644 --- a/Makefile +++ b/Makefile @@ -724,9 +724,10 @@ ifneq ($(findstring clang,$(CC_VERSION_TEXT)),) diff --git a/SPECS/linux-lts-kmhv2/0309-FROMLIST-rust-generate-a-fatal-error-if-BINDGEN_TARG.patch b/SPECS/linux-lts-kmhv2/0309-FROMLIST-rust-generate-a-fatal-error-if-BINDGEN_TARG.patch index 1346386899..99ff4e9cc0 100644 --- a/SPECS/linux-lts-kmhv2/0309-FROMLIST-rust-generate-a-fatal-error-if-BINDGEN_TARG.patch +++ b/SPECS/linux-lts-kmhv2/0309-FROMLIST-rust-generate-a-fatal-error-if-BINDGEN_TARG.patch @@ -1,8 +1,8 @@ -From 68a1f8f93b448edbae9513aa35f8fdfd2d0c9d10 Mon Sep 17 00:00:00 2001 +From 22c8be25d1ed7a76f36d5f1d30f0c61faa68b951 Mon Sep 17 00:00:00 2001 From: Asuna Yang Date: Tue, 30 Dec 2025 17:47:55 +0100 -Subject: [PATCH 309/467] FROMLIST: rust: generate a fatal error if - BINDGEN_TARGET is undefined +Subject: [RUYI PATCH] FROMLIST: rust: generate a fatal error if BINDGEN_TARGET + is undefined Generate a friendly fatal error if the target triplet is undefined for bindgen, rather than having the compiler generate obscure error messages diff --git a/SPECS/linux-lts-kmhv2/0310-FROMLIST-rust-add-a-Kconfig-function-to-test-for-sup.patch b/SPECS/linux-lts-kmhv2/0310-FROMLIST-rust-add-a-Kconfig-function-to-test-for-sup.patch index 73dc849cc5..f14c7c2ccd 100644 --- a/SPECS/linux-lts-kmhv2/0310-FROMLIST-rust-add-a-Kconfig-function-to-test-for-sup.patch +++ b/SPECS/linux-lts-kmhv2/0310-FROMLIST-rust-add-a-Kconfig-function-to-test-for-sup.patch @@ -1,7 +1,7 @@ -From e4594d4716d61ca97443e9a44af78e400c9462f9 Mon Sep 17 00:00:00 2001 +From 0bae0d06c2aca802becde0cd7d5cb153390dcd4d Mon Sep 17 00:00:00 2001 From: Asuna Yang Date: Tue, 30 Dec 2025 17:47:56 +0100 -Subject: [PATCH 310/467] FROMLIST: rust: add a Kconfig function to test for +Subject: [RUYI PATCH] FROMLIST: rust: add a Kconfig function to test for support of bindgen options Add a new `bindgen-backend-option` Kconfig function to test whether the diff --git a/SPECS/linux-lts-kmhv2/0311-FROMLIST-RISC-V-handle-extension-configs-for-bindgen.patch b/SPECS/linux-lts-kmhv2/0311-FROMLIST-RISC-V-handle-extension-configs-for-bindgen.patch index 89093b0689..22dad26c59 100644 --- a/SPECS/linux-lts-kmhv2/0311-FROMLIST-RISC-V-handle-extension-configs-for-bindgen.patch +++ b/SPECS/linux-lts-kmhv2/0311-FROMLIST-RISC-V-handle-extension-configs-for-bindgen.patch @@ -1,8 +1,8 @@ -From 4a0cd79c6b96ef6fc06137c6845d2d4f679efee9 Mon Sep 17 00:00:00 2001 +From bdb364df3673e4e729a0e33788d91c7ace67e22e Mon Sep 17 00:00:00 2001 From: Asuna Yang Date: Tue, 30 Dec 2025 17:47:57 +0100 -Subject: [PATCH 311/467] FROMLIST: RISC-V: handle extension configs for - bindgen, re-enable gcc + rust builds +Subject: [RUYI PATCH] FROMLIST: RISC-V: handle extension configs for bindgen, + re-enable gcc + rust builds Commit 33549fcf37ec ("RISC-V: disallow gcc + rust builds") disabled GCC + Rust builds for RISC-V due to differences in extension handling diff --git a/SPECS/linux-lts-kmhv2/0312-FROMLIST-dt-bindings-mmc-spacemit-sdhci-add-reset-su.patch b/SPECS/linux-lts-kmhv2/0312-FROMLIST-dt-bindings-mmc-spacemit-sdhci-add-reset-su.patch index 26ee47ecbd..cde256c3dd 100644 --- a/SPECS/linux-lts-kmhv2/0312-FROMLIST-dt-bindings-mmc-spacemit-sdhci-add-reset-su.patch +++ b/SPECS/linux-lts-kmhv2/0312-FROMLIST-dt-bindings-mmc-spacemit-sdhci-add-reset-su.patch @@ -1,7 +1,7 @@ -From 159388b0a2e5ca3f2f88124a933d969ed86fbeba Mon Sep 17 00:00:00 2001 +From 6b99e40ab4ea69deb0bef324e4a5160a020862f2 Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Sun, 21 Dec 2025 16:20:26 +0800 -Subject: [PATCH 312/467] FROMLIST: dt-bindings: mmc: spacemit,sdhci: add reset +Subject: [RUYI PATCH] FROMLIST: dt-bindings: mmc: spacemit,sdhci: add reset support The SpacemiT SDHCI controller has two reset lines, one connect to AXI bus diff --git a/SPECS/linux-lts-kmhv2/0313-FROMLIST-mfd-simple-mfd-i2c-add-a-reboot-cell-for-th.patch b/SPECS/linux-lts-kmhv2/0313-FROMLIST-mfd-simple-mfd-i2c-add-a-reboot-cell-for-th.patch index d14424b2c5..27e125777e 100644 --- a/SPECS/linux-lts-kmhv2/0313-FROMLIST-mfd-simple-mfd-i2c-add-a-reboot-cell-for-th.patch +++ b/SPECS/linux-lts-kmhv2/0313-FROMLIST-mfd-simple-mfd-i2c-add-a-reboot-cell-for-th.patch @@ -1,8 +1,8 @@ -From 8d7a4704394936b4c6294288c8ef99b5d613a2b5 Mon Sep 17 00:00:00 2001 +From e4c3413f71ca577a9344235a8e76978b9df6b41d Mon Sep 17 00:00:00 2001 From: Aurelien Jarno Date: Mon, 3 Nov 2025 00:02:00 +0100 -Subject: [PATCH 313/467] FROMLIST: mfd: simple-mfd-i2c: add a reboot cell for - the SpacemiT P1 chip +Subject: [RUYI PATCH] FROMLIST: mfd: simple-mfd-i2c: add a reboot cell for the + SpacemiT P1 chip Add a "spacemit-p1-reboot" cell for the SpacemiT P1 chip. diff --git a/SPECS/linux-lts-kmhv2/0314-FROMLIST-regulator-spacemit-MFD_SPACEMIT_P1-as-depen.patch b/SPECS/linux-lts-kmhv2/0314-FROMLIST-regulator-spacemit-MFD_SPACEMIT_P1-as-depen.patch index 6dfcd96600..2e6395db50 100644 --- a/SPECS/linux-lts-kmhv2/0314-FROMLIST-regulator-spacemit-MFD_SPACEMIT_P1-as-depen.patch +++ b/SPECS/linux-lts-kmhv2/0314-FROMLIST-regulator-spacemit-MFD_SPACEMIT_P1-as-depen.patch @@ -1,7 +1,7 @@ -From 454712fedf570ad8e52defdca4d86a789ae66c49 Mon Sep 17 00:00:00 2001 +From 976f3a509c35b7b5a88d9f5f44f15301bbfef945 Mon Sep 17 00:00:00 2001 From: Troy Mitchell Date: Thu, 8 Jan 2026 16:38:54 +0800 -Subject: [PATCH 314/467] FROMLIST: regulator: spacemit: MFD_SPACEMIT_P1 as +Subject: [RUYI PATCH] FROMLIST: regulator: spacemit: MFD_SPACEMIT_P1 as dependencies REGULATOR_SPACEMIT_P1 is a subdevice of P1 and should depend on diff --git a/SPECS/linux-lts-kmhv2/0315-FROMLIST-rtc-spacemit-default-module-when-MFD_SPACEM.patch b/SPECS/linux-lts-kmhv2/0315-FROMLIST-rtc-spacemit-default-module-when-MFD_SPACEM.patch index e05b43ffa7..a28f57c29e 100644 --- a/SPECS/linux-lts-kmhv2/0315-FROMLIST-rtc-spacemit-default-module-when-MFD_SPACEM.patch +++ b/SPECS/linux-lts-kmhv2/0315-FROMLIST-rtc-spacemit-default-module-when-MFD_SPACEM.patch @@ -1,7 +1,7 @@ -From 2364564dbaafd4e805bbea77f317865dd5622725 Mon Sep 17 00:00:00 2001 +From f7a63859a84191dd8619e6a34c9bf4d6664dcf23 Mon Sep 17 00:00:00 2001 From: Troy Mitchell Date: Thu, 8 Jan 2026 16:38:56 +0800 -Subject: [PATCH 315/467] FROMLIST: rtc: spacemit: default module when +Subject: [RUYI PATCH] FROMLIST: rtc: spacemit: default module when MFD_SPACEMIT_P1 is enabled The RTC driver defaulted to the same value as MFD_SPACEMIT_P1, which diff --git a/SPECS/linux-lts-kmhv2/0316-FROMLIST-spi-dt-bindings-add-SpacemiT-K1-SPI-support.patch b/SPECS/linux-lts-kmhv2/0316-FROMLIST-spi-dt-bindings-add-SpacemiT-K1-SPI-support.patch index 1418affeb4..6981bb7c1e 100644 --- a/SPECS/linux-lts-kmhv2/0316-FROMLIST-spi-dt-bindings-add-SpacemiT-K1-SPI-support.patch +++ b/SPECS/linux-lts-kmhv2/0316-FROMLIST-spi-dt-bindings-add-SpacemiT-K1-SPI-support.patch @@ -1,8 +1,7 @@ -From a1ffb3d0ac5dd81cbe0345aa8213f747b7560145 Mon Sep 17 00:00:00 2001 +From 2a9661946f61c576e2b7534403eae881deb90a82 Mon Sep 17 00:00:00 2001 From: Alex Elder Date: Sat, 2 May 2026 21:30:51 -0400 -Subject: [PATCH 316/467] FROMLIST: spi: dt-bindings: add SpacemiT K1 SPI - support +Subject: [RUYI PATCH] FROMLIST: spi: dt-bindings: add SpacemiT K1 SPI support Add support for the SPI controller implemented by the SpacemiT K1 SoC. diff --git a/SPECS/linux-lts-kmhv2/0317-FROMLIST-spi-spacemit-introduce-SpacemiT-K1-SPI-cont.patch b/SPECS/linux-lts-kmhv2/0317-FROMLIST-spi-spacemit-introduce-SpacemiT-K1-SPI-cont.patch index 4359fe4be8..0ee0c336df 100644 --- a/SPECS/linux-lts-kmhv2/0317-FROMLIST-spi-spacemit-introduce-SpacemiT-K1-SPI-cont.patch +++ b/SPECS/linux-lts-kmhv2/0317-FROMLIST-spi-spacemit-introduce-SpacemiT-K1-SPI-cont.patch @@ -1,7 +1,7 @@ -From 63948c550b2a578e8e796c78af7e572c4b02c041 Mon Sep 17 00:00:00 2001 +From 36ae899198d9231685aaf77e1dbcd6d51b0c9a76 Mon Sep 17 00:00:00 2001 From: Alex Elder Date: Sat, 2 May 2026 21:30:52 -0400 -Subject: [PATCH 317/467] FROMLIST: spi: spacemit: introduce SpacemiT K1 SPI +Subject: [RUYI PATCH] FROMLIST: spi: spacemit: introduce SpacemiT K1 SPI controller driver This patch introduces the driver for the SPI controller found in the diff --git a/SPECS/linux-lts-kmhv2/0318-FROMLIST-riscv-dts-spacemit-define-a-SPI-controller-.patch b/SPECS/linux-lts-kmhv2/0318-FROMLIST-riscv-dts-spacemit-define-a-SPI-controller-.patch index 0b7dc30a96..e4a7aa5c83 100644 --- a/SPECS/linux-lts-kmhv2/0318-FROMLIST-riscv-dts-spacemit-define-a-SPI-controller-.patch +++ b/SPECS/linux-lts-kmhv2/0318-FROMLIST-riscv-dts-spacemit-define-a-SPI-controller-.patch @@ -1,8 +1,8 @@ -From 6d39268afdf29820170db1c0b7f7b3d785ed0795 Mon Sep 17 00:00:00 2001 +From e61e5b8803d80c43b4959f8e4b6e863d1730fe51 Mon Sep 17 00:00:00 2001 From: Alex Elder Date: Sat, 2 May 2026 21:30:53 -0400 -Subject: [PATCH 318/467] FROMLIST: riscv: dts: spacemit: define a SPI - controller node +Subject: [RUYI PATCH] FROMLIST: riscv: dts: spacemit: define a SPI controller + node Define a node for the fourth SoC SPI controller (number 3) on the SpacemiT K1 SoC. diff --git a/SPECS/linux-lts-kmhv2/0319-FROMLIST-dt-bindings-thermal-Add-SpacemiT-K1-thermal.patch b/SPECS/linux-lts-kmhv2/0319-FROMLIST-dt-bindings-thermal-Add-SpacemiT-K1-thermal.patch index ff0f94f63b..7bd9ac4c2d 100644 --- a/SPECS/linux-lts-kmhv2/0319-FROMLIST-dt-bindings-thermal-Add-SpacemiT-K1-thermal.patch +++ b/SPECS/linux-lts-kmhv2/0319-FROMLIST-dt-bindings-thermal-Add-SpacemiT-K1-thermal.patch @@ -1,8 +1,8 @@ -From 28a0a1dcd7e90cf89bf17b18faf7da6856e72983 Mon Sep 17 00:00:00 2001 +From 7769d31e702d0f09a02488efb2a7b55c42255417 Mon Sep 17 00:00:00 2001 From: Shuwei Wu Date: Mon, 27 Apr 2026 15:15:15 +0800 -Subject: [PATCH 319/467] FROMLIST: dt-bindings: thermal: Add SpacemiT K1 - thermal sensor +Subject: [RUYI PATCH] FROMLIST: dt-bindings: thermal: Add SpacemiT K1 thermal + sensor Document the SpacemiT K1 Thermal Sensor, which supports monitoring temperatures for five zones: soc, package, gpu, cluster0, diff --git a/SPECS/linux-lts-kmhv2/0320-FROMLIST-thermal-spacemit-k1-Add-thermal-sensor-supp.patch b/SPECS/linux-lts-kmhv2/0320-FROMLIST-thermal-spacemit-k1-Add-thermal-sensor-supp.patch index 7b249b4f9e..0a1aad818b 100644 --- a/SPECS/linux-lts-kmhv2/0320-FROMLIST-thermal-spacemit-k1-Add-thermal-sensor-supp.patch +++ b/SPECS/linux-lts-kmhv2/0320-FROMLIST-thermal-spacemit-k1-Add-thermal-sensor-supp.patch @@ -1,7 +1,7 @@ -From 28919e9eba67c4c3ff61ca30861fad9fbcf74dca Mon Sep 17 00:00:00 2001 +From e87ee0243fcb7c4480eb9766f9800d4905e11b24 Mon Sep 17 00:00:00 2001 From: Shuwei Wu Date: Mon, 27 Apr 2026 15:15:16 +0800 -Subject: [PATCH 320/467] FROMLIST: thermal: spacemit: k1: Add thermal sensor +Subject: [RUYI PATCH] FROMLIST: thermal: spacemit: k1: Add thermal sensor support The thermal sensor on K1 supports monitoring five temperature zones. diff --git a/SPECS/linux-lts-kmhv2/0321-FROMLIST-riscv-dts-spacemit-Add-thermal-sensor-for-K.patch b/SPECS/linux-lts-kmhv2/0321-FROMLIST-riscv-dts-spacemit-Add-thermal-sensor-for-K.patch index e7612aa962..6ad93704d4 100644 --- a/SPECS/linux-lts-kmhv2/0321-FROMLIST-riscv-dts-spacemit-Add-thermal-sensor-for-K.patch +++ b/SPECS/linux-lts-kmhv2/0321-FROMLIST-riscv-dts-spacemit-Add-thermal-sensor-for-K.patch @@ -1,8 +1,8 @@ -From 620eb1089f29269e2b8d8cb733ae93bd8bf2b73a Mon Sep 17 00:00:00 2001 +From 99bf7248cb67723d749134575afb9fcb3425bccd Mon Sep 17 00:00:00 2001 From: Shuwei Wu Date: Mon, 27 Apr 2026 15:15:17 +0800 -Subject: [PATCH 321/467] FROMLIST: riscv: dts: spacemit: Add thermal sensor - for K1 SoC +Subject: [RUYI PATCH] FROMLIST: riscv: dts: spacemit: Add thermal sensor for + K1 SoC Include the Thermal Sensor node in the SpacemiT K1 dtsi with definitions for registers, clocks, and interrupts. diff --git a/SPECS/linux-lts-kmhv2/0322-FROMLIST-net-spacemit-Free-rings-of-memory-after-unm.patch b/SPECS/linux-lts-kmhv2/0322-FROMLIST-net-spacemit-Free-rings-of-memory-after-unm.patch index 59ab5c280e..560b162481 100644 --- a/SPECS/linux-lts-kmhv2/0322-FROMLIST-net-spacemit-Free-rings-of-memory-after-unm.patch +++ b/SPECS/linux-lts-kmhv2/0322-FROMLIST-net-spacemit-Free-rings-of-memory-after-unm.patch @@ -1,7 +1,7 @@ -From 9b48aded2603c80a65f27877a0ac7d5d6c21f77b Mon Sep 17 00:00:00 2001 +From 83a04d13a39350e2059289ae74da6a837187c63e Mon Sep 17 00:00:00 2001 From: Vivian Wang Date: Tue, 3 Mar 2026 17:24:21 +0800 -Subject: [PATCH 322/467] FROMLIST: net: spacemit: Free rings of memory after +Subject: [RUYI PATCH] FROMLIST: net: spacemit: Free rings of memory after unmapping DMA In emac_free_{tx,rx}_resources, call dma_free_coherent() to unmap DMA diff --git a/SPECS/linux-lts-kmhv2/0323-FROMLIST-riscv-mm-Extract-helper-mark_new_valid_map.patch b/SPECS/linux-lts-kmhv2/0323-FROMLIST-riscv-mm-Extract-helper-mark_new_valid_map.patch index 3dea49628f..5a383caca0 100644 --- a/SPECS/linux-lts-kmhv2/0323-FROMLIST-riscv-mm-Extract-helper-mark_new_valid_map.patch +++ b/SPECS/linux-lts-kmhv2/0323-FROMLIST-riscv-mm-Extract-helper-mark_new_valid_map.patch @@ -1,8 +1,7 @@ -From 52f87bf6d6ba5fb8c57374827a76e0cfdaa332f4 Mon Sep 17 00:00:00 2001 +From 0615284b82b82ee1dc7ccbc7146e31afa8bbbc9f Mon Sep 17 00:00:00 2001 From: Vivian Wang Date: Tue, 3 Mar 2026 13:29:45 +0800 -Subject: [PATCH 323/467] FROMLIST: riscv: mm: Extract helper - mark_new_valid_map() +Subject: [RUYI PATCH] FROMLIST: riscv: mm: Extract helper mark_new_valid_map() In preparation of a future patch using the same mechanism for non-vmalloc addresses, extract the mark_new_valid_map() helper from diff --git a/SPECS/linux-lts-kmhv2/0324-FROMLIST-riscv-kfence-Call-mark_new_valid_map-for-kf.patch b/SPECS/linux-lts-kmhv2/0324-FROMLIST-riscv-kfence-Call-mark_new_valid_map-for-kf.patch index e67a8f5e7c..24cfe28e1b 100644 --- a/SPECS/linux-lts-kmhv2/0324-FROMLIST-riscv-kfence-Call-mark_new_valid_map-for-kf.patch +++ b/SPECS/linux-lts-kmhv2/0324-FROMLIST-riscv-kfence-Call-mark_new_valid_map-for-kf.patch @@ -1,8 +1,8 @@ -From 8417f8da2a6a1f07550805e452db0d0ebe5c568a Mon Sep 17 00:00:00 2001 +From a6ee02e2ad7a759a5906206b87b7525c1ac580e4 Mon Sep 17 00:00:00 2001 From: Vivian Wang Date: Tue, 3 Mar 2026 13:29:46 +0800 -Subject: [PATCH 324/467] FROMLIST: riscv: kfence: Call mark_new_valid_map() - for kfence_unprotect() +Subject: [RUYI PATCH] FROMLIST: riscv: kfence: Call mark_new_valid_map() for + kfence_unprotect() In kfence_protect_page(), which kfence_unprotect() calls, we cannot send IPIs to other CPUs to ask them to flush TLB. This may lead to those CPUs diff --git a/SPECS/linux-lts-kmhv2/0325-FROMLIST-riscv-mm-Rename-new_vmalloc-into-new_valid_.patch b/SPECS/linux-lts-kmhv2/0325-FROMLIST-riscv-mm-Rename-new_vmalloc-into-new_valid_.patch index de6f2fb9c4..a75c6a24b4 100644 --- a/SPECS/linux-lts-kmhv2/0325-FROMLIST-riscv-mm-Rename-new_vmalloc-into-new_valid_.patch +++ b/SPECS/linux-lts-kmhv2/0325-FROMLIST-riscv-mm-Rename-new_vmalloc-into-new_valid_.patch @@ -1,7 +1,7 @@ -From 99970ee4696d11a17cec30bcbaae18f61ca484e0 Mon Sep 17 00:00:00 2001 +From 0ff2687ed24d31a6e1dcee2c1fd287112688dabe Mon Sep 17 00:00:00 2001 From: Vivian Wang Date: Tue, 3 Mar 2026 13:29:47 +0800 -Subject: [PATCH 325/467] FROMLIST: riscv: mm: Rename new_vmalloc into +Subject: [RUYI PATCH] FROMLIST: riscv: mm: Rename new_vmalloc into new_valid_map_cpus Since this mechanism is now used for the kfence pool, which comes from diff --git a/SPECS/linux-lts-kmhv2/0326-FROMLIST-riscv-mm-Use-the-bitmap-API-for-new_valid_m.patch b/SPECS/linux-lts-kmhv2/0326-FROMLIST-riscv-mm-Use-the-bitmap-API-for-new_valid_m.patch index 4e1aa9308b..6e8c075234 100644 --- a/SPECS/linux-lts-kmhv2/0326-FROMLIST-riscv-mm-Use-the-bitmap-API-for-new_valid_m.patch +++ b/SPECS/linux-lts-kmhv2/0326-FROMLIST-riscv-mm-Use-the-bitmap-API-for-new_valid_m.patch @@ -1,7 +1,7 @@ -From de070642f61aec41c533f778ceb930d16a10c18b Mon Sep 17 00:00:00 2001 +From e7c9b52a88814781a9b973a8bc5d43cb3655f869 Mon Sep 17 00:00:00 2001 From: Vivian Wang Date: Tue, 3 Mar 2026 13:29:48 +0800 -Subject: [PATCH 326/467] FROMLIST: riscv: mm: Use the bitmap API for +Subject: [RUYI PATCH] FROMLIST: riscv: mm: Use the bitmap API for new_valid_map_cpus The bitmap was defined with incorrect size. Fix it by using the proper diff --git a/SPECS/linux-lts-kmhv2/0327-FROMLIST-riscv-mm-Unconditionally-sfence.vma-for-spu.patch b/SPECS/linux-lts-kmhv2/0327-FROMLIST-riscv-mm-Unconditionally-sfence.vma-for-spu.patch index 5c74f6500e..9d00d9a51f 100644 --- a/SPECS/linux-lts-kmhv2/0327-FROMLIST-riscv-mm-Unconditionally-sfence.vma-for-spu.patch +++ b/SPECS/linux-lts-kmhv2/0327-FROMLIST-riscv-mm-Unconditionally-sfence.vma-for-spu.patch @@ -1,7 +1,7 @@ -From 4ffd4c28732d478d17dffb2e85279d7eca746271 Mon Sep 17 00:00:00 2001 +From 0236a57f077395bd67012bf4e9d33ba23ecdedd5 Mon Sep 17 00:00:00 2001 From: Vivian Wang Date: Tue, 3 Mar 2026 13:29:49 +0800 -Subject: [PATCH 327/467] FROMLIST: riscv: mm: Unconditionally sfence.vma for +Subject: [RUYI PATCH] FROMLIST: riscv: mm: Unconditionally sfence.vma for spurious fault Svvptc does not guarantee that it's safe to just return here. Since we diff --git a/SPECS/linux-lts-kmhv2/0328-FROMLIST-dt-bindings-phy-spacemit-k3-add-USB2-PHY-su.patch b/SPECS/linux-lts-kmhv2/0328-FROMLIST-dt-bindings-phy-spacemit-k3-add-USB2-PHY-su.patch index 43c7534f17..113e960802 100644 --- a/SPECS/linux-lts-kmhv2/0328-FROMLIST-dt-bindings-phy-spacemit-k3-add-USB2-PHY-su.patch +++ b/SPECS/linux-lts-kmhv2/0328-FROMLIST-dt-bindings-phy-spacemit-k3-add-USB2-PHY-su.patch @@ -1,8 +1,8 @@ -From bba7975767efba6ca778e4283bcfd050aa140145 Mon Sep 17 00:00:00 2001 +From 1bee6d3eac2cd34b39a8ce2c3e590aaf2f4f38f1 Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Thu, 5 Mar 2026 01:00:51 +0000 -Subject: [PATCH 328/467] FROMLIST: dt-bindings: phy: spacemit: k3: add USB2 - PHY support +Subject: [RUYI PATCH] FROMLIST: dt-bindings: phy: spacemit: k3: add USB2 PHY + support Introduce a compatible string for the USB2 PHY in SpacemiT K3 SoC. The IP of USB2 PHY mostly shares the same functionalities with K1 SoC, while has diff --git a/SPECS/linux-lts-kmhv2/0329-FROMLIST-phy-k1-usb-k3-add-USB2-PHY-support.patch b/SPECS/linux-lts-kmhv2/0329-FROMLIST-phy-k1-usb-k3-add-USB2-PHY-support.patch index 1d3d66b5ab..309f8ea1b2 100644 --- a/SPECS/linux-lts-kmhv2/0329-FROMLIST-phy-k1-usb-k3-add-USB2-PHY-support.patch +++ b/SPECS/linux-lts-kmhv2/0329-FROMLIST-phy-k1-usb-k3-add-USB2-PHY-support.patch @@ -1,7 +1,7 @@ -From 0ad076c041bad32acd43346053a2e901e8f92fe6 Mon Sep 17 00:00:00 2001 +From e42b13b733fe6bf35801da4dd939e98421377976 Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Thu, 5 Mar 2026 01:00:52 +0000 -Subject: [PATCH 329/467] FROMLIST: phy: k1-usb: k3: add USB2 PHY support +Subject: [RUYI PATCH] FROMLIST: phy: k1-usb: k3: add USB2 PHY support Add USB2 PHY support for SpacemiT K3 SoC. diff --git a/SPECS/linux-lts-kmhv2/0330-FROMLIST-cpufreq-dt-platdev-Add-SpacemiT-K1-SoC-to-t.patch b/SPECS/linux-lts-kmhv2/0330-FROMLIST-cpufreq-dt-platdev-Add-SpacemiT-K1-SoC-to-t.patch index 3e745bddcc..f84dd26276 100644 --- a/SPECS/linux-lts-kmhv2/0330-FROMLIST-cpufreq-dt-platdev-Add-SpacemiT-K1-SoC-to-t.patch +++ b/SPECS/linux-lts-kmhv2/0330-FROMLIST-cpufreq-dt-platdev-Add-SpacemiT-K1-SoC-to-t.patch @@ -1,7 +1,7 @@ -From 23c19485341345cc9ae14d6943205d5dec3eb56e Mon Sep 17 00:00:00 2001 +From 313a26d3fa86f65c2c9bcfdaa1d325594d4d3960 Mon Sep 17 00:00:00 2001 From: Shuwei Wu Date: Fri, 10 Apr 2026 15:58:22 +0800 -Subject: [PATCH 330/467] FROMLIST: cpufreq: dt-platdev: Add SpacemiT K1 SoC to +Subject: [RUYI PATCH] FROMLIST: cpufreq: dt-platdev: Add SpacemiT K1 SoC to the allowlist The SpacemiT K1 SoC uses standard device tree based CPU frequency diff --git a/SPECS/linux-lts-kmhv2/0331-FROMLIST-riscv-dts-spacemit-Add-cpu-scaling-for-K1-S.patch b/SPECS/linux-lts-kmhv2/0331-FROMLIST-riscv-dts-spacemit-Add-cpu-scaling-for-K1-S.patch index 4dea3b010e..ab37eecf22 100644 --- a/SPECS/linux-lts-kmhv2/0331-FROMLIST-riscv-dts-spacemit-Add-cpu-scaling-for-K1-S.patch +++ b/SPECS/linux-lts-kmhv2/0331-FROMLIST-riscv-dts-spacemit-Add-cpu-scaling-for-K1-S.patch @@ -1,8 +1,8 @@ -From 2dd9746124535df6e29c3f1b6ac66084412c1e34 Mon Sep 17 00:00:00 2001 +From 76023519e9da3b79768d23f7ffe1a08e230674bd Mon Sep 17 00:00:00 2001 From: Shuwei Wu Date: Fri, 10 Apr 2026 15:58:23 +0800 -Subject: [PATCH 331/467] FROMLIST: riscv: dts: spacemit: Add cpu scaling for - K1 SoC +Subject: [RUYI PATCH] FROMLIST: riscv: dts: spacemit: Add cpu scaling for K1 + SoC Add Operating Performance Points (OPP) tables and CPU clock properties for the two clusters in the SpacemiT K1 SoC. diff --git a/SPECS/linux-lts-kmhv2/0332-FROMLIST-riscv-mm-Define-DIRECT_MAP_PHYSMEM_END.patch b/SPECS/linux-lts-kmhv2/0332-FROMLIST-riscv-mm-Define-DIRECT_MAP_PHYSMEM_END.patch index 6f2c86a077..a5d6058fa5 100644 --- a/SPECS/linux-lts-kmhv2/0332-FROMLIST-riscv-mm-Define-DIRECT_MAP_PHYSMEM_END.patch +++ b/SPECS/linux-lts-kmhv2/0332-FROMLIST-riscv-mm-Define-DIRECT_MAP_PHYSMEM_END.patch @@ -1,7 +1,7 @@ -From 84df59a45f81e8ef941f44d41c695a0186bc324d Mon Sep 17 00:00:00 2001 +From b71c8252ef37bceafb077b1ac8b79eb81f094356 Mon Sep 17 00:00:00 2001 From: Vivian Wang Date: Mon, 9 Mar 2026 19:09:38 +0800 -Subject: [PATCH 332/467] FROMLIST: riscv: mm: Define DIRECT_MAP_PHYSMEM_END +Subject: [RUYI PATCH] FROMLIST: riscv: mm: Define DIRECT_MAP_PHYSMEM_END On RISC-V, the actual mappable range of physical address space is dependent on the current MMU mode i.e. satp_mode (See diff --git a/SPECS/linux-lts-kmhv2/0333-FROMLIST-drm-verisilicon-add-max-cursor-size-to-HWDB.patch b/SPECS/linux-lts-kmhv2/0333-FROMLIST-drm-verisilicon-add-max-cursor-size-to-HWDB.patch index ffdaa4ceaf..3cac36fd67 100644 --- a/SPECS/linux-lts-kmhv2/0333-FROMLIST-drm-verisilicon-add-max-cursor-size-to-HWDB.patch +++ b/SPECS/linux-lts-kmhv2/0333-FROMLIST-drm-verisilicon-add-max-cursor-size-to-HWDB.patch @@ -1,8 +1,7 @@ -From e9080d8837f54bf02fccf98d737de780bbba0ca0 Mon Sep 17 00:00:00 2001 +From 3d54bf791cf5017cc96bc5222094dc98fb50e585 Mon Sep 17 00:00:00 2001 From: Icenowy Zheng Date: Thu, 7 May 2026 01:56:09 +0800 -Subject: [PATCH 333/467] FROMLIST: drm: verisilicon: add max cursor size to - HWDB +Subject: [RUYI PATCH] FROMLIST: drm: verisilicon: add max cursor size to HWDB Different display controller variants support different maximum cursor size. All known DC8200 variants support both 32x32 and 64x64, but some diff --git a/SPECS/linux-lts-kmhv2/0334-FROMLIST-drm-verisilicon-add-support-for-cursor-plan.patch b/SPECS/linux-lts-kmhv2/0334-FROMLIST-drm-verisilicon-add-support-for-cursor-plan.patch index efa9ea2a66..0430f73844 100644 --- a/SPECS/linux-lts-kmhv2/0334-FROMLIST-drm-verisilicon-add-support-for-cursor-plan.patch +++ b/SPECS/linux-lts-kmhv2/0334-FROMLIST-drm-verisilicon-add-support-for-cursor-plan.patch @@ -1,7 +1,7 @@ -From 2bd08175bb99fd7bbb5cb6b7fdd965ec4ba85dc8 Mon Sep 17 00:00:00 2001 +From 5b2cb452135b05fe65a5440fa7f2e39d9b28d5f3 Mon Sep 17 00:00:00 2001 From: Icenowy Zheng Date: Thu, 7 May 2026 01:56:10 +0800 -Subject: [PATCH 334/467] FROMLIST: drm: verisilicon: add support for cursor +Subject: [RUYI PATCH] FROMLIST: drm: verisilicon: add support for cursor planes Verisilicon display controllers support hardware cursors per output diff --git a/SPECS/linux-lts-kmhv2/0335-FROMLIST-riscv-add-UltraRISC-SoC-family-Kconfig-supp.patch b/SPECS/linux-lts-kmhv2/0335-FROMLIST-riscv-add-UltraRISC-SoC-family-Kconfig-supp.patch index a0682cc71a..6d1f390fdf 100644 --- a/SPECS/linux-lts-kmhv2/0335-FROMLIST-riscv-add-UltraRISC-SoC-family-Kconfig-supp.patch +++ b/SPECS/linux-lts-kmhv2/0335-FROMLIST-riscv-add-UltraRISC-SoC-family-Kconfig-supp.patch @@ -1,7 +1,7 @@ -From cfebf812bf3cf178789e8e4b6e59b083c727c04a Mon Sep 17 00:00:00 2001 +From 7670121cc9020d50b0705929db01a06e18578be0 Mon Sep 17 00:00:00 2001 From: Jia Wang Date: Mon, 27 Apr 2026 09:32:10 +0800 -Subject: [PATCH 335/467] FROMLIST: riscv: add UltraRISC SoC family Kconfig +Subject: [RUYI PATCH] FROMLIST: riscv: add UltraRISC SoC family Kconfig support The first SoC in the UltraRISC series is UR-DP1000, containing octa diff --git a/SPECS/linux-lts-kmhv2/0336-FROMLIST-dt-bindings-PCI-Add-UltraRISC-DP1000-PCIe-c.patch b/SPECS/linux-lts-kmhv2/0336-FROMLIST-dt-bindings-PCI-Add-UltraRISC-DP1000-PCIe-c.patch index 3b43f26e44..e2d8d4c7b2 100644 --- a/SPECS/linux-lts-kmhv2/0336-FROMLIST-dt-bindings-PCI-Add-UltraRISC-DP1000-PCIe-c.patch +++ b/SPECS/linux-lts-kmhv2/0336-FROMLIST-dt-bindings-PCI-Add-UltraRISC-DP1000-PCIe-c.patch @@ -1,7 +1,7 @@ -From e5f3fecea63d9f7a27e40543136978db11aaa96e Mon Sep 17 00:00:00 2001 +From 7bdcfb039d0ab0b746a0ee44a449149463a7b94e Mon Sep 17 00:00:00 2001 From: Jia Wang Date: Mon, 27 Apr 2026 09:32:11 +0800 -Subject: [PATCH 336/467] FROMLIST: dt-bindings: PCI: Add UltraRISC DP1000 PCIe +Subject: [RUYI PATCH] FROMLIST: dt-bindings: PCI: Add UltraRISC DP1000 PCIe controller Add UltraRISC DP1000 SoC PCIe controller devicetree bindings. diff --git a/SPECS/linux-lts-kmhv2/0337-FROMLIST-PCI-ultrarisc-Add-UltraRISC-DP1000-PCIe-Roo.patch b/SPECS/linux-lts-kmhv2/0337-FROMLIST-PCI-ultrarisc-Add-UltraRISC-DP1000-PCIe-Roo.patch index 7be27531fb..520f243b8f 100644 --- a/SPECS/linux-lts-kmhv2/0337-FROMLIST-PCI-ultrarisc-Add-UltraRISC-DP1000-PCIe-Roo.patch +++ b/SPECS/linux-lts-kmhv2/0337-FROMLIST-PCI-ultrarisc-Add-UltraRISC-DP1000-PCIe-Roo.patch @@ -1,8 +1,8 @@ -From 5bcc18d72b72bff66068705f1f27ce4557a42f48 Mon Sep 17 00:00:00 2001 +From 4263860bea4eb50e8c9cce4769c096e144fd0400 Mon Sep 17 00:00:00 2001 From: Xincheng Zhang Date: Mon, 27 Apr 2026 09:32:12 +0800 -Subject: [PATCH 337/467] FROMLIST: PCI: ultrarisc: Add UltraRISC DP1000 PCIe - Root Complex driver +Subject: [RUYI PATCH] FROMLIST: PCI: ultrarisc: Add UltraRISC DP1000 PCIe Root + Complex driver Add DP1000 SoC PCIe Root Complex driver. diff --git a/SPECS/linux-lts-kmhv2/0338-FROMLIST-serial-8250_dwlib-move-DesignWare-register-.patch b/SPECS/linux-lts-kmhv2/0338-FROMLIST-serial-8250_dwlib-move-DesignWare-register-.patch index ec329324ac..43fcf3979b 100644 --- a/SPECS/linux-lts-kmhv2/0338-FROMLIST-serial-8250_dwlib-move-DesignWare-register-.patch +++ b/SPECS/linux-lts-kmhv2/0338-FROMLIST-serial-8250_dwlib-move-DesignWare-register-.patch @@ -1,8 +1,8 @@ -From 886ed98a1e1397b695753fffcc8263183552c408 Mon Sep 17 00:00:00 2001 +From 7215c59bd1680f8f694982585919d6ec01c2e009 Mon Sep 17 00:00:00 2001 From: Jia Wang Date: Tue, 28 Apr 2026 13:26:26 +0800 -Subject: [PATCH 338/467] FROMLIST: serial: 8250_dwlib: move DesignWare - register definitions to header +Subject: [RUYI PATCH] FROMLIST: serial: 8250_dwlib: move DesignWare register + definitions to header Move the DW_UART_* register offsets and CPR bit/field definitions from 8250_dwlib.c into 8250_dwlib.h so they can be shared by 8250_dw and diff --git a/SPECS/linux-lts-kmhv2/0339-FROMLIST-serial-8250_dw-build-Renesas-RZN1-CPR-value.patch b/SPECS/linux-lts-kmhv2/0339-FROMLIST-serial-8250_dw-build-Renesas-RZN1-CPR-value.patch index 130d9f9ba9..361bfc6547 100644 --- a/SPECS/linux-lts-kmhv2/0339-FROMLIST-serial-8250_dw-build-Renesas-RZN1-CPR-value.patch +++ b/SPECS/linux-lts-kmhv2/0339-FROMLIST-serial-8250_dw-build-Renesas-RZN1-CPR-value.patch @@ -1,8 +1,8 @@ -From 42a71ab9826c831f05fc6ceba6e355108b57394e Mon Sep 17 00:00:00 2001 +From 6180d1c44da7f8a61ffe42b1aa5f7fed0db947c5 Mon Sep 17 00:00:00 2001 From: Jia Wang Date: Tue, 28 Apr 2026 13:26:27 +0800 -Subject: [PATCH 339/467] FROMLIST: serial: 8250_dw: build Renesas RZN1 CPR - value from DW_UART_CPR_* definitions +Subject: [RUYI PATCH] FROMLIST: serial: 8250_dw: build Renesas RZN1 CPR value + from DW_UART_CPR_* definitions Replace the magic CPR value for Renesas RZ/N1 with a composition using DW_UART_CPR_* bit/field definitions and FIELD_PREP_CONST(). diff --git a/SPECS/linux-lts-kmhv2/0340-FROMLIST-dt-bindings-serial-snps-dw-apb-uart-Add-Ult.patch b/SPECS/linux-lts-kmhv2/0340-FROMLIST-dt-bindings-serial-snps-dw-apb-uart-Add-Ult.patch index 7595c4aa93..2d2f322fc8 100644 --- a/SPECS/linux-lts-kmhv2/0340-FROMLIST-dt-bindings-serial-snps-dw-apb-uart-Add-Ult.patch +++ b/SPECS/linux-lts-kmhv2/0340-FROMLIST-dt-bindings-serial-snps-dw-apb-uart-Add-Ult.patch @@ -1,7 +1,7 @@ -From 236f493127f843659bf2a955a31f416c1f8239bf Mon Sep 17 00:00:00 2001 +From 0b0183bf49240d8f6c2d66b6eaff2fe17c541d19 Mon Sep 17 00:00:00 2001 From: Jia Wang Date: Tue, 28 Apr 2026 13:26:28 +0800 -Subject: [PATCH 340/467] FROMLIST: dt-bindings: serial: snps-dw-apb-uart: Add +Subject: [RUYI PATCH] FROMLIST: dt-bindings: serial: snps-dw-apb-uart: Add UltraRISC DP1000 UART UltraRISC DP1000 integrates a Synopsys DesignWare APB UART, but it does diff --git a/SPECS/linux-lts-kmhv2/0341-FROMLIST-serial-8250_dw-Use-a-fixed-CPR-value-for-Ul.patch b/SPECS/linux-lts-kmhv2/0341-FROMLIST-serial-8250_dw-Use-a-fixed-CPR-value-for-Ul.patch index 35aee10ecf..710885bf79 100644 --- a/SPECS/linux-lts-kmhv2/0341-FROMLIST-serial-8250_dw-Use-a-fixed-CPR-value-for-Ul.patch +++ b/SPECS/linux-lts-kmhv2/0341-FROMLIST-serial-8250_dw-Use-a-fixed-CPR-value-for-Ul.patch @@ -1,7 +1,7 @@ -From 406c8fb8927861192219fce3ae1613ad4a1e0f0e Mon Sep 17 00:00:00 2001 +From 07e647f6d38a2395768391b1126d6af257685679 Mon Sep 17 00:00:00 2001 From: Jia Wang Date: Tue, 28 Apr 2026 13:26:29 +0800 -Subject: [PATCH 341/467] FROMLIST: serial: 8250_dw: Use a fixed CPR value for +Subject: [RUYI PATCH] FROMLIST: serial: 8250_dw: Use a fixed CPR value for UltraRISC DP1000 UART The UltraRISC DP1000 UART does not provide the standard CPR register used diff --git a/SPECS/linux-lts-kmhv2/0342-FROMLIST-riscv-disable-local-interrupts-and-stop-oth.patch b/SPECS/linux-lts-kmhv2/0342-FROMLIST-riscv-disable-local-interrupts-and-stop-oth.patch index 0f7ba1cddb..e964c8cfd5 100644 --- a/SPECS/linux-lts-kmhv2/0342-FROMLIST-riscv-disable-local-interrupts-and-stop-oth.patch +++ b/SPECS/linux-lts-kmhv2/0342-FROMLIST-riscv-disable-local-interrupts-and-stop-oth.patch @@ -1,8 +1,8 @@ -From 1c12aaa685ca33a5f2a5de71d4290b7374d1266c Mon Sep 17 00:00:00 2001 +From 53a9a6f9561ecf77c64e14e718b3c6677e450356 Mon Sep 17 00:00:00 2001 From: Troy Mitchell Date: Tue, 17 Mar 2026 16:48:06 +0800 -Subject: [PATCH 342/467] FROMLIST: riscv: disable local interrupts and stop - other CPUs before reboot/shutdown +Subject: [RUYI PATCH] FROMLIST: riscv: disable local interrupts and stop other + CPUs before reboot/shutdown Currently, the RISC-V implementation of machine_restart(), machine_halt(), and machine_power_off() invokes the kernel teardown chains (e.g., diff --git a/SPECS/linux-lts-kmhv2/0343-FROMLIST-drm-bridge-th1520-dw-hdmi-Fix-error-check-o.patch b/SPECS/linux-lts-kmhv2/0343-FROMLIST-drm-bridge-th1520-dw-hdmi-Fix-error-check-o.patch index 4858ae86ef..baf487668c 100644 --- a/SPECS/linux-lts-kmhv2/0343-FROMLIST-drm-bridge-th1520-dw-hdmi-Fix-error-check-o.patch +++ b/SPECS/linux-lts-kmhv2/0343-FROMLIST-drm-bridge-th1520-dw-hdmi-Fix-error-check-o.patch @@ -1,8 +1,8 @@ -From ccbeae62330c25b6ad110b82754b6ef592620f48 Mon Sep 17 00:00:00 2001 +From c3dbfd57b9930def2f6e386d4a107127d798a89e Mon Sep 17 00:00:00 2001 From: Felix Gu Date: Sat, 21 Mar 2026 03:12:10 +0800 -Subject: [PATCH 343/467] FROMLIST: drm/bridge: th1520-dw-hdmi: Fix error check - on dw_hdmi_probe() return value +Subject: [RUYI PATCH] FROMLIST: drm/bridge: th1520-dw-hdmi: Fix error check on + dw_hdmi_probe() return value The error check after calling dw_hdmi_probe() was incorrectly checking the struct pointer hdmi instead of the probe result hdmi->dw_hdmi. diff --git a/SPECS/linux-lts-kmhv2/0344-FROMLIST-drm-bridge-th1520-dw-hdmi-Fix-remove-callba.patch b/SPECS/linux-lts-kmhv2/0344-FROMLIST-drm-bridge-th1520-dw-hdmi-Fix-remove-callba.patch index 98f6f2d216..107fa9a940 100644 --- a/SPECS/linux-lts-kmhv2/0344-FROMLIST-drm-bridge-th1520-dw-hdmi-Fix-remove-callba.patch +++ b/SPECS/linux-lts-kmhv2/0344-FROMLIST-drm-bridge-th1520-dw-hdmi-Fix-remove-callba.patch @@ -1,7 +1,7 @@ -From a97ea68639336a5b8e0fdb9e4c6983351f80d0a9 Mon Sep 17 00:00:00 2001 +From e4498bef7d35202c1d4fff03e1f738c01c63141b Mon Sep 17 00:00:00 2001 From: Felix Gu Date: Sat, 21 Mar 2026 03:12:11 +0800 -Subject: [PATCH 344/467] FROMLIST: drm/bridge: th1520-dw-hdmi: Fix remove() +Subject: [RUYI PATCH] FROMLIST: drm/bridge: th1520-dw-hdmi: Fix remove() callback This driver stores struct th1520_hdmi * in platform drvdata, but diff --git a/SPECS/linux-lts-kmhv2/0345-FROMLIST-riscv-dts-spacemit-Enable-i2c8-adapter-for-.patch b/SPECS/linux-lts-kmhv2/0345-FROMLIST-riscv-dts-spacemit-Enable-i2c8-adapter-for-.patch index f3db0b293e..f320d51fd9 100644 --- a/SPECS/linux-lts-kmhv2/0345-FROMLIST-riscv-dts-spacemit-Enable-i2c8-adapter-for-.patch +++ b/SPECS/linux-lts-kmhv2/0345-FROMLIST-riscv-dts-spacemit-Enable-i2c8-adapter-for-.patch @@ -1,8 +1,8 @@ -From 166375a08d14e14a8b6eb3f9258fcba57cb866dc Mon Sep 17 00:00:00 2001 +From b6fedd583f0486d6ff23a73e611445adac11b2b7 Mon Sep 17 00:00:00 2001 From: Han Gao Date: Tue, 7 Apr 2026 23:28:14 +0800 -Subject: [PATCH 345/467] FROMLIST: riscv: dts: spacemit: Enable i2c8 adapter - for OrangePi RV2 +Subject: [RUYI PATCH] FROMLIST: riscv: dts: spacemit: Enable i2c8 adapter for + OrangePi RV2 The adapter is used to access the SpacemiT P1 PMIC present in this board. diff --git a/SPECS/linux-lts-kmhv2/0346-FROMLIST-riscv-dts-spacemit-Define-the-P1-PMIC-regul.patch b/SPECS/linux-lts-kmhv2/0346-FROMLIST-riscv-dts-spacemit-Define-the-P1-PMIC-regul.patch index 917a05e075..d8cc2b7e7f 100644 --- a/SPECS/linux-lts-kmhv2/0346-FROMLIST-riscv-dts-spacemit-Define-the-P1-PMIC-regul.patch +++ b/SPECS/linux-lts-kmhv2/0346-FROMLIST-riscv-dts-spacemit-Define-the-P1-PMIC-regul.patch @@ -1,7 +1,7 @@ -From 604976f3e404c825a56845e3b4bd0137fc436656 Mon Sep 17 00:00:00 2001 +From 8a8b83695e5206dc768419823d357d36066dcc1a Mon Sep 17 00:00:00 2001 From: Han Gao Date: Tue, 7 Apr 2026 23:28:15 +0800 -Subject: [PATCH 346/467] FROMLIST: riscv: dts: spacemit: Define the P1 PMIC +Subject: [RUYI PATCH] FROMLIST: riscv: dts: spacemit: Define the P1 PMIC regulators for OrangePi RV2 Define the DC power input and the 4v power as fixed regulator supplies. diff --git a/SPECS/linux-lts-kmhv2/0347-FROMLIST-riscv-dts-spacemit-Enable-USB3.0-PCIe-on-Or.patch b/SPECS/linux-lts-kmhv2/0347-FROMLIST-riscv-dts-spacemit-Enable-USB3.0-PCIe-on-Or.patch index cb5590d8b9..2eece049ed 100644 --- a/SPECS/linux-lts-kmhv2/0347-FROMLIST-riscv-dts-spacemit-Enable-USB3.0-PCIe-on-Or.patch +++ b/SPECS/linux-lts-kmhv2/0347-FROMLIST-riscv-dts-spacemit-Enable-USB3.0-PCIe-on-Or.patch @@ -1,7 +1,7 @@ -From f555e0c21e1df43b0df0074068872e999f825c2b Mon Sep 17 00:00:00 2001 +From be6360dcda59815d23e91c2273c7af8ee688b197 Mon Sep 17 00:00:00 2001 From: Han Gao Date: Tue, 7 Apr 2026 23:28:16 +0800 -Subject: [PATCH 347/467] FROMLIST: riscv: dts: spacemit: Enable USB3.0/PCIe on +Subject: [RUYI PATCH] FROMLIST: riscv: dts: spacemit: Enable USB3.0/PCIe on OrangePi RV2 Enable the DWC3 USB 3.0 controller and its associated usbphy2 on the diff --git a/SPECS/linux-lts-kmhv2/0348-FROMLIST-dt-bindings-dmaengine-Add-SpacemiT-K3-DMA-c.patch b/SPECS/linux-lts-kmhv2/0348-FROMLIST-dt-bindings-dmaengine-Add-SpacemiT-K3-DMA-c.patch index b8175caff4..ec194d2c76 100644 --- a/SPECS/linux-lts-kmhv2/0348-FROMLIST-dt-bindings-dmaengine-Add-SpacemiT-K3-DMA-c.patch +++ b/SPECS/linux-lts-kmhv2/0348-FROMLIST-dt-bindings-dmaengine-Add-SpacemiT-K3-DMA-c.patch @@ -1,7 +1,7 @@ -From 737838a83cfda4cb3b3cf4a600489972c9b23a6d Mon Sep 17 00:00:00 2001 +From 35352343154bd3b77a7ce708b33610ead4fa645b Mon Sep 17 00:00:00 2001 From: Guodong Xu Date: Mon, 18 May 2026 11:32:41 +0800 -Subject: [PATCH 348/467] FROMLIST: dt-bindings: dmaengine: Add SpacemiT K3 DMA +Subject: [RUYI PATCH] FROMLIST: dt-bindings: dmaengine: Add SpacemiT K3 DMA compatible string Add the "spacemit,k3-pdma" compatible string for the SpacemiT K3 SoC. diff --git a/SPECS/linux-lts-kmhv2/0349-FROMLIST-dmaengine-mmp_pdma-refactor-DRCMR-access-wi.patch b/SPECS/linux-lts-kmhv2/0349-FROMLIST-dmaengine-mmp_pdma-refactor-DRCMR-access-wi.patch index 71e53cff3d..2671371cc9 100644 --- a/SPECS/linux-lts-kmhv2/0349-FROMLIST-dmaengine-mmp_pdma-refactor-DRCMR-access-wi.patch +++ b/SPECS/linux-lts-kmhv2/0349-FROMLIST-dmaengine-mmp_pdma-refactor-DRCMR-access-wi.patch @@ -1,7 +1,7 @@ -From 5f2df0c7e8305b8b19caa95ac987d272196435e5 Mon Sep 17 00:00:00 2001 +From 086a8550aad82551854f105777656e655e68512f Mon Sep 17 00:00:00 2001 From: Guodong Xu Date: Mon, 18 May 2026 11:32:42 +0800 -Subject: [PATCH 349/467] FROMLIST: dmaengine: mmp_pdma: refactor DRCMR access +Subject: [RUYI PATCH] FROMLIST: dmaengine: mmp_pdma: refactor DRCMR access with helper function Refactor the DRCMR macro into a helper function mmp_pdma_get_drcmr() diff --git a/SPECS/linux-lts-kmhv2/0350-FROMLIST-dmaengine-mmp_pdma-add-SpacemiT-K3-support.patch b/SPECS/linux-lts-kmhv2/0350-FROMLIST-dmaengine-mmp_pdma-add-SpacemiT-K3-support.patch index 8c3206e558..db3d534951 100644 --- a/SPECS/linux-lts-kmhv2/0350-FROMLIST-dmaengine-mmp_pdma-add-SpacemiT-K3-support.patch +++ b/SPECS/linux-lts-kmhv2/0350-FROMLIST-dmaengine-mmp_pdma-add-SpacemiT-K3-support.patch @@ -1,8 +1,7 @@ -From 84f3de67f834507b179cd81bf093f799203f394a Mon Sep 17 00:00:00 2001 +From e077c02ed73be7f8782ceacc9a2f7dd9396857b0 Mon Sep 17 00:00:00 2001 From: Guodong Xu Date: Mon, 18 May 2026 11:32:43 +0800 -Subject: [PATCH 350/467] FROMLIST: dmaengine: mmp_pdma: add SpacemiT K3 - support +Subject: [RUYI PATCH] FROMLIST: dmaengine: mmp_pdma: add SpacemiT K3 support SpacemiT K3 reuses most of the PDMA IP design found on K1, with one difference being the extended DRCMR base address. Add "spacemit,k3-pdma" diff --git a/SPECS/linux-lts-kmhv2/0351-FROMLIST-riscv-dts-spacemit-Add-PDMA-controller-node.patch b/SPECS/linux-lts-kmhv2/0351-FROMLIST-riscv-dts-spacemit-Add-PDMA-controller-node.patch index 22e28c9866..3b955dda90 100644 --- a/SPECS/linux-lts-kmhv2/0351-FROMLIST-riscv-dts-spacemit-Add-PDMA-controller-node.patch +++ b/SPECS/linux-lts-kmhv2/0351-FROMLIST-riscv-dts-spacemit-Add-PDMA-controller-node.patch @@ -1,8 +1,8 @@ -From 35c22cf7e41f72e6b806aa58d4e48f88725f6c79 Mon Sep 17 00:00:00 2001 +From 21b7895de7539f827659bef3d905b99563ac4277 Mon Sep 17 00:00:00 2001 From: Troy Mitchell Date: Mon, 18 May 2026 11:32:44 +0800 -Subject: [PATCH 351/467] FROMLIST: riscv: dts: spacemit: Add PDMA controller - node for K3 SoC +Subject: [RUYI PATCH] FROMLIST: riscv: dts: spacemit: Add PDMA controller node + for K3 SoC Add the Peripheral DMA (PDMA) controller node for the SpacemiT K3 SoC. The PDMA controller provides general-purpose DMA capabilities for various diff --git a/SPECS/linux-lts-kmhv2/0352-FROMLIST-dt-bindings-pci-sophgo-Add-dma-coherent-pro.patch b/SPECS/linux-lts-kmhv2/0352-FROMLIST-dt-bindings-pci-sophgo-Add-dma-coherent-pro.patch index dbfadcecc7..505c1fcf8b 100644 --- a/SPECS/linux-lts-kmhv2/0352-FROMLIST-dt-bindings-pci-sophgo-Add-dma-coherent-pro.patch +++ b/SPECS/linux-lts-kmhv2/0352-FROMLIST-dt-bindings-pci-sophgo-Add-dma-coherent-pro.patch @@ -1,7 +1,7 @@ -From de29158aef7f0ff1a48fb23a0fed37c1d80cd812 Mon Sep 17 00:00:00 2001 +From e45053fa3fb846fee16140a46bfca3810a696d3a Mon Sep 17 00:00:00 2001 From: Han Gao Date: Wed, 1 Apr 2026 01:12:47 +0800 -Subject: [PATCH 352/467] FROMLIST: dt-bindings: pci: sophgo: Add dma-coherent +Subject: [RUYI PATCH] FROMLIST: dt-bindings: pci: sophgo: Add dma-coherent property for SG2042 Add dma-coherent as an allowed property in the SG2042 PCIe host diff --git a/SPECS/linux-lts-kmhv2/0353-FROMLIST-riscv-dts-sophgo-Add-dma-coherent-to-SG2042.patch b/SPECS/linux-lts-kmhv2/0353-FROMLIST-riscv-dts-sophgo-Add-dma-coherent-to-SG2042.patch index 9b7fdd2999..59e22401d2 100644 --- a/SPECS/linux-lts-kmhv2/0353-FROMLIST-riscv-dts-sophgo-Add-dma-coherent-to-SG2042.patch +++ b/SPECS/linux-lts-kmhv2/0353-FROMLIST-riscv-dts-sophgo-Add-dma-coherent-to-SG2042.patch @@ -1,8 +1,8 @@ -From 14a4dab155f695a1b19f164b9eeee33c118daf70 Mon Sep 17 00:00:00 2001 +From 4edb2b9deb6868de278295f9df339eb66e2dc5e6 Mon Sep 17 00:00:00 2001 From: Han Gao Date: Wed, 1 Apr 2026 01:12:48 +0800 -Subject: [PATCH 353/467] FROMLIST: riscv: dts: sophgo: Add dma-coherent to - SG2042 PCIe controllers +Subject: [RUYI PATCH] FROMLIST: riscv: dts: sophgo: Add dma-coherent to SG2042 + PCIe controllers SG2042's PCIe root complexes are cache-coherent with the CPU. Mark all four PCIe controller nodes (pcie_rc0 through pcie_rc3) as dma-coherent diff --git a/SPECS/linux-lts-kmhv2/0354-FROMLIST-riscv-mm-fix-SWIOTLB-initialization-for-sys.patch b/SPECS/linux-lts-kmhv2/0354-FROMLIST-riscv-mm-fix-SWIOTLB-initialization-for-sys.patch index 618303a1e3..54ce584981 100644 --- a/SPECS/linux-lts-kmhv2/0354-FROMLIST-riscv-mm-fix-SWIOTLB-initialization-for-sys.patch +++ b/SPECS/linux-lts-kmhv2/0354-FROMLIST-riscv-mm-fix-SWIOTLB-initialization-for-sys.patch @@ -1,7 +1,7 @@ -From 4d9c7d6292f64242b0740b0768cab12a1a481731 Mon Sep 17 00:00:00 2001 +From 4d5cd4b1f6fe26dc668fffd055e5d01af826c026 Mon Sep 17 00:00:00 2001 From: Troy Mitchell Date: Tue, 31 Mar 2026 15:37:22 +0800 -Subject: [PATCH 354/467] FROMLIST: riscv: mm: fix SWIOTLB initialization for +Subject: [RUYI PATCH] FROMLIST: riscv: mm: fix SWIOTLB initialization for systems with DRAM above 4GB On RISC-V platforms where the entire physical memory (DRAM) resides diff --git a/SPECS/linux-lts-kmhv2/0355-FROMLIST-riscv-dts-spacemit-k1-bananapi-f3-Add-vcc5v.patch b/SPECS/linux-lts-kmhv2/0355-FROMLIST-riscv-dts-spacemit-k1-bananapi-f3-Add-vcc5v.patch index 4200dc10cc..223d5a699f 100644 --- a/SPECS/linux-lts-kmhv2/0355-FROMLIST-riscv-dts-spacemit-k1-bananapi-f3-Add-vcc5v.patch +++ b/SPECS/linux-lts-kmhv2/0355-FROMLIST-riscv-dts-spacemit-k1-bananapi-f3-Add-vcc5v.patch @@ -1,7 +1,7 @@ -From 2dc1b2a77fff1059529b2bbe0401aebebcef36b6 Mon Sep 17 00:00:00 2001 +From 1e089bd4441c081e557a84db781ccfe5f79b5601 Mon Sep 17 00:00:00 2001 From: Anand Moon Date: Wed, 25 Mar 2026 13:46:08 +0530 -Subject: [PATCH 355/467] FROMLIST: riscv: dts: spacemit: k1-bananapi-f3: Add +Subject: [RUYI PATCH] FROMLIST: riscv: dts: spacemit: k1-bananapi-f3: Add vcc5v0_sys regulator for Banana Pi F3 Define the system 5V fixed regulator (vcc5v0_sys) supplied by the diff --git a/SPECS/linux-lts-kmhv2/0356-FROMLIST-riscv-dts-spacemit-k1-bananapi-f3-Update-US.patch b/SPECS/linux-lts-kmhv2/0356-FROMLIST-riscv-dts-spacemit-k1-bananapi-f3-Update-US.patch index 8ff016743a..5fda255af1 100644 --- a/SPECS/linux-lts-kmhv2/0356-FROMLIST-riscv-dts-spacemit-k1-bananapi-f3-Update-US.patch +++ b/SPECS/linux-lts-kmhv2/0356-FROMLIST-riscv-dts-spacemit-k1-bananapi-f3-Update-US.patch @@ -1,8 +1,8 @@ -From 9d3523b5cb45cb30a771f227a10b7c0231a04cca Mon Sep 17 00:00:00 2001 +From 9927a583ce5c19e8befcb7ed40a6238c53f79b35 Mon Sep 17 00:00:00 2001 From: Anand Moon Date: Wed, 25 Mar 2026 13:46:09 +0530 -Subject: [PATCH 356/467] FROMLIST: riscv: dts: spacemit: k1-bananapi-f3: - Update USB regulator on onboard usb and lable +Subject: [RUYI PATCH] FROMLIST: riscv: dts: spacemit: k1-bananapi-f3: Update + USB regulator on onboard usb and lable Update the USB regulator labels to align with the board schematics and power hierarchy. This change renames the regulator to reg_5v_vbus and diff --git a/SPECS/linux-lts-kmhv2/0357-FROMLIST-riscv-dts-spacemit-k1-bananapi-f3-Correct-U.patch b/SPECS/linux-lts-kmhv2/0357-FROMLIST-riscv-dts-spacemit-k1-bananapi-f3-Correct-U.patch index ea69bfa145..a3dbb529e4 100644 --- a/SPECS/linux-lts-kmhv2/0357-FROMLIST-riscv-dts-spacemit-k1-bananapi-f3-Correct-U.patch +++ b/SPECS/linux-lts-kmhv2/0357-FROMLIST-riscv-dts-spacemit-k1-bananapi-f3-Correct-U.patch @@ -1,8 +1,8 @@ -From c7a2f9b4d3c4915e78cf4248387543db008498e7 Mon Sep 17 00:00:00 2001 +From c3e497dbbb78a87638bd90cab0bd7540fd683d89 Mon Sep 17 00:00:00 2001 From: Anand Moon Date: Wed, 25 Mar 2026 13:46:10 +0530 -Subject: [PATCH 357/467] FROMLIST: riscv: dts: spacemit: k1-bananapi-f3: - Correct USB hub power hierarchy +Subject: [RUYI PATCH] FROMLIST: riscv: dts: spacemit: k1-bananapi-f3: Correct + USB hub power hierarchy MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit diff --git a/SPECS/linux-lts-kmhv2/0358-FROMLIST-riscv-dts-sophgo-sg2044-use-hex-for-CPU-uni.patch b/SPECS/linux-lts-kmhv2/0358-FROMLIST-riscv-dts-sophgo-sg2044-use-hex-for-CPU-uni.patch index eb490256c2..39245052d3 100644 --- a/SPECS/linux-lts-kmhv2/0358-FROMLIST-riscv-dts-sophgo-sg2044-use-hex-for-CPU-uni.patch +++ b/SPECS/linux-lts-kmhv2/0358-FROMLIST-riscv-dts-sophgo-sg2044-use-hex-for-CPU-uni.patch @@ -1,7 +1,7 @@ -From 630ef2347457f4560466095f5ad84c7b3acb944a Mon Sep 17 00:00:00 2001 +From a19f30eaeebdca312c928a1bd82a354ba9ce2e8e Mon Sep 17 00:00:00 2001 From: Inochi Amaoto Date: Sun, 26 Apr 2026 09:34:48 +0800 -Subject: [PATCH 358/467] FROMLIST: riscv: dts: sophgo: sg2044: use hex for CPU +Subject: [RUYI PATCH] FROMLIST: riscv: dts: sophgo: sg2044: use hex for CPU unit address Previous the CPU unit address cpu of sg2044 use decimal, it is diff --git a/SPECS/linux-lts-kmhv2/0359-FROMLIST-riscv-dts-sophgo-sg2042-use-hex-for-CPU-uni.patch b/SPECS/linux-lts-kmhv2/0359-FROMLIST-riscv-dts-sophgo-sg2042-use-hex-for-CPU-uni.patch index ae30ede27c..56f743e220 100644 --- a/SPECS/linux-lts-kmhv2/0359-FROMLIST-riscv-dts-sophgo-sg2042-use-hex-for-CPU-uni.patch +++ b/SPECS/linux-lts-kmhv2/0359-FROMLIST-riscv-dts-sophgo-sg2042-use-hex-for-CPU-uni.patch @@ -1,7 +1,7 @@ -From 067a2a1c8ce433461ac63ad6029f55a9ec8e23e5 Mon Sep 17 00:00:00 2001 +From 1e554a628178f25ce798d80c22f6e32c9013f918 Mon Sep 17 00:00:00 2001 From: Inochi Amaoto Date: Sun, 26 Apr 2026 09:34:49 +0800 -Subject: [PATCH 359/467] FROMLIST: riscv: dts: sophgo: sg2042: use hex for CPU +Subject: [RUYI PATCH] FROMLIST: riscv: dts: sophgo: sg2042: use hex for CPU unit address Previous the CPU unit address cpu of sg2042 use decimal, it is diff --git a/SPECS/linux-lts-kmhv2/0360-FROMLIST-riscv-Fix-fast_unaligned_access_speed_key-n.patch b/SPECS/linux-lts-kmhv2/0360-FROMLIST-riscv-Fix-fast_unaligned_access_speed_key-n.patch index 671d17f19a..3978b9eca3 100644 --- a/SPECS/linux-lts-kmhv2/0360-FROMLIST-riscv-Fix-fast_unaligned_access_speed_key-n.patch +++ b/SPECS/linux-lts-kmhv2/0360-FROMLIST-riscv-Fix-fast_unaligned_access_speed_key-n.patch @@ -1,8 +1,8 @@ -From 7874ddbe01ccbe13b5a4828243511becf3108c87 Mon Sep 17 00:00:00 2001 +From 344151a10b042115f283ccb3ceb2241243f4f16a Mon Sep 17 00:00:00 2001 From: Nam Cao Date: Tue, 7 Apr 2026 14:06:39 +0200 -Subject: [PATCH 360/467] FROMLIST: riscv: Fix fast_unaligned_access_speed_key - not getting initialized +Subject: [RUYI PATCH] FROMLIST: riscv: Fix fast_unaligned_access_speed_key not + getting initialized The static key fast_unaligned_access_speed_key is supposed to be initialized after check_unaligned_access_all_cpus() has been completed. diff --git a/SPECS/linux-lts-kmhv2/0361-FROMLIST-riscv-dts-sophgo-reduce-SG2042-MSI-count-to.patch b/SPECS/linux-lts-kmhv2/0361-FROMLIST-riscv-dts-sophgo-reduce-SG2042-MSI-count-to.patch index 032ecea051..4ca22126b9 100644 --- a/SPECS/linux-lts-kmhv2/0361-FROMLIST-riscv-dts-sophgo-reduce-SG2042-MSI-count-to.patch +++ b/SPECS/linux-lts-kmhv2/0361-FROMLIST-riscv-dts-sophgo-reduce-SG2042-MSI-count-to.patch @@ -1,8 +1,8 @@ -From 32a650e4403e9cc5000554982cacf78cf1e8d147 Mon Sep 17 00:00:00 2001 +From 6f609eb72f740d3d3be5b596fca48b7d76f3a181 Mon Sep 17 00:00:00 2001 From: Icenowy Zheng Date: Wed, 8 Apr 2026 00:01:43 +0800 -Subject: [PATCH 361/467] FROMLIST: riscv: dts: sophgo: reduce SG2042 MSI count - to 16 +Subject: [RUYI PATCH] FROMLIST: riscv: dts: sophgo: reduce SG2042 MSI count to + 16 The SG2042 MSI controller has one 32-bit doorbell register, and each bit corresponds to an interrupt. At a glance, it seems that the MSI diff --git a/SPECS/linux-lts-kmhv2/0362-FROMLIST-dt-bindings-pwm-marvell-pxa-pwm-Add-Spacemi.patch b/SPECS/linux-lts-kmhv2/0362-FROMLIST-dt-bindings-pwm-marvell-pxa-pwm-Add-Spacemi.patch index 81da872e3d..fe8f74bcb4 100644 --- a/SPECS/linux-lts-kmhv2/0362-FROMLIST-dt-bindings-pwm-marvell-pxa-pwm-Add-Spacemi.patch +++ b/SPECS/linux-lts-kmhv2/0362-FROMLIST-dt-bindings-pwm-marvell-pxa-pwm-Add-Spacemi.patch @@ -1,7 +1,7 @@ -From 4d5d4944086158dd4169828c2d3596f2ec8291f4 Mon Sep 17 00:00:00 2001 +From a42a4931c6355f9aec78b37eacf4e7f01afaa772 Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Tue, 28 Apr 2026 10:46:50 +0000 -Subject: [PATCH 362/467] FROMLIST: dt-bindings: pwm: marvell,pxa-pwm: Add +Subject: [RUYI PATCH] FROMLIST: dt-bindings: pwm: marvell,pxa-pwm: Add SpacemiT K3 PWM support The PWM controller in SpacemiT K3 SoC reuse the same IP as previous K1 diff --git a/SPECS/linux-lts-kmhv2/0363-FROMLIST-pwm-pxa-Add-optional-bus-clock.patch b/SPECS/linux-lts-kmhv2/0363-FROMLIST-pwm-pxa-Add-optional-bus-clock.patch index 0516614297..8346eff059 100644 --- a/SPECS/linux-lts-kmhv2/0363-FROMLIST-pwm-pxa-Add-optional-bus-clock.patch +++ b/SPECS/linux-lts-kmhv2/0363-FROMLIST-pwm-pxa-Add-optional-bus-clock.patch @@ -1,7 +1,7 @@ -From 9f3707cb456d37931f9025ad6d4c4f1e44e27460 Mon Sep 17 00:00:00 2001 +From 2173dcb3b9c7cd083216f7561ca2c80cc779e6c3 Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Tue, 28 Apr 2026 10:46:51 +0000 -Subject: [PATCH 363/467] FROMLIST: pwm: pxa: Add optional bus clock +Subject: [RUYI PATCH] FROMLIST: pwm: pxa: Add optional bus clock Add one secondary optional bus clock for the PWM PXA driver, also keep it compatible with old single clock. diff --git a/SPECS/linux-lts-kmhv2/0364-FROMLIST-riscv-ftrace-select-HAVE_BUILDTIME_MCOUNT_S.patch b/SPECS/linux-lts-kmhv2/0364-FROMLIST-riscv-ftrace-select-HAVE_BUILDTIME_MCOUNT_S.patch index d409c0ae6f..169b4e07b6 100644 --- a/SPECS/linux-lts-kmhv2/0364-FROMLIST-riscv-ftrace-select-HAVE_BUILDTIME_MCOUNT_S.patch +++ b/SPECS/linux-lts-kmhv2/0364-FROMLIST-riscv-ftrace-select-HAVE_BUILDTIME_MCOUNT_S.patch @@ -1,7 +1,7 @@ -From 6240fb17598cbb164c6964e57937b0e241213797 Mon Sep 17 00:00:00 2001 +From a9afe33a20c57d9588e3a723da69fe92572f5726 Mon Sep 17 00:00:00 2001 From: Chen Pei Date: Thu, 9 Apr 2026 19:47:36 +0800 -Subject: [PATCH 364/467] FROMLIST: riscv: ftrace: select +Subject: [RUYI PATCH] FROMLIST: riscv: ftrace: select HAVE_BUILDTIME_MCOUNT_SORT RISC-V already satisfies all prerequisites for build-time mcount sorting: diff --git a/SPECS/linux-lts-kmhv2/0365-FROMLIST-riscv-dts-spacemit-enable-USB3-on-OrangePi-.patch b/SPECS/linux-lts-kmhv2/0365-FROMLIST-riscv-dts-spacemit-enable-USB3-on-OrangePi-.patch index 0c063dad19..63660577e2 100644 --- a/SPECS/linux-lts-kmhv2/0365-FROMLIST-riscv-dts-spacemit-enable-USB3-on-OrangePi-.patch +++ b/SPECS/linux-lts-kmhv2/0365-FROMLIST-riscv-dts-spacemit-enable-USB3-on-OrangePi-.patch @@ -1,8 +1,8 @@ -From 198b6af6a42ee5ace108899f8074347faeed4504 Mon Sep 17 00:00:00 2001 +From 62c0719d1e7faf6136869e6f6da6b1f069f63523 Mon Sep 17 00:00:00 2001 From: Chukun Pan Date: Mon, 18 May 2026 18:00:30 +0800 -Subject: [PATCH 365/467] FROMLIST: riscv: dts: spacemit: enable USB3 on - OrangePi R2S +Subject: [RUYI PATCH] FROMLIST: riscv: dts: spacemit: enable USB3 on OrangePi + R2S Enable the DWC3 USB3.0 controller and its associated PHY on the OrangePi R2S. The USB regulator provides VBUS for USB2 and USB3 diff --git a/SPECS/linux-lts-kmhv2/0366-FROMLIST-dts-riscv-spacemit-correct-32k-clock-freque.patch b/SPECS/linux-lts-kmhv2/0366-FROMLIST-dts-riscv-spacemit-correct-32k-clock-freque.patch index 2398e5b545..84486826fc 100644 --- a/SPECS/linux-lts-kmhv2/0366-FROMLIST-dts-riscv-spacemit-correct-32k-clock-freque.patch +++ b/SPECS/linux-lts-kmhv2/0366-FROMLIST-dts-riscv-spacemit-correct-32k-clock-freque.patch @@ -1,7 +1,7 @@ -From 1810a45e1f7eb932747edb129c2cc22f50a85617 Mon Sep 17 00:00:00 2001 +From 5d9676891cd5d6a9735391e8b346e75d7f6559c9 Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Tue, 28 Apr 2026 10:57:29 +0000 -Subject: [PATCH 366/467] FROMLIST: dts: riscv: spacemit: correct 32k clock +Subject: [RUYI PATCH] FROMLIST: dts: riscv: spacemit: correct 32k clock frequency The 32k oscillator's clock frequency is actually 32768Hz, so correct it. diff --git a/SPECS/linux-lts-kmhv2/0367-FROMLIST-ASoC-dt-bindings-add-SpacemiT-K3-SoC-compat.patch b/SPECS/linux-lts-kmhv2/0367-FROMLIST-ASoC-dt-bindings-add-SpacemiT-K3-SoC-compat.patch index e142c9f76a..ae80025a53 100644 --- a/SPECS/linux-lts-kmhv2/0367-FROMLIST-ASoC-dt-bindings-add-SpacemiT-K3-SoC-compat.patch +++ b/SPECS/linux-lts-kmhv2/0367-FROMLIST-ASoC-dt-bindings-add-SpacemiT-K3-SoC-compat.patch @@ -1,7 +1,7 @@ -From d0fad1ec15d004a802d36b225277a28831021f52 Mon Sep 17 00:00:00 2001 +From 50c5274eb867073ad2b53bef51e6d9d19aa9ac2a Mon Sep 17 00:00:00 2001 From: Troy Mitchell Date: Thu, 7 May 2026 15:33:09 +0800 -Subject: [PATCH 367/467] FROMLIST: ASoC: dt-bindings: add SpacemiT K3 SoC +Subject: [RUYI PATCH] FROMLIST: ASoC: dt-bindings: add SpacemiT K3 SoC compatible Add the spacemit,k3-i2s compatible string for the K3 SoC I2S diff --git a/SPECS/linux-lts-kmhv2/0368-FROMLIST-ASoC-spacemit-add-K3-SoC-support-with-addit.patch b/SPECS/linux-lts-kmhv2/0368-FROMLIST-ASoC-spacemit-add-K3-SoC-support-with-addit.patch index 872f1859cf..f0c06195d2 100644 --- a/SPECS/linux-lts-kmhv2/0368-FROMLIST-ASoC-spacemit-add-K3-SoC-support-with-addit.patch +++ b/SPECS/linux-lts-kmhv2/0368-FROMLIST-ASoC-spacemit-add-K3-SoC-support-with-addit.patch @@ -1,7 +1,7 @@ -From fdabd394ccbcb3a01600534aae7a6a5b2c4adf5d Mon Sep 17 00:00:00 2001 +From ff69086b4bd33d60ba9c418d37ac92992aae8876 Mon Sep 17 00:00:00 2001 From: Troy Mitchell Date: Thu, 7 May 2026 15:33:10 +0800 -Subject: [PATCH 368/467] FROMLIST: ASoC: spacemit: add K3 SoC support with +Subject: [RUYI PATCH] FROMLIST: ASoC: spacemit: add K3 SoC support with additional clocks Add support for the SpacemiT K3 SoC I2S controller, which shares the diff --git a/SPECS/linux-lts-kmhv2/0369-FROMLIST-ASoC-soc-dai-add-shared-BCLK-clock-for-cros.patch b/SPECS/linux-lts-kmhv2/0369-FROMLIST-ASoC-soc-dai-add-shared-BCLK-clock-for-cros.patch index 0fc85b0aa1..7eaa0d4690 100644 --- a/SPECS/linux-lts-kmhv2/0369-FROMLIST-ASoC-soc-dai-add-shared-BCLK-clock-for-cros.patch +++ b/SPECS/linux-lts-kmhv2/0369-FROMLIST-ASoC-soc-dai-add-shared-BCLK-clock-for-cros.patch @@ -1,7 +1,7 @@ -From 71e5ec3830b135ac33f67234ab3560e96b244d65 Mon Sep 17 00:00:00 2001 +From 0151c24b6a7cffec1479bc57a27443328f1d2fef Mon Sep 17 00:00:00 2001 From: Troy Mitchell Date: Thu, 7 May 2026 18:31:42 +0800 -Subject: [PATCH 369/467] FROMLIST: ASoC: soc-dai: add shared BCLK clock for +Subject: [RUYI PATCH] FROMLIST: ASoC: soc-dai: add shared BCLK clock for cross-DAI rate constraints Add a bclk field to struct snd_soc_dai and a helper function diff --git a/SPECS/linux-lts-kmhv2/0370-FROMLIST-ASoC-soc-pcm-constrain-hw_params-when-DAIs-.patch b/SPECS/linux-lts-kmhv2/0370-FROMLIST-ASoC-soc-pcm-constrain-hw_params-when-DAIs-.patch index 8633e3a2c1..b2112c73cc 100644 --- a/SPECS/linux-lts-kmhv2/0370-FROMLIST-ASoC-soc-pcm-constrain-hw_params-when-DAIs-.patch +++ b/SPECS/linux-lts-kmhv2/0370-FROMLIST-ASoC-soc-pcm-constrain-hw_params-when-DAIs-.patch @@ -1,8 +1,8 @@ -From eafa7c60eb86e4ce51877b8dedcc634a13188bcf Mon Sep 17 00:00:00 2001 +From 811d7e0186f2cec4b5ebbd7506439ef84e15a0ff Mon Sep 17 00:00:00 2001 From: Troy Mitchell Date: Thu, 7 May 2026 18:31:43 +0800 -Subject: [PATCH 370/467] FROMLIST: ASoC: soc-pcm: constrain hw_params when - DAIs share the same BCLK +Subject: [RUYI PATCH] FROMLIST: ASoC: soc-pcm: constrain hw_params when DAIs + share the same BCLK When multiple CPU DAIs on the same sound card share the same physical BCLK, add a hw_rule during PCM open that constrains the sample rate so diff --git a/SPECS/linux-lts-kmhv2/0371-FROMLIST-ASoC-spacemit-declare-shared-BCLK-for-cross.patch b/SPECS/linux-lts-kmhv2/0371-FROMLIST-ASoC-spacemit-declare-shared-BCLK-for-cross.patch index df88e6dc93..ff936b2c7c 100644 --- a/SPECS/linux-lts-kmhv2/0371-FROMLIST-ASoC-spacemit-declare-shared-BCLK-for-cross.patch +++ b/SPECS/linux-lts-kmhv2/0371-FROMLIST-ASoC-spacemit-declare-shared-BCLK-for-cross.patch @@ -1,7 +1,7 @@ -From 87485a6e8c2da82863181097d7d37ba1ebc90eb9 Mon Sep 17 00:00:00 2001 +From ab006e609e125b2253d6016108a7ac52e642a192 Mon Sep 17 00:00:00 2001 From: Troy Mitchell Date: Thu, 7 May 2026 18:31:44 +0800 -Subject: [PATCH 371/467] FROMLIST: ASoC: spacemit: declare shared BCLK for +Subject: [RUYI PATCH] FROMLIST: ASoC: spacemit: declare shared BCLK for cross-DAI rate constraint On SpacemiT K3, multiple I2S controllers share the same physical BCLK diff --git a/SPECS/linux-lts-kmhv2/0372-FROMLIST-spi-spacemit-add-u64-cast-to-NSEC_PER_SEC-t.patch b/SPECS/linux-lts-kmhv2/0372-FROMLIST-spi-spacemit-add-u64-cast-to-NSEC_PER_SEC-t.patch index 54669c5f23..26e3e584c6 100644 --- a/SPECS/linux-lts-kmhv2/0372-FROMLIST-spi-spacemit-add-u64-cast-to-NSEC_PER_SEC-t.patch +++ b/SPECS/linux-lts-kmhv2/0372-FROMLIST-spi-spacemit-add-u64-cast-to-NSEC_PER_SEC-t.patch @@ -1,8 +1,8 @@ -From ff1bd9de50fd99b0b63391ed7079a66e92f5fb02 Mon Sep 17 00:00:00 2001 +From fd1098639a4174a54cfc40a6fe40bbcb9569aee6 Mon Sep 17 00:00:00 2001 From: Guodong Xu Date: Tue, 5 May 2026 09:53:34 -0400 -Subject: [PATCH 372/467] FROMLIST: spi: spacemit: add u64 cast to NSEC_PER_SEC - to avoid 32-bit overflow +Subject: [RUYI PATCH] FROMLIST: spi: spacemit: add u64 cast to NSEC_PER_SEC to + avoid 32-bit overflow NSEC_PER_SEC expands to the long constant 1000000000L, so NSEC_PER_SEC * BITS_PER_BYTE (8 * 10^9) overflows on 32-bit-long architectures diff --git a/SPECS/linux-lts-kmhv2/0373-FROMLIST-dt-bindings-clock-thead-add-TH1520-MISC-sub.patch b/SPECS/linux-lts-kmhv2/0373-FROMLIST-dt-bindings-clock-thead-add-TH1520-MISC-sub.patch index 06e80d2111..1ec5840379 100644 --- a/SPECS/linux-lts-kmhv2/0373-FROMLIST-dt-bindings-clock-thead-add-TH1520-MISC-sub.patch +++ b/SPECS/linux-lts-kmhv2/0373-FROMLIST-dt-bindings-clock-thead-add-TH1520-MISC-sub.patch @@ -1,7 +1,7 @@ -From eb891952a841254f3564aa2b534dd235469daaa5 Mon Sep 17 00:00:00 2001 +From 70157c501907a5cde732fdf89f3f458d3aba2959 Mon Sep 17 00:00:00 2001 From: Icenowy Zheng Date: Thu, 7 May 2026 16:16:59 +0800 -Subject: [PATCH 373/467] FROMLIST: dt-bindings: clock: thead: add TH1520 MISC +Subject: [RUYI PATCH] FROMLIST: dt-bindings: clock: thead: add TH1520 MISC subsys clock controller TH1520 has a subsystem clock controller called MISC_SUBSYS in its diff --git a/SPECS/linux-lts-kmhv2/0374-FROMLIST-clk-thead-th1520-ap-add-support-for-MISC-su.patch b/SPECS/linux-lts-kmhv2/0374-FROMLIST-clk-thead-th1520-ap-add-support-for-MISC-su.patch index 381e497d96..4e7272cafb 100644 --- a/SPECS/linux-lts-kmhv2/0374-FROMLIST-clk-thead-th1520-ap-add-support-for-MISC-su.patch +++ b/SPECS/linux-lts-kmhv2/0374-FROMLIST-clk-thead-th1520-ap-add-support-for-MISC-su.patch @@ -1,7 +1,7 @@ -From beef94a59a428c2ee10412cd8414e2f4022aa76c Mon Sep 17 00:00:00 2001 +From ff7baa8d99b3acfa161a96f9d572688e8fbfb14f Mon Sep 17 00:00:00 2001 From: Icenowy Zheng Date: Thu, 7 May 2026 16:17:00 +0800 -Subject: [PATCH 374/467] FROMLIST: clk: thead: th1520-ap: add support for MISC +Subject: [RUYI PATCH] FROMLIST: clk: thead: th1520-ap: add support for MISC subsys clocks The TH1520 SoC contains a MISC_SUBSYS clock controller, which allows diff --git a/SPECS/linux-lts-kmhv2/0375-FROMLIST-riscv-dts-thead-add-device-tree-node-for-MI.patch b/SPECS/linux-lts-kmhv2/0375-FROMLIST-riscv-dts-thead-add-device-tree-node-for-MI.patch index dc3399e4cb..5712f59936 100644 --- a/SPECS/linux-lts-kmhv2/0375-FROMLIST-riscv-dts-thead-add-device-tree-node-for-MI.patch +++ b/SPECS/linux-lts-kmhv2/0375-FROMLIST-riscv-dts-thead-add-device-tree-node-for-MI.patch @@ -1,7 +1,7 @@ -From 225dd81ab8f245421e354bac14e6182025c41df1 Mon Sep 17 00:00:00 2001 +From 25858e77df3fb64d1db8a210aa513630aa172761 Mon Sep 17 00:00:00 2001 From: Icenowy Zheng Date: Thu, 7 May 2026 16:17:01 +0800 -Subject: [PATCH 375/467] FROMLIST: riscv: dts: thead: add device tree node for +Subject: [RUYI PATCH] FROMLIST: riscv: dts: thead: add device tree node for MISC clock controller The MISC_SUBSYS clock controller on TH1520 SoC is a clock controller diff --git a/SPECS/linux-lts-kmhv2/0376-FROMLIST-dt-bindings-phy-add-binding-for-T-Head-TH15.patch b/SPECS/linux-lts-kmhv2/0376-FROMLIST-dt-bindings-phy-add-binding-for-T-Head-TH15.patch index b7ae4ae866..d6fc48cce2 100644 --- a/SPECS/linux-lts-kmhv2/0376-FROMLIST-dt-bindings-phy-add-binding-for-T-Head-TH15.patch +++ b/SPECS/linux-lts-kmhv2/0376-FROMLIST-dt-bindings-phy-add-binding-for-T-Head-TH15.patch @@ -1,7 +1,7 @@ -From 1f883f8b2aaf90f81e9cc3e07c5d07d624331025 Mon Sep 17 00:00:00 2001 +From bf1bce6b58599f811e5d960528b05a56606c6198 Mon Sep 17 00:00:00 2001 From: Icenowy Zheng Date: Thu, 7 May 2026 16:17:02 +0800 -Subject: [PATCH 376/467] FROMLIST: dt-bindings: phy: add binding for T-Head +Subject: [RUYI PATCH] FROMLIST: dt-bindings: phy: add binding for T-Head TH1520 USB PHY The TH1520 SoC features a Synopsys USB 3.0 FemtoPHY with some custom diff --git a/SPECS/linux-lts-kmhv2/0377-FROMLIST-phy-add-a-driver-for-T-Head-TH1520-USB-PHY.patch b/SPECS/linux-lts-kmhv2/0377-FROMLIST-phy-add-a-driver-for-T-Head-TH1520-USB-PHY.patch index 08e62a086f..f37bec7b80 100644 --- a/SPECS/linux-lts-kmhv2/0377-FROMLIST-phy-add-a-driver-for-T-Head-TH1520-USB-PHY.patch +++ b/SPECS/linux-lts-kmhv2/0377-FROMLIST-phy-add-a-driver-for-T-Head-TH1520-USB-PHY.patch @@ -1,7 +1,7 @@ -From dcb5013bc09740ec69367c77d4a4947ec96f20ed Mon Sep 17 00:00:00 2001 +From 6836defb3d09054866bd4165ee60f3bcd6135b07 Mon Sep 17 00:00:00 2001 From: Icenowy Zheng Date: Thu, 7 May 2026 16:17:03 +0800 -Subject: [PATCH 377/467] FROMLIST: phy: add a driver for T-Head TH1520 USB PHY +Subject: [RUYI PATCH] FROMLIST: phy: add a driver for T-Head TH1520 USB PHY The USB PHY on T-Head TH1520 SoC is a Synopsys USB 3.0 FemtoPHY, with some PHY parameters exported as another system controller along with it. diff --git a/SPECS/linux-lts-kmhv2/0378-FROMLIST-riscv-dts-thead-add-device-nodes-for-USB.patch b/SPECS/linux-lts-kmhv2/0378-FROMLIST-riscv-dts-thead-add-device-nodes-for-USB.patch index ce28cb8915..01b5e27c73 100644 --- a/SPECS/linux-lts-kmhv2/0378-FROMLIST-riscv-dts-thead-add-device-nodes-for-USB.patch +++ b/SPECS/linux-lts-kmhv2/0378-FROMLIST-riscv-dts-thead-add-device-nodes-for-USB.patch @@ -1,7 +1,7 @@ -From 762073e75c3906c685bc8388091a72f59d6e33f5 Mon Sep 17 00:00:00 2001 +From 2be6de531146e3cb05e762c17c5d087a15b3ad2d Mon Sep 17 00:00:00 2001 From: Icenowy Zheng Date: Thu, 7 May 2026 16:17:04 +0800 -Subject: [PATCH 378/467] FROMLIST: riscv: dts: thead: add device nodes for USB +Subject: [RUYI PATCH] FROMLIST: riscv: dts: thead: add device nodes for USB The TH1520 SoC contains a Synopsys DesignWare Cores SuperSpeed USB3.0 Dual Role Device controller in addition to a USB2+USB3 combo PHY based diff --git a/SPECS/linux-lts-kmhv2/0379-FROMLIST-dt-bindings-gpio-dwapb-allow-GPIO-hogs.patch b/SPECS/linux-lts-kmhv2/0379-FROMLIST-dt-bindings-gpio-dwapb-allow-GPIO-hogs.patch index 42750a360c..bd9aea764d 100644 --- a/SPECS/linux-lts-kmhv2/0379-FROMLIST-dt-bindings-gpio-dwapb-allow-GPIO-hogs.patch +++ b/SPECS/linux-lts-kmhv2/0379-FROMLIST-dt-bindings-gpio-dwapb-allow-GPIO-hogs.patch @@ -1,7 +1,7 @@ -From 1ecd168027599967fe95397ece7faa754e5f5e39 Mon Sep 17 00:00:00 2001 +From b2708e5bb25843313bbb63f5c6417d756f0ce5e0 Mon Sep 17 00:00:00 2001 From: Icenowy Zheng Date: Thu, 7 May 2026 16:17:05 +0800 -Subject: [PATCH 379/467] FROMLIST: dt-bindings: gpio: dwapb: allow GPIO hogs +Subject: [RUYI PATCH] FROMLIST: dt-bindings: gpio: dwapb: allow GPIO hogs GPIO hogs are described in the gpio.txt binding as automatic default GPIO configuration items. diff --git a/SPECS/linux-lts-kmhv2/0380-FROMLIST-dt-bindings-usb-vialab-vl817-allow-ports-pr.patch b/SPECS/linux-lts-kmhv2/0380-FROMLIST-dt-bindings-usb-vialab-vl817-allow-ports-pr.patch index a57fbf8f5b..00f4949ecd 100644 --- a/SPECS/linux-lts-kmhv2/0380-FROMLIST-dt-bindings-usb-vialab-vl817-allow-ports-pr.patch +++ b/SPECS/linux-lts-kmhv2/0380-FROMLIST-dt-bindings-usb-vialab-vl817-allow-ports-pr.patch @@ -1,7 +1,7 @@ -From 49426bc2f4eec81986cedeb4485276ce9681a724 Mon Sep 17 00:00:00 2001 +From d114c66e2f27fb7d5c538f14399ab98ce4960f83 Mon Sep 17 00:00:00 2001 From: Icenowy Zheng Date: Thu, 7 May 2026 16:17:06 +0800 -Subject: [PATCH 380/467] FROMLIST: dt-bindings: usb: vialab,vl817: allow ports +Subject: [RUYI PATCH] FROMLIST: dt-bindings: usb: vialab,vl817: allow ports property As a USB hub device, VL817 can surely be connected to external USB diff --git a/SPECS/linux-lts-kmhv2/0381-FROMLIST-riscv-dts-thead-lpi4a-sort-nodes.patch b/SPECS/linux-lts-kmhv2/0381-FROMLIST-riscv-dts-thead-lpi4a-sort-nodes.patch index d00e626d15..16cdfd9cbf 100644 --- a/SPECS/linux-lts-kmhv2/0381-FROMLIST-riscv-dts-thead-lpi4a-sort-nodes.patch +++ b/SPECS/linux-lts-kmhv2/0381-FROMLIST-riscv-dts-thead-lpi4a-sort-nodes.patch @@ -1,7 +1,7 @@ -From 6dcc9b3c4294c90622f68260717fcf8f07891f3b Mon Sep 17 00:00:00 2001 +From f92fde63364be52d61f1457466f5b1697b0e9b09 Mon Sep 17 00:00:00 2001 From: Icenowy Zheng Date: Thu, 7 May 2026 16:17:07 +0800 -Subject: [PATCH 381/467] FROMLIST: riscv: dts: thead: lpi4a: sort nodes +Subject: [RUYI PATCH] FROMLIST: riscv: dts: thead: lpi4a: sort nodes Although "D" and "H" are earlier in the alphabet than "P", the DPU and HDMI nodes were added after PADCTRL node in the Lichee Pi 4A device tree. diff --git a/SPECS/linux-lts-kmhv2/0382-FROMLIST-riscv-dts-thead-Add-TH1520-I2C-nodes.patch b/SPECS/linux-lts-kmhv2/0382-FROMLIST-riscv-dts-thead-Add-TH1520-I2C-nodes.patch index e9b32dab3d..e70fcfd352 100644 --- a/SPECS/linux-lts-kmhv2/0382-FROMLIST-riscv-dts-thead-Add-TH1520-I2C-nodes.patch +++ b/SPECS/linux-lts-kmhv2/0382-FROMLIST-riscv-dts-thead-Add-TH1520-I2C-nodes.patch @@ -1,7 +1,7 @@ -From 9ce853f956a1bebf43c4053c02a67914c6fd8b50 Mon Sep 17 00:00:00 2001 +From 235225ebc673fe3cf62d79eb1936fb0ef9b3aa52 Mon Sep 17 00:00:00 2001 From: Thomas Bonnefille Date: Thu, 7 May 2026 16:17:08 +0800 -Subject: [PATCH 382/467] FROMLIST: riscv: dts: thead: Add TH1520 I2C nodes +Subject: [RUYI PATCH] FROMLIST: riscv: dts: thead: Add TH1520 I2C nodes Add nodes for the six I2C on the T-Head TH1520 RISCV SoC. diff --git a/SPECS/linux-lts-kmhv2/0383-FROMLIST-riscv-dts-thead-Add-Lichee-Pi-4A-IO-expansi.patch b/SPECS/linux-lts-kmhv2/0383-FROMLIST-riscv-dts-thead-Add-Lichee-Pi-4A-IO-expansi.patch index 5c45f4179f..6905dfac60 100644 --- a/SPECS/linux-lts-kmhv2/0383-FROMLIST-riscv-dts-thead-Add-Lichee-Pi-4A-IO-expansi.patch +++ b/SPECS/linux-lts-kmhv2/0383-FROMLIST-riscv-dts-thead-Add-Lichee-Pi-4A-IO-expansi.patch @@ -1,7 +1,7 @@ -From b4e786b2f0c59be9a66614adc05dff50460e5292 Mon Sep 17 00:00:00 2001 +From e7621614a1d93b84b3994cc4e147e2f5f24e8b8c Mon Sep 17 00:00:00 2001 From: Emil Renner Berthing Date: Thu, 7 May 2026 16:17:09 +0800 -Subject: [PATCH 383/467] FROMLIST: riscv: dts: thead: Add Lichee Pi 4A IO +Subject: [RUYI PATCH] FROMLIST: riscv: dts: thead: Add Lichee Pi 4A IO expansions Lichee Pi 4A has 3 I2C IO expansion chips onboard, connected to the diff --git a/SPECS/linux-lts-kmhv2/0384-FROMLIST-riscv-dts-thead-enable-USB3-ports-on-Lichee.patch b/SPECS/linux-lts-kmhv2/0384-FROMLIST-riscv-dts-thead-enable-USB3-ports-on-Lichee.patch index 5fc96a0c1d..f1e49e1290 100644 --- a/SPECS/linux-lts-kmhv2/0384-FROMLIST-riscv-dts-thead-enable-USB3-ports-on-Lichee.patch +++ b/SPECS/linux-lts-kmhv2/0384-FROMLIST-riscv-dts-thead-enable-USB3-ports-on-Lichee.patch @@ -1,8 +1,8 @@ -From e65c217e4f180a09599dcf963d7917ca8f2dce56 Mon Sep 17 00:00:00 2001 +From 0b1e399727d5ebc0f998864161be37205403f479 Mon Sep 17 00:00:00 2001 From: Icenowy Zheng Date: Thu, 7 May 2026 16:17:10 +0800 -Subject: [PATCH 384/467] FROMLIST: riscv: dts: thead: enable USB3 ports on - Lichee Pi 4A +Subject: [RUYI PATCH] FROMLIST: riscv: dts: thead: enable USB3 ports on Lichee + Pi 4A The Lichee Pi 4A board features an onboard VIA VL817 hub connected to the SoC's USB3 as upstream and 4 USB-3.0-capable Type-A ports as diff --git a/SPECS/linux-lts-kmhv2/0385-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-add-PMIC-a.patch b/SPECS/linux-lts-kmhv2/0385-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-add-PMIC-a.patch index c128317cc7..9a32cb3ce3 100644 --- a/SPECS/linux-lts-kmhv2/0385-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-add-PMIC-a.patch +++ b/SPECS/linux-lts-kmhv2/0385-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-add-PMIC-a.patch @@ -1,8 +1,8 @@ -From 74fce4ca0259a2fb6f07e9a9db0da7a4b6d187ad Mon Sep 17 00:00:00 2001 +From 52e6648f05a98b5daa57d14ffbc7a8f17e0a2e70 Mon Sep 17 00:00:00 2001 From: Andre Heider Date: Mon, 11 May 2026 13:11:08 +0200 -Subject: [PATCH 385/467] FROMLIST: riscv: dts: spacemit: k1-musepi-pro: add - PMIC and power infrastructure +Subject: [RUYI PATCH] FROMLIST: riscv: dts: spacemit: k1-musepi-pro: add PMIC + and power infrastructure Enable i2c8 and add the connected SpacemiT P1 PMIC with its related regulators for the board's power infrastructure and voltage regulation support. diff --git a/SPECS/linux-lts-kmhv2/0386-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-add-24c04-.patch b/SPECS/linux-lts-kmhv2/0386-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-add-24c04-.patch index 7c213bac42..27c61ac393 100644 --- a/SPECS/linux-lts-kmhv2/0386-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-add-24c04-.patch +++ b/SPECS/linux-lts-kmhv2/0386-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-add-24c04-.patch @@ -1,8 +1,8 @@ -From 46e98f453443e84d2c39d1a192493f63035cb983 Mon Sep 17 00:00:00 2001 +From 766c66afb264021498a9385a2332b05c2ab32653 Mon Sep 17 00:00:00 2001 From: Andre Heider Date: Mon, 11 May 2026 13:11:09 +0200 -Subject: [PATCH 386/467] FROMLIST: riscv: dts: spacemit: k1-musepi-pro: add - 24c04 eeprom +Subject: [RUYI PATCH] FROMLIST: riscv: dts: spacemit: k1-musepi-pro: add 24c04 + eeprom Enable i2c2 and add the connected 24c04 EEPROM. diff --git a/SPECS/linux-lts-kmhv2/0387-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-enable-QSP.patch b/SPECS/linux-lts-kmhv2/0387-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-enable-QSP.patch index 93c6f40848..bb1a850bdd 100644 --- a/SPECS/linux-lts-kmhv2/0387-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-enable-QSP.patch +++ b/SPECS/linux-lts-kmhv2/0387-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-enable-QSP.patch @@ -1,7 +1,7 @@ -From 75a37f9d516eb90b20c532be235d4a9752fba6be Mon Sep 17 00:00:00 2001 +From c117a7fcd7c10d4f8235ca033fe3b09674838cc2 Mon Sep 17 00:00:00 2001 From: Andre Heider Date: Mon, 11 May 2026 13:11:10 +0200 -Subject: [PATCH 387/467] FROMLIST: riscv: dts: spacemit: k1-musepi-pro: enable +Subject: [RUYI PATCH] FROMLIST: riscv: dts: spacemit: k1-musepi-pro: enable QSPI and add SPI NOR Add the QSPI controller node and describe the attached SPI NOR flash diff --git a/SPECS/linux-lts-kmhv2/0388-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-enable-USB.patch b/SPECS/linux-lts-kmhv2/0388-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-enable-USB.patch index aa1fefae14..e2dbb68dfc 100644 --- a/SPECS/linux-lts-kmhv2/0388-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-enable-USB.patch +++ b/SPECS/linux-lts-kmhv2/0388-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-enable-USB.patch @@ -1,7 +1,7 @@ -From 74f565b6e699c8ec0bd9138b54c7af5f73b625e3 Mon Sep 17 00:00:00 2001 +From a94156daa45213f4dfc1d6f6cc6a3f25b4e635c1 Mon Sep 17 00:00:00 2001 From: Andre Heider Date: Mon, 11 May 2026 13:11:11 +0200 -Subject: [PATCH 388/467] FROMLIST: riscv: dts: spacemit: k1-musepi-pro: enable +Subject: [RUYI PATCH] FROMLIST: riscv: dts: spacemit: k1-musepi-pro: enable USB 3 ports Enable the DWC3 USB 3.0 controller, its associated combo_phy (USB 3 PHY) diff --git a/SPECS/linux-lts-kmhv2/0389-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-enable-PCI.patch b/SPECS/linux-lts-kmhv2/0389-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-enable-PCI.patch index 4d368a61b1..23832d06b8 100644 --- a/SPECS/linux-lts-kmhv2/0389-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-enable-PCI.patch +++ b/SPECS/linux-lts-kmhv2/0389-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-enable-PCI.patch @@ -1,7 +1,7 @@ -From b2f775e8f1fe4ec525455361eadc7df47250a44b Mon Sep 17 00:00:00 2001 +From 349e55f2df85d45315a64261930482121af299e5 Mon Sep 17 00:00:00 2001 From: Andre Heider Date: Mon, 11 May 2026 13:11:12 +0200 -Subject: [PATCH 389/467] FROMLIST: riscv: dts: spacemit: k1-musepi-pro: enable +Subject: [RUYI PATCH] FROMLIST: riscv: dts: spacemit: k1-musepi-pro: enable PCIe ports Enable the two PCIe controller along with and their associated PHYs. They diff --git a/SPECS/linux-lts-kmhv2/0390-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-set-defaul.patch b/SPECS/linux-lts-kmhv2/0390-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-set-defaul.patch index ee53b03556..2a721e03c5 100644 --- a/SPECS/linux-lts-kmhv2/0390-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-set-defaul.patch +++ b/SPECS/linux-lts-kmhv2/0390-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-set-defaul.patch @@ -1,7 +1,7 @@ -From d3e09b27f344f7b9353cf66a5884e1eaa20cc2d9 Mon Sep 17 00:00:00 2001 +From 9a43c78660975e06c30cbaf943e981dd50feee99 Mon Sep 17 00:00:00 2001 From: Andre Heider Date: Mon, 11 May 2026 13:11:13 +0200 -Subject: [PATCH 390/467] FROMLIST: riscv: dts: spacemit: k1-musepi-pro: set +Subject: [RUYI PATCH] FROMLIST: riscv: dts: spacemit: k1-musepi-pro: set default console baud rate Allow serial output with the same uboot/opensbi settings so the diff --git a/SPECS/linux-lts-kmhv2/0391-FROMLIST-riscv-dts-spacemit-k3-Add-pwm-support.patch b/SPECS/linux-lts-kmhv2/0391-FROMLIST-riscv-dts-spacemit-k3-Add-pwm-support.patch index 5e1bb550cd..e480697ecf 100644 --- a/SPECS/linux-lts-kmhv2/0391-FROMLIST-riscv-dts-spacemit-k3-Add-pwm-support.patch +++ b/SPECS/linux-lts-kmhv2/0391-FROMLIST-riscv-dts-spacemit-k3-Add-pwm-support.patch @@ -1,7 +1,7 @@ -From 17640c2f952d4636e28f6c91c28cad7c0cbcfeb5 Mon Sep 17 00:00:00 2001 +From 19e0459a70fb9e1c62f2eb097e72e73136997ccd Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Thu, 21 May 2026 00:24:41 +0000 -Subject: [PATCH 391/467] FROMLIST: riscv: dts: spacemit: k3: Add pwm support +Subject: [RUYI PATCH] FROMLIST: riscv: dts: spacemit: k3: Add pwm support Populate all pwm device tree nodes for SpacemiT K3 SoC, also documents the pinctrl info which would easily help to enable them in future. diff --git a/SPECS/linux-lts-kmhv2/0392-FROMLIST-riscv-use-sysfs_emit-in-cpu_show_ghostwrite.patch b/SPECS/linux-lts-kmhv2/0392-FROMLIST-riscv-use-sysfs_emit-in-cpu_show_ghostwrite.patch index ded1d721e2..dfea8b63a1 100644 --- a/SPECS/linux-lts-kmhv2/0392-FROMLIST-riscv-use-sysfs_emit-in-cpu_show_ghostwrite.patch +++ b/SPECS/linux-lts-kmhv2/0392-FROMLIST-riscv-use-sysfs_emit-in-cpu_show_ghostwrite.patch @@ -1,8 +1,7 @@ -From 8a3c697d67f26e7001badacbe651347af98734fc Mon Sep 17 00:00:00 2001 +From 990e07e7b25d9ad6863585a17875fd32e9b194ed Mon Sep 17 00:00:00 2001 From: Thorsten Blum Date: Sun, 10 May 2026 18:54:21 +0200 -Subject: [PATCH 392/467] FROMLIST: riscv: use sysfs_emit in - cpu_show_ghostwrite +Subject: [RUYI PATCH] FROMLIST: riscv: use sysfs_emit in cpu_show_ghostwrite Replace sprintf() with sysfs_emit() in cpu_show_ghostwrite(), which is preferred for formatting sysfs output because it provides safer bounds diff --git a/SPECS/linux-lts-kmhv2/0393-FROMLIST-clk-spacemit-k3-Switch-to-pll2_d6-as-parent.patch b/SPECS/linux-lts-kmhv2/0393-FROMLIST-clk-spacemit-k3-Switch-to-pll2_d6-as-parent.patch index 0f04216c5b..61c699fb6b 100644 --- a/SPECS/linux-lts-kmhv2/0393-FROMLIST-clk-spacemit-k3-Switch-to-pll2_d6-as-parent.patch +++ b/SPECS/linux-lts-kmhv2/0393-FROMLIST-clk-spacemit-k3-Switch-to-pll2_d6-as-parent.patch @@ -1,8 +1,8 @@ -From 5a543b79cba1602b35c7bf4c272f6c1082403ec9 Mon Sep 17 00:00:00 2001 +From 5feeaceeac1d83b0bc4b52a476972edb0633b9b1 Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Mon, 11 May 2026 02:59:09 +0000 -Subject: [PATCH 393/467] FROMLIST: clk: spacemit: k3: Switch to pll2_d6 as - parent for PCIe clock +Subject: [RUYI PATCH] FROMLIST: clk: spacemit: k3: Switch to pll2_d6 as parent + for PCIe clock According to SpacemiT updated docs, the PCIe master and slave clock's parent is the pll2_d6 clock, so fix it. diff --git a/SPECS/linux-lts-kmhv2/0394-FROMLIST-clk-spacemit-k3-Fix-PCIe-clock-register-off.patch b/SPECS/linux-lts-kmhv2/0394-FROMLIST-clk-spacemit-k3-Fix-PCIe-clock-register-off.patch index 1709d97c4d..cec142274b 100644 --- a/SPECS/linux-lts-kmhv2/0394-FROMLIST-clk-spacemit-k3-Fix-PCIe-clock-register-off.patch +++ b/SPECS/linux-lts-kmhv2/0394-FROMLIST-clk-spacemit-k3-Fix-PCIe-clock-register-off.patch @@ -1,7 +1,7 @@ -From e8eb8752ce8b21f83609892d2702ada2791d6878 Mon Sep 17 00:00:00 2001 +From e7889702a01dfeefc13f75527701150067033d27 Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Mon, 11 May 2026 02:59:10 +0000 -Subject: [PATCH 394/467] FROMLIST: clk: spacemit: k3: Fix PCIe clock register +Subject: [RUYI PATCH] FROMLIST: clk: spacemit: k3: Fix PCIe clock register offset The offset of PCIe Clock CTRL register for port B and C controller was diff --git a/SPECS/linux-lts-kmhv2/0395-FROMLIST-dt-bindings-soc-spacemit-k3-Add-PCIe-DBI-cl.patch b/SPECS/linux-lts-kmhv2/0395-FROMLIST-dt-bindings-soc-spacemit-k3-Add-PCIe-DBI-cl.patch index 40b18595f7..8c7de819c6 100644 --- a/SPECS/linux-lts-kmhv2/0395-FROMLIST-dt-bindings-soc-spacemit-k3-Add-PCIe-DBI-cl.patch +++ b/SPECS/linux-lts-kmhv2/0395-FROMLIST-dt-bindings-soc-spacemit-k3-Add-PCIe-DBI-cl.patch @@ -1,8 +1,8 @@ -From 71cbe41aa3e3af9d8f5d8e6ecd78f702cebb6de4 Mon Sep 17 00:00:00 2001 +From 81e7dee63c57fbbbf525e3b3e475ac4463f4be56 Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Mon, 11 May 2026 02:59:11 +0000 -Subject: [PATCH 395/467] FROMLIST: dt-bindings: soc: spacemit: k3: Add PCIe - DBI clock IDs +Subject: [RUYI PATCH] FROMLIST: dt-bindings: soc: spacemit: k3: Add PCIe DBI + clock IDs Add clock IDs of PCIe DBI (Data Bus Interface) clock. diff --git a/SPECS/linux-lts-kmhv2/0396-FROMLIST-clk-spacemit-k3-Add-PCIe-DBI-clock.patch b/SPECS/linux-lts-kmhv2/0396-FROMLIST-clk-spacemit-k3-Add-PCIe-DBI-clock.patch index 77b2c6bba2..b1757a1b9e 100644 --- a/SPECS/linux-lts-kmhv2/0396-FROMLIST-clk-spacemit-k3-Add-PCIe-DBI-clock.patch +++ b/SPECS/linux-lts-kmhv2/0396-FROMLIST-clk-spacemit-k3-Add-PCIe-DBI-clock.patch @@ -1,7 +1,7 @@ -From f93186e43511bbaed54be71b65d9a4479244fd07 Mon Sep 17 00:00:00 2001 +From 2e07351b454e444fdff46836d26d0ca8f0f1d241 Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Mon, 11 May 2026 02:59:12 +0000 -Subject: [PATCH 396/467] FROMLIST: clk: spacemit: k3: Add PCIe DBI clock +Subject: [RUYI PATCH] FROMLIST: clk: spacemit: k3: Add PCIe DBI clock Add PCIe DBI (Data Bus Interface) clock which was missing, This will support PCIe driver to explicitly request and enable all clocks that diff --git a/SPECS/linux-lts-kmhv2/0397-FROMLIST-riscv-dts-spacemit-enable-eMMC-for-OrangePi.patch b/SPECS/linux-lts-kmhv2/0397-FROMLIST-riscv-dts-spacemit-enable-eMMC-for-OrangePi.patch index 498e072354..3c8f831c46 100644 --- a/SPECS/linux-lts-kmhv2/0397-FROMLIST-riscv-dts-spacemit-enable-eMMC-for-OrangePi.patch +++ b/SPECS/linux-lts-kmhv2/0397-FROMLIST-riscv-dts-spacemit-enable-eMMC-for-OrangePi.patch @@ -1,8 +1,8 @@ -From 6ff2a06cb85f689598ffa5ccd38fc8fe6b494f5f Mon Sep 17 00:00:00 2001 +From 1e42639469619e69ed0fe533281513ebbf8fb45f Mon Sep 17 00:00:00 2001 From: Chukun Pan Date: Sat, 9 May 2026 18:00:00 +0800 -Subject: [PATCH 397/467] FROMLIST: riscv: dts: spacemit: enable eMMC for - OrangePi RV2 +Subject: [RUYI PATCH] FROMLIST: riscv: dts: spacemit: enable eMMC for OrangePi + RV2 The OrangePi RV2 board has one eMMC slot, so enable eMMC. Tested using a 16 GiB AJTD4R eMMC module. diff --git a/SPECS/linux-lts-kmhv2/0398-FROMLIST-i2c-spacemit-configure-ILCR-IWCR-for-accura.patch b/SPECS/linux-lts-kmhv2/0398-FROMLIST-i2c-spacemit-configure-ILCR-IWCR-for-accura.patch index e24ba9833d..f786ba93a4 100644 --- a/SPECS/linux-lts-kmhv2/0398-FROMLIST-i2c-spacemit-configure-ILCR-IWCR-for-accura.patch +++ b/SPECS/linux-lts-kmhv2/0398-FROMLIST-i2c-spacemit-configure-ILCR-IWCR-for-accura.patch @@ -1,7 +1,7 @@ -From 1dffaef4daca33ae971decf2ae555fde6d43ccd1 Mon Sep 17 00:00:00 2001 +From 952ad4c278b4a099d4fbcabc3b23304339f3277a Mon Sep 17 00:00:00 2001 From: Troy Mitchell Date: Fri, 8 May 2026 15:25:24 +0800 -Subject: [PATCH 398/467] FROMLIST: i2c: spacemit: configure ILCR/IWCR for +Subject: [RUYI PATCH] FROMLIST: i2c: spacemit: configure ILCR/IWCR for accurate SCL frequency The SpacemiT I2C controller's SCL (Serial Clock Line) frequency for diff --git a/SPECS/linux-lts-kmhv2/0399-FROMLIST-i2c-spacemit-drop-warning-when-clock-freque.patch b/SPECS/linux-lts-kmhv2/0399-FROMLIST-i2c-spacemit-drop-warning-when-clock-freque.patch index ca4e9fec31..7e3a638bb7 100644 --- a/SPECS/linux-lts-kmhv2/0399-FROMLIST-i2c-spacemit-drop-warning-when-clock-freque.patch +++ b/SPECS/linux-lts-kmhv2/0399-FROMLIST-i2c-spacemit-drop-warning-when-clock-freque.patch @@ -1,7 +1,7 @@ -From dbd9d83cae62b43735c4ed79553380f3d33cf666 Mon Sep 17 00:00:00 2001 +From 362a9bc03d8080d38e5ea64ba2c39884e945e945 Mon Sep 17 00:00:00 2001 From: Troy Mitchell Date: Fri, 8 May 2026 15:25:25 +0800 -Subject: [PATCH 399/467] FROMLIST: i2c: spacemit: drop warning when +Subject: [RUYI PATCH] FROMLIST: i2c: spacemit: drop warning when clock-frequency property is absent The clock-frequency property is optional according to the DT binding. diff --git a/SPECS/linux-lts-kmhv2/0400-FROMLIST-dt-bindings-mmc-spacemit-sdhci-add-pinctrl-.patch b/SPECS/linux-lts-kmhv2/0400-FROMLIST-dt-bindings-mmc-spacemit-sdhci-add-pinctrl-.patch index 62f24cc91b..837fc9207b 100644 --- a/SPECS/linux-lts-kmhv2/0400-FROMLIST-dt-bindings-mmc-spacemit-sdhci-add-pinctrl-.patch +++ b/SPECS/linux-lts-kmhv2/0400-FROMLIST-dt-bindings-mmc-spacemit-sdhci-add-pinctrl-.patch @@ -1,8 +1,8 @@ -From d7f231111494d8c2ec36cad45aabe28d70c55167 Mon Sep 17 00:00:00 2001 +From 56ba1d8c335d661163b9d3b1d870a9e07dd575cc Mon Sep 17 00:00:00 2001 From: Iker Pedrosa Date: Mon, 11 May 2026 10:53:56 +0200 -Subject: [PATCH 400/467] FROMLIST: dt-bindings: mmc: spacemit,sdhci: add - pinctrl support for voltage switching +Subject: [RUYI PATCH] FROMLIST: dt-bindings: mmc: spacemit,sdhci: add pinctrl + support for voltage switching Document pinctrl properties to support voltage-dependent pin configuration switching for UHS-I SD card modes. diff --git a/SPECS/linux-lts-kmhv2/0401-FROMLIST-mmc-sdhci-of-k1-enable-essential-clock-infr.patch b/SPECS/linux-lts-kmhv2/0401-FROMLIST-mmc-sdhci-of-k1-enable-essential-clock-infr.patch index f52dc6e418..5583dc6077 100644 --- a/SPECS/linux-lts-kmhv2/0401-FROMLIST-mmc-sdhci-of-k1-enable-essential-clock-infr.patch +++ b/SPECS/linux-lts-kmhv2/0401-FROMLIST-mmc-sdhci-of-k1-enable-essential-clock-infr.patch @@ -1,7 +1,7 @@ -From 59062924d61974dd50fb52db1a6267bdd0e9caa5 Mon Sep 17 00:00:00 2001 +From a164c67f524d96eea999938772b0e7664cf8432d Mon Sep 17 00:00:00 2001 From: Iker Pedrosa Date: Mon, 11 May 2026 10:53:57 +0200 -Subject: [PATCH 401/467] FROMLIST: mmc: sdhci-of-k1: enable essential clock +Subject: [RUYI PATCH] FROMLIST: mmc: sdhci-of-k1: enable essential clock infrastructure for SD operation Ensure SD card pins receive clock signals by enabling pad clock diff --git a/SPECS/linux-lts-kmhv2/0402-FROMLIST-mmc-sdhci-of-k1-add-regulator-and-pinctrl-v.patch b/SPECS/linux-lts-kmhv2/0402-FROMLIST-mmc-sdhci-of-k1-add-regulator-and-pinctrl-v.patch index 98058cb5ec..d77d4b7d8e 100644 --- a/SPECS/linux-lts-kmhv2/0402-FROMLIST-mmc-sdhci-of-k1-add-regulator-and-pinctrl-v.patch +++ b/SPECS/linux-lts-kmhv2/0402-FROMLIST-mmc-sdhci-of-k1-add-regulator-and-pinctrl-v.patch @@ -1,7 +1,7 @@ -From 6bff1487d38af8eca2467da0d9f7b7e22ef8941d Mon Sep 17 00:00:00 2001 +From 7104b26621a3b8b7a0f213f846d4e94f40cbd6ef Mon Sep 17 00:00:00 2001 From: Iker Pedrosa Date: Mon, 11 May 2026 10:53:58 +0200 -Subject: [PATCH 402/467] FROMLIST: mmc: sdhci-of-k1: add regulator and pinctrl +Subject: [RUYI PATCH] FROMLIST: mmc: sdhci-of-k1: add regulator and pinctrl voltage switching support Add voltage switching infrastructure for UHS-I modes by integrating both diff --git a/SPECS/linux-lts-kmhv2/0403-FROMLIST-mmc-sdhci-of-k1-add-comprehensive-SDR-tunin.patch b/SPECS/linux-lts-kmhv2/0403-FROMLIST-mmc-sdhci-of-k1-add-comprehensive-SDR-tunin.patch index 763c405e53..a431dd69fd 100644 --- a/SPECS/linux-lts-kmhv2/0403-FROMLIST-mmc-sdhci-of-k1-add-comprehensive-SDR-tunin.patch +++ b/SPECS/linux-lts-kmhv2/0403-FROMLIST-mmc-sdhci-of-k1-add-comprehensive-SDR-tunin.patch @@ -1,8 +1,8 @@ -From 7a0c2f9d8bc3d427aff7d62359f74e8a21ecb98f Mon Sep 17 00:00:00 2001 +From 88c16045a194f9da4ac3d1e41104c2bc67bef52f Mon Sep 17 00:00:00 2001 From: Iker Pedrosa Date: Mon, 11 May 2026 10:53:59 +0200 -Subject: [PATCH 403/467] FROMLIST: mmc: sdhci-of-k1: add comprehensive SDR - tuning support +Subject: [RUYI PATCH] FROMLIST: mmc: sdhci-of-k1: add comprehensive SDR tuning + support MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit diff --git a/SPECS/linux-lts-kmhv2/0404-FROMLIST-riscv-dts-spacemit-k1-add-SD-card-controlle.patch b/SPECS/linux-lts-kmhv2/0404-FROMLIST-riscv-dts-spacemit-k1-add-SD-card-controlle.patch index 0efaca8eaf..acee11c137 100644 --- a/SPECS/linux-lts-kmhv2/0404-FROMLIST-riscv-dts-spacemit-k1-add-SD-card-controlle.patch +++ b/SPECS/linux-lts-kmhv2/0404-FROMLIST-riscv-dts-spacemit-k1-add-SD-card-controlle.patch @@ -1,7 +1,7 @@ -From 81aae30b2ea47630a098bc16822c4b8ce486f96b Mon Sep 17 00:00:00 2001 +From c7ea3695cea289291e871b1d5ee24585b4b969ad Mon Sep 17 00:00:00 2001 From: Iker Pedrosa Date: Fri, 15 May 2026 12:48:59 +0200 -Subject: [PATCH 404/467] FROMLIST: riscv: dts: spacemit: k1: add SD card +Subject: [RUYI PATCH] FROMLIST: riscv: dts: spacemit: k1: add SD card controller and pinctrl support Add SD card controller infrastructure for SpacemiT K1 SoC with complete diff --git a/SPECS/linux-lts-kmhv2/0405-FROMLIST-riscv-dts-spacemit-k1-orangepi-rv2-add-SD-c.patch b/SPECS/linux-lts-kmhv2/0405-FROMLIST-riscv-dts-spacemit-k1-orangepi-rv2-add-SD-c.patch index fb0555d636..ba6141397e 100644 --- a/SPECS/linux-lts-kmhv2/0405-FROMLIST-riscv-dts-spacemit-k1-orangepi-rv2-add-SD-c.patch +++ b/SPECS/linux-lts-kmhv2/0405-FROMLIST-riscv-dts-spacemit-k1-orangepi-rv2-add-SD-c.patch @@ -1,8 +1,8 @@ -From 0d69badbae2aa8cfd8dceca3cf87987d79f9a61e Mon Sep 17 00:00:00 2001 +From 43968e62edda768281d634a038212b96befc49e5 Mon Sep 17 00:00:00 2001 From: Iker Pedrosa Date: Fri, 15 May 2026 12:49:00 +0200 -Subject: [PATCH 405/467] FROMLIST: riscv: dts: spacemit: k1-orangepi-rv2: add - SD card support with UHS modes +Subject: [RUYI PATCH] FROMLIST: riscv: dts: spacemit: k1-orangepi-rv2: add SD + card support with UHS modes Add complete SD card controller support with UHS high-speed modes. diff --git a/SPECS/linux-lts-kmhv2/0406-FROMLIST-riscv-dts-spacemit-k1-bananapi-f3-add-SD-ca.patch b/SPECS/linux-lts-kmhv2/0406-FROMLIST-riscv-dts-spacemit-k1-bananapi-f3-add-SD-ca.patch index 76ff2fbb1d..5173364a60 100644 --- a/SPECS/linux-lts-kmhv2/0406-FROMLIST-riscv-dts-spacemit-k1-bananapi-f3-add-SD-ca.patch +++ b/SPECS/linux-lts-kmhv2/0406-FROMLIST-riscv-dts-spacemit-k1-bananapi-f3-add-SD-ca.patch @@ -1,8 +1,8 @@ -From f2d8d59f6d99fa77ef4d8ba4fd987daeff28eab5 Mon Sep 17 00:00:00 2001 +From 139e0716fdfe2ce733d52f88221f1b6727235cf7 Mon Sep 17 00:00:00 2001 From: Iker Pedrosa Date: Fri, 15 May 2026 12:49:01 +0200 -Subject: [PATCH 406/467] FROMLIST: riscv: dts: spacemit: k1-bananapi-f3: add - SD card support with UHS modes +Subject: [RUYI PATCH] FROMLIST: riscv: dts: spacemit: k1-bananapi-f3: add SD + card support with UHS modes Add complete SD card controller support with UHS high-speed modes. diff --git a/SPECS/linux-lts-kmhv2/0407-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-add-SD-car.patch b/SPECS/linux-lts-kmhv2/0407-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-add-SD-car.patch index 998c64454d..fc44499a76 100644 --- a/SPECS/linux-lts-kmhv2/0407-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-add-SD-car.patch +++ b/SPECS/linux-lts-kmhv2/0407-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-add-SD-car.patch @@ -1,7 +1,7 @@ -From f96189263aef32389c97389eb3235827e96b5a5d Mon Sep 17 00:00:00 2001 +From 25997e10bcbb4842cd8f7f69db1754a807b4515b Mon Sep 17 00:00:00 2001 From: Trevor Gamblin Date: Fri, 15 May 2026 12:49:02 +0200 -Subject: [PATCH 407/467] FROMLIST: riscv: dts: spacemit: k1-musepi-pro: add SD +Subject: [RUYI PATCH] FROMLIST: riscv: dts: spacemit: k1-musepi-pro: add SD card support with UHS modes Update the Muse Pi Pro devicetree with SD card support to match what diff --git a/SPECS/linux-lts-kmhv2/0408-FROMLIST-riscv-dts-thead-Enable-wifi-on-the-BeagleV-.patch b/SPECS/linux-lts-kmhv2/0408-FROMLIST-riscv-dts-thead-Enable-wifi-on-the-BeagleV-.patch index 4a176d39a7..5f154ddf37 100644 --- a/SPECS/linux-lts-kmhv2/0408-FROMLIST-riscv-dts-thead-Enable-wifi-on-the-BeagleV-.patch +++ b/SPECS/linux-lts-kmhv2/0408-FROMLIST-riscv-dts-thead-Enable-wifi-on-the-BeagleV-.patch @@ -1,7 +1,7 @@ -From a366a6ddd2d146abfc8ac12c6d57701a94a7c725 Mon Sep 17 00:00:00 2001 +From 30f59c0f689a00390e4183a7b58ec3108d1d55a8 Mon Sep 17 00:00:00 2001 From: Thomas Gerner Date: Thu, 14 May 2026 20:32:01 +0200 -Subject: [PATCH 408/467] FROMLIST: riscv: dts: thead: Enable wifi on the +Subject: [RUYI PATCH] FROMLIST: riscv: dts: thead: Enable wifi on the BeagleV-Ahead The BeagleV-Ahead board uses an AP6203BM WiFi chip from AMPAK Technology diff --git a/SPECS/linux-lts-kmhv2/0409-FROMLIST-riscv-module-Use-generic-cmp_int-instead-of.patch b/SPECS/linux-lts-kmhv2/0409-FROMLIST-riscv-module-Use-generic-cmp_int-instead-of.patch index 52300d9fdd..d8e8c34faf 100644 --- a/SPECS/linux-lts-kmhv2/0409-FROMLIST-riscv-module-Use-generic-cmp_int-instead-of.patch +++ b/SPECS/linux-lts-kmhv2/0409-FROMLIST-riscv-module-Use-generic-cmp_int-instead-of.patch @@ -1,8 +1,8 @@ -From 5eb58bc515879ba41b74f3e37a8bdc20196e4ed0 Mon Sep 17 00:00:00 2001 +From d02e702da21996ccb557b91e5cb594f6c76e0025 Mon Sep 17 00:00:00 2001 From: Florian Schmaus Date: Tue, 12 May 2026 08:32:31 +0200 -Subject: [PATCH 409/467] FROMLIST: riscv: module: Use generic cmp_int() - instead of custom cmp_3way() +Subject: [RUYI PATCH] FROMLIST: riscv: module: Use generic cmp_int() instead + of custom cmp_3way() The module-sections.c file defines a custom cmp_3way() macro to perform 3-way comparisons during relocation sorting. diff --git a/SPECS/linux-lts-kmhv2/0410-FROMLIST-riscv-propagate-insert_resource-result-from.patch b/SPECS/linux-lts-kmhv2/0410-FROMLIST-riscv-propagate-insert_resource-result-from.patch index 78445b0fd9..616724be18 100644 --- a/SPECS/linux-lts-kmhv2/0410-FROMLIST-riscv-propagate-insert_resource-result-from.patch +++ b/SPECS/linux-lts-kmhv2/0410-FROMLIST-riscv-propagate-insert_resource-result-from.patch @@ -1,8 +1,8 @@ -From 2cba62c648b6d8eaad866c02dec48f863e787414 Mon Sep 17 00:00:00 2001 +From 41705cbe35101c7de961fb93f3c0d01b4f424bd3 Mon Sep 17 00:00:00 2001 From: Thorsten Blum Date: Tue, 12 May 2026 19:20:35 +0200 -Subject: [PATCH 410/467] FROMLIST: riscv: propagate insert_resource result - from add_resource +Subject: [RUYI PATCH] FROMLIST: riscv: propagate insert_resource result from + add_resource Currently, add_resource() returns 1 on success, even though its callers only check for negative values. Instead, propagate the insert_resource() diff --git a/SPECS/linux-lts-kmhv2/0411-FROMLIST-PCI-spacemit-k1-Add-device-data-support.patch b/SPECS/linux-lts-kmhv2/0411-FROMLIST-PCI-spacemit-k1-Add-device-data-support.patch index 43182331d6..d8ae0df53d 100644 --- a/SPECS/linux-lts-kmhv2/0411-FROMLIST-PCI-spacemit-k1-Add-device-data-support.patch +++ b/SPECS/linux-lts-kmhv2/0411-FROMLIST-PCI-spacemit-k1-Add-device-data-support.patch @@ -1,7 +1,7 @@ -From 42583ca7d256f65f3ea896a2719f5e5a76a3ab57 Mon Sep 17 00:00:00 2001 +From a380dc5ba876575445cbffdd6abae226725a9fce Mon Sep 17 00:00:00 2001 From: Inochi Amaoto Date: Sun, 17 May 2026 09:48:36 +0800 -Subject: [PATCH 411/467] FROMLIST: PCI: spacemit-k1: Add device data support +Subject: [RUYI PATCH] FROMLIST: PCI: spacemit-k1: Add device data support To reuse the K1 PCIe driver logic for K3 PCIe controller, add device data to handle the K1 specific logic and make room for the incoming diff --git a/SPECS/linux-lts-kmhv2/0412-FROMLIST-PCI-spacemit-k1-Add-multiple-PHY-handles-su.patch b/SPECS/linux-lts-kmhv2/0412-FROMLIST-PCI-spacemit-k1-Add-multiple-PHY-handles-su.patch index c7cc73fe1f..b4cf2fd137 100644 --- a/SPECS/linux-lts-kmhv2/0412-FROMLIST-PCI-spacemit-k1-Add-multiple-PHY-handles-su.patch +++ b/SPECS/linux-lts-kmhv2/0412-FROMLIST-PCI-spacemit-k1-Add-multiple-PHY-handles-su.patch @@ -1,7 +1,7 @@ -From 641cdd56986dd7dd9d5ffec8b4a316e528313390 Mon Sep 17 00:00:00 2001 +From 291d83131cb1a80661bf10272be1b0aab99fb39d Mon Sep 17 00:00:00 2001 From: Inochi Amaoto Date: Sun, 17 May 2026 09:48:37 +0800 -Subject: [PATCH 412/467] FROMLIST: PCI: spacemit-k1: Add multiple PHY handles +Subject: [RUYI PATCH] FROMLIST: PCI: spacemit-k1: Add multiple PHY handles support The PCIe controller on Spacemit K3 may use multiple PHYs at the diff --git a/SPECS/linux-lts-kmhv2/0413-FROMLIST-dt-bindings-PCI-snps-dw-pcie-Add-msi-parent.patch b/SPECS/linux-lts-kmhv2/0413-FROMLIST-dt-bindings-PCI-snps-dw-pcie-Add-msi-parent.patch index e8c8226d5d..d0085e05ec 100644 --- a/SPECS/linux-lts-kmhv2/0413-FROMLIST-dt-bindings-PCI-snps-dw-pcie-Add-msi-parent.patch +++ b/SPECS/linux-lts-kmhv2/0413-FROMLIST-dt-bindings-PCI-snps-dw-pcie-Add-msi-parent.patch @@ -1,8 +1,8 @@ -From ff7b3a40f58430d7040609bb6beb23f080eb3bec Mon Sep 17 00:00:00 2001 +From e1caa735029246df2abdcf416ccc274ca3ff53d5 Mon Sep 17 00:00:00 2001 From: Inochi Amaoto Date: Sun, 17 May 2026 09:48:38 +0800 -Subject: [PATCH 413/467] FROMLIST: dt-bindings: PCI: snps,dw-pcie: Add - msi-parent for MSI handle check +Subject: [RUYI PATCH] FROMLIST: dt-bindings: PCI: snps,dw-pcie: Add msi-parent + for MSI handle check The IMSIC device on RISC-V based system does not require ID remapping for MSI. So this device only needs "msi-parent" diff --git a/SPECS/linux-lts-kmhv2/0414-FROMLIST-dt-bindings-PCI-spacemit-Introduce-Spacemit.patch b/SPECS/linux-lts-kmhv2/0414-FROMLIST-dt-bindings-PCI-spacemit-Introduce-Spacemit.patch index a9f880b0b2..ce7568b3bb 100644 --- a/SPECS/linux-lts-kmhv2/0414-FROMLIST-dt-bindings-PCI-spacemit-Introduce-Spacemit.patch +++ b/SPECS/linux-lts-kmhv2/0414-FROMLIST-dt-bindings-PCI-spacemit-Introduce-Spacemit.patch @@ -1,8 +1,8 @@ -From b71db7acd338b565ebfa25fdafffccc306c3f667 Mon Sep 17 00:00:00 2001 +From f9aab33c4cd724380b176901c11e9b2d5dbe7b6f Mon Sep 17 00:00:00 2001 From: Inochi Amaoto Date: Sun, 17 May 2026 09:48:39 +0800 -Subject: [PATCH 414/467] FROMLIST: dt-bindings: PCI: spacemit: Introduce - Spacemit K3 PCIe host controller +Subject: [RUYI PATCH] FROMLIST: dt-bindings: PCI: spacemit: Introduce Spacemit + K3 PCIe host controller Add binding support for the PCIe controller on the SpacemiT K3 SoC. This controller is almost a standard Synopsys DesignWare PCIe IP, diff --git a/SPECS/linux-lts-kmhv2/0415-FROMLIST-PCI-spacemit-k1-Add-Spacemit-K3-PCIe-host-c.patch b/SPECS/linux-lts-kmhv2/0415-FROMLIST-PCI-spacemit-k1-Add-Spacemit-K3-PCIe-host-c.patch index 94610a7b9a..66e63181b2 100644 --- a/SPECS/linux-lts-kmhv2/0415-FROMLIST-PCI-spacemit-k1-Add-Spacemit-K3-PCIe-host-c.patch +++ b/SPECS/linux-lts-kmhv2/0415-FROMLIST-PCI-spacemit-k1-Add-Spacemit-K3-PCIe-host-c.patch @@ -1,7 +1,7 @@ -From 099bfd3e55205ace595ca828ce5afae419eefaf7 Mon Sep 17 00:00:00 2001 +From 28a3c6b229dbe4b76f568ab83a3d0405809c7f1b Mon Sep 17 00:00:00 2001 From: Inochi Amaoto Date: Sun, 17 May 2026 09:48:40 +0800 -Subject: [PATCH 415/467] FROMLIST: PCI: spacemit-k1: Add Spacemit K3 PCIe host +Subject: [RUYI PATCH] FROMLIST: PCI: spacemit-k1: Add Spacemit K3 PCIe host controller support The PCIe controller on Spacemit K3 is almost a standard Synopsys diff --git a/SPECS/linux-lts-kmhv2/0416-FROMLIST-riscv-dts-spacemit-enable-QSPI-for-OrangePi.patch b/SPECS/linux-lts-kmhv2/0416-FROMLIST-riscv-dts-spacemit-enable-QSPI-for-OrangePi.patch index 416a37403f..80bd621ef2 100644 --- a/SPECS/linux-lts-kmhv2/0416-FROMLIST-riscv-dts-spacemit-enable-QSPI-for-OrangePi.patch +++ b/SPECS/linux-lts-kmhv2/0416-FROMLIST-riscv-dts-spacemit-enable-QSPI-for-OrangePi.patch @@ -1,8 +1,8 @@ -From 2d3f6de67eb533903d80677a6a462979c87143b9 Mon Sep 17 00:00:00 2001 +From e933fb1426b50978196a70b05655d5cb7a3bcb76 Mon Sep 17 00:00:00 2001 From: Chukun Pan Date: Sat, 16 May 2026 16:00:30 +0800 -Subject: [PATCH 416/467] FROMLIST: riscv: dts: spacemit: enable QSPI for - OrangePi RV2 +Subject: [RUYI PATCH] FROMLIST: riscv: dts: spacemit: enable QSPI for OrangePi + RV2 Enable the QSPI controller and the XM25QU128C SPI NOR flash on the OrangePi RV2 board. Add a flash partition layout from vendor UBoot. diff --git a/SPECS/linux-lts-kmhv2/0417-FROMLIST-clk-spacemit-k3-fix-USB2-bus-clock.patch b/SPECS/linux-lts-kmhv2/0417-FROMLIST-clk-spacemit-k3-fix-USB2-bus-clock.patch index c6980ac2dd..7ce6604711 100644 --- a/SPECS/linux-lts-kmhv2/0417-FROMLIST-clk-spacemit-k3-fix-USB2-bus-clock.patch +++ b/SPECS/linux-lts-kmhv2/0417-FROMLIST-clk-spacemit-k3-fix-USB2-bus-clock.patch @@ -1,7 +1,7 @@ -From c77834df77a830ed52e78558f67b5e02fa4379f9 Mon Sep 17 00:00:00 2001 +From 9ffbd34c853c426d82f3daf0bb7512fc1b08d611 Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Mon, 18 May 2026 02:58:36 +0000 -Subject: [PATCH 417/467] FROMLIST: clk: spacemit: k3: fix USB2 bus clock +Subject: [RUYI PATCH] FROMLIST: clk: spacemit: k3: fix USB2 bus clock According to SpacemiT K3's updated docs, the USB2 ahb reset and USB2 bus clock enable bit was wrongly swapped, the correct one should be: diff --git a/SPECS/linux-lts-kmhv2/0418-FROMLIST-reset-spacemit-k3-fix-USB2-ahb-reset.patch b/SPECS/linux-lts-kmhv2/0418-FROMLIST-reset-spacemit-k3-fix-USB2-ahb-reset.patch index 350548f91c..ef6c5cfcb2 100644 --- a/SPECS/linux-lts-kmhv2/0418-FROMLIST-reset-spacemit-k3-fix-USB2-ahb-reset.patch +++ b/SPECS/linux-lts-kmhv2/0418-FROMLIST-reset-spacemit-k3-fix-USB2-ahb-reset.patch @@ -1,7 +1,7 @@ -From a9788cf9dae7cfe18b553bd1ae42afe7ef003b45 Mon Sep 17 00:00:00 2001 +From d420aa127fcbe63635453a4103d4d013e9027703 Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Mon, 18 May 2026 02:58:37 +0000 -Subject: [PATCH 418/467] FROMLIST: reset: spacemit: k3: fix USB2 ahb reset +Subject: [RUYI PATCH] FROMLIST: reset: spacemit: k3: fix USB2 ahb reset According to SpacemiT K3's updated docs, the USB2 ahb reset and USB2 bus clock enable bit was wrongly swapped, the correct one should be: diff --git a/SPECS/linux-lts-kmhv2/0419-FROMLIST-dts-riscv-spacemit-k3-Fix-I-O-power-setting.patch b/SPECS/linux-lts-kmhv2/0419-FROMLIST-dts-riscv-spacemit-k3-Fix-I-O-power-setting.patch index 48fdd3cc67..05b9ee6eb7 100644 --- a/SPECS/linux-lts-kmhv2/0419-FROMLIST-dts-riscv-spacemit-k3-Fix-I-O-power-setting.patch +++ b/SPECS/linux-lts-kmhv2/0419-FROMLIST-dts-riscv-spacemit-k3-Fix-I-O-power-setting.patch @@ -1,7 +1,7 @@ -From 4224b1f1d490ae209fbb371252179c523d1733f9 Mon Sep 17 00:00:00 2001 +From cf3c64c0e469dac06db3606b299ff2b6be12345c Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Mon, 18 May 2026 20:58:16 +0000 -Subject: [PATCH 419/467] FROMLIST: dts: riscv: spacemit: k3: Fix I/O power +Subject: [RUYI PATCH] FROMLIST: dts: riscv: spacemit: k3: Fix I/O power settings SpacemiT K3 SoC support dual-voltage I/O power domain, while initially diff --git a/SPECS/linux-lts-kmhv2/0420-FROMLIST-riscv-dts-spacemit-set-console-baud-rate-on.patch b/SPECS/linux-lts-kmhv2/0420-FROMLIST-riscv-dts-spacemit-set-console-baud-rate-on.patch index 65aa7a68b9..5640477b61 100644 --- a/SPECS/linux-lts-kmhv2/0420-FROMLIST-riscv-dts-spacemit-set-console-baud-rate-on.patch +++ b/SPECS/linux-lts-kmhv2/0420-FROMLIST-riscv-dts-spacemit-set-console-baud-rate-on.patch @@ -1,8 +1,8 @@ -From ad3f20a31772c6ad7ebc8fa7c75029764a774a46 Mon Sep 17 00:00:00 2001 +From 24e92b2f714ec09b1217533e18d18a7a1416d52f Mon Sep 17 00:00:00 2001 From: Aurelien Jarno Date: Tue, 19 May 2026 06:12:35 +0200 -Subject: [PATCH 420/467] FROMLIST: riscv: dts: spacemit: set console baud rate - on Milk-V Jupiter +Subject: [RUYI PATCH] FROMLIST: riscv: dts: spacemit: set console baud rate on + Milk-V Jupiter Because the default console's baud rate is not set, defconfig kernels do not have any serial output on this platform. Set the baud rate to diff --git a/SPECS/linux-lts-kmhv2/0421-FROMLIST-riscv-dts-spacemit-sort-aliases-on-Milk-V-J.patch b/SPECS/linux-lts-kmhv2/0421-FROMLIST-riscv-dts-spacemit-sort-aliases-on-Milk-V-J.patch index 6e6cedf534..f35dbf7a0b 100644 --- a/SPECS/linux-lts-kmhv2/0421-FROMLIST-riscv-dts-spacemit-sort-aliases-on-Milk-V-J.patch +++ b/SPECS/linux-lts-kmhv2/0421-FROMLIST-riscv-dts-spacemit-sort-aliases-on-Milk-V-J.patch @@ -1,8 +1,8 @@ -From 430637bb4afb74146c8c8829d0da513b6bd4c91e Mon Sep 17 00:00:00 2001 +From 8422624a96d6035950f1902cc537f1e7d2a4c281 Mon Sep 17 00:00:00 2001 From: Aurelien Jarno Date: Tue, 19 May 2026 06:12:36 +0200 -Subject: [PATCH 421/467] FROMLIST: riscv: dts: spacemit: sort aliases on - Milk-V Jupiter +Subject: [RUYI PATCH] FROMLIST: riscv: dts: spacemit: sort aliases on Milk-V + Jupiter Before adding more aliases, just sort them. diff --git a/SPECS/linux-lts-kmhv2/0422-FROMLIST-riscv-dts-spacemit-enable-eMMC-on-Milk-V-Ju.patch b/SPECS/linux-lts-kmhv2/0422-FROMLIST-riscv-dts-spacemit-enable-eMMC-on-Milk-V-Ju.patch index 2dba11e059..ebf0663617 100644 --- a/SPECS/linux-lts-kmhv2/0422-FROMLIST-riscv-dts-spacemit-enable-eMMC-on-Milk-V-Ju.patch +++ b/SPECS/linux-lts-kmhv2/0422-FROMLIST-riscv-dts-spacemit-enable-eMMC-on-Milk-V-Ju.patch @@ -1,7 +1,7 @@ -From 5128b77b7248e5ff6e789388a31e1d4980db9625 Mon Sep 17 00:00:00 2001 +From 72311926929a84047a95c07cdcaf0f7211764d88 Mon Sep 17 00:00:00 2001 From: Aurelien Jarno Date: Tue, 19 May 2026 06:12:37 +0200 -Subject: [PATCH 422/467] FROMLIST: riscv: dts: spacemit: enable eMMC on Milk-V +Subject: [RUYI PATCH] FROMLIST: riscv: dts: spacemit: enable eMMC on Milk-V Jupiter The Milk-V Jupiter board has a connector for an eMMC module. Add an diff --git a/SPECS/linux-lts-kmhv2/0423-FROMLIST-riscv-dts-spacemit-enable-SD-card-support-o.patch b/SPECS/linux-lts-kmhv2/0423-FROMLIST-riscv-dts-spacemit-enable-SD-card-support-o.patch index 8563b02bad..7b0fee89d3 100644 --- a/SPECS/linux-lts-kmhv2/0423-FROMLIST-riscv-dts-spacemit-enable-SD-card-support-o.patch +++ b/SPECS/linux-lts-kmhv2/0423-FROMLIST-riscv-dts-spacemit-enable-SD-card-support-o.patch @@ -1,8 +1,8 @@ -From e4c393d2cacfe99846fc5b646d0e38cbe35f4d0b Mon Sep 17 00:00:00 2001 +From 629f9f3c4e0f9cca344b52a02ceedd2e91ab9756 Mon Sep 17 00:00:00 2001 From: Aurelien Jarno Date: Tue, 19 May 2026 06:12:38 +0200 -Subject: [PATCH 423/467] FROMLIST: riscv: dts: spacemit: enable SD card - support on Milk-V Jupiter +Subject: [RUYI PATCH] FROMLIST: riscv: dts: spacemit: enable SD card support + on Milk-V Jupiter Add complete SD card controller support with UHS high-speed modes. diff --git a/SPECS/linux-lts-kmhv2/0424-FROMLIST-riscv-dts-spacemit-fix-uboot-partition-offs.patch b/SPECS/linux-lts-kmhv2/0424-FROMLIST-riscv-dts-spacemit-fix-uboot-partition-offs.patch index b8e8229208..c52a677920 100644 --- a/SPECS/linux-lts-kmhv2/0424-FROMLIST-riscv-dts-spacemit-fix-uboot-partition-offs.patch +++ b/SPECS/linux-lts-kmhv2/0424-FROMLIST-riscv-dts-spacemit-fix-uboot-partition-offs.patch @@ -1,7 +1,7 @@ -From 9b3916fc9b9300620706c675eef564914105dc63 Mon Sep 17 00:00:00 2001 +From 396d9a81ca85057f4a8bc7ad711b684dcffafb06 Mon Sep 17 00:00:00 2001 From: Aurelien Jarno Date: Tue, 19 May 2026 06:12:39 +0200 -Subject: [PATCH 424/467] FROMLIST: riscv: dts: spacemit: fix uboot partition +Subject: [RUYI PATCH] FROMLIST: riscv: dts: spacemit: fix uboot partition offset on Milk-V Jupiter Correct the uboot partition node name to match its actual offset. diff --git a/SPECS/linux-lts-kmhv2/0425-FROMLIST-riscv-dts-spacemit-add-QSPI-support-for-K3-.patch b/SPECS/linux-lts-kmhv2/0425-FROMLIST-riscv-dts-spacemit-add-QSPI-support-for-K3-.patch index 67c3e016f4..3cee4760cd 100644 --- a/SPECS/linux-lts-kmhv2/0425-FROMLIST-riscv-dts-spacemit-add-QSPI-support-for-K3-.patch +++ b/SPECS/linux-lts-kmhv2/0425-FROMLIST-riscv-dts-spacemit-add-QSPI-support-for-K3-.patch @@ -1,8 +1,8 @@ -From 79d41f5abc296c99b6a3b3418eb3600e2082a9e3 Mon Sep 17 00:00:00 2001 +From 98c6ddea13512cec403705f0e1898daa262466b1 Mon Sep 17 00:00:00 2001 From: Zhengyu He Date: Thu, 21 May 2026 22:44:46 +0800 -Subject: [PATCH 425/467] FROMLIST: riscv: dts: spacemit: add QSPI support for - K3 Pico-ITX +Subject: [RUYI PATCH] FROMLIST: riscv: dts: spacemit: add QSPI support for K3 + Pico-ITX Add K3 QSPI controller node into k3.dtsi, and add related pinmux configuration. diff --git a/SPECS/linux-lts-kmhv2/0426-FROMLIST-pinctrl-spacemit-fix-NULL-check-in-spacemit.patch b/SPECS/linux-lts-kmhv2/0426-FROMLIST-pinctrl-spacemit-fix-NULL-check-in-spacemit.patch index e4ca4afdfc..2df47fbbeb 100644 --- a/SPECS/linux-lts-kmhv2/0426-FROMLIST-pinctrl-spacemit-fix-NULL-check-in-spacemit.patch +++ b/SPECS/linux-lts-kmhv2/0426-FROMLIST-pinctrl-spacemit-fix-NULL-check-in-spacemit.patch @@ -1,7 +1,7 @@ -From f8132c56be19ef8420d61eee66dc7352ecdd3ded Mon Sep 17 00:00:00 2001 +From 4188a3bf42259d212c5d61101e694a2dc05e3dd4 Mon Sep 17 00:00:00 2001 From: Han Gao Date: Wed, 20 May 2026 00:40:07 +0800 -Subject: [PATCH 426/467] FROMLIST: pinctrl: spacemit: fix NULL check in +Subject: [RUYI PATCH] FROMLIST: pinctrl: spacemit: fix NULL check in spacemit_pin_set_config spacemit_pin_set_config() looks up the per-pin descriptor with diff --git a/SPECS/linux-lts-kmhv2/0427-FROMLIST-riscv-unconditionally-select-ARCH_KEEP_MEMB.patch b/SPECS/linux-lts-kmhv2/0427-FROMLIST-riscv-unconditionally-select-ARCH_KEEP_MEMB.patch index 02c7c4c58f..950680a506 100644 --- a/SPECS/linux-lts-kmhv2/0427-FROMLIST-riscv-unconditionally-select-ARCH_KEEP_MEMB.patch +++ b/SPECS/linux-lts-kmhv2/0427-FROMLIST-riscv-unconditionally-select-ARCH_KEEP_MEMB.patch @@ -1,7 +1,7 @@ -From 9255f275eddde413b57b043618f6838db76a010c Mon Sep 17 00:00:00 2001 +From 2e0cced73e82d39a2fd99776f4972c20778cd27b Mon Sep 17 00:00:00 2001 From: Han Gao Date: Wed, 20 May 2026 00:55:46 +0800 -Subject: [PATCH 427/467] FROMLIST: riscv: unconditionally select +Subject: [RUYI PATCH] FROMLIST: riscv: unconditionally select ARCH_KEEP_MEMBLOCK Select ARCH_KEEP_MEMBLOCK unconditionally. kexec requires memblock diff --git a/SPECS/linux-lts-kmhv2/0428-FROMLIST-riscv-kexec_file-Constrain-segment-placemen.patch b/SPECS/linux-lts-kmhv2/0428-FROMLIST-riscv-kexec_file-Constrain-segment-placemen.patch index 309e71bdd7..c4ff341f5d 100644 --- a/SPECS/linux-lts-kmhv2/0428-FROMLIST-riscv-kexec_file-Constrain-segment-placemen.patch +++ b/SPECS/linux-lts-kmhv2/0428-FROMLIST-riscv-kexec_file-Constrain-segment-placemen.patch @@ -1,8 +1,8 @@ -From 20deb98d0307212f2ae260f532f5c40944d5cfd4 Mon Sep 17 00:00:00 2001 +From 3c28d26c50aa548e866a1681ca068993386a91c3 Mon Sep 17 00:00:00 2001 From: Han Gao Date: Wed, 20 May 2026 01:06:41 +0800 -Subject: [PATCH 428/467] FROMLIST: riscv: kexec_file: Constrain segment - placement to direct map +Subject: [RUYI PATCH] FROMLIST: riscv: kexec_file: Constrain segment placement + to direct map When kexec_file_load places segments with buf_max=ULONG_MAX and top_down=true, they land at the highest available physical addresses. diff --git a/SPECS/linux-lts-kmhv2/0429-FROMLIST-dt-bindings-riscv-spacemit-Add-K3-CoM260-IF.patch b/SPECS/linux-lts-kmhv2/0429-FROMLIST-dt-bindings-riscv-spacemit-Add-K3-CoM260-IF.patch index 970ceb6e88..35f6ab7227 100644 --- a/SPECS/linux-lts-kmhv2/0429-FROMLIST-dt-bindings-riscv-spacemit-Add-K3-CoM260-IF.patch +++ b/SPECS/linux-lts-kmhv2/0429-FROMLIST-dt-bindings-riscv-spacemit-Add-K3-CoM260-IF.patch @@ -1,7 +1,7 @@ -From f0bf64c6e64658862d7fd2f298df04c873197db3 Mon Sep 17 00:00:00 2001 +From 66203a4e0eefa5812e80d8953dd2e958bbeaa89b Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Wed, 20 May 2026 23:45:27 +0000 -Subject: [PATCH 429/467] FROMLIST: dt-bindings: riscv: spacemit: Add K3 +Subject: [RUYI PATCH] FROMLIST: dt-bindings: riscv: spacemit: Add K3 CoM260-IFX board MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 diff --git a/SPECS/linux-lts-kmhv2/0430-FROMLIST-riscv-dts-spacemit-k3-Initial-support-for-C.patch b/SPECS/linux-lts-kmhv2/0430-FROMLIST-riscv-dts-spacemit-k3-Initial-support-for-C.patch index 2679db01b7..30fcfb32cb 100644 --- a/SPECS/linux-lts-kmhv2/0430-FROMLIST-riscv-dts-spacemit-k3-Initial-support-for-C.patch +++ b/SPECS/linux-lts-kmhv2/0430-FROMLIST-riscv-dts-spacemit-k3-Initial-support-for-C.patch @@ -1,8 +1,8 @@ -From c7390a2a3f64b04ffd7c0a83d5e8e49be1607158 Mon Sep 17 00:00:00 2001 +From 204ddf86a80e19378811ebf324fd4e8474fa0834 Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Wed, 20 May 2026 23:45:28 +0000 -Subject: [PATCH 430/467] FROMLIST: riscv: dts: spacemit: k3: Initial support - for CoM260-IFX board +Subject: [RUYI PATCH] FROMLIST: riscv: dts: spacemit: k3: Initial support for + CoM260-IFX board The K3 CoM260-IFX board combine with one 260 pins "Gold Finger" computer module with a carrier board. The module integrates the K3 SoC, LPDDR5, diff --git a/SPECS/linux-lts-kmhv2/0431-FROMLIST-riscv-dts-spacemit-enable-PMIC-on-OrangePi-.patch b/SPECS/linux-lts-kmhv2/0431-FROMLIST-riscv-dts-spacemit-enable-PMIC-on-OrangePi-.patch index e7f194e629..70f7cc89e9 100644 --- a/SPECS/linux-lts-kmhv2/0431-FROMLIST-riscv-dts-spacemit-enable-PMIC-on-OrangePi-.patch +++ b/SPECS/linux-lts-kmhv2/0431-FROMLIST-riscv-dts-spacemit-enable-PMIC-on-OrangePi-.patch @@ -1,8 +1,8 @@ -From d2737c5027f8388399e5428feeb50be212faf26b Mon Sep 17 00:00:00 2001 +From 78d249e0f67dafbf778883d6990fcb4c34638969 Mon Sep 17 00:00:00 2001 From: Chukun Pan Date: Wed, 20 May 2026 18:00:00 +0800 -Subject: [PATCH 431/467] FROMLIST: riscv: dts: spacemit: enable PMIC on - OrangePi R2S +Subject: [RUYI PATCH] FROMLIST: riscv: dts: spacemit: enable PMIC on OrangePi + R2S Enable the i2c8 interface and add the connected SpacemiT P1 PMIC and its associated regulators to support voltage regulation on the board. diff --git a/SPECS/linux-lts-kmhv2/0432-FROMLIST-riscv-dts-spacemit-set-console-baud-rate-on.patch b/SPECS/linux-lts-kmhv2/0432-FROMLIST-riscv-dts-spacemit-set-console-baud-rate-on.patch index 1717fb80dd..5e9e4db788 100644 --- a/SPECS/linux-lts-kmhv2/0432-FROMLIST-riscv-dts-spacemit-set-console-baud-rate-on.patch +++ b/SPECS/linux-lts-kmhv2/0432-FROMLIST-riscv-dts-spacemit-set-console-baud-rate-on.patch @@ -1,8 +1,8 @@ -From db15fe493d454f8d6639f751b051418ca4ffa796 Mon Sep 17 00:00:00 2001 +From 6aa02cc299f6c36d323e193ab8c1f6118e33d3f9 Mon Sep 17 00:00:00 2001 From: Jennifer Berringer Date: Wed, 20 May 2026 07:11:50 -0400 -Subject: [PATCH 432/467] FROMLIST: riscv: dts: spacemit: set console baud rate - on OrangePi RV2 +Subject: [RUYI PATCH] FROMLIST: riscv: dts: spacemit: set console baud rate on + OrangePi RV2 Set the baud rate to 115200, matching what is used by U-Boot on this platform so that the console is usable even when console options are not diff --git a/SPECS/linux-lts-kmhv2/0433-FROMLIST-riscv-mm-Call-mark_new_valid_map-after-hotp.patch b/SPECS/linux-lts-kmhv2/0433-FROMLIST-riscv-mm-Call-mark_new_valid_map-after-hotp.patch index 19747d8e29..cd9e99e6c3 100644 --- a/SPECS/linux-lts-kmhv2/0433-FROMLIST-riscv-mm-Call-mark_new_valid_map-after-hotp.patch +++ b/SPECS/linux-lts-kmhv2/0433-FROMLIST-riscv-mm-Call-mark_new_valid_map-after-hotp.patch @@ -1,7 +1,7 @@ -From e61fb83553f88a67832eb605add845486af0407c Mon Sep 17 00:00:00 2001 +From 82b7ff76828e1cb4e0a7b4cf12583f33f99e37bc Mon Sep 17 00:00:00 2001 From: Vivian Wang Date: Mon, 25 May 2026 12:23:29 +0800 -Subject: [PATCH 433/467] FROMLIST: riscv: mm: Call mark_new_valid_map() after +Subject: [RUYI PATCH] FROMLIST: riscv: mm: Call mark_new_valid_map() after hotplugging vmemmap section_activate() creates new mappings in the vmemmap range without diff --git a/SPECS/linux-lts-kmhv2/0434-FROMLIST-riscv-dts-spacemit-k3-Add-Ziccrse-extension.patch b/SPECS/linux-lts-kmhv2/0434-FROMLIST-riscv-dts-spacemit-k3-Add-Ziccrse-extension.patch new file mode 100644 index 0000000000..de078902a8 --- /dev/null +++ b/SPECS/linux-lts-kmhv2/0434-FROMLIST-riscv-dts-spacemit-k3-Add-Ziccrse-extension.patch @@ -0,0 +1,99 @@ +From 39f4f9ff2f7384331b347a162c95587733dbc042 Mon Sep 17 00:00:00 2001 +From: Guodong Xu +Date: Tue, 26 May 2026 15:22:58 -0400 +Subject: [RUYI PATCH] FROMLIST: riscv: dts: spacemit: k3: Add Ziccrse + extension for X100 cores + +Add the Ziccrse ISA extension to all eight X100 cores. Ziccrse +provides a forward progress guarantee on LR/SC sequences in main +memory regions with cacheability and coherence PMAs. + +The SpacemiT X100 core supports it per the SpacemiT K3 hardware +specification. + +Signed-off-by: Guodong Xu +Link: https://lore.kernel.org/r/20260526-k3-ziccrse-v1-1-c759792ca3a3@riscstar.com +Signed-off-by: Han Gao +--- + arch/riscv/boot/dts/spacemit/k3.dtsi | 16 ++++++++-------- + 1 file changed, 8 insertions(+), 8 deletions(-) + +diff --git a/arch/riscv/boot/dts/spacemit/k3.dtsi b/arch/riscv/boot/dts/spacemit/k3.dtsi +index 5b17612fe58e..ed046714a7ac 100644 +--- a/arch/riscv/boot/dts/spacemit/k3.dtsi ++++ b/arch/riscv/boot/dts/spacemit/k3.dtsi +@@ -36,7 +36,7 @@ cpu_0: cpu@0 { + "zawrs", "zba", "zbb", "zbc", "zbs", "zca", + "zcb", "zcd", "zcmop", "zfa", "zfbfmin", + "zfh", "zfhmin", "zicbom", "zicbop", "zicboz", +- "ziccamoa", "ziccif", "zicclsm", "zicntr", ++ "ziccamoa", "ziccif", "zicclsm", "ziccrse", "zicntr", + "zicond", "zicsr", "zifencei", "zihintntl", + "zihintpause", "zihpm", "zimop", "zkt", "zvbb", + "zvbc", "zvfbfmin", "zvfbfwma", "zvfh", +@@ -77,7 +77,7 @@ cpu_1: cpu@1 { + "zawrs", "zba", "zbb", "zbc", "zbs", "zca", + "zcb", "zcd", "zcmop", "zfa", "zfbfmin", + "zfh", "zfhmin", "zicbom", "zicbop", "zicboz", +- "ziccamoa", "ziccif", "zicclsm", "zicntr", ++ "ziccamoa", "ziccif", "zicclsm", "ziccrse", "zicntr", + "zicond", "zicsr", "zifencei", "zihintntl", + "zihintpause", "zihpm", "zimop", "zkt", "zvbb", + "zvbc", "zvfbfmin", "zvfbfwma", "zvfh", +@@ -118,7 +118,7 @@ cpu_2: cpu@2 { + "zawrs", "zba", "zbb", "zbc", "zbs", "zca", + "zcb", "zcd", "zcmop", "zfa", "zfbfmin", + "zfh", "zfhmin", "zicbom", "zicbop", "zicboz", +- "ziccamoa", "ziccif", "zicclsm", "zicntr", ++ "ziccamoa", "ziccif", "zicclsm", "ziccrse", "zicntr", + "zicond", "zicsr", "zifencei", "zihintntl", + "zihintpause", "zihpm", "zimop", "zkt", "zvbb", + "zvbc", "zvfbfmin", "zvfbfwma", "zvfh", +@@ -159,7 +159,7 @@ cpu_3: cpu@3 { + "zawrs", "zba", "zbb", "zbc", "zbs", "zca", + "zcb", "zcd", "zcmop", "zfa", "zfbfmin", + "zfh", "zfhmin", "zicbom", "zicbop", "zicboz", +- "ziccamoa", "ziccif", "zicclsm", "zicntr", ++ "ziccamoa", "ziccif", "zicclsm", "ziccrse", "zicntr", + "zicond", "zicsr", "zifencei", "zihintntl", + "zihintpause", "zihpm", "zimop", "zkt", "zvbb", + "zvbc", "zvfbfmin", "zvfbfwma", "zvfh", +@@ -200,7 +200,7 @@ cpu_4: cpu@4 { + "zawrs", "zba", "zbb", "zbc", "zbs", "zca", + "zcb", "zcd", "zcmop", "zfa", "zfbfmin", + "zfh", "zfhmin", "zicbom", "zicbop", "zicboz", +- "ziccamoa", "ziccif", "zicclsm", "zicntr", ++ "ziccamoa", "ziccif", "zicclsm", "ziccrse", "zicntr", + "zicond", "zicsr", "zifencei", "zihintntl", + "zihintpause", "zihpm", "zimop", "zkt", "zvbb", + "zvbc", "zvfbfmin", "zvfbfwma", "zvfh", +@@ -241,7 +241,7 @@ cpu_5: cpu@5 { + "zawrs", "zba", "zbb", "zbc", "zbs", "zca", + "zcb", "zcd", "zcmop", "zfa", "zfbfmin", + "zfh", "zfhmin", "zicbom", "zicbop", "zicboz", +- "ziccamoa", "ziccif", "zicclsm", "zicntr", ++ "ziccamoa", "ziccif", "zicclsm", "ziccrse", "zicntr", + "zicond", "zicsr", "zifencei", "zihintntl", + "zihintpause", "zihpm", "zimop", "zkt", "zvbb", + "zvbc", "zvfbfmin", "zvfbfwma", "zvfh", +@@ -282,7 +282,7 @@ cpu_6: cpu@6 { + "zawrs", "zba", "zbb", "zbc", "zbs", "zca", + "zcb", "zcd", "zcmop", "zfa", "zfbfmin", + "zfh", "zfhmin", "zicbom", "zicbop", "zicboz", +- "ziccamoa", "ziccif", "zicclsm", "zicntr", ++ "ziccamoa", "ziccif", "zicclsm", "ziccrse", "zicntr", + "zicond", "zicsr", "zifencei", "zihintntl", + "zihintpause", "zihpm", "zimop", "zkt", "zvbb", + "zvbc", "zvfbfmin", "zvfbfwma", "zvfh", +@@ -323,7 +323,7 @@ cpu_7: cpu@7 { + "zawrs", "zba", "zbb", "zbc", "zbs", "zca", + "zcb", "zcd", "zcmop", "zfa", "zfbfmin", + "zfh", "zfhmin", "zicbom", "zicbop", "zicboz", +- "ziccamoa", "ziccif", "zicclsm", "zicntr", ++ "ziccamoa", "ziccif", "zicclsm", "ziccrse", "zicntr", + "zicond", "zicsr", "zifencei", "zihintntl", + "zihintpause", "zihpm", "zimop", "zkt", "zvbb", + "zvbc", "zvfbfmin", "zvfbfwma", "zvfh", +-- +2.53.0 + diff --git a/SPECS/linux-lts-kmhv2/0435-FROMLIST-RISC-V-KVM-Enhance-the-logging-check-for-mm.patch b/SPECS/linux-lts-kmhv2/0435-FROMLIST-RISC-V-KVM-Enhance-the-logging-check-for-mm.patch new file mode 100644 index 0000000000..3c0a31840b --- /dev/null +++ b/SPECS/linux-lts-kmhv2/0435-FROMLIST-RISC-V-KVM-Enhance-the-logging-check-for-mm.patch @@ -0,0 +1,52 @@ +From 5bf0a7bd6d1da26628096529743d98bfd1be37e1 Mon Sep 17 00:00:00 2001 +From: Inochi Amaoto +Date: Thu, 28 May 2026 19:38:39 +0800 +Subject: [RUYI PATCH] FROMLIST: RISC-V: KVM: Enhance the logging check for mmu + mapping + +When enabling dirty ring, the dirty bitmap is disable, and the logging +check is always false as the RISC-V architecture does not select +"NEED_KVM_DIRTY_RING_WITH_BITMAP". Although the dirty log is recorded +since the write path already trying to add the dirty log, the logic for +logging check is broken and some side effect will occurs. + +Enhance the logging check for mmu mapping so it can check both the dirty +ring and the dirty bitmap. + +Signed-off-by: Inochi Amaoto +Link: https://lore.kernel.org/r/20260528113840.2629186-1-inochiama@gmail.com +Signed-off-by: Han Gao +--- + arch/riscv/kvm/mmu.c | 9 ++++----- + 1 file changed, 4 insertions(+), 5 deletions(-) + +diff --git a/arch/riscv/kvm/mmu.c b/arch/riscv/kvm/mmu.c +index 58f5f3536ffd..a0d9c113258e 100644 +--- a/arch/riscv/kvm/mmu.c ++++ b/arch/riscv/kvm/mmu.c +@@ -157,9 +157,8 @@ void kvm_arch_commit_memory_region(struct kvm *kvm, + enum kvm_mr_change change) + { + /* +- * At this point memslot has been committed and there is an +- * allocated dirty_bitmap[], dirty pages will be tracked while +- * the memory slot is write protected. ++ * At this point memslot has been committed and dirty pages will be ++ * tracked while the memory slot is write protected. + */ + if (change != KVM_MR_DELETE && new->flags & KVM_MEM_LOG_DIRTY_PAGES) + mmu_wp_memory_region(kvm, new->id); +@@ -314,8 +313,8 @@ int kvm_riscv_mmu_map(struct kvm_vcpu *vcpu, struct kvm_memory_slot *memslot, + struct vm_area_struct *vma; + struct kvm *kvm = vcpu->kvm; + struct kvm_mmu_memory_cache *pcache = &vcpu->arch.mmu_page_cache; +- bool logging = (memslot->dirty_bitmap && +- !(memslot->flags & KVM_MEM_READONLY)) ? true : false; ++ bool logging = kvm_slot_dirty_track_enabled(memslot) && ++ !(memslot->flags & KVM_MEM_READONLY); + unsigned long vma_pagesize, mmu_seq; + struct kvm_gstage gstage; + struct page *page; +-- +2.53.0 + diff --git a/SPECS/linux-lts-kmhv2/0436-FROMLIST-riscv-dts-spacemit-enable-PCIe-on-OrangePi-.patch b/SPECS/linux-lts-kmhv2/0436-FROMLIST-riscv-dts-spacemit-enable-PCIe-on-OrangePi-.patch new file mode 100644 index 0000000000..3af359443c --- /dev/null +++ b/SPECS/linux-lts-kmhv2/0436-FROMLIST-riscv-dts-spacemit-enable-PCIe-on-OrangePi-.patch @@ -0,0 +1,75 @@ +From 1089052df50a4781f12e65e68f2cfeb75dca9d84 Mon Sep 17 00:00:00 2001 +From: Chukun Pan +Date: Tue, 2 Jun 2026 18:00:00 +0800 +Subject: [RUYI PATCH] FROMLIST: riscv: dts: spacemit: enable PCIe on OrangePi + R2S + +Enable the two RTL8125 network controllers and corresponding +PHYs connected via the PCIe controllers on the OrangePi R2S. + +Signed-off-by: Chukun Pan +Link: https://lore.kernel.org/r/20260602100000.2402784-1-amadeus@jmu.edu.cn +Signed-off-by: Han Gao +--- + .../boot/dts/spacemit/k1-orangepi-r2s.dts | 38 +++++++++++++++++++ + 1 file changed, 38 insertions(+) + +diff --git a/arch/riscv/boot/dts/spacemit/k1-orangepi-r2s.dts b/arch/riscv/boot/dts/spacemit/k1-orangepi-r2s.dts +index b13a8d6a2670..919e5b451109 100644 +--- a/arch/riscv/boot/dts/spacemit/k1-orangepi-r2s.dts ++++ b/arch/riscv/boot/dts/spacemit/k1-orangepi-r2s.dts +@@ -23,6 +23,14 @@ chosen { + stdout-path = "serial0"; + }; + ++ pcie_vcc3v3: regulator-pcie-vcc3v3 { ++ compatible = "regulator-fixed"; ++ regulator-name = "pcie_vcc3v3"; ++ regulator-min-microvolt = <3300000>; ++ regulator-max-microvolt = <3300000>; ++ regulator-always-on; ++ }; ++ + vcc4v0: regulator-vcc4v0 { + compatible = "regulator-fixed"; + regulator-name = "vcc4v0"; +@@ -228,6 +236,36 @@ dldo7 { + }; + }; + ++&pcie1_phy { ++ pinctrl-names = "default"; ++ pinctrl-0 = <&pcie1_3_cfg>; ++ status = "okay"; ++}; ++ ++&pcie1_port { ++ phys = <&pcie1_phy>; ++ vpcie3v3-supply = <&pcie_vcc3v3>; ++}; ++ ++&pcie1 { ++ status = "okay"; ++}; ++ ++&pcie2_phy { ++ pinctrl-names = "default"; ++ pinctrl-0 = <&pcie2_4_cfg>; ++ status = "okay"; ++}; ++ ++&pcie2_port { ++ phys = <&pcie2_phy>; ++ vpcie3v3-supply = <&pcie_vcc3v3>; ++}; ++ ++&pcie2 { ++ status = "okay"; ++}; ++ + &pdma { + status = "okay"; + }; +-- +2.53.0 + diff --git a/SPECS/linux-lts-kmhv2/0437-FROMLIST-iommu-riscv-Add-dependency-between-iommu-an.patch b/SPECS/linux-lts-kmhv2/0437-FROMLIST-iommu-riscv-Add-dependency-between-iommu-an.patch new file mode 100644 index 0000000000..0150c1e446 --- /dev/null +++ b/SPECS/linux-lts-kmhv2/0437-FROMLIST-iommu-riscv-Add-dependency-between-iommu-an.patch @@ -0,0 +1,105 @@ +From 63031abd1c4c52dfc3b406612721eff99c69ed49 Mon Sep 17 00:00:00 2001 +From: Wang Yechao +Date: Thu, 4 Jun 2026 14:55:10 +0800 +Subject: [RUYI PATCH] FROMLIST: iommu/riscv: Add dependency between iommu and + devices + +Commit 9156585280f1 ("ACPI: RIMT: Add dependency between iommu and +devices") adds the dependency between iommu and devices on ACPI +systems. On devicetree systems, the incorrect removal order also +occurs. + +It can be reproduced on the QEMU RISC-V machine if the kernel enables +IOMMU_DMA: + +[ 635.081530] e1000e: EEE TX LPI TIMER: 00000000 +[ 656.100306] rcu: INFO: rcu_sched self-detected stall on CPU +[ 656.101374] rcu: 5-....: (5250 ticks this GP) idle=d774/1/0x4000000000000000 softirq=5173/5185 fqs=2625 +[ 656.102237] rcu: (t=5251 jiffies g=36825 q=101 ncpus=16) +[ 656.103801] CPU: 5 UID: 0 PID: 1958 Comm: reboot Tainted: G W 7.1.0-rc5 #31 PREEMPTLAZY +[ 656.104127] Tainted: [W]=WARN +[ 656.104182] Hardware name: QEMU QEMU Virtual Machine, BIOS 2.7 02/02/2022 +[ 656.104339] epc : riscv_iommu_cmd_sync.constprop.0+0xb8/0x148 +[ 656.105352] ra : riscv_iommu_cmd_sync.constprop.0+0xa8/0x148 +[ 656.105433] epc : ffffffff807ca980 ra : ffffffff807ca970 sp : ff60000085dbf960 +[ 656.105475] gp : ffffffff81e0d798 tp : ff60000084b58e00 t0 : ffffffff80021048 +[ 656.105514] t1 : ff60000081b18400 t2 : 45203a6530303031 s0 : ff60000085dbf9c0 +[ 656.105554] s1 : 00000098c92a567c a0 : 00000098c03986f0 a1 : ff60000085dbf970 +[ 656.105594] a2 : 000024bb5cac6aee a3 : ff200000004f1000 a4 : ff6000008140a040 +[ 656.105632] a5 : 0000000000000669 a6 : 0000000000000000 a7 : 00000000ffffa000 +[ 656.105669] s2 : 0000000000000000 s3 : 00000098c0398308 s4 : 000000000000066a +[ 656.105706] s5 : 0000000008f0d180 s6 : 000000a8d08b8de9 s7 : 0000000000001fff +[ 656.105743] s8 : ff6000008140a040 s9 : ff6000008484cb00 s10: ff200000005cc000 +[ 656.105781] s11: ff600000814652a0 t3 : 000000f000000000 t4 : 0000000000000000 +[ 656.105845] t5 : 0000000000000003 t6 : ff600000841666b0 ssp : 0000000000000000 +[ 656.105883] status: 0000000200000120 badaddr: 0000000000000000 cause: 8000000000000005 +[ 656.106072] riscv_iommu_cmd_sync.constprop.0+0xb8/0x148 +[ 656.106321] riscv_iommu_iotlb_inval+0x120/0x160 +[ 656.106373] riscv_iommu_iotlb_sync+0x48/0x60 +[ 656.106422] __iommu_dma_unmap+0xca/0xf8 +[ 656.106470] iommu_dma_unmap_phys+0x58/0xc8 +[ 656.106517] dma_unmap_phys+0x15c/0x248 +[ 656.106564] dma_unmap_page_attrs+0x1e/0x30 +[ 656.106915] e1000_clean_rx_ring+0x1d2/0x200 [e1000e] +[ 656.107668] e1000e_down+0x168/0x1c8 [e1000e] +[ 656.107995] e1000e_pm_freeze+0x94/0x128 [e1000e] +[ 656.108328] e1000_shutdown+0x28/0x48 [e1000e] +[ 656.108652] pci_device_shutdown+0x34/0x48 +[ 656.108706] device_shutdown+0x104/0x1e8 +[ 656.108752] kernel_restart+0x46/0xb8 +[ 656.108797] __do_sys_reboot+0xc0/0x1c8 +[ 656.108840] __riscv_sys_reboot+0x22/0x38 +[ 656.108882] do_trap_ecall_u+0x236/0x3f8 +[ 656.108947] handle_exception+0x15a/0x166 + +So move the device link into the iommu driver to fix both ACPI and +devicetree systems. + +Fixes: 488ffbf18171 ("iommu/riscv: Paging domain support") +Signed-off-by: Wang Yechao +Link: https://lore.kernel.org/r/20260604145510898G2kTwM2Pr25QE5H8T4Wh6@zte.com.cn +Signed-off-by: Han Gao +--- + drivers/acpi/riscv/rimt.c | 7 ------- + drivers/iommu/riscv/iommu.c | 7 +++++++ + 2 files changed, 7 insertions(+), 7 deletions(-) + +diff --git a/drivers/acpi/riscv/rimt.c b/drivers/acpi/riscv/rimt.c +index 8eaa8731bddd..7f423405e5ef 100644 +--- a/drivers/acpi/riscv/rimt.c ++++ b/drivers/acpi/riscv/rimt.c +@@ -263,13 +263,6 @@ static int rimt_iommu_xlate(struct device *dev, struct acpi_rimt_node *node, u32 + if (!rimt_fwnode) + return -EPROBE_DEFER; + +- /* +- * EPROBE_DEFER ensures IOMMU is probed before the devices that +- * depend on them. During shutdown, however, the IOMMU may be removed +- * first, leading to issues. To avoid this, a device link is added +- * which enforces the correct removal order. +- */ +- device_link_add(dev, rimt_fwnode->dev, DL_FLAG_AUTOREMOVE_CONSUMER); + return acpi_iommu_fwspec_init(dev, deviceid, rimt_fwnode); + } + +diff --git a/drivers/iommu/riscv/iommu.c b/drivers/iommu/riscv/iommu.c +index de286563bd44..07ae3c4ec38e 100644 +--- a/drivers/iommu/riscv/iommu.c ++++ b/drivers/iommu/riscv/iommu.c +@@ -1598,6 +1598,13 @@ static struct iommu_device *riscv_iommu_probe_device(struct device *dev) + + dev_iommu_priv_set(dev, info); + ++ /* ++ * During shutdown, however, the IOMMU may be removed first, leading ++ * to issues. To avoid this, a device link is added which enforces ++ * the correct removal order. ++ */ ++ device_link_add(dev, fwspec->iommu_fwnode->dev, DL_FLAG_AUTOREMOVE_CONSUMER); ++ + return &iommu->iommu; + } + +-- +2.53.0 + diff --git a/SPECS/linux-lts-kmhv2/0434-XUANTIE-riscv-dts-th1520-add-licheepi4a-16g-support.patch b/SPECS/linux-lts-kmhv2/0438-XUANTIE-riscv-dts-th1520-add-licheepi4a-16g-support.patch similarity index 91% rename from SPECS/linux-lts-kmhv2/0434-XUANTIE-riscv-dts-th1520-add-licheepi4a-16g-support.patch rename to SPECS/linux-lts-kmhv2/0438-XUANTIE-riscv-dts-th1520-add-licheepi4a-16g-support.patch index 5d85c8b043..19a9ca6539 100644 --- a/SPECS/linux-lts-kmhv2/0434-XUANTIE-riscv-dts-th1520-add-licheepi4a-16g-support.patch +++ b/SPECS/linux-lts-kmhv2/0438-XUANTIE-riscv-dts-th1520-add-licheepi4a-16g-support.patch @@ -1,8 +1,7 @@ -From f1a862c276fa513a0c9ccc9835a65f55feeb22d6 Mon Sep 17 00:00:00 2001 +From 202c07f948325a5c584ae346de90b289bd86b125 Mon Sep 17 00:00:00 2001 From: Han Gao Date: Mon, 24 Nov 2025 20:38:44 +0800 -Subject: [PATCH 434/467] XUANTIE: riscv: dts: th1520: add licheepi4a 16g - support +Subject: [RUYI PATCH] XUANTIE: riscv: dts: th1520: add licheepi4a 16g support From: https://github.com/revyos/th1520-linux-kernel/commit/01a510898e41e704bee1fe58a2c0c0a29cb96548 diff --git a/SPECS/linux-lts-kmhv2/0435-REVYOS-riscv-dts-th1520-rename-thead-to-xuantie.patch b/SPECS/linux-lts-kmhv2/0439-REVYOS-riscv-dts-th1520-rename-thead-to-xuantie.patch similarity index 85% rename from SPECS/linux-lts-kmhv2/0435-REVYOS-riscv-dts-th1520-rename-thead-to-xuantie.patch rename to SPECS/linux-lts-kmhv2/0439-REVYOS-riscv-dts-th1520-rename-thead-to-xuantie.patch index 4ffd3a5571..1c294c8a28 100644 --- a/SPECS/linux-lts-kmhv2/0435-REVYOS-riscv-dts-th1520-rename-thead-to-xuantie.patch +++ b/SPECS/linux-lts-kmhv2/0439-REVYOS-riscv-dts-th1520-rename-thead-to-xuantie.patch @@ -1,7 +1,7 @@ -From 48c328f5e19a84fb0c038a92a3aecb8167523082 Mon Sep 17 00:00:00 2001 +From 7b0831ac6fa2e8db34c9c89d4e02bf2aa105fab3 Mon Sep 17 00:00:00 2001 From: Han Gao Date: Wed, 14 May 2025 08:16:15 +0800 -Subject: [PATCH 435/467] REVYOS: riscv: dts: th1520: rename thead to xuantie +Subject: [RUYI PATCH] REVYOS: riscv: dts: th1520: rename thead to xuantie Signed-off-by: Han Gao [Icenowy: preserve the original compatible to allow Linux to match] diff --git a/SPECS/linux-lts-kmhv2/0436-REVYOS-riscv-dts-th1520-add-xuantie-th1520-mbox-r.patch b/SPECS/linux-lts-kmhv2/0440-REVYOS-riscv-dts-th1520-add-xuantie-th1520-mbox-r.patch similarity index 89% rename from SPECS/linux-lts-kmhv2/0436-REVYOS-riscv-dts-th1520-add-xuantie-th1520-mbox-r.patch rename to SPECS/linux-lts-kmhv2/0440-REVYOS-riscv-dts-th1520-add-xuantie-th1520-mbox-r.patch index ba1a3a3e56..757ee92472 100644 --- a/SPECS/linux-lts-kmhv2/0436-REVYOS-riscv-dts-th1520-add-xuantie-th1520-mbox-r.patch +++ b/SPECS/linux-lts-kmhv2/0440-REVYOS-riscv-dts-th1520-add-xuantie-th1520-mbox-r.patch @@ -1,7 +1,7 @@ -From e973bd6b6cca07542eeec6f28391bf5e9bf49ef3 Mon Sep 17 00:00:00 2001 +From 1fa033781168266e279c276df269822336f8d946 Mon Sep 17 00:00:00 2001 From: Han Gao Date: Wed, 14 May 2025 08:27:18 +0800 -Subject: [PATCH 436/467] REVYOS: riscv: dts: th1520: add xuantie,th1520-mbox-r +Subject: [RUYI PATCH] REVYOS: riscv: dts: th1520: add xuantie,th1520-mbox-r Signed-off-by: Han Gao [Icenowy: remove the interrupt-controller property] diff --git a/SPECS/linux-lts-kmhv2/0437-SOPHGO-dt-bindings-nvmem-Add-SG2044-eFuse-controller.patch b/SPECS/linux-lts-kmhv2/0441-SOPHGO-dt-bindings-nvmem-Add-SG2044-eFuse-controller.patch similarity index 92% rename from SPECS/linux-lts-kmhv2/0437-SOPHGO-dt-bindings-nvmem-Add-SG2044-eFuse-controller.patch rename to SPECS/linux-lts-kmhv2/0441-SOPHGO-dt-bindings-nvmem-Add-SG2044-eFuse-controller.patch index 3913520ac4..79f21e68df 100644 --- a/SPECS/linux-lts-kmhv2/0437-SOPHGO-dt-bindings-nvmem-Add-SG2044-eFuse-controller.patch +++ b/SPECS/linux-lts-kmhv2/0441-SOPHGO-dt-bindings-nvmem-Add-SG2044-eFuse-controller.patch @@ -1,8 +1,7 @@ -From 58b84bc14138597b9031f9e8d047b52130e77045 Mon Sep 17 00:00:00 2001 +From 40d9d7d4261e84ef42987558481248dd8a8a89b0 Mon Sep 17 00:00:00 2001 From: Inochi Amaoto Date: Sun, 19 Nov 2023 21:13:31 +0800 -Subject: [PATCH 437/467] SOPHGO: dt-bindings: nvmem: Add SG2044 eFuse - controller +Subject: [RUYI PATCH] SOPHGO: dt-bindings: nvmem: Add SG2044 eFuse controller Sophgo SG2044 uses eFuses used to store factory-programmed data such as ROM patch, public keys and other factory information. diff --git a/SPECS/linux-lts-kmhv2/0438-SOPHGO-nvmem-Add-Sophgo-SG2044-eFuse-driver.patch b/SPECS/linux-lts-kmhv2/0442-SOPHGO-nvmem-Add-Sophgo-SG2044-eFuse-driver.patch similarity index 97% rename from SPECS/linux-lts-kmhv2/0438-SOPHGO-nvmem-Add-Sophgo-SG2044-eFuse-driver.patch rename to SPECS/linux-lts-kmhv2/0442-SOPHGO-nvmem-Add-Sophgo-SG2044-eFuse-driver.patch index 7a5c632111..2ebd4453f3 100644 --- a/SPECS/linux-lts-kmhv2/0438-SOPHGO-nvmem-Add-Sophgo-SG2044-eFuse-driver.patch +++ b/SPECS/linux-lts-kmhv2/0442-SOPHGO-nvmem-Add-Sophgo-SG2044-eFuse-driver.patch @@ -1,7 +1,7 @@ -From 6ac29107a01f6a190188cc8c4ed3d8f9ac21c834 Mon Sep 17 00:00:00 2001 +From e96eabf82535fd6f2fc338f3f5af2fb50721a459 Mon Sep 17 00:00:00 2001 From: Inochi Amaoto Date: Sun, 19 Nov 2023 21:13:32 +0800 -Subject: [PATCH 438/467] SOPHGO: nvmem: Add Sophgo SG2044 eFuse driver +Subject: [RUYI PATCH] SOPHGO: nvmem: Add Sophgo SG2044 eFuse driver Sophgo SoCs such as SG2044 contain eFuses used to store factory-programmed data. diff --git a/SPECS/linux-lts-kmhv2/0439-SOPHGO-riscv-dts-sophgo-sg2044-Add-eFUSE-device.patch b/SPECS/linux-lts-kmhv2/0443-SOPHGO-riscv-dts-sophgo-sg2044-Add-eFUSE-device.patch similarity index 91% rename from SPECS/linux-lts-kmhv2/0439-SOPHGO-riscv-dts-sophgo-sg2044-Add-eFUSE-device.patch rename to SPECS/linux-lts-kmhv2/0443-SOPHGO-riscv-dts-sophgo-sg2044-Add-eFUSE-device.patch index 13be292227..ca1a921e5d 100644 --- a/SPECS/linux-lts-kmhv2/0439-SOPHGO-riscv-dts-sophgo-sg2044-Add-eFUSE-device.patch +++ b/SPECS/linux-lts-kmhv2/0443-SOPHGO-riscv-dts-sophgo-sg2044-Add-eFUSE-device.patch @@ -1,7 +1,7 @@ -From 067900c6efeb7cfec72358b2de3190c383988fb7 Mon Sep 17 00:00:00 2001 +From 973bb367e07f78196b1e441326cbdef6c366955f Mon Sep 17 00:00:00 2001 From: Inochi Amaoto Date: Thu, 5 Dec 2024 13:24:13 +0800 -Subject: [PATCH 439/467] SOPHGO: riscv: dts: sophgo: sg2044: Add eFUSE device +Subject: [RUYI PATCH] SOPHGO: riscv: dts: sophgo: sg2044: Add eFUSE device Add eFUSE controller node for SG2044. diff --git a/SPECS/linux-lts-kmhv2/0440-SOPHGO-dts-sg2044-Modify-pcie-bar-address.patch b/SPECS/linux-lts-kmhv2/0444-SOPHGO-dts-sg2044-Modify-pcie-bar-address.patch similarity index 97% rename from SPECS/linux-lts-kmhv2/0440-SOPHGO-dts-sg2044-Modify-pcie-bar-address.patch rename to SPECS/linux-lts-kmhv2/0444-SOPHGO-dts-sg2044-Modify-pcie-bar-address.patch index 4dd1171275..7551151403 100644 --- a/SPECS/linux-lts-kmhv2/0440-SOPHGO-dts-sg2044-Modify-pcie-bar-address.patch +++ b/SPECS/linux-lts-kmhv2/0444-SOPHGO-dts-sg2044-Modify-pcie-bar-address.patch @@ -1,7 +1,7 @@ -From 819aa39c2d1a6d2c6cbde41fb83516b927d08626 Mon Sep 17 00:00:00 2001 +From e2ed9e487c648247b91a25cef6515dc2a54aba85 Mon Sep 17 00:00:00 2001 From: Han Gao Date: Sun, 28 Dec 2025 23:02:15 +0800 -Subject: [PATCH 440/467] SOPHGO: dts: sg2044: Modify pcie bar address +Subject: [RUYI PATCH] SOPHGO: dts: sg2044: Modify pcie bar address FROM: https://github.com/sophgo/linux-riscv/commit/efddc3e2d3d57b27054415afb522100e6dce8692 diff --git a/SPECS/linux-lts-kmhv2/0441-SOPHGO-riscv-sg2042-errata-Replace-thead-cache-clean.patch b/SPECS/linux-lts-kmhv2/0445-SOPHGO-riscv-sg2042-errata-Replace-thead-cache-clean.patch similarity index 85% rename from SPECS/linux-lts-kmhv2/0441-SOPHGO-riscv-sg2042-errata-Replace-thead-cache-clean.patch rename to SPECS/linux-lts-kmhv2/0445-SOPHGO-riscv-sg2042-errata-Replace-thead-cache-clean.patch index 23c3d7b4f9..8f80489e78 100644 --- a/SPECS/linux-lts-kmhv2/0441-SOPHGO-riscv-sg2042-errata-Replace-thead-cache-clean.patch +++ b/SPECS/linux-lts-kmhv2/0445-SOPHGO-riscv-sg2042-errata-Replace-thead-cache-clean.patch @@ -1,8 +1,8 @@ -From c9a6181747df1dd9980ccca9e4e34a51afc1f1db Mon Sep 17 00:00:00 2001 +From 90bc96384294bf251a26f5f518765309821b8cd2 Mon Sep 17 00:00:00 2001 From: Xiaoguang Xing Date: Mon, 22 Jan 2024 10:31:30 +0800 -Subject: [PATCH 441/467] SOPHGO: riscv: sg2042: errata: Replace thead cache - clean with flush +Subject: [RUYI PATCH] SOPHGO: riscv: sg2042: errata: Replace thead cache clean + with flush FROM: https://github.com/sophgo/linux-riscv/commit/9f8fdd99aae6ae8f037ad9c80b968de7c4252a65 diff --git a/SPECS/linux-lts-kmhv2/0442-REVYSR-dt-bindings-net-ultrarisc-dp1000-gmac-Add-sup.patch b/SPECS/linux-lts-kmhv2/0446-REVYSR-dt-bindings-net-ultrarisc-dp1000-gmac-Add-sup.patch similarity index 95% rename from SPECS/linux-lts-kmhv2/0442-REVYSR-dt-bindings-net-ultrarisc-dp1000-gmac-Add-sup.patch rename to SPECS/linux-lts-kmhv2/0446-REVYSR-dt-bindings-net-ultrarisc-dp1000-gmac-Add-sup.patch index ff15f677fa..5ca806b352 100644 --- a/SPECS/linux-lts-kmhv2/0442-REVYSR-dt-bindings-net-ultrarisc-dp1000-gmac-Add-sup.patch +++ b/SPECS/linux-lts-kmhv2/0446-REVYSR-dt-bindings-net-ultrarisc-dp1000-gmac-Add-sup.patch @@ -1,7 +1,7 @@ -From 5d179609e5c15e909b3700913113fa6b03c0cb53 Mon Sep 17 00:00:00 2001 +From 283120c06a7de7f2b98715726a766cbef2459707 Mon Sep 17 00:00:00 2001 From: Han Gao Date: Fri, 24 Oct 2025 15:59:17 +0800 -Subject: [PATCH 442/467] REVYSR: dt-bindings: net: ultrarisc,dp1000-gmac: Add +Subject: [RUYI PATCH] REVYSR: dt-bindings: net: ultrarisc,dp1000-gmac: Add support for Ultrarisc DP1000 GMAC The GMAC IP on DP1000 is a standard Synopsys DesignWare MAC diff --git a/SPECS/linux-lts-kmhv2/0443-REVYSR-net-stmmac-add-support-for-dwmac-5.10a.patch b/SPECS/linux-lts-kmhv2/0447-REVYSR-net-stmmac-add-support-for-dwmac-5.10a.patch similarity index 87% rename from SPECS/linux-lts-kmhv2/0443-REVYSR-net-stmmac-add-support-for-dwmac-5.10a.patch rename to SPECS/linux-lts-kmhv2/0447-REVYSR-net-stmmac-add-support-for-dwmac-5.10a.patch index 86078006ad..271d5db9ac 100644 --- a/SPECS/linux-lts-kmhv2/0443-REVYSR-net-stmmac-add-support-for-dwmac-5.10a.patch +++ b/SPECS/linux-lts-kmhv2/0447-REVYSR-net-stmmac-add-support-for-dwmac-5.10a.patch @@ -1,7 +1,7 @@ -From f541fa0b3dbdffb41fa000bff4a473af0b9f662b Mon Sep 17 00:00:00 2001 +From 10d617cd5ad42153be1aa390de90e0cdd8376340 Mon Sep 17 00:00:00 2001 From: Han Gao Date: Fri, 24 Oct 2025 17:00:37 +0800 -Subject: [PATCH 443/467] REVYSR: net: stmmac: add support for dwmac 5.10a +Subject: [RUYI PATCH] REVYSR: net: stmmac: add support for dwmac 5.10a Signed-off-by: Han Gao FROM: https://github.com/RevySR/linux/commit/5bc2d2af06ccd13675b8d4751226fb56bc8ee6df diff --git a/SPECS/linux-lts-kmhv2/0444-RVCK-riscv-dts-add-dp1000.dts-for-UltraRIsc-DP1000-S.patch b/SPECS/linux-lts-kmhv2/0448-RVCK-riscv-dts-add-dp1000.dts-for-UltraRIsc-DP1000-S.patch similarity index 99% rename from SPECS/linux-lts-kmhv2/0444-RVCK-riscv-dts-add-dp1000.dts-for-UltraRIsc-DP1000-S.patch rename to SPECS/linux-lts-kmhv2/0448-RVCK-riscv-dts-add-dp1000.dts-for-UltraRIsc-DP1000-S.patch index e1c1a55eec..9de39c75e0 100644 --- a/SPECS/linux-lts-kmhv2/0444-RVCK-riscv-dts-add-dp1000.dts-for-UltraRIsc-DP1000-S.patch +++ b/SPECS/linux-lts-kmhv2/0448-RVCK-riscv-dts-add-dp1000.dts-for-UltraRIsc-DP1000-S.patch @@ -1,8 +1,7 @@ -From b77880a0dbc2004c552fb776369d9ee9c2e82477 Mon Sep 17 00:00:00 2001 +From 99ea7fd4bd1ccf2910170d8c84c997b33c948537 Mon Sep 17 00:00:00 2001 From: Jia Wang Date: Fri, 16 May 2025 11:12:26 +0800 -Subject: [PATCH 444/467] RVCK: riscv:dts: add dp1000.dts for UltraRIsc DP1000 - SoC +Subject: [RUYI PATCH] RVCK: riscv:dts: add dp1000.dts for UltraRIsc DP1000 SoC Signed-off-by: Jia Wang FROM: https://github.com/RVCK-Project/rvck/commit/8fa6586e8607e8f2b9bbf701a6cf282b29dac1f7 diff --git a/SPECS/linux-lts-kmhv2/0445-RVCK-pinctrl-add-pinctrl-dirver-for-UltraRisc-DP1000.patch b/SPECS/linux-lts-kmhv2/0449-RVCK-pinctrl-add-pinctrl-dirver-for-UltraRisc-DP1000.patch similarity index 99% rename from SPECS/linux-lts-kmhv2/0445-RVCK-pinctrl-add-pinctrl-dirver-for-UltraRisc-DP1000.patch rename to SPECS/linux-lts-kmhv2/0449-RVCK-pinctrl-add-pinctrl-dirver-for-UltraRisc-DP1000.patch index 2a78270fd1..fad0cc8ffd 100644 --- a/SPECS/linux-lts-kmhv2/0445-RVCK-pinctrl-add-pinctrl-dirver-for-UltraRisc-DP1000.patch +++ b/SPECS/linux-lts-kmhv2/0449-RVCK-pinctrl-add-pinctrl-dirver-for-UltraRisc-DP1000.patch @@ -1,8 +1,7 @@ -From 29f4764a9f5c2daf1ba382864a626abb65b50d8f Mon Sep 17 00:00:00 2001 +From 709a5329d0c5e869292d0fb40e080d1e280adb51 Mon Sep 17 00:00:00 2001 From: Jia Wang Date: Fri, 17 Jan 2025 19:34:48 +0800 -Subject: [PATCH 445/467] RVCK: pinctrl: add pinctrl dirver for UltraRisc - DP1000 +Subject: [RUYI PATCH] RVCK: pinctrl: add pinctrl dirver for UltraRisc DP1000 support pinmux and pinconf for UltraRisc DP1000 SoC diff --git a/SPECS/linux-lts-kmhv2/0446-RVCK-dts-add-pinctrl-dtsi-dts-for-UltraRisc-DP1000.patch b/SPECS/linux-lts-kmhv2/0450-RVCK-dts-add-pinctrl-dtsi-dts-for-UltraRisc-DP1000.patch similarity index 97% rename from SPECS/linux-lts-kmhv2/0446-RVCK-dts-add-pinctrl-dtsi-dts-for-UltraRisc-DP1000.patch rename to SPECS/linux-lts-kmhv2/0450-RVCK-dts-add-pinctrl-dtsi-dts-for-UltraRisc-DP1000.patch index 4e043bafce..935589d38c 100644 --- a/SPECS/linux-lts-kmhv2/0446-RVCK-dts-add-pinctrl-dtsi-dts-for-UltraRisc-DP1000.patch +++ b/SPECS/linux-lts-kmhv2/0450-RVCK-dts-add-pinctrl-dtsi-dts-for-UltraRisc-DP1000.patch @@ -1,7 +1,7 @@ -From 182a5e8e69bcf91baec912e83b948dfda780e9e5 Mon Sep 17 00:00:00 2001 +From c3b99eaa70d3c031fe29c503b85abb31e02d50a4 Mon Sep 17 00:00:00 2001 From: Jia Wang Date: Mon, 16 Jun 2025 10:25:31 +0800 -Subject: [PATCH 446/467] RVCK: dts: add pinctrl dtsi/dts for UltraRisc DP1000 +Subject: [RUYI PATCH] RVCK: dts: add pinctrl dtsi/dts for UltraRisc DP1000 The newly added dtsi/dts is used to describe the pinctrl configuration of the UltraRisc DP1000-EVB mainboard. diff --git a/SPECS/linux-lts-kmhv2/0447-RVCK-riscv-dp1000-dts-add-the-dts-of-UltraRISC-dp100.patch b/SPECS/linux-lts-kmhv2/0451-RVCK-riscv-dp1000-dts-add-the-dts-of-UltraRISC-dp100.patch similarity index 98% rename from SPECS/linux-lts-kmhv2/0447-RVCK-riscv-dp1000-dts-add-the-dts-of-UltraRISC-dp100.patch rename to SPECS/linux-lts-kmhv2/0451-RVCK-riscv-dp1000-dts-add-the-dts-of-UltraRISC-dp100.patch index c8897fb4ae..dfeb639386 100644 --- a/SPECS/linux-lts-kmhv2/0447-RVCK-riscv-dp1000-dts-add-the-dts-of-UltraRISC-dp100.patch +++ b/SPECS/linux-lts-kmhv2/0451-RVCK-riscv-dp1000-dts-add-the-dts-of-UltraRISC-dp100.patch @@ -1,7 +1,7 @@ -From 2faa790be1496587400ee51ba2cb7b112892e54d Mon Sep 17 00:00:00 2001 +From 6e08f5227680fcb9eef599c73c6a48dbba8d8f66 Mon Sep 17 00:00:00 2001 From: Jia Wang Date: Thu, 4 Sep 2025 16:31:30 +0800 -Subject: [PATCH 447/467] RVCK: riscv: dp1000: dts: add the dts of UltraRISC +Subject: [RUYI PATCH] RVCK: riscv: dp1000: dts: add the dts of UltraRISC dp1000-mo-v1 board adds the necessary device tree files for the UltraRISC diff --git a/SPECS/linux-lts-kmhv2/0448-RVCK-riscv-dp1000-dts-Move-mmc0-node-from-SoC-to-boa.patch b/SPECS/linux-lts-kmhv2/0452-RVCK-riscv-dp1000-dts-Move-mmc0-node-from-SoC-to-boa.patch similarity index 95% rename from SPECS/linux-lts-kmhv2/0448-RVCK-riscv-dp1000-dts-Move-mmc0-node-from-SoC-to-boa.patch rename to SPECS/linux-lts-kmhv2/0452-RVCK-riscv-dp1000-dts-Move-mmc0-node-from-SoC-to-boa.patch index e3ebcd1989..ee76518537 100644 --- a/SPECS/linux-lts-kmhv2/0448-RVCK-riscv-dp1000-dts-Move-mmc0-node-from-SoC-to-boa.patch +++ b/SPECS/linux-lts-kmhv2/0452-RVCK-riscv-dp1000-dts-Move-mmc0-node-from-SoC-to-boa.patch @@ -1,7 +1,7 @@ -From c88f25eebc30016da836312d9bdf40c93746a6ae Mon Sep 17 00:00:00 2001 +From b9ce7c71ab1aae741d95ad74bd380256a79a7de3 Mon Sep 17 00:00:00 2001 From: Jia Wang Date: Tue, 9 Sep 2025 15:45:52 +0800 -Subject: [PATCH 448/467] RVCK: riscv: dp1000: dts: Move mmc0 node from SoC to +Subject: [RUYI PATCH] RVCK: riscv: dp1000: dts: Move mmc0 node from SoC to board DTS The mmc0 node (mmc-spi-slot) is a board-level peripheral diff --git a/SPECS/linux-lts-kmhv2/0449-RVCK-riscv-dp1000-plic-add-plic-early-init-supports.patch b/SPECS/linux-lts-kmhv2/0453-RVCK-riscv-dp1000-plic-add-plic-early-init-supports.patch similarity index 94% rename from SPECS/linux-lts-kmhv2/0449-RVCK-riscv-dp1000-plic-add-plic-early-init-supports.patch rename to SPECS/linux-lts-kmhv2/0453-RVCK-riscv-dp1000-plic-add-plic-early-init-supports.patch index 67053738ec..2e0d7ad5ce 100644 --- a/SPECS/linux-lts-kmhv2/0449-RVCK-riscv-dp1000-plic-add-plic-early-init-supports.patch +++ b/SPECS/linux-lts-kmhv2/0453-RVCK-riscv-dp1000-plic-add-plic-early-init-supports.patch @@ -1,8 +1,7 @@ -From b8a01535a0fbc907f912f8d76412850ef78416a8 Mon Sep 17 00:00:00 2001 +From 2e69e921113ca412333654bea99e8cde384f3780 Mon Sep 17 00:00:00 2001 From: Jia Wang Date: Thu, 18 Sep 2025 10:44:01 +0800 -Subject: [PATCH 449/467] RVCK: riscv: dp1000: plic: add plic early init - supports +Subject: [RUYI PATCH] RVCK: riscv: dp1000: plic: add plic early init supports community inclusion category: feature diff --git a/SPECS/linux-lts-kmhv2/0450-RVCK-riscv-dp1000-dts-Move-chosen-node-from-common-t.patch b/SPECS/linux-lts-kmhv2/0454-RVCK-riscv-dp1000-dts-Move-chosen-node-from-common-t.patch similarity index 93% rename from SPECS/linux-lts-kmhv2/0450-RVCK-riscv-dp1000-dts-Move-chosen-node-from-common-t.patch rename to SPECS/linux-lts-kmhv2/0454-RVCK-riscv-dp1000-dts-Move-chosen-node-from-common-t.patch index fbb0fe8e41..87e90bc15e 100644 --- a/SPECS/linux-lts-kmhv2/0450-RVCK-riscv-dp1000-dts-Move-chosen-node-from-common-t.patch +++ b/SPECS/linux-lts-kmhv2/0454-RVCK-riscv-dp1000-dts-Move-chosen-node-from-common-t.patch @@ -1,8 +1,8 @@ -From c2b729c99b333e2485660b66669d1415bfd256bb Mon Sep 17 00:00:00 2001 +From c95a87c3fe519649f8470396461cd19be68bb138 Mon Sep 17 00:00:00 2001 From: Jia Wang Date: Mon, 10 Nov 2025 16:11:12 +0800 -Subject: [PATCH 450/467] RVCK: riscv: dp1000: dts: Move chosen node from - common to board-specific DTS +Subject: [RUYI PATCH] RVCK: riscv: dp1000: dts: Move chosen node from common + to board-specific DTS community inclusion category: feature diff --git a/SPECS/linux-lts-kmhv2/0451-RVCK-dts-riscv-ultrarisc-Refactor-DP1000-device-tree.patch b/SPECS/linux-lts-kmhv2/0455-RVCK-dts-riscv-ultrarisc-Refactor-DP1000-device-tree.patch similarity index 99% rename from SPECS/linux-lts-kmhv2/0451-RVCK-dts-riscv-ultrarisc-Refactor-DP1000-device-tree.patch rename to SPECS/linux-lts-kmhv2/0455-RVCK-dts-riscv-ultrarisc-Refactor-DP1000-device-tree.patch index bd085b039a..47458b4dd9 100644 --- a/SPECS/linux-lts-kmhv2/0451-RVCK-dts-riscv-ultrarisc-Refactor-DP1000-device-tree.patch +++ b/SPECS/linux-lts-kmhv2/0455-RVCK-dts-riscv-ultrarisc-Refactor-DP1000-device-tree.patch @@ -1,8 +1,8 @@ -From 03de28a6f7321aa6b3f914c0547661e9c15e62cc Mon Sep 17 00:00:00 2001 +From efed87f8a357dd6937ae5011627de96daf2e7029 Mon Sep 17 00:00:00 2001 From: Jia Wang Date: Tue, 11 Nov 2025 17:03:37 +0800 -Subject: [PATCH 451/467] RVCK: dts: riscv: ultrarisc: Refactor DP1000 device - tree files +Subject: [RUYI PATCH] RVCK: dts: riscv: ultrarisc: Refactor DP1000 device tree + files community inclusion category: feature diff --git a/SPECS/linux-lts-kmhv2/0452-RVCK-riscv-pinctrl-ultrarisc-Implement-pin-configura.patch b/SPECS/linux-lts-kmhv2/0456-RVCK-riscv-pinctrl-ultrarisc-Implement-pin-configura.patch similarity index 97% rename from SPECS/linux-lts-kmhv2/0452-RVCK-riscv-pinctrl-ultrarisc-Implement-pin-configura.patch rename to SPECS/linux-lts-kmhv2/0456-RVCK-riscv-pinctrl-ultrarisc-Implement-pin-configura.patch index 0bc0730651..ebf2263e4c 100644 --- a/SPECS/linux-lts-kmhv2/0452-RVCK-riscv-pinctrl-ultrarisc-Implement-pin-configura.patch +++ b/SPECS/linux-lts-kmhv2/0456-RVCK-riscv-pinctrl-ultrarisc-Implement-pin-configura.patch @@ -1,7 +1,7 @@ -From 9990048297fff986d79fe3f64e82e5f0856461e4 Mon Sep 17 00:00:00 2001 +From bae8242b84b2c9409608fced96e355aa782dfcd8 Mon Sep 17 00:00:00 2001 From: Jia Wang Date: Wed, 12 Nov 2025 15:43:27 +0800 -Subject: [PATCH 452/467] RVCK: riscv: pinctrl: ultrarisc: Implement pin +Subject: [RUYI PATCH] RVCK: riscv: pinctrl: ultrarisc: Implement pin configuration support community inclusion diff --git a/SPECS/linux-lts-kmhv2/0453-RVCK-riscv-dts-dp1000-add-dts-dtsi-for-Milk-V-Titan-.patch b/SPECS/linux-lts-kmhv2/0457-RVCK-riscv-dts-dp1000-add-dts-dtsi-for-Milk-V-Titan-.patch similarity index 98% rename from SPECS/linux-lts-kmhv2/0453-RVCK-riscv-dts-dp1000-add-dts-dtsi-for-Milk-V-Titan-.patch rename to SPECS/linux-lts-kmhv2/0457-RVCK-riscv-dts-dp1000-add-dts-dtsi-for-Milk-V-Titan-.patch index 1eed92849d..ca0081cabf 100644 --- a/SPECS/linux-lts-kmhv2/0453-RVCK-riscv-dts-dp1000-add-dts-dtsi-for-Milk-V-Titan-.patch +++ b/SPECS/linux-lts-kmhv2/0457-RVCK-riscv-dts-dp1000-add-dts-dtsi-for-Milk-V-Titan-.patch @@ -1,8 +1,8 @@ -From fbad2c8916d16de5ce5963b7dcc776529371ad4c Mon Sep 17 00:00:00 2001 +From 90a72c61206582a7f4df5b88119e6602cbafc201 Mon Sep 17 00:00:00 2001 From: Jia Wang Date: Tue, 18 Nov 2025 13:48:49 +0800 -Subject: [PATCH 453/467] RVCK: riscv: dts: dp1000: add dts/dtsi for Milk-V - Titan board based on UltraRISC DP1000 SoC +Subject: [RUYI PATCH] RVCK: riscv: dts: dp1000: add dts/dtsi for Milk-V Titan + board based on UltraRISC DP1000 SoC community inclusion category: feature diff --git a/SPECS/linux-lts-kmhv2/0454-REVYSR-pinctrl-ultrarisc-cleanup-probe-remove.patch b/SPECS/linux-lts-kmhv2/0458-REVYSR-pinctrl-ultrarisc-cleanup-probe-remove.patch similarity index 94% rename from SPECS/linux-lts-kmhv2/0454-REVYSR-pinctrl-ultrarisc-cleanup-probe-remove.patch rename to SPECS/linux-lts-kmhv2/0458-REVYSR-pinctrl-ultrarisc-cleanup-probe-remove.patch index 600e84fb7f..7b6568d84b 100644 --- a/SPECS/linux-lts-kmhv2/0454-REVYSR-pinctrl-ultrarisc-cleanup-probe-remove.patch +++ b/SPECS/linux-lts-kmhv2/0458-REVYSR-pinctrl-ultrarisc-cleanup-probe-remove.patch @@ -1,7 +1,7 @@ -From a5bc9efc302578399318b126b9ad08dc8f2925c9 Mon Sep 17 00:00:00 2001 +From ad2ca89827235515c3cfea8822ac22544a6f79f1 Mon Sep 17 00:00:00 2001 From: Han Gao Date: Mon, 23 Feb 2026 14:35:29 +0800 -Subject: [PATCH 454/467] REVYSR: pinctrl: ultrarisc: cleanup probe&remove +Subject: [RUYI PATCH] REVYSR: pinctrl: ultrarisc: cleanup probe&remove Signed-off-by: Han Gao --- diff --git a/SPECS/linux-lts-kmhv2/0455-REVYSR-riscv-dp1000-dts-use-ultrarisc-dp1000-pcie-fo.patch b/SPECS/linux-lts-kmhv2/0459-REVYSR-riscv-dp1000-dts-use-ultrarisc-dp1000-pcie-fo.patch similarity index 89% rename from SPECS/linux-lts-kmhv2/0455-REVYSR-riscv-dp1000-dts-use-ultrarisc-dp1000-pcie-fo.patch rename to SPECS/linux-lts-kmhv2/0459-REVYSR-riscv-dp1000-dts-use-ultrarisc-dp1000-pcie-fo.patch index 02ee603e78..3ab0a8fab6 100644 --- a/SPECS/linux-lts-kmhv2/0455-REVYSR-riscv-dp1000-dts-use-ultrarisc-dp1000-pcie-fo.patch +++ b/SPECS/linux-lts-kmhv2/0459-REVYSR-riscv-dp1000-dts-use-ultrarisc-dp1000-pcie-fo.patch @@ -1,7 +1,7 @@ -From e8065f872b91db0f8430308a5dd01266928a98d9 Mon Sep 17 00:00:00 2001 +From 3a0ec292f418c3f0ec2630531aeab29eea263f22 Mon Sep 17 00:00:00 2001 From: U2FsdGVkX1 Date: Sun, 29 Mar 2026 15:31:14 +0000 -Subject: [PATCH 455/467] REVYSR: riscv: dp1000: dts: use ultrarisc,dp1000-pcie +Subject: [RUYI PATCH] REVYSR: riscv: dp1000: dts: use ultrarisc,dp1000-pcie for PCIe nodes Signed-off-by: U2FsdGVkX1 diff --git a/SPECS/linux-lts-kmhv2/0456-ULTRARISC-hwmon-add-corepvt-driver-of-UltraRISC-DP10.patch b/SPECS/linux-lts-kmhv2/0460-ULTRARISC-hwmon-add-corepvt-driver-of-UltraRISC-DP10.patch similarity index 98% rename from SPECS/linux-lts-kmhv2/0456-ULTRARISC-hwmon-add-corepvt-driver-of-UltraRISC-DP10.patch rename to SPECS/linux-lts-kmhv2/0460-ULTRARISC-hwmon-add-corepvt-driver-of-UltraRISC-DP10.patch index cff95295c4..732de29759 100644 --- a/SPECS/linux-lts-kmhv2/0456-ULTRARISC-hwmon-add-corepvt-driver-of-UltraRISC-DP10.patch +++ b/SPECS/linux-lts-kmhv2/0460-ULTRARISC-hwmon-add-corepvt-driver-of-UltraRISC-DP10.patch @@ -1,8 +1,7 @@ -From 02e4c1a0f94cd44c90eee6410e5cf4484bb234a2 Mon Sep 17 00:00:00 2001 +From 3091a1fa3451d492041d5cc22aeb46f67edaf469 Mon Sep 17 00:00:00 2001 From: Jia Wang Date: Thu, 13 Feb 2025 15:50:12 +0800 -Subject: [PATCH 456/467] ULTRARISC: hwmon: add corepvt driver of UltraRISC - DP1000 +Subject: [RUYI PATCH] ULTRARISC: hwmon: add corepvt driver of UltraRISC DP1000 From: https://github.com/ultrarisc/linux-6.8.0/commit/2cb818e1179844847d3be752b978a4ee7e633bc3 diff --git a/SPECS/linux-lts-kmhv2/0457-RUYI-SYNC-riscv-dts-dp1000-Update-dp1000.dtsi.patch b/SPECS/linux-lts-kmhv2/0461-RUYI-SYNC-riscv-dts-dp1000-Update-dp1000.dtsi.patch similarity index 99% rename from SPECS/linux-lts-kmhv2/0457-RUYI-SYNC-riscv-dts-dp1000-Update-dp1000.dtsi.patch rename to SPECS/linux-lts-kmhv2/0461-RUYI-SYNC-riscv-dts-dp1000-Update-dp1000.dtsi.patch index 6ef6c25e68..0582b1d016 100644 --- a/SPECS/linux-lts-kmhv2/0457-RUYI-SYNC-riscv-dts-dp1000-Update-dp1000.dtsi.patch +++ b/SPECS/linux-lts-kmhv2/0461-RUYI-SYNC-riscv-dts-dp1000-Update-dp1000.dtsi.patch @@ -1,7 +1,7 @@ -From f1121d3ef4c87b156c91316132e05476fc6b3bf4 Mon Sep 17 00:00:00 2001 +From 817a4331068207be97f31dbe87e3512e92b549de Mon Sep 17 00:00:00 2001 From: Han Gao Date: Sun, 12 Apr 2026 02:50:03 +0800 -Subject: [PATCH 457/467] RUYI: SYNC: riscv: dts: dp1000: Update dp1000.dtsi +Subject: [RUYI PATCH] RUYI: SYNC: riscv: dts: dp1000: Update dp1000.dtsi FROM: https://github.com/ultrarisc/linux-6.8.0/commit/b4a00f2f96a9c7d8d550259292fd19568fe9beec diff --git a/SPECS/linux-lts-kmhv2/0458-RUYI-riscv-dts-spacemit-k3-Add-USB2.0-support.patch b/SPECS/linux-lts-kmhv2/0462-RUYI-riscv-dts-spacemit-k3-Add-USB2.0-support.patch similarity index 94% rename from SPECS/linux-lts-kmhv2/0458-RUYI-riscv-dts-spacemit-k3-Add-USB2.0-support.patch rename to SPECS/linux-lts-kmhv2/0462-RUYI-riscv-dts-spacemit-k3-Add-USB2.0-support.patch index 7a4dc86808..f7231a5dd3 100644 --- a/SPECS/linux-lts-kmhv2/0458-RUYI-riscv-dts-spacemit-k3-Add-USB2.0-support.patch +++ b/SPECS/linux-lts-kmhv2/0462-RUYI-riscv-dts-spacemit-k3-Add-USB2.0-support.patch @@ -1,7 +1,7 @@ -From da670b3d82267098c5ec850e11e6810ba6c0141b Mon Sep 17 00:00:00 2001 +From 360a4acac1e14c683370c4ffa8f3e85733ca0207 Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Sat, 24 Jan 2026 08:48:53 +0800 -Subject: [PATCH 458/467] RUYI: riscv: dts: spacemit: k3: Add USB2.0 support +Subject: [RUYI PATCH] RUYI: riscv: dts: spacemit: k3: Add USB2.0 support FROM: https://github.com/spacemit-com/linux/commit/6f1578894e4484f8a6724aceff099d2e90450e10 @@ -56,7 +56,7 @@ index 61cbf924830b..ac965ec83f2c 100644 + status = "okay"; +}; diff --git a/arch/riscv/boot/dts/spacemit/k3.dtsi b/arch/riscv/boot/dts/spacemit/k3.dtsi -index 5b17612fe58e..66dcabd0a815 100644 +index ed046714a7ac..1b86c872accb 100644 --- a/arch/riscv/boot/dts/spacemit/k3.dtsi +++ b/arch/riscv/boot/dts/spacemit/k3.dtsi @@ -637,6 +637,37 @@ pdma: dma-controller@d4000000 { diff --git a/SPECS/linux-lts-kmhv2/0459-SPACEMIT-riscv-uaccess-don-t-use-vector-if-buffer-is.patch b/SPECS/linux-lts-kmhv2/0463-SPACEMIT-riscv-uaccess-don-t-use-vector-if-buffer-is.patch similarity index 96% rename from SPECS/linux-lts-kmhv2/0459-SPACEMIT-riscv-uaccess-don-t-use-vector-if-buffer-is.patch rename to SPECS/linux-lts-kmhv2/0463-SPACEMIT-riscv-uaccess-don-t-use-vector-if-buffer-is.patch index fb68ebb141..7871de10b3 100644 --- a/SPECS/linux-lts-kmhv2/0459-SPACEMIT-riscv-uaccess-don-t-use-vector-if-buffer-is.patch +++ b/SPECS/linux-lts-kmhv2/0463-SPACEMIT-riscv-uaccess-don-t-use-vector-if-buffer-is.patch @@ -1,8 +1,8 @@ -From a778bb9a14663755014caabaaa245eba24561659 Mon Sep 17 00:00:00 2001 +From 8b65d5e0ae467754eccf77dddcd58ae11ea35cdd Mon Sep 17 00:00:00 2001 From: Zhang Meng Date: Mon, 5 Jan 2026 20:05:04 +0800 -Subject: [PATCH 459/467] SPACEMIT: riscv: uaccess: don't use vector if buffer - is not cacheable +Subject: [RUYI PATCH] SPACEMIT: riscv: uaccess: don't use vector if buffer is + not cacheable FROM: https://github.com/spacemit-com/linux-6.18/commit/9168f7e0c6bfdcfa3b6a64a4d45e3cd68a81618f diff --git a/SPECS/linux-lts-kmhv2/0460-RUYI-dt-bindings-phy-Add-Spacemit-K3-USB3-PCIe-comb-.patch b/SPECS/linux-lts-kmhv2/0464-RUYI-dt-bindings-phy-Add-Spacemit-K3-USB3-PCIe-comb-.patch similarity index 94% rename from SPECS/linux-lts-kmhv2/0460-RUYI-dt-bindings-phy-Add-Spacemit-K3-USB3-PCIe-comb-.patch rename to SPECS/linux-lts-kmhv2/0464-RUYI-dt-bindings-phy-Add-Spacemit-K3-USB3-PCIe-comb-.patch index 7e8d2c8137..2a03ed4e12 100644 --- a/SPECS/linux-lts-kmhv2/0460-RUYI-dt-bindings-phy-Add-Spacemit-K3-USB3-PCIe-comb-.patch +++ b/SPECS/linux-lts-kmhv2/0464-RUYI-dt-bindings-phy-Add-Spacemit-K3-USB3-PCIe-comb-.patch @@ -1,8 +1,8 @@ -From b29e3da058bfbb22e49d731df4e66c5998bd6324 Mon Sep 17 00:00:00 2001 +From 675808049c603e6935816557a160a1d7f6eb5495 Mon Sep 17 00:00:00 2001 From: Inochi Amaoto Date: Fri, 13 Feb 2026 09:01:58 +0800 -Subject: [PATCH 460/467] RUYI: dt-bindings: phy: Add Spacemit K3 USB3/PCIe - comb phy support +Subject: [RUYI PATCH] RUYI: dt-bindings: phy: Add Spacemit K3 USB3/PCIe comb + phy support The USB3/PCIe comb PHY on the K3 is a complex PHY group that can provide multiple phy for both PCIe and USB controller. diff --git a/SPECS/linux-lts-kmhv2/0461-RUYI-phy-spacemit-Add-USB3-PCIe-comb-PHY-driver-for-.patch b/SPECS/linux-lts-kmhv2/0465-RUYI-phy-spacemit-Add-USB3-PCIe-comb-PHY-driver-for-.patch similarity index 99% rename from SPECS/linux-lts-kmhv2/0461-RUYI-phy-spacemit-Add-USB3-PCIe-comb-PHY-driver-for-.patch rename to SPECS/linux-lts-kmhv2/0465-RUYI-phy-spacemit-Add-USB3-PCIe-comb-PHY-driver-for-.patch index 5fcf731d24..4c1686add5 100644 --- a/SPECS/linux-lts-kmhv2/0461-RUYI-phy-spacemit-Add-USB3-PCIe-comb-PHY-driver-for-.patch +++ b/SPECS/linux-lts-kmhv2/0465-RUYI-phy-spacemit-Add-USB3-PCIe-comb-PHY-driver-for-.patch @@ -1,8 +1,8 @@ -From d562b4d41d3ea85b9696fdce97dcf47fc485046b Mon Sep 17 00:00:00 2001 +From 4ee622c1f03b3a5e9d6df7f54f612202f9462d8c Mon Sep 17 00:00:00 2001 From: Inochi Amaoto Date: Fri, 13 Feb 2026 09:09:58 +0800 -Subject: [PATCH 461/467] RUYI: phy: spacemit: Add USB3/PCIe comb PHY driver - for Spacemit K3 +Subject: [RUYI PATCH] RUYI: phy: spacemit: Add USB3/PCIe comb PHY driver for + Spacemit K3 The comb PHY on K3 requires to configure a syscon device for the right mux configuration. And it requires calibration before any diff --git a/SPECS/linux-lts-kmhv2/0462-RUYI-riscv-dts-spacemit-k3-add-USB-controller-and-US.patch b/SPECS/linux-lts-kmhv2/0466-RUYI-riscv-dts-spacemit-k3-add-USB-controller-and-US.patch similarity index 93% rename from SPECS/linux-lts-kmhv2/0462-RUYI-riscv-dts-spacemit-k3-add-USB-controller-and-US.patch rename to SPECS/linux-lts-kmhv2/0466-RUYI-riscv-dts-spacemit-k3-add-USB-controller-and-US.patch index bf914252d4..ce8ce857a9 100644 --- a/SPECS/linux-lts-kmhv2/0462-RUYI-riscv-dts-spacemit-k3-add-USB-controller-and-US.patch +++ b/SPECS/linux-lts-kmhv2/0466-RUYI-riscv-dts-spacemit-k3-add-USB-controller-and-US.patch @@ -1,8 +1,8 @@ -From 115adac703e8d0d67045f2ed4fe1a495ab4b5448 Mon Sep 17 00:00:00 2001 +From 448b7e9c38ae27c10f2aa343886ce7c2b8243f8d Mon Sep 17 00:00:00 2001 From: Inochi Amaoto Date: Fri, 27 Feb 2026 09:46:06 +0800 -Subject: [PATCH 462/467] RUYI: riscv: dts: spacemit: k3: add USB controller - and USB phy support +Subject: [RUYI PATCH] RUYI: riscv: dts: spacemit: k3: add USB controller and + USB phy support Add all USB device node to the Spacemit K3. @@ -42,7 +42,7 @@ index ac965ec83f2c..acfbb5029c15 100644 + status = "okay"; +}; diff --git a/arch/riscv/boot/dts/spacemit/k3.dtsi b/arch/riscv/boot/dts/spacemit/k3.dtsi -index 66dcabd0a815..130828ca3b43 100644 +index 1b86c872accb..e73e6838f6b0 100644 --- a/arch/riscv/boot/dts/spacemit/k3.dtsi +++ b/arch/riscv/boot/dts/spacemit/k3.dtsi @@ -7,6 +7,7 @@ diff --git a/SPECS/linux-lts-kmhv2/0463-RUYI-riscv-dts-spacemit-k3-Add-PCIe-device-node.patch b/SPECS/linux-lts-kmhv2/0467-RUYI-riscv-dts-spacemit-k3-Add-PCIe-device-node.patch similarity index 97% rename from SPECS/linux-lts-kmhv2/0463-RUYI-riscv-dts-spacemit-k3-Add-PCIe-device-node.patch rename to SPECS/linux-lts-kmhv2/0467-RUYI-riscv-dts-spacemit-k3-Add-PCIe-device-node.patch index e319ecab6f..76aa9565cc 100644 --- a/SPECS/linux-lts-kmhv2/0463-RUYI-riscv-dts-spacemit-k3-Add-PCIe-device-node.patch +++ b/SPECS/linux-lts-kmhv2/0467-RUYI-riscv-dts-spacemit-k3-Add-PCIe-device-node.patch @@ -1,7 +1,7 @@ -From 14ecb0eaa2ab52030c7f36a293df59f07bdc1bb0 Mon Sep 17 00:00:00 2001 +From 3e1379ca2b2ca099c8a0a6900f9be381e48213c6 Mon Sep 17 00:00:00 2001 From: Inochi Amaoto Date: Tue, 24 Mar 2026 11:06:24 +0800 -Subject: [PATCH 463/467] RUYI: riscv: dts: spacemit: k3: Add PCIe device node +Subject: [RUYI PATCH] RUYI: riscv: dts: spacemit: k3: Add PCIe device node Add all PCIe device node for Spacemit K3. @@ -96,7 +96,7 @@ index 846d5e8cc783..5a817610101b 100644 + }; }; diff --git a/arch/riscv/boot/dts/spacemit/k3.dtsi b/arch/riscv/boot/dts/spacemit/k3.dtsi -index 130828ca3b43..6adfbd505e9e 100644 +index e73e6838f6b0..9552089c7c73 100644 --- a/arch/riscv/boot/dts/spacemit/k3.dtsi +++ b/arch/riscv/boot/dts/spacemit/k3.dtsi @@ -638,6 +638,156 @@ pdma: dma-controller@d4000000 { diff --git a/SPECS/linux-lts-kmhv2/0464-RUYI-PCI-add-SpacemiT-vendor-id-and-its-K3-device-id.patch b/SPECS/linux-lts-kmhv2/0468-RUYI-PCI-add-SpacemiT-vendor-id-and-its-K3-device-id.patch similarity index 84% rename from SPECS/linux-lts-kmhv2/0464-RUYI-PCI-add-SpacemiT-vendor-id-and-its-K3-device-id.patch rename to SPECS/linux-lts-kmhv2/0468-RUYI-PCI-add-SpacemiT-vendor-id-and-its-K3-device-id.patch index cd7020b4ac..9a9326a3e9 100644 --- a/SPECS/linux-lts-kmhv2/0464-RUYI-PCI-add-SpacemiT-vendor-id-and-its-K3-device-id.patch +++ b/SPECS/linux-lts-kmhv2/0468-RUYI-PCI-add-SpacemiT-vendor-id-and-its-K3-device-id.patch @@ -1,8 +1,8 @@ -From a36a6a20bb6a9f93f79425be30e4469453576929 Mon Sep 17 00:00:00 2001 +From 88fa19733f8dc09f9c51bf41ded9c4d68c722b88 Mon Sep 17 00:00:00 2001 From: Icenowy Zheng Date: Wed, 20 May 2026 23:28:15 +0800 -Subject: [PATCH 464/467] RUYI: PCI: add SpacemiT vendor id and its K3 device - id to pci_ids +Subject: [RUYI PATCH] RUYI: PCI: add SpacemiT vendor id and its K3 device id + to pci_ids The SpacemiT K3 chip's root complex needs to be listed in the allowlist of rtw89 driver to allow 36-bit DMA. diff --git a/SPECS/linux-lts-kmhv2/0465-RUYI-wifi-rtw89-pci-add-SpacemiT-K3-to-36-bit-DMA-al.patch b/SPECS/linux-lts-kmhv2/0469-RUYI-wifi-rtw89-pci-add-SpacemiT-K3-to-36-bit-DMA-al.patch similarity index 87% rename from SPECS/linux-lts-kmhv2/0465-RUYI-wifi-rtw89-pci-add-SpacemiT-K3-to-36-bit-DMA-al.patch rename to SPECS/linux-lts-kmhv2/0469-RUYI-wifi-rtw89-pci-add-SpacemiT-K3-to-36-bit-DMA-al.patch index 00f7e5801c..e0b9eb8766 100644 --- a/SPECS/linux-lts-kmhv2/0465-RUYI-wifi-rtw89-pci-add-SpacemiT-K3-to-36-bit-DMA-al.patch +++ b/SPECS/linux-lts-kmhv2/0469-RUYI-wifi-rtw89-pci-add-SpacemiT-K3-to-36-bit-DMA-al.patch @@ -1,7 +1,7 @@ -From df6fd4d5556ae9ac72a7fe88d7ac07abeaaaa7d5 Mon Sep 17 00:00:00 2001 +From e57bb71611315a5153d479c9e82b806ab76de1fb Mon Sep 17 00:00:00 2001 From: Icenowy Zheng Date: Wed, 20 May 2026 23:29:46 +0800 -Subject: [PATCH 465/467] RUYI: wifi: rtw89: pci: add SpacemiT K3 to 36-bit DMA +Subject: [RUYI PATCH] RUYI: wifi: rtw89: pci: add SpacemiT K3 to 36-bit DMA allowlist The SpacemiT K3 platform has no system memory in the 32-bit address diff --git a/SPECS/linux-lts-kmhv2/0466-RUYI-drm-amdgpu-disable-dynamic-PCIe-speed-switch-on.patch b/SPECS/linux-lts-kmhv2/0470-RUYI-drm-amdgpu-disable-dynamic-PCIe-speed-switch-on.patch similarity index 85% rename from SPECS/linux-lts-kmhv2/0466-RUYI-drm-amdgpu-disable-dynamic-PCIe-speed-switch-on.patch rename to SPECS/linux-lts-kmhv2/0470-RUYI-drm-amdgpu-disable-dynamic-PCIe-speed-switch-on.patch index e3e07666c1..00daab299c 100644 --- a/SPECS/linux-lts-kmhv2/0466-RUYI-drm-amdgpu-disable-dynamic-PCIe-speed-switch-on.patch +++ b/SPECS/linux-lts-kmhv2/0470-RUYI-drm-amdgpu-disable-dynamic-PCIe-speed-switch-on.patch @@ -1,8 +1,8 @@ -From 1cae45d935c7ce67a69b1440b362c73b5ce1446c Mon Sep 17 00:00:00 2001 +From 50eb8f06ed16e79d0840e5c58220ae05cac7dbb1 Mon Sep 17 00:00:00 2001 From: Icenowy Zheng Date: Tue, 19 May 2026 19:57:52 +0800 -Subject: [PATCH 466/467] RUYI: drm/amdgpu: disable dynamic PCIe speed switch - on SpacemiT K3 +Subject: [RUYI PATCH] RUYI: drm/amdgpu: disable dynamic PCIe speed switch on + SpacemiT K3 The dynamic speed switch functionality seems to be broken on SpacemiT K3, and leads to frequent GPU crashes at least with Polaris GPUs. @@ -16,7 +16,7 @@ Signed-off-by: Han Gao 1 file changed, 19 insertions(+) diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c -index c22aea46efcd..c69fd0b66dd4 100644 +index c22aea46efcd..b54f7cdd0ce8 100644 --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c @@ -1867,6 +1867,14 @@ bool amdgpu_device_seamless_boot_supported(struct amdgpu_device *adev) @@ -39,7 +39,7 @@ index c22aea46efcd..c69fd0b66dd4 100644 return false; #endif + /* skip upstream/downstream switches internal to dGPU */ -+ while (parent->vendor == PCI_VENDOR_ID_ATI) { ++ while (parent && parent->vendor == PCI_VENDOR_ID_ATI) { + parent = pci_upstream_bridge(parent); + } + diff --git a/SPECS/linux-lts-kmhv2/0467-RVCK-driver-clk-k3-keep-some-system-based-clock-alwa.patch b/SPECS/linux-lts-kmhv2/0471-RVCK-driver-clk-k3-keep-some-system-based-clock-alwa.patch similarity index 92% rename from SPECS/linux-lts-kmhv2/0467-RVCK-driver-clk-k3-keep-some-system-based-clock-alwa.patch rename to SPECS/linux-lts-kmhv2/0471-RVCK-driver-clk-k3-keep-some-system-based-clock-alwa.patch index 654f9a8c87..daa05c9c8d 100644 --- a/SPECS/linux-lts-kmhv2/0467-RVCK-driver-clk-k3-keep-some-system-based-clock-alwa.patch +++ b/SPECS/linux-lts-kmhv2/0471-RVCK-driver-clk-k3-keep-some-system-based-clock-alwa.patch @@ -1,7 +1,7 @@ -From d56459ef2dadb714f51cfba37b08e7cec2640ea1 Mon Sep 17 00:00:00 2001 +From c0f35dd9ad2ce894ee2fef94f5ac86216d03ef46 Mon Sep 17 00:00:00 2001 From: Zhang Meng Date: Wed, 4 Feb 2026 08:54:40 +0800 -Subject: [PATCH 467/467] RVCK: driver: clk: k3: keep some system based clock +Subject: [RUYI PATCH] RVCK: driver: clk: k3: keep some system based clock always on FROM: https://github.com/RVCK-Project/rvck/pull/213 diff --git a/SPECS/linux-lts-kmhv2/0001-RUYI-mmc-sdhci-of-dwcmshc-Add-support-for-SG2042-FPG.patch b/SPECS/linux-lts-kmhv2/0472-RUYI-mmc-sdhci-of-dwcmshc-Add-support-for-SG2042-FPG.patch similarity index 65% rename from SPECS/linux-lts-kmhv2/0001-RUYI-mmc-sdhci-of-dwcmshc-Add-support-for-SG2042-FPG.patch rename to SPECS/linux-lts-kmhv2/0472-RUYI-mmc-sdhci-of-dwcmshc-Add-support-for-SG2042-FPG.patch index 5a3619f868..5c6f644043 100644 --- a/SPECS/linux-lts-kmhv2/0001-RUYI-mmc-sdhci-of-dwcmshc-Add-support-for-SG2042-FPG.patch +++ b/SPECS/linux-lts-kmhv2/0472-RUYI-mmc-sdhci-of-dwcmshc-Add-support-for-SG2042-FPG.patch @@ -1,23 +1,23 @@ -From fc295beff7031f45a9ab9984a426817f27ed21fe Mon Sep 17 00:00:00 2001 +From af2e3f98ce75fe961163f67f323465d95ce082d9 Mon Sep 17 00:00:00 2001 From: Vivian Wang Date: Thu, 28 May 2026 14:18:23 +0800 -Subject: [PATCH] RUYI: mmc: sdhci-of-dwcmshc: Add support for SG2042 FPGA +Subject: [RUYI PATCH] RUYI: mmc: sdhci-of-dwcmshc: Add support for SG2042 FPGA variant Add support for a testing variant of the SG2042 SDHCI controller without PHY reset and without the "timer" clock. -[ Vivian: Adjust context for 6.18 ] Signed-off-by: Vivian Wang +Signed-off-by: Han Gao --- drivers/mmc/host/sdhci-of-dwcmshc.c | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/drivers/mmc/host/sdhci-of-dwcmshc.c b/drivers/mmc/host/sdhci-of-dwcmshc.c -index 5b7ffc359414..9f3482b2a311 100644 +index 90aa146a1be3..292940d9c45b 100644 --- a/drivers/mmc/host/sdhci-of-dwcmshc.c +++ b/drivers/mmc/host/sdhci-of-dwcmshc.c -@@ -1194,6 +1194,16 @@ static const struct sdhci_ops sdhci_dwcmshc_sg2042_ops = { +@@ -1664,6 +1664,16 @@ static const struct sdhci_ops sdhci_dwcmshc_sg2042_ops = { .platform_execute_tuning = th1520_execute_tuning, }; @@ -31,10 +31,10 @@ index 5b7ffc359414..9f3482b2a311 100644 + .platform_execute_tuning = th1520_execute_tuning, +}; + - static const struct dwcmshc_pltfm_data sdhci_dwcmshc_pdata = { - .pdata = { - .ops = &sdhci_dwcmshc_ops, -@@ -1263,6 +1273,14 @@ static const struct dwcmshc_pltfm_data sdhci_dwcmshc_sg2042_pdata = { + static const struct sdhci_ops sdhci_dwcmshc_eic7700_ops = { + .set_clock = sdhci_eic7700_set_clock, + .get_max_clock = sdhci_pltfm_clk_get_max_clock, +@@ -1746,6 +1756,14 @@ static const struct dwcmshc_pltfm_data sdhci_dwcmshc_sg2042_pdata = { .init = sg2042_init, }; @@ -46,10 +46,10 @@ index 5b7ffc359414..9f3482b2a311 100644 + }, +}; + - static const struct cqhci_host_ops dwcmshc_cqhci_ops = { - .enable = dwcmshc_sdhci_cqe_enable, - .disable = sdhci_cqe_disable, -@@ -1363,6 +1381,10 @@ static const struct of_device_id sdhci_dwcmshc_dt_ids[] = { + static const struct dwcmshc_pltfm_data sdhci_dwcmshc_eic7700_pdata = { + .pdata = { + .ops = &sdhci_dwcmshc_eic7700_ops, +@@ -1857,6 +1875,10 @@ static const struct of_device_id sdhci_dwcmshc_dt_ids[] = { .compatible = "sophgo,sg2042-dwcmshc", .data = &sdhci_dwcmshc_sg2042_pdata, }, @@ -57,9 +57,9 @@ index 5b7ffc359414..9f3482b2a311 100644 + .compatible = "sophgo,sg2042-fpga-dwcmshc", + .data = &sdhci_dwcmshc_sg2042_fpga_pdata, + }, - {}, - }; - MODULE_DEVICE_TABLE(of, sdhci_dwcmshc_dt_ids); + { + .compatible = "eswin,eic7700-dwcmshc", + .data = &sdhci_dwcmshc_eic7700_pdata, -- -2.54.0 +2.53.0 diff --git a/SPECS/linux-lts-kmhv2/linux-lts-kmhv2.spec b/SPECS/linux-lts-kmhv2/linux-lts-kmhv2.spec index 7de8368e54..438672f8d8 100644 --- a/SPECS/linux-lts-kmhv2/linux-lts-kmhv2.spec +++ b/SPECS/linux-lts-kmhv2/linux-lts-kmhv2.spec @@ -23,14 +23,15 @@ %global kernel_make_flags LD=ld.bfd KBUILD_BUILD_VERSION=%{release} Name: linux-lts-kmhv2 -Version: 6.18.33 +Version: 6.18.34 Release: %autorelease Summary: The Linux lts Kernel License: GPL-2.0-only URL: https://www.kernel.org/ -#!RemoteAsset: sha256:6f16ff302599f6fe34742890322cf0775703105fbd8767449682fca6af0fb782 +#!RemoteAsset: sha256:640c4732fb42842166db97e032c1fe7e5ff72c85a8982c75b40f74be3555d760 Source0: https://cdn.kernel.org/pub/linux/kernel/v6.x/linux-%{version}.tar.xz Source1: config.%{_arch} +Source2: series ExclusiveArch: riscv64 @@ -74,477 +75,7 @@ Requires(post): kernel-install Requires(postun): kernel-install %patchlist -0001-UPSTREAM-drm-ttm-add-pgprot-handling-for-RISC-V.patch -0002-UPSTREAM-riscv-sophgo-dts-add-PCIe-controllers-for-S.patch -0003-UPSTREAM-riscv-sophgo-dts-enable-PCIe-for-PioneerBox.patch -0004-UPSTREAM-riscv-sophgo-dts-enable-PCIe-for-SG2042_EVB.patch -0005-UPSTREAM-riscv-sophgo-dts-enable-PCIe-for-SG2042_EVB.patch -0006-UPSTREAM-riscv-dts-sophgo-Add-SPI-NOR-node-for-SG204.patch -0007-UPSTREAM-riscv-dts-sophgo-Enable-SPI-NOR-node-for-Pi.patch -0008-UPSTREAM-riscv-dts-sophgo-Enable-SPI-NOR-node-for-SG.patch -0009-UPSTREAM-riscv-dts-sophgo-Enable-SPI-NOR-node-for-SG.patch -0010-UPSTREAM-dt-bindings-net-sophgo-sg2044-dwmac-add-phy.patch -0011-UPSTREAM-perf-vendor-events-riscv-add-T-HEAD-C920V2-.patch -0012-UPSTREAM-rust-macros-Add-support-for-imports_ns-to-m.patch -0013-UPSTREAM-pwm-Export-pwmchip_release-for-external-use.patch -0014-UPSTREAM-rust-pwm-Add-Kconfig-and-basic-data-structu.patch -0015-UPSTREAM-rust-pwm-Add-complete-abstraction-layer.patch -0016-UPSTREAM-rust-pwm-Add-module_pwm_platform_driver-mac.patch -0017-UPSTREAM-rust-pwm-Drop-wrapping-of-PWM-polarity-and-.patch -0018-UPSTREAM-rust-pwm-Fix-broken-intra-doc-link.patch -0019-UPSTREAM-pwm-Add-Rust-driver-for-T-HEAD-TH1520-SoC.patch -0020-UPSTREAM-dt-bindings-pwm-thead-Add-T-HEAD-TH1520-PWM.patch -0021-UPSTREAM-pwm-Fix-Rust-formatting.patch -0022-UPSTREAM-pwm-th1520-Fix-clippy-warning-for-redundant.patch -0023-UPSTREAM-pwm-th1520-Use-module_pwm_platform_driver-m.patch -0024-UPSTREAM-pwm-th1520-Fix-missing-Kconfig-dependencies.patch -0025-UPSTREAM-riscv-dts-thead-add-xtheadvector-to-the-th1.patch -0026-UPSTREAM-riscv-dts-thead-add-ziccrse-for-th1520.patch -0027-UPSTREAM-riscv-dts-thead-add-zfh-for-th1520.patch -0028-UPSTREAM-riscv-dts-thead-Add-PWM-controller-node.patch -0029-UPSTREAM-riscv-dts-thead-Add-PWM-fan-and-thermal-con.patch -0030-UPSTREAM-dt-bindings-vendor-prefixes-Add-UltraRISC.patch -0031-UPSTREAM-dt-bindings-interrupt-controller-Add-UltraR.patch -0032-UPSTREAM-irqchip-sifive-plic-Cache-the-interrupt-ena.patch -0033-UPSTREAM-irqchip-sifive-plic-Add-support-for-UltraRI.patch -0034-UPSTREAM-riscv-cpu_ops_sbi-smp_processor_id-returns-.patch -0035-UPSTREAM-spi-dt-bindings-fsl-qspi-support-SpacemiT-K.patch -0036-UPSTREAM-spi-dt-bindings-fsl-qspi-add-optional-reset.patch -0037-UPSTREAM-spi-fsl-qspi-add-optional-reset-support.patch -0038-UPSTREAM-spi-fsl-qspi-switch-predicates-to-bool.patch -0039-UPSTREAM-spi-fsl-qspi-add-a-clock-disable-quirk.patch -0040-UPSTREAM-spi-fsl-qspi-introduce-sfa_size-devtype-dat.patch -0041-UPSTREAM-spi-fsl-qspi-support-the-SpacemiT-K1-SoC.patch -0042-UPSTREAM-dt-bindings-pci-spacemit-Introduce-PCIe-hos.patch -0043-UPSTREAM-PCI-spacemit-Add-SpacemiT-PCIe-host-driver.patch -0044-UPSTREAM-ASoC-dt-bindings-Add-bindings-for-SpacemiT-.patch -0045-UPSTREAM-ASoC-spacemit-add-i2s-support-for-K1-SoC.patch -0046-UPSTREAM-riscv-dts-spacemit-add-UART-pinctrl-combina.patch -0047-UPSTREAM-riscv-dts-spacemit-enable-the-i2c8-adapter.patch -0048-UPSTREAM-riscv-dts-spacemit-define-fixed-regulators.patch -0049-UPSTREAM-riscv-dts-spacemit-define-regulator-constra.patch -0050-UPSTREAM-riscv-dts-spacemit-enable-the-i2c2-adapter-.patch -0051-UPSTREAM-riscv-dts-spacemit-add-24c02-eeprom-on-BPI-.patch -0052-UPSTREAM-riscv-dts-spacemit-add-i2c-aliases-on-BPI-F.patch -0053-UPSTREAM-riscv-dts-spacemit-add-Ethernet-and-PDMA-to.patch -0054-UPSTREAM-riscv-dts-spacemit-add-MusePi-Pro-board-dev.patch -0055-UPSTREAM-riscv-dts-spacemit-enable-K1-SoC-QSPI-on-BP.patch -0056-UPSTREAM-riscv-dts-spacemit-Add-OrangePi-R2S-board-d.patch -0057-UPSTREAM-riscv-dts-spacemit-reorder-i2c2-node.patch -0058-UPSTREAM-riscv-dts-spacemit-define-all-missing-I2C-c.patch -0059-UPSTREAM-rtc-spacemit-MFD_SPACEMIT_P1-as-dependencie.patch -0060-UPSTREAM-mfd-simple-mfd-i2c-Remove-select-I2C_K1-fro.patch -0061-UPSTREAM-driver-reset-spacemit-p1-add-driver-for-pow.patch -0062-UPSTREAM-riscv-remove-irqflags.h-inclusion-in-asm-bi.patch -0063-UPSTREAM-riscv-atomic.h-use-RISCV_FULL_BARRIER-in-_a.patch -0064-UPSTREAM-drm-dumb-buffers-Sanitize-output-on-errors.patch -0065-UPSTREAM-drm-dumb-buffers-Provide-helper-to-set-pitc.patch -0066-UPSTREAM-drm-vblank-Add-vblank-timer.patch -0067-UPSTREAM-drm-vblank-Add-CRTC-helpers-for-simple-use-.patch -0068-UPSTREAM-drm-vkms-Convert-to-DRM-s-vblank-timer.patch -0069-UPSTREAM-drm-hypervdrm-Use-vblank-timer.patch -0070-UPSTREAM-PCI-MSI-Convert-the-boolean-no_64bit_msi-fl.patch -0071-UPSTREAM-PCI-MSI-Check-the-device-specific-address-m.patch -0072-UPSTREAM-drm-radeon-Make-MSI-address-limit-based-on-.patch -0073-UPSTREAM-ALSA-hda-intel-Make-MSI-address-limit-based.patch -0074-UPSTREAM-riscv-dts-sophgo-enable-hardware-clock-RTC-.patch -0075-UPSTREAM-riscv-dts-sophgo-Move-PLIC-and-CLINT-node-i.patch -0076-UPSTREAM-riscv-dts-sophgo-fix-the-node-order-of-SG20.patch -0077-UPSTREAM-riscv-dts-spacemit-Enable-i2c8-adapter-for-.patch -0078-UPSTREAM-riscv-dts-spacemit-Define-fixed-regulators-.patch -0079-UPSTREAM-riscv-dts-spacemit-Define-the-P1-PMIC-regul.patch -0080-UPSTREAM-dt-bindings-phy-spacemit-Add-SpacemiT-PCIe-.patch -0081-UPSTREAM-dt-bindings-phy-spacemit-Introduce-PCIe-PHY.patch -0082-UPSTREAM-phy-spacemit-Introduce-PCIe-combo-PHY.patch -0083-UPSTREAM-riscv-dts-spacemit-Add-a-PCIe-regulator.patch -0084-UPSTREAM-riscv-dts-spacemit-PCIe-and-PHY-related-upd.patch -0085-UPSTREAM-dt-bindings-i2c-spacemit-add-optional-reset.patch -0086-UPSTREAM-i2c-k1-add-reset-support.patch -0087-UPSTREAM-riscv-dts-spacemit-add-reset-property.patch -0088-UPSTREAM-dt-bindings-phy-spacemit-add-K1-USB2-PHY.patch -0089-UPSTREAM-phy-spacemit-support-K1-USB2.0-PHY-controll.patch -0090-UPSTREAM-riscv-dts-spacemit-Add-USB2-PHY-node-for-K1.patch -0091-UPSTREAM-riscv-dts-spacemit-Add-DWC3-USB-3.0-control.patch -0092-UPSTREAM-riscv-dts-spacemit-Enable-USB3.0-on-BananaP.patch -0093-UPSTREAM-dt-bindings-pinctrl-spacemit-convert-drive-.patch -0094-UPSTREAM-dt-bindings-pinctrl-spacemit-add-K3-SoC-sup.patch -0095-UPSTREAM-pinctrl-spacemit-k3-add-initial-pin-support.patch -0096-UPSTREAM-pinctrl-spacemit-k3-adjust-drive-strength-a.patch -0097-UPSTREAM-dt-bindings-pinctrl-spacemit-add-syscon-pro.patch -0098-UPSTREAM-pinctrl-spacemit-support-I-O-power-domain-c.patch -0099-UPSTREAM-riscv-dts-spacemit-pinctrl-update-register-.patch -0100-UPSTREAM-dt-bindings-riscv-update-ratified-version-o.patch -0101-UPSTREAM-dt-bindings-riscv-Add-B-ISA-extension-descr.patch -0102-UPSTREAM-dt-bindings-riscv-Add-descriptions-for-Za64.patch -0103-UPSTREAM-dt-bindings-riscv-Add-Ssccptr-Sscounterenw-.patch -0104-UPSTREAM-dt-bindings-riscv-Add-Sha-and-its-comprised.patch -0105-UPSTREAM-riscv-dts-sophgo-sg2044-Add-b-ISA-extension.patch -0106-UPSTREAM-riscv-dts-spacemit-k1-Add-b-ISA-extension.patch -0107-UPSTREAM-dt-bindings-riscv-add-SpacemiT-X100-CPU-com.patch -0108-UPSTREAM-dt-bindings-timer-add-SpacemiT-K3-CLINT.patch -0109-UPSTREAM-dt-bindings-interrupt-controller-add-Spacem.patch -0110-UPSTREAM-dt-bindings-interrupt-controller-add-Spacem.patch -0111-UPSTREAM-dt-bindings-riscv-spacemit-add-K3-and-Pico-.patch -0112-UPSTREAM-riscv-dts-spacemit-add-initial-support-for-.patch -0113-UPSTREAM-riscv-dts-spacemit-add-K3-Pico-ITX-board-su.patch -0114-UPSTREAM-clk-spacemit-Hide-common-clock-driver-from-.patch -0115-UPSTREAM-clk-spacemit-prepare-common-ccu-header.patch -0116-UPSTREAM-clk-spacemit-extract-common-ccu-functions.patch -0117-UPSTREAM-clk-spacemit-add-platform-SoC-prefix-to-res.patch -0118-UPSTREAM-reset-spacemit-fix-auxiliary-device-id.patch -0119-UPSTREAM-dt-bindings-soc-spacemit-k3-add-clock-suppo.patch -0120-UPSTREAM-clk-spacemit-ccu_mix-add-inverted-enable-ga.patch -0121-UPSTREAM-clk-spacemit-ccu_pll-add-plla-type-clock.patch -0122-UPSTREAM-clk-spacemit-k3-extract-common-header.patch -0123-UPSTREAM-clk-spacemit-k3-add-the-clock-tree.patch -0124-UPSTREAM-dt-bindings-soc-spacemit-Add-K3-reset-suppo.patch -0125-UPSTREAM-reset-Create-subdirectory-for-SpacemiT-driv.patch -0126-UPSTREAM-reset-spacemit-Extract-common-K1-reset-code.patch -0127-UPSTREAM-reset-spacemit-Add-SpacemiT-K3-reset-driver.patch -0128-UPSTREAM-dt-bindings-gpio-spacemit-add-compatible-na.patch -0129-UPSTREAM-gpio-spacemit-Add-GPIO-support-for-K3-SoC.patch -0130-UPSTREAM-riscv-dts-spacemit-Disable-ETH-PHY-sleep-mo.patch -0131-UPSTREAM-dt-bindings-clock-thead-th1520-clk-ap-Add-I.patch -0132-UPSTREAM-clk-thead-th1520-ap-Add-C910-bus-clock.patch -0133-UPSTREAM-clk-thead-th1520-ap-Support-setting-PLL-rat.patch -0134-UPSTREAM-clk-thead-th1520-ap-Add-macro-to-define-mul.patch -0135-UPSTREAM-clk-thead-th1520-ap-Support-CPU-frequency-s.patch -0136-UPSTREAM-net-spacemit-display-phy-driver-information.patch -0137-UPSTREAM-gpio-spacemit-k1-Use-PDR-for-pin-direction-.patch -0138-UPSTREAM-phy-Kconfig-spacemit-add-COMMON_CLK-depende.patch -0139-UPSTREAM-mfd-Kconfig-Default-MFD_SPACEMIT_P1-to-m-if.patch -0140-UPSTREAM-riscv-dts-spacemit-sdhci-add-reset-support.patch -0141-UPSTREAM-irqchip-sifive-plic-Fix-call-to-__plic_togg.patch -0142-UPSTREAM-dt-bindings-interrupt-controller-sifive-pli.patch -0143-UPSTREAM-irqchip-sifive-plic-Handle-number-of-hardwa.patch -0144-UPSTREAM-PCI-dwc-Use-multiple-iATU-windows-for-mappi.patch -0145-UPSTREAM-pinctrl-th1520-Fix-typo.patch -0146-UPSTREAM-PCI-cadence-Add-module-support-for-platform.patch -0147-UPSTREAM-PCI-cadence-Split-PCIe-controller-header-fi.patch -0148-UPSTREAM-PCI-cadence-Move-PCIe-RP-common-functions-t.patch -0149-UPSTREAM-PCI-cadence-Add-support-for-High-Perf-Archi.patch -0150-UPSTREAM-net-stmmac-imx-use-phylink-s-interface-mode.patch -0151-UPSTREAM-net-stmmac-s32-move-PHY_INTF_SEL_x-definiti.patch -0152-UPSTREAM-net-stmmac-add-phy_intf_sel-and-ACTPHYIF-de.patch -0153-UPSTREAM-net-stmmac-add-stmmac_get_phy_intf_sel.patch -0154-UPSTREAM-net-stmmac-add-support-for-configuring-the-.patch -0155-UPSTREAM-net-stmmac-imx-convert-to-PHY_INTF_SEL_xxx.patch -0156-UPSTREAM-net-stmmac-imx-use-FIELD_PREP-FIELD_GET-for.patch -0157-UPSTREAM-net-stmmac-imx-use-stmmac_get_phy_intf_sel.patch -0158-UPSTREAM-net-stmmac-imx-simplify-set_intf_mode-imple.patch -0159-UPSTREAM-net-stmmac-imx-cleanup-arguments-for-set_in.patch -0160-UPSTREAM-net-stmmac-imx-use-set_phy_intf_sel.patch -0161-UPSTREAM-powerpc-pci-Initialize-msi_addr_mask-for-OF.patch -0162-UPSTREAM-sparc-PCI-Initialize-msi_addr_mask-for-OF-c.patch -0163-UPSTREAM-syscore-Pass-context-data-to-callbacks.patch -0164-UPSTREAM-irqchip-riscv-aplic-Preserve-APLIC-states-a.patch -0165-UPSTREAM-irqchip-riscv-aplic-Do-not-clear-ACPI-depen.patch -0166-UPSTREAM-irqchip-riscv-aplic-Register-syscore-operat.patch -0167-UPSTREAM-dt-bindings-usb-add-missed-compatible-strin.patch -0168-UPSTREAM-usb-dwc3-Add-software-managed-properties-fo.patch -0169-UPSTREAM-usb-dwc3-dwc3-generic-plat-Add-layerscape-d.patch -0170-UPSTREAM-dt-bindings-usb-Add-ESWIN-EIC7700-USB-contr.patch -0171-UPSTREAM-usb-dwc3-eic7700-Add-EIC7700-USB-driver.patch -0172-UPSTREAM-phy-k1-usb-add-disconnect-function-support.patch -0173-UPSTREAM-PCI-Add-ASPEED-vendor-ID-to-pci_ids.h.patch -0174-UPSTREAM-PCI-Add-PCI_BRIDGE_NO_ALIAS-quirk-for-ASPEE.patch -0175-UPSTREAM-riscv-patch-Avoid-early-phys_to_page.patch -0176-UPSTREAM-PCI-dwc-Fail-dw_pcie_host_init-if-dw_pcie_w.patch -0177-UPSTREAM-reset-spacemit-k3-Decouple-composite-reset-.patch -0178-UPSTREAM-rust-clk-implement-Send-and-Sync.patch -0179-UPSTREAM-tyr-remove-impl-Send-Sync-for-TyrData.patch -0180-UPSTREAM-pwm-th1520-fix-CLIPPY-1-warning.patch -0181-UPSTREAM-pwm-th1520-remove-impl-Send-Sync-for-Th1520.patch -0182-UPSTREAM-net-spacemit-Remove-unused-buff_addr-fields.patch -0183-UPSTREAM-dt-bindings-net-Add-support-for-Spacemit-K3.patch -0184-UPSTREAM-net-stmmac-platform-Add-snps-dwmac-5.40a-IP.patch -0185-UPSTREAM-net-stmmac-Add-glue-layer-for-Spacemit-K3-S.patch -0186-UPSTREAM-drm-imagination-Improve-handling-of-unknown.patch -0187-UPSTREAM-drm-imagination-Mark-FWCCB_CMD_UPDATE_STATS.patch -0188-UPSTREAM-drm-imagination-Improve-firmware-power-off-.patch -0189-UPSTREAM-drm-imagination-Skip-2nd-thread-DM-associat.patch -0190-UPSTREAM-drm-imagination-Add-missing-rogue-context-r.patch -0191-UPSTREAM-drm-imagination-Implement-handling-of-conte.patch -0192-UPSTREAM-dt-bindings-vendor-prefixes-add-verisilicon.patch -0193-UPSTREAM-dt-bindings-display-add-verisilicon-dc.patch -0194-UPSTREAM-drm-verisilicon-add-a-driver-for-Verisilico.patch -0195-UPSTREAM-dt-bindings-display-bridge-add-binding-for-.patch -0196-UPSTREAM-drm-bridge-add-a-driver-for-T-Head-TH1520-H.patch -0197-UPSTREAM-dt-bindings-mfd-spacemit-p1-Add-individual-.patch -0198-UPSTREAM-regulator-spacemit-p1-Update-supply-names.patch -0199-UPSTREAM-mmc-sdhci-of-k1-add-reset-support.patch -0200-UPSTREAM-dt-bindings-mmc-spacemit-sdhci-add-support-.patch -0201-UPSTREAM-mmc-sdhci-of-k1-spacemit-Add-support-for-K3.patch -0202-UPSTREAM-PCI-cadence-Add-flags-for-disabling-ASPM-ca.patch -0203-UPSTREAM-PCI-sg2042-Avoid-L0s-and-L1-on-Sophgo-2042-.patch -0204-UPSTREAM-dt-bindings-hwmon-moortec-mr75203-adapt-mul.patch -0205-UPSTREAM-drm-imagination-Disable-interrupts-before-s.patch -0206-UPSTREAM-riscv-dts-thead-add-DPU-and-HDMI-device-tre.patch -0207-UPSTREAM-riscv-dts-thead-lichee-pi-4a-enable-HDMI.patch -0208-UPSTREAM-riscv-dts-thead-th1520-add-coefficients-to-.patch -0209-UPSTREAM-riscv-dts-thead-beaglev-ahead-enable-HDMI-o.patch -0210-UPSTREAM-i2c-spacemit-move-i2c_xfer_msg.patch -0211-UPSTREAM-i2c-spacemit-introduce-pio-for-k1.patch -0212-UPSTREAM-pinctrl-spacemit-return-ENOTSUPP-for-unsupp.patch -0213-UPSTREAM-gpio-spacemit-k1-Add-set_config-callback-su.patch -0214-UPSTREAM-riscv-dts-spacemit-pcie-fix-missing-power-r.patch -0215-UPSTREAM-riscv-dts-spacemit-Update-PMIC-supply-prope.patch -0216-UPSTREAM-riscv-dts-spacemit-adapt-regulator-node-nam.patch -0217-UPSTREAM-riscv-dts-spacemit-Add-linux-pci-domain-to-.patch -0218-UPSTREAM-dt-bindings-serial-8250-spacemit-fix-clock-.patch -0219-UPSTREAM-riscv-dts-spacemit-k3-add-clock-tree.patch -0220-UPSTREAM-riscv-dts-spacemit-k3-add-pinctrl-support.patch -0221-UPSTREAM-riscv-dts-spacemit-k3-add-GPIO-support.patch -0222-UPSTREAM-riscv-dts-spacemit-k3-add-full-resource-to-.patch -0223-UPSTREAM-dt-bindings-usb-dwc3-spacemit-add-support-f.patch -0224-UPSTREAM-usb-dwc3-dwc3-generic-plat-spacemit-add-sup.patch -0225-UPSTREAM-usb-dwc3-Add-optional-VBUS-regulator-suppor.patch -0226-UPSTREAM-riscv-dts-spacemit-reorder-phy-nodes-for-K1.patch -0227-UPSTREAM-riscv-dts-spacemit-drop-incorrect-pinctrl-f.patch -0228-UPSTREAM-riscv-dts-spacemit-Add-ethernet-device-for-.patch -0229-UPSTREAM-riscv-dts-spacemit-add-LEDs-for-Milk-V-Jupi.patch -0230-UPSTREAM-riscv-dts-spacemit-add-24c04-eeprom-on-Milk.patch -0231-UPSTREAM-riscv-dts-spacemit-add-i2c-aliases-on-Milk-.patch -0232-UPSTREAM-riscv-dts-spacemit-enable-QSPI-and-add-SPI-.patch -0233-UPSTREAM-riscv-dts-spacemit-enable-USB-3-ports-on-Mi.patch -0234-UPSTREAM-riscv-dts-spacemit-enable-PCIe-ports-on-Mil.patch -0235-UPSTREAM-dt-bindings-i2c-spacemit-k3-Add-compatible.patch -0236-UPSTREAM-dts-riscv-spacemit-k3-Add-i2c-nodes.patch -0237-UPSTREAM-dts-riscv-spacemit-k3-add-P1-PMIC-regulator.patch -0238-UPSTREAM-perf-symbol-Add-RISCV-case-in-get_plt_sizes.patch -0239-UPSTREAM-riscv-Simplify-assignment-for-UTS_MACHINE.patch -0240-UPSTREAM-riscv-increase-COMMAND_LINE_SIZE-value-to-2.patch -0241-UPSTREAM-riscv-acpi-update-FADT-revision-check-to-6..patch -0242-UPSTREAM-riscv-mm-WARN_ON-for-bad-addresses-in-vmemm.patch -0243-UPSTREAM-riscv-enable-HAVE_IOREMAP_PROT.patch -0244-UPSTREAM-string-provide-strends.patch -0245-UPSTREAM-lib-string_kunit-add-correctness-test-for-s.patch -0246-UPSTREAM-lib-string_kunit-add-correctness-test-for-s.patch -0247-UPSTREAM-lib-string_kunit-add-correctness-test-for-s.patch -0248-UPSTREAM-lib-string_kunit-add-performance-benchmark-.patch -0249-UPSTREAM-lib-string_kunit-extend-benchmarks-to-strnl.patch -0250-UPSTREAM-riscv-lib-add-strnlen-implementation.patch -0251-UPSTREAM-riscv-lib-add-strchr-implementation.patch -0252-UPSTREAM-riscv-lib-add-strrchr-implementation.patch -0253-UPSTREAM-PCI-dwc-Add-register-and-bitfield-definitio.patch -0254-UPSTREAM-ASoC-spacemit-move-hw-constraints-from-hw_p.patch -0255-UPSTREAM-ASoC-spacemit-adjust-FIFO-trigger-threshold.patch -0256-UPSTREAM-dt-bindings-reset-thead-th1520-reset-Remove.patch -0257-UPSTREAM-dt-bindings-reset-thead-th1520-reset-Add-co.patch -0258-UPSTREAM-reset-th1520-Prepare-for-supporting-multipl.patch -0259-UPSTREAM-reset-th1520-Support-reset-controllers-in-m.patch -0260-UPSTREAM-riscv-dts-thead-Add-reset-controllers-of-mo.patch -0261-UPSTREAM-clk-spacemit-k3-mark-top_dclk-as-CLK_IS_CRI.patch -0262-UPSTREAM-ASoC-spacemit-fix-RX-DMA-params-not-set-whe.patch -0263-UPSTREAM-i2c-spacemit-drop-useless-spaces.patch -0264-UPSTREAM-clk-at91-pmc-undef-field_-get-prep-before-d.patch -0265-UPSTREAM-crypto-qat-undef-field_get-before-local-def.patch -0266-UPSTREAM-EDAC-ie31200-undef-field_get-before-local-d.patch -0267-UPSTREAM-gpio-aspeed-undef-field_-get-prep-before-lo.patch -0268-UPSTREAM-iio-dac-ad3530r-undef-field_prep-before-loc.patch -0269-UPSTREAM-iio-mlx90614-undef-field_-get-prep-before-l.patch -0270-UPSTREAM-pinctrl-ma35-undef-field_-get-prep-before-l.patch -0271-UPSTREAM-soc-renesas-rz-sysc-undef-field_get-before-.patch -0272-UPSTREAM-ALSA-usb-audio-undef-field_-get-prep-before.patch -0273-UPSTREAM-bitfield-Add-less-checking-__FIELD_-GET-PRE.patch -0274-UPSTREAM-bitfield-Add-non-constant-field_-prep-get-h.patch -0275-UPSTREAM-clk-at91-Convert-to-common-field_-get-prep-.patch -0276-UPSTREAM-crypto-qat-convert-to-common-field_get-help.patch -0277-UPSTREAM-EDAC-ie31200-Convert-to-common-field_get-he.patch -0278-UPSTREAM-gpio-aspeed-Convert-to-common-field_-get-pr.patch -0279-UPSTREAM-iio-dac-Convert-to-common-field_prep-helper.patch -0280-UPSTREAM-iio-mlx90614-Convert-to-common-field_-get-p.patch -0281-UPSTREAM-pinctrl-ma35-Convert-to-common-field_-get-p.patch -0282-UPSTREAM-soc-renesas-rz-sysc-Convert-to-common-field.patch -0283-UPSTREAM-ALSA-usb-audio-Convert-to-common-field_-get.patch -0284-UPSTREAM-clk-renesas-Use-bitfield-helpers.patch -0285-UPSTREAM-soc-renesas-Use-bitfield-helpers.patch -0286-UPSTREAM-dt-bindings-usb-Add-support-for-Terminus-FE.patch -0287-UPSTREAM-usb-misc-onboard_usb_dev-Add-Terminus-FE1.1.patch -0288-UPSTREAM-riscv-Define-__riscv_copy_-vec_-words-bytes.patch -0289-UPSTREAM-riscv-mm-Fixup-no5lvl-failure-when-vaddr-is.patch -0290-UPSTREAM-spi-dt-bindings-fsl-qspi-support-SpacemiT-K.patch -0291-UPSTREAM-RISC-V-KVM-Fix-NULL-pointer-dereference-in-.patch -0292-FROMGIT-drm-imagination-Count-paired-job-fence-as-de.patch -0293-FROMGIT-drm-imagination-Fit-paired-fragment-job-in-t.patch -0294-FROMGIT-drm-imagination-Skip-check-on-paired-job-fen.patch -0295-FROMGIT-drm-imagination-Rename-pvr_queue_fence_is_uf.patch -0296-FROMGIT-drm-imagination-Rename-fence-returned-by-pvr.patch -0297-FROMGIT-drm-imagination-Move-repeated-job-fence-chec.patch -0298-FROMGIT-drm-imagination-Update-check-to-skip-prepare.patch -0299-FROMGIT-drm-imagination-Minor-improvements-to-job-su.patch -0300-FROMGIT-perf-riscv-Fix-discarded-const-qualifier-in-.patch -0301-FROMLIST-riscv-errata-Add-ERRATA_THEAD_WRITE_ONCE-fi.patch -0302-FROMLIST-PCI-Add-per-device-flag-to-disable-native-P.patch -0303-FROMLIST-PCI-Add-quirk-to-disable-PCIe-port-services.patch -0304-FROMLIST-PCI-Release-BAR0-of-an-integrated-bridge-to.patch -0305-BACKPORT-FROMLIST-drm-ttm-save-the-device-s-DMA-cohe.patch -0306-BACKPORT-FROMLIST-drm-ttm-downgrade-cached-to-write_.patch -0307-FROMLIST-NFU-riscv-dts-thead-Add-CPU-clock-and-OPP-t.patch -0308-FROMLIST-rust-export-BINDGEN_TARGET-from-a-separate-.patch -0309-FROMLIST-rust-generate-a-fatal-error-if-BINDGEN_TARG.patch -0310-FROMLIST-rust-add-a-Kconfig-function-to-test-for-sup.patch -0311-FROMLIST-RISC-V-handle-extension-configs-for-bindgen.patch -0312-FROMLIST-dt-bindings-mmc-spacemit-sdhci-add-reset-su.patch -0313-FROMLIST-mfd-simple-mfd-i2c-add-a-reboot-cell-for-th.patch -0314-FROMLIST-regulator-spacemit-MFD_SPACEMIT_P1-as-depen.patch -0315-FROMLIST-rtc-spacemit-default-module-when-MFD_SPACEM.patch -0316-FROMLIST-spi-dt-bindings-add-SpacemiT-K1-SPI-support.patch -0317-FROMLIST-spi-spacemit-introduce-SpacemiT-K1-SPI-cont.patch -0318-FROMLIST-riscv-dts-spacemit-define-a-SPI-controller-.patch -0319-FROMLIST-dt-bindings-thermal-Add-SpacemiT-K1-thermal.patch -0320-FROMLIST-thermal-spacemit-k1-Add-thermal-sensor-supp.patch -0321-FROMLIST-riscv-dts-spacemit-Add-thermal-sensor-for-K.patch -0322-FROMLIST-net-spacemit-Free-rings-of-memory-after-unm.patch -0323-FROMLIST-riscv-mm-Extract-helper-mark_new_valid_map.patch -0324-FROMLIST-riscv-kfence-Call-mark_new_valid_map-for-kf.patch -0325-FROMLIST-riscv-mm-Rename-new_vmalloc-into-new_valid_.patch -0326-FROMLIST-riscv-mm-Use-the-bitmap-API-for-new_valid_m.patch -0327-FROMLIST-riscv-mm-Unconditionally-sfence.vma-for-spu.patch -0328-FROMLIST-dt-bindings-phy-spacemit-k3-add-USB2-PHY-su.patch -0329-FROMLIST-phy-k1-usb-k3-add-USB2-PHY-support.patch -0330-FROMLIST-cpufreq-dt-platdev-Add-SpacemiT-K1-SoC-to-t.patch -0331-FROMLIST-riscv-dts-spacemit-Add-cpu-scaling-for-K1-S.patch -0332-FROMLIST-riscv-mm-Define-DIRECT_MAP_PHYSMEM_END.patch -0333-FROMLIST-drm-verisilicon-add-max-cursor-size-to-HWDB.patch -0334-FROMLIST-drm-verisilicon-add-support-for-cursor-plan.patch -0335-FROMLIST-riscv-add-UltraRISC-SoC-family-Kconfig-supp.patch -0336-FROMLIST-dt-bindings-PCI-Add-UltraRISC-DP1000-PCIe-c.patch -0337-FROMLIST-PCI-ultrarisc-Add-UltraRISC-DP1000-PCIe-Roo.patch -0338-FROMLIST-serial-8250_dwlib-move-DesignWare-register-.patch -0339-FROMLIST-serial-8250_dw-build-Renesas-RZN1-CPR-value.patch -0340-FROMLIST-dt-bindings-serial-snps-dw-apb-uart-Add-Ult.patch -0341-FROMLIST-serial-8250_dw-Use-a-fixed-CPR-value-for-Ul.patch -0342-FROMLIST-riscv-disable-local-interrupts-and-stop-oth.patch -0343-FROMLIST-drm-bridge-th1520-dw-hdmi-Fix-error-check-o.patch -0344-FROMLIST-drm-bridge-th1520-dw-hdmi-Fix-remove-callba.patch -0345-FROMLIST-riscv-dts-spacemit-Enable-i2c8-adapter-for-.patch -0346-FROMLIST-riscv-dts-spacemit-Define-the-P1-PMIC-regul.patch -0347-FROMLIST-riscv-dts-spacemit-Enable-USB3.0-PCIe-on-Or.patch -0348-FROMLIST-dt-bindings-dmaengine-Add-SpacemiT-K3-DMA-c.patch -0349-FROMLIST-dmaengine-mmp_pdma-refactor-DRCMR-access-wi.patch -0350-FROMLIST-dmaengine-mmp_pdma-add-SpacemiT-K3-support.patch -0351-FROMLIST-riscv-dts-spacemit-Add-PDMA-controller-node.patch -0352-FROMLIST-dt-bindings-pci-sophgo-Add-dma-coherent-pro.patch -0353-FROMLIST-riscv-dts-sophgo-Add-dma-coherent-to-SG2042.patch -0354-FROMLIST-riscv-mm-fix-SWIOTLB-initialization-for-sys.patch -0355-FROMLIST-riscv-dts-spacemit-k1-bananapi-f3-Add-vcc5v.patch -0356-FROMLIST-riscv-dts-spacemit-k1-bananapi-f3-Update-US.patch -0357-FROMLIST-riscv-dts-spacemit-k1-bananapi-f3-Correct-U.patch -0358-FROMLIST-riscv-dts-sophgo-sg2044-use-hex-for-CPU-uni.patch -0359-FROMLIST-riscv-dts-sophgo-sg2042-use-hex-for-CPU-uni.patch -0360-FROMLIST-riscv-Fix-fast_unaligned_access_speed_key-n.patch -0361-FROMLIST-riscv-dts-sophgo-reduce-SG2042-MSI-count-to.patch -0362-FROMLIST-dt-bindings-pwm-marvell-pxa-pwm-Add-Spacemi.patch -0363-FROMLIST-pwm-pxa-Add-optional-bus-clock.patch -0364-FROMLIST-riscv-ftrace-select-HAVE_BUILDTIME_MCOUNT_S.patch -0365-FROMLIST-riscv-dts-spacemit-enable-USB3-on-OrangePi-.patch -0366-FROMLIST-dts-riscv-spacemit-correct-32k-clock-freque.patch -0367-FROMLIST-ASoC-dt-bindings-add-SpacemiT-K3-SoC-compat.patch -0368-FROMLIST-ASoC-spacemit-add-K3-SoC-support-with-addit.patch -0369-FROMLIST-ASoC-soc-dai-add-shared-BCLK-clock-for-cros.patch -0370-FROMLIST-ASoC-soc-pcm-constrain-hw_params-when-DAIs-.patch -0371-FROMLIST-ASoC-spacemit-declare-shared-BCLK-for-cross.patch -0372-FROMLIST-spi-spacemit-add-u64-cast-to-NSEC_PER_SEC-t.patch -0373-FROMLIST-dt-bindings-clock-thead-add-TH1520-MISC-sub.patch -0374-FROMLIST-clk-thead-th1520-ap-add-support-for-MISC-su.patch -0375-FROMLIST-riscv-dts-thead-add-device-tree-node-for-MI.patch -0376-FROMLIST-dt-bindings-phy-add-binding-for-T-Head-TH15.patch -0377-FROMLIST-phy-add-a-driver-for-T-Head-TH1520-USB-PHY.patch -0378-FROMLIST-riscv-dts-thead-add-device-nodes-for-USB.patch -0379-FROMLIST-dt-bindings-gpio-dwapb-allow-GPIO-hogs.patch -0380-FROMLIST-dt-bindings-usb-vialab-vl817-allow-ports-pr.patch -0381-FROMLIST-riscv-dts-thead-lpi4a-sort-nodes.patch -0382-FROMLIST-riscv-dts-thead-Add-TH1520-I2C-nodes.patch -0383-FROMLIST-riscv-dts-thead-Add-Lichee-Pi-4A-IO-expansi.patch -0384-FROMLIST-riscv-dts-thead-enable-USB3-ports-on-Lichee.patch -0385-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-add-PMIC-a.patch -0386-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-add-24c04-.patch -0387-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-enable-QSP.patch -0388-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-enable-USB.patch -0389-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-enable-PCI.patch -0390-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-set-defaul.patch -0391-FROMLIST-riscv-dts-spacemit-k3-Add-pwm-support.patch -0392-FROMLIST-riscv-use-sysfs_emit-in-cpu_show_ghostwrite.patch -0393-FROMLIST-clk-spacemit-k3-Switch-to-pll2_d6-as-parent.patch -0394-FROMLIST-clk-spacemit-k3-Fix-PCIe-clock-register-off.patch -0395-FROMLIST-dt-bindings-soc-spacemit-k3-Add-PCIe-DBI-cl.patch -0396-FROMLIST-clk-spacemit-k3-Add-PCIe-DBI-clock.patch -0397-FROMLIST-riscv-dts-spacemit-enable-eMMC-for-OrangePi.patch -0398-FROMLIST-i2c-spacemit-configure-ILCR-IWCR-for-accura.patch -0399-FROMLIST-i2c-spacemit-drop-warning-when-clock-freque.patch -0400-FROMLIST-dt-bindings-mmc-spacemit-sdhci-add-pinctrl-.patch -0401-FROMLIST-mmc-sdhci-of-k1-enable-essential-clock-infr.patch -0402-FROMLIST-mmc-sdhci-of-k1-add-regulator-and-pinctrl-v.patch -0403-FROMLIST-mmc-sdhci-of-k1-add-comprehensive-SDR-tunin.patch -0404-FROMLIST-riscv-dts-spacemit-k1-add-SD-card-controlle.patch -0405-FROMLIST-riscv-dts-spacemit-k1-orangepi-rv2-add-SD-c.patch -0406-FROMLIST-riscv-dts-spacemit-k1-bananapi-f3-add-SD-ca.patch -0407-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-add-SD-car.patch -0408-FROMLIST-riscv-dts-thead-Enable-wifi-on-the-BeagleV-.patch -0409-FROMLIST-riscv-module-Use-generic-cmp_int-instead-of.patch -0410-FROMLIST-riscv-propagate-insert_resource-result-from.patch -0411-FROMLIST-PCI-spacemit-k1-Add-device-data-support.patch -0412-FROMLIST-PCI-spacemit-k1-Add-multiple-PHY-handles-su.patch -0413-FROMLIST-dt-bindings-PCI-snps-dw-pcie-Add-msi-parent.patch -0414-FROMLIST-dt-bindings-PCI-spacemit-Introduce-Spacemit.patch -0415-FROMLIST-PCI-spacemit-k1-Add-Spacemit-K3-PCIe-host-c.patch -0416-FROMLIST-riscv-dts-spacemit-enable-QSPI-for-OrangePi.patch -0417-FROMLIST-clk-spacemit-k3-fix-USB2-bus-clock.patch -0418-FROMLIST-reset-spacemit-k3-fix-USB2-ahb-reset.patch -0419-FROMLIST-dts-riscv-spacemit-k3-Fix-I-O-power-setting.patch -0420-FROMLIST-riscv-dts-spacemit-set-console-baud-rate-on.patch -0421-FROMLIST-riscv-dts-spacemit-sort-aliases-on-Milk-V-J.patch -0422-FROMLIST-riscv-dts-spacemit-enable-eMMC-on-Milk-V-Ju.patch -0423-FROMLIST-riscv-dts-spacemit-enable-SD-card-support-o.patch -0424-FROMLIST-riscv-dts-spacemit-fix-uboot-partition-offs.patch -0425-FROMLIST-riscv-dts-spacemit-add-QSPI-support-for-K3-.patch -0426-FROMLIST-pinctrl-spacemit-fix-NULL-check-in-spacemit.patch -0427-FROMLIST-riscv-unconditionally-select-ARCH_KEEP_MEMB.patch -0428-FROMLIST-riscv-kexec_file-Constrain-segment-placemen.patch -0429-FROMLIST-dt-bindings-riscv-spacemit-Add-K3-CoM260-IF.patch -0430-FROMLIST-riscv-dts-spacemit-k3-Initial-support-for-C.patch -0431-FROMLIST-riscv-dts-spacemit-enable-PMIC-on-OrangePi-.patch -0432-FROMLIST-riscv-dts-spacemit-set-console-baud-rate-on.patch -0433-FROMLIST-riscv-mm-Call-mark_new_valid_map-after-hotp.patch -0434-XUANTIE-riscv-dts-th1520-add-licheepi4a-16g-support.patch -0435-REVYOS-riscv-dts-th1520-rename-thead-to-xuantie.patch -0436-REVYOS-riscv-dts-th1520-add-xuantie-th1520-mbox-r.patch -0437-SOPHGO-dt-bindings-nvmem-Add-SG2044-eFuse-controller.patch -0438-SOPHGO-nvmem-Add-Sophgo-SG2044-eFuse-driver.patch -0439-SOPHGO-riscv-dts-sophgo-sg2044-Add-eFUSE-device.patch -0440-SOPHGO-dts-sg2044-Modify-pcie-bar-address.patch -0441-SOPHGO-riscv-sg2042-errata-Replace-thead-cache-clean.patch -0442-REVYSR-dt-bindings-net-ultrarisc-dp1000-gmac-Add-sup.patch -0443-REVYSR-net-stmmac-add-support-for-dwmac-5.10a.patch -0444-RVCK-riscv-dts-add-dp1000.dts-for-UltraRIsc-DP1000-S.patch -0445-RVCK-pinctrl-add-pinctrl-dirver-for-UltraRisc-DP1000.patch -0446-RVCK-dts-add-pinctrl-dtsi-dts-for-UltraRisc-DP1000.patch -0447-RVCK-riscv-dp1000-dts-add-the-dts-of-UltraRISC-dp100.patch -0448-RVCK-riscv-dp1000-dts-Move-mmc0-node-from-SoC-to-boa.patch -0449-RVCK-riscv-dp1000-plic-add-plic-early-init-supports.patch -0450-RVCK-riscv-dp1000-dts-Move-chosen-node-from-common-t.patch -0451-RVCK-dts-riscv-ultrarisc-Refactor-DP1000-device-tree.patch -0452-RVCK-riscv-pinctrl-ultrarisc-Implement-pin-configura.patch -0453-RVCK-riscv-dts-dp1000-add-dts-dtsi-for-Milk-V-Titan-.patch -0454-REVYSR-pinctrl-ultrarisc-cleanup-probe-remove.patch -0455-REVYSR-riscv-dp1000-dts-use-ultrarisc-dp1000-pcie-fo.patch -0456-ULTRARISC-hwmon-add-corepvt-driver-of-UltraRISC-DP10.patch -0457-RUYI-SYNC-riscv-dts-dp1000-Update-dp1000.dtsi.patch -0458-RUYI-riscv-dts-spacemit-k3-Add-USB2.0-support.patch -0459-SPACEMIT-riscv-uaccess-don-t-use-vector-if-buffer-is.patch -0460-RUYI-dt-bindings-phy-Add-Spacemit-K3-USB3-PCIe-comb-.patch -0461-RUYI-phy-spacemit-Add-USB3-PCIe-comb-PHY-driver-for-.patch -0462-RUYI-riscv-dts-spacemit-k3-add-USB-controller-and-US.patch -0463-RUYI-riscv-dts-spacemit-k3-Add-PCIe-device-node.patch -0464-RUYI-PCI-add-SpacemiT-vendor-id-and-its-K3-device-id.patch -0465-RUYI-wifi-rtw89-pci-add-SpacemiT-K3-to-36-bit-DMA-al.patch -0466-RUYI-drm-amdgpu-disable-dynamic-PCIe-speed-switch-on.patch -0467-RVCK-driver-clk-k3-keep-some-system-based-clock-alwa.patch -0001-XIANGSHAN-Flush-all-tlb-in-set_pte.patch -0002-XIANGSHAN-Add-two-sbi-calls.patch -0003-XIANGSHAN-Add-workaround-to-retry-when-access-fault.patch -0001-RUYI-mmc-sdhci-of-dwcmshc-Add-support-for-SG2042-FPG.patch +%include %{SOURCE2} %description This is a meta-package that installs the core kernel image and modules. diff --git a/SPECS/linux-lts-kmhv2/series b/SPECS/linux-lts-kmhv2/series new file mode 100644 index 0000000000..356e712fb0 --- /dev/null +++ b/SPECS/linux-lts-kmhv2/series @@ -0,0 +1,475 @@ +0001-UPSTREAM-drm-ttm-add-pgprot-handling-for-RISC-V.patch +0002-UPSTREAM-riscv-sophgo-dts-add-PCIe-controllers-for-S.patch +0003-UPSTREAM-riscv-sophgo-dts-enable-PCIe-for-PioneerBox.patch +0004-UPSTREAM-riscv-sophgo-dts-enable-PCIe-for-SG2042_EVB.patch +0005-UPSTREAM-riscv-sophgo-dts-enable-PCIe-for-SG2042_EVB.patch +0006-UPSTREAM-riscv-dts-sophgo-Add-SPI-NOR-node-for-SG204.patch +0007-UPSTREAM-riscv-dts-sophgo-Enable-SPI-NOR-node-for-Pi.patch +0008-UPSTREAM-riscv-dts-sophgo-Enable-SPI-NOR-node-for-SG.patch +0009-UPSTREAM-riscv-dts-sophgo-Enable-SPI-NOR-node-for-SG.patch +0010-UPSTREAM-dt-bindings-net-sophgo-sg2044-dwmac-add-phy.patch +0011-UPSTREAM-perf-vendor-events-riscv-add-T-HEAD-C920V2-.patch +0012-UPSTREAM-rust-macros-Add-support-for-imports_ns-to-m.patch +0013-UPSTREAM-pwm-Export-pwmchip_release-for-external-use.patch +0014-UPSTREAM-rust-pwm-Add-Kconfig-and-basic-data-structu.patch +0015-UPSTREAM-rust-pwm-Add-complete-abstraction-layer.patch +0016-UPSTREAM-rust-pwm-Add-module_pwm_platform_driver-mac.patch +0017-UPSTREAM-rust-pwm-Drop-wrapping-of-PWM-polarity-and-.patch +0018-UPSTREAM-rust-pwm-Fix-broken-intra-doc-link.patch +0019-UPSTREAM-pwm-Add-Rust-driver-for-T-HEAD-TH1520-SoC.patch +0020-UPSTREAM-dt-bindings-pwm-thead-Add-T-HEAD-TH1520-PWM.patch +0021-UPSTREAM-pwm-Fix-Rust-formatting.patch +0022-UPSTREAM-pwm-th1520-Fix-clippy-warning-for-redundant.patch +0023-UPSTREAM-pwm-th1520-Use-module_pwm_platform_driver-m.patch +0024-UPSTREAM-pwm-th1520-Fix-missing-Kconfig-dependencies.patch +0025-UPSTREAM-riscv-dts-thead-add-xtheadvector-to-the-th1.patch +0026-UPSTREAM-riscv-dts-thead-add-ziccrse-for-th1520.patch +0027-UPSTREAM-riscv-dts-thead-add-zfh-for-th1520.patch +0028-UPSTREAM-riscv-dts-thead-Add-PWM-controller-node.patch +0029-UPSTREAM-riscv-dts-thead-Add-PWM-fan-and-thermal-con.patch +0030-UPSTREAM-dt-bindings-vendor-prefixes-Add-UltraRISC.patch +0031-UPSTREAM-dt-bindings-interrupt-controller-Add-UltraR.patch +0032-UPSTREAM-irqchip-sifive-plic-Cache-the-interrupt-ena.patch +0033-UPSTREAM-irqchip-sifive-plic-Add-support-for-UltraRI.patch +0034-UPSTREAM-riscv-cpu_ops_sbi-smp_processor_id-returns-.patch +0035-UPSTREAM-spi-dt-bindings-fsl-qspi-support-SpacemiT-K.patch +0036-UPSTREAM-spi-dt-bindings-fsl-qspi-add-optional-reset.patch +0037-UPSTREAM-spi-fsl-qspi-add-optional-reset-support.patch +0038-UPSTREAM-spi-fsl-qspi-switch-predicates-to-bool.patch +0039-UPSTREAM-spi-fsl-qspi-add-a-clock-disable-quirk.patch +0040-UPSTREAM-spi-fsl-qspi-introduce-sfa_size-devtype-dat.patch +0041-UPSTREAM-spi-fsl-qspi-support-the-SpacemiT-K1-SoC.patch +0042-UPSTREAM-dt-bindings-pci-spacemit-Introduce-PCIe-hos.patch +0043-UPSTREAM-PCI-spacemit-Add-SpacemiT-PCIe-host-driver.patch +0044-UPSTREAM-ASoC-dt-bindings-Add-bindings-for-SpacemiT-.patch +0045-UPSTREAM-ASoC-spacemit-add-i2s-support-for-K1-SoC.patch +0046-UPSTREAM-riscv-dts-spacemit-add-UART-pinctrl-combina.patch +0047-UPSTREAM-riscv-dts-spacemit-enable-the-i2c8-adapter.patch +0048-UPSTREAM-riscv-dts-spacemit-define-fixed-regulators.patch +0049-UPSTREAM-riscv-dts-spacemit-define-regulator-constra.patch +0050-UPSTREAM-riscv-dts-spacemit-enable-the-i2c2-adapter-.patch +0051-UPSTREAM-riscv-dts-spacemit-add-24c02-eeprom-on-BPI-.patch +0052-UPSTREAM-riscv-dts-spacemit-add-i2c-aliases-on-BPI-F.patch +0053-UPSTREAM-riscv-dts-spacemit-add-Ethernet-and-PDMA-to.patch +0054-UPSTREAM-riscv-dts-spacemit-add-MusePi-Pro-board-dev.patch +0055-UPSTREAM-riscv-dts-spacemit-enable-K1-SoC-QSPI-on-BP.patch +0056-UPSTREAM-riscv-dts-spacemit-Add-OrangePi-R2S-board-d.patch +0057-UPSTREAM-riscv-dts-spacemit-reorder-i2c2-node.patch +0058-UPSTREAM-riscv-dts-spacemit-define-all-missing-I2C-c.patch +0059-UPSTREAM-rtc-spacemit-MFD_SPACEMIT_P1-as-dependencie.patch +0060-UPSTREAM-mfd-simple-mfd-i2c-Remove-select-I2C_K1-fro.patch +0061-UPSTREAM-driver-reset-spacemit-p1-add-driver-for-pow.patch +0062-UPSTREAM-riscv-remove-irqflags.h-inclusion-in-asm-bi.patch +0063-UPSTREAM-riscv-atomic.h-use-RISCV_FULL_BARRIER-in-_a.patch +0064-UPSTREAM-drm-dumb-buffers-Sanitize-output-on-errors.patch +0065-UPSTREAM-drm-dumb-buffers-Provide-helper-to-set-pitc.patch +0066-UPSTREAM-drm-hypervdrm-Use-vblank-timer.patch +0067-UPSTREAM-PCI-MSI-Convert-the-boolean-no_64bit_msi-fl.patch +0068-UPSTREAM-PCI-MSI-Check-the-device-specific-address-m.patch +0069-UPSTREAM-drm-radeon-Make-MSI-address-limit-based-on-.patch +0070-UPSTREAM-ALSA-hda-intel-Make-MSI-address-limit-based.patch +0071-UPSTREAM-riscv-dts-sophgo-enable-hardware-clock-RTC-.patch +0072-UPSTREAM-riscv-dts-sophgo-Move-PLIC-and-CLINT-node-i.patch +0073-UPSTREAM-riscv-dts-sophgo-fix-the-node-order-of-SG20.patch +0074-UPSTREAM-riscv-dts-spacemit-Enable-i2c8-adapter-for-.patch +0075-UPSTREAM-riscv-dts-spacemit-Define-fixed-regulators-.patch +0076-UPSTREAM-riscv-dts-spacemit-Define-the-P1-PMIC-regul.patch +0077-UPSTREAM-dt-bindings-phy-spacemit-Add-SpacemiT-PCIe-.patch +0078-UPSTREAM-dt-bindings-phy-spacemit-Introduce-PCIe-PHY.patch +0079-UPSTREAM-phy-spacemit-Introduce-PCIe-combo-PHY.patch +0080-UPSTREAM-riscv-dts-spacemit-Add-a-PCIe-regulator.patch +0081-UPSTREAM-riscv-dts-spacemit-PCIe-and-PHY-related-upd.patch +0082-UPSTREAM-dt-bindings-i2c-spacemit-add-optional-reset.patch +0083-UPSTREAM-i2c-k1-add-reset-support.patch +0084-UPSTREAM-riscv-dts-spacemit-add-reset-property.patch +0085-UPSTREAM-dt-bindings-phy-spacemit-add-K1-USB2-PHY.patch +0086-UPSTREAM-phy-spacemit-support-K1-USB2.0-PHY-controll.patch +0087-UPSTREAM-riscv-dts-spacemit-Add-USB2-PHY-node-for-K1.patch +0088-UPSTREAM-riscv-dts-spacemit-Add-DWC3-USB-3.0-control.patch +0089-UPSTREAM-riscv-dts-spacemit-Enable-USB3.0-on-BananaP.patch +0090-UPSTREAM-dt-bindings-pinctrl-spacemit-convert-drive-.patch +0091-UPSTREAM-dt-bindings-pinctrl-spacemit-add-K3-SoC-sup.patch +0092-UPSTREAM-pinctrl-spacemit-k3-add-initial-pin-support.patch +0093-UPSTREAM-pinctrl-spacemit-k3-adjust-drive-strength-a.patch +0094-UPSTREAM-dt-bindings-pinctrl-spacemit-add-syscon-pro.patch +0095-UPSTREAM-pinctrl-spacemit-support-I-O-power-domain-c.patch +0096-UPSTREAM-riscv-dts-spacemit-pinctrl-update-register-.patch +0097-UPSTREAM-dt-bindings-riscv-update-ratified-version-o.patch +0098-UPSTREAM-dt-bindings-riscv-Add-B-ISA-extension-descr.patch +0099-UPSTREAM-dt-bindings-riscv-Add-descriptions-for-Za64.patch +0100-UPSTREAM-dt-bindings-riscv-Add-Ssccptr-Sscounterenw-.patch +0101-UPSTREAM-dt-bindings-riscv-Add-Sha-and-its-comprised.patch +0102-UPSTREAM-riscv-dts-sophgo-sg2044-Add-b-ISA-extension.patch +0103-UPSTREAM-riscv-dts-spacemit-k1-Add-b-ISA-extension.patch +0104-UPSTREAM-dt-bindings-riscv-add-SpacemiT-X100-CPU-com.patch +0105-UPSTREAM-dt-bindings-timer-add-SpacemiT-K3-CLINT.patch +0106-UPSTREAM-dt-bindings-interrupt-controller-add-Spacem.patch +0107-UPSTREAM-dt-bindings-interrupt-controller-add-Spacem.patch +0108-UPSTREAM-dt-bindings-riscv-spacemit-add-K3-and-Pico-.patch +0109-UPSTREAM-riscv-dts-spacemit-add-initial-support-for-.patch +0110-UPSTREAM-riscv-dts-spacemit-add-K3-Pico-ITX-board-su.patch +0111-UPSTREAM-clk-spacemit-Hide-common-clock-driver-from-.patch +0112-UPSTREAM-clk-spacemit-prepare-common-ccu-header.patch +0113-UPSTREAM-clk-spacemit-extract-common-ccu-functions.patch +0114-UPSTREAM-clk-spacemit-add-platform-SoC-prefix-to-res.patch +0115-UPSTREAM-reset-spacemit-fix-auxiliary-device-id.patch +0116-UPSTREAM-dt-bindings-soc-spacemit-k3-add-clock-suppo.patch +0117-UPSTREAM-clk-spacemit-ccu_mix-add-inverted-enable-ga.patch +0118-UPSTREAM-clk-spacemit-ccu_pll-add-plla-type-clock.patch +0119-UPSTREAM-clk-spacemit-k3-extract-common-header.patch +0120-UPSTREAM-clk-spacemit-k3-add-the-clock-tree.patch +0121-UPSTREAM-dt-bindings-soc-spacemit-Add-K3-reset-suppo.patch +0122-UPSTREAM-reset-Create-subdirectory-for-SpacemiT-driv.patch +0123-UPSTREAM-reset-spacemit-Extract-common-K1-reset-code.patch +0124-UPSTREAM-reset-spacemit-Add-SpacemiT-K3-reset-driver.patch +0125-UPSTREAM-dt-bindings-gpio-spacemit-add-compatible-na.patch +0126-UPSTREAM-gpio-spacemit-Add-GPIO-support-for-K3-SoC.patch +0127-UPSTREAM-riscv-dts-spacemit-Disable-ETH-PHY-sleep-mo.patch +0128-UPSTREAM-dt-bindings-clock-thead-th1520-clk-ap-Add-I.patch +0129-UPSTREAM-clk-thead-th1520-ap-Add-C910-bus-clock.patch +0130-UPSTREAM-clk-thead-th1520-ap-Support-setting-PLL-rat.patch +0131-UPSTREAM-clk-thead-th1520-ap-Add-macro-to-define-mul.patch +0132-UPSTREAM-clk-thead-th1520-ap-Support-CPU-frequency-s.patch +0133-UPSTREAM-net-spacemit-display-phy-driver-information.patch +0134-UPSTREAM-gpio-spacemit-k1-Use-PDR-for-pin-direction-.patch +0135-UPSTREAM-phy-Kconfig-spacemit-add-COMMON_CLK-depende.patch +0136-UPSTREAM-mfd-Kconfig-Default-MFD_SPACEMIT_P1-to-m-if.patch +0137-UPSTREAM-riscv-dts-spacemit-sdhci-add-reset-support.patch +0138-UPSTREAM-irqchip-sifive-plic-Fix-call-to-__plic_togg.patch +0139-UPSTREAM-dt-bindings-interrupt-controller-sifive-pli.patch +0140-UPSTREAM-irqchip-sifive-plic-Handle-number-of-hardwa.patch +0141-UPSTREAM-PCI-dwc-Use-multiple-iATU-windows-for-mappi.patch +0142-UPSTREAM-pinctrl-th1520-Fix-typo.patch +0143-UPSTREAM-PCI-cadence-Add-module-support-for-platform.patch +0144-UPSTREAM-PCI-cadence-Split-PCIe-controller-header-fi.patch +0145-UPSTREAM-PCI-cadence-Move-PCIe-RP-common-functions-t.patch +0146-UPSTREAM-PCI-cadence-Add-support-for-High-Perf-Archi.patch +0147-UPSTREAM-net-stmmac-imx-use-phylink-s-interface-mode.patch +0148-UPSTREAM-net-stmmac-s32-move-PHY_INTF_SEL_x-definiti.patch +0149-UPSTREAM-net-stmmac-add-phy_intf_sel-and-ACTPHYIF-de.patch +0150-UPSTREAM-net-stmmac-add-stmmac_get_phy_intf_sel.patch +0151-UPSTREAM-net-stmmac-add-support-for-configuring-the-.patch +0152-UPSTREAM-net-stmmac-imx-convert-to-PHY_INTF_SEL_xxx.patch +0153-UPSTREAM-net-stmmac-imx-use-FIELD_PREP-FIELD_GET-for.patch +0154-UPSTREAM-net-stmmac-imx-use-stmmac_get_phy_intf_sel.patch +0155-UPSTREAM-net-stmmac-imx-simplify-set_intf_mode-imple.patch +0156-UPSTREAM-net-stmmac-imx-cleanup-arguments-for-set_in.patch +0157-UPSTREAM-net-stmmac-imx-use-set_phy_intf_sel.patch +0158-UPSTREAM-powerpc-pci-Initialize-msi_addr_mask-for-OF.patch +0159-UPSTREAM-sparc-PCI-Initialize-msi_addr_mask-for-OF-c.patch +0160-UPSTREAM-syscore-Pass-context-data-to-callbacks.patch +0161-UPSTREAM-irqchip-riscv-aplic-Preserve-APLIC-states-a.patch +0162-UPSTREAM-irqchip-riscv-aplic-Do-not-clear-ACPI-depen.patch +0163-UPSTREAM-irqchip-riscv-aplic-Register-syscore-operat.patch +0164-UPSTREAM-dt-bindings-usb-add-missed-compatible-strin.patch +0165-UPSTREAM-usb-dwc3-Add-software-managed-properties-fo.patch +0166-UPSTREAM-usb-dwc3-dwc3-generic-plat-Add-layerscape-d.patch +0167-UPSTREAM-dt-bindings-usb-Add-ESWIN-EIC7700-USB-contr.patch +0168-UPSTREAM-usb-dwc3-eic7700-Add-EIC7700-USB-driver.patch +0169-UPSTREAM-phy-k1-usb-add-disconnect-function-support.patch +0170-UPSTREAM-PCI-Add-ASPEED-vendor-ID-to-pci_ids.h.patch +0171-UPSTREAM-PCI-Add-PCI_BRIDGE_NO_ALIAS-quirk-for-ASPEE.patch +0172-UPSTREAM-riscv-patch-Avoid-early-phys_to_page.patch +0173-UPSTREAM-PCI-dwc-Fail-dw_pcie_host_init-if-dw_pcie_w.patch +0174-UPSTREAM-reset-spacemit-k3-Decouple-composite-reset-.patch +0175-UPSTREAM-rust-clk-implement-Send-and-Sync.patch +0176-UPSTREAM-tyr-remove-impl-Send-Sync-for-TyrData.patch +0177-UPSTREAM-pwm-th1520-fix-CLIPPY-1-warning.patch +0178-UPSTREAM-pwm-th1520-remove-impl-Send-Sync-for-Th1520.patch +0179-UPSTREAM-net-spacemit-Remove-unused-buff_addr-fields.patch +0180-UPSTREAM-dt-bindings-net-Add-support-for-Spacemit-K3.patch +0181-UPSTREAM-net-stmmac-platform-Add-snps-dwmac-5.40a-IP.patch +0182-UPSTREAM-net-stmmac-Add-glue-layer-for-Spacemit-K3-S.patch +0183-UPSTREAM-drm-imagination-Improve-handling-of-unknown.patch +0184-UPSTREAM-drm-imagination-Mark-FWCCB_CMD_UPDATE_STATS.patch +0185-UPSTREAM-drm-imagination-Improve-firmware-power-off-.patch +0186-UPSTREAM-drm-imagination-Skip-2nd-thread-DM-associat.patch +0187-UPSTREAM-drm-imagination-Add-missing-rogue-context-r.patch +0188-UPSTREAM-drm-imagination-Implement-handling-of-conte.patch +0189-UPSTREAM-dt-bindings-vendor-prefixes-add-verisilicon.patch +0190-UPSTREAM-dt-bindings-display-add-verisilicon-dc.patch +0191-UPSTREAM-drm-verisilicon-add-a-driver-for-Verisilico.patch +0192-UPSTREAM-dt-bindings-display-bridge-add-binding-for-.patch +0193-UPSTREAM-drm-bridge-add-a-driver-for-T-Head-TH1520-H.patch +0194-UPSTREAM-dt-bindings-mfd-spacemit-p1-Add-individual-.patch +0195-UPSTREAM-regulator-spacemit-p1-Update-supply-names.patch +0196-UPSTREAM-mmc-sdhci-of-k1-add-reset-support.patch +0197-UPSTREAM-dt-bindings-mmc-spacemit-sdhci-add-support-.patch +0198-UPSTREAM-mmc-sdhci-of-k1-spacemit-Add-support-for-K3.patch +0199-UPSTREAM-PCI-cadence-Add-flags-for-disabling-ASPM-ca.patch +0200-UPSTREAM-PCI-sg2042-Avoid-L0s-and-L1-on-Sophgo-2042-.patch +0201-UPSTREAM-dt-bindings-hwmon-moortec-mr75203-adapt-mul.patch +0202-UPSTREAM-drm-imagination-Disable-interrupts-before-s.patch +0203-UPSTREAM-riscv-dts-thead-add-DPU-and-HDMI-device-tre.patch +0204-UPSTREAM-riscv-dts-thead-lichee-pi-4a-enable-HDMI.patch +0205-UPSTREAM-riscv-dts-thead-th1520-add-coefficients-to-.patch +0206-UPSTREAM-riscv-dts-thead-beaglev-ahead-enable-HDMI-o.patch +0207-UPSTREAM-i2c-spacemit-move-i2c_xfer_msg.patch +0208-UPSTREAM-i2c-spacemit-introduce-pio-for-k1.patch +0209-UPSTREAM-pinctrl-spacemit-return-ENOTSUPP-for-unsupp.patch +0210-UPSTREAM-gpio-spacemit-k1-Add-set_config-callback-su.patch +0211-UPSTREAM-riscv-dts-spacemit-pcie-fix-missing-power-r.patch +0212-UPSTREAM-riscv-dts-spacemit-Update-PMIC-supply-prope.patch +0213-UPSTREAM-riscv-dts-spacemit-adapt-regulator-node-nam.patch +0214-UPSTREAM-riscv-dts-spacemit-Add-linux-pci-domain-to-.patch +0215-UPSTREAM-dt-bindings-serial-8250-spacemit-fix-clock-.patch +0216-UPSTREAM-riscv-dts-spacemit-k3-add-clock-tree.patch +0217-UPSTREAM-riscv-dts-spacemit-k3-add-pinctrl-support.patch +0218-UPSTREAM-riscv-dts-spacemit-k3-add-GPIO-support.patch +0219-UPSTREAM-riscv-dts-spacemit-k3-add-full-resource-to-.patch +0220-UPSTREAM-dt-bindings-usb-dwc3-spacemit-add-support-f.patch +0221-UPSTREAM-usb-dwc3-dwc3-generic-plat-spacemit-add-sup.patch +0222-UPSTREAM-usb-dwc3-Add-optional-VBUS-regulator-suppor.patch +0223-UPSTREAM-riscv-dts-spacemit-reorder-phy-nodes-for-K1.patch +0224-UPSTREAM-riscv-dts-spacemit-drop-incorrect-pinctrl-f.patch +0225-UPSTREAM-riscv-dts-spacemit-Add-ethernet-device-for-.patch +0226-UPSTREAM-riscv-dts-spacemit-add-LEDs-for-Milk-V-Jupi.patch +0227-UPSTREAM-riscv-dts-spacemit-add-24c04-eeprom-on-Milk.patch +0228-UPSTREAM-riscv-dts-spacemit-add-i2c-aliases-on-Milk-.patch +0229-UPSTREAM-riscv-dts-spacemit-enable-QSPI-and-add-SPI-.patch +0230-UPSTREAM-riscv-dts-spacemit-enable-USB-3-ports-on-Mi.patch +0231-UPSTREAM-riscv-dts-spacemit-enable-PCIe-ports-on-Mil.patch +0232-UPSTREAM-dt-bindings-i2c-spacemit-k3-Add-compatible.patch +0233-UPSTREAM-dts-riscv-spacemit-k3-Add-i2c-nodes.patch +0234-UPSTREAM-dts-riscv-spacemit-k3-add-P1-PMIC-regulator.patch +0235-UPSTREAM-perf-symbol-Add-RISCV-case-in-get_plt_sizes.patch +0236-UPSTREAM-riscv-Simplify-assignment-for-UTS_MACHINE.patch +0237-UPSTREAM-riscv-increase-COMMAND_LINE_SIZE-value-to-2.patch +0238-UPSTREAM-riscv-acpi-update-FADT-revision-check-to-6..patch +0239-UPSTREAM-riscv-mm-WARN_ON-for-bad-addresses-in-vmemm.patch +0240-UPSTREAM-riscv-enable-HAVE_IOREMAP_PROT.patch +0241-UPSTREAM-string-provide-strends.patch +0242-UPSTREAM-lib-string_kunit-add-correctness-test-for-s.patch +0243-UPSTREAM-lib-string_kunit-add-correctness-test-for-s.patch +0244-UPSTREAM-lib-string_kunit-add-correctness-test-for-s.patch +0245-UPSTREAM-lib-string_kunit-add-performance-benchmark-.patch +0246-UPSTREAM-lib-string_kunit-extend-benchmarks-to-strnl.patch +0247-UPSTREAM-riscv-lib-add-strnlen-implementation.patch +0248-UPSTREAM-riscv-lib-add-strchr-implementation.patch +0249-UPSTREAM-riscv-lib-add-strrchr-implementation.patch +0250-UPSTREAM-PCI-dwc-Add-register-and-bitfield-definitio.patch +0251-UPSTREAM-ASoC-spacemit-move-hw-constraints-from-hw_p.patch +0252-UPSTREAM-ASoC-spacemit-adjust-FIFO-trigger-threshold.patch +0253-UPSTREAM-dt-bindings-reset-thead-th1520-reset-Remove.patch +0254-UPSTREAM-dt-bindings-reset-thead-th1520-reset-Add-co.patch +0255-UPSTREAM-reset-th1520-Prepare-for-supporting-multipl.patch +0256-UPSTREAM-reset-th1520-Support-reset-controllers-in-m.patch +0257-UPSTREAM-riscv-dts-thead-Add-reset-controllers-of-mo.patch +0258-UPSTREAM-clk-spacemit-k3-mark-top_dclk-as-CLK_IS_CRI.patch +0259-UPSTREAM-ASoC-spacemit-fix-RX-DMA-params-not-set-whe.patch +0260-UPSTREAM-i2c-spacemit-drop-useless-spaces.patch +0261-UPSTREAM-clk-at91-pmc-undef-field_-get-prep-before-d.patch +0262-UPSTREAM-crypto-qat-undef-field_get-before-local-def.patch +0263-UPSTREAM-EDAC-ie31200-undef-field_get-before-local-d.patch +0264-UPSTREAM-gpio-aspeed-undef-field_-get-prep-before-lo.patch +0265-UPSTREAM-iio-dac-ad3530r-undef-field_prep-before-loc.patch +0266-UPSTREAM-iio-mlx90614-undef-field_-get-prep-before-l.patch +0267-UPSTREAM-pinctrl-ma35-undef-field_-get-prep-before-l.patch +0268-UPSTREAM-soc-renesas-rz-sysc-undef-field_get-before-.patch +0269-UPSTREAM-ALSA-usb-audio-undef-field_-get-prep-before.patch +0270-UPSTREAM-bitfield-Add-less-checking-__FIELD_-GET-PRE.patch +0271-UPSTREAM-bitfield-Add-non-constant-field_-prep-get-h.patch +0272-UPSTREAM-clk-at91-Convert-to-common-field_-get-prep-.patch +0273-UPSTREAM-crypto-qat-convert-to-common-field_get-help.patch +0274-UPSTREAM-EDAC-ie31200-Convert-to-common-field_get-he.patch +0275-UPSTREAM-gpio-aspeed-Convert-to-common-field_-get-pr.patch +0276-UPSTREAM-iio-dac-Convert-to-common-field_prep-helper.patch +0277-UPSTREAM-iio-mlx90614-Convert-to-common-field_-get-p.patch +0278-UPSTREAM-pinctrl-ma35-Convert-to-common-field_-get-p.patch +0279-UPSTREAM-soc-renesas-rz-sysc-Convert-to-common-field.patch +0280-UPSTREAM-ALSA-usb-audio-Convert-to-common-field_-get.patch +0281-UPSTREAM-clk-renesas-Use-bitfield-helpers.patch +0282-UPSTREAM-soc-renesas-Use-bitfield-helpers.patch +0283-UPSTREAM-dt-bindings-usb-Add-support-for-Terminus-FE.patch +0284-UPSTREAM-usb-misc-onboard_usb_dev-Add-Terminus-FE1.1.patch +0285-UPSTREAM-riscv-Define-__riscv_copy_-vec_-words-bytes.patch +0286-UPSTREAM-spi-dt-bindings-fsl-qspi-support-SpacemiT-K.patch +0287-UPSTREAM-RISC-V-KVM-Fix-NULL-pointer-dereference-in-.patch +0288-UPSTREAM-dt-bindings-mmc-sdhci-of-dwcmshc-Add-Eswin-.patch +0289-UPSTREAM-mmc-sdhci-of-dwcmshc-Add-support-for-Eswin-.patch +0290-UPSTREAM-mmc-sdhci-of-dwcmshc-Fix-init-for-AXI-clock.patch +0291-UPSTREAM-mmc-sdhci-of-dwcmshc-Fix-DMA-128MB-boundary.patch +0292-FROMGIT-drm-imagination-Count-paired-job-fence-as-de.patch +0293-FROMGIT-drm-imagination-Fit-paired-fragment-job-in-t.patch +0294-FROMGIT-drm-imagination-Skip-check-on-paired-job-fen.patch +0295-FROMGIT-drm-imagination-Rename-pvr_queue_fence_is_uf.patch +0296-FROMGIT-drm-imagination-Rename-fence-returned-by-pvr.patch +0297-FROMGIT-drm-imagination-Move-repeated-job-fence-chec.patch +0298-FROMGIT-drm-imagination-Update-check-to-skip-prepare.patch +0299-FROMGIT-drm-imagination-Minor-improvements-to-job-su.patch +0300-FROMGIT-perf-riscv-Fix-discarded-const-qualifier-in-.patch +0301-FROMLIST-riscv-errata-Add-ERRATA_THEAD_WRITE_ONCE-fi.patch +0302-FROMLIST-PCI-Add-per-device-flag-to-disable-native-P.patch +0303-FROMLIST-PCI-Add-quirk-to-disable-PCIe-port-services.patch +0304-FROMLIST-PCI-Release-BAR0-of-an-integrated-bridge-to.patch +0305-BACKPORT-FROMLIST-drm-ttm-save-the-device-s-DMA-cohe.patch +0306-BACKPORT-FROMLIST-drm-ttm-downgrade-cached-to-write_.patch +0307-FROMLIST-NFU-riscv-dts-thead-Add-CPU-clock-and-OPP-t.patch +0308-FROMLIST-rust-export-BINDGEN_TARGET-from-a-separate-.patch +0309-FROMLIST-rust-generate-a-fatal-error-if-BINDGEN_TARG.patch +0310-FROMLIST-rust-add-a-Kconfig-function-to-test-for-sup.patch +0311-FROMLIST-RISC-V-handle-extension-configs-for-bindgen.patch +0312-FROMLIST-dt-bindings-mmc-spacemit-sdhci-add-reset-su.patch +0313-FROMLIST-mfd-simple-mfd-i2c-add-a-reboot-cell-for-th.patch +0314-FROMLIST-regulator-spacemit-MFD_SPACEMIT_P1-as-depen.patch +0315-FROMLIST-rtc-spacemit-default-module-when-MFD_SPACEM.patch +0316-FROMLIST-spi-dt-bindings-add-SpacemiT-K1-SPI-support.patch +0317-FROMLIST-spi-spacemit-introduce-SpacemiT-K1-SPI-cont.patch +0318-FROMLIST-riscv-dts-spacemit-define-a-SPI-controller-.patch +0319-FROMLIST-dt-bindings-thermal-Add-SpacemiT-K1-thermal.patch +0320-FROMLIST-thermal-spacemit-k1-Add-thermal-sensor-supp.patch +0321-FROMLIST-riscv-dts-spacemit-Add-thermal-sensor-for-K.patch +0322-FROMLIST-net-spacemit-Free-rings-of-memory-after-unm.patch +0323-FROMLIST-riscv-mm-Extract-helper-mark_new_valid_map.patch +0324-FROMLIST-riscv-kfence-Call-mark_new_valid_map-for-kf.patch +0325-FROMLIST-riscv-mm-Rename-new_vmalloc-into-new_valid_.patch +0326-FROMLIST-riscv-mm-Use-the-bitmap-API-for-new_valid_m.patch +0327-FROMLIST-riscv-mm-Unconditionally-sfence.vma-for-spu.patch +0328-FROMLIST-dt-bindings-phy-spacemit-k3-add-USB2-PHY-su.patch +0329-FROMLIST-phy-k1-usb-k3-add-USB2-PHY-support.patch +0330-FROMLIST-cpufreq-dt-platdev-Add-SpacemiT-K1-SoC-to-t.patch +0331-FROMLIST-riscv-dts-spacemit-Add-cpu-scaling-for-K1-S.patch +0332-FROMLIST-riscv-mm-Define-DIRECT_MAP_PHYSMEM_END.patch +0333-FROMLIST-drm-verisilicon-add-max-cursor-size-to-HWDB.patch +0334-FROMLIST-drm-verisilicon-add-support-for-cursor-plan.patch +0335-FROMLIST-riscv-add-UltraRISC-SoC-family-Kconfig-supp.patch +0336-FROMLIST-dt-bindings-PCI-Add-UltraRISC-DP1000-PCIe-c.patch +0337-FROMLIST-PCI-ultrarisc-Add-UltraRISC-DP1000-PCIe-Roo.patch +0338-FROMLIST-serial-8250_dwlib-move-DesignWare-register-.patch +0339-FROMLIST-serial-8250_dw-build-Renesas-RZN1-CPR-value.patch +0340-FROMLIST-dt-bindings-serial-snps-dw-apb-uart-Add-Ult.patch +0341-FROMLIST-serial-8250_dw-Use-a-fixed-CPR-value-for-Ul.patch +0342-FROMLIST-riscv-disable-local-interrupts-and-stop-oth.patch +0343-FROMLIST-drm-bridge-th1520-dw-hdmi-Fix-error-check-o.patch +0344-FROMLIST-drm-bridge-th1520-dw-hdmi-Fix-remove-callba.patch +0345-FROMLIST-riscv-dts-spacemit-Enable-i2c8-adapter-for-.patch +0346-FROMLIST-riscv-dts-spacemit-Define-the-P1-PMIC-regul.patch +0347-FROMLIST-riscv-dts-spacemit-Enable-USB3.0-PCIe-on-Or.patch +0348-FROMLIST-dt-bindings-dmaengine-Add-SpacemiT-K3-DMA-c.patch +0349-FROMLIST-dmaengine-mmp_pdma-refactor-DRCMR-access-wi.patch +0350-FROMLIST-dmaengine-mmp_pdma-add-SpacemiT-K3-support.patch +0351-FROMLIST-riscv-dts-spacemit-Add-PDMA-controller-node.patch +0352-FROMLIST-dt-bindings-pci-sophgo-Add-dma-coherent-pro.patch +0353-FROMLIST-riscv-dts-sophgo-Add-dma-coherent-to-SG2042.patch +0354-FROMLIST-riscv-mm-fix-SWIOTLB-initialization-for-sys.patch +0355-FROMLIST-riscv-dts-spacemit-k1-bananapi-f3-Add-vcc5v.patch +0356-FROMLIST-riscv-dts-spacemit-k1-bananapi-f3-Update-US.patch +0357-FROMLIST-riscv-dts-spacemit-k1-bananapi-f3-Correct-U.patch +0358-FROMLIST-riscv-dts-sophgo-sg2044-use-hex-for-CPU-uni.patch +0359-FROMLIST-riscv-dts-sophgo-sg2042-use-hex-for-CPU-uni.patch +0360-FROMLIST-riscv-Fix-fast_unaligned_access_speed_key-n.patch +0361-FROMLIST-riscv-dts-sophgo-reduce-SG2042-MSI-count-to.patch +0362-FROMLIST-dt-bindings-pwm-marvell-pxa-pwm-Add-Spacemi.patch +0363-FROMLIST-pwm-pxa-Add-optional-bus-clock.patch +0364-FROMLIST-riscv-ftrace-select-HAVE_BUILDTIME_MCOUNT_S.patch +0365-FROMLIST-riscv-dts-spacemit-enable-USB3-on-OrangePi-.patch +0366-FROMLIST-dts-riscv-spacemit-correct-32k-clock-freque.patch +0367-FROMLIST-ASoC-dt-bindings-add-SpacemiT-K3-SoC-compat.patch +0368-FROMLIST-ASoC-spacemit-add-K3-SoC-support-with-addit.patch +0369-FROMLIST-ASoC-soc-dai-add-shared-BCLK-clock-for-cros.patch +0370-FROMLIST-ASoC-soc-pcm-constrain-hw_params-when-DAIs-.patch +0371-FROMLIST-ASoC-spacemit-declare-shared-BCLK-for-cross.patch +0372-FROMLIST-spi-spacemit-add-u64-cast-to-NSEC_PER_SEC-t.patch +0373-FROMLIST-dt-bindings-clock-thead-add-TH1520-MISC-sub.patch +0374-FROMLIST-clk-thead-th1520-ap-add-support-for-MISC-su.patch +0375-FROMLIST-riscv-dts-thead-add-device-tree-node-for-MI.patch +0376-FROMLIST-dt-bindings-phy-add-binding-for-T-Head-TH15.patch +0377-FROMLIST-phy-add-a-driver-for-T-Head-TH1520-USB-PHY.patch +0378-FROMLIST-riscv-dts-thead-add-device-nodes-for-USB.patch +0379-FROMLIST-dt-bindings-gpio-dwapb-allow-GPIO-hogs.patch +0380-FROMLIST-dt-bindings-usb-vialab-vl817-allow-ports-pr.patch +0381-FROMLIST-riscv-dts-thead-lpi4a-sort-nodes.patch +0382-FROMLIST-riscv-dts-thead-Add-TH1520-I2C-nodes.patch +0383-FROMLIST-riscv-dts-thead-Add-Lichee-Pi-4A-IO-expansi.patch +0384-FROMLIST-riscv-dts-thead-enable-USB3-ports-on-Lichee.patch +0385-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-add-PMIC-a.patch +0386-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-add-24c04-.patch +0387-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-enable-QSP.patch +0388-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-enable-USB.patch +0389-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-enable-PCI.patch +0390-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-set-defaul.patch +0391-FROMLIST-riscv-dts-spacemit-k3-Add-pwm-support.patch +0392-FROMLIST-riscv-use-sysfs_emit-in-cpu_show_ghostwrite.patch +0393-FROMLIST-clk-spacemit-k3-Switch-to-pll2_d6-as-parent.patch +0394-FROMLIST-clk-spacemit-k3-Fix-PCIe-clock-register-off.patch +0395-FROMLIST-dt-bindings-soc-spacemit-k3-Add-PCIe-DBI-cl.patch +0396-FROMLIST-clk-spacemit-k3-Add-PCIe-DBI-clock.patch +0397-FROMLIST-riscv-dts-spacemit-enable-eMMC-for-OrangePi.patch +0398-FROMLIST-i2c-spacemit-configure-ILCR-IWCR-for-accura.patch +0399-FROMLIST-i2c-spacemit-drop-warning-when-clock-freque.patch +0400-FROMLIST-dt-bindings-mmc-spacemit-sdhci-add-pinctrl-.patch +0401-FROMLIST-mmc-sdhci-of-k1-enable-essential-clock-infr.patch +0402-FROMLIST-mmc-sdhci-of-k1-add-regulator-and-pinctrl-v.patch +0403-FROMLIST-mmc-sdhci-of-k1-add-comprehensive-SDR-tunin.patch +0404-FROMLIST-riscv-dts-spacemit-k1-add-SD-card-controlle.patch +0405-FROMLIST-riscv-dts-spacemit-k1-orangepi-rv2-add-SD-c.patch +0406-FROMLIST-riscv-dts-spacemit-k1-bananapi-f3-add-SD-ca.patch +0407-FROMLIST-riscv-dts-spacemit-k1-musepi-pro-add-SD-car.patch +0408-FROMLIST-riscv-dts-thead-Enable-wifi-on-the-BeagleV-.patch +0409-FROMLIST-riscv-module-Use-generic-cmp_int-instead-of.patch +0410-FROMLIST-riscv-propagate-insert_resource-result-from.patch +0411-FROMLIST-PCI-spacemit-k1-Add-device-data-support.patch +0412-FROMLIST-PCI-spacemit-k1-Add-multiple-PHY-handles-su.patch +0413-FROMLIST-dt-bindings-PCI-snps-dw-pcie-Add-msi-parent.patch +0414-FROMLIST-dt-bindings-PCI-spacemit-Introduce-Spacemit.patch +0415-FROMLIST-PCI-spacemit-k1-Add-Spacemit-K3-PCIe-host-c.patch +0416-FROMLIST-riscv-dts-spacemit-enable-QSPI-for-OrangePi.patch +0417-FROMLIST-clk-spacemit-k3-fix-USB2-bus-clock.patch +0418-FROMLIST-reset-spacemit-k3-fix-USB2-ahb-reset.patch +0419-FROMLIST-dts-riscv-spacemit-k3-Fix-I-O-power-setting.patch +0420-FROMLIST-riscv-dts-spacemit-set-console-baud-rate-on.patch +0421-FROMLIST-riscv-dts-spacemit-sort-aliases-on-Milk-V-J.patch +0422-FROMLIST-riscv-dts-spacemit-enable-eMMC-on-Milk-V-Ju.patch +0423-FROMLIST-riscv-dts-spacemit-enable-SD-card-support-o.patch +0424-FROMLIST-riscv-dts-spacemit-fix-uboot-partition-offs.patch +0425-FROMLIST-riscv-dts-spacemit-add-QSPI-support-for-K3-.patch +0426-FROMLIST-pinctrl-spacemit-fix-NULL-check-in-spacemit.patch +0427-FROMLIST-riscv-unconditionally-select-ARCH_KEEP_MEMB.patch +0428-FROMLIST-riscv-kexec_file-Constrain-segment-placemen.patch +0429-FROMLIST-dt-bindings-riscv-spacemit-Add-K3-CoM260-IF.patch +0430-FROMLIST-riscv-dts-spacemit-k3-Initial-support-for-C.patch +0431-FROMLIST-riscv-dts-spacemit-enable-PMIC-on-OrangePi-.patch +0432-FROMLIST-riscv-dts-spacemit-set-console-baud-rate-on.patch +0433-FROMLIST-riscv-mm-Call-mark_new_valid_map-after-hotp.patch +0434-FROMLIST-riscv-dts-spacemit-k3-Add-Ziccrse-extension.patch +0435-FROMLIST-RISC-V-KVM-Enhance-the-logging-check-for-mm.patch +0436-FROMLIST-riscv-dts-spacemit-enable-PCIe-on-OrangePi-.patch +0437-FROMLIST-iommu-riscv-Add-dependency-between-iommu-an.patch +0438-XUANTIE-riscv-dts-th1520-add-licheepi4a-16g-support.patch +0439-REVYOS-riscv-dts-th1520-rename-thead-to-xuantie.patch +0440-REVYOS-riscv-dts-th1520-add-xuantie-th1520-mbox-r.patch +0441-SOPHGO-dt-bindings-nvmem-Add-SG2044-eFuse-controller.patch +0442-SOPHGO-nvmem-Add-Sophgo-SG2044-eFuse-driver.patch +0443-SOPHGO-riscv-dts-sophgo-sg2044-Add-eFUSE-device.patch +0444-SOPHGO-dts-sg2044-Modify-pcie-bar-address.patch +0445-SOPHGO-riscv-sg2042-errata-Replace-thead-cache-clean.patch +0446-REVYSR-dt-bindings-net-ultrarisc-dp1000-gmac-Add-sup.patch +0447-REVYSR-net-stmmac-add-support-for-dwmac-5.10a.patch +0448-RVCK-riscv-dts-add-dp1000.dts-for-UltraRIsc-DP1000-S.patch +0449-RVCK-pinctrl-add-pinctrl-dirver-for-UltraRisc-DP1000.patch +0450-RVCK-dts-add-pinctrl-dtsi-dts-for-UltraRisc-DP1000.patch +0451-RVCK-riscv-dp1000-dts-add-the-dts-of-UltraRISC-dp100.patch +0452-RVCK-riscv-dp1000-dts-Move-mmc0-node-from-SoC-to-boa.patch +0453-RVCK-riscv-dp1000-plic-add-plic-early-init-supports.patch +0454-RVCK-riscv-dp1000-dts-Move-chosen-node-from-common-t.patch +0455-RVCK-dts-riscv-ultrarisc-Refactor-DP1000-device-tree.patch +0456-RVCK-riscv-pinctrl-ultrarisc-Implement-pin-configura.patch +0457-RVCK-riscv-dts-dp1000-add-dts-dtsi-for-Milk-V-Titan-.patch +0458-REVYSR-pinctrl-ultrarisc-cleanup-probe-remove.patch +0459-REVYSR-riscv-dp1000-dts-use-ultrarisc-dp1000-pcie-fo.patch +0460-ULTRARISC-hwmon-add-corepvt-driver-of-UltraRISC-DP10.patch +0461-RUYI-SYNC-riscv-dts-dp1000-Update-dp1000.dtsi.patch +0462-RUYI-riscv-dts-spacemit-k3-Add-USB2.0-support.patch +0463-SPACEMIT-riscv-uaccess-don-t-use-vector-if-buffer-is.patch +0464-RUYI-dt-bindings-phy-Add-Spacemit-K3-USB3-PCIe-comb-.patch +0465-RUYI-phy-spacemit-Add-USB3-PCIe-comb-PHY-driver-for-.patch +0466-RUYI-riscv-dts-spacemit-k3-add-USB-controller-and-US.patch +0467-RUYI-riscv-dts-spacemit-k3-Add-PCIe-device-node.patch +0468-RUYI-PCI-add-SpacemiT-vendor-id-and-its-K3-device-id.patch +0469-RUYI-wifi-rtw89-pci-add-SpacemiT-K3-to-36-bit-DMA-al.patch +0470-RUYI-drm-amdgpu-disable-dynamic-PCIe-speed-switch-on.patch +0471-RVCK-driver-clk-k3-keep-some-system-based-clock-alwa.patch +0472-RUYI-mmc-sdhci-of-dwcmshc-Add-support-for-SG2042-FPG.patch +0001-XIANGSHAN-Flush-all-tlb-in-set_pte.patch +0002-XIANGSHAN-Add-two-sbi-calls.patch +0003-XIANGSHAN-Add-workaround-to-retry-when-access-fault.patch