aboutsummaryrefslogtreecommitdiff
path: root/hw/i2c
diff options
context:
space:
mode:
Diffstat (limited to 'hw/i2c')
-rw-r--r--hw/i2c/bitbang_i2c.c6
-rw-r--r--hw/i2c/exynos4210_i2c.c6
-rw-r--r--hw/i2c/mpc_i2c.c6
-rw-r--r--hw/i2c/smbus_eeprom.c6
-rw-r--r--hw/i2c/smbus_ich9.c6
-rw-r--r--hw/i2c/versatile_i2c.c3
6 files changed, 22 insertions, 11 deletions
diff --git a/hw/i2c/bitbang_i2c.c b/hw/i2c/bitbang_i2c.c
index b000952b98..4ff3c0b4ec 100644
--- a/hw/i2c/bitbang_i2c.c
+++ b/hw/i2c/bitbang_i2c.c
@@ -15,6 +15,7 @@
#include "hw/i2c/bitbang_i2c.h"
#include "hw/sysbus.h"
#include "qemu/module.h"
+#include "qom/object.h"
//#define DEBUG_BITBANG_I2C
@@ -162,16 +163,17 @@ void bitbang_i2c_init(bitbang_i2c_interface *s, I2CBus *bus)
/* GPIO interface. */
#define TYPE_GPIO_I2C "gpio_i2c"
+typedef struct GPIOI2CState GPIOI2CState;
#define GPIO_I2C(obj) OBJECT_CHECK(GPIOI2CState, (obj), TYPE_GPIO_I2C)
-typedef struct GPIOI2CState {
+struct GPIOI2CState {
SysBusDevice parent_obj;
MemoryRegion dummy_iomem;
bitbang_i2c_interface bitbang;
int last_level;
qemu_irq out;
-} GPIOI2CState;
+};
static void bitbang_i2c_gpio_set(void *opaque, int irq, int level)
{
diff --git a/hw/i2c/exynos4210_i2c.c b/hw/i2c/exynos4210_i2c.c
index a600f65560..9d2f780d2a 100644
--- a/hw/i2c/exynos4210_i2c.c
+++ b/hw/i2c/exynos4210_i2c.c
@@ -27,12 +27,14 @@
#include "migration/vmstate.h"
#include "hw/i2c/i2c.h"
#include "hw/irq.h"
+#include "qom/object.h"
#ifndef EXYNOS4_I2C_DEBUG
#define EXYNOS4_I2C_DEBUG 0
#endif
#define TYPE_EXYNOS4_I2C "exynos4210.i2c"
+typedef struct Exynos4210I2CState Exynos4210I2CState;
#define EXYNOS4_I2C(obj) \
OBJECT_CHECK(Exynos4210I2CState, (obj), TYPE_EXYNOS4_I2C)
@@ -83,7 +85,7 @@ static const char *exynos4_i2c_get_regname(unsigned offset)
#define DPRINT(fmt, args...) do { } while (0)
#endif
-typedef struct Exynos4210I2CState {
+struct Exynos4210I2CState {
SysBusDevice parent_obj;
MemoryRegion iomem;
@@ -96,7 +98,7 @@ typedef struct Exynos4210I2CState {
uint8_t i2cds;
uint8_t i2clc;
bool scl_free;
-} Exynos4210I2CState;
+};
static inline void exynos4210_i2c_raise_interrupt(Exynos4210I2CState *s)
{
diff --git a/hw/i2c/mpc_i2c.c b/hw/i2c/mpc_i2c.c
index 9a724f3a3e..232a277da4 100644
--- a/hw/i2c/mpc_i2c.c
+++ b/hw/i2c/mpc_i2c.c
@@ -24,6 +24,7 @@
#include "qemu/module.h"
#include "hw/sysbus.h"
#include "migration/vmstate.h"
+#include "qom/object.h"
/* #define DEBUG_I2C */
@@ -36,6 +37,7 @@
#endif
#define TYPE_MPC_I2C "mpc-i2c"
+typedef struct MPCI2CState MPCI2CState;
#define MPC_I2C(obj) \
OBJECT_CHECK(MPCI2CState, (obj), TYPE_MPC_I2C)
@@ -70,7 +72,7 @@
#define CYCLE_RESET 0xFF
-typedef struct MPCI2CState {
+struct MPCI2CState {
SysBusDevice parent_obj;
I2CBus *bus;
@@ -84,7 +86,7 @@ typedef struct MPCI2CState {
uint8_t sr;
uint8_t dr;
uint8_t dfssr;
-} MPCI2CState;
+};
static bool mpc_i2c_is_enabled(MPCI2CState *s)
{
diff --git a/hw/i2c/smbus_eeprom.c b/hw/i2c/smbus_eeprom.c
index b7def9eeb8..4f98012f1c 100644
--- a/hw/i2c/smbus_eeprom.c
+++ b/hw/i2c/smbus_eeprom.c
@@ -31,23 +31,25 @@
#include "hw/qdev-properties.h"
#include "migration/vmstate.h"
#include "hw/i2c/smbus_eeprom.h"
+#include "qom/object.h"
//#define DEBUG
#define TYPE_SMBUS_EEPROM "smbus-eeprom"
+typedef struct SMBusEEPROMDevice SMBusEEPROMDevice;
#define SMBUS_EEPROM(obj) \
OBJECT_CHECK(SMBusEEPROMDevice, (obj), TYPE_SMBUS_EEPROM)
#define SMBUS_EEPROM_SIZE 256
-typedef struct SMBusEEPROMDevice {
+struct SMBusEEPROMDevice {
SMBusDevice smbusdev;
uint8_t data[SMBUS_EEPROM_SIZE];
uint8_t *init_data;
uint8_t offset;
bool accessed;
-} SMBusEEPROMDevice;
+};
static uint8_t eeprom_receive_byte(SMBusDevice *dev)
{
diff --git a/hw/i2c/smbus_ich9.c b/hw/i2c/smbus_ich9.c
index 48f1ff4191..44d26fcf39 100644
--- a/hw/i2c/smbus_ich9.c
+++ b/hw/i2c/smbus_ich9.c
@@ -28,17 +28,19 @@
#include "qemu/module.h"
#include "hw/i386/ich9.h"
+#include "qom/object.h"
+typedef struct ICH9SMBState ICH9SMBState;
#define ICH9_SMB_DEVICE(obj) \
OBJECT_CHECK(ICH9SMBState, (obj), TYPE_ICH9_SMB_DEVICE)
-typedef struct ICH9SMBState {
+struct ICH9SMBState {
PCIDevice dev;
bool irq_enabled;
PMSMBus smb;
-} ICH9SMBState;
+};
static bool ich9_vmstate_need_smbus(void *opaque, int version_id)
{
diff --git a/hw/i2c/versatile_i2c.c b/hw/i2c/versatile_i2c.c
index da8cda2ec1..3ab386d671 100644
--- a/hw/i2c/versatile_i2c.c
+++ b/hw/i2c/versatile_i2c.c
@@ -27,11 +27,12 @@
#include "hw/registerfields.h"
#include "qemu/log.h"
#include "qemu/module.h"
+#include "qom/object.h"
+typedef ArmSbconI2CState VersatileI2CState;
#define VERSATILE_I2C(obj) \
OBJECT_CHECK(VersatileI2CState, (obj), TYPE_VERSATILE_I2C)
-typedef ArmSbconI2CState VersatileI2CState;
REG32(CONTROL_GET, 0)