]>
Commit | Line | Data |
---|---|---|
6a8b1ae2 EI |
1 | |
2 | /* OPB Interrupt Controller. */ | |
3 | qemu_irq *microblaze_pic_init_cpu(CPUState *env); | |
4 | ||
5 | static inline DeviceState * | |
c227f099 | 6 | xilinx_intc_create(target_phys_addr_t base, qemu_irq irq, int kind_of_intr) |
6a8b1ae2 EI |
7 | { |
8 | DeviceState *dev; | |
9 | ||
10 | dev = qdev_create(NULL, "xilinx,intc"); | |
ee6847d1 | 11 | qdev_prop_set_uint32(dev, "kind-of-intr", kind_of_intr); |
e23a1b33 | 12 | qdev_init_nofail(dev); |
6a8b1ae2 EI |
13 | sysbus_mmio_map(sysbus_from_qdev(dev), 0, base); |
14 | sysbus_connect_irq(sysbus_from_qdev(dev), 0, irq); | |
15 | return dev; | |
16 | } | |
17 | ||
18 | /* OPB Timer/Counter. */ | |
19 | static inline DeviceState * | |
c227f099 | 20 | xilinx_timer_create(target_phys_addr_t base, qemu_irq irq, int nr, int freq) |
6a8b1ae2 EI |
21 | { |
22 | DeviceState *dev; | |
23 | ||
24 | dev = qdev_create(NULL, "xilinx,timer"); | |
ee6847d1 GH |
25 | qdev_prop_set_uint32(dev, "nr-timers", nr); |
26 | qdev_prop_set_uint32(dev, "frequency", freq); | |
e23a1b33 | 27 | qdev_init_nofail(dev); |
6a8b1ae2 EI |
28 | sysbus_mmio_map(sysbus_from_qdev(dev), 0, base); |
29 | sysbus_connect_irq(sysbus_from_qdev(dev), 0, irq); | |
30 | return dev; | |
31 | } | |
32 | ||
33 | /* XPS Ethernet Lite MAC. */ | |
34 | static inline DeviceState * | |
c227f099 | 35 | xilinx_ethlite_create(NICInfo *nd, target_phys_addr_t base, qemu_irq irq, |
6a8b1ae2 EI |
36 | int txpingpong, int rxpingpong) |
37 | { | |
38 | DeviceState *dev; | |
39 | ||
40 | qemu_check_nic_model(nd, "xilinx-ethlite"); | |
41 | ||
42 | dev = qdev_create(NULL, "xilinx,ethlite"); | |
17d1ae3c | 43 | qdev_set_nic_properties(dev, nd); |
ee6847d1 GH |
44 | qdev_prop_set_uint32(dev, "txpingpong", txpingpong); |
45 | qdev_prop_set_uint32(dev, "rxpingpong", rxpingpong); | |
e23a1b33 | 46 | qdev_init_nofail(dev); |
6a8b1ae2 EI |
47 | sysbus_mmio_map(sysbus_from_qdev(dev), 0, base); |
48 | sysbus_connect_irq(sysbus_from_qdev(dev), 0, irq); | |
49 | return dev; | |
50 | } |