diff options
author | Andi Kleen <ak@suse.de> | 2006-01-11 16:46:51 -0500 |
---|---|---|
committer | Linus Torvalds <torvalds@g5.osdl.org> | 2006-01-11 22:05:03 -0500 |
commit | 11a8e778c46ee76fc46b0a7fa9d455b5a8e3e19f (patch) | |
tree | 2e6d19e5fbb9d686448868bc087673e696b5b4be /arch/x86_64/kernel/io_apic.c | |
parent | 5f1d189f8a87930d62c507800a8ac20b9a185e41 (diff) |
[PATCH] x86_64: Some housekeeping in local APIC code
Remove support for obsolete hardware and cleanup.
- Remove checks for non integrated APICs
- Replace apic_write_around with apic_write.
- Remove apic_read_around
- Remove APIC version reads used by old workarounds
- Remove old workaround for Simics
- Fix indentation
Signed-off-by: Andi Kleen <ak@suse.de>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'arch/x86_64/kernel/io_apic.c')
-rw-r--r-- | arch/x86_64/kernel/io_apic.c | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/arch/x86_64/kernel/io_apic.c b/arch/x86_64/kernel/io_apic.c index fd1e7c36dc23..e8cf44ef8778 100644 --- a/arch/x86_64/kernel/io_apic.c +++ b/arch/x86_64/kernel/io_apic.c | |||
@@ -910,7 +910,7 @@ static void __init setup_ExtINT_IRQ0_pin(unsigned int apic, unsigned int pin, in | |||
910 | disable_8259A_irq(0); | 910 | disable_8259A_irq(0); |
911 | 911 | ||
912 | /* mask LVT0 */ | 912 | /* mask LVT0 */ |
913 | apic_write_around(APIC_LVT0, APIC_LVT_MASKED | APIC_DM_EXTINT); | 913 | apic_write(APIC_LVT0, APIC_LVT_MASKED | APIC_DM_EXTINT); |
914 | 914 | ||
915 | /* | 915 | /* |
916 | * We use logical delivery to get the timer IRQ | 916 | * We use logical delivery to get the timer IRQ |
@@ -1635,7 +1635,7 @@ static void enable_lapic_irq (unsigned int irq) | |||
1635 | unsigned long v; | 1635 | unsigned long v; |
1636 | 1636 | ||
1637 | v = apic_read(APIC_LVT0); | 1637 | v = apic_read(APIC_LVT0); |
1638 | apic_write_around(APIC_LVT0, v & ~APIC_LVT_MASKED); | 1638 | apic_write(APIC_LVT0, v & ~APIC_LVT_MASKED); |
1639 | } | 1639 | } |
1640 | 1640 | ||
1641 | static void disable_lapic_irq (unsigned int irq) | 1641 | static void disable_lapic_irq (unsigned int irq) |
@@ -1643,7 +1643,7 @@ static void disable_lapic_irq (unsigned int irq) | |||
1643 | unsigned long v; | 1643 | unsigned long v; |
1644 | 1644 | ||
1645 | v = apic_read(APIC_LVT0); | 1645 | v = apic_read(APIC_LVT0); |
1646 | apic_write_around(APIC_LVT0, v | APIC_LVT_MASKED); | 1646 | apic_write(APIC_LVT0, v | APIC_LVT_MASKED); |
1647 | } | 1647 | } |
1648 | 1648 | ||
1649 | static void ack_lapic_irq (unsigned int irq) | 1649 | static void ack_lapic_irq (unsigned int irq) |
@@ -1769,7 +1769,7 @@ static inline void check_timer(void) | |||
1769 | * the 8259A which implies the virtual wire has to be | 1769 | * the 8259A which implies the virtual wire has to be |
1770 | * disabled in the local APIC. | 1770 | * disabled in the local APIC. |
1771 | */ | 1771 | */ |
1772 | apic_write_around(APIC_LVT0, APIC_LVT_MASKED | APIC_DM_EXTINT); | 1772 | apic_write(APIC_LVT0, APIC_LVT_MASKED | APIC_DM_EXTINT); |
1773 | init_8259A(1); | 1773 | init_8259A(1); |
1774 | enable_8259A_irq(0); | 1774 | enable_8259A_irq(0); |
1775 | 1775 | ||
@@ -1835,21 +1835,21 @@ static inline void check_timer(void) | |||
1835 | 1835 | ||
1836 | disable_8259A_irq(0); | 1836 | disable_8259A_irq(0); |
1837 | irq_desc[0].handler = &lapic_irq_type; | 1837 | irq_desc[0].handler = &lapic_irq_type; |
1838 | apic_write_around(APIC_LVT0, APIC_DM_FIXED | vector); /* Fixed mode */ | 1838 | apic_write(APIC_LVT0, APIC_DM_FIXED | vector); /* Fixed mode */ |
1839 | enable_8259A_irq(0); | 1839 | enable_8259A_irq(0); |
1840 | 1840 | ||
1841 | if (timer_irq_works()) { | 1841 | if (timer_irq_works()) { |
1842 | apic_printk(APIC_QUIET, " works.\n"); | 1842 | apic_printk(APIC_QUIET, " works.\n"); |
1843 | return; | 1843 | return; |
1844 | } | 1844 | } |
1845 | apic_write_around(APIC_LVT0, APIC_LVT_MASKED | APIC_DM_FIXED | vector); | 1845 | apic_write(APIC_LVT0, APIC_LVT_MASKED | APIC_DM_FIXED | vector); |
1846 | apic_printk(APIC_VERBOSE," failed.\n"); | 1846 | apic_printk(APIC_VERBOSE," failed.\n"); |
1847 | 1847 | ||
1848 | apic_printk(APIC_VERBOSE, KERN_INFO "...trying to set up timer as ExtINT IRQ..."); | 1848 | apic_printk(APIC_VERBOSE, KERN_INFO "...trying to set up timer as ExtINT IRQ..."); |
1849 | 1849 | ||
1850 | init_8259A(0); | 1850 | init_8259A(0); |
1851 | make_8259A_irq(0); | 1851 | make_8259A_irq(0); |
1852 | apic_write_around(APIC_LVT0, APIC_DM_EXTINT); | 1852 | apic_write(APIC_LVT0, APIC_DM_EXTINT); |
1853 | 1853 | ||
1854 | unlock_ExtINT_logic(); | 1854 | unlock_ExtINT_logic(); |
1855 | 1855 | ||