x86 apic - a few function merge v2
cover x86 apic - a few function merge v2
I don't leave hope to merge APIC code someday (now it becomes harder
'cause of new x(2)APIC code). So these patches merges a few functions. No changes on binary level. Please review. Any comments are welcome!
The patches are made on top of -tip tree
commit d55ee73e46e89547aca7ca83a2df80bf70d9d1d1
Merge: 6a807a0... 695a6b4...
Author: Ingo Molnar <[email protected]>
Date: Wed Jul 23 13:21:26 2008 +0200
Merge branch 'cpus4096'
- Cyrill -
PATCH 2/2 x86: apic unification - merge down enable_NMI_through_LVT0
---
No code change on binary level.
arch/x86/kernel/apic_32.c +6 -2
@@ -205,11 +205,15 @@ EXPORT_SYMBOL_GPL(apic_ops);*/ void __cpuinit enable_NMI_through_LVT0 (void ) { -unsigned int v =APIC_DM_NMI ; +unsigned int v; + +/* unmask and set to NMI */ + v =APIC_DM_NMI ; -/* Level triggered for 82489DX */ +/* Level triggered for 82489DX (32bit mode) */ if (!lapic_is_integrated ()) v |=APIC_LVT_LEVEL_TRIGGER ; +apic_write (APIC_LVT0 , v); }
arch/x86/kernel/apic_64.c +5 -0
@@ -220,6 +220,11 @@ void __cpuinit enable_NMI_through_LVT0(v/* unmask and set to NMI */ v =APIC_DM_NMI ; + +/* Level triggered for 82489DX (32bit mode) */ +if (!lapic_is_integrated ()) + v |=APIC_LVT_LEVEL_TRIGGER ; +apic_write (APIC_LVT0 , v); }
PATCH 1/2 x86: apic unification - merge down lapic_get_maxlvt
In reply to Cyrill Gorcunov---
No code change on binary level.
arch/x86/kernel/apic_32.c +6 -2
@@ -226,9 +226,13 @@ int get_physical_broadcast(void)*/ int lapic_get_maxlvt (void ) { -unsigned int v =apic_read (APIC_LVR ); +unsigned int v; -/* 82489DXs do not report # of LVT entries. */ + v =apic_read (APIC_LVR ); +/* +* - we always have APIC integrated on 64bit mode +* - 82489DXs do not report # of LVT entries +*/ return APIC_INTEGRATED (GET_APIC_VERSION (v)) ?GET_APIC_MAXLVT (v) :2 ; }
arch/x86/kernel/apic_64.c +6 -3
@@ -228,11 +228,14 @@ void __cpuinit enable_NMI_through_LVT0(v*/ int lapic_get_maxlvt (void ) { -unsigned int v, maxlvt; +unsigned int v; v =apic_read (APIC_LVR ); - maxlvt =GET_APIC_MAXLVT (v); -return maxlvt; +/* +* - we always have APIC integrated on 64bit mode +* - 82489DXs do not report # of LVT entries +*/ +return APIC_INTEGRATED (GET_APIC_VERSION (v)) ?GET_APIC_MAXLVT (v) :2 ; }/*
Quoted 3 lines · Cyrill Gorcunov
I don't leave hope to merge APIC code someday (now it becomes harder
'cause of new x(2)APIC code). So these patches merges a few functions. No changes on binary level. Please review. Any comments are welcome!
looks good to me - applied to tip/x86/apic, thanks Cyrill.
Ingo