qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [PATCH for-6.2 0/2] escc: fixes for STATUS_TXEMPTY and SPEC_ALLSENT
@ 2021-11-18 18:18 Mark Cave-Ayland
  2021-11-18 18:18 ` [PATCH for-6.2 1/2] escc: always set STATUS_TXEMPTY in R_STATUS on device reset Mark Cave-Ayland
                   ` (2 more replies)
  0 siblings, 3 replies; 6+ messages in thread
From: Mark Cave-Ayland @ 2021-11-18 18:18 UTC (permalink / raw)
  To: qemu-devel, peter.maydell

This is another attempt to fix booting 32-bit QEMU SPARC machines in
qemu-system-sparc using a real Sun PROM based upon further experiments and
re-reading of the ESCC datasheet from a previous patch posted at
https://lists.gnu.org/archive/html/qemu-devel/2021-11/msg00324.html.

It appears that both the Sun PROM and OpenBSD with OpenBIOS fail to send an
explicit reset command as recommended in the ESCC datasheet, which causes
hangs during serial port enumeration since the introduction of the recent
ESCC reset changes.

The first patch always sets STATUS_TXEMPTY in R_STATUS on hardware reset
which wasn't documented in the "Reset" section(s) but is documented in the
"Transmit Interrupts and Transmit Buffer Empty Bit" section, whilst the
second patch updates SPEC_ALLSENT when writing to W_TXCTRL1.

Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>


Mark Cave-Ayland (2):
  escc: always set STATUS_TXEMPTY in R_STATUS on device reset
  escc: update the R_SPEC register SPEC_ALLSENT bit when writing to
    W_TXCTRL1

 hw/char/escc.c | 25 +++++++++++++++++++++++++
 1 file changed, 25 insertions(+)

-- 
2.20.1



^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2021-11-21  9:41 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2021-11-18 18:18 [PATCH for-6.2 0/2] escc: fixes for STATUS_TXEMPTY and SPEC_ALLSENT Mark Cave-Ayland
2021-11-18 18:18 ` [PATCH for-6.2 1/2] escc: always set STATUS_TXEMPTY in R_STATUS on device reset Mark Cave-Ayland
2021-11-18 18:18 ` [PATCH for-6.2 2/2] escc: update the R_SPEC register SPEC_ALLSENT bit when writing to W_TXCTRL1 Mark Cave-Ayland
2021-11-18 18:26   ` Philippe Mathieu-Daudé
2021-11-18 18:23 ` [PATCH for-6.2 0/2] escc: fixes for STATUS_TXEMPTY and SPEC_ALLSENT Peter Maydell
2021-11-21  9:40   ` Mark Cave-Ayland

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).