Subversion Repositories shark

Rev

Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
424 giacomo 1
/**
2
 * machine_specific_memory_setup - Hook for machine specific memory setup.
3
 *
4
 * Description:
5
 *      This is included late in kernel/setup.c so that it can make
6
 *      use of all of the static functions.
7
 **/
8
 
9
static inline char * __init machine_specific_memory_setup(void)
10
{
11
        char *who;
12
        unsigned long low_mem_size, lower_high, higher_high;
13
 
14
 
15
        who = "BIOS (common area)";
16
 
17
        low_mem_size = ((*(unsigned char *)__va(PC9800SCA_BIOS_FLAG) & 7) + 1) << 17;
18
        add_memory_region(0, low_mem_size, 1);
19
        lower_high = (__u32) *(__u8 *) bus_to_virt(PC9800SCA_EXPMMSZ) << 17;
20
        higher_high = (__u32) *(__u16 *) bus_to_virt(PC9800SCA_MMSZ16M) << 20;
21
        if (lower_high != 0x00f00000UL) {
22
                add_memory_region(HIGH_MEMORY, lower_high, 1);
23
                add_memory_region(0x01000000UL, higher_high, 1);
24
        }
25
        else
26
                add_memory_region(HIGH_MEMORY, lower_high + higher_high, 1);
27
 
28
        return who;
29
}