1SubDir HAIKU_TOP src system kernel arch arm ;
2
3SubDirHdrs $(HAIKU_TOP) src add-ons kernel bus_managers acpi acpica include ;
4SubDirHdrs $(SUBDIR) $(DOTDOT) generic ;
5UsePrivateKernelHeaders ;
6
7SEARCH_SOURCE += [ FDirName $(SUBDIR) paging ] ;
8SEARCH_SOURCE += [ FDirName $(SUBDIR) paging 32bit ] ;
9SEARCH_SOURCE += [ FDirName $(SUBDIR) $(DOTDOT) generic ] ;
10
11KernelMergeObject kernel_arch_arm.o :
12	acpi_irq_routing_table.cpp
13	arch_commpage.cpp
14	arch_cpu.cpp
15	arch_debug_console.cpp
16	arch_debug.cpp
17	arch_elf.cpp
18	arch_exceptions.S
19	arch_int.cpp
20	arch_platform.cpp
21	arch_real_time_clock.cpp
22	arch_smp.cpp
23	arch_system_info.cpp
24	arch_thread.cpp
25	arch_timer.cpp
26	arch_user_debugger.cpp
27	arch_vm.cpp
28	arch_vm_translation_map.cpp
29	arch_asm.S
30
31	generic_msi.cpp
32
33	# Serial UART and drivers
34	debug_uart.cpp
35	debug_uart_8250.cpp
36	arch_uart_8250_omap.cpp
37	arch_uart_pl011.cpp
38
39	arch_atomic64.cpp
40	arch_atomic32.cpp
41
42	arch_int_gicv2.cpp
43	arch_timer_generic.cpp
44
45	# SoC minimal kernel-required support
46	# (timers, interrupts, rtc?)
47	soc.cpp
48	soc_pxa.cpp
49	soc_omap3.cpp
50	soc_sun4i.cpp
51
52	# paging
53	arm_physical_page_mapper_large_memory.cpp
54	ARMPagingMethod.cpp
55	ARMPagingStructures.cpp
56	ARMVMTranslationMap.cpp
57
58	# paging/32bit
59	ARMPagingMethod32Bit.cpp
60	ARMPagingStructures32Bit.cpp
61	ARMVMTranslationMap32Bit.cpp
62
63	:
64	$(TARGET_KERNEL_PIC_CCFLAGS) -Wno-unused
65	:
66	kernel_fdt.a
67;
68
69CreateAsmStructOffsetsHeader asm_offsets.h : asm_offsets.cpp : $(TARGET_KERNEL_ARCH) ;
70
71# syscall headers are generated on the fly, so we need a explicit dependency.
72Includes [ FGristFiles arch_commpage.cpp arch_int.cpp arch_asm.S ]
73	: <syscalls!$(TARGET_PACKAGING_ARCH)>syscall_numbers.h ;
74