View Single Post
  #3   (View Single Post)  
Old 17th September 2010
Pjoter's Avatar
Pjoter Pjoter is offline
Shell Scout
 
Join Date: Sep 2008
Posts: 92
Default

Hello,

NetBSD does support modules but not everything is available/build as module contrary to FreeBSD- you have to compile your own kernel. I attach my config of NetBSD kernel I used up to version 5.99.24 if I remember. Config was for T61 Thinkpad.

The kernel driver for thinkpad support:

Code:
thinkpad*	at acpi? # IBM/Lenovo Thinkpad hotkeys
Synaptics works:

Code:
options 	PMS_SYNAPTICS_TOUCHPAD	# Enable support for Synaptics Touchpads
Fan I don't know- I didn't really want to set the speed- on T61 fan was quite quiet.

The motion sensor is available:

Code:
aps0 at isa? port 0x1600
Please also read here about aps: http://netbsd.gw.com/cgi-bin/man-cgi?aps+4+NetBSD-5.0

If I could tell you something about NetBSD support for Thinkapd is that almost all is supported well: function keys, audio keys, docking station, audio card, wireless (only intel3945 gave some problems), sd card reader, suspend/resume works but not in every case (bluetooth devices, aps, usb audio devices and built in sd card reader disallow suspend- perhaps something changed in the most current branch).

Apart that I have never had any other problems with NetBSD.

Code:
include 	"arch/i386/conf/std.i386"
options 	INCLUDE_CONFIG_FILE	# embed config file in kernel binary
ident 		"Guusje"
maxusers	32		# estimated number of users
options 	VM86		# virtual 8086 emulation
options 	USER_LDT	# user-settable LDT; used by WINE
options 	ENHANCED_SPEEDSTEP
options 	EST_FREQ_USERWRITE	# any user can set frequency
options 	INTEL_ONDEMAND_CLOCKMOD
options 	MTRR		# memory-type range register syscall support
options 	PERFCTRS	# performance-monitoring counters support
options 	MULTIBOOT	# Multiboot support (see multiboot(8))
options 	INSECURE	# disable kernel security levels - X needs this
options 	RTC_OFFSET=0	# hardware clock is this many mins. west of GMT
options 	NTP		# NTP phase/frequency locked loop
options 	APM_NO_IDLE	# needed for SMP
options 	KTRACE		# system call tracing via ktrace(1)
options 	SYSVMSG		# System V-like message queues
options 	SYSVSEM		# System V-like semaphores
options 	SEMMNI=10	# number of semaphore identifiers
options 	SEMMNS=60	# number of semaphores in system
options 	SEMUME=10	# max number of undo entries per process
options 	SEMMNU=30	# number of undo structures in system
options 	SYSVSHM		# System V-like memory sharing
options 	SHMMAXPGS=2048	# 2048 pages is the default
options 	P1003_1B_SEMAPHORE	# p1003.1b semaphore support
options 	MODULAR		# new modules framework
options 	USERCONF	# userconf(4) support
options 	SYSCTL_INCLUDE_DESCR	# Include sysctl descriptions in kernel
options 	BUFQ_READPRIO
options 	BUFQ_PRIOCSCAN
options 	COMPAT_NOMID	# NetBSD 0.8, 386BSD, and BSDI
options		COMPAT_43
options 	COMPAT_LINUX	# binary compatibility with Linux
options 	COMPAT_BSDPTY	# /dev/[pt]ty?? ptys.
options 	X86EMU		# 386 Real Mode emulator
file-system 	FFS		# UFS
file-system 	EXT2FS		# second extended file system (linux)
file-system 	MFS		# memory file system
file-system 	CD9660		# ISO 9660 + Rock Ridge file system
file-system 	MSDOSFS		# MS-DOS file system
file-system 	NFS		# Network File System client
file-system 	KERNFS		# /kern
file-system 	NULLFS		# loopback file system
file-system 	PROCFS		# /proc
file-system 	SYSVBFS		# System V boot file system
file-system 	PTYFS		# /dev/ptm support
file-system 	TMPFS		# Efficient memory file-system
file-system 	PUFFS		# experimental - Userspace file system support
options 	WAPBL		# File system journaling support - Experimental
options 	NFSSERVER	# Network File System server
options 	GATEWAY		# packet forwarding
options 	INET		# IP + ICMP + TCP + UDP
options 	INET6		# IPV6
options 	PPP_BSDCOMP	# BSD-Compress compression support for PPP
options 	PPP_DEFLATE	# Deflate compression support for PPP
options 	PPP_FILTER	# Active filter support for PPP (requires bpf)
options 	PFIL_HOOKS	# pfil(9) packet filter hooks
options 	IPFILTER_LOG	# ipmon(8) log support
options 	IPFILTER_LOOKUP	# ippool(8) support
options 	ACPIVERBOSE	# verbose ACPI device autoconfig messages
options 	MIIVERBOSE	# verbose PHY autoconfig messages
options 	PCIVERBOSE	# verbose PCI device autoconfig messages
options 	PCMCIAVERBOSE	# verbose PCMCIA configuration messages
options 	SCSIVERBOSE	# human readable SCSI error messages
options 	USBVERBOSE	# verbose USB device autoconfig messages
options		I2C_SCAN	# Scan i2c bus for responses
options 	WSEMUL_VT100		# VT100 / VT220 emulation
options 	WSDISPLAY_CUSTOM_OUTPUT	# color customization from wsconsctl(8)
options 	WS_DEFAULT_FG=WSCOL_WHITE
options 	WS_DEFAULT_BG=WSCOL_BLACK
options 	WS_DEFAULT_COLATTR="(0)"
options 	WS_DEFAULT_MONOATTR="(0)"
options 	WS_KERNEL_FG=WSCOL_GREEN
options 	WS_KERNEL_BG=WSCOL_BLACK
options 	WS_KERNEL_COLATTR="(0)"
options 	WS_KERNEL_MONOATTR="(0)"
options 	WSDISPLAY_CUSTOM_BORDER	# custom border colors via wsconsctl(8)
options 	WSDISPLAY_BORDER_COLOR=WSCOL_BLUE	# default color
options 	WSDISPLAY_COMPAT_PCVT		# emulate some ioctls
options 	WSDISPLAY_COMPAT_SYSCONS	# emulate some ioctls
options 	WSDISPLAY_COMPAT_USL		# VT handling
options 	WSDISPLAY_COMPAT_RAWKBD		# can get raw scancodes
options 	PCKBD_CNATTACH_MAY_FAIL
options 	WSDISPLAY_DEFAULTSCREENS=4
options 	VGA_CONSOLE_SCREENTYPE="\"80x24\""
options 	VGA_POST
options 	WSDISPLAY_SCROLLSUPPORT
#options 	VGA_RASTERCONSOLE
config		netbsd	root on ? type ?
apm0	at mainbus0			# Advanced power management
options 	APM_POWER_PRINT		# Print stats on the console
options 	APM_DISABLE_INTERRUPTS=0 # Don't disable interrupts
options 	MPBIOS_SCANPCI	# find PCI roots using MPBIOS
options 	ACPI_SCANPCI	# find PCI roots using ACPI
ipmi0		at mainbus?
acpi0 		at mainbus0
options 	ACPI_ACTIVATE_DEV	# If set, activate inactive devices
options 	ACPICA_PEDANTIC		# force strict conformance to the Spec.
apm*		at acpi?
acpiacad* 	at acpi?		# ACPI AC Adapter
acpibat* 	at acpi?		# ACPI Battery
acpibut* 	at acpi?		# ACPI Button
acpiec* 	at acpi?		# ACPI Embedded Controller (late binding)
acpiecdt* 	at acpi?		# ACPI Embedded Controller (early binding)
acpilid* 	at acpi?		# ACPI Lid Switch
acpitz* 	at acpi?		# ACPI Thermal Zone
acpidalb*	at acpi?
acpiwmi*	at acpi?
attimer*	at acpi?		# AT Timer
hpet* 		at acpi?		# High Precision Event Timer
npx*		at acpi?		# Math coprocessor
pckbc*  	at acpi?		# PC keyboard controller
thinkpad*	at acpi?		# IBM/Lenovo Thinkpad hotkeys
wb*		at acpi?
sdmmc*		at wb?
pci*	at mainbus? bus ?
pci*	at pchb? bus ?
options 	PCIBIOS			# PCI BIOS support
options 	PCIBIOSVERBOSE		# PCI BIOS verbose info
options 	PCIBIOS_IRQS_HINT=0x0a00 # PCI interrupts hint. IRQ 9 or 11
options 	PCIBIOS_INTR_GUESS	# see pcibios(4)
options 	PCI_ADDR_FIXUP		# fixup PCI I/O addresses
options 	PCI_BUS_FIXUP		# fixup PCI bus numbering
options 	PCI_INTR_FIXUP		# fixup PCI interrupt routing
ichlpcib* at pci? dev ? function ?	# Intel ICH PCI-ISA w/ watchdog and
hpet0 		at ichlpcib?		# High Precision Event Timer
pchb*	at pci? dev ? function ?	# PCI-Host bridges
pcib*	at pci? dev ? function ?	# PCI-ISA bridges
ppb*	at pci? dev ? function ?	# PCI-PCI bridges
agp* 	at pchb?
isa0	at ichlpcib?
cbb*		at pci? dev ? function ?
cardslot*	at cbb?
cardbus*	at cardslot?
pcmcia* 	at cardslot?
pckbd*		at pckbc?		# PC keyboard
pms*		at pckbc?		# PS/2 mouse for wsmouse
options 	PMS_SYNAPTICS_TOUCHPAD	# Enable support for Synaptics Touchpads
#vga*		at pci? dev ? function ?
#wsdisplay*	at vga? console ?
wskbd*		at pckbd? console ?
wsmouse*	at pms? mux 0
#i915drm*	at vga?		# Intel i915, i945 DRM driver
genfb*		at pci?	dev ? function ?
wsdisplay*	at genfb? console ?
i915drm*	at genfb?
options 	INTEL_CORETEMP
ichsmb*	at pci? dev ? function ?
iic*	at ichsmb?
scsibus* at scsi?
sd*	at scsibus? target ? lun ?	# SCSI disk drives
uk*	at scsibus? target ? lun ?	# SCSI unknown
piixide* 	at pci? dev ? function ?	# Intel IDE controllers
atabus* at ata?
atapibus* at atapi?
wd*     at atabus? drive ? flags 0x0000
cd*	at atapibus? drive ? flags 0x0000	# ATAPI CD-ROM drives
sd*	at atapibus? drive ? flags 0x0000	# ATAPI disk drives
uk*	at atapibus? drive ? flags 0x0000	# ATAPI unknown
wm*	at pci? dev ? function ?	# Intel 8254x gigabit
wpi*	at pci? dev ? function ?	# Intel PRO/Wireless 3945ABG
igphy*	at mii? phy ?			# Intel IGP01E1000
ukphy*	at mii? phy ?			# generic unknown PHYs
ehci*	at pci?	dev ? function ?	# Enhanced Host Controller
uhci*	at pci?	dev ? function ?	# Universal Host Controller (Intel)
usb*	at ehci?
usb*	at uhci?
uhub*	at usb?
uhub*	at uhub? port ?
uhidev*	at uhub? port ? configuration ? interface ?
ums*	at uhidev? reportid ?
wsmouse* at ums? mux 0
ukbd*	at uhidev? reportid ?
wskbd*	at ukbd? console ? mux 1
uhid*	at uhidev? reportid ?
ulpt*	at uhub? port ? configuration ? interface ?
umass*	at uhub? port ? configuration ? interface ?
wd*	at umass?
uaudio*	at uhub? port ? configuration ?
ugen*	at uhub? port ?
options	UGEN_BULK_RA_WB
fwohci*	at pci? dev ? function ?	# IEEE1394 Open Host Controller
fwohci*	at cardbus? function ?	# IEEE1394 Open Host Controller
ieee1394if* at fwohci?
fwip*	at ieee1394if?			# IP over IEEE1394
sbp*	at ieee1394if? euihi ? euilo ?	# SCSI over IEEE1394
sdhc*	at pci?
sdmmc*	at sdhc?
ld*	at sdmmc?
hdaudio*	at pci? dev ? function ?
hdafg*		at hdaudiobus?
audio*	at audiobus?
uvideo* at uhub?		# USB Video Class capture devices
video* at videobus?
ubt* at uhub? port ?
bthub* at bcsp?
bthub* at btuart?
bthub* at ubt?
bthub*	at sbt?
bthidev* at bthub?
btms* at bthidev? reportid ?
wsmouse* at btms? mux 0
btkbd* at bthidev? reportid ?
wskbd* at btkbd? console ? mux 1
sbt*	at sdmmc?
pseudo-device 	crypto		# /dev/crypto device
pseudo-device	swcrypto	# software crypto implementation
pseudo-device	ccd		4	# concatenated/striped disk devices
pseudo-device	cgd		4	# cryptographic disk devices
pseudo-device	fss		4	# file system snapshot device
pseudo-device	md		1	# memory disk device (ramdisk)
options         MEMORY_DISK_HOOKS       # enable root ramdisk
options         MEMORY_DISK_DYNAMIC     # loaded via kernel module
pseudo-device	vnd			# disk-like interface to files
options 	VND_COMPRESSION		# compressed vnd(4)
pseudo-device	bpfilter		# Berkeley packet filter
pseudo-device	ipfilter		# IP filter (firewall) and NAT
pseudo-device	loop			# network loopback
pseudo-device	ppp			# Point-to-Point Protocol
pseudo-device	pppoe			# PPP over Ethernet (RFC 2516)
pseudo-device	tap			# virtual Ethernet
pseudo-device	bridge			# simple inter-network bridging
options 	BRIDGE_IPF		# bridge uses IP/IPv6 pfil hooks too
pseudo-device	pf			# PF packet filter
pseudo-device	pflog			# PF log if
pseudo-device	pty			# pseudo-terminals
pseudo-device	rnd			# /dev/random and in-kernel generator
pseudo-device	clockctl		# user control of clock subsystem
pseudo-device	ksyms			# /dev/ksyms
pseudo-device	bcsp			# BlueCore Serial Protocol
pseudo-device	btuart			# Bluetooth HCI UART (H4)
pseudo-device	wsmux			# mouse & keyboard multiplexor
pseudo-device	wsfont
options 	FILEASSOC		# fileassoc(9) - required for Veriexec
pseudo-device	veriexec
pseudo-device	drvctl
pseudo-device	swwdog
pseudo-device	cmos
pseudo-device	putter
pseudo-device	pud
pseudo-device	pad
options VERIFIED_EXEC_FP_RMD160
options VERIFIED_EXEC_FP_SHA256
options VERIFIED_EXEC_FP_SHA384
options VERIFIED_EXEC_FP_SHA512
options VERIFIED_EXEC_FP_SHA1
options VERIFIED_EXEC_FP_MD5
options PAX_MPROTECT=0			# PaX mprotect(2) restrictions
options PAX_SEGVGUARD=0			# PaX Segmentation fault guard
options PAX_ASLR=0			# PaX Address Space Layout Randomization
Goodluck !

Pjoter
Reply With Quote