Revision 26e92f65 hw/arm_sysctl.c
b/hw/arm_sysctl.c | ||
---|---|---|
25 | 25 |
uint32_t flags; |
26 | 26 |
uint32_t nvflags; |
27 | 27 |
uint32_t resetlevel; |
28 |
uint32_t proc_id; |
|
28 | 29 |
} arm_sysctl_state; |
29 | 30 |
|
30 | 31 |
static void arm_sysctl_reset(DeviceState *d) |
... | ... | |
89 | 90 |
case 0x60: /* MISC */ |
90 | 91 |
return 0; |
91 | 92 |
case 0x84: /* PROCID0 */ |
92 |
/* ??? Don't know what the proper value for the core tile ID is. */ |
|
93 |
return 0x02000000; |
|
93 |
return s->proc_id; |
|
94 | 94 |
case 0x88: /* PROCID1 */ |
95 | 95 |
return 0xff000000; |
96 | 96 |
case 0x64: /* DMAPSR0 */ |
... | ... | |
215 | 215 |
} |
216 | 216 |
|
217 | 217 |
/* Legacy helper function. */ |
218 |
void arm_sysctl_init(uint32_t base, uint32_t sys_id) |
|
218 |
void arm_sysctl_init(uint32_t base, uint32_t sys_id, uint32_t proc_id)
|
|
219 | 219 |
{ |
220 | 220 |
DeviceState *dev; |
221 | 221 |
|
222 | 222 |
dev = qdev_create(NULL, "realview_sysctl"); |
223 | 223 |
qdev_prop_set_uint32(dev, "sys_id", sys_id); |
224 | 224 |
qdev_init_nofail(dev); |
225 |
qdev_prop_set_uint32(dev, "proc_id", proc_id); |
|
225 | 226 |
sysbus_mmio_map(sysbus_from_qdev(dev), 0, base); |
226 | 227 |
} |
227 | 228 |
|
... | ... | |
232 | 233 |
.qdev.reset = arm_sysctl_reset, |
233 | 234 |
.qdev.props = (Property[]) { |
234 | 235 |
DEFINE_PROP_UINT32("sys_id", arm_sysctl_state, sys_id, 0), |
236 |
DEFINE_PROP_UINT32("proc_id", arm_sysctl_state, proc_id, 0), |
|
235 | 237 |
DEFINE_PROP_END_OF_LIST(), |
236 | 238 |
} |
237 | 239 |
}; |
Also available in: Unified diff