x86_64/lapic: lapic_map() should take vm_paddr_t instead of vm_offset_t
authorSepherosa Ziehau <sephe@dragonflybsd.org>
Wed, 8 Jun 2011 08:28:26 +0000 (16:28 +0800)
committerSepherosa Ziehau <sephe@dragonflybsd.org>
Wed, 8 Jun 2011 08:44:39 +0000 (16:44 +0800)
sys/platform/pc64/acpica5/acpi_madt.c
sys/platform/pc64/apic/lapic.c
sys/platform/pc64/apic/lapic.h
sys/platform/pc64/x86_64/mptable.c

index 13f33c2..107b013 100644 (file)
@@ -127,7 +127,7 @@ static int                  madt_check(vm_paddr_t);
 static int                     madt_iterate_entries(struct acpi_madt *,
                                    madt_iter_t, void *);
 
-static vm_offset_t             madt_lapic_pass1(void);
+static vm_paddr_t              madt_lapic_pass1(void);
 static int                     madt_lapic_pass2(int);
 
 static void                    madt_lapic_enumerate(struct lapic_enumerator *);
@@ -283,11 +283,11 @@ madt_lapic_pass1_callback(void *xarg, const struct acpi_madt_ent *ent)
        return 0;
 }
 
-static vm_offset_t
+static vm_paddr_t
 madt_lapic_pass1(void)
 {
        struct acpi_madt *madt;
-       vm_offset_t lapic_addr;
+       vm_paddr_t lapic_addr;
        uint64_t lapic_addr64;
        int error;
 
@@ -296,7 +296,7 @@ madt_lapic_pass1(void)
        madt = sdt_sdth_map(madt_phyaddr);
        KKASSERT(madt != NULL);
 
-       MADT_VPRINTF("LAPIC address 0x%08x, flags %#x\n",
+       MADT_VPRINTF("LAPIC address 0x%x, flags %#x\n",
                     madt->madt_lapic_addr, madt->madt_flags);
        lapic_addr = madt->madt_lapic_addr;
 
@@ -379,7 +379,7 @@ madt_lapic_pass2(int bsp_apic_id)
 
 struct madt_lapic_probe_cbarg {
        int             cpu_count;
-       vm_offset_t     lapic_addr;
+       vm_paddr_t      lapic_addr;
 };
 
 static int
@@ -444,7 +444,7 @@ madt_lapic_probe(struct lapic_enumerator *e)
 static void
 madt_lapic_enumerate(struct lapic_enumerator *e)
 {
-       vm_offset_t lapic_addr;
+       vm_paddr_t lapic_addr;
        int bsp_apic_id;
 
        KKASSERT(madt_phyaddr != 0);
index d5d10f6..f9409e5 100644 (file)
@@ -711,11 +711,9 @@ lapic_unused_apic_id(int start)
 }
 
 void
-lapic_map(vm_offset_t lapic_addr)
+lapic_map(vm_paddr_t lapic_addr)
 {
        lapic = pmap_mapdev_uncacheable(lapic_addr, sizeof(struct LAPIC));
-
-       kprintf("lapic: at 0x%08lx\n", lapic_addr);
 }
 
 static TAILQ_HEAD(, lapic_enumerator) lapic_enumerators =
index 51d5836..23cf52c 100644 (file)
@@ -67,7 +67,7 @@ int   get_apic_timer_frequency(void);
 int    read_apic_timer(void);
 void   u_sleep(int);
 
-void   lapic_map(vm_offset_t /* XXX should be vm_paddr_t */);
+void   lapic_map(vm_paddr_t);
 int    lapic_unused_apic_id(int);
 void   lapic_fixup_noioapic(void);
 
index 679e2f1..cbb4de7 100644 (file)
@@ -744,7 +744,7 @@ mptable_lapic_enumerate(struct lapic_enumerator *e)
        struct mptable_lapic_cbarg2 arg2;
        mpcth_t cth;
        int error, logical_cpus = 0;
-       vm_offset_t lapic_addr;
+       vm_paddr_t lapic_addr;
 
        if (mptable_use_default) {
                mptable_lapic_default();
@@ -759,7 +759,7 @@ mptable_lapic_enumerate(struct lapic_enumerator *e)
        cth = mpt.mp_cth;
  
        /* Save local apic address */
-       lapic_addr = (vm_offset_t)cth->apic_address;
+       lapic_addr = cth->apic_address;
        KKASSERT(lapic_addr != 0);
  
        /*