From 070f286492b1beb03ebf070a7e74bda388438e73 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Axel=20D=C3=B6rfler?= Date: Mon, 8 Nov 2004 14:06:50 +0000 Subject: [PATCH] Use create_area() instead of vm_create_anonymous_region(). Some minor other cosmetic changes. git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9856 a95241bf-73f2-0310-859d-f6bbb57e9c96 --- src/kernel/core/arch/x86/arch_smp.c | 34 +++++++++---------- .../core/arch/x86/arch_vm_translation_map.c | 18 +++++----- 2 files changed, 25 insertions(+), 27 deletions(-) diff --git a/src/kernel/core/arch/x86/arch_smp.c b/src/kernel/core/arch/x86/arch_smp.c index 56223f19b3..95ff995e04 100755 --- a/src/kernel/core/arch/x86/arch_smp.c +++ b/src/kernel/core/arch/x86/arch_smp.c @@ -1,6 +1,6 @@ /* -** Copyright 2002-2004, The OpenBeOS Team. All rights reserved. -** Distributed under the terms of the OpenBeOS License. +** Copyright 2002-2004, Axel Dörfler, axeld@pinc-software.de. All rights reserved. +** Distributed under the terms of the Haiku License. ** ** Copyright 2001-2002, Travis Geiselbrecht. All rights reserved. ** Distributed under the terms of the NewOS License. @@ -98,29 +98,27 @@ apic_write(uint32 offset, uint32 data) status_t -arch_smp_init(kernel_args *ka) +arch_smp_init(kernel_args *args) { TRACE(("arch_smp_init: entry\n")); - if (ka->num_cpus > 1) { + if (args->num_cpus > 1) { // setup some globals - apic = (uint32 *)ka->arch_args.apic; - ioapic = (uint32 *)ka->arch_args.ioapic; - memcpy(cpu_apic_id, ka->arch_args.cpu_apic_id, sizeof(ka->arch_args.cpu_apic_id)); - memcpy(cpu_os_id, ka->arch_args.cpu_os_id, sizeof(ka->arch_args.cpu_os_id)); - memcpy(cpu_apic_version, ka->arch_args.cpu_apic_version, sizeof(ka->arch_args.cpu_apic_version)); - apic_timer_tics_per_sec = ka->arch_args.apic_time_cv_factor; + apic = (uint32 *)args->arch_args.apic; + ioapic = (uint32 *)args->arch_args.ioapic; + memcpy(cpu_apic_id, args->arch_args.cpu_apic_id, sizeof(args->arch_args.cpu_apic_id)); + memcpy(cpu_os_id, args->arch_args.cpu_os_id, sizeof(args->arch_args.cpu_os_id)); + memcpy(cpu_apic_version, args->arch_args.cpu_apic_version, sizeof(args->arch_args.cpu_apic_version)); + apic_timer_tics_per_sec = args->arch_args.apic_time_cv_factor; // setup regions that represent the apic & ioapic - vm_create_anonymous_region(vm_get_kernel_aspace_id(), "local_apic", (void *)&apic, - B_EXACT_ADDRESS, B_PAGE_SIZE, B_ALREADY_WIRED, - B_KERNEL_READ_AREA | B_KERNEL_WRITE_AREA); - vm_create_anonymous_region(vm_get_kernel_aspace_id(), "ioapic", (void *)&ioapic, - B_EXACT_ADDRESS, B_PAGE_SIZE, B_ALREADY_WIRED, - B_KERNEL_READ_AREA | B_KERNEL_WRITE_AREA); + create_area("local apic", (void *)&apic, B_EXACT_ADDRESS, B_PAGE_SIZE, + B_ALREADY_WIRED, B_KERNEL_READ_AREA | B_KERNEL_WRITE_AREA); + create_area("ioapic", (void *)&ioapic, B_EXACT_ADDRESS, B_PAGE_SIZE, + B_ALREADY_WIRED, B_KERNEL_READ_AREA | B_KERNEL_WRITE_AREA); // set up the local apic on the boot cpu - arch_smp_per_cpu_init(ka, 0); + arch_smp_per_cpu_init(args, 0); install_interrupt_handler(0xfb, &i386_timer_interrupt, NULL); install_interrupt_handler(0xfd, &i386_ici_interrupt, NULL); @@ -132,7 +130,7 @@ arch_smp_init(kernel_args *ka) static int -smp_setup_apic(kernel_args *ka) +smp_setup_apic(kernel_args *args) { uint32 config; diff --git a/src/kernel/core/arch/x86/arch_vm_translation_map.c b/src/kernel/core/arch/x86/arch_vm_translation_map.c index 935ffa6fa4..4d70fddbd0 100755 --- a/src/kernel/core/arch/x86/arch_vm_translation_map.c +++ b/src/kernel/core/arch/x86/arch_vm_translation_map.c @@ -834,27 +834,27 @@ arch_vm_translation_map_init_post_area(kernel_args *args) page_hole = NULL; temp = (void *)kernel_pgdir_virt; - vm_create_anonymous_region(vm_get_kernel_aspace_id(), "kernel_pgdir", &temp, - B_EXACT_ADDRESS, B_PAGE_SIZE, B_ALREADY_WIRED, B_KERNEL_READ_AREA | B_KERNEL_WRITE_AREA); + create_area("kernel_pgdir", &temp, B_EXACT_ADDRESS, B_PAGE_SIZE, + B_ALREADY_WIRED, B_KERNEL_READ_AREA | B_KERNEL_WRITE_AREA); temp = (void *)paddr_desc; - vm_create_anonymous_region(vm_get_kernel_aspace_id(), "physical_page_mapping_descriptors", &temp, - B_EXACT_ADDRESS, ROUNDUP(sizeof(paddr_chunk_desc) * 1024, B_PAGE_SIZE), + create_area("physical_page_mapping_descriptors", &temp, B_EXACT_ADDRESS, + ROUNDUP(sizeof(paddr_chunk_desc) * 1024, B_PAGE_SIZE), B_ALREADY_WIRED, B_KERNEL_READ_AREA | B_KERNEL_WRITE_AREA); temp = (void *)virtual_pmappings; - vm_create_anonymous_region(vm_get_kernel_aspace_id(), "iospace_virtual_chunk_descriptors", &temp, - B_EXACT_ADDRESS, ROUNDUP(sizeof(paddr_chunk_desc *) * num_virtual_chunks, B_PAGE_SIZE), + create_area("iospace_virtual_chunk_descriptors", &temp, B_EXACT_ADDRESS, + ROUNDUP(sizeof(paddr_chunk_desc *) * num_virtual_chunks, B_PAGE_SIZE), B_ALREADY_WIRED, B_KERNEL_READ_AREA | B_KERNEL_WRITE_AREA); temp = (void *)iospace_pgtables; - vm_create_anonymous_region(vm_get_kernel_aspace_id(), "iospace_pgtables", &temp, - B_EXACT_ADDRESS, B_PAGE_SIZE * (IOSPACE_SIZE / (B_PAGE_SIZE * 1024)), + create_area("iospace_pgtables", &temp, B_EXACT_ADDRESS, + B_PAGE_SIZE * (IOSPACE_SIZE / (B_PAGE_SIZE * 1024)), B_ALREADY_WIRED, B_KERNEL_READ_AREA | B_KERNEL_WRITE_AREA); TRACE(("vm_translation_map_init_post_area: creating iospace\n")); temp = (void *)IOSPACE_BASE; - vm_create_null_region(vm_get_kernel_aspace_id(), "iospace", &temp, + vm_create_null_area(vm_get_kernel_aspace_id(), "iospace", &temp, B_EXACT_ADDRESS, IOSPACE_SIZE); TRACE(("vm_translation_map_init_post_area: done\n"));