1 # This file tells config what files go into building a kernel,
2 # files marked standard are always included.
6 # The long compile-with and dependency lines are required because of
7 # limitations in config: backslash-newline doesn't work in strings, and
8 # dependency lines other than the first are silently ignored.
11 cloudabi32_vdso.o optional compat_cloudabi32 \
12 dependency "$S/contrib/cloudabi/cloudabi_vdso_i686_on_64bit.S" \
13 compile-with "${CC} -x assembler-with-cpp -m32 -shared -nostdinc -nostdlib -Wl,-T$S/compat/cloudabi/cloudabi_vdso.lds $S/contrib/cloudabi/cloudabi_vdso_i686_on_64bit.S -o ${.TARGET}" \
14 no-obj no-implicit-rule \
15 clean "cloudabi32_vdso.o"
17 cloudabi32_vdso_blob.o optional compat_cloudabi32 \
18 dependency "cloudabi32_vdso.o" \
19 compile-with "${OBJCOPY} --input-target binary --output-target elf64-x86-64-freebsd --binary-architecture i386 cloudabi32_vdso.o ${.TARGET}" \
21 clean "cloudabi32_vdso_blob.o"
23 cloudabi64_vdso.o optional compat_cloudabi64 \
24 dependency "$S/contrib/cloudabi/cloudabi_vdso_x86_64.S" \
25 compile-with "${CC} -x assembler-with-cpp -shared -nostdinc -nostdlib -Wl,-T$S/compat/cloudabi/cloudabi_vdso.lds $S/contrib/cloudabi/cloudabi_vdso_x86_64.S -o ${.TARGET}" \
26 no-obj no-implicit-rule \
27 clean "cloudabi64_vdso.o"
29 cloudabi64_vdso_blob.o optional compat_cloudabi64 \
30 dependency "cloudabi64_vdso.o" \
31 compile-with "${OBJCOPY} --input-target binary --output-target elf64-x86-64-freebsd --binary-architecture i386 cloudabi64_vdso.o ${.TARGET}" \
33 clean "cloudabi64_vdso_blob.o"
35 linux32_genassym.o optional compat_linux32 \
36 dependency "$S/amd64/linux32/linux32_genassym.c offset.inc" \
37 compile-with "${CC} ${CFLAGS:N-flto:N-fno-common} -c ${.IMPSRC}" \
38 no-obj no-implicit-rule \
39 clean "linux32_genassym.o"
41 linux32_assym.h optional compat_linux32 \
42 dependency "$S/kern/genassym.sh linux32_genassym.o" \
43 compile-with "sh $S/kern/genassym.sh linux32_genassym.o > ${.TARGET}" \
44 no-obj no-implicit-rule before-depend \
45 clean "linux32_assym.h"
47 linux32_locore.o optional compat_linux32 \
48 dependency "linux32_assym.h $S/amd64/linux32/linux32_locore.s" \
49 compile-with "${CC} -x assembler-with-cpp -DLOCORE -m32 -shared -s -pipe -I. -I$S -Werror -Wall -fPIC -fno-common -nostdinc -nostdlib -Wl,-T$S/amd64/linux32/linux32_vdso.lds.s -Wl,-soname=linux32_vdso.so,--eh-frame-hdr,-warn-common ${.IMPSRC} -o ${.TARGET}" \
50 no-obj no-implicit-rule \
51 clean "linux32_locore.o"
53 linux32_vdso.so optional compat_linux32 \
54 dependency "linux32_locore.o" \
55 compile-with "${OBJCOPY} --input-target binary --output-target elf64-x86-64-freebsd --binary-architecture i386 linux32_locore.o ${.TARGET}" \
57 clean "linux32_vdso.so"
59 ia32_genassym.o standard \
60 dependency "$S/compat/ia32/ia32_genassym.c offset.inc" \
61 compile-with "${CC} ${CFLAGS:N-flto:N-fno-common} -c ${.IMPSRC}" \
62 no-obj no-implicit-rule \
63 clean "ia32_genassym.o"
65 ia32_assym.h standard \
66 dependency "$S/kern/genassym.sh ia32_genassym.o" \
67 compile-with "env NM='${NM}' NMFLAGS='${NMFLAGS}' sh $S/kern/genassym.sh ia32_genassym.o > ${.TARGET}" \
68 no-obj no-implicit-rule before-depend \
71 font.h optional sc_dflt_font \
72 compile-with "uudecode < /usr/share/syscons/fonts/${SC_DFLT_FONT}-8x16.fnt && file2c 'static u_char dflt_font_16[16*256] = {' '};' < ${SC_DFLT_FONT}-8x16 > font.h && uudecode < /usr/share/syscons/fonts/${SC_DFLT_FONT}-8x14.fnt && file2c 'static u_char dflt_font_14[14*256] = {' '};' < ${SC_DFLT_FONT}-8x14 >> font.h && uudecode < /usr/share/syscons/fonts/${SC_DFLT_FONT}-8x8.fnt && file2c 'static u_char dflt_font_8[8*256] = {' '};' < ${SC_DFLT_FONT}-8x8 >> font.h" \
73 no-obj no-implicit-rule before-depend \
74 clean "font.h ${SC_DFLT_FONT}-8x14 ${SC_DFLT_FONT}-8x16 ${SC_DFLT_FONT}-8x8"
76 atkbdmap.h optional atkbd_dflt_keymap \
77 compile-with "kbdcontrol -P ${S:S/sys$/share/}/vt/keymaps -P ${S:S/sys$/share/}/syscons/keymaps -L ${ATKBD_DFLT_KEYMAP} | sed -e 's/^static keymap_t.* = /static keymap_t key_map = /' -e 's/^static accentmap_t.* = /static accentmap_t accent_map = /' > atkbdmap.h" \
78 no-obj no-implicit-rule before-depend \
81 ukbdmap.h optional ukbd_dflt_keymap \
82 compile-with "kbdcontrol -P ${S:S/sys$/share/}/vt/keymaps -P ${S:S/sys$/share/}/syscons/keymaps -L ${UKBD_DFLT_KEYMAP} | sed -e 's/^static keymap_t.* = /static keymap_t key_map = /' -e 's/^static accentmap_t.* = /static accentmap_t accent_map = /' > ukbdmap.h" \
83 no-obj no-implicit-rule before-depend \
86 hpt27xx_lib.o optional hpt27xx \
87 dependency "$S/dev/hpt27xx/amd64-elf.hpt27xx_lib.o.uu" \
88 compile-with "uudecode < $S/dev/hpt27xx/amd64-elf.hpt27xx_lib.o.uu" \
91 hptmvraid.o optional hptmv \
92 dependency "$S/dev/hptmv/amd64-elf.raid.o.uu" \
93 compile-with "uudecode < $S/dev/hptmv/amd64-elf.raid.o.uu" \
96 hptnr_lib.o optional hptnr \
97 dependency "$S/dev/hptnr/amd64-elf.hptnr_lib.o.uu" \
98 compile-with "uudecode < $S/dev/hptnr/amd64-elf.hptnr_lib.o.uu" \
101 hptrr_lib.o optional hptrr \
102 dependency "$S/dev/hptrr/amd64-elf.hptrr_lib.o.uu" \
103 compile-with "uudecode < $S/dev/hptrr/amd64-elf.hptrr_lib.o.uu" \
106 amd64/acpica/acpi_machdep.c optional acpi
107 acpi_wakecode.o optional acpi \
108 dependency "$S/amd64/acpica/acpi_wakecode.S assym.inc" \
109 compile-with "${NORMAL_S}" \
110 no-obj no-implicit-rule before-depend \
111 clean "acpi_wakecode.o"
112 acpi_wakecode.bin optional acpi \
113 dependency "acpi_wakecode.o" \
114 compile-with "${OBJCOPY} -S -O binary acpi_wakecode.o ${.TARGET}" \
115 no-obj no-implicit-rule before-depend \
116 clean "acpi_wakecode.bin"
117 acpi_wakecode.h optional acpi \
118 dependency "acpi_wakecode.bin" \
119 compile-with "file2c -sx 'static char wakecode[] = {' '};' < acpi_wakecode.bin > ${.TARGET}" \
120 no-obj no-implicit-rule before-depend \
121 clean "acpi_wakecode.h"
122 acpi_wakedata.h optional acpi \
123 dependency "acpi_wakecode.o" \
124 compile-with '${NM} -n --defined-only acpi_wakecode.o | while read offset dummy what; do echo "#define $${what} 0x$${offset}"; done > ${.TARGET}' \
125 no-obj no-implicit-rule before-depend \
126 clean "acpi_wakedata.h"
128 #amd64/amd64/apic_vector.S standard
129 amd64/amd64/bios.c standard
130 amd64/amd64/bpf_jit_machdep.c optional bpf_jitter
131 amd64/amd64/copyout.c standard
132 amd64/amd64/cpu_switch.S standard
133 amd64/amd64/db_disasm.c optional ddb
134 amd64/amd64/db_interface.c optional ddb
135 amd64/amd64/db_trace.c optional ddb
136 amd64/amd64/efirt_machdep.c optional efirt
137 amd64/amd64/efirt_support.S optional efirt
138 amd64/amd64/elf_machdep.c standard
139 amd64/amd64/exception.S standard
140 amd64/amd64/fpu.c standard
141 amd64/amd64/gdb_machdep.c optional gdb
142 amd64/amd64/in_cksum.c optional inet | inet6
143 amd64/amd64/initcpu.c standard
144 amd64/amd64/io.c optional io
145 amd64/amd64/locore.S standard no-obj
146 amd64/amd64/xen-locore.S optional xenhvm
147 amd64/amd64/machdep.c standard
148 amd64/amd64/mem.c optional mem
149 amd64/amd64/minidump_machdep.c standard
150 amd64/amd64/mp_machdep.c optional smp
151 amd64/amd64/mpboot.S optional smp
152 amd64/amd64/pmap.c standard
153 amd64/amd64/prof_machdep.c optional profiling-routine
154 amd64/amd64/ptrace_machdep.c standard
155 amd64/amd64/sigtramp.S standard
156 amd64/amd64/support.S standard
157 amd64/amd64/sys_machdep.c standard
158 amd64/amd64/trap.c standard
159 amd64/amd64/uio_machdep.c standard
160 amd64/amd64/uma_machdep.c standard
161 amd64/amd64/vm_machdep.c standard
162 amd64/cloudabi32/cloudabi32_sysvec.c optional compat_cloudabi32
163 amd64/cloudabi64/cloudabi64_sysvec.c optional compat_cloudabi64
164 amd64/pci/pci_cfgreg.c optional pci
165 cddl/contrib/opensolaris/common/atomic/amd64/opensolaris_atomic.S optional zfs | dtrace compile-with "${ZFS_S}"
166 cddl/dev/dtrace/amd64/dtrace_asm.S optional dtrace compile-with "${DTRACE_S}"
167 cddl/dev/dtrace/amd64/dtrace_subr.c optional dtrace compile-with "${DTRACE_C}"
168 cddl/dev/fbt/x86/fbt_isa.c optional dtrace_fbt | dtraceall compile-with "${FBT_C}"
169 cddl/dev/dtrace/x86/dis_tables.c optional dtrace_fbt | dtraceall compile-with "${DTRACE_C}"
170 cddl/dev/dtrace/x86/instr_size.c optional dtrace_fbt | dtraceall compile-with "${DTRACE_C}"
171 crypto/aesni/aeskeys_amd64.S optional aesni
172 crypto/aesni/aesni.c optional aesni
173 aesni_ghash.o optional aesni \
174 dependency "$S/crypto/aesni/aesni_ghash.c" \
175 compile-with "${CC} -c ${CFLAGS:C/^-O2$/-O3/:N-nostdinc} ${WERROR} ${NO_WCAST_QUAL} ${PROF} -mmmx -msse -msse4 -maes -mpclmul ${.IMPSRC}" \
177 clean "aesni_ghash.o"
178 aesni_ccm.o optional aesni \
179 dependency "$S/crypto/aesni/aesni_ccm.c" \
180 compile-with "${CC} -c ${CFLAGS:C/^-O2$/-O3/:N-nostdinc} ${WERROR} ${NO_WCAST_QUAL} ${PROF} -mmmx -msse -msse4 -maes -mpclmul ${.IMPSRC}" \
183 aesni_wrap.o optional aesni \
184 dependency "$S/crypto/aesni/aesni_wrap.c" \
185 compile-with "${CC} -c ${CFLAGS:C/^-O2$/-O3/:N-nostdinc} ${WERROR} ${NO_WCAST_QUAL} ${PROF} -mmmx -msse -msse4 -maes ${.IMPSRC}" \
188 crypto/blowfish/bf_enc.c optional crypto | ipsec | ipsec_support
189 crypto/des/des_enc.c optional crypto | ipsec | \
190 ipsec_support | netsmb
191 intel_sha1.o optional aesni \
192 dependency "$S/crypto/aesni/intel_sha1.c" \
193 compile-with "${CC} -c ${CFLAGS:C/^-O2$/-O3/:N-nostdinc} ${WERROR} ${PROF} -mmmx -msse -msse4 -msha ${.IMPSRC}" \
196 intel_sha256.o optional aesni \
197 dependency "$S/crypto/aesni/intel_sha256.c" \
198 compile-with "${CC} -c ${CFLAGS:C/^-O2$/-O3/:N-nostdinc} ${WERROR} ${PROF} -mmmx -msse -msse4 -msha ${.IMPSRC}" \
200 clean "intel_sha256.o"
201 crypto/via/padlock.c optional padlock
202 crypto/via/padlock_cipher.c optional padlock
203 crypto/via/padlock_hash.c optional padlock
204 dev/acpica/acpi_if.m standard
205 dev/acpica/acpi_hpet.c optional acpi
206 dev/acpica/acpi_pci.c optional acpi pci
207 dev/acpica/acpi_pci_link.c optional acpi pci
208 dev/acpica/acpi_pcib.c optional acpi pci
209 dev/acpica/acpi_pcib_acpi.c optional acpi pci
210 dev/acpica/acpi_pcib_pci.c optional acpi pci
211 dev/acpica/acpi_pxm.c optional acpi
212 dev/acpica/acpi_timer.c optional acpi
213 dev/acpi_support/acpi_wmi_if.m standard
214 dev/agp/agp_amd64.c optional agp
215 dev/agp/agp_i810.c optional agp
216 dev/agp/agp_via.c optional agp
217 dev/amdgpio/amdgpio.c optional amdgpio
218 dev/amdsbwd/amdsbwd.c optional amdsbwd
219 dev/amdsmn/amdsmn.c optional amdsmn | amdtemp
220 dev/amdtemp/amdtemp.c optional amdtemp
221 dev/arcmsr/arcmsr.c optional arcmsr pci
222 dev/asmc/asmc.c optional asmc isa
223 dev/atkbdc/atkbd.c optional atkbd atkbdc
224 dev/atkbdc/atkbd_atkbdc.c optional atkbd atkbdc
225 dev/atkbdc/atkbdc.c optional atkbdc
226 dev/atkbdc/atkbdc_isa.c optional atkbdc isa
227 dev/atkbdc/atkbdc_subr.c optional atkbdc
228 dev/atkbdc/psm.c optional psm atkbdc
229 dev/bxe/bxe.c optional bxe pci
230 dev/bxe/bxe_stats.c optional bxe pci
231 dev/bxe/bxe_debug.c optional bxe pci
232 dev/bxe/ecore_sp.c optional bxe pci
233 dev/bxe/bxe_elink.c optional bxe pci
234 dev/bxe/57710_init_values.c optional bxe pci
235 dev/bxe/57711_init_values.c optional bxe pci
236 dev/bxe/57712_init_values.c optional bxe pci
237 dev/coretemp/coretemp.c optional coretemp
238 dev/cpuctl/cpuctl.c optional cpuctl
239 dev/dpms/dpms.c optional dpms
240 # There are no systems with isa slots, so all ed isa entries should go..
241 dev/ed/if_ed_3c503.c optional ed isa ed_3c503
242 dev/ed/if_ed_isa.c optional ed isa
243 dev/ed/if_ed_wd80x3.c optional ed isa
244 dev/ed/if_ed_hpp.c optional ed isa ed_hpp
245 dev/ed/if_ed_sic.c optional ed isa ed_sic
246 dev/fb/fb.c optional fb | vga
247 dev/fb/s3_pci.c optional s3pci
248 dev/fb/vesa.c optional vga vesa
249 dev/fb/vga.c optional vga
250 dev/ichwd/ichwd.c optional ichwd
251 dev/if_ndis/if_ndis.c optional ndis
252 dev/if_ndis/if_ndis_pccard.c optional ndis pccard
253 dev/if_ndis/if_ndis_pci.c optional ndis cardbus | ndis pci
254 dev/if_ndis/if_ndis_usb.c optional ndis usb
255 dev/imcsmb/imcsmb.c optional imcsmb
256 dev/imcsmb/imcsmb_pci.c optional imcsmb pci
257 dev/intel/spi.c optional intelspi
258 dev/io/iodev.c optional io
259 dev/ioat/ioat.c optional ioat pci
260 dev/ioat/ioat_test.c optional ioat pci
261 dev/ipmi/ipmi.c optional ipmi
262 dev/ipmi/ipmi_acpi.c optional ipmi acpi
263 dev/ipmi/ipmi_isa.c optional ipmi isa
264 dev/ipmi/ipmi_kcs.c optional ipmi
265 dev/ipmi/ipmi_smic.c optional ipmi
266 dev/ipmi/ipmi_smbus.c optional ipmi smbus
267 dev/ipmi/ipmi_smbios.c optional ipmi
268 dev/ipmi/ipmi_ssif.c optional ipmi smbus
269 dev/ipmi/ipmi_pci.c optional ipmi pci
270 dev/ipmi/ipmi_linux.c optional ipmi compat_linux32
271 dev/ixl/if_ixl.c optional ixl pci \
272 compile-with "${NORMAL_C} -I$S/dev/ixl"
273 dev/ixl/ixl_pf_main.c optional ixl pci \
274 compile-with "${NORMAL_C} -I$S/dev/ixl"
275 dev/ixl/ixl_pf_qmgr.c optional ixl pci \
276 compile-with "${NORMAL_C} -I$S/dev/ixl"
277 dev/ixl/ixl_pf_iov.c optional ixl pci pci_iov \
278 compile-with "${NORMAL_C} -I$S/dev/ixl"
279 dev/ixl/ixl_pf_i2c.c optional ixl pci \
280 compile-with "${NORMAL_C} -I$S/dev/ixl"
281 dev/ixl/if_iavf.c optional iavf pci \
282 compile-with "${NORMAL_C} -I$S/dev/ixl"
283 dev/ixl/iavf_vc.c optional iavf pci \
284 compile-with "${NORMAL_C} -I$S/dev/ixl"
285 dev/ixl/ixl_txrx.c optional ixl pci | iavf pci \
286 compile-with "${NORMAL_C} -I$S/dev/ixl"
287 dev/ixl/i40e_osdep.c optional ixl pci | iavf pci \
288 compile-with "${NORMAL_C} -I$S/dev/ixl"
289 dev/ixl/i40e_lan_hmc.c optional ixl pci | iavf pci \
290 compile-with "${NORMAL_C} -I$S/dev/ixl"
291 dev/ixl/i40e_hmc.c optional ixl pci | iavf pci \
292 compile-with "${NORMAL_C} -I$S/dev/ixl"
293 dev/ixl/i40e_common.c optional ixl pci | iavf pci \
294 compile-with "${NORMAL_C} -I$S/dev/ixl"
295 dev/ixl/i40e_nvm.c optional ixl pci | iavf pci \
296 compile-with "${NORMAL_C} -I$S/dev/ixl"
297 dev/ixl/i40e_adminq.c optional ixl pci | iavf pci \
298 compile-with "${NORMAL_C} -I$S/dev/ixl"
299 dev/ixl/i40e_dcb.c optional ixl pci \
300 compile-with "${NORMAL_C} -I$S/dev/ixl"
301 dev/fdc/fdc.c optional fdc
302 dev/fdc/fdc_acpi.c optional fdc
303 dev/fdc/fdc_isa.c optional fdc isa
304 dev/fdc/fdc_pccard.c optional fdc pccard
305 dev/gpio/bytgpio.c optional bytgpio
306 dev/gpio/chvgpio.c optional chvgpio
307 dev/hpt27xx/hpt27xx_os_bsd.c optional hpt27xx
308 dev/hpt27xx/hpt27xx_osm_bsd.c optional hpt27xx
309 dev/hpt27xx/hpt27xx_config.c optional hpt27xx
310 dev/hptmv/entry.c optional hptmv
311 dev/hptmv/mv.c optional hptmv
312 dev/hptmv/gui_lib.c optional hptmv
313 dev/hptmv/hptproc.c optional hptmv
314 dev/hptmv/ioctl.c optional hptmv
315 dev/hptnr/hptnr_os_bsd.c optional hptnr
316 dev/hptnr/hptnr_osm_bsd.c optional hptnr
317 dev/hptnr/hptnr_config.c optional hptnr
318 dev/hptrr/hptrr_os_bsd.c optional hptrr
319 dev/hptrr/hptrr_osm_bsd.c optional hptrr
320 dev/hptrr/hptrr_config.c optional hptrr
321 dev/hwpmc/hwpmc_amd.c optional hwpmc
322 dev/hwpmc/hwpmc_intel.c optional hwpmc
323 dev/hwpmc/hwpmc_core.c optional hwpmc
324 dev/hwpmc/hwpmc_uncore.c optional hwpmc
325 dev/hwpmc/hwpmc_tsc.c optional hwpmc
326 dev/hwpmc/hwpmc_x86.c optional hwpmc
327 dev/hyperv/input/hv_kbd.c optional hyperv
328 dev/hyperv/input/hv_kbdc.c optional hyperv
329 dev/hyperv/pcib/vmbus_pcib.c optional hyperv pci
330 dev/hyperv/netvsc/hn_nvs.c optional hyperv
331 dev/hyperv/netvsc/hn_rndis.c optional hyperv
332 dev/hyperv/netvsc/if_hn.c optional hyperv
333 dev/hyperv/storvsc/hv_storvsc_drv_freebsd.c optional hyperv
334 dev/hyperv/utilities/hv_kvp.c optional hyperv
335 dev/hyperv/utilities/hv_snapshot.c optional hyperv
336 dev/hyperv/utilities/vmbus_heartbeat.c optional hyperv
337 dev/hyperv/utilities/vmbus_ic.c optional hyperv
338 dev/hyperv/utilities/vmbus_shutdown.c optional hyperv
339 dev/hyperv/utilities/vmbus_timesync.c optional hyperv
340 dev/hyperv/vmbus/hyperv.c optional hyperv
341 dev/hyperv/vmbus/hyperv_busdma.c optional hyperv
342 dev/hyperv/vmbus/vmbus.c optional hyperv pci
343 dev/hyperv/vmbus/vmbus_br.c optional hyperv
344 dev/hyperv/vmbus/vmbus_chan.c optional hyperv
345 dev/hyperv/vmbus/vmbus_et.c optional hyperv
346 dev/hyperv/vmbus/vmbus_if.m optional hyperv
347 dev/hyperv/vmbus/vmbus_res.c optional hyperv
348 dev/hyperv/vmbus/vmbus_xact.c optional hyperv
349 dev/hyperv/vmbus/amd64/hyperv_machdep.c optional hyperv
350 dev/hyperv/vmbus/amd64/vmbus_vector.S optional hyperv
351 dev/nctgpio/nctgpio.c optional nctgpio
352 dev/nfe/if_nfe.c optional nfe pci
353 dev/ntb/if_ntb/if_ntb.c optional if_ntb
354 dev/ntb/ntb_transport.c optional ntb_transport | if_ntb
355 dev/ntb/ntb.c optional ntb | ntb_transport | if_ntb | ntb_hw_amd | ntb_hw_intel | ntb_hw_plx | ntb_hw
356 dev/ntb/ntb_if.m optional ntb | ntb_transport | if_ntb | ntb_hw_amd | ntb_hw_intel | ntb_hw_plx | ntb_hw
357 dev/ntb/ntb_hw/ntb_hw_amd.c optional ntb_hw_amd | ntb_hw
358 dev/ntb/ntb_hw/ntb_hw_intel.c optional ntb_hw_intel | ntb_hw
359 dev/ntb/ntb_hw/ntb_hw_plx.c optional ntb_hw_plx | ntb_hw
360 dev/nvd/nvd.c optional nvd nvme
361 dev/nvme/nvme.c optional nvme
362 dev/nvme/nvme_ctrlr.c optional nvme
363 dev/nvme/nvme_ctrlr_cmd.c optional nvme
364 dev/nvme/nvme_ns.c optional nvme
365 dev/nvme/nvme_ns_cmd.c optional nvme
366 dev/nvme/nvme_qpair.c optional nvme
367 dev/nvme/nvme_sim.c optional nvme scbus
368 dev/nvme/nvme_sysctl.c optional nvme
369 dev/nvme/nvme_test.c optional nvme
370 dev/nvme/nvme_util.c optional nvme
371 dev/nvram/nvram.c optional nvram isa
372 dev/random/ivy.c optional rdrand_rng !random_loadable
373 dev/random/nehemiah.c optional padlock_rng !random_loadable
374 dev/qlxge/qls_dbg.c optional qlxge pci
375 dev/qlxge/qls_dump.c optional qlxge pci
376 dev/qlxge/qls_hw.c optional qlxge pci
377 dev/qlxge/qls_ioctl.c optional qlxge pci
378 dev/qlxge/qls_isr.c optional qlxge pci
379 dev/qlxge/qls_os.c optional qlxge pci
380 dev/qlxgb/qla_dbg.c optional qlxgb pci
381 dev/qlxgb/qla_hw.c optional qlxgb pci
382 dev/qlxgb/qla_ioctl.c optional qlxgb pci
383 dev/qlxgb/qla_isr.c optional qlxgb pci
384 dev/qlxgb/qla_misc.c optional qlxgb pci
385 dev/qlxgb/qla_os.c optional qlxgb pci
386 dev/qlxgbe/ql_dbg.c optional qlxgbe pci
387 dev/qlxgbe/ql_hw.c optional qlxgbe pci
388 dev/qlxgbe/ql_ioctl.c optional qlxgbe pci
389 dev/qlxgbe/ql_isr.c optional qlxgbe pci
390 dev/qlxgbe/ql_misc.c optional qlxgbe pci
391 dev/qlxgbe/ql_os.c optional qlxgbe pci
392 dev/qlxgbe/ql_reset.c optional qlxgbe pci
393 dev/qlxgbe/ql_fw.c optional qlxgbe pci
394 dev/qlxgbe/ql_boot.c optional qlxgbe pci
395 dev/qlxgbe/ql_minidump.c optional qlxgbe pci
396 dev/qlnx/qlnxe/ecore_cxt.c optional qlnxe pci \
397 compile-with "${LINUXKPI_C}"
398 dev/qlnx/qlnxe/ecore_dbg_fw_funcs.c optional qlnxe pci \
399 compile-with "${LINUXKPI_C}"
400 dev/qlnx/qlnxe/ecore_dcbx.c optional qlnxe pci \
401 compile-with "${LINUXKPI_C}"
402 dev/qlnx/qlnxe/ecore_dev.c optional qlnxe pci \
403 compile-with "${LINUXKPI_C}"
404 dev/qlnx/qlnxe/ecore_hw.c optional qlnxe pci \
405 compile-with "${LINUXKPI_C}"
406 dev/qlnx/qlnxe/ecore_init_fw_funcs.c optional qlnxe pci \
407 compile-with "${LINUXKPI_C}"
408 dev/qlnx/qlnxe/ecore_init_ops.c optional qlnxe pci \
409 compile-with "${LINUXKPI_C}"
410 dev/qlnx/qlnxe/ecore_int.c optional qlnxe pci \
411 compile-with "${LINUXKPI_C}"
412 dev/qlnx/qlnxe/ecore_l2.c optional qlnxe pci \
413 compile-with "${LINUXKPI_C}"
414 dev/qlnx/qlnxe/ecore_mcp.c optional qlnxe pci \
415 compile-with "${LINUXKPI_C}"
416 dev/qlnx/qlnxe/ecore_sp_commands.c optional qlnxe pci \
417 compile-with "${LINUXKPI_C}"
418 dev/qlnx/qlnxe/ecore_spq.c optional qlnxe pci \
419 compile-with "${LINUXKPI_C}"
420 dev/qlnx/qlnxe/qlnx_ioctl.c optional qlnxe pci \
421 compile-with "${LINUXKPI_C}"
422 dev/qlnx/qlnxe/qlnx_os.c optional qlnxe pci \
423 compile-with "${LINUXKPI_C}"
424 dev/sfxge/common/ef10_ev.c optional sfxge pci
425 dev/sfxge/common/ef10_filter.c optional sfxge pci
426 dev/sfxge/common/ef10_image.c optional sfxge pci
427 dev/sfxge/common/ef10_intr.c optional sfxge pci
428 dev/sfxge/common/ef10_mac.c optional sfxge pci
429 dev/sfxge/common/ef10_mcdi.c optional sfxge pci
430 dev/sfxge/common/ef10_nic.c optional sfxge pci
431 dev/sfxge/common/ef10_nvram.c optional sfxge pci
432 dev/sfxge/common/ef10_phy.c optional sfxge pci
433 dev/sfxge/common/ef10_rx.c optional sfxge pci
434 dev/sfxge/common/ef10_tx.c optional sfxge pci
435 dev/sfxge/common/ef10_vpd.c optional sfxge pci
436 dev/sfxge/common/efx_bootcfg.c optional sfxge pci
437 dev/sfxge/common/efx_crc32.c optional sfxge pci
438 dev/sfxge/common/efx_ev.c optional sfxge pci
439 dev/sfxge/common/efx_filter.c optional sfxge pci
440 dev/sfxge/common/efx_hash.c optional sfxge pci
441 dev/sfxge/common/efx_intr.c optional sfxge pci
442 dev/sfxge/common/efx_lic.c optional sfxge pci
443 dev/sfxge/common/efx_mac.c optional sfxge pci
444 dev/sfxge/common/efx_mcdi.c optional sfxge pci
445 dev/sfxge/common/efx_mon.c optional sfxge pci
446 dev/sfxge/common/efx_nic.c optional sfxge pci
447 dev/sfxge/common/efx_nvram.c optional sfxge pci
448 dev/sfxge/common/efx_phy.c optional sfxge pci
449 dev/sfxge/common/efx_port.c optional sfxge pci
450 dev/sfxge/common/efx_rx.c optional sfxge pci
451 dev/sfxge/common/efx_sram.c optional sfxge pci
452 dev/sfxge/common/efx_tunnel.c optional sfxge pci
453 dev/sfxge/common/efx_tx.c optional sfxge pci
454 dev/sfxge/common/efx_vpd.c optional sfxge pci
455 dev/sfxge/common/hunt_nic.c optional sfxge pci
456 dev/sfxge/common/mcdi_mon.c optional sfxge pci
457 dev/sfxge/common/medford_nic.c optional sfxge pci
458 dev/sfxge/common/medford2_nic.c optional sfxge pci
459 dev/sfxge/common/siena_mac.c optional sfxge pci
460 dev/sfxge/common/siena_mcdi.c optional sfxge pci
461 dev/sfxge/common/siena_nic.c optional sfxge pci
462 dev/sfxge/common/siena_nvram.c optional sfxge pci
463 dev/sfxge/common/siena_phy.c optional sfxge pci
464 dev/sfxge/common/siena_sram.c optional sfxge pci
465 dev/sfxge/common/siena_vpd.c optional sfxge pci
466 dev/sfxge/sfxge.c optional sfxge pci
467 dev/sfxge/sfxge_dma.c optional sfxge pci
468 dev/sfxge/sfxge_ev.c optional sfxge pci
469 dev/sfxge/sfxge_intr.c optional sfxge pci
470 dev/sfxge/sfxge_mcdi.c optional sfxge pci
471 dev/sfxge/sfxge_nvram.c optional sfxge pci
472 dev/sfxge/sfxge_port.c optional sfxge pci
473 dev/sfxge/sfxge_rx.c optional sfxge pci
474 dev/sfxge/sfxge_tx.c optional sfxge pci
475 dev/sio/sio.c optional sio
476 dev/sio/sio_isa.c optional sio isa
477 dev/sio/sio_pccard.c optional sio pccard
478 dev/sio/sio_pci.c optional sio pci
479 dev/sio/sio_puc.c optional sio puc
480 dev/smartpqi/smartpqi_cam.c optional smartpqi
481 dev/smartpqi/smartpqi_cmd.c optional smartpqi
482 dev/smartpqi/smartpqi_discovery.c optional smartpqi
483 dev/smartpqi/smartpqi_event.c optional smartpqi
484 dev/smartpqi/smartpqi_helper.c optional smartpqi
485 dev/smartpqi/smartpqi_init.c optional smartpqi
486 dev/smartpqi/smartpqi_intr.c optional smartpqi
487 dev/smartpqi/smartpqi_ioctl.c optional smartpqi
488 dev/smartpqi/smartpqi_main.c optional smartpqi
489 dev/smartpqi/smartpqi_mem.c optional smartpqi
490 dev/smartpqi/smartpqi_misc.c optional smartpqi
491 dev/smartpqi/smartpqi_queue.c optional smartpqi
492 dev/smartpqi/smartpqi_request.c optional smartpqi
493 dev/smartpqi/smartpqi_response.c optional smartpqi
494 dev/smartpqi/smartpqi_sis.c optional smartpqi
495 dev/smartpqi/smartpqi_tag.c optional smartpqi
496 dev/speaker/spkr.c optional speaker
497 dev/superio/superio.c optional superio isa
498 dev/syscons/apm/apm_saver.c optional apm_saver apm
499 dev/syscons/scvesactl.c optional sc vga vesa
500 dev/syscons/scvgarndr.c optional sc vga
501 dev/tpm/tpm.c optional tpm
502 dev/tpm/tpm20.c optional tpm
503 dev/tpm/tpm_crb.c optional tpm acpi
504 dev/tpm/tpm_tis.c optional tpm acpi
505 dev/tpm/tpm_acpi.c optional tpm acpi
506 dev/tpm/tpm_isa.c optional tpm isa
507 dev/uart/uart_cpu_x86.c optional uart
508 dev/viawd/viawd.c optional viawd
509 dev/vmware/vmxnet3/if_vmx.c optional vmx
510 dev/vmware/vmci/vmci.c optional vmci
511 dev/vmware/vmci/vmci_datagram.c optional vmci
512 dev/vmware/vmci/vmci_doorbell.c optional vmci
513 dev/vmware/vmci/vmci_driver.c optional vmci
514 dev/vmware/vmci/vmci_event.c optional vmci
515 dev/vmware/vmci/vmci_hashtable.c optional vmci
516 dev/vmware/vmci/vmci_kernel_if.c optional vmci
517 dev/vmware/vmci/vmci_qpair.c optional vmci
518 dev/vmware/vmci/vmci_queue_pair.c optional vmci
519 dev/vmware/vmci/vmci_resource.c optional vmci
520 dev/wbwd/wbwd.c optional wbwd
521 dev/xen/pci/xen_acpi_pci.c optional xenhvm
522 dev/xen/pci/xen_pci.c optional xenhvm
523 dev/isci/isci.c optional isci
524 dev/isci/isci_controller.c optional isci
525 dev/isci/isci_domain.c optional isci
526 dev/isci/isci_interrupt.c optional isci
527 dev/isci/isci_io_request.c optional isci
528 dev/isci/isci_logger.c optional isci
529 dev/isci/isci_oem_parameters.c optional isci
530 dev/isci/isci_remote_device.c optional isci
531 dev/isci/isci_sysctl.c optional isci
532 dev/isci/isci_task_request.c optional isci
533 dev/isci/isci_timer.c optional isci
534 dev/isci/scil/sati.c optional isci
535 dev/isci/scil/sati_abort_task_set.c optional isci
536 dev/isci/scil/sati_atapi.c optional isci
537 dev/isci/scil/sati_device.c optional isci
538 dev/isci/scil/sati_inquiry.c optional isci
539 dev/isci/scil/sati_log_sense.c optional isci
540 dev/isci/scil/sati_lun_reset.c optional isci
541 dev/isci/scil/sati_mode_pages.c optional isci
542 dev/isci/scil/sati_mode_select.c optional isci
543 dev/isci/scil/sati_mode_sense.c optional isci
544 dev/isci/scil/sati_mode_sense_10.c optional isci
545 dev/isci/scil/sati_mode_sense_6.c optional isci
546 dev/isci/scil/sati_move.c optional isci
547 dev/isci/scil/sati_passthrough.c optional isci
548 dev/isci/scil/sati_read.c optional isci
549 dev/isci/scil/sati_read_buffer.c optional isci
550 dev/isci/scil/sati_read_capacity.c optional isci
551 dev/isci/scil/sati_reassign_blocks.c optional isci
552 dev/isci/scil/sati_report_luns.c optional isci
553 dev/isci/scil/sati_request_sense.c optional isci
554 dev/isci/scil/sati_start_stop_unit.c optional isci
555 dev/isci/scil/sati_synchronize_cache.c optional isci
556 dev/isci/scil/sati_test_unit_ready.c optional isci
557 dev/isci/scil/sati_unmap.c optional isci
558 dev/isci/scil/sati_util.c optional isci
559 dev/isci/scil/sati_verify.c optional isci
560 dev/isci/scil/sati_write.c optional isci
561 dev/isci/scil/sati_write_and_verify.c optional isci
562 dev/isci/scil/sati_write_buffer.c optional isci
563 dev/isci/scil/sati_write_long.c optional isci
564 dev/isci/scil/sci_abstract_list.c optional isci
565 dev/isci/scil/sci_base_controller.c optional isci
566 dev/isci/scil/sci_base_domain.c optional isci
567 dev/isci/scil/sci_base_iterator.c optional isci
568 dev/isci/scil/sci_base_library.c optional isci
569 dev/isci/scil/sci_base_logger.c optional isci
570 dev/isci/scil/sci_base_memory_descriptor_list.c optional isci
571 dev/isci/scil/sci_base_memory_descriptor_list_decorator.c optional isci
572 dev/isci/scil/sci_base_object.c optional isci
573 dev/isci/scil/sci_base_observer.c optional isci
574 dev/isci/scil/sci_base_phy.c optional isci
575 dev/isci/scil/sci_base_port.c optional isci
576 dev/isci/scil/sci_base_remote_device.c optional isci
577 dev/isci/scil/sci_base_request.c optional isci
578 dev/isci/scil/sci_base_state_machine.c optional isci
579 dev/isci/scil/sci_base_state_machine_logger.c optional isci
580 dev/isci/scil/sci_base_state_machine_observer.c optional isci
581 dev/isci/scil/sci_base_subject.c optional isci
582 dev/isci/scil/sci_util.c optional isci
583 dev/isci/scil/scic_sds_controller.c optional isci
584 dev/isci/scil/scic_sds_library.c optional isci
585 dev/isci/scil/scic_sds_pci.c optional isci
586 dev/isci/scil/scic_sds_phy.c optional isci
587 dev/isci/scil/scic_sds_port.c optional isci
588 dev/isci/scil/scic_sds_port_configuration_agent.c optional isci
589 dev/isci/scil/scic_sds_remote_device.c optional isci
590 dev/isci/scil/scic_sds_remote_node_context.c optional isci
591 dev/isci/scil/scic_sds_remote_node_table.c optional isci
592 dev/isci/scil/scic_sds_request.c optional isci
593 dev/isci/scil/scic_sds_sgpio.c optional isci
594 dev/isci/scil/scic_sds_smp_remote_device.c optional isci
595 dev/isci/scil/scic_sds_smp_request.c optional isci
596 dev/isci/scil/scic_sds_ssp_request.c optional isci
597 dev/isci/scil/scic_sds_stp_packet_request.c optional isci
598 dev/isci/scil/scic_sds_stp_remote_device.c optional isci
599 dev/isci/scil/scic_sds_stp_request.c optional isci
600 dev/isci/scil/scic_sds_unsolicited_frame_control.c optional isci
601 dev/isci/scil/scif_sas_controller.c optional isci
602 dev/isci/scil/scif_sas_controller_state_handlers.c optional isci
603 dev/isci/scil/scif_sas_controller_states.c optional isci
604 dev/isci/scil/scif_sas_domain.c optional isci
605 dev/isci/scil/scif_sas_domain_state_handlers.c optional isci
606 dev/isci/scil/scif_sas_domain_states.c optional isci
607 dev/isci/scil/scif_sas_high_priority_request_queue.c optional isci
608 dev/isci/scil/scif_sas_internal_io_request.c optional isci
609 dev/isci/scil/scif_sas_io_request.c optional isci
610 dev/isci/scil/scif_sas_io_request_state_handlers.c optional isci
611 dev/isci/scil/scif_sas_io_request_states.c optional isci
612 dev/isci/scil/scif_sas_library.c optional isci
613 dev/isci/scil/scif_sas_remote_device.c optional isci
614 dev/isci/scil/scif_sas_remote_device_ready_substate_handlers.c optional isci
615 dev/isci/scil/scif_sas_remote_device_ready_substates.c optional isci
616 dev/isci/scil/scif_sas_remote_device_starting_substate_handlers.c optional isci
617 dev/isci/scil/scif_sas_remote_device_starting_substates.c optional isci
618 dev/isci/scil/scif_sas_remote_device_state_handlers.c optional isci
619 dev/isci/scil/scif_sas_remote_device_states.c optional isci
620 dev/isci/scil/scif_sas_request.c optional isci
621 dev/isci/scil/scif_sas_smp_activity_clear_affiliation.c optional isci
622 dev/isci/scil/scif_sas_smp_io_request.c optional isci
623 dev/isci/scil/scif_sas_smp_phy.c optional isci
624 dev/isci/scil/scif_sas_smp_remote_device.c optional isci
625 dev/isci/scil/scif_sas_stp_io_request.c optional isci
626 dev/isci/scil/scif_sas_stp_remote_device.c optional isci
627 dev/isci/scil/scif_sas_stp_task_request.c optional isci
628 dev/isci/scil/scif_sas_task_request.c optional isci
629 dev/isci/scil/scif_sas_task_request_state_handlers.c optional isci
630 dev/isci/scil/scif_sas_task_request_states.c optional isci
631 dev/isci/scil/scif_sas_timer.c optional isci
632 isa/syscons_isa.c optional sc
633 isa/vga_isa.c optional vga
634 kern/kern_clocksource.c standard
635 kern/imgact_aout.c optional compat_aout
636 kern/imgact_gzip.c optional gzip
637 kern/link_elf_obj.c standard
638 libkern/x86/crc32_sse42.c standard
640 # IA32 binary support
642 #amd64/ia32/ia32_exception.S optional compat_freebsd32
643 amd64/ia32/ia32_reg.c optional compat_freebsd32
644 amd64/ia32/ia32_signal.c optional compat_freebsd32
645 amd64/ia32/ia32_sigtramp.S optional compat_freebsd32
646 amd64/ia32/ia32_syscall.c optional compat_freebsd32
647 amd64/ia32/ia32_misc.c optional compat_freebsd32
648 compat/ia32/ia32_sysvec.c optional compat_freebsd32
649 compat/linprocfs/linprocfs.c optional linprocfs
650 compat/linsysfs/linsysfs.c optional linsysfs
652 # Linux/i386 binary support
654 amd64/linux32/linux32_dummy.c optional compat_linux32
655 amd64/linux32/linux32_machdep.c optional compat_linux32
656 amd64/linux32/linux32_support.s optional compat_linux32 \
657 dependency "linux32_assym.h"
658 amd64/linux32/linux32_sysent.c optional compat_linux32
659 amd64/linux32/linux32_sysvec.c optional compat_linux32
660 compat/linux/linux_emul.c optional compat_linux32
661 compat/linux/linux_errno.c optional compat_linux32
662 compat/linux/linux_file.c optional compat_linux32
663 compat/linux/linux_fork.c optional compat_linux32
664 compat/linux/linux_futex.c optional compat_linux32
665 compat/linux/linux_getcwd.c optional compat_linux32
666 compat/linux/linux_ioctl.c optional compat_linux32
667 compat/linux/linux_ipc.c optional compat_linux32
668 compat/linux/linux_mib.c optional compat_linux32
669 compat/linux/linux_misc.c optional compat_linux32
670 compat/linux/linux_mmap.c optional compat_linux32
671 compat/linux/linux_signal.c optional compat_linux32
672 compat/linux/linux_socket.c optional compat_linux32
673 compat/linux/linux_stats.c optional compat_linux32
674 compat/linux/linux_sysctl.c optional compat_linux32
675 compat/linux/linux_time.c optional compat_linux32
676 compat/linux/linux_timer.c optional compat_linux32
677 compat/linux/linux_uid16.c optional compat_linux32
678 compat/linux/linux_util.c optional compat_linux32
679 compat/linux/linux_vdso.c optional compat_linux32
680 compat/linux/linux_common.c optional compat_linux32
681 compat/linux/linux_event.c optional compat_linux32
682 compat/linux/linux.c optional compat_linux32
683 dev/amr/amr_linux.c optional compat_linux32 amr
684 dev/mfi/mfi_linux.c optional compat_linux32 mfi
686 # Windows NDIS driver support
688 compat/ndis/kern_ndis.c optional ndisapi pci
689 compat/ndis/kern_windrv.c optional ndisapi pci
690 compat/ndis/subr_hal.c optional ndisapi pci
691 compat/ndis/subr_ndis.c optional ndisapi pci
692 compat/ndis/subr_ntoskrnl.c optional ndisapi pci
693 compat/ndis/subr_pe.c optional ndisapi pci
694 compat/ndis/subr_usbd.c optional ndisapi pci
695 compat/ndis/winx64_wrap.S optional ndisapi pci
697 # x86 real mode BIOS emulator, required by dpms/pci/vesa
699 compat/x86bios/x86bios.c optional x86bios | dpms | pci | vesa
700 contrib/x86emu/x86emu.c optional x86bios | dpms | pci | vesa
704 dev/bvm/bvm_console.c optional bvmconsole
705 dev/bvm/bvm_dbg.c optional bvmdebug
707 # x86 shared code between IA32 and AMD64 architectures
709 x86/acpica/OsdEnvironment.c optional acpi
710 x86/acpica/acpi_apm.c optional acpi
711 x86/acpica/acpi_wakeup.c optional acpi
712 x86/acpica/madt.c optional acpi
713 x86/acpica/srat.c optional acpi
714 x86/bios/smbios.c optional smbios
715 x86/bios/vpd.c optional vpd
716 x86/cpufreq/powernow.c optional cpufreq
717 x86/cpufreq/est.c optional cpufreq
718 x86/cpufreq/hwpstate.c optional cpufreq
719 x86/cpufreq/p4tcc.c optional cpufreq
720 x86/iommu/busdma_dmar.c optional acpi acpi_dmar pci
721 x86/iommu/intel_ctx.c optional acpi acpi_dmar pci
722 x86/iommu/intel_drv.c optional acpi acpi_dmar pci
723 x86/iommu/intel_fault.c optional acpi acpi_dmar pci
724 x86/iommu/intel_gas.c optional acpi acpi_dmar pci
725 x86/iommu/intel_idpgtbl.c optional acpi acpi_dmar pci
726 x86/iommu/intel_intrmap.c optional acpi acpi_dmar pci
727 x86/iommu/intel_qi.c optional acpi acpi_dmar pci
728 x86/iommu/intel_quirks.c optional acpi acpi_dmar pci
729 x86/iommu/intel_utils.c optional acpi acpi_dmar pci
730 x86/isa/atpic.c optional atpic isa
731 x86/isa/atrtc.c standard
732 x86/isa/clock.c standard
733 x86/isa/elcr.c optional atpic isa | mptable
734 x86/isa/isa.c standard
735 x86/isa/isa_dma.c standard
736 x86/isa/nmi.c standard
737 x86/isa/orm.c optional isa
738 x86/pci/pci_bus.c optional pci
739 x86/pci/pci_early_quirks.c optional pci
740 x86/pci/qpi.c optional pci
741 x86/x86/autoconf.c standard
742 x86/x86/bus_machdep.c standard
743 x86/x86/busdma_bounce.c standard
744 x86/x86/busdma_machdep.c standard
745 x86/x86/cpu_machdep.c standard
746 x86/x86/dump_machdep.c standard
747 x86/x86/fdt_machdep.c optional fdt
748 x86/x86/identcpu.c standard
749 x86/x86/intr_machdep.c standard
750 x86/x86/io_apic.c standard
751 x86/x86/legacy.c standard
752 x86/x86/local_apic.c standard
753 x86/x86/mca.c standard
754 x86/x86/x86_mem.c optional mem
755 x86/x86/mptable.c optional mptable
756 x86/x86/mptable_pci.c optional mptable pci
757 x86/x86/mp_x86.c optional smp
758 x86/x86/mp_watchdog.c optional mp_watchdog smp
759 x86/x86/msi.c optional pci
760 x86/x86/nexus.c standard
761 x86/x86/pvclock.c standard
762 x86/x86/stack_machdep.c optional ddb | stack
763 x86/x86/tsc.c standard
764 x86/x86/ucode.c standard
765 x86/x86/delay.c standard
766 x86/xen/hvm.c optional xenhvm
767 x86/xen/xen_intr.c optional xenhvm
768 x86/xen/pv.c optional xenhvm
769 x86/xen/pvcpu_enum.c optional xenhvm
770 x86/xen/xen_apic.c optional xenhvm
771 x86/xen/xenpv.c optional xenhvm
772 x86/xen/xen_nexus.c optional xenhvm
773 x86/xen/xen_msi.c optional xenhvm
774 x86/xen/xen_pci_bus.c optional xenhvm