hw/char/escc: Implement loopback mode
The firmware of the m68k next-cube machine uses the loopback mode for self-testing the hardware and currently fails during this step. By implementing the loopback mode, we can make the firmware pass to the next step. Signed-off-by: Thomas Huth <huth@tuxfamily.org> Reviewed-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk> Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org> Message-Id: <20230716153519.31722-1-huth@tuxfamily.org>
This commit is contained in:
parent
5fc1a68660
commit
02388b5925
@ -653,7 +653,9 @@ static void escc_mem_write(void *opaque, hwaddr addr,
|
|||||||
escc_update_irq(s);
|
escc_update_irq(s);
|
||||||
s->tx = val;
|
s->tx = val;
|
||||||
if (s->wregs[W_TXCTRL2] & TXCTRL2_TXEN) { /* tx enabled */
|
if (s->wregs[W_TXCTRL2] & TXCTRL2_TXEN) { /* tx enabled */
|
||||||
if (qemu_chr_fe_backend_connected(&s->chr)) {
|
if (s->wregs[W_MISC2] & MISC2_LCL_LOOP) {
|
||||||
|
serial_receive_byte(s, s->tx);
|
||||||
|
} else if (qemu_chr_fe_backend_connected(&s->chr)) {
|
||||||
/*
|
/*
|
||||||
* XXX this blocks entire thread. Rewrite to use
|
* XXX this blocks entire thread. Rewrite to use
|
||||||
* qemu_chr_fe_write and background I/O callbacks
|
* qemu_chr_fe_write and background I/O callbacks
|
||||||
|
Loading…
Reference in New Issue
Block a user