Rev 424 | Details | Compare with Previous | Last modification | View Log | RSS feed
Rev | Author | Line No. | Line |
---|---|---|---|
424 | giacomo | 1 | /* Hook to call BIOS initialisation function */ |
2 | |||
3 | /* no action for generic */ |
||
4 | |||
5 | #define ARCH_SETUP arch_setup_pc9800(); |
||
6 | |||
7 | #include <linux/timex.h> |
||
8 | #include <asm/io.h> |
||
9 | #include <asm/pc9800.h> |
||
10 | #include <asm/pc9800_sca.h> |
||
11 | |||
12 | int CLOCK_TICK_RATE; |
||
13 | extern unsigned long tick_usec; /* ACTHZ period (usec) */ |
||
14 | extern unsigned long tick_nsec; /* USER_HZ period (nsec) */ |
||
15 | unsigned char pc9800_misc_flags; |
||
16 | /* (bit 0) 1:High Address Video ram exists 0:otherwise */ |
||
17 | |||
18 | #ifdef CONFIG_SMP |
||
19 | #define MPC_TABLE_SIZE 512 |
||
20 | #define MPC_TABLE ((char *) (PARAM+0x400)) |
||
21 | char mpc_table[MPC_TABLE_SIZE]; |
||
22 | #endif |
||
23 | |||
24 | static inline void arch_setup_pc9800(void) |
||
25 | { |
||
26 | CLOCK_TICK_RATE = PC9800_8MHz_P() ? 1996800 : 2457600; |
||
27 | printk(KERN_DEBUG "CLOCK_TICK_RATE = %d\n", CLOCK_TICK_RATE); |
||
28 | tick_usec = TICK_USEC; /* USER_HZ period (usec) */ |
||
29 | tick_nsec = TICK_NSEC; /* ACTHZ period (nsec) */ |
||
30 | |||
31 | pc9800_misc_flags = PC9800_MISC_FLAGS; |
||
32 | #ifdef CONFIG_SMP |
||
33 | if ((*(u32 *)(MPC_TABLE)) == 0x504d4350) |
||
34 | memcpy(mpc_table, MPC_TABLE, *(u16 *)(MPC_TABLE + 4)); |
||
35 | #endif /* CONFIG_SMP */ |
||
36 | } |