Re: kernel question ???

From: Jiri Mikulas <konfer_at_mikulas.com>
Date: Tue, 01 Nov 2005 15:03:56 +0100
hello
there are still USB network devices

# USB Ethernet, requires miibus
device		aue		# ADMtek USB Ethernet
device		axe		# ASIX Electronics USB Ethernet
device		cdce		# Generic USB over Ethernet
device		cue		# CATC USB Ethernet
device		kue		# Kawasaki LSI USB Ethernet
device		rue		# RealTek RTL8150 USB Ethernet

try to comment them out
maybe also

device		fwe		# Ethernet over FireWire (non-standard!)

don't forget to compile required miibus module

Jiri

Vincent Blondel wrote:

>Hello all,
>
>Sorry for this, maybe stupid, question but I more often compile kernels
>on Linux platforms.
>
>So, in linux world, there is a very simple way to compile devices as
>modules and I am now trying to do this same feature in my FreeBSD kernel
>( 7.0-current ) for all network devices ( all /boot/kernel/if_xxx.so )
>that I would like to (un)load when it is necessary.
>
>I don't know if it is the right way to do it but I removed all network
>devices from my kernel config file (see below) but I get some problems
>when compiling the kernel (see below).
>
>Could you please help me to solve this problem ?
>
>Regards
>Vincent
>
>-----
>
>kernel config file RELENG_6_i686
>
>machine		i386
>cpu		I686_CPU
>ident		RELENG_6_i686
>
># To statically compile in device wiring instead of /boot/device.hints
>#hints		"GENERIC.hints"		# Default places to look for devices.
>
>makeoptions	DEBUG=-g	# Build kernel with gdb(1) debug symbols
>
>options		SC_DISABLE_REBOOT
>
>#options 	SCHED_ULE	# ULE scheduler
>options 	SCHED_4BSD	# 4BSD scheduler
>options 	PREEMPTION	# Enable kernel thread preemption
>options 	INET		# InterNETworking
>options 	INET6		# IPv6 communications protocols
>options 	FFS		# Berkeley Fast Filesystem
>options 	SOFTUPDATES	# Enable FFS soft updates support
>options 	UFS_ACL		# Support for access control lists
>options 	UFS_DIRHASH	# Improve performance on big directories
>options 	MD_ROOT		# MD is a potential root device
>options 	NFSCLIENT	# Network Filesystem Client
>options 	NFSSERVER	# Network Filesystem Server
>options 	NFS_ROOT	# NFS usable as /, requires NFSCLIENT
>options 	MSDOSFS		# MSDOS Filesystem
>options 	CD9660		# ISO 9660 Filesystem
>options 	PROCFS		# Process filesystem (requires PSEUDOFS)
>options 	PSEUDOFS	# Pseudo-filesystem framework
>options 	GEOM_GPT	# GUID Partition Tables.
>options 	COMPAT_43	# Compatible with BSD 4.3 [KEEP THIS!]
>options 	COMPAT_FREEBSD4	# Compatible with FreeBSD4
>options 	COMPAT_FREEBSD5	# Compatible with FreeBSD5
>options 	SCSI_DELAY=5000	# Delay (in ms) before probing SCSI
>options 	KTRACE		# ktrace(1) support
>options 	SYSVSHM		# SYSV-style shared memory
>options 	SYSVMSG		# SYSV-style message queues
>options 	SYSVSEM		# SYSV-style semaphores
>options 	_KPOSIX_PRIORITY_SCHEDULING 
>options KBD_INSTALL_CDEV	# install a CDEV entry in /dev
>options 	AHC_REG_PRETTY_PRINT	# Print register bitfields in debug
>					# output.  Adds ~128k to driver.
>options 	AHD_REG_PRETTY_PRINT	# Print register bitfields in debug
>					# output.  Adds ~215k to driver.
>options 	ADAPTIVE_GIANT		# Giant mutex is adaptive.
>
># Debugging for use in -current
>options 	KDB			# Enable kernel debugger support.
>options 	DDB			# Support DDB.
>options 	GDB			# Support remote GDB.
>options 	INVARIANTS		# Enable calls of extra sanity checking
>options 	INVARIANT_SUPPORT	# Extra sanity checks of internal structures,
>required by INVARIANTS
>options 	WITNESS			# Enable checks to detect deadlocks and cycles
>options 	WITNESS_SKIPSPIN	# Don't run witness on spinlocks for speed
>
># To make an SMP kernel, the next two lines are needed
>#options 	SMP			# Symmetric MultiProcessor Kernel
>device		apic			# I/O APIC
>
># Bus support.
>device		isa
>device		eisa
>device		pci
>
># Floppy drives
>device		fdc
>
># ATA and ATAPI devices
>device		ata
>device		atadisk		# ATA disk drives
>device		ataraid		# ATA RAID drives
>device		atapicd		# ATAPI CDROM drives
>device		atapifd		# ATAPI floppy drives
>device		atapist		# ATAPI tape drives
>options 	ATA_STATIC_ID	# Static device numbering
>
># SCSI Controllers
>device		ahb		# EISA AHA1742 family
>device		ahc		# AHA2940 and onboard AIC7xxx devices
>device		ahd		# AHA39320/29320 and onboard AIC79xx devices
>device		amd		# AMD 53C974 (Tekram DC-390(T))
>device		isp		# Qlogic family
>#device 	ispfw		# Firmware for QLogic HBAs- normally a module
>device		mpt		# LSI-Logic MPT-Fusion
>#device		ncr		# NCR/Symbios Logic
>device		sym		# NCR/Symbios Logic (newer chipsets + those of `ncr')
>device		trm		# Tekram DC395U/UW/F DC315U adapters
>
>device		adv		# Advansys SCSI adapters
>device		adw		# Advansys wide SCSI adapters
>device		aha		# Adaptec 154x SCSI adapters
>device		aic		# Adaptec 15[012]x SCSI adapters, AIC-6[23]60.
>device		bt		# Buslogic/Mylex MultiMaster SCSI adapters
>
>device		ncv		# NCR 53C500
>device		nsp		# Workbit Ninja SCSI-3
>device		stg		# TMC 18C30/18C50
>
># SCSI peripherals
>device		scbus		# SCSI bus (required for SCSI)
>device		ch		# SCSI media changers
>device		da		# Direct Access (disks)
>device		sa		# Sequential Access (tape etc)
>device		cd		# CD
>device		pass		# Passthrough device (direct SCSI access)
>device		ses		# SCSI Environmental Services (and SAF-TE)
>
># RAID controllers interfaced to the SCSI subsystem
>device		amr		# AMI MegaRAID
>device		arcmsr		# Areca SATA II RAID
>device		asr		# DPT SmartRAID V, VI and Adaptec SCSI RAID
>device		ciss		# Compaq Smart RAID 5*
>device		dpt		# DPT Smartcache III, IV - See NOTES for options
>device		hptmv		# Highpoint RocketRAID 182x
>device		iir		# Intel Integrated RAID
>device		ips		# IBM (Adaptec) ServeRAID
>device		mly		# Mylex AcceleRAID/eXtremeRAID
>device		twa		# 3ware 9000 series PATA/SATA RAID
>
># RAID controllers
>device		aac		# Adaptec FSA RAID
>device		aacp		# SCSI passthrough for aac (requires CAM)
>device		ida		# Compaq Smart RAID
>device		mlx		# Mylex DAC960 family
>device		pst		# Promise Supertrak SX6000
>device		twe		# 3ware ATA RAID
>
># atkbdc0 controls both the keyboard and the PS/2 mouse
>device		atkbdc		# AT keyboard controller
>device		atkbd		# AT keyboard
>device		psm		# PS/2 mouse
>
>device		vga		# VGA video card driver
>
>device		splash		# Splash screen and screen saver support
>
># syscons is the default console driver, resembling an SCO console
>device		sc
>
># Enable this for the pcvt (VT220 compatible) console driver
>#device		vt
>#options 	XSERVER		# support for X server on a vt console
>#options 	FAT_CURSOR	# start with block cursor
>
># Power management support (see NOTES for more options)
>#device		apm
># Add suspend/resume support for the i8254.
>device		pmtimer
>
># PCCARD (PCMCIA) support
># PCMCIA and cardbus bridge support
>device		cbb		# cardbus (yenta) bridge
>device		pccard		# PC Card (16-bit) bus
>device		cardbus		# CardBus (32-bit) bus
>
># Serial (COM) ports
>device		sio		# 8250, 16[45]50 based serial ports
>
># Parallel port
>device		ppc
>device		ppbus		# Parallel port bus (required)
>device		lpt		# Printer
>device		plip		# TCP/IP over parallel
>device		ppi		# Parallel port interface device
>#device		vpo		# Requires scbus and da
>
># If you've got a "dumb" serial or parallel PCI card that is
># supported by the puc(4) glue driver, uncomment the following
># line to enable it (connects to the sio and/or ppc drivers):
>#device		puc
>
># ISA devices that use the old ISA shims
>#device		le
>
># Pseudo devices.
>device		loop		# Network loopback
>device		random		# Entropy device
>device		ether		# Ethernet support
>device		sl		# Kernel SLIP
>device		ppp		# Kernel PPP
>device		tun		# Packet tunnel.
>device		pty		# Pseudo-ttys (telnet etc)
>device		md		# Memory "disks"
>device		gif		# IPv6 and IPv4 tunneling
>device		faith		# IPv6-to-IPv4 relaying (translation)
>
># The `bpf' device enables the Berkeley Packet Filter.
># Be aware of the administrative consequences of enabling this!
># Note that 'bpf' is required for DHCP.
>device		bpf		# Berkeley packet filter
>
># USB support
>device		uhci		# UHCI PCI->USB interface
>device		ohci		# OHCI PCI->USB interface
>device		ehci		# EHCI PCI->USB interface (USB 2.0)
>device		usb		# USB Bus (required)
>#device		udbp		# USB Double Bulk Pipe devices
>device		ugen		# Generic
>device		uhid		# "Human Interface Devices"
>device		ukbd		# Keyboard
>device		ulpt		# Printer
>device		umass		# Disks/Mass storage - Requires scbus and da
>device		ums		# Mouse
>device		ural		# Ralink Technology RT2500USB wireless NICs
>device		urio		# Diamond Rio 500 MP3 player
>device		uscanner	# Scanners
># USB Ethernet, requires miibus
>device		aue		# ADMtek USB Ethernet
>device		axe		# ASIX Electronics USB Ethernet
>device		cdce		# Generic USB over Ethernet
>device		cue		# CATC USB Ethernet
>device		kue		# Kawasaki LSI USB Ethernet
>device		rue		# RealTek RTL8150 USB Ethernet
>
># FireWire support
>device		firewire	# FireWire bus code
>device		sbp		# SCSI over FireWire (Requires scbus and da)
>device		fwe		# Ethernet over FireWire (non-standard!)
>
>-----
>
>make buildkernel KERNCONF=RELENG_6_i686
>
>MAKE=/usr/obj/usr/src/make.i386/make sh /usr/src/sys/conf/newvers.sh
>RELENG_6_i686
>cc -c -O -pipe  -Wall -Wredundant-decls -Wnested-externs
>-Wstrict-prototypes  -Wmissing-prototypes -Wpointer-arith -Winline
>-Wcast-qual  -fformat-extensions -std=c99 -g -nostdinc -I-  -I.
>-I/usr/src/sys -I/usr/src/sys/contrib/altq -D_KERNEL
>-DHAVE_KERNEL_OPTION_HEADERS -include opt_global.h -fno-common
>-finline-limit=8000 --param inline-unit-growth=100 --param
>large-function-growth=1000  -mno-align-long-strings
>-mpreferred-stack-boundary=2  -mno-mmx -mno-3dnow -mno-sse -mno-sse2
>-mno-sse3 -ffreestanding -Werror  vers.c
>linking kernel.debug
>if_aue.o(.text+0x96d): In function `aue_attach':
>/usr/src/sys/dev/usb/if_aue.c:749: undefined reference to
>`mii_phy_probe'
>if_aue.o(.text+0xcfe): In function `aue_tick':
>/usr/src/sys/dev/usb/if_aue.c:1032: undefined reference to `mii_tick'
>if_aue.o(.text+0x1051): In function `aue_init':
>/usr/src/sys/dev/usb/if_aue.c:1198: undefined reference to
>`mii_mediachg'
>if_aue.o(.text+0x1156): In function `aue_ifmedia_upd':
>/usr/src/sys/dev/usb/if_aue.c:1263: undefined reference to
>`mii_phy_reset'
>if_aue.o(.text+0x1166):/usr/src/sys/dev/usb/if_aue.c:1265: undefined
>reference to `mii_mediachg'
>if_aue.o(.text+0x1191): In function `aue_ifmedia_sts':
>/usr/src/sys/dev/usb/if_aue.c:1279: undefined reference to
>`mii_pollstat'
>if_aue.o(.data+0x90): In function `aue_csr_read_2':
>/usr/src/sys/dev/usb/if_aue.c:294: undefined reference to
>`miibus_readreg_desc'
>if_aue.o(.data+0x98):/usr/src/sys/dev/usb/if_aue.c:295: undefined
>reference to `miibus_writereg_desc'
>if_aue.o(.data+0xa0):/usr/src/sys/dev/usb/if_aue.c:296: undefined
>reference to `miibus_statchg_desc'
>if_aue.o(.data+0x114): In function `aue_csr_write_1':
>/usr/src/sys/dev/usb/if_aue.c:325: undefined reference to
>`miibus_driver'
>if_aue.o(.data+0x118):/usr/src/sys/dev/usb/if_aue.c:325: undefined
>reference to `miibus_devclass'
>if_axe.o(.text+0x1fe): In function `axe_ifmedia_upd':
>/usr/src/sys/dev/usb/if_axe.c:296: undefined reference to
>`mii_phy_reset'
>if_axe.o(.text+0x20e):/usr/src/sys/dev/usb/if_axe.c:298: undefined
>reference to `mii_mediachg'
>if_axe.o(.text+0x239): In function `axe_ifmedia_sts':
>/usr/src/sys/dev/usb/if_axe.c:312: undefined reference to `mii_pollstat'
>if_axe.o(.text+0x6a1): In function `axe_attach':
>/usr/src/sys/dev/usb/if_axe.c:509: undefined reference to
>`mii_phy_probe'
>if_axe.o(.text+0x9ea): In function `axe_tick':
>/usr/src/sys/dev/usb/if_axe.c:739: undefined reference to `mii_tick'
>if_axe.o(.data+0x70): In function `axe_cmd':
>/usr/src/sys/dev/usb/if_axe.c:198: undefined reference to
>`miibus_readreg_desc'
>if_axe.o(.data+0x78):/usr/src/sys/dev/usb/if_axe.c:201: undefined
>reference to `miibus_writereg_desc'
>if_axe.o(.data+0x80):/usr/src/sys/dev/usb/if_axe.c:204: undefined
>reference to `miibus_statchg_desc'
>if_axe.o(.data+0xf4): In function `axe_miibus_readreg':
>/usr/src/sys/dev/usb/if_axe.c:234: undefined reference to
>`miibus_driver'
>if_axe.o(.data+0xf8):/usr/src/sys/dev/usb/if_axe.c:234: undefined
>reference to `miibus_devclass'
>if_ural.o(.text+0x3bb): In function `ural_attach':
>/usr/src/sys/dev/usb/if_ural.c:458: undefined reference to
>`ieee80211_ieee2mhz'
>if_ural.o(.text+0x3ef):/usr/src/sys/dev/usb/if_ural.c:463: undefined
>reference to `ieee80211_ieee2mhz'
>if_ural.o(.text+0x427):/usr/src/sys/dev/usb/if_ural.c:468: undefined
>reference to `ieee80211_ieee2mhz'
>if_ural.o(.text+0x4bb):/usr/src/sys/dev/usb/if_ural.c:480: undefined
>reference to `ieee80211_ieee2mhz'
>if_ural.o(.text+0x4e2):/usr/src/sys/dev/usb/if_ural.c:487: undefined
>reference to `ieee80211_ifattach'
>if_ural.o(.text+0x513):/usr/src/sys/dev/usb/if_ural.c:493: undefined
>reference to `ieee80211_media_status'
>if_ural.o(.text+0x51e):/usr/src/sys/dev/usb/if_ural.c:493: undefined
>reference to `ieee80211_media_init'
>if_ural.o(.text+0x580):/usr/src/sys/dev/usb/if_ural.c:507: undefined
>reference to `ieee80211_announce'
>if_ural.o(.text+0x628): In function `ural_detach':
>/usr/src/sys/dev/usb/if_ural.c:535: undefined reference to
>`ieee80211_ifdetach'
>if_ural.o(.text+0x73a): In function `ural_free_tx_list':
>/usr/src/sys/dev/usb/if_ural.c:595: undefined reference to
>`ieee80211_free_node'
>if_ural.o(.text+0x8da): In function `ural_media_change':
>/usr/src/sys/dev/usb/if_ural.c:673: undefined reference to
>`ieee80211_media_change'
>if_ural.o(.text+0x954): In function `ural_next_scan':
>/usr/src/sys/dev/usb/if_ural.c:699: undefined reference to
>`ieee80211_next_scan'
>if_ural.o(.text+0xabf): In function `ural_task':
>/usr/src/sys/dev/usb/if_ural.c:756: undefined reference to
>`ieee80211_beacon_alloc'
>if_ural.o(.text+0xc1f): In function `ural_txeof':
>/usr/src/sys/dev/usb/if_ural.c:826: undefined reference to
>`ieee80211_free_node'
>if_ural.o(.text+0xd45): In function `ural_rxeof':
>/usr/src/sys/dev/usb/if_ural.c:890: undefined reference to
>`ieee80211_find_rxnode'
>if_ural.o(.text+0xd5b):/usr/src/sys/dev/usb/if_ural.c:893: undefined
>reference to `ieee80211_input'
>if_ural.o(.text+0xd63):/usr/src/sys/dev/usb/if_ural.c:896: undefined
>reference to `ieee80211_free_node'
>if_ural.o(.text+0x130c): In function `ural_tx_data':
>/usr/src/sys/dev/usb/if_ural.c:1218: undefined reference to
>`ieee80211_crypto_encap'
>if_ural.o(.text+0x179c): In function `ural_start':
>/usr/src/sys/dev/usb/if_ural.c:1321: undefined reference to
>`ieee80211_find_txnode'
>if_ural.o(.text+0x17eb):/usr/src/sys/dev/usb/if_ural.c:1328: undefined
>reference to `ieee80211_encap'
>if_ural.o(.text+0x17fa):/usr/src/sys/dev/usb/if_ural.c:1330: undefined
>reference to `ieee80211_free_node'
>if_ural.o(.text+0x1833):/usr/src/sys/dev/usb/if_ural.c:1338: undefined
>reference to `ieee80211_free_node'
>if_ural.o(.text+0x18e8): In function `ural_watchdog':
>/usr/src/sys/dev/usb/if_ural.c:1370: undefined reference to
>`ieee80211_watchdog'
>if_ural.o(.text+0x19c4): In function `ural_ioctl':
>/usr/src/sys/dev/usb/if_ural.c:1417: undefined reference to
>`ieee80211_ioctl'
>if_ural.o(.text+0x1e30): In function `ural_set_chan':
>/usr/src/sys/dev/usb/if_ural.c:1606: undefined reference to
>`ieee80211_chan2ieee'
>if_rue.o(.text+0x833): In function `rue_attach':
>/usr/src/sys/dev/usb/if_rue.c:689: undefined reference to
>`mii_phy_probe'
>if_rue.o(.text+0xc8a): In function `rue_tick':
>/usr/src/sys/dev/usb/if_rue.c:970: undefined reference to `mii_tick'
>if_rue.o(.text+0xfa4): In function `rue_init':
>/usr/src/sys/dev/usb/if_rue.c:1145: undefined reference to
>`mii_mediachg'
>if_rue.o(.text+0x10f6): In function `rue_ifmedia_upd':
>/usr/src/sys/dev/usb/if_rue.c:1210: undefined reference to
>`mii_phy_reset'
>if_rue.o(.text+0x1106):/usr/src/sys/dev/usb/if_rue.c:1212: undefined
>reference to `mii_mediachg'
>if_rue.o(.text+0x1131): In function `rue_ifmedia_sts':
>/usr/src/sys/dev/usb/if_rue.c:1227: undefined reference to
>`mii_pollstat'
>if_rue.o(.data+0x50): In function `rue_read_mem':
>/usr/src/sys/dev/usb/if_rue.c:231: undefined reference to
>`miibus_readreg_desc'
>if_rue.o(.data+0x58):/usr/src/sys/dev/usb/if_rue.c:241: undefined
>reference to `miibus_writereg_desc'
>if_rue.o(.data+0x60):/usr/src/sys/dev/usb/if_rue.c:235: undefined
>reference to `miibus_statchg_desc'
>if_rue.o(.data+0xd4): In function `rue_write_mem':
>/usr/src/sys/dev/usb/if_rue.c:261: undefined reference to
>`miibus_driver'
>if_rue.o(.data+0xd8):/usr/src/sys/dev/usb/if_rue.c:261: undefined
>reference to `miibus_devclass'
>*** Error code 1
>
>Stop in /usr/obj/usr/src/sys/RELENG_6_i686.
>*** Error code 1
>
>Stop in /usr/src.
>*** Error code 1
>
>Stop in /usr/src.
>
>_______________________________________________
>freebsd-current_at_freebsd.org mailing list
>http://lists.freebsd.org/mailman/listinfo/freebsd-current
>To unsubscribe, send any mail to "freebsd-current-unsubscribe_at_freebsd.org"
>  
>
Received on Tue Nov 01 2005 - 13:04:10 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:38:46 UTC