x86, platform: Change is_untracked_pat_range() to bool; cleanup init

- Change is_untracked_pat_range() to return bool.
- Clean up the initialization of is_untracked_pat_range() -- by default,
  we simply point it at is_ISA_range() directly.
- Move is_untracked_pat_range to the end of struct x86_platform, since
  it is the newest field.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
Acked-by: Thomas Gleixner <tglx@linutronix.de>
Cc: Jack Steiner <steiner@sgi.com>
LKML-Reference: <20091119202341.GA4420@sgi.com>
This commit is contained in:
H. Peter Anvin 2009-11-23 14:46:07 -08:00
parent 65f116f5f1
commit eb41c8be89
5 changed files with 5 additions and 12 deletions

View file

@ -24,6 +24,4 @@ int io_reserve_memtype(resource_size_t start, resource_size_t end,
void io_free_memtype(resource_size_t start, resource_size_t end);
int default_is_untracked_pat_range(u64 start, u64 end);
#endif /* _ASM_X86_PAT_H */

View file

@ -113,16 +113,16 @@ struct x86_cpuinit_ops {
/**
* struct x86_platform_ops - platform specific runtime functions
* @is_untracked_pat_range exclude from PAT logic
* @calibrate_tsc: calibrate TSC
* @get_wallclock: get time from HW clock like RTC etc.
* @set_wallclock: set time back to HW clock
* @is_untracked_pat_range exclude from PAT logic
*/
struct x86_platform_ops {
int (*is_untracked_pat_range)(u64 start, u64 end);
unsigned long (*calibrate_tsc)(void);
unsigned long (*get_wallclock)(void);
int (*set_wallclock)(unsigned long nowtime);
bool (*is_untracked_pat_range)(u64 start, u64 end);
};
extern struct x86_init_ops x86_init;

View file

@ -37,12 +37,12 @@ DEFINE_PER_CPU(int, x2apic_extra_bits);
static enum uv_system_type uv_system_type;
static u64 gru_start_paddr, gru_end_paddr;
static int is_GRU_range(u64 start, u64 end)
static inline bool is_GRU_range(u64 start, u64 end)
{
return start >= gru_start_paddr && end < gru_end_paddr;
}
static int uv_is_untracked_pat_range(u64 start, u64 end)
static bool uv_is_untracked_pat_range(u64 start, u64 end)
{
return is_ISA_range(start, end) || is_GRU_range(start, end);
}

View file

@ -70,8 +70,8 @@ struct x86_cpuinit_ops x86_cpuinit __cpuinitdata = {
};
struct x86_platform_ops x86_platform = {
.is_untracked_pat_range = default_is_untracked_pat_range,
.calibrate_tsc = native_calibrate_tsc,
.get_wallclock = mach_get_cmos_time,
.set_wallclock = mach_set_rtc_mmss,
.is_untracked_pat_range = is_ISA_range,
};

View file

@ -349,11 +349,6 @@ static int free_ram_pages_type(u64 start, u64 end)
return 0;
}
int default_is_untracked_pat_range(u64 start, u64 end)
{
return is_ISA_range(start, end);
}
/*
* req_type typically has one of the:
* - _PAGE_CACHE_WB