int __init setup_dreamcast(void)
{
	int i;

	/* Mask all hardware events */
	/* XXX */

	/* Acknowledge any previous events */
	/* XXX */

	/* Assign all virtual IRQs to the System ASIC int. handler */
	for (i = HW_EVENT_IRQ_BASE; i < HW_EVENT_IRQ_MAX; i++)
		irq_desc[i].handler = &systemasic_int;

#ifdef CONFIG_PCI
	gapspci_init();
#endif

	printk(KERN_INFO "SEGA Dreamcast support.\n");
#if 0
	printk(KERN_INFO "BCR1: 0x%08x\n", ctrl_inl(0xff800000));
	printk(KERN_INFO "BCR2: 0x%08x\n", ctrl_inw(0xff800004));
	printk(KERN_INFO "WCR1: 0x%08x\n", ctrl_inl(0xff800008));
	printk(KERN_INFO "WCR2: 0x%08x\n", ctrl_inl(0xff80000c));
	printk(KERN_INFO "WCR3: 0x%08x\n", ctrl_inl(0xff800010));
	printk(KERN_INFO "MCR: 0x%08x\n", ctrl_inl(0xff800014));
	printk(KERN_INFO "PCR: 0x%08x\n", ctrl_inw(0xff800018));
/*
 *	BCR1: 0xa3020008
 *	BCR2: 0x0001
 *	WCR1: 0x01110111
 *	WCR2: 0x618066d8
 *	WCR3: 0x07777777
 *	MCR: 0xc00a0e24
 *	PCR: 0x0000
 */
#endif
	return 0;
}
示例#2
0
static void __init dreamcast_setup(char **cmdline_p)
{
	int i;

	/* Mask all hardware events */
	/* XXX */

	/* Acknowledge any previous events */
	/* XXX */

	__set_io_port_base(0xa0000000);

	/* Assign all virtual IRQs to the System ASIC int. handler */
	for (i = HW_EVENT_IRQ_BASE; i < HW_EVENT_IRQ_MAX; i++)
		irq_desc[i].chip = &systemasic_int;

	board_time_init = aica_time_init;

#ifdef CONFIG_PCI
	if (gapspci_init() < 0)
		printk(KERN_WARNING "GAPSPCI was not detected.\n");
#endif
}