Jump to content

[Armbian build PR] - update rk35xx legacy kernel to 5.10


Recommended Posts

Posted

Description

Rockchip has released legacy kernel 5.10 supporting rk3568, and friendlyarm has been using it on nanopi5: https://github.com/friendlyarm/kernel-rockchip/tree/nanopi5-v5.10.y_opt/. I did tried the legacy kernel that rk3588 uses on rk3568 board but failed to boot with pcie devices. So although this friendlyarm kernel is mostly the same as the legacy kernel rk3588 uses, it is still the best supported 5.10 kernel for rk3568.

Since we have patch board-rock3a-Add-DT-link-for-backward-compatibility.patch, we can use the default device tree file rockchip/rk3568-rock-3a.dtb same as the edge kernel.

Device tree file is from radxa's legacy 4.19 kernel repo modified with the following patch:

diff --git a/../stable-4.19-rock3/arch/arm64/boot/dts/rockchip/rk3568-rock-3a.dts b/arch/arm64/boot/dts/rockchip/rk3568-rock-3a.dts
index 2287fbfda..07323913b 100644
--- a/../stable-4.19-rock3/arch/arm64/boot/dts/rockchip/rk3568-rock-3a.dts
+++ b/arch/arm64/boot/dts/rockchip/rk3568-rock-3a.dts
@@ -4,6 +4,7 @@
 #include <dt-bindings/pinctrl/rockchip.h>
 #include <dt-bindings/input/rk-input.h>
 #include <dt-bindings/display/drm_mipi_dsi.h>
+#include <dt-bindings/display/rockchip_vop.h>
 #include <dt-bindings/sensor-dev.h>
 #include "rk3568.dtsi"
 #include "rk3568-rock-3a-display.dtsi"
@@ -13,6 +14,11 @@
        model = "Radxa ROCK3 Model A";
        compatible = "radxa,rock3a", "rockchip,rk3568";

+       aliases {
+               mmc0 = &sdmmc0;
+               mmc1 = &sdhci;
+       };
+
        fiq_debugger: fiq-debugger {
                compatible = "rockchip,fiq-debugger";
                rockchip,serial-id = <2>;
@@ -323,6 +329,8 @@
 };

 &gpu {
+       clock-names = "gpu", "bus";
+       interrupt-names = "gpu", "mmu", "job";
        mali-supply = <&vdd_gpu>;
        status = "okay";
 };
@@ -994,12 +1002,12 @@

                soc_slppin_slp: soc_slppin_slp {
                        rockchip,pins =
-                               <0 RK_PA2 RK_FUNC_1 &pcfg_pull_up>;
+                               <0 RK_PA2 1 &pcfg_pull_up>;
                };

                soc_slppin_rst: soc_slppin_rst {
                        rockchip,pins =
-                               <0 RK_PA2 RK_FUNC_2 &pcfg_pull_none>;
+                               <0 RK_PA2 2 &pcfg_pull_none>;
                };
        };

@@ -1051,3 +1059,8 @@
                };
        };
 };
+
+&vp0 {
+       rockchip,plane-mask = <(1 << ROCKCHIP_VOP2_CLUSTER0 | 1 << ROCKCHIP_VOP2_ESMART0)>;
+       rockchip,primary-plane = <ROCKCHIP_VOP2_ESMART0>;
+};

@krachlatte you may refer to this patch to try 5.10 kernel on radxa e25.

Since this is kernel 5.10 we have panfrost driver enabled for mali g52.

How Has This Been Tested?

Please describe the tests that you ran to verify your changes. Please also note any relevant details for your test configuration.

  • [x] Build legacy gnome image for rock-3a successfully.
  • [x] Image boot successfully.

Checklist:

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

View the full article

×
×
  • Create New...

Important Information

Terms of Use - Privacy Policy - Guidelines