help-grub
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Serial Console Debugging Issue


From: Federico Vaga
Subject: Serial Console Debugging Issue
Date: Fri, 12 Aug 2022 12:12:52 +0200

Hello,

I've a nasty problem in running grub on a 15 years old system. The SBC is this
one: https://www.duagon.com/products/details/a20/, and I'm doing a network boot.
So grub gets download (tftp) and then executed on the card. I can say that grub
is running because I see all HTTP requests being correctly served. However, I do
not get any serial console, and the system crashes somewhere between grub and
the Linux initramfs. I can't say if Linux is running or if I'm reaching the
initramfs stage because the console does not get activated.

The very same setup, but with a different bootloader (pxelinux) works just fine:
I can see the bootloader message, the Linux messages, the initramfs, and
everything.

This for me means that the problem is somewhere in grub.

One detail I did not mention. I'm building the grub image using `grub-mkimage`
and including the modules I need for my booting sequence. For debugging this
problem I've added all available modules (excluding those for inspecting disks
otherwise the binary gets too big). Still no luck.

When the system boots, using pxelinux, I can extract this information about the
serial interface.

```
[    0.687294] 0000:05:00.0: ttyS0 at I/O 0xcf00 (irq = 16) is a 16C950/954
```

```
$ lspci -s 05:00.0 -vv
05:00.0 Serial controller: Oxford Semiconductor Ltd Device c120 (prog-if 02 
[16550])
        Subsystem: Oxford Semiconductor Ltd Device c120
        Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- 
Stepping- SERR- FastB2B- DisINTx-
        Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- 
<MAbort- >SERR- <PERR- INTx-
        Latency: 0
        Interrupt: pin A routed to IRQ 16
        Region 0: I/O ports at cf00 [size=8]
        Capabilities: <access denied>
        Kernel driver in use: serial
```

I tried to play with the `serial` configuration, but still nothing

```
serial --port=0xfc00 --speed=9600 --word=8 --parity=n --stop=1
terminal_output console serial
```

Could it be that this hardware is not supported? Or that I need to set some flag
somewhere when I build from sources? For example, in Linux I had to enable a
dedicated option

```
CONFIG_SERIAL_8250_16550A_VARIANTS=y
```

Thanks for the help :)

-------------
Federico Vaga



reply via email to

[Prev in Thread] Current Thread [Next in Thread]