i386: Move lapic function declarations from smp.h to apic/lapic.h
authorSepherosa Ziehau <sephe@dragonflybsd.org>
Wed, 4 May 2011 03:16:04 +0000 (11:16 +0800)
committerSepherosa Ziehau <sephe@dragonflybsd.org>
Wed, 4 May 2011 03:16:04 +0000 (11:16 +0800)
sys/platform/pc32/apic/lapic.h
sys/platform/pc32/include/smp.h

index b56b826..4125b2a 100644 (file)
@@ -29,7 +29,7 @@
 #ifndef _ARCH_APIC_LAPIC_H_
 #define _ARCH_APIC_LAPIC_H_
 
-#include "apicreg.h"
+#include <machine_base/apic/apicreg.h>
 
 /*
  * the physical/logical APIC ID management macros
 #define CPU_TO_ID(CPU) (cpu_num_to_apic_id[CPU])
 #define ID_TO_CPU(ID)  (apic_id_to_logical[ID])
 
+#ifndef _SYS_QUEUE_H_
+#include <sys/queue.h>
+#endif
+
+struct lapic_enumerator {
+       int     lapic_prio;
+       TAILQ_ENTRY(lapic_enumerator) lapic_link;
+       int     (*lapic_probe)(struct lapic_enumerator *);
+       void    (*lapic_enumerate)(struct lapic_enumerator *);
+};
+
+#define LAPIC_ENUM_PRIO_MPTABLE                20
+#define LAPIC_ENUM_PRIO_MADT           40
+
 #ifdef SMP
 
+extern volatile lapic_t                lapic;
+
+void   apic_dump(char*);
+void   lapic_init(boolean_t);
+int    apic_ipi(int, int, int);
+void   selected_apic_ipi(cpumask_t, int, int);
+void   single_apic_ipi(int, int, int);
+int    single_apic_ipi_passive(int, int, int);
+void   lapic_config(void);
+void   lapic_enumerator_register(struct lapic_enumerator *);
+void   set_apic_timer(int);
+int    get_apic_timer_frequency(void);
+int    read_apic_timer(void);
+void   u_sleep(int);
+
 /*
  * Send an IPI INTerrupt containing 'vector' to all CPUs EXCEPT myself
  */
index cd0a8cd..32bf421 100644 (file)
@@ -108,16 +108,6 @@ void       mptable_pci_int_dump(void);
 #include <sys/queue.h>
 #endif
 
-struct lapic_enumerator {
-       int     lapic_prio;
-       TAILQ_ENTRY(lapic_enumerator) lapic_link;
-       int     (*lapic_probe)(struct lapic_enumerator *);
-       void    (*lapic_enumerate)(struct lapic_enumerator *);
-};
-
-#define LAPIC_ENUM_PRIO_MPTABLE                20
-#define LAPIC_ENUM_PRIO_MADT           40
-
 struct ioapic_enumerator {
        int     ioapic_prio;
        TAILQ_ENTRY(ioapic_enumerator) ioapic_link;
@@ -128,22 +118,11 @@ struct ioapic_enumerator {
 #define IOAPIC_ENUM_PRIO_MPTABLE       20
 #define IOAPIC_ENUM_PRIO_MADT          40
 
-/* global data in mpapic.c */
-extern volatile lapic_t                lapic;
-
 #ifndef _SYS_BUS_H_
 #include <sys/bus.h>
 #endif
 
 /* functions in mpapic.c */
-void   apic_dump               (char*);
-void   lapic_init              (boolean_t);
-int    apic_ipi                (int, int, int);
-void   selected_apic_ipi       (cpumask_t, int, int);
-void   single_apic_ipi(int cpu, int vector, int delivery_mode);
-int    single_apic_ipi_passive(int cpu, int vector, int delivery_mode);
-void   lapic_config(void);
-void   lapic_enumerator_register(struct lapic_enumerator *);
 void   ioapic_config(void);
 void   ioapic_enumerator_register(struct ioapic_enumerator *);
 void   ioapic_add(void *, int, int);
@@ -163,10 +142,6 @@ void       clr_io_apic_mask24      (int, u_int32_t);
 void   set_io_apic_mask24      (int, u_int32_t);
 #endif /* READY */
 
-void   set_apic_timer          (int);
-int    get_apic_timer_frequency(void);
-int    read_apic_timer         (void);
-void   u_sleep                 (int);
 void   cpu_send_ipiq           (int);
 int    cpu_send_ipiq_passive   (int);