Changeset f6ed1ae in mainline


Ignore:
Timestamp:
2006-07-17T12:29:12Z (18 years ago)
Author:
Martin Decky <martin@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
380954d9
Parents:
231fcb2
Message:

fork Xen32 makefile and linker script

Location:
kernel/arch/xen32
Files:
1 deleted
2 edited

Legend:

Unmodified
Added
Removed
  • kernel/arch/xen32/Makefile.inc

    • Property mode changed from 120000 to 100644
    r231fcb2 rf6ed1ae  
    1 ../ia32/Makefile.inc
     1#
     2# Copyright (C) 2006 Martin Decky
     3# All rights reserved.
     4#
     5# Redistribution and use in source and binary forms, with or without
     6# modification, are permitted provided that the following conditions
     7# are met:
     8#
     9# - Redistributions of source code must retain the above copyright
     10#   notice, this list of conditions and the following disclaimer.
     11# - Redistributions in binary form must reproduce the above copyright
     12#   notice, this list of conditions and the following disclaimer in the
     13#   documentation and/or other materials provided with the distribution.
     14# - The name of the author may not be used to endorse or promote products
     15#   derived from this software without specific prior written permission.
     16#
     17# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
     18# IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
     19# OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
     20# IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
     21# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
     22# NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
     23# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
     24# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
     25# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
     26# THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
     27#
     28
     29## Toolchain configuration
     30#
     31
     32BFD_NAME = elf32-i386
     33BFD_ARCH = i386
     34BFD = elf32-i386
     35TARGET = i686-pc-linux-gnu
     36TOOLCHAIN_DIR = /usr/local/i686/bin
     37
     38DEFS += -DMACHINE=$(MACHINE) -D__32_BITS__
     39
     40## Accepted CPUs
     41#
     42
     43ifeq ($(MACHINE),athlon-xp)
     44        CFLAGS += -march=athlon-xp -mmmx -msse -m3dnow
     45        DEFS += -DCONFIG_FENCES_P3
     46        CONFIG_SMP = n
     47        CONFIG_HT = n
     48endif
     49ifeq ($(MACHINE),athlon-mp)
     50        CFLAGS += -march=athlon-mp -mmmx -msse -m3dnow
     51        DEFS += -DCONFIG_FENCES_P3
     52        CONFIG_HT = n
     53endif
     54ifeq ($(MACHINE),pentium3)
     55        CFLAGS += -march=pentium3 -mmmx -msse
     56        DEFS += -DCONFIG_FENCES_P3
     57        CONFIG_HT = n
     58endif
     59ifeq ($(MACHINE),prescott)
     60        CFLAGS += -march=pentium4 -mfpmath=sse -mmmx -msse -msse2 -msse3
     61        DEFS += -DCONFIG_FENCES_P4
     62endif
     63ifeq ($(MACHINE),pentium4)
     64        CFLAGS += -march=pentium4 -mfpmath=sse -mmmx -msse -msse2
     65        DEFS += -DCONFIG_FENCES_P4
     66endif
     67
     68## Own configuration directives
     69#
     70
     71CONFIG_ACPI = y
     72
     73## Compile with hierarchical page tables support.
     74#
     75
     76CONFIG_PAGE_PT = y
     77DEFS += -DCONFIG_PAGE_PT
     78
     79## Compile with i8042 controller support
     80#
     81
     82CONFIG_I8042 = y
     83
     84
     85## Accepted configuration directives
     86#
     87
     88ifeq ($(CONFIG_SMP),y)
     89        DEFS += -DCONFIG_SMP
     90endif
     91ifeq ($(CONFIG_HT),y)
     92        DEFS += -DCONFIG_HT
     93endif
     94ifeq ($(CONFIG_SIMICS_FIX),y)
     95        DEFS += -DCONFIG_SIMICS_FIX
     96endif
     97
     98## Compile with support for software integer division.
     99#
     100
     101CONFIG_SOFTINT = y
     102
     103ARCH_SOURCES = \
     104        arch/$(ARCH)/src/context.s \
     105        arch/$(ARCH)/src/debug/panic.s \
     106        arch/$(ARCH)/src/delay.s \
     107        arch/$(ARCH)/src/asm.S \
     108        arch/$(ARCH)/src/proc/scheduler.c \
     109        arch/$(ARCH)/src/proc/task.c \
     110        arch/$(ARCH)/src/proc/thread.c \
     111        arch/$(ARCH)/src/bios/bios.c \
     112        arch/$(ARCH)/src/smp/ap.S \
     113        arch/$(ARCH)/src/smp/apic.c \
     114        arch/$(ARCH)/src/smp/mps.c \
     115        arch/$(ARCH)/src/smp/smp.c \
     116        arch/$(ARCH)/src/atomic.S \
     117        arch/$(ARCH)/src/smp/ipi.c \
     118        arch/$(ARCH)/src/ia32.c \
     119        arch/$(ARCH)/src/interrupt.c \
     120        arch/$(ARCH)/src/pm.c \
     121        arch/$(ARCH)/src/userspace.c \
     122        arch/$(ARCH)/src/cpu/cpu.c \
     123        arch/$(ARCH)/src/mm/as.c \
     124        arch/$(ARCH)/src/mm/frame.c \
     125        arch/$(ARCH)/src/mm/memory_init.c \
     126        arch/$(ARCH)/src/mm/page.c \
     127        arch/$(ARCH)/src/mm/tlb.c \
     128        arch/$(ARCH)/src/ddi/ddi.c \
     129        arch/$(ARCH)/src/drivers/i8254.c \
     130        arch/$(ARCH)/src/drivers/i8259.c \
     131        arch/$(ARCH)/src/drivers/ega.c \
     132        arch/$(ARCH)/src/drivers/vesa.c \
     133        arch/$(ARCH)/src/boot/boot.S \
     134        arch/$(ARCH)/src/fpu_context.c \
     135        arch/$(ARCH)/src/debugger.c
  • kernel/arch/xen32/_link.ld.in

    • Property mode changed from 120000 to 100644
    r231fcb2 rf6ed1ae  
    1 ../ia32/_link.ld.in
     1/** Xen32 linker script
     2 * 
     3 * umapped section:
     4 *      kernel text
     5 *      kernel data
     6 * mapped section:
     7 *      kernel text
     8 *      kernel data
     9 */
     10
     11#define __ASM__
     12#include <arch/boot/boot.h>
     13#include <arch/mm/page.h>
     14
     15SECTIONS {
     16        .unmapped BOOT_OFFSET: AT (0) {
     17                unmapped_ktext_start = .;
     18                *(K_TEXT_START);
     19                unmapped_ktext_end = .;
     20       
     21                unmapped_kdata_start = .;
     22                *(K_DATA_START);
     23                unmapped_kdata_end = .;
     24        }
     25       
     26        .mapped (PA2KA(BOOT_OFFSET)+SIZEOF(.unmapped)): AT (SIZEOF(.unmapped)) {
     27                ktext_start = .;
     28                *(.text);
     29                ktext_end = .;
     30               
     31                kdata_start = .;
     32                *(.data);                       /* initialized data */
     33                *(.rodata*);                    /* string literals */
     34                *(COMMON);                      /* global variables */
     35                hardcoded_load_address = .;
     36                LONG(PA2KA(BOOT_OFFSET));
     37                hardcoded_ktext_size = .;
     38                LONG((ktext_end - ktext_start) + (unmapped_ktext_end - unmapped_ktext_start));
     39                hardcoded_kdata_size = .;
     40                LONG((kdata_end - kdata_start) + (unmapped_kdata_end - unmapped_kdata_start));
     41                hardcoded_unmapped_ktext_size = .;
     42                LONG(unmapped_ktext_end - unmapped_ktext_start);
     43                hardcoded_unmapped_kdata_size = .;
     44                LONG(unmapped_kdata_end - unmapped_kdata_start);
     45                symbol_table = .;
     46                *(symtab.*);                    /* Symbol table, must be LAST symbol! */
     47                *(.bss);                        /* uninitialized static variables */
     48                kdata_end = .;
     49        }
     50       
     51        __xen_guest(0): AT (SIZEOF(.unmapped)+SIZEOF(.mapped)) {
     52                *(__xen_guest);
     53        }
     54
     55        /DISCARD/ : {
     56                *(.note.GNU-stack);             
     57                *(.comment);
     58        }
     59       
     60#ifdef CONFIG_SMP       
     61       
     62        _hardcoded_unmapped_size = (unmapped_ktext_end - unmapped_ktext_start) + (unmapped_kdata_end - unmapped_kdata_start);
     63        ap_boot = unmapped_ap_boot - BOOT_OFFSET + AP_BOOT_OFFSET;
     64        ap_gdtr = unmapped_ap_gdtr - BOOT_OFFSET + AP_BOOT_OFFSET;
     65        protected_ap_gdtr = PA2KA(ap_gdtr);
     66
     67#endif /* CONFIG_SMP */
     68
     69}
Note: See TracChangeset for help on using the changeset viewer.