Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
L
linux-davinci
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Redmine
Redmine
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Operations
Operations
Metrics
Environments
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
linux
linux-davinci
Commits
60916285
Commit
60916285
authored
Feb 20, 2009
by
Ingo Molnar
Browse files
Options
Browse Files
Download
Plain Diff
Merge branches 'x86/asm', 'x86/cleanups' and 'x86/headers' into x86/core
parents
3b6f7b9b
cb425afd
ecab22aa
e9ce0c37
Changes
38
Hide whitespace changes
Inline
Side-by-side
Showing
38 changed files
with
87 additions
and
158 deletions
+87
-158
arch/x86/boot/compressed/head_32.S
arch/x86/boot/compressed/head_32.S
+4
-4
arch/x86/boot/compressed/head_64.S
arch/x86/boot/compressed/head_64.S
+4
-6
arch/x86/boot/copy.S
arch/x86/boot/copy.S
+14
-26
arch/x86/boot/header.S
arch/x86/boot/header.S
+1
-1
arch/x86/boot/pmjump.S
arch/x86/boot/pmjump.S
+5
-11
arch/x86/include/asm/io.h
arch/x86/include/asm/io.h
+8
-3
arch/x86/include/asm/linkage.h
arch/x86/include/asm/linkage.h
+4
-60
arch/x86/include/asm/page_32_types.h
arch/x86/include/asm/page_32_types.h
+0
-2
arch/x86/include/asm/page_64_types.h
arch/x86/include/asm/page_64_types.h
+0
-2
arch/x86/include/asm/page_types.h
arch/x86/include/asm/page_types.h
+0
-6
arch/x86/include/asm/pgtable-2level_types.h
arch/x86/include/asm/pgtable-2level_types.h
+2
-0
arch/x86/include/asm/pgtable-3level_types.h
arch/x86/include/asm/pgtable-3level_types.h
+2
-0
arch/x86/include/asm/pgtable_64_types.h
arch/x86/include/asm/pgtable_64_types.h
+1
-0
arch/x86/include/asm/pgtable_types.h
arch/x86/include/asm/pgtable_types.h
+6
-0
arch/x86/include/asm/processor.h
arch/x86/include/asm/processor.h
+0
-1
arch/x86/include/asm/syscalls.h
arch/x86/include/asm/syscalls.h
+1
-1
arch/x86/kernel/acpi/realmode/wakeup.S
arch/x86/kernel/acpi/realmode/wakeup.S
+2
-2
arch/x86/kernel/acpi/wakeup_32.S
arch/x86/kernel/acpi/wakeup_32.S
+1
-1
arch/x86/kernel/acpi/wakeup_64.S
arch/x86/kernel/acpi/wakeup_64.S
+2
-2
arch/x86/kernel/cpu/cpufreq/e_powersaver.c
arch/x86/kernel/cpu/cpufreq/e_powersaver.c
+3
-3
arch/x86/kernel/cpu/cpufreq/speedstep-centrino.c
arch/x86/kernel/cpu/cpufreq/speedstep-centrino.c
+3
-3
arch/x86/kernel/cpu/intel.c
arch/x86/kernel/cpu/intel.c
+2
-2
arch/x86/kernel/cpu/mcheck/mce_intel_64.c
arch/x86/kernel/cpu/mcheck/mce_intel_64.c
+3
-3
arch/x86/kernel/cpu/mcheck/p4.c
arch/x86/kernel/cpu/mcheck/p4.c
+2
-2
arch/x86/kernel/efi_stub_32.S
arch/x86/kernel/efi_stub_32.S
+1
-1
arch/x86/kernel/entry_32.S
arch/x86/kernel/entry_32.S
+1
-1
arch/x86/kernel/entry_64.S
arch/x86/kernel/entry_64.S
+1
-1
arch/x86/kernel/head_32.S
arch/x86/kernel/head_32.S
+2
-2
arch/x86/kernel/relocate_kernel_32.S
arch/x86/kernel/relocate_kernel_32.S
+1
-1
arch/x86/kernel/relocate_kernel_64.S
arch/x86/kernel/relocate_kernel_64.S
+2
-2
arch/x86/kernel/trampoline_32.S
arch/x86/kernel/trampoline_32.S
+1
-1
arch/x86/kernel/trampoline_64.S
arch/x86/kernel/trampoline_64.S
+2
-2
arch/x86/kernel/vmlinux_32.lds.S
arch/x86/kernel/vmlinux_32.lds.S
+1
-1
arch/x86/kernel/vmlinux_64.lds.S
arch/x86/kernel/vmlinux_64.lds.S
+1
-1
arch/x86/lib/getuser.S
arch/x86/lib/getuser.S
+1
-1
arch/x86/power/hibernate_asm_32.S
arch/x86/power/hibernate_asm_32.S
+1
-1
arch/x86/power/hibernate_asm_64.S
arch/x86/power/hibernate_asm_64.S
+1
-1
arch/x86/xen/xen-head.S
arch/x86/xen/xen-head.S
+1
-1
No files found.
arch/x86/boot/compressed/head_32.S
View file @
60916285
...
...
@@ -25,14 +25,12 @@
#include <linux/linkage.h>
#include <asm/segment.h>
#include <asm/page.h>
#include <asm/page
_types
.h>
#include <asm/boot.h>
#include <asm/asm-offsets.h>
.
section
".
text.head
","
ax
",@
progbits
.
globl
startup_32
startup_32
:
ENTRY
(
startup_32
)
cld
/
*
test
KEEP_SEGMENTS
flag
to
see
if
the
bootloader
is
asking
*
us
to
not
reload
segments
*/
...
...
@@ -113,6 +111,8 @@ startup_32:
*/
leal
relocated
(%
ebx
),
%
eax
jmp
*%
eax
ENDPROC
(
startup_32
)
.
section
".
text
"
relocated
:
...
...
arch/x86/boot/compressed/head_64.S
View file @
60916285
...
...
@@ -26,8 +26,8 @@
#include <linux/linkage.h>
#include <asm/segment.h>
#include <asm/pgtable.h>
#include <asm/page.h>
#include <asm/pgtable
_types
.h>
#include <asm/page
_types
.h>
#include <asm/boot.h>
#include <asm/msr.h>
#include <asm/processor-flags.h>
...
...
@@ -35,9 +35,7 @@
.
section
".
text.head
"
.
code32
.
globl
startup_32
startup_32
:
ENTRY
(
startup_32
)
cld
/
*
test
KEEP_SEGMENTS
flag
to
see
if
the
bootloader
is
asking
*
us
to
not
reload
segments
*/
...
...
@@ -176,6 +174,7 @@ startup_32:
/
*
Jump
from
32
bit
compatibility
mode
into
64
bit
mode
.
*/
lret
ENDPROC
(
startup_32
)
no_longmode
:
/
*
This
isn
't an x86-64 CPU so hang */
...
...
@@ -295,7 +294,6 @@ relocated:
call
decompress_kernel
popq
%
rsi
/*
*
Jump
to
the
decompressed
kernel
.
*/
...
...
arch/x86/boot/copy.S
View file @
60916285
...
...
@@ -8,6 +8,8 @@
*
*
-----------------------------------------------------------------------
*/
#include <linux/linkage.h>
/*
*
Memory
copy
routines
*/
...
...
@@ -15,9 +17,7 @@
.
code16gcc
.
text
.
globl
memcpy
.
type
memcpy
,
@
function
memcpy
:
GLOBAL
(
memcpy
)
pushw
%
si
pushw
%
di
movw
%
ax
,
%
di
...
...
@@ -31,11 +31,9 @@ memcpy:
popw
%
di
popw
%
si
ret
.
size
memcpy
,
.
-
memcpy
ENDPROC
(
memcpy
)
.
globl
memset
.
type
memset
,
@
function
memset
:
GLOBAL
(
memset
)
pushw
%
di
movw
%
ax
,
%
di
movzbl
%
dl
,
%
eax
...
...
@@ -48,52 +46,42 @@ memset:
rep
; stosb
popw
%
di
ret
.
size
memset
,
.
-
memset
ENDPROC
(
memset
)
.
globl
copy_from_fs
.
type
copy_from_fs
,
@
function
copy_from_fs
:
GLOBAL
(
copy_from_fs
)
pushw
%
ds
pushw
%
fs
popw
%
ds
call
memcpy
popw
%
ds
ret
.
size
copy_from_fs
,
.
-
copy_from_fs
ENDPROC
(
copy_from_fs
)
.
globl
copy_to_fs
.
type
copy_to_fs
,
@
function
copy_to_fs
:
GLOBAL
(
copy_to_fs
)
pushw
%
es
pushw
%
fs
popw
%
es
call
memcpy
popw
%
es
ret
.
size
copy_to_fs
,
.
-
copy_to_fs
ENDPROC
(
copy_to_fs
)
#if 0 /* Not currently used, but can be enabled as needed */
.
globl
copy_from_gs
.
type
copy_from_gs
,
@
function
copy_from_gs
:
GLOBAL
(
copy_from_gs
)
pushw
%
ds
pushw
%
gs
popw
%
ds
call
memcpy
popw
%
ds
ret
.
size
copy_from_gs
,
.
-
copy_from_gs
.
globl
copy_to_gs
ENDPROC
(
copy_from_gs
)
.
type
copy_to_gs
,
@
function
copy_to_gs
:
GLOBAL
(
copy_to_gs
)
pushw
%
es
pushw
%
gs
popw
%
es
call
memcpy
popw
%
es
ret
.
size
copy_to_gs
,
.
-
copy_to_gs
ENDPROC
(
copy_to_gs
)
#endif
arch/x86/boot/header.S
View file @
60916285
...
...
@@ -19,7 +19,7 @@
#include <linux/utsrelease.h>
#include <asm/boot.h>
#include <asm/e820.h>
#include <asm/page.h>
#include <asm/page
_types
.h>
#include <asm/setup.h>
#include "boot.h"
#include "offsets.h"
...
...
arch/x86/boot/pmjump.S
View file @
60916285
...
...
@@ -15,18 +15,15 @@
#include <asm/boot.h>
#include <asm/processor-flags.h>
#include <asm/segment.h>
#include <linux/linkage.h>
.
text
.
globl
protected_mode_jump
.
type
protected_mode_jump
,
@
function
.
code16
/*
*
void
protected_mode_jump
(
u32
entrypoint
,
u32
bootparams
)
;
*/
protected_mode_jump
:
GLOBAL
(
protected_mode_jump
)
movl
%
edx
,
%
esi
#
Pointer
to
boot_params
table
xorl
%
ebx
,
%
ebx
...
...
@@ -47,12 +44,10 @@ protected_mode_jump:
.
byte
0x66
,
0xea
#
ljmpl
opcode
2
:
.
long
in_pm32
#
offset
.
word
__BOOT_CS
#
segment
.
size
protected_mode_jump
,
.
-
protected_mode_jump
ENDPROC
(
protected_mode_jump
)
.
code32
.
type
in_pm32
,
@
function
in_pm32
:
GLOBAL
(
in_pm32
)
#
Set
up
data
segments
for
flat
32
-
bit
mode
movl
%
ecx
,
%
ds
movl
%
ecx
,
%
es
...
...
@@ -78,5 +73,4 @@ in_pm32:
lldt
%
cx
jmpl
*%
eax
#
Jump
to
the
32
-
bit
entrypoint
.
size
in_pm32
,
.
-
in_pm32
ENDPROC
(
in_pm32
)
arch/x86/include/asm/io.h
View file @
60916285
...
...
@@ -124,10 +124,15 @@ static inline void *phys_to_virt(phys_addr_t address)
/*
* ISA I/O bus memory addresses are 1:1 with the physical address.
* However, we truncate the address to unsigned int to avoid undesirable
* promitions in legacy drivers.
*/
#define isa_virt_to_bus (unsigned long)virt_to_phys
#define isa_page_to_bus page_to_phys
#define isa_bus_to_virt phys_to_virt
static
inline
unsigned
int
isa_virt_to_bus
(
volatile
void
*
address
)
{
return
(
unsigned
int
)
virt_to_phys
(
address
);
}
#define isa_page_to_bus(page) ((unsigned int)page_to_phys(page))
#define isa_bus_to_virt phys_to_virt
/*
* However PCI ones are not necessarily 1:1 and therefore these interfaces
...
...
arch/x86/include/asm/linkage.h
View file @
60916285
...
...
@@ -52,70 +52,14 @@
#endif
#define GLOBAL(name) \
.globl name; \
name:
#ifdef CONFIG_X86_ALIGNMENT_16
#define __ALIGN .align 16,0x90
#define __ALIGN_STR ".align 16,0x90"
#endif
/*
* to check ENTRY_X86/END_X86 and
* KPROBE_ENTRY_X86/KPROBE_END_X86
* unbalanced-missed-mixed appearance
*/
#define __set_entry_x86 .set ENTRY_X86_IN, 0
#define __unset_entry_x86 .set ENTRY_X86_IN, 1
#define __set_kprobe_x86 .set KPROBE_X86_IN, 0
#define __unset_kprobe_x86 .set KPROBE_X86_IN, 1
#define __macro_err_x86 .error "ENTRY_X86/KPROBE_X86 unbalanced,missed,mixed"
#define __check_entry_x86 \
.ifdef ENTRY_X86_IN; \
.ifeq ENTRY_X86_IN; \
__macro_err_x86; \
.abort; \
.endif; \
.endif
#define __check_kprobe_x86 \
.ifdef KPROBE_X86_IN; \
.ifeq KPROBE_X86_IN; \
__macro_err_x86; \
.abort; \
.endif; \
.endif
#define __check_entry_kprobe_x86 \
__check_entry_x86; \
__check_kprobe_x86
#define ENTRY_KPROBE_FINAL_X86 __check_entry_kprobe_x86
#define ENTRY_X86(name) \
__check_entry_kprobe_x86; \
__set_entry_x86; \
.globl name; \
__ALIGN; \
name:
#define END_X86(name) \
__unset_entry_x86; \
__check_entry_kprobe_x86; \
.size name, .-name
#define KPROBE_ENTRY_X86(name) \
__check_entry_kprobe_x86; \
__set_kprobe_x86; \
.pushsection .kprobes.text, "ax"; \
.globl name; \
__ALIGN; \
name:
#define KPROBE_END_X86(name) \
__unset_kprobe_x86; \
__check_entry_kprobe_x86; \
.size name, .-name; \
.popsection
#endif
/* _ASM_X86_LINKAGE_H */
arch/x86/include/asm/page_32_types.h
View file @
60916285
...
...
@@ -33,12 +33,10 @@
/* 44=32+12, the limit we can fit into an unsigned long pfn */
#define __PHYSICAL_MASK_SHIFT 44
#define __VIRTUAL_MASK_SHIFT 32
#define PAGETABLE_LEVELS 3
#else
/* !CONFIG_X86_PAE */
#define __PHYSICAL_MASK_SHIFT 32
#define __VIRTUAL_MASK_SHIFT 32
#define PAGETABLE_LEVELS 2
#endif
/* CONFIG_X86_PAE */
#ifndef __ASSEMBLY__
...
...
arch/x86/include/asm/page_64_types.h
View file @
60916285
#ifndef _ASM_X86_PAGE_64_DEFS_H
#define _ASM_X86_PAGE_64_DEFS_H
#define PAGETABLE_LEVELS 4
#define THREAD_ORDER 1
#define THREAD_SIZE (PAGE_SIZE << THREAD_ORDER)
#define CURRENT_MASK (~(THREAD_SIZE - 1))
...
...
arch/x86/include/asm/page_types.h
View file @
60916285
...
...
@@ -16,12 +16,6 @@
(ie, 32-bit PAE). */
#define PHYSICAL_PAGE_MASK (((signed long)PAGE_MASK) & __PHYSICAL_MASK)
/* PTE_PFN_MASK extracts the PFN from a (pte|pmd|pud|pgd)val_t */
#define PTE_PFN_MASK ((pteval_t)PHYSICAL_PAGE_MASK)
/* PTE_FLAGS_MASK extracts the flags from a (pte|pmd|pud|pgd)val_t */
#define PTE_FLAGS_MASK (~PTE_PFN_MASK)
#define PMD_PAGE_SIZE (_AC(1, UL) << PMD_SHIFT)
#define PMD_PAGE_MASK (~(PMD_PAGE_SIZE-1))
...
...
arch/x86/include/asm/pgtable-2level_types.h
View file @
60916285
...
...
@@ -17,6 +17,7 @@ typedef union {
#endif
/* !__ASSEMBLY__ */
#define SHARED_KERNEL_PMD 0
#define PAGETABLE_LEVELS 2
/*
* traditional i386 two-level paging structure:
...
...
@@ -25,6 +26,7 @@ typedef union {
#define PGDIR_SHIFT 22
#define PTRS_PER_PGD 1024
/*
* the i386 is two-level, so we don't really have any
* PMD directory physically.
...
...
arch/x86/include/asm/pgtable-3level_types.h
View file @
60916285
...
...
@@ -24,6 +24,8 @@ typedef union {
#define SHARED_KERNEL_PMD 1
#endif
#define PAGETABLE_LEVELS 3
/*
* PGDIR_SHIFT determines what a top-level page table entry can map
*/
...
...
arch/x86/include/asm/pgtable_64_types.h
View file @
60916285
...
...
@@ -18,6 +18,7 @@ typedef struct { pteval_t pte; } pte_t;
#endif
/* !__ASSEMBLY__ */
#define SHARED_KERNEL_PMD 0
#define PAGETABLE_LEVELS 4
/*
* PGDIR_SHIFT determines what a top-level page table entry can map
...
...
arch/x86/include/asm/pgtable_types.h
View file @
60916285
...
...
@@ -173,6 +173,12 @@
#include <linux/types.h>
/* PTE_PFN_MASK extracts the PFN from a (pte|pmd|pud|pgd)val_t */
#define PTE_PFN_MASK ((pteval_t)PHYSICAL_PAGE_MASK)
/* PTE_FLAGS_MASK extracts the flags from a (pte|pmd|pud|pgd)val_t */
#define PTE_FLAGS_MASK (~PTE_PFN_MASK)
typedef
struct
pgprot
{
pgprotval_t
pgprot
;
}
pgprot_t
;
typedef
struct
{
pgdval_t
pgd
;
}
pgd_t
;
...
...
arch/x86/include/asm/processor.h
View file @
60916285
...
...
@@ -403,7 +403,6 @@ DECLARE_PER_CPU(unsigned long, stack_canary);
#endif
#endif
/* X86_64 */
extern
void
print_cpu_info
(
struct
cpuinfo_x86
*
);
extern
unsigned
int
xstate_size
;
extern
void
free_thread_xstate
(
struct
task_struct
*
);
extern
struct
kmem_cache
*
task_xstate_cachep
;
...
...
arch/x86/include/asm/syscalls.h
View file @
60916285
...
...
@@ -82,7 +82,7 @@ asmlinkage long sys_iopl(unsigned int, struct pt_regs *);
/* kernel/signal_64.c */
asmlinkage
long
sys_sigaltstack
(
const
stack_t
__user
*
,
stack_t
__user
*
,
struct
pt_regs
*
);
asmlinkage
long
sys_rt_sigreturn
(
struct
pt_regs
*
);
long
sys_rt_sigreturn
(
struct
pt_regs
*
);
/* kernel/sys_x86_64.c */
asmlinkage
long
sys_mmap
(
unsigned
long
,
unsigned
long
,
unsigned
long
,
...
...
arch/x86/kernel/acpi/realmode/wakeup.S
View file @
60916285
...
...
@@ -3,8 +3,8 @@
*/
#include <asm/segment.h>
#include <asm/msr-index.h>
#include <asm/page.h>
#include <asm/pgtable.h>
#include <asm/page
_types
.h>
#include <asm/pgtable
_types
.h>
#include <asm/processor-flags.h>
.
code16
...
...
arch/x86/kernel/acpi/wakeup_32.S
View file @
60916285
.
section
.
text
.
page_aligned
#include <linux/linkage.h>
#include <asm/segment.h>
#include <asm/page.h>
#include <asm/page
_types
.h>
#
Copyright
2003
,
2008
Pavel
Machek
<
pavel
@
suse
.
cz
>,
distribute
under
GPLv2
...
...
arch/x86/kernel/acpi/wakeup_64.S
View file @
60916285
.
text
#include <linux/linkage.h>
#include <asm/segment.h>
#include <asm/pgtable.h>
#include <asm/page.h>
#include <asm/pgtable
_types
.h>
#include <asm/page
_types
.h>
#include <asm/msr.h>
#include <asm/asm-offsets.h>
...
...
arch/x86/kernel/cpu/cpufreq/e_powersaver.c
View file @
60916285
...
...
@@ -204,12 +204,12 @@ static int eps_cpu_init(struct cpufreq_policy *policy)
}
/* Enable Enhanced PowerSaver */
rdmsrl
(
MSR_IA32_MISC_ENABLE
,
val
);
if
(
!
(
val
&
1
<<
16
))
{
val
|=
1
<<
16
;
if
(
!
(
val
&
MSR_IA32_MISC_ENABLE_ENHANCED_SPEEDSTEP
))
{
val
|=
MSR_IA32_MISC_ENABLE_ENHANCED_SPEEDSTEP
;
wrmsrl
(
MSR_IA32_MISC_ENABLE
,
val
);
/* Can be locked at 0 */
rdmsrl
(
MSR_IA32_MISC_ENABLE
,
val
);
if
(
!
(
val
&
1
<<
16
))
{
if
(
!
(
val
&
MSR_IA32_MISC_ENABLE_ENHANCED_SPEEDSTEP
))
{
printk
(
KERN_INFO
"eps: Can't enable Enhanced PowerSaver
\n
"
);
return
-
ENODEV
;
}
...
...
arch/x86/kernel/cpu/cpufreq/speedstep-centrino.c
View file @
60916285
...
...
@@ -390,14 +390,14 @@ static int centrino_cpu_init(struct cpufreq_policy *policy)
enable it if not. */
rdmsr
(
MSR_IA32_MISC_ENABLE
,
l
,
h
);
if
(
!
(
l
&
(
1
<<
16
)
))
{
l
|=
(
1
<<
16
)
;
if
(
!
(
l
&
MSR_IA32_MISC_ENABLE_ENHANCED_SPEEDSTEP
))
{
l
|=
MSR_IA32_MISC_ENABLE_ENHANCED_SPEEDSTEP
;
dprintk
(
"trying to enable Enhanced SpeedStep (%x)
\n
"
,
l
);
wrmsr
(
MSR_IA32_MISC_ENABLE
,
l
,
h
);
/* check to see if it stuck */
rdmsr
(
MSR_IA32_MISC_ENABLE
,
l
,
h
);
if
(
!
(
l
&
(
1
<<
16
)
))
{
if
(
!
(
l
&
MSR_IA32_MISC_ENABLE_ENHANCED_SPEEDSTEP
))
{
printk
(
KERN_INFO
PFX
"couldn't enable Enhanced SpeedStep
\n
"
);
return
-
ENODEV
;
...
...
arch/x86/kernel/cpu/intel.c
View file @
60916285
...
...
@@ -146,10 +146,10 @@ static void __cpuinit intel_workarounds(struct cpuinfo_x86 *c)
*/
if
((
c
->
x86
==
15
)
&&
(
c
->
x86_model
==
1
)
&&
(
c
->
x86_mask
==
1
))
{
rdmsr
(
MSR_IA32_MISC_ENABLE
,
lo
,
hi
);
if
((
lo
&
(
1
<<
9
)
)
==
0
)
{
if
((
lo
&
MSR_IA32_MISC_ENABLE_PREFETCH_DISABLE
)
==
0
)
{
printk
(
KERN_INFO
"CPU: C0 stepping P4 Xeon detected.
\n
"
);
printk
(
KERN_INFO
"CPU: Disabling hardware prefetching (Errata 037)
\n
"
);
lo
|=
(
1
<<
9
);
/* Disable hw prefetching */
lo
|=
MSR_IA32_MISC_ENABLE_PREFETCH_DISABLE
;
wrmsr
(
MSR_IA32_MISC_ENABLE
,
lo
,
hi
);
}
}
...
...
arch/x86/kernel/cpu/mcheck/mce_intel_64.c
View file @
60916285
...
...
@@ -49,13 +49,13 @@ static void __cpuinit intel_init_thermal(struct cpuinfo_x86 *c)
*/
rdmsr
(
MSR_IA32_MISC_ENABLE
,
l
,
h
);
h
=
apic_read
(
APIC_LVTTHMR
);
if
((
l
&
(
1
<<
3
)
)
&&
(
h
&
APIC_DM_SMI
))
{
if
((
l
&
MSR_IA32_MISC_ENABLE_TM1
)
&&
(
h
&
APIC_DM_SMI
))
{
printk
(
KERN_DEBUG
"CPU%d: Thermal monitoring handled by SMI
\n
"
,
cpu
);
return
;
}
if
(
cpu_has
(
c
,
X86_FEATURE_TM2
)
&&
(
l
&
(
1
<<
13
)
))
if
(
cpu_has
(
c
,
X86_FEATURE_TM2
)
&&
(
l
&
MSR_IA32_MISC_ENABLE_TM2
))
tm2
=
1
;
if
(
h
&
APIC_VECTOR_MASK
)
{
...
...
@@ -73,7 +73,7 @@ static void __cpuinit intel_init_thermal(struct cpuinfo_x86 *c)
wrmsr
(
MSR_IA32_THERM_INTERRUPT
,
l
|
0x03
,
h
);
rdmsr
(
MSR_IA32_MISC_ENABLE
,
l
,
h
);
wrmsr
(
MSR_IA32_MISC_ENABLE
,
l
|
(
1
<<
3
)
,
h
);
wrmsr
(
MSR_IA32_MISC_ENABLE
,
l
|
MSR_IA32_MISC_ENABLE_TM1
,
h
);
l
=
apic_read
(
APIC_LVTTHMR
);
apic_write
(
APIC_LVTTHMR
,
l
&
~
APIC_LVT_MASKED
);
...
...
arch/x86/kernel/cpu/mcheck/p4.c
View file @
60916285
...
...
@@ -85,7 +85,7 @@ static void intel_init_thermal(struct cpuinfo_x86 *c)
*/
rdmsr
(
MSR_IA32_MISC_ENABLE
,
l
,
h
);
h
=
apic_read
(
APIC_LVTTHMR
);
if
((
l
&
(
1
<<
3
)
)
&&
(
h
&
APIC_DM_SMI
))
{
if
((
l
&
MSR_IA32_MISC_ENABLE_TM1
)
&&
(
h
&
APIC_DM_SMI
))
{
printk
(
KERN_DEBUG
"CPU%d: Thermal monitoring handled by SMI
\n
"
,
cpu
);
return
;
/* -EBUSY */
...
...
@@ -111,7 +111,7 @@ static void intel_init_thermal(struct cpuinfo_x86 *c)
vendor_thermal_interrupt
=
intel_thermal_interrupt
;
rdmsr
(
MSR_IA32_MISC_ENABLE
,
l
,
h
);
wrmsr
(
MSR_IA32_MISC_ENABLE
,
l
|
(
1
<<
3
)
,
h
);
wrmsr
(
MSR_IA32_MISC_ENABLE
,
l
|
MSR_IA32_MISC_ENABLE_TM1
,
h
);
l
=
apic_read
(
APIC_LVTTHMR
);
apic_write
(
APIC_LVTTHMR
,
l
&
~
APIC_LVT_MASKED
);
...
...
arch/x86/kernel/efi_stub_32.S
View file @
60916285
...
...
@@ -6,7 +6,7 @@
*/
#include <linux/linkage.h>
#include <asm/page.h>
#include <asm/page
_types
.h>
/*
*
efi_call_phys
(
void
*,
...
)
is
a
function
with
variable
parameters
.
...
...
arch/x86/kernel/entry_32.S
View file @
60916285
...
...
@@ -47,7 +47,7 @@
#include <asm/errno.h>
#include <asm/segment.h>
#include <asm/smp.h>
#include <asm/page.h>
#include <asm/page
_types
.h>
#include <asm/desc.h>
#include <asm/percpu.h>
#include <asm/dwarf2.h>
...
...
arch/x86/kernel/entry_64.S
View file @
60916285
...
...
@@ -48,7 +48,7 @@
#include <asm/unistd.h>
#include <asm/thread_info.h>
#include <asm/hw_irq.h>
#include <asm/page.h>
#include <asm/page
_types
.h>
#include <asm/irqflags.h>
#include <asm/paravirt.h>
#include <asm/ftrace.h>
...
...
arch/x86/kernel/head_32.S
View file @
60916285
...
...
@@ -11,8 +11,8 @@
#include <linux/init.h>
#include <linux/linkage.h>
#include <asm/segment.h>
#include <asm/page.h>
#include <asm/pgtable.h>
#include <asm/page
_types
.h>
#include <asm/pgtable
_types
.h>
#include <asm/desc.h>
#include <asm/cache.h>
#include <asm/thread_info.h>
...
...
arch/x86/kernel/relocate_kernel_32.S
View file @
60916285
...
...
@@ -7,7 +7,7 @@
*/
#include <linux/linkage.h>
#include <asm/page.h>
#include <asm/page
_types
.h>
#include <asm/kexec.h>
#include <asm/processor-flags.h>
...
...
arch/x86/kernel/relocate_kernel_64.S
View file @
60916285
...
...
@@ -7,10 +7,10 @@
*/
#include <linux/linkage.h>
#include <asm/page.h>
#include <asm/page
_types
.h>
#include <asm/kexec.h>
#include <asm/processor-flags.h>
#include <asm/pgtable.h>
#include <asm/pgtable
_types
.h>
/*
*
Must
be
relocatable
PIC
code
callable
as
a
C
function
...
...
arch/x86/kernel/trampoline_32.S
View file @
60916285
...
...
@@ -29,7 +29,7 @@
#include <linux/linkage.h>
#include <asm/segment.h>
#include <asm/page.h>
#include <asm/page
_types
.h>
/*
We
can
free
up
trampoline
after
bootup
if
cpu
hotplug
is
not
supported
.
*/
#ifndef CONFIG_HOTPLUG_CPU
...
...
arch/x86/kernel/trampoline_64.S
View file @
60916285
...
...
@@ -25,8 +25,8 @@
*/
#include <linux/linkage.h>
#include <asm/pgtable.h>
#include <asm/page.h>
#include <asm/pgtable
_types
.h>
#include <asm/page
_types
.h>
#include <asm/msr.h>
#include <asm/segment.h>
#include <asm/processor-flags.h>
...
...
arch/x86/kernel/vmlinux_32.lds.S
View file @
60916285
...
...
@@ -12,7 +12,7 @@
#include <asm-generic/vmlinux.lds.h>
#include <asm/thread_info.h>
#include <asm/page.h>
#include <asm/page
_types
.h>
#include <asm/cache.h>
#include <asm/boot.h>
...
...
arch/x86/kernel/vmlinux_64.lds.S
View file @
60916285
...
...
@@ -6,7 +6,7 @@
#include <asm-generic/vmlinux.lds.h>
#include <asm/asm-offsets.h>
#include <asm/page.h>
#include <asm/page
_types
.h>
#undef i386 /* in case the preprocessor is a 32bit one */
...
...
arch/x86/lib/getuser.S
View file @
60916285
...
...
@@ -28,7 +28,7 @@
#include <linux/linkage.h>
#include <asm/dwarf2.h>
#include <asm/page.h>
#include <asm/page
_types
.h>
#include <asm/errno.h>
#include <asm/asm-offsets.h>
#include <asm/thread_info.h>
...
...
arch/x86/power/hibernate_asm_32.S
View file @
60916285
...
...
@@ -8,7 +8,7 @@
#include <linux/linkage.h>
#include <asm/segment.h>
#include <asm/page.h>
#include <asm/page
_types
.h>
#include <asm/asm-offsets.h>
#include <asm/processor-flags.h>
...
...
arch/x86/power/hibernate_asm_64.S
View file @
60916285
...
...
@@ -18,7 +18,7 @@
.
text
#include <linux/linkage.h>
#include <asm/segment.h>
#include <asm/page.h>
#include <asm/page
_types
.h>
#include <asm/asm-offsets.h>
#include <asm/processor-flags.h>
...
...
arch/x86/xen/xen-head.S
View file @
60916285
...
...
@@ -8,7 +8,7 @@
#include <asm/boot.h>
#include <asm/asm.h>
#include <asm/page.h>
#include <asm/page
_types
.h>
#include <xen/interface/elfnote.h>
#include <asm/xen/interface.h>
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment