qemu/include/hw/i2c
Jamin Lin c400c38854 hw/i2c/aspeed: Introduce a new dma_dram_offset attribute in AspeedI2Cbus
The "Current DMA Operating Address Status(0x50)" register of
I2C new mode has been removed in AST2700.
This register is used for debugging and it is a read only register.

To support AST2700 DMA mode, introduce a new
dma_dram_offset class attribute in AspeedI2Cbus to save the
current DMA operating address.

ASPEED AST2700 SOC is a 64 bits quad core CPUs (Cortex-a35)
And the base address of dram is "0x4 00000000" which
is 64bits address.

Set the dma_dram_offset data type to uint64_t for
64 bits dram address DMA support.

Both "DMA Mode Buffer Address Register(I2CD24 old mode)" and
"DMA Operating Address Status (I2CC50 new mode)" are used for showing the
low part dram offset bits [31:0], so change to read/write both register bits [31:0] in
bus register read/write functions.

The aspeed_i2c_bus_vmstate is changed again and version is not increased
because it was done earlier in the same series.

Signed-off-by: Jamin Lin <jamin_lin@aspeedtech.com>
Reviewed-by: Cédric Le Goater <clg@redhat.com>
2024-09-16 17:44:08 +02:00
..
allwinner-i2c.h hw: allwinner-i2c: Fix TWI_CNTR_INT_FLAG on SUN6i SoCs 2023-03-06 14:08:12 +00:00
arm_sbcon_i2c.h hw/i2c/versatile_i2c: Replace TYPE_VERSATILE_I2C -> TYPE_ARM_SBCON_I2C 2023-01-23 13:32:38 +00:00
aspeed_i2c.h hw/i2c/aspeed: Introduce a new dma_dram_offset attribute in AspeedI2Cbus 2024-09-16 17:44:08 +02:00
bcm2835_i2c.h hw/i2c: Implement Broadcom Serial Controller (BSC) 2024-03-05 13:22:55 +00:00
bitbang_i2c.h hw/i2c/bitbang_i2c: Define TYPE_GPIO_I2C in public header 2023-01-23 13:32:38 +00:00
i2c.h hw/i2c: only schedule pending master when bus is idle 2023-03-02 13:57:50 +01:00
i2c_mux_pca954x.h Clean up ill-advised or unusual header guards 2022-05-11 16:50:01 +02:00
imx_i2c.h Use OBJECT_DECLARE_SIMPLE_TYPE when possible 2020-09-18 14:12:32 -04:00
microbit_i2c.h Use OBJECT_DECLARE_SIMPLE_TYPE when possible 2020-09-18 14:12:32 -04:00
npcm7xx_smbus.h hw/i2c: spelling fixes 2023-08-31 19:47:43 +02:00
pm_smbus.h Include exec/memory.h slightly less 2019-08-16 13:31:52 +02:00
pmbus_device.h hw/i2c: pmbus: add VCAP register 2023-11-07 13:08:49 +01:00
pnv_i2c_regs.h ppc/pnv: Test pnv i2c master and connected devices 2024-02-23 23:24:42 +10:00
ppc4xx_i2c.h Use OBJECT_DECLARE_SIMPLE_TYPE when possible 2020-09-18 14:12:32 -04:00
smbus_eeprom.h smbus: Fix spd_data_generate() error API violation 2020-04-29 08:01:52 +02:00
smbus_master.h i2c: Split smbus into parts 2019-02-27 21:06:08 -06:00
smbus_slave.h qom: Remove module_obj_name parameter from OBJECT_DECLARE* macros 2020-09-18 14:12:32 -04:00