1--------------------------------------------------------------------------
2-- Copyright (c) 2007-2013, ETH Zurich.
3-- All rights reserved.
4--
5-- This file is distributed under the terms in the attached LICENSE file.
6-- If you do not find this file, copies can be found by writing to:
7-- ETH Zurich D-INFK, Universitaetstrasse 6, CH-8092 Zurich. Attn: Systems Group.
8--
9-- Hakefile for devices/
10--
11--------------------------------------------------------------------------
12
13-- Mackerel 2 device descriptions
14--
15-- THIS is the place for new device descriptions.
16--
17[ mackerel2 (options arch) f
18  | f <- [ "ac97_base_audio",
19           "ac97_ext_audio",
20           "armv8",
21           "cpuid_intel",
22           "cpuid_amd",
23           "cpuid_arm",
24           "ac97_ext_codec",
25           "ac97_ext_modem",
26           "ahci_hba",
27           "ahci_port",
28           "acpi_ec",
29           "acpi_ec_mem",
30           "arm",
31           "ata_identify",
32           "audio_nbm",
33           "e1000",
34           "e1000e",
35           "e10k",
36           "e10k_vf",
37           "e10k_q",
38           "ehci",
39           "fat16_ebpb",
40           "fat32_ebpb",
41           "fat_bpb",
42           "fat_direntry",
43           "gic_v3_dist",
44           "gic_v3_redist",
45           "gic_v2_cpu",
46           "hpet",
47           "ia32",
48           "ixp2800_icp_pic0",
49           "ixp2800_icp_pit",
50           "ixp2800_uart",
51           "lpc_bridge",
52           "lpc_dma",
53           "lpc_kbd",
54           "lpc_pic",
55           "lpc_pci_config",
56           "lpc_rtc",
57           "lpc_rtc_spaces",
58           "msix",
59           "msix_e1000",
60           "ohci",
61           "pc16550d",
62           "rtl8029as",
63           "tulip",
64           "uhci",
65           "xapic",
66           "x2apic",
67           "amd64",
68           "pl390_gic_dist",
69           "pl390_gic_cpuif",
70           "pl011_uart",
71           "lpuart",
72           "rpi3_miniuart",
73           "sp804_pit",
74           "cortex_a9_pit",
75           "cortex_a9_gt",
76           "cortex_a9_scu",
77           "ti_i2c",
78           "ti_twl6030",
79           "sdhc",
80           "imx8x/sdhc",
81           "apm88xxxx/apm88xxxx_pc16550",
82           "armv8/armv8_cache_ctrl",
83           "imx8x/imx8x_gpio",
84           "omap/ehci",
85           "omap/ohci",
86           "omap/omap_uart",
87           "omap/omap44xx_boot",
88           "omap/omap44xx_cam_cm2",
89           "omap/omap44xx_cam_prm",
90           "omap/omap44xx_ckgen_cm1",
91           "omap/omap44xx_ckgen_cm2",
92           "omap/omap44xx_ckgen_prm",
93           "omap/omap44xx_cortexa9_wugen",
94           "omap/omap44xx_cortex_m3_nvic",
95           "omap/omap44xx_ctrlmod",
96           "omap/omap44xx_device_prm",
97           "omap/omap44xx_ehci",
98           "omap/omap44xx_emif",
99           "omap/omap44xx_fdif",
100           "omap/omap44xx_gpio",
101           "omap/omap44xx_hsusbhost",
102           "omap/omap44xx_id",
103           "omap/omap44xx_l3init_cm2",
104           "omap/omap44xx_l4per_cm2",
105           "omap/omap44xx_mmchs",
106           "omap/omap44xx_mmchs1",
107           "omap/omap44xx_mmu",
108           "omap/omap44xx_scrm",
109           "omap/omap44xx_sdma",
110           "omap/omap44xx_spinlock",
111           "omap/omap44xx_sysctrl_padconf_core",
112           "omap/omap44xx_sysctrl_padconf_wkup",
113           "omap/omap44xx_usbconf",
114           "omap/omap44xx_usbtllhs_config",
115           "omap/omap44xx_uart3",
116           "virtio/virtio_blk",
117           "virtio/virtio_mmio",
118           "virtio/virtio_pci",
119           "virtio/virtio_io",
120           "xeon_phi/xeon_phi_serial",
121           "xeon_phi/xeon_phi_boot",
122           "xeon_phi/xeon_phi_apic",
123           "xeon_phi/xeon_phi_smpt",
124           "xeon_phi/xeon_phi_irq",
125           "xeon_phi/xeon_phi_dma",
126           "xeon_phi/xeon_phi_dma_chan",
127           "ioat_dma",
128           "ioat_dma_chan",
129           "pci_sr_iov_cap",
130           "pci_msix_cap",
131           "pci_e1000_msix_cap",
132           "megaraid",
133           "vtd",
134           "zynq7/zynq_uart",
135           "zynq7/zynq_slcr",
136           "sfn5122f",
137           "sfn5122f_q",
138           "enet"
139         ], arch <- allArchitectures
140] ++
141
142-- Mackerel 1 device descriptions
143--
144-- DO NOT add new devices to this list - the interface is non-portable
145-- and liable to break with new C compiler versions!
146--
147[ mackerel (options arch) f
148  | f <- [ "amd_vmcb",
149           "arm_icp_pic0",
150           "arm_icp_pit",
151           "cpuid",
152           "ht_config",
153           "lpc_ioapic",
154           "lpc_timer",
155           "pc16550d_mem",
156           "pci_hdr0",
157           "pci_hdr0_mem",
158           "pci_hdr1"
159         ], arch <- allArchitectures
160]
161