Hi Jose,
I have worked on a port of SMSC SCH5545 on a Dell machine. These chips
are quite different than others. What I have learnt is that despite you
configure the SIO LDNs well, it may not be sufficient. I suggest you to
look at table 13-1 of the datasheet of SCH3114:
http://ww1.microchip.com/downloads/en/DeviceDoc/00001872A.pdf
You may need to configure the GPIOs alternate functions to work as
serial port pins. From what I can see, the defautl configuration is not
set for serial port 3 and 4 for GPIOs: GP10, GP11, GP64 and GP65. At a
minimum, you should configure these to see anything on oscilloscope. I
had similar issue with SCH5545 and had to configure the GPIOs for serial
port as well.
The files you have attached seem to be well written, so I would have a
look at GPIO configuration only.
Good luck.
Best regards,
--
Michał Żygowski
Firmware Engineer
https://3mdeb.com | @3mdeb_com
On 24.08.2020 19:29, Jose Trujillo via coreboot wrote:
> Dear coreboot engineers & enthusiasts:
>
> Doing dmesg:
> [X@localhost ~]$ dmesg | grep "tty"
> [ 0.336779] printk: console [tty0] enabled
> [ 1.521090] 00:04: ttyS0 at I/O 0x3f8 (irq = 4, base_baud = 115200)
> is a 16550A
> [ 1.542192] 00:05: ttyS1 at I/O 0x2f8 (irq = 3, base_baud = 115200)
> is a 16550A
> [ 1.563264] 00:08: ttyS2 at I/O 0x3e8 (irq = 5, base_baud = 115200)
> is a 16550A
> [ 1.584268] 00:09: ttyS4 at I/O 0x2e0 (irq = 6, base_baud = 115200)
> is a 16550A
>
> The problem I have is that only ttyS0 works (the communication with
> other PC).
>
> Attached files:
> superio.c Slightly modified to initialize 2 more serial ports from
> 2 to 4.
> devicetree.cb Shows the forwarding of the I/O ranges for ttyS2 and
> ttyS4 also the smscsuperio tree with addresses and IRQs.
> superio.asl The ACPI code.
>
> I suspect is an IRQ issue.
> Using minicom trying to send a byte out there is no signal shown on
> the oscilloscope.
> I asked (on #coreboot) if is required to route IRQs for the serial
> ports but nico answered "no but you need to tell the OS if the
> interrupt is level or edge" but I don't know how to do that.
> Anybody had experience making this kind of superio to work please give
> me a hint on how to resolve this.
> What additional work do I need to do?
>
> Thank you,
> Jose Trujillo
>
> _______________________________________________
> coreboot mailing list -- coreboot@coreboot.org
> To unsubscribe send an email to coreboot-leave@coreboot.org