source: mainline/kernel/arch/arm32/Makefile.inc@ b482287

lfn serial ticket/834-toolchain-update topic/msim-upgrade topic/simplify-dev-export
Last change on this file since b482287 was 6a8ddd37, checked in by Jakub Jermar <jakub@…>, 11 years ago

Autogenerate arm32 kernel context_t and its offsets.

  • Property mode set to 100644
File size: 3.3 KB
RevLine 
[d630139]1#
[6b781c0]2# Copyright (c) 2007 Jakub Jermar, Michal Kebrt
[d630139]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
[8ecba18b]29BFD_NAME = elf32-littlearm
[d630139]30BFD_ARCH = arm
[6b781c0]31BFD = binary
[d630139]32
[1314e3b]33ATSIGN = %
34
[5d9e36b]35GCC_CFLAGS += -fno-omit-frame-pointer -mapcs-frame -march=$(subst _,-,$(PROCESSOR_ARCH)) -mno-unaligned-access
[6b781c0]36
[3412e844]37ifeq ($(CONFIG_FPU),y)
[7218fe6]38 # This is necessary to allow vmsr insn and fpexc manipulation
39 # Use vfp32 to allow context save/restore of d16-d31 regs.
40 AFLAGS += -mfloat-abi=hard -mfpu=vfp3
[3412e844]41endif
42
[ac47b7c2]43BITS = 32
44ENDIANESS = LE
[6b781c0]45
[d630139]46ARCH_SOURCES = \
[7004747]47 arch/$(KARCH)/src/start.S \
48 arch/$(KARCH)/src/asm.S \
[4ceef572]49 arch/$(KARCH)/src/eabi.S \
[6ac14a70]50 arch/$(KARCH)/src/exc_handler.S \
[7004747]51 arch/$(KARCH)/src/arm32.c \
[6ac14a70]52 arch/$(KARCH)/src/machine_func.c \
[7004747]53 arch/$(KARCH)/src/context.S \
54 arch/$(KARCH)/src/dummy.S \
55 arch/$(KARCH)/src/cpu/cpu.c \
56 arch/$(KARCH)/src/interrupt.c \
57 arch/$(KARCH)/src/exception.c \
58 arch/$(KARCH)/src/userspace.c \
[aff0503]59 arch/$(KARCH)/src/debug/stacktrace.c \
60 arch/$(KARCH)/src/debug/stacktrace_asm.S \
[55896b6]61 arch/$(KARCH)/src/mm/km.c \
[7004747]62 arch/$(KARCH)/src/mm/as.c \
63 arch/$(KARCH)/src/mm/frame.c \
64 arch/$(KARCH)/src/mm/page.c \
65 arch/$(KARCH)/src/mm/tlb.c \
[82a04c6]66 arch/$(KARCH)/src/mm/page_fault.c \
67 arch/$(KARCH)/src/ras.c
[646b996]68
[5481a22e]69ifeq ($(CONFIG_FPU),y)
70 ARCH_SOURCES += arch/$(KARCH)/src/fpu_context.c
[de36fdd]71 ARCH_SOURCES += arch/$(KARCH)/src/fpu.s
[7c866dc]72endif
73
74ifeq ($(MACHINE),gta02)
75 ARCH_SOURCES += arch/$(KARCH)/src/mach/gta02/gta02.c
[646b996]76endif
77
78ifeq ($(MACHINE),integratorcp)
79 ARCH_SOURCES += arch/$(KARCH)/src/mach/integratorcp/integratorcp.c
[6ac14a70]80endif
[646b996]81
[6038368]82ifeq ($(MACHINE),beagleboardxm)
83 ARCH_SOURCES += arch/$(KARCH)/src/mach/beagleboardxm/beagleboardxm.c
84endif
85
[f92976f]86ifeq ($(MACHINE),beaglebone)
[7218fe6]87 ARCH_SOURCES += arch/$(KARCH)/src/mach/beaglebone/beaglebone.c
[f92976f]88endif
89
[8f9d70b]90ifeq ($(MACHINE),raspberrypi)
91 ARCH_SOURCES += arch/$(KARCH)/src/mach/raspberrypi/raspberrypi.c
92endif
93
[646b996]94ifeq ($(CONFIG_PL050),y)
[6ac14a70]95 ARCH_SOURCES += genarch/src/drivers/pl050/pl050.c
96endif
[9b3f77c]97
98ARCH_AUTOGENS_AG = \
[6a8ddd37]99 arch/$(KARCH)/include/arch/istate_struct.ag \
100 arch/$(KARCH)/include/arch/context_struct.ag
[9b3f77c]101
Note: See TracBrowser for help on using the repository browser.