2 * Misc ARM declarations
4 * Copyright (c) 2006 CodeSourcery.
5 * Written by Paul Brook
7 * This code is licenced under the LGPL.
14 /* The CPU is also modeled as an interrupt controller. */
15 #define ARM_PIC_CPU_IRQ 0
16 #define ARM_PIC_CPU_FIQ 1
17 qemu_irq *arm_pic_init_cpu(CPUState *env);
20 qemu_irq *armv7m_init(int flash_size, int sram_size,
21 const char *kernel_filename, const char *cpu_model);
24 struct arm_boot_info {
26 const char *kernel_filename;
27 const char *kernel_cmdline;
28 const char *initrd_filename;
29 target_phys_addr_t loader_start;
30 target_phys_addr_t smp_loader_start;
31 target_phys_addr_t smp_priv_base;
34 int (*atag_board)(const struct arm_boot_info *info, void *p);
35 /* Used internally by arm_boot.c */
37 target_phys_addr_t initrd_size;
38 target_phys_addr_t entry;
40 void arm_load_kernel(CPUState *env, struct arm_boot_info *info);
42 /* Multiplication factor to convert from system clock ticks to qemu timer
44 extern int system_clock_scale;
46 #endif /* !ARM_MISC_H */