* change regulator-min-microvolt to 1.4V
* adapt new voltage regulator values
* revert vdd_arm regulator due to boot time errors
* revert vdd_arm min voltage due to errors
* Generic aic8800-dkms.sh extension
* fix typo in filename
* remove file
Voltages for "gpu_opp_table" and "vdd_arm" were wrongly using default
values instead of the customized values from the vendor image, leading
to dmesg errors like
[ 19.709834] core: _opp_supported_by_regulators: OPP minuV: 1075000 maxuV: 1075000, not supported by regulator
[ 19.710075] lima ff300000.gpu: _opp_add: OPP not supported by regulators (200000000) 0xBEBC200
Thanks to Shadowrom2020 for noticing.
Update the I2S MCLK output gate clock patches to match the upstream v3
series. Changes from previous version:
- Split into 4 patches (was 3): added separate patch for
RK3588_SYSGRF_SOC_CON6 define in rk3588_grf.h
- Use named constant RK3588_SYSGRF_SOC_CON6 instead of magic 0x0318
- Add u-boot patch for clock ID bindings (needed by board DTS files)
6.18 uses kzalloc(sizeof(...)) as kzalloc_obj is not available.
7.0 uses kzalloc_obj as recommended by upstream reviewer.
Upstream: https://lore.kernel.org/linux-rockchip/20260320-rk3588-mclk-gate-grf-v3-0-980338eacd2c@superkali.me/
* Add GPU operating points and modify power controller
Makerbase power control adaptions due to voltage regulator limitations
* Add GPU operating points to rk3328-mkspi.dts
Makerbase power control adaptions due to voltage limitations
* Add GPU operating points to rk3328-mkspi.dts
* Remove unused gpu-opp-table node
* Remove unused gpu-opp-table node
* Remove unused gpu-opp-table node from device tree
* revert changes to kernel 6.12
* Add initial support for Qidi-X boards
* enable uart1 by default
* disable spi for screen and touch
* remove spi0 reference
* fix typo
* add new dts to kernel 7.0
* remove unused leds and unused drive
* fix storage
* disable sound output
* fixes for nitpick comments
* fix default device tree
* fix accidental changes
* changed supported boards comment
> This series fixes ES8388 audio on the Mekotronics R58X-Pro (RK3588).
>
> Without these patches, the i2s0_8ch_mclkout_to_io gate remains closed
> (enable_count=0 in the clk_summary), and the codec receives no master
> clock. DAPM reports all widgets as powered on and playback streams run
> without errors, but the hardware produces no sound — a rather
> frustrating failure mode to debug.
>
> With the series applied and the board DTS updated to reference
> I2S0_8CH_MCLKOUT_TO_IO from the codec node:
>
> es8388: audio-codec@10 {
> compatible = "everest,es8388", "everest,es8328";
> reg = <0x10>;
> clocks = <&cru I2S0_8CH_MCLKOUT_TO_IO>;
> assigned-clocks = <&cru I2S0_8CH_MCLKOUT>;
> assigned-clock-rates = <12288000>;
> ...
> };
>
> audio playback works correctly, tested via headphones output.
>
> Tested-by: Ricardo Pardini <ricardo@pardini.net>
Replace the single combined MCLK gate patch with three separate patches
matching the upstream series submitted to LKML:
1. dt-bindings: add I2S MCLK output to IO clock IDs (722-725)
2. clk: rockchip: allow grf_type_sys lookup in aux_grf_table
3. clk: rockchip: rk3588: add GATE_GRF clocks for I2S MCLK output
Key changes from the previous combined patch:
- Use grf_type_sys instead of grf_type_ioc
- Add all four I2S MCLK output gates (not just I2S0)
- Use GFLAGS macro for consistency
- Place each GATE_GRF after its parent MCLKOUT
- No subscope in init function
6.18 uses kzalloc(sizeof(...)) as kzalloc_obj is not available.
7.0 uses kzalloc_obj as recommended by upstream reviewer.
Upstream: https://lore.kernel.org/linux-rockchip/20260316-rk3588-mclk-gate-grf-v1-0-66fb9a246718@superkali.me/
Update patch 1004 to also fix compilation issues in dwmac-phytium.c:
- Make dwmac_phytium_get_resources() static to resolve missing prototype warning
- Remove invalid stmmac_res->lpi_irq = -ENOENT assignment (member doesn't exist)
The patch now fixes all compilation issues across both files:
- stmmac_platform.c: fw_get_phy_mode(), stmmac_acpi_clock_setup(), lpi_irq
- dwmac-phytium.c: dwmac_phytium_get_resources(), lpi_irq
All Phytium ethernet driver patches (1000-1004) should now compile cleanly.
Add new patch (1004) to fix compilation warnings and errors in the
Phytium ethernet driver patches for kernel 6.19:
- Make fw_get_phy_mode() static to resolve missing prototype warning
- Make stmmac_acpi_clock_setup() static to resolve missing prototype warning
- Remove invalid stmmac_res->lpi_irq assignment (member doesn't exist)
This patch should be applied after patches 1000-1003 to complete
the Phytium ethernet driver support for kernel 6.19.
* copy old patchset
* bump to 6.19
* megous: replace 6.18 with 6.19 patchset
* drm-sun4i: remove upstreamed patch series
* backports: remove fully upstreamed patches
* uwe5622: fix patch for 6.19
* megi: remove informational patch, confuses patching logic for unknown reason
* megi: disable unneeded patch (again)
* fix various broken patches
* sunxi: rewrite the whole patchset
* sun4i-drm: add patches not upstreamed yet from recent series
* disable broken patch @rvdr
```
[🔨] drivers/pci/pcie-sunxi/pcie-sunxi-rc.c: In function 'sunxi_allocate_msi_domains':
[🔨] drivers/pci/pcie-sunxi/pcie-sunxi-rc.c:198:26: error: implicit declaration of function 'pci_msi_create_irq_domain'; did you mean 'msi_create_irq_domain'? [-Werror=implicit-function-declaration]
[🔨] 198 | pp->msi_domain = pci_msi_create_irq_domain(fwnode, &sunxi_msi_info, pp->irq_domain);
[🔨] | ^~~~~~~~~~~~~~~~~~~~~~~~~
[🔨] | msi_create_irq_domain
```
* same story, disable broken patch
```
[🔨] drivers/iommu/sun55i-iommu.c: In function 'sunxi_iommu_profilling_show':
[🔨] drivers/iommu/sun55i-iommu.c:1110:1: warning: label 'err' defined but not used [-Wunused-label]
[🔨] 1110 | err:
[🔨] | ^~~
[🔨] drivers/iommu/sun55i-iommu.c: At top level:
[🔨] drivers/iommu/sun55i-iommu.c:1379:43: error: initialization of 'int (*)(struct iommu_domain *, struct device *, struct iommu_domain *)' from incompatible pointer type 'int (*)(struct iommu_domain *, struct device *)' [-Werror=incompatible-pointer-types]
[🔨] 1379 | .attach_dev = sun55i_iommu_attach_dev,
[🔨] | ^~~~~~~~~~~~~~~~~~~~~~~
[🔨] drivers/iommu/sun55i-iommu.c:1379:43: note: (near initialization for '(anonymous).attach_dev')
```
* rewrite again
* Update sunxi pci iommu patches and enable them back
* rewrite again
* bump major across branches
closing the circle of life
* Fix compatible string for combophy node in DTS patch
* shift kernel configs and rewrite for 6.19
* force rewrite of left-over combinations
closing the circle
* rewrite patchset against 6.19.4
* fix patch and add missing AC200 stuff again
* sunxi64: add missing kernel options for both current and edge
* sunxi64: rewrite patches against 6.19.6
* sunxi64: rewrite patches against 6.18.16
* sunxi: reorganize AC200 and H618 EMAC patches to apply earlier
- Move AC200 MFD, AC200 Ethernet PHY, and H618 EMAC patches to 0201-0203 series
- Ensures these drivers are available before dependent device tree patches
- Applies to both sunxi-6.18 and sunxi-6.19 kernel series
* sunxi-6.19: disable patch broken in 6.19.7
perhaps megi will find time to fix at some point
* sunxi-6.19: fix broken patch
snd_soc_kcontrol_component() was removed upstream in commit d742ebcfe524.
Use snd_kcontrol_chip() instead, which is the replacement.
* sunxi-6.18: disable broken patch
---------
Co-authored-by: juanesf <juanesf91@gmail.com>
Co-authored-by: Igor Pecovnik <igor@armbian.com>
Add ES8388 codec support via ES8323 driver on I2C7 with:
- Headphones on LOUT2/ROUT2 with jack detection
- Speaker via CS8120 amplifier on LOUT1/ROUT1
- Onboard microphone and microphone jack inputs
- MCLK routed through I2S0_8CH_MCLKOUT_TO_IO gate clock
- Default mixer state via asound.state
- Board config: add current kernel target, update description
On RK3588, the I2S0 MCLK output to the IO pin is gated by
SYS_GRF_SOC_CON6 (offset 0x318, bit 0). Unlike RK3588S where this
gate defaults to open, RK3588 defaults to closed, preventing MCLK
from reaching external audio codecs.
Add a GATE_GRF clock entry (I2S0_8CH_MCLKOUT_TO_IO) following the
pattern established for RK3576 SAI MCLKs using clk-gate-grf.c.
* add: initial support for DG SVR 865 Tiny board (SM8250/QCS8250)
* Board design by dg741a, thanks for the contribution! https://github.com/dg741a
### What does this commit do?
Adds initial support for the DG SVR 865 Tiny board based on the QCS8250 (SM8250)
chipset, enabling Armbian builds with ABL booting support.
### Features:
- ABL booting with GPT partition table
- Supports Debian bookworm/trixie and Ubuntu jammy/noble
- Full firmware inclusion with initrd hooks
- PPA repositories for updated GPU drivers on Ubuntu
### Testing status:
- Verified basic boot on DG SVR 865 Tiny hardware
- Serial console functional at 115200n8
### Notes:
- Suspend functionality not supported by current hardware
* fix: add BOARD_VENDOR for DG SVR 865 Tiny
* configs: add support for Qualcomm QCS8250 (SM8250) board
* config: remove non-specific KDE Plasma packages from dg-svr-865-tiny.conf
* board/dg-svr-865-tiny: drop redundant vulkan packages installation
* board/dg-svr-865-tiny: refactor userspace check with wrapper function (DRY)
Refactor repeated userspace support check into a wrapper function to follow DRY principle.
Rename DTS/DTB files for OrangePi RV2/R2S to match the
filename expected from Linux-7.x upstream. See discussion
on https://github.com/armbian/build/pull/9518
Signed-off-by: Sven-Ola Tuecke <sven-ola@gmx.de>