Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[PROGRESS] Switch to mainline-ish kernel (linux-aarch64-7ji) #19

Closed
7Ji opened this issue Jul 17, 2023 · 4 comments
Closed

[PROGRESS] Switch to mainline-ish kernel (linux-aarch64-7ji) #19

7Ji opened this issue Jul 17, 2023 · 4 comments

Comments

@7Ji
Copy link
Owner

7Ji commented Jul 17, 2023

We're not using official ArchLinux ARM linux-aarch64 kernel because it is lagged behind in versioning (currently 6.2.10) and is broken on Amlogic platform

The linux-aarch64-flippy kernel we're currently using however, is also lagged behind at 6.1.38, and derived a lot from the mainline kernel. The more it derived the harder it is in the future for users to switch back to the untouched mainline kernel.

A new kernel linux-aarch64-7ji is added, using upstream https://github.com/7ji/linux branch amlogic, now at version 6.4.3, with only bare-minimum changes for Amlogic platforms. Most noticable differences are my patches already in flippy kernel, and a few dts ported from flippy kernel.

The two kernels (linux-aarch64-flippy and linux-aarch64-7ji) are both pre-installed in new images now, with -flippy being the default one. I'm not planning to remove flippy kernel soon since there's preciously a lot of nice stuffs for Amlogic platforms.

If, however, any one want to use -7ji kernel, do note there's a few traps:

  • The kernel lacks a l lot of dts from -flippy, you can still use the dts from flippy kernel if you don't uninstall it. The two kernels can co-exist, unlike ArchlinuxARM's official kernels
  • Since the dts are mostly untouched, the mmc device ordering is different, instead of mmc1 being sd card and mmc2 being emmc, it's mmc0 being sd card and mmc1 being emmc. SDIO card uses slot 2 instead of 1. This will bite you if you're using mmcblkXpY as the bootup configuration or mounting configuration.
  • The kernel does not have dtbs for Allwinner or Rockchip platforms pre-built, this is only for Amlogic platforms
@7Ji
Copy link
Owner Author

7Ji commented Jul 18, 2023

I've tested the new kernel (linux-aarch64-7ji, 6.4.3) on my following devices and they're running great:

  • GXBB/S905: Xiaomi Mibox 3/3C (MDZ-16-AA)
  • GXL/S905L: BesTV R3300L
  • GXL/S905X: CumeBox cm2-b
  • G12A/S905L3A: UNIONMAN UNT403A
  • SM1/S905X3: HK1 Box (with JL2101 PHY)
    • Addtionally, the loop network performance (iperf3 -s & iperf3 -c 127.0.0.1) increased from ~6.7Gbps to ~7.4GBps, thanks to my optimized JL2101 driver
  • SM1/S905X3: BananaPi BPi 5

@a520ass
Since you're using the binary mainline kernel from Armbian for the newer kernel, could you share some test results with our new kernel here?

@a520ass
Copy link

a520ass commented Jul 18, 2023

@a520ass Since you're using the binary mainline kernel from Armbian for the newer kernel, could you share some test results with our new kernel here?

需要怎么测试呢,目前我是在用armban的主线内核6.1.30,在archlinux下没什么问题。
我这边有的是S905D、S905L、S905L2B、S905L3、S905L3A

@7Ji
Copy link
Owner Author

7Ji commented Jul 18, 2023

在最新action的build artifact里:

  • *-pkgs.tar 里有linux-aarch64-7ji(-headers) 的两个包,使用pacman -U可以安装
  • *-root.tar 和 *.img 里这两个包已经预装(两个内核共存,但默认配置为启动flippy内核)

启动配置里,内核文件、内存盘文件、DTB文件的路径从-flippy改成-7ji就是用这个内核的全套。缺少DTB文件的情况下可以混用其他内核的DTB。

@7Ji
Copy link
Owner Author

7Ji commented Jul 24, 2023

@a520ass
刚建了个放我打包好的arch包的仓库,可以参考仓库说明添加以后直接pacman -Syu linux-aarch64-7ji来装,以后也能自动升级

https://github.com/7Ji/archrepo

@7Ji 7Ji closed this as not planned Won't fix, can't repro, duplicate, stale Aug 1, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants