]> git.proxmox.com Git - mirror_qemu.git/commit - include/hw/arm/aspeed_soc.h
i2c: add aspeed i2c controller
authorCédric Le Goater <clg@kaod.org>
Mon, 6 Jun 2016 15:59:29 +0000 (16:59 +0100)
committerPeter Maydell <peter.maydell@linaro.org>
Mon, 6 Jun 2016 15:59:29 +0000 (16:59 +0100)
commit1602001195dca96aaea8b16f740ac860238555a5
tree598619a9c48c27024281e8e8309deed429dcfa2d
parentfea8a08e1691a22cdf379dfb32ac3e64648c72b7
i2c: add aspeed i2c controller

The Aspeed AST2400 integrates a set of 14 I2C/SMBus bus controllers
directly connected to the APB bus. They can be programmed as master or
slave but the propopsed model only supports the master mode.

On the TODO list, we also have :

 - improve and harden the state machine.
 - bus recovery support (used by the Linux driver).
 - transfer mode state machine bits. this is not strictly necessary as
   it is mostly used for debug. The bus busy bit is deducted from the
   I2C core engine of qemu.
 - support of the pool buffer: 2048 bytes of internal SRAM (not used
   by the Linux driver).

Signed-off-by: Cédric Le Goater <clg@kaod.org>
Reviewed-by: Andrew Jeffery <andrew@aj.id.au>
Message-id: 1464704307-25178-1-git-send-email-clg@kaod.org
[PMM: removed unused functions aspeed_i2c_bus_get_state() and
 aspeed_i2c_bus_set_state()]
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
hw/arm/ast2400.c
hw/i2c/Makefile.objs
hw/i2c/aspeed_i2c.c [new file with mode: 0644]
include/hw/arm/ast2400.h
include/hw/i2c/aspeed_i2c.h [new file with mode: 0644]