diff options
author | H. Peter Anvin <hpa@zytor.com> | 2009-11-23 17:46:07 -0500 |
---|---|---|
committer | H. Peter Anvin <hpa@zytor.com> | 2009-11-23 20:09:59 -0500 |
commit | eb41c8be89dbe079f49202774e04a79ccac48a09 (patch) | |
tree | e57452dfa35f00f7a7db373d395d9feafab252a7 /arch | |
parent | 65f116f5f16dc3371fce24fb24bc4843b5380ba5 (diff) |
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>
Diffstat (limited to 'arch')
-rw-r--r-- | arch/x86/include/asm/pat.h | 2 | ||||
-rw-r--r-- | arch/x86/include/asm/x86_init.h | 4 | ||||
-rw-r--r-- | arch/x86/kernel/apic/x2apic_uv_x.c | 4 | ||||
-rw-r--r-- | arch/x86/kernel/x86_init.c | 2 | ||||
-rw-r--r-- | arch/x86/mm/pat.c | 5 |
5 files changed, 5 insertions, 12 deletions
diff --git a/arch/x86/include/asm/pat.h b/arch/x86/include/asm/pat.h index 4c35dd016b54..e2c1668dde7a 100644 --- a/arch/x86/include/asm/pat.h +++ b/arch/x86/include/asm/pat.h | |||
@@ -24,6 +24,4 @@ int io_reserve_memtype(resource_size_t start, resource_size_t end, | |||
24 | 24 | ||
25 | void io_free_memtype(resource_size_t start, resource_size_t end); | 25 | void io_free_memtype(resource_size_t start, resource_size_t end); |
26 | 26 | ||
27 | int default_is_untracked_pat_range(u64 start, u64 end); | ||
28 | |||
29 | #endif /* _ASM_X86_PAT_H */ | 27 | #endif /* _ASM_X86_PAT_H */ |
diff --git a/arch/x86/include/asm/x86_init.h b/arch/x86/include/asm/x86_init.h index 8112ed786287..024cf3c1fd82 100644 --- a/arch/x86/include/asm/x86_init.h +++ b/arch/x86/include/asm/x86_init.h | |||
@@ -113,16 +113,16 @@ struct x86_cpuinit_ops { | |||
113 | 113 | ||
114 | /** | 114 | /** |
115 | * struct x86_platform_ops - platform specific runtime functions | 115 | * struct x86_platform_ops - platform specific runtime functions |
116 | * @is_untracked_pat_range exclude from PAT logic | ||
117 | * @calibrate_tsc: calibrate TSC | 116 | * @calibrate_tsc: calibrate TSC |
118 | * @get_wallclock: get time from HW clock like RTC etc. | 117 | * @get_wallclock: get time from HW clock like RTC etc. |
119 | * @set_wallclock: set time back to HW clock | 118 | * @set_wallclock: set time back to HW clock |
119 | * @is_untracked_pat_range exclude from PAT logic | ||
120 | */ | 120 | */ |
121 | struct x86_platform_ops { | 121 | struct x86_platform_ops { |
122 | int (*is_untracked_pat_range)(u64 start, u64 end); | ||
123 | unsigned long (*calibrate_tsc)(void); | 122 | unsigned long (*calibrate_tsc)(void); |
124 | unsigned long (*get_wallclock)(void); | 123 | unsigned long (*get_wallclock)(void); |
125 | int (*set_wallclock)(unsigned long nowtime); | 124 | int (*set_wallclock)(unsigned long nowtime); |
125 | bool (*is_untracked_pat_range)(u64 start, u64 end); | ||
126 | }; | 126 | }; |
127 | 127 | ||
128 | extern struct x86_init_ops x86_init; | 128 | extern struct x86_init_ops x86_init; |
diff --git a/arch/x86/kernel/apic/x2apic_uv_x.c b/arch/x86/kernel/apic/x2apic_uv_x.c index 2477c9f88093..597a47b1cec6 100644 --- a/arch/x86/kernel/apic/x2apic_uv_x.c +++ b/arch/x86/kernel/apic/x2apic_uv_x.c | |||
@@ -37,12 +37,12 @@ DEFINE_PER_CPU(int, x2apic_extra_bits); | |||
37 | static enum uv_system_type uv_system_type; | 37 | static enum uv_system_type uv_system_type; |
38 | static u64 gru_start_paddr, gru_end_paddr; | 38 | static u64 gru_start_paddr, gru_end_paddr; |
39 | 39 | ||
40 | static int is_GRU_range(u64 start, u64 end) | 40 | static inline bool is_GRU_range(u64 start, u64 end) |
41 | { | 41 | { |
42 | return start >= gru_start_paddr && end < gru_end_paddr; | 42 | return start >= gru_start_paddr && end < gru_end_paddr; |
43 | } | 43 | } |
44 | 44 | ||
45 | static int uv_is_untracked_pat_range(u64 start, u64 end) | 45 | static bool uv_is_untracked_pat_range(u64 start, u64 end) |
46 | { | 46 | { |
47 | return is_ISA_range(start, end) || is_GRU_range(start, end); | 47 | return is_ISA_range(start, end) || is_GRU_range(start, end); |
48 | } | 48 | } |
diff --git a/arch/x86/kernel/x86_init.c b/arch/x86/kernel/x86_init.c index bcc749ef62dc..861b8b54e172 100644 --- a/arch/x86/kernel/x86_init.c +++ b/arch/x86/kernel/x86_init.c | |||
@@ -70,8 +70,8 @@ struct x86_cpuinit_ops x86_cpuinit __cpuinitdata = { | |||
70 | }; | 70 | }; |
71 | 71 | ||
72 | struct x86_platform_ops x86_platform = { | 72 | struct x86_platform_ops x86_platform = { |
73 | .is_untracked_pat_range = default_is_untracked_pat_range, | ||
74 | .calibrate_tsc = native_calibrate_tsc, | 73 | .calibrate_tsc = native_calibrate_tsc, |
75 | .get_wallclock = mach_get_cmos_time, | 74 | .get_wallclock = mach_get_cmos_time, |
76 | .set_wallclock = mach_set_rtc_mmss, | 75 | .set_wallclock = mach_set_rtc_mmss, |
76 | .is_untracked_pat_range = is_ISA_range, | ||
77 | }; | 77 | }; |
diff --git a/arch/x86/mm/pat.c b/arch/x86/mm/pat.c index b5bc08cfcea6..ef712518b5b4 100644 --- a/arch/x86/mm/pat.c +++ b/arch/x86/mm/pat.c | |||
@@ -349,11 +349,6 @@ static int free_ram_pages_type(u64 start, u64 end) | |||
349 | return 0; | 349 | return 0; |
350 | } | 350 | } |
351 | 351 | ||
352 | int default_is_untracked_pat_range(u64 start, u64 end) | ||
353 | { | ||
354 | return is_ISA_range(start, end); | ||
355 | } | ||
356 | |||
357 | /* | 352 | /* |
358 | * req_type typically has one of the: | 353 | * req_type typically has one of the: |
359 | * - _PAGE_CACHE_WB | 354 | * - _PAGE_CACHE_WB |