meta-raspberrypi icon indicating copy to clipboard operation
meta-raspberrypi copied to clipboard

Backport 6.1 to kirkstone -> no serial console

Open nandra opened this issue 1 year ago • 7 comments

Hi, I'm using kirkstone release of this layer in my project but would like to use new kernel 6.1. I've backported it to my layer (basically took it from master branch). Kernel seems to boot but I cannot see any output on serial console. In kirkstone I've set console=ttyAMA0,115200 in cmdline.txt file. Does something changed between kernel releases? I've tried to change to console=ttyS0,155200 but witout success. Any ideas what else I can check please? Thanks.

nandra avatar Sep 14 '23 09:09 nandra

@nandra Maybe it requires a bootloader update, too. Could you cross-check a RaspberryOS? That is strange, though, as I know people booting it fine - even though I haven't tested it until now.

agherzan avatar Sep 19 '23 11:09 agherzan

@agherzan I've checked and rpi-firmware is same on kirkstone & master if you mean by "bootloader update"

nandra avatar Sep 19 '23 11:09 nandra

Looks like /etc/udev/rules.d/99-com.rules in a kirkstone build is different than versus bookworm. Kirkstone has this section which is absent from what I see on RPIOS:

KERNEL=="ttyAMA0", PROGRAM="/bin/sh -c '\
	ALIASES=/proc/device-tree/aliases; \
	if cmp -s $$ALIASES/uart0 $$ALIASES/serial0; then \
		echo 0;\
	elif cmp -s $$ALIASES/uart0 $$ALIASES/serial1; then \
		echo 1; \
	else \
		exit 1; \
	fi\
'", SYMLINK+="serial%c"

So udev on kirkstone is setting up a serial on uart, presumably the master branch is not doing this. About to attempt porting 6.1 to kirkstone myself so I can check this, but you can compare /etc/udev/rules.d/99-com.rules between kirkstone and master builds to verify.

kirkstone_99-com.rules.txt bookworm_99-com.rules.txt

EDIT: Master is in fact pulling this file from upstream as of this commit.

mainmachine avatar Dec 05 '23 19:12 mainmachine

@nandra were you able to boot a 6.1 Linux kernel from the kirkstone branch?

I'm not having much success with that. I don't get any kernel log output on the serial console.

yayay avatar Apr 10 '24 16:04 yayay

@yayay Please try to update also rpi firmware (bootfiles). It should work then.

nandra avatar Apr 13 '24 19:04 nandra

@nandra I see. I have tried RPIFW_DATE ?= "20230405", but still no boot. (instead of RPIFW_DATE ?= "20220830") Which version are you using?

yayay avatar Apr 15 '24 12:04 yayay

In my case, the kernel was panicking early in the boot process during a USB controller init and I wasn't getting the printout on serial console because tty numbering has changed for some reason. Now, 5.15 -> 6.1 ttyAMA0 -> ttyAMA1 ttyAMA1 -> ttyAMA5

yayay avatar Apr 26 '24 14:04 yayay