2 * Qemu PowerPC 440 board emualtion
4 * Copyright 2007 IBM Corporation.
5 * Authors: Jerone Young <jyoung5@us.ibm.com>
7 * This work is licensed under the GNU LGPL license, version 2.
13 void ppc440_init(CPUState
*env
,
14 target_phys_addr_t ram_bases
[2],
15 target_phys_addr_t ram_sizes
[2],
24 ppc_dcr_init(env
, NULL
, NULL
);
27 printf("setup mmio\n");
28 mmio
= ppc4xx_mmio_init(env
, 0xEF600000);
30 /* universal controller */
31 printf("setup universal controller\n");
32 irqs
= qemu_mallocz(sizeof(qemu_irq
) * PPCUIC_OUTPUT_NB
);
33 irqs
[PPCUIC_OUTPUT_INT
] =
34 ((qemu_irq
*)env
->irq_inputs
)[PPC40x_INPUT_INT
];
35 irqs
[PPCUIC_OUTPUT_CINT
] =
36 ((qemu_irq
*)env
->irq_inputs
)[PPC40x_INPUT_CINT
];
37 pic
= ppcuic_init(env
, irqs
, 0x0C0, 0, 1);
40 /* SDRAM controller */
41 printf("trying to setup sdram controller\n");
42 ppc405_sdram_init(env
, pic
[14], 2, ram_bases
, ram_sizes
, do_init
);
44 for (i
= 0; i
< 2; i
++)
45 offset
+= ram_sizes
[i
];
47 /* serial ports on page 126 of 440EP user manual */
49 printf("Initializing first serial port\n");
50 ppc405_serial_init(env
, mmio
,0x300, pic
[31], serial_hds
[0]);
53 printf("Initializing 2nd serial port\n");
54 ppc405_serial_init(env
, mmio
,0x400, pic
[30], serial_hds
[1]);