-
-
Notifications
You must be signed in to change notification settings - Fork 2.4k
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
RK3588: edge: Bump kernel from v6.11 to v6.12-rc #7372
Conversation
Thanks for the PR. I will check HDMI today. I also agree with you that we need to adjust rng patch. I think we can add it as -v2 driver |
Meta discussion about reviews and securityUnfortunately, all the kernel patches show up as newly created files. This is due to the fact that both However, this is also a security risk. since in theory I could have buried some vulnerability or malware deep into one of the patches (let's be real, probably noone is going to go through all the patches when they're all shown as newly added files instead 😅). If the patch files were simply moved, GitHub would show any changes to the files, making it way more difficult for an attacker to hide something. (example: last RK3588 kernel bump PR) Can we please agree on some standard procedure so changes are easier to follow in the future? E.g. Move both |
Hardware RNG driver evaluationTests
|
02f2d78
to
4b68df2
Compare
Indeed. I feel your pain. We've tried those bumps every other way by now, and there's always the case where this might happen. If you really, really want to keep the history you can try this - which fools git into thinking the copies are really renames -- but that might or not get flattened out/rebased when it's eventually merged into main. |
Just checked HDMI on Opi5 and it doesn't seem to work. It seems like the HDMI bridge pathces have been removed during rebases. They need to be re-added from https://lore.kernel.org/all/20241016-b4-rk3588-bridge-upstream-v10-0-87ef92a6d14e@collabora.com/ |
Interesting, thanks! I'll have a look at it when I got time. Fooling Git is one thing, but if fooling GitHub is possible, that is to see 😄 |
Thanks for testing! Good to see that there is a very new (2 days old) HDMI patch. I will try to switch to these new patches soon. Edit: Done. Not tested, but compiles fine. |
4b68df2
to
7d927d4
Compare
Update: Added commits:
|
I don't think we can use upstream rng driver since RK3568 and RK3588 have different RNG IPs. perhaps we can add rk3588 as v1 driver just as how it has been done for vendor driver https://github.com/armbian/linux-rockchip/blob/693a5ea9432443eb4a58eee8a37f3b34501eb21b/drivers/char/hw_random/rockchip-rng.c#L447 |
Thanks for checking! The driver (patch 0025) has been patched in for at least 3 kernel versions now. But as shown above, using The evaluation was more meant to see if the currently used driver is very bad as in should not be used at all (like the driver for RK3566 as seen in one of the links sent in this topic). Since afaik users have to actively choose to use @sfx2000 also seems to be interested in RNG crypto stuff and has posted a nice comment about this topic a while back, see #6781 (comment) |
Yeah i agree with you. Let's remove it for now |
Cherry picked, built ok. Tested on R6C, most stuff seems to work (HDMI untested). Details[ 78.224471] Unable to handle kernel NULL pointer dereference at virtual address 00000000000000a8 [ 78.225245] Mem abort in: DABT (current EL), IL = 32 bits [ 78.226291] SET = 0, FnVPTW = 0 78.227289] Data abort info:level 0 translation fault [ 78.227546] ISV = 0, ISS = 0, ISS2 = 0x00000000 [ 78.228027] CM = 0, WnR = 0, TnD = 0, ess = 0 [ 78.228470] GCS = 0, Overlay = 0, DirtyBit = 0, Xs0 [ 78.228938] user pgtable: 4k pages, 48-bit VAs, pgdp=00000800000 [ 78.229503] [00000000000000a8] pgd=0000000000000000, p4d=0000000000000000 [ 78.230104] Internal error: Oops: 0000000096000004 [#1] PREEMPT SMP [ 78.230656] Modules linked in: tls cfg80211 rfkill sunrpc binfmt_misc hantro_vpu crct10dif_ce rockchip_vdec2 rockchip_rga v4l2_vp9 at24 v4l2_jpeg rk805_pwrkey v4l2_h264 v4l2_mem2mem videobuf2_dma_sg videobuf2_dma_contig videobuf2_memops rk_crypto2 videobuf2_v4l2 nvmem_rockchip_otp sm3_generic videodev crypto_engine rockchip_rng_rk3588 sm3 videobuf2_common mc ip_tables x_tables autofs4 dm_mod r8169 rk808_regulator phy_rockchip_samsung_hdptx rk8xx_spi rk8xx_core rockchipdrm dw_hdmi_qp dw_mipi_dsi dw_hdmi analogix_dp cec drm_dma_helper panthor drm_gpuvm gpu_sched drm_display_helper drm_shmem_helper drm_exec drm_kms_helper drm adc_keys [ 78.235652] CPU: 1 UID: 0 PID: 1 Comm: systemd-shutdow Not tainted 6.12.0-rc3-edge-rockchip-rk3588 #1 [ 78.236459] Hardwre name: FriendlyElec NanoPi R6C (DT) [ 78.236919] pstate: 609 (nZCv daif +PAN -UAO -TCO -DIT -SSBS BTYPE=--) [ 78.237530]pc : drm_atomic_helper_shutdown+0x34/0x140 [drm_kms_helper] [ 78.238126] lr : rockchip_drm_platform_shutdown+0x18/0x28 [rockch [ 78.238734] sp : ffff80008005bba0 [ 78.239028] x29: ffff80008005bba0 x28: ffff6872403ab480 x27: 0000000000000000 [ 78.239661] x26: 0000000000000008 x25: ffffa9914783b848 x24: ffffa948918048 [ 78.240293] x23: ffff687240bc5890 x22: ffffa991489cx21: ffffa99148805430 [ 78.240925] x20: ffff687240fd4000 x19:ffff687240bc5818 x18: 0000000000000003 [ 78.241558] x17: ffffb2c0 x16: 0000000000000000 x15: ffffa99147609118 [ 78.242190]0000000000000b x13: ffff6872402bb210 x12: 0000000000000000 [ 42822] x11: 0000000000000040 x10: ffffa99148630158 x9 : ffffa99148630150 [ 78.243454] x8 : ffff6872404034a0 x7 : 0000000000000000 x6 : 0000000000000000 [ 78.244086] x5 : ffff687240403478 x4 : ffff687240403510 x3 : 0000000000000000 [ 78.244717] x2 : 0000000000000001 x1 : 0000000000000000 x0 : 0000000000000000 [ 78.245349] Call trace: [ 78.245567] drm_atomic_helper_shutdown+0x34/0x140 [drm_kms_helper] [ 78.246128] rockchip_drm_platform_shutdown+0x18/0x28 [rockchipdrm] [ 78.246687] platform_shutdown+0x24/0x34 [ 78.247039] device_shutdown+0x154/0x258 [ 78.247389] kernel_restart+0x40/0xa8 [ 78.247718] __do_sys_reboot+0x1e0/0x26c [ 78.248069] __arm64_sys_reboot+0x24/0x30 [ 78.248426] invoke_syscall+0x48/0x110 [ 78.248763] el0_svc_common.constprop.0+0x40/0xe8 [ 78.249181] do_el0_svc+0x20/0x2c [ 78.249479] el0_svc+0x38/0x100 [ 78.249762] el0t_64_sync_handler+0x13c/0x158 [ 78.250149] el0t_64_sync+0x1a4/0x1a8 [ 78.250479] Code: b4000554 f90013f5 f9401a80 b9406a81 (b940a800) [ 78.251014] ---[ end trace 0000000000000000 ]--- [ 78.251442] Kernel panic - not syncing: Attempted to kill init! exitcode=0x0000000b [ 78.252185] Kernel Offset: 0x2990c6200000 from 0xffff800080000000 [ 78.252720] PHYS_OFFSET: 0xffff978ec0000000 [ 78.253089] CPU features: 0x1c,00000017,00280928,4200720b [ 78.253564] Memory Limit: none [ 78.253837] ---[ end Kernel panic - not syncing: Attempted to kill init! exitcode=0x0000000b ]--- |
I also sometimes get the same kernel panic at SD card |
I'm retrying to rebuild the OS, I'm flashing now the sdcard I will look again. |
After rebuilding the OS and reflashed the image on emmc via dd command through the img it works, but this is not normal that some time kernel crashes |
@SuperKali Please check the file system on the eMMC partition after booting from the SD card. |
Usually I install all on emmc because it's more faster than sd card, but I clean every time the partition. |
The file system may be disrupted due to the wear and tear of a certain number of memory cells. |
Using armbian-install directly not works :( |
Obviously the emmc is ok, I’ve tried vendor kernel and works correctly 🙂 |
You can state your concerns, comments, or suggestions here |
Up 1h:40min, no errors |
i have tested nvme boot on nanopc t6 lts and works corrently |
@ColorfulRhino You managed to run the HDMI port on your boards? |
HDMI is not working |
I tried to add the missing nodes for hdmi but I can't figure it out for the nanopc t6 lts, I have no video output |
tldr: No and I don't have the time and passion to test and fix HDMI. Long answer: No. Usually I do not test HDMI or try to get it running. I try to provide upstream patches to keep the HDMI output functionality, but since I do not use HDMI myself and honestly don't care much about it, I won't spend time and energy towards that. It's always better to let someone work on a topic they have a passion for or have other incentives for 😄 Anyone is welcome to add to this PR, my only request is to at least try to keep the high quality I'm trying to maintain (code/patches/commit messages/atomic commit style) when adding commits. I'll gladly help by providing guides and links on how to do this :) On getting HDMI working: I guess there is probably only one patch either missing or one of our older patches is too much/breaks the new HDMI series. |
I can't build kernel without this patch: https://github.com/amazingfate/build/blob/rockchip64-6.12/patch/kernel/archive/rockchip64-6.12/0001-tools-disable-sched_ext_clean.patch |
Tested with rock5b, it boots fine. |
And one comment: why not delete old rockchip-rk3588-6.11 so in git we can see the changes more clearly. |
Is HDMI working properly? By the time i tested 6.12, it hadn't been working. I can test it again if it works |
HDMI is working, I'm testing with a 1080p monitor. |
# Verisilicon media platform drivers | ||
# | ||
CONFIG_VIDEO_HANTRO=m | ||
CONFIG_VIDEO_HANTRO_HEVC_RFC=y |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is not necessary for rockchip.
The idea of IMO, |
Editing patches directly is always difficult. But usually these patches are taken from another GitHub repository (one patch = one commit) or from the kernel mailing list. If we have a patch-set (multiple patches in a single file) and want to update a single patch, we can download the patch from the kernel mailing list or from patchwork (https://patchwork.kernel.org/) and copy-paste it inside the file, replacing the old patch. You may need to modify the line For example, the patch series you linked can be downloaded from https://patchwork.kernel.org/project/linux-rockchip/cover/20241108185212.198603-1-detlev.casanova@collabora.com/ (either as single patch or as patch series), but you need to modify all |
We can close this PR as #7455 as been merged |
Description
Kernel 6.12 brings several improvements for the Rockchip RK3588, so we can drop some patches as listed below.
Dropped patches (have been upstreamed)
SoC patches:
HDMI patches:
Board patches:
Patches that needed adaption for 6.12
Added patches
To Do
Test current patched-in hardware RNG driver against the newly introduced one in 6.12 (only introduced for RK3568, but might also be good for RK3588?)How Has This Been Tested?
Please edit this list if you have successfully tested 6.12 on your board :) Thanks!
./compile.sh build BOARD=cm3588-nas BRANCH=edge BUILD_DESKTOP=no BUILD_MINIMAL=no KERNEL_CONFIGURE=no RELEASE=trixie
Checklist: