aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorOskar Andero <oskar.andero@gmail.com>2012-04-20 15:38:52 +0000
committerPeter Maydell <peter.maydell@linaro.org>2012-04-20 15:38:52 +0000
commitb1f05696ccc7ee2a04a541e373d098ad17568d13 (patch)
treedcbc205ee9bad64503295d2b1a0b2fa73152f648
parentd1157ca418b9426be5e1857eca8142966397a32b (diff)
versatilepb: add ds1338 rtc device
Add ds1338 rtc attached on i2c. Signed-off-by: Oskar Andero <oskar.andero@gmail.com> Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
-rw-r--r--hw/versatilepb.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/hw/versatilepb.c b/hw/versatilepb.c
index 25afb1eb31..d011554063 100644
--- a/hw/versatilepb.c
+++ b/hw/versatilepb.c
@@ -13,6 +13,7 @@
#include "net.h"
#include "sysemu.h"
#include "pci.h"
+#include "i2c.h"
#include "boards.h"
#include "blockdev.h"
#include "exec-memory.h"
@@ -178,6 +179,7 @@ static void versatile_init(ram_addr_t ram_size,
DeviceState *pl041;
PCIBus *pci_bus;
NICInfo *nd;
+ i2c_bus *i2c;
int n;
int done_smc = 0;
@@ -268,6 +270,10 @@ static void versatile_init(ram_addr_t ram_size,
/* Add PL031 Real Time Clock. */
sysbus_create_simple("pl031", 0x101e8000, pic[10]);
+ dev = sysbus_create_simple("versatile_i2c", 0x10002000, NULL);
+ i2c = (i2c_bus *)qdev_get_child_bus(dev, "i2c");
+ i2c_create_slave(i2c, "ds1338", 0x68);
+
/* Add PL041 AACI Interface to the LM4549 codec */
pl041 = qdev_create(NULL, "pl041");
qdev_prop_set_uint32(pl041, "nc_fifo_depth", 512);