summaryrefslogtreecommitdiffstats
path: root/arch/mips/qemu/q-setup.c
blob: e100d6072e3100210653088bfe44d51cc25c7a74 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
#include <linux/init.h>
#include <asm/io.h>
#include <asm/time.h>

extern void qemu_reboot_setup(void);

#define QEMU_PORT_BASE 0xb4000000

const char *get_system_type(void)
{
	return "Qemu";
}

static void __init qemu_timer_setup(struct irqaction *irq)
{
	/* set the clock to 100 Hz */
	outb_p(0x34,0x43);		/* binary, mode 2, LSB/MSB, ch 0 */
	outb_p(LATCH & 0xff , 0x40);	/* LSB */
	outb(LATCH >> 8 , 0x40);	/* MSB */
	setup_irq(0, irq);
}

void __init plat_mem_setup(void)
{
	set_io_port_base(QEMU_PORT_BASE);
	board_timer_setup = qemu_timer_setup;

	qemu_reboot_setup();
}