summaryrefslogtreecommitdiff
path: root/hw/i2c
diff options
context:
space:
mode:
authorAlastair D'Silva <alastair@d-silva.org>2016-12-27 14:59:29 +0000
committerPeter Maydell <peter.maydell@linaro.org>2016-12-27 14:59:29 +0000
commit9e41bade85ef338afd983c109368d1bbbe931f80 (patch)
tree2356fb69bf69a56f9b21f05945dc368f7c137284 /hw/i2c
parent8e953a658fa13b05bea67899a91d8b65f2b89f11 (diff)
downloadqemu-9e41bade85ef338afd983c109368d1bbbe931f80.tar.gz
hw/i2c: Add a NULL check for i2c slave init callbacks
Add a NULL check for i2c slave init callbacks, so that we no longer need to implement empty init functions. Signed-off-by: Alastair D'Silva <alastair@d-silva.org> Message-id: 20161202054617.6749-4-alastair@au1.ibm.com Reviewed-by: Peter Maydell <peter.maydell@linaro.org> [PMM: squashed in later tweak from Alistair to if() phrasing] Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Diffstat (limited to 'hw/i2c')
-rw-r--r--hw/i2c/core.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/hw/i2c/core.c b/hw/i2c/core.c
index abd4c4cddb..e40781ea3b 100644
--- a/hw/i2c/core.c
+++ b/hw/i2c/core.c
@@ -260,7 +260,11 @@ static int i2c_slave_qdev_init(DeviceState *dev)
I2CSlave *s = I2C_SLAVE(dev);
I2CSlaveClass *sc = I2C_SLAVE_GET_CLASS(s);
- return sc->init(s);
+ if (sc->init) {
+ return sc->init(s);
+ }
+
+ return 0;
}
DeviceState *i2c_create_slave(I2CBus *bus, const char *name, uint8_t addr)