25 |
* SUCH DAMAGE. |
* SUCH DAMAGE. |
26 |
* |
* |
27 |
* |
* |
28 |
* $Id: dev_vr41xx.c,v 1.35 2006/01/01 13:17:18 debug Exp $ |
* $Id: dev_vr41xx.c,v 1.38 2006/07/23 19:36:04 debug Exp $ |
29 |
* |
* |
30 |
* VR41xx (actually, VR4122 and VR4131) misc functions. |
* VR41xx (actually, VR4122 and VR4131) misc functions. |
31 |
* |
* |
289 |
} |
} |
290 |
|
|
291 |
|
|
292 |
/* |
DEVICE_TICK(vr41xx) |
|
* dev_vr41xx_tick(): |
|
|
*/ |
|
|
void dev_vr41xx_tick(struct cpu *cpu, void *extra) |
|
293 |
{ |
{ |
294 |
struct vr41xx_data *d = extra; |
struct vr41xx_data *d = extra; |
295 |
|
|
373 |
default: |
default: |
374 |
if (writeflag == MEM_WRITE) |
if (writeflag == MEM_WRITE) |
375 |
debug("[ vr41xx KIU: unimplemented write to offset " |
debug("[ vr41xx KIU: unimplemented write to offset " |
376 |
"0x%x, data=0x%016llx ]\n", ofs, (long long)idata); |
"0x%x, data=0x%016"PRIx64" ]\n", ofs, |
377 |
|
(uint64_t) idata); |
378 |
else |
else |
379 |
debug("[ vr41xx KIU: unimplemented read from offset " |
debug("[ vr41xx KIU: unimplemented read from offset " |
380 |
"0x%x ]\n", ofs); |
"0x%x ]\n", ofs); |
384 |
} |
} |
385 |
|
|
386 |
|
|
|
/* |
|
|
* dev_vr41xx_access(): |
|
|
*/ |
|
387 |
DEVICE_ACCESS(vr41xx) |
DEVICE_ACCESS(vr41xx) |
388 |
{ |
{ |
389 |
struct vr41xx_data *d = (struct vr41xx_data *) extra; |
struct vr41xx_data *d = (struct vr41xx_data *) extra; |
512 |
default: |
default: |
513 |
if (writeflag == MEM_WRITE) |
if (writeflag == MEM_WRITE) |
514 |
debug("[ vr41xx: unimplemented write to address " |
debug("[ vr41xx: unimplemented write to address " |
515 |
"0x%llx, data=0x%016llx ]\n", |
"0x%"PRIx64", data=0x%016"PRIx64" ]\n", |
516 |
(long long)relative_addr, (long long)idata); |
(uint64_t) relative_addr, (uint64_t) idata); |
517 |
else |
else |
518 |
debug("[ vr41xx: unimplemented read from address " |
debug("[ vr41xx: unimplemented read from address " |
519 |
"0x%llx ]\n", (long long)relative_addr); |
"0x%"PRIx64" ]\n", (uint64_t) relative_addr); |
520 |
} |
} |
521 |
|
|
522 |
ret: |
ret: |
585 |
* which chips. |
* which chips. |
586 |
*/ |
*/ |
587 |
if (cpumodel == 4131) { |
if (cpumodel == 4131) { |
588 |
snprintf(tmps, sizeof(tmps), "ns16550 irq=%i addr=0x%llx " |
snprintf(tmps, sizeof(tmps), "ns16550 irq=%i addr=0x%"PRIx64" " |
589 |
"name2=siu", 8+VRIP_INTR_SIU, (long long)(baseaddr+0x800)); |
"name2=siu", 8+VRIP_INTR_SIU, (uint64_t) (baseaddr+0x800)); |
590 |
device_add(machine, tmps); |
device_add(machine, tmps); |
591 |
} else { |
} else { |
592 |
/* This is used by Linux and NetBSD: */ |
/* This is used by Linux and NetBSD: */ |
599 |
device_add(machine, "pcic addr=0x140003e0"); |
device_add(machine, "pcic addr=0x140003e0"); |
600 |
|
|
601 |
machine_add_tickfunction(machine, dev_vr41xx_tick, d, |
machine_add_tickfunction(machine, dev_vr41xx_tick, d, |
602 |
DEV_VR41XX_TICKSHIFT); |
DEV_VR41XX_TICKSHIFT, 0.0); |
603 |
|
|
604 |
/* Some machines (?) use ISA space at 0x15000000 instead of |
/* Some machines (?) use ISA space at 0x15000000 instead of |
605 |
0x14000000, eg IBM WorkPad Z50. */ |
0x14000000, eg IBM WorkPad Z50. */ |