qemu-e2k/hw
Mark Cave-Ayland a67ffaf0ec mac_via: don't re-inject ADB response when switching to IDLE state
The current workaround for the Linux ADB state machine in kernels < 5.6 switching
the VIA back to IDLE state between send and receive modes is to re-inject the
first byte of the response in the IDLE state, and then force the state machine
into generating an autopoll reply.

In fact what is happening is much simpler: analysis of traces from a real Quadra
suggest that the existing data is returned as the first autopoll response rather
than generating an immediate response starting whilst still in IDLE state.

Update the ADB receive code to work in the same way, which allows the re-injection
code to be completely removed from adb_via_receive() and for adb_via_poll() to
be simplified accordingly.

Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>
Message-Id: <20210311100505.22596-5-mark.cave-ayland@ilande.co.uk>
Signed-off-by: Laurent Vivier <laurent@vivier.eu>
2021-03-16 21:41:37 +01:00
..
9pfs qtest: delete superfluous inclusions of qtest.h 2021-03-09 06:03:53 +01:00
acpi
adc
alpha
arm hw/arm: Connect PWM fans in NPCM7XX boards 2021-03-12 12:50:36 +00:00
audio
avr hw/avr/arduino: List board schematic links 2021-03-15 00:39:52 +01:00
block virtio-blk: Respect discard granularity 2021-03-15 09:48:53 +00:00
char Pull request 2021-03-11 18:55:27 +00:00
core -----BEGIN PGP SIGNATURE----- 2021-03-16 10:53:47 +00:00
cpu
cris
display target-arm queue: 2021-03-14 13:18:49 +00:00
dma target-arm queue: 2021-03-10 13:57:31 +00:00
gpio
hppa
hyperv
i2c
i386 dma: Introduce dma_aligned_pow2_mask() 2021-03-12 12:40:10 +00:00
ide sysemu: Let VMChangeStateHandler take boolean 'running' argument 2021-03-09 23:13:57 +01:00
input
intc sysemu: Let VMChangeStateHandler take boolean 'running' argument 2021-03-09 23:13:57 +01:00
ipack
ipmi
isa
lm32 hw/lm32/Kconfig: Have MILKYMIST select LM32_DEVICES 2021-03-09 22:37:08 +01:00
m68k
mem
microblaze
mips hw/mips/gt64xxx: Trace accesses to ISD registers 2021-03-13 20:29:36 +01:00
misc mac_via: don't re-inject ADB response when switching to IDLE state 2021-03-16 21:41:37 +01:00
moxie
net net: Move NetClientState.info_str to dynamic allocations 2021-03-15 16:41:22 +08:00
nios2
nubus
nvram sysemu: Let VMChangeStateHandler take boolean 'running' argument 2021-03-09 23:13:57 +01:00
openrisc
pci
pci-bridge
pci-host
pcmcia
ppc ppc patch queue for 2021-03-10 2021-03-12 11:30:55 +00:00
rdma pvrdma: wean code off pvrdma_ring.h kernel header 2021-03-15 16:41:22 +08:00
remote
riscv Testing, guest-loader and other misc tweaks 2021-03-11 16:20:58 +00:00
rtc
rx qtest: delete superfluous inclusions of qtest.h 2021-03-09 06:03:53 +01:00
s390x sysemu: Let VMChangeStateHandler take boolean 'running' argument 2021-03-09 23:13:57 +01:00
scsi sysemu: Let VMChangeStateHandler take boolean 'running' argument 2021-03-09 23:13:57 +01:00
sd
sh4
smbios
sparc
sparc64
ssi hw/ssi: xilinx_spips: Remove DMA related dead codes from zynqmp_spips 2021-03-10 13:54:51 +00:00
timer hw/timer/sse-timer: Propagate eventual error in sse_timer_realize() 2021-03-12 12:43:52 +00:00
tpm
tricore tricore: added triboard with tc27x_soc 2021-03-14 14:41:55 +01:00
unicore32
usb sysemu: Let VMChangeStateHandler take boolean 'running' argument 2021-03-09 23:13:57 +01:00
vfio sysemu: Let VMChangeStateHandler take boolean 'running' argument 2021-03-09 23:13:57 +01:00
virtio virtio-net: calculating proper msix vectors on init 2021-03-15 16:41:22 +08:00
watchdog
xen
xenpv
xtensa
Kconfig semihosting: Move hw/semihosting/ -> semihosting/ 2021-03-10 15:34:12 +00:00
meson.build semihosting: Move hw/semihosting/ -> semihosting/ 2021-03-10 15:34:12 +00:00