Date: Sat, 18 Oct 2008 00:45:47 +0400 From: Oleg <subbsd@gmail.com> To: freebsd-questions@freebsd.org Subject: how determine all possible drivers for my system Message-ID: <200810180045.47401.subbsd@gmail.com>
next in thread | raw e-mail | index | archive | help
Hello maillist of my favorite Wortstation&Server OS May i asking: how i can determine all drivers of existing devices, but who is not present in GENERIC kernel. For definition of all devices useful to me I have written the following a little stupid script: ---------- #!/bin/sh MODLIST=`find /boot/kernel -type f -name *.ko -print` LOGFILE="/var/tmp/kldlog.txt" # ignore for kldload module IGNORE_MODLIST="/boot/kernel/kernel.ko /boot/kernel/tom.ko /boot/kernel/iw_cxgb.ko" # (comment: tom.ko and iw_cwbg.ko after loading make "kernel panic" on my system) REPORTS="/var/tmp/reports.txt" FINAL_FILTER="(already exist)|(File exist)|(Unsupported file type)|\ (already present)|(failed to register)|(Exec format error)|\ (symbol [aA-zZ]++ undefin)|(Weak symbols not supported)|\ (already registered)|(unable to register)" # not know another easy way for fopen("/dev/klog") /etc/rc.d/syslogd stop echo "kern.* ${LOGFILE}" > /var/tmp/syslogd.conf syslogd -f /var/tmp/syslogd.conf # truncate -s0 ${LOGFILE} for MOD in ${MODLIST}; do ignore=0 for IGNORE_MOD in $IGNORE_MODLIST; do if [ "${IGNORE_MOD}" = "${MOD}" ]; then ignore=1 fi done if [ $ignore -eq 1 ]; then echo "Skipping ${MOD}..." >> ${LOGFILE} else echo "Try Loading ${MOD}..." >> ${LOGFILE} sync; kldload ${MOD} >> ${LOGFILE} 2>&1 fi done /etc/rc.d/syslogd start egrep -Eiv "\"${FINAL_FILTER}\"" ${LOGFILE} |tee ${REPORTS} --------- Result working off that scripts is the file reports.txt: { Oct 17 23:51:11 kernel: acpi_aiboost0: <ASUStek AIBOOSTER> on acpi0 Oct 17 23:51:11 kernel: ppc0: cannot reserve I/O port range Oct 17 23:51:12 kernel: acd0: FAILURE - INQUIRY ILLEGAL REQUEST asc=0x24 ascq=0x00 sks=0x48 0x00 0x01 Oct 17 23:51:12 kernel: cd0 at ata3 bus 0 target 0 lun 0 Oct 17 23:51:12 kernel: cd0: <PIONEER DVD-RW DVR-212D 1.09> Removable CD-ROM SCSI-0 device Oct 17 23:51:12 kernel: cd0: 3.300MB/s transfers Oct 17 23:51:12 kernel: cd0: Attempt to query device size failed: NOT READY, Medium not present Oct 17 23:51:12 kernel: cryptosoft0: <software crypto> on motherboard Oct 17 23:51:13 kernel: This module (opensolaris) contains code covered by the Oct 17 23:51:13 kernel: Common Development and Distribution License (CDDL) Oct 17 23:51:13 kernel: see http://opensolaris.org/os/licensing/opensolaris_license/ Oct 17 23:51:13 kernel: This module (opensolaris) contains code covered by the Oct 17 23:51:13 kernel: Common Development and Distribution License (CDDL) Oct 17 23:51:13 kernel: see http://opensolaris.org/os/licensing/opensolaris_license/ Oct 17 23:51:13 kernel: KLD dtrace.ko: depends on cyclic - not available Oct 17 23:51:13 kernel: KLD dtmalloc.ko: depends on dtrace - not available Oct 17 23:51:13 kernel: This module (opensolaris) contains code covered by the Oct 17 23:51:13 kernel: Common Development and Distribution License (CDDL) Oct 17 23:51:13 kernel: see http://opensolaris.org/os/licensing/opensolaris_license/ Oct 17 23:51:13 kernel: KLD dtrace.ko: depends on cyclic - not available Oct 17 23:51:13 kernel: This module (opensolaris) contains code covered by the Oct 17 23:51:13 kernel: Common Development and Distribution License (CDDL) Oct 17 23:51:13 kernel: see http://opensolaris.org/os/licensing/opensolaris_license/ Oct 17 23:51:13 kernel: KLD profile.ko: depends on cyclic - not available Oct 17 23:51:13 kernel: KLD dtraceall.ko: depends on profile - not available Oct 17 23:51:13 kernel: This module (opensolaris) contains code covered by the Oct 17 23:51:13 kernel: Common Development and Distribution License (CDDL) Oct 17 23:51:13 kernel: see http://opensolaris.org/os/licensing/opensolaris_license/ Oct 17 23:51:13 kernel: KLD profile.ko: depends on cyclic - not available Oct 17 23:51:13 kernel: KLD dtraceall.ko: depends on profile - not available Oct 17 23:51:13 kernel: KLD dtrace_test.ko: depends on dtraceall - not available Oct 17 23:51:13 kernel: This module (opensolaris) contains code covered by the Oct 17 23:51:13 kernel: Common Development and Distribution License (CDDL) Oct 17 23:51:13 kernel: see http://opensolaris.org/os/licensing/opensolaris_license/ Oct 17 23:51:13 kernel: KLD profile.ko: depends on cyclic - not available Oct 17 23:51:13 kernel: This module (opensolaris) contains code covered by the Oct 17 23:51:13 kernel: Common Development and Distribution License (CDDL) Oct 17 23:51:13 kernel: see http://opensolaris.org/os/licensing/opensolaris_license/ Oct 17 23:51:13 kernel: KLD dtrace.ko: depends on cyclic - not available Oct 17 23:51:13 kernel: KLD prototype.ko: depends on dtrace - not available Oct 17 23:51:13 kernel: This module (opensolaris) contains code covered by the Oct 17 23:51:13 kernel: Common Development and Distribution License (CDDL) Oct 17 23:51:13 kernel: see http://opensolaris.org/os/licensing/opensolaris_license/ Oct 17 23:51:13 kernel: KLD dtrace.ko: depends on cyclic - not available Oct 17 23:51:13 kernel: KLD sdt.ko: depends on dtrace - not available Oct 17 23:51:13 kernel: This module (opensolaris) contains code covered by the Oct 17 23:51:13 kernel: Common Development and Distribution License (CDDL) Oct 17 23:51:13 kernel: see http://opensolaris.org/os/licensing/opensolaris_license/ Oct 17 23:51:13 kernel: KLD dtrace.ko: depends on cyclic - not available Oct 17 23:51:13 kernel: KLD systrace.ko: depends on dtrace - not available Oct 17 23:51:13 kernel: This module (opensolaris) contains code covered by the Oct 17 23:51:13 kernel: Common Development and Distribution License (CDDL) Oct 17 23:51:13 kernel: see http://opensolaris.org/os/licensing/opensolaris_license/ Oct 17 23:51:13 kernel: KLD dtrace.ko: depends on cyclic - not available Oct 17 23:51:13 kernel: KLD fbt.ko: depends on dtrace - not available Oct 17 23:51:13 kernel: KLD if_en.ko: depends on utopia - not available Oct 17 23:51:13 kernel: KLD if_fatm.ko: depends on utopia - not available Oct 17 23:51:15 kernel: KLD if_hatm.ko: depends on atm - not available Oct 17 23:51:15 kernel: module_register_init: MOD_LOAD (hwpmc, 0xffffffff804f2440, 0xffffffff80fffce0) error 78 Oct 17 23:51:15 kernel: ichsmb0: <SMBus controller> port 0x2900-0x293f,0x2d00-0x2d3f,0x2e00-0x2e3f irq 21 at device 10.1 on pci0 Oct 17 23:51:15 kernel: ichsmb0: [ITHREAD] Oct 17 23:51:15 kernel: smbus0: <System Management Bus> on ichsmb0 Oct 17 23:51:16 kernel: smb0: <SMBus generic I/O> on smbus0 Oct 17 23:51:16 kernel: ichwd module loaded Oct 17 23:51:16 kernel: ppc0: cannot reserve I/O port range Oct 17 23:51:16 kernel: nfe1f0: Ethernet address: 00:22:15:20:66:1b Oct 17 23:51:16 kernel: nfe1f1: Ethernet address: 00:22:15:20:66:1b Oct 17 23:51:16 kernel: nfe1f2: Ethernet address: 00:22:15:20:66:1b Oct 17 23:51:16 kernel: nfe1f3: Ethernet address: 00:22:15:20:66:1b Oct 17 23:51:16 kernel: nfe0f0: Ethernet address: 00:22:15:20:63:bc Oct 17 23:51:16 kernel: nfe0f1: Ethernet address: 00:22:15:20:63:bc Oct 17 23:51:16 kernel: nfe0f2: Ethernet address: 00:22:15:20:63:bc Oct 17 23:51:16 kernel: nfe0f3: Ethernet address: 00:22:15:20:63:bc Oct 17 23:51:16 kernel: IP Filter: v4.1.28 initialized. Default = pass all, Logging = enabled Oct 17 23:51:16 kernel: ppc0: cannot reserve I/O port range Oct 17 23:51:17 kernel: module_register_init: MOD_LOAD (ipw_bss_fw, 0xffffffff810a7000, 0) error 1 Oct 17 23:51:17 kernel: module_register_init: MOD_LOAD (ipw_ibss_fw, 0xffffffff810db000, 0) error 1 Oct 17 23:51:17 kernel: module_register_init: MOD_LOAD (ipw_monitor_fw, 0xffffffff8110d000, 0) error 1 Oct 17 23:51:17 kernel: registered firmware set <isp_1040> Oct 17 23:51:17 kernel: registered firmware set <isp_1040_it> Oct 17 23:51:17 kernel: registered firmware set <isp_1080> Oct 17 23:51:17 kernel: registered firmware set <isp_1080_it> Oct 17 23:51:17 kernel: registered firmware set <isp_12160> Oct 17 23:51:17 kernel: registered firmware set <isp_12160_it> Oct 17 23:51:17 kernel: registered firmware set <isp_2100> Oct 17 23:51:17 kernel: registered firmware set <isp_2200> Oct 17 23:51:17 kernel: registered firmware set <isp_2300> Oct 17 23:51:17 kernel: registered firmware set <isp_2322> Oct 17 23:51:17 kernel: registered firmware set <isp_2400> Oct 17 23:51:17 kernel: unable to register firmware 'isp_1040' Oct 17 23:51:17 kernel: unable to register firmware 'isp_1040_it' Oct 17 23:51:17 kernel: unable to register firmware 'isp_1080' Oct 17 23:51:17 kernel: unable to register firmware 'isp_1080_it' Oct 17 23:51:17 kernel: unable to register firmware 'isp_12160' Oct 17 23:51:17 kernel: unable to register firmware 'isp_12160_it' Oct 17 23:51:17 kernel: unable to register firmware 'isp_2100' Oct 17 23:51:17 kernel: unable to register firmware 'isp_2200' Oct 17 23:51:17 kernel: unable to register firmware 'isp_2300' Oct 17 23:51:17 kernel: unable to register firmware 'isp_2322' Oct 17 23:51:17 kernel: unable to register firmware 'isp_2400' Oct 17 23:51:17 kernel: module_register_init: MOD_LOAD (iwnfw_fw, 0xffffffff812d4000, 0) error 1 Oct 17 23:51:17 kernel: ppc0: cannot reserve I/O port range Oct 17 23:51:18 kernel: KLD mac_biba.ko: depends on kernel_mac_support - not available Oct 17 23:51:18 kernel: KLD mac_bsdextended.ko: depends on kernel_mac_support - not available Oct 17 23:51:18 kernel: KLD mac_ifoff.ko: depends on kernel_mac_support - not available Oct 17 23:51:18 kernel: KLD mac_lomac.ko: depends on kernel_mac_support - not available Oct 17 23:51:18 kernel: KLD mac_mls.ko: depends on kernel_mac_support - not available Oct 17 23:51:18 kernel: KLD mac_none.ko: depends on kernel_mac_support - not available Oct 17 23:51:18 kernel: KLD mac_partition.ko: depends on kernel_mac_support - not available Oct 17 23:51:18 kernel: KLD mac_portacl.ko: depends on kernel_mac_support - not available Oct 17 23:51:18 kernel: KLD mac_seeotheruids.ko: depends on kernel_mac_support - not available Oct 17 23:51:18 kernel: KLD mac_stub.ko: depends on kernel_mac_support - not available Oct 17 23:51:18 kernel: KLD mac_test.ko: depends on kernel_mac_support - not available Oct 17 23:51:18 kernel: KLD if_malo.ko: depends on malofw_fw - not available Oct 17 23:51:18 kernel: ppc0: cannot reserve I/O port range Oct 17 23:51:19 kernel: WARNING: attempt to net_add_domain(bluetooth) after domainfinalize() Oct 17 23:51:19 kernel: WARNING: attempt to net_add_domain(netgraph) after domainfinalize() Oct 17 23:51:20 kernel: This module (opensolaris) contains code covered by the Oct 17 23:51:20 kernel: Common Development and Distribution License (CDDL) Oct 17 23:51:20 kernel: see http://opensolaris.org/os/licensing/opensolaris_license/ Oct 17 23:51:20 kernel: KLD if_patm.ko: depends on atm - not available Oct 17 23:51:20 kernel: ppc0: cannot reserve I/O port range Oct 17 23:51:21 kernel: netsmb_dev: loaded Oct 17 23:51:21 kernel: ppc0: cannot reserve I/O port range Oct 17 23:51:22 last message repeated 2 times Oct 17 23:51:22 kernel: hdac0: <NVidia MCP55 High Definition Audio Controller> mem 0xf9ef0000-0xf9ef3fff irq 21 at device 15.1 on pci0 Oct 17 23:51:22 kernel: hdac0: <HDA Driver Revision: 20081013_0113> Oct 17 23:51:22 kernel: hdac0: [ITHREAD] Oct 17 23:51:22 kernel: hdac0: <HDA Codec #0: Analog Devices AD1988B> Oct 17 23:51:22 kernel: pcm0: <HDA codec #0 Analog Devices AD1988B PCM #0> on hdac0 Oct 17 23:51:22 kernel: pcm1: <HDA codec #0 Analog Devices AD1988B PCM #1> on hdac0 Oct 17 23:51:22 kernel: pcm2: <HDA codec #0 Analog Devices AD1988B PCM #2> on hdac0 Oct 17 23:51:24 kernel: ppc0: cannot reserve I/O port range Oct 17 23:51:24 last message repeated 2 times Oct 17 23:51:25 kernel: dragon_saver: the console does not support M_VGA_CG320 Oct 17 23:51:25 kernel: module_register_init: MOD_LOAD (dragon_saver, 0xffffffff81637140, 0) error 19 Oct 17 23:51:25 kernel: fire_saver: the console does not support M_VGA_CG320 Oct 17 23:51:25 kernel: module_register_init: MOD_LOAD (fire_saver, 0xffffffff81639000, 0) error 19 Oct 17 23:51:25 kernel: logo_saver: the console does not support M_VGA_CG320 Oct 17 23:51:25 kernel: module_register_init: MOD_LOAD (logo_saver, 0xffffffff8163b010, 0) error 19 Oct 17 23:51:25 kernel: rain_saver: the console does not support M_VGA_CG320 Oct 17 23:51:25 kernel: module_register_init: MOD_LOAD (rain_saver, 0xffffffff8163e010, 0) error 19 Oct 17 23:51:25 kernel: warp_saver: the console does not support M_VGA_CG320 Oct 17 23:51:25 kernel: module_register_init: MOD_LOAD (warp_saver, 0xffffffff81641270, 0) error 19 Oct 17 23:51:26 kernel: KLD if_upgt.ko: depends on upgtfw_fw - not available Oct 17 23:51:26 kernel: wlan: mac acl policy registered } from which I get following useful and working devices for generate my custom kernels: -- device ichwd device smb device smbus device ichsmb device cd device acpi_aiboost device crypto device cryptodev -- My question: what the "official" FreeBSD-way for the approach similar operations?
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200810180045.47401.subbsd>