Whack [LS]MW
[qemu-kvm/fedora.git] / hw / arm-misc.h
blob5daac4fabf8a20e72e2de2c9fbde70893c97ac9b
1 /*
2 * Misc ARM declarations
4 * Copyright (c) 2006 CodeSourcery.
5 * Written by Paul Brook
7 * This code is licenced under the LGPL.
9 */
11 #ifndef ARM_MISC_H
12 #define ARM_MISC_H 1
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);
19 /* armv7m.c */
20 qemu_irq *armv7m_init(int flash_size, int sram_size,
21 const char *kernel_filename, const char *cpu_model);
23 /* arm_boot.c */
24 struct arm_boot_info {
25 int ram_size;
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 int nb_cpus;
32 int board_id;
33 int (*atag_board)(struct arm_boot_info *info, void *p);
35 void arm_load_kernel(CPUState *env, struct arm_boot_info *info);
37 /* armv7m_nvic.c */
39 /* Multiplication factor to convert from system clock ticks to qemu timer
40 ticks. */
41 extern int system_clock_scale;
42 qemu_irq *armv7m_nvic_init(CPUState *env);
44 /* stellaris_enent.c */
45 void stellaris_enet_init(NICInfo *nd, uint32_t base, qemu_irq irq);
47 #endif /* !ARM_MISC_H */