Commit eb41c8be authored by H. Peter Anvin's avatar H. Peter Anvin

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: default avatarH. Peter Anvin <hpa@zytor.com>
Acked-by: default avatarThomas Gleixner <tglx@linutronix.de>
Cc: Jack Steiner <steiner@sgi.com>
LKML-Reference: <20091119202341.GA4420@sgi.com>
parent 65f116f5
...@@ -24,6 +24,4 @@ int io_reserve_memtype(resource_size_t start, resource_size_t end, ...@@ -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); 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 */ #endif /* _ASM_X86_PAT_H */
...@@ -113,16 +113,16 @@ struct x86_cpuinit_ops { ...@@ -113,16 +113,16 @@ struct x86_cpuinit_ops {
/** /**
* struct x86_platform_ops - platform specific runtime functions * struct x86_platform_ops - platform specific runtime functions
* @is_untracked_pat_range exclude from PAT logic
* @calibrate_tsc: calibrate TSC * @calibrate_tsc: calibrate TSC
* @get_wallclock: get time from HW clock like RTC etc. * @get_wallclock: get time from HW clock like RTC etc.
* @set_wallclock: set time back to HW clock * @set_wallclock: set time back to HW clock
* @is_untracked_pat_range exclude from PAT logic
*/ */
struct x86_platform_ops { struct x86_platform_ops {
int (*is_untracked_pat_range)(u64 start, u64 end);
unsigned long (*calibrate_tsc)(void); unsigned long (*calibrate_tsc)(void);
unsigned long (*get_wallclock)(void); unsigned long (*get_wallclock)(void);
int (*set_wallclock)(unsigned long nowtime); int (*set_wallclock)(unsigned long nowtime);
bool (*is_untracked_pat_range)(u64 start, u64 end);
}; };
extern struct x86_init_ops x86_init; extern struct x86_init_ops x86_init;
......
...@@ -37,12 +37,12 @@ DEFINE_PER_CPU(int, x2apic_extra_bits); ...@@ -37,12 +37,12 @@ DEFINE_PER_CPU(int, x2apic_extra_bits);
static enum uv_system_type uv_system_type; static enum uv_system_type uv_system_type;
static u64 gru_start_paddr, gru_end_paddr; 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; 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); return is_ISA_range(start, end) || is_GRU_range(start, end);
} }
......
...@@ -70,8 +70,8 @@ struct x86_cpuinit_ops x86_cpuinit __cpuinitdata = { ...@@ -70,8 +70,8 @@ struct x86_cpuinit_ops x86_cpuinit __cpuinitdata = {
}; };
struct x86_platform_ops x86_platform = { struct x86_platform_ops x86_platform = {
.is_untracked_pat_range = default_is_untracked_pat_range,
.calibrate_tsc = native_calibrate_tsc, .calibrate_tsc = native_calibrate_tsc,
.get_wallclock = mach_get_cmos_time, .get_wallclock = mach_get_cmos_time,
.set_wallclock = mach_set_rtc_mmss, .set_wallclock = mach_set_rtc_mmss,
.is_untracked_pat_range = is_ISA_range,
}; };
...@@ -349,11 +349,6 @@ static int free_ram_pages_type(u64 start, u64 end) ...@@ -349,11 +349,6 @@ static int free_ram_pages_type(u64 start, u64 end)
return 0; 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: * req_type typically has one of the:
* - _PAGE_CACHE_WB * - _PAGE_CACHE_WB
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment