qemu-patch-raspberry4/hw/i2c
Hervé Poussineau 880b1ffe6e smbus: do not immediately complete commands
PIIX4 errata says that "immediate polling of the Host Status Register BUSY
bit may indicate that the SMBus is NOT busy."
Due to this, some code does the following steps:
(a) set parameters
(b) start command
(c) check for smbus busy bit set (to know that command started)
(d) check for smbus busy bit not set (to know that command finished)

Let (c) happen, by immediately setting the busy bit, and really executing
the command when status register has been read once.

This fixes a problem with AMIBIOS, which can now properly initialize the PIIX4.

Signed-off-by: Hervé Poussineau <hpoussin@reactos.org>
Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
2017-12-22 01:42:03 +02:00
..
aspeed_i2c.c aspeed/i2c: introduce a state machine 2017-06-02 11:51:49 +01:00
bitbang_i2c.c hw/i2c/bitbang_i2c: Handle NACKs from devices 2016-11-07 10:01:15 +00:00
bitbang_i2c.h i2c: Rename i2c_bus to I2CBus 2014-02-14 16:22:31 +01:00
core.c migration: pre_save return int 2017-09-27 11:35:59 +01:00
exynos4210_i2c.c hw/i2c: QOM'ify exynos4210_i2c.c 2016-06-14 15:59:13 +01:00
i2c-ddc.c migration: Split qemu-file.h 2017-06-01 18:49:22 +02:00
imx_i2c.c arm: Uniquely name imx25 I2C buses. 2017-01-20 11:15:06 +00:00
Makefile.objs ppc4xx_i2c: Move to hw/i2c 2017-09-08 09:30:55 +10:00
omap_i2c.c hw/i2c/omap_i2c.c: Don't use old_mmio 2017-09-21 16:34:27 +01:00
pm_smbus.c smbus: do not immediately complete commands 2017-12-22 01:42:03 +02:00
ppc4xx_i2c.c ppc4xx_i2c: Move to hw/i2c 2017-09-08 09:30:55 +10:00
smbus.c i2c: Allow I2C devices to NAK start events 2017-01-09 11:40:20 +00:00
smbus_eeprom.c qdev: Replace cannot_instantiate_with_device_add_yet with !user_creatable 2017-05-17 10:37:00 -03:00
smbus_ich9.c pci: Add INTERFACE_CONVENTIONAL_PCI_DEVICE to Conventional PCI devices 2017-10-15 05:54:43 +03:00
versatile_i2c.c hw/i2c: QOM'ify versatile_i2c.c 2016-06-14 15:59:13 +01:00