Re: ada,ata and cd?

From: Anton Shterenlikht <mexas_at_bristol.ac.uk>
Date: Tue, 10 Jul 2012 22:41:38 +0100
On Mon, Jul 09, 2012 at 05:14:01PM -0700, Garrett Cooper wrote:
> On Mon, Jul 9, 2012 at 4:38 PM, Steve Kargl
> <sgk_at_troutmask.apl.washington.edu> wrote:
> > On Mon, Jul 09, 2012 at 11:52:10PM +0100, Anton Shterenlikht wrote:
> >> I'm on amd64 r238259.
> >>
> >> I'm still not clear on the /usr/src/UPDATING
> >> entry from 20110424 on replacing the ATA
> >> drivers by CAM drivers.
> >>
> >> If I *do not* have device ata in the kernel,
> >> I have neither /dev/cd* or /dev/acd*,
> >> even though I have in the kernel:
> >>
> >> options ATA_CAM         # Handle legacy controllers with CAM
> >> options ATA_STATIC_ID   # Static device numbering
> >> device  ada
> >> device  cd              # CD
> >>
> >
> > man 4 cam
> >
> > I suspect that you are missing 'device scbus' in
> > your config file.
> 
> device          scbus           # SCSI bus (required for ATA/SCSI)
> 
> Probably. And as the fine print says...
> 
>         Note that to use CAM-based ATA kernel should include CAM devices
>         scbus, pass, da (or explicitly ada), cd and optionally others.

I do have all this in the kernel, see below.
Still if I don't have device ata, I get no cd:

# ls /dev
acpi            console         kbd0            stdin           ttyve
ad4             consolectl      klog            stdout          ttyvf
ad4s1           ctty            kmem            sysmouse        ugen0.1
ad4s1a          devctl          log             ttyv0           ugen0.2
ad4s1b          devstat         mdctl           ttyv1           ugen1.1
ada0            dumpdev         mem             ttyv2           ugen2.1
ada0s1          fd              midistat        ttyv3           ugen3.1
ada0s1a         fido            mixer0          ttyv4           ugen4.1
ada0s1b         geom.ctl        null            ttyv5           ugen5.1
apm             io              pass0           ttyv6           urandom
apmctl          ipauth          pccard0.cis     ttyv7           usb
atkbd0          ipl             pci             ttyv8           usbctl
audit           iplookup        psm0            ttyv9           xpt0
bpf             ipnat           ptmx            ttyva           zero
bpf0            ipscan          random          ttyvb
bpsm0           ipstate         sndstat         ttyvc
cam             ipsync          stderr          ttyvd
#

Here's the kernel config file:

cpu	HAMMER
ident	BUZI

makeoptions	DEBUG=-g		# Build kernel with gdb(1) debug symbols
makeoptions	MODULES_OVERRIDE=

options	ATA_CAM		# Handle legacy controllers with CAM
options	ATA_STATIC_ID	# Static device numbering
options	AUDIT			# Security event auditing
options CAPABILITIES		# Capsicum capabilities
options CAPABILITY_MODE		# Capsicum capability mode
options	CD9660			# ISO 9660 Filesystem
options	COMPAT_FREEBSD32	# Compatible with i386 binaries
options	COMPAT_FREEBSD7		# Compatible with FreeBSD7
options	COMPAT_LINUX32
options DDB			# Support DDB.
options DEADLKRES		# Enable the deadlock resolver
options	FFS			# Berkeley Fast Filesystem
options GDB			# Support remote GDB.
options	GEOM_LABEL		# Provides labelization
options	GEOM_PART_GPT		# GUID Partition Tables.
options	HWPMC_HOOKS		# Necessary kernel hooks for hwpmc(4)
options	IEEE80211_AMPDU_AGE	# age frames in AMPDU reorder q's
options	IEEE80211_DEBUG		# enable debug msgs
options	IEEE80211_SUPPORT_MESH	# enable 802.11s draft support
options	INCLUDE_CONFIG_FILE     # Include this file in kernel
options	INET			# InterNETworking
options	INET6			# IPv6 communications protocols
options INVARIANTS		# Enable calls of extra sanity checking
options INVARIANT_SUPPORT	# Extra sanity checks of internal structures, required by INVARIANTS
options	IPFILTER
options	IPFILTER_DEFAULT_BLOCK
options	IPFILTER_LOG
options	KBD_INSTALL_CDEV	# install a CDEV entry in /dev
options	KDB	# Enable kernel debugger support. Always need this
#options	KDB_TRACE		# Print a stack trace for a panic.
#options	KDTRACE_FRAME		# Ensure frames are compiled in
#options	KDTRACE_HOOKS		# Kernel DTrace hooks
options	KTRACE			# ktrace(1) support
options	MAC			# TrustedBSD MAC Framework
options	MALLOC_DEBUG_MAXZONES=8	# Separate malloc(9) zones
options	MD_ROOT			# MD is a potential root device
options	MSDOSFS			# MSDOS Filesystem
options	PREEMPTION		# Enable kernel thread preemption
options	PRINTF_BUFR_SIZE=128	# Prevent printf output being interspersed.
options	PROCFS			# Process filesystem (requires PSEUDOFS)
options	PSEUDOFS		# Pseudo-filesystem framework
options	SC_PIXEL_MODE		# add support for the raster text mode
options	SCHED_ULE		# ULE scheduler
options	SCTP			# Stream Control Transmission Protocol
options	SMP			# Symmetric MultiProcessor Kernel
options	SOFTUPDATES		# Enable FFS soft updates support
options	STACK			# stack(9) support
options	SYSVSHM			# SYSV-style shared memory
options	SYSVMSG			# SYSV-style message queues
options	SYSVSEM			# SYSV-style semaphores
options	UFS_ACL			# Support for access control lists
options	UFS_DIRHASH		# Improve performance on big directories
options	UFS_GJOURNAL		# Enable gjournal-based UFS journaling
options	USB_DEBUG		# enable debug msgs
options	WITNESS			# Enable checks to detect deadlocks and cycles
options	WITNESS_SKIPSPIN	# Don't run witness on spinlocks for speed
options	_KPOSIX_PRIORITY_SCHEDULING # POSIX P1003_1B real-time extensions

device	acpi
device	ada
device	ahci		# AHCI-compatible SATA controllers
#device	ata		# Legacy ATA/SATA controllers
device	atkbd		# AT keyboard
device	atkbdc		# AT keyboard controller
device	bge		# Broadcom BCM570xx Gigabit Ethernet
device	bpf		# Berkeley packet filter
device	bwn		# Broadcom BCM43xx wireless NICs.
device	cardbus		# CardBus (32-bit) bus
device	cbb		# cardbus (yenta) bridge
device	cd		# CD
device	cpufreq
device	ctl		# CAM Target Layer
device	da		# Direct Access (disks)
device	ehci		# EHCI PCI->USB interface (USB 2.0)
device	ether		# Ethernet support
device	faith		# IPv6-to-IPv4 relaying (translation)
device	firmware	# firmware assist module
device	gif		# IPv6 and IPv4 tunneling
device	loop		# Network loopback
device	md		# Memory "disks"
device	miibus		# MII bus support
device	ohci		# OHCI PCI->USB interface
device	pass		# Passthrough device (direct ATA/SCSI access)
device	pccard		# PC Card (16-bit) bus
device	pci
device	psm		# PS/2 mouse
device	pty		# BSD-style compatibility pseudo ttys
device	random		# Entropy device
device	sc # syscons is the default console driver, resembling an SCO console
device	scbus		# SCSI bus (required for ATA/SCSI)
device	siba_bwn	# required by bwn(4)
device	sound		# Generic sound driver (required)
device	snd_hda		# Intel High Definition Audio
device	tun		# Packet tunnel.
device	uhci		# UHCI PCI->USB interface
device	ukbd		# Keyboard
device	umass		# Disks/Mass storage - Requires scbus and da
device	ums		# Mouse
device	usb		# USB Bus (required)
device	vga		# VGA video card driver
device	vlan		# 802.1Q VLAN support
device	wlan		# 802.11 support
device	wlan_amrr	# AMRR transmit rate control algorithm
device	wlan_ccmp	# 802.11 CCMP support
device	wlan_tkip	# 802.11 TKIP support
device	wlan_wep	# 802.11 WEP support
device	xhci		# XHCI PCI->USB interface (USB 3.0)

I must be missing something else.

Many thanks

-- 
Anton Shterenlikht
Room 2.6, Queen's Building
Mech Eng Dept
Bristol University
University Walk, Bristol BS8 1TR, UK
Tel: +44 (0)117 331 5944
Fax: +44 (0)117 929 4423
Received on Tue Jul 10 2012 - 20:08:52 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:40:28 UTC