[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-commits] [qemu/qemu] 6b99a1: hw/char/escc: Lower irq when transmit
From: |
Peter Maydell |
Subject: |
[Qemu-commits] [qemu/qemu] 6b99a1: hw/char/escc: Lower irq when transmit buffer is fi... |
Date: |
Fri, 17 May 2019 08:17:02 -0700 |
Branch: refs/heads/master
Home: https://github.com/qemu/qemu
Commit: 6b99a110c7f377edd194fe0cc4d3c44b11cf62d8
https://github.com/qemu/qemu/commit/6b99a110c7f377edd194fe0cc4d3c44b11cf62d8
Author: Stephen Checkoway <address@hidden>
Date: 2019-05-17 (Fri, 17 May 2019)
Changed paths:
M hw/char/escc.c
Log Message:
-----------
hw/char/escc: Lower irq when transmit buffer is filled
The SCC/ESCC will briefly stop asserting an interrupt when the
transmit FIFO is filled.
This code doesn't model the transmit FIFO/shift register so the
pending transmit interrupt is never deasserted which means that an
edge-triggered interrupt controller will never see the low-to-high
transition it needs to raise another interrupt. The practical
consequence of this is that guest firmware with an interrupt service
routine for the ESCC that does not send all of the data it has
immediately will stop sending data if the following sequence of
events occurs:
1. Disable processor interrupts
2. Write a character to the ESCC
3. Add additional characters to a buffer which is drained by the ISR
4. Enable processor interrupts
In this case, the first character will be sent, the interrupt will
fire and the ISR will output the second character. Since the pending
transmit interrupt remains asserted, no additional interrupts will
ever fire.
This behavior was triggered by firmware for an embedded system with a
Z85C30 which necessitated this patch.
This patch fixes that situation by explicitly lowering the IRQ when a
character is written to the buffer and no other interrupts are currently
pending.
Signed-off-by: Stephen Checkoway <address@hidden>
Reviewed-by: Philippe Mathieu-Daudé <address@hidden>
Signed-off-by: Mark Cave-Ayland <address@hidden>
Commit: bd30132cd87001af51640d5f1b5754a5dc7fbbe6
https://github.com/qemu/qemu/commit/bd30132cd87001af51640d5f1b5754a5dc7fbbe6
Author: KONRAD Frederic <address@hidden>
Date: 2019-05-17 (Fri, 17 May 2019)
Changed paths:
M hw/sparc/leon3.c
Log Message:
-----------
leon3: fix the error message when no bios are provided
The leon3 board is looking for u-boot.bin by default (LEON3_PROM_FILENAME)..
But in the case this file is not found and no other file are given on the
command line we get the following error:
$ ./qemu-system-sparc -M leon3_generic
qemu-system-sparc: Can't read bios image (null)
So use LEON3_PROM_FILENAME instead of filename in case it is NULL to get a
less cryptic message:
$ ./qemu-system-sparc -M leon3_generic
qemu-system-sparc: Can't read bios image 'u-boot.bin'
Suggested-by: Mark Cave-Ayland <address@hidden>
Signed-off-by: KONRAD Frederic <address@hidden>
Signed-off-by: Mark Cave-Ayland <address@hidden>
Commit: ea005daec3b15f172d991f705b3526427461e15d
https://github.com/qemu/qemu/commit/ea005daec3b15f172d991f705b3526427461e15d
Author: KONRAD Frederic <address@hidden>
Date: 2019-05-17 (Fri, 17 May 2019)
Changed paths:
M hw/intc/grlib_irqmp.c
M hw/sparc/leon3.c
M include/hw/sparc/grlib.h
Log Message:
-----------
grlib, irqmp: get rid of the old-style create function
Suggested-by: Mark Cave-Ayland <address@hidden>
Signed-off-by: KONRAD Frederic <address@hidden>
Signed-off-by: Mark Cave-Ayland <address@hidden>
Commit: 948caec873131584ec343892bb88b6544cd867e4
https://github.com/qemu/qemu/commit/948caec873131584ec343892bb88b6544cd867e4
Author: KONRAD Frederic <address@hidden>
Date: 2019-05-17 (Fri, 17 May 2019)
Changed paths:
M hw/sparc/leon3.c
M hw/timer/grlib_gptimer.c
M include/hw/sparc/grlib.h
Log Message:
-----------
grlib, gptimer: get rid of the old-style create function
Suggested-by: Mark Cave-Ayland <address@hidden>
Signed-off-by: KONRAD Frederic <address@hidden>
Signed-off-by: Mark Cave-Ayland <address@hidden>
Commit: b70447aaeacc6d85f29138baf020000312914f6e
https://github.com/qemu/qemu/commit/b70447aaeacc6d85f29138baf020000312914f6e
Author: KONRAD Frederic <address@hidden>
Date: 2019-05-17 (Fri, 17 May 2019)
Changed paths:
M hw/char/grlib_apbuart.c
M hw/sparc/leon3.c
M include/hw/sparc/grlib.h
Log Message:
-----------
grlib, apbuart: get rid of the old-style create function
Suggested-by: Mark Cave-Ayland <address@hidden>
Signed-off-by: KONRAD Frederic <address@hidden>
Signed-off-by: Mark Cave-Ayland <address@hidden>
Commit: dbed0d2d2adb0df7532783e8a3439856e4218b17
https://github.com/qemu/qemu/commit/dbed0d2d2adb0df7532783e8a3439856e4218b17
Author: KONRAD Frederic <address@hidden>
Date: 2019-05-17 (Fri, 17 May 2019)
Changed paths:
M hw/sparc/leon3.c
Log Message:
-----------
leon3: add a little bootloader
This adds a little bootloader to the leon3_machine when a ram image is
given through the kernel parameter and no bios are provided:
* The UART transmiter is enabled.
* The TIMER is initialized.
Reviewed-by: Fabien Chouteau <address@hidden>
Reviewed-by: Philippe Mathieu-Daudé <address@hidden>
Signed-off-by: KONRAD Frederic <address@hidden>
Signed-off-by: Mark Cave-Ayland <address@hidden>
Commit: 162abf1a83ddd06ce1618666f84f88ba4dbffe10
https://github.com/qemu/qemu/commit/162abf1a83ddd06ce1618666f84f88ba4dbffe10
Author: KONRAD Frederic <address@hidden>
Date: 2019-05-17 (Fri, 17 May 2019)
Changed paths:
M MAINTAINERS
M hw/misc/Makefile.objs
A hw/misc/grlib_ahb_apb_pnp.c
M hw/sparc/leon3.c
A include/hw/misc/grlib_ahb_apb_pnp.h
Log Message:
-----------
leon3: introduce the plug and play mechanism
This adds the AHB and APB plug and play devices.
They are scanned during the linux boot to discover the various peripheral.
Reviewed-by: Fabien Chouteau <address@hidden>
Signed-off-by: KONRAD Frederic <address@hidden>
Signed-off-by: Mark Cave-Ayland <address@hidden>
Commit: 918b8adeb20d9635b16ffde7a413b15f6761b7f3
https://github.com/qemu/qemu/commit/918b8adeb20d9635b16ffde7a413b15f6761b7f3
Author: KONRAD Frederic <address@hidden>
Date: 2019-05-17 (Fri, 17 May 2019)
Changed paths:
M MAINTAINERS
Log Message:
-----------
MAINTAINERS: add myself for leon3
Reviewed-by: Fabien Chouteau <address@hidden>
Reviewed-by: Philippe Mathieu-Daudé <address@hidden>
Reviewed-by: Mark Cave-Ayland <address@hidden>
Signed-off-by: KONRAD Frederic <address@hidden>
Signed-off-by: Mark Cave-Ayland <address@hidden>
Commit: f2a930ad8c433c5583e28ec803c8ca7cb2f31ab5
https://github.com/qemu/qemu/commit/f2a930ad8c433c5583e28ec803c8ca7cb2f31ab5
Author: Peter Maydell <address@hidden>
Date: 2019-05-17 (Fri, 17 May 2019)
Changed paths:
M MAINTAINERS
M hw/char/escc.c
M hw/char/grlib_apbuart.c
M hw/intc/grlib_irqmp.c
M hw/misc/Makefile.objs
A hw/misc/grlib_ahb_apb_pnp.c
M hw/sparc/leon3.c
M hw/timer/grlib_gptimer.c
A include/hw/misc/grlib_ahb_apb_pnp.h
M include/hw/sparc/grlib.h
Log Message:
-----------
Merge remote-tracking branch 'remotes/mcayland/tags/qemu-sparc-20190517' into
staging
qemu-sparc queue
# gpg: Signature made Fri 17 May 2019 10:30:54 BST
# gpg: using RSA key CC621AB98E82200D915CC9C45BC2C56FAE0F321F
# gpg: issuer "address@hidden"
# gpg: Good signature from "Mark Cave-Ayland <address@hidden>" [full]
# Primary key fingerprint: CC62 1AB9 8E82 200D 915C C9C4 5BC2 C56F AE0F 321F
* remotes/mcayland/tags/qemu-sparc-20190517:
MAINTAINERS: add myself for leon3
leon3: introduce the plug and play mechanism
leon3: add a little bootloader
grlib, apbuart: get rid of the old-style create function
grlib, gptimer: get rid of the old-style create function
grlib, irqmp: get rid of the old-style create function
leon3: fix the error message when no bios are provided
hw/char/escc: Lower irq when transmit buffer is filled
Signed-off-by: Peter Maydell <address@hidden>
Compare: https://github.com/qemu/qemu/compare/e48a748fc899...f2a930ad8c43
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Qemu-commits] [qemu/qemu] 6b99a1: hw/char/escc: Lower irq when transmit buffer is fi...,
Peter Maydell <=