8.3-PRERELEASE and ATA_CAM

Marius Strobl marius at alchemy.franken.de
Fri Apr 6 17:17:08 UTC 2012


On Fri, Apr 06, 2012 at 10:48:13AM +0300, Daniel Braniss wrote:
> with the latest svn, I can't compile kernel with  options ATA_CAM:
> 
> ...
> linking kernel.debug
> ata-disk.o(.text+0x93): In function `ad_init':
> /r+d/stable/8.3/sys/dev/ata/ata-disk.c:389: undefined reference to 
> `ata_setmode'
> ata-disk.o(.text+0xaa):/r+d/stable/8.3/sys/dev/ata/ata-disk.c:397: undefined 
> reference to `ata_wc'
> ata-disk.o(.text+0xc5):/r+d/stable/8.3/sys/dev/ata/ata-disk.c:398: undefined 
> reference to `ata_controlcmd'
> ata-disk.o(.text+0x113):/r+d/stable/8.3/sys/dev/ata/ata-disk.c:400: undefined 
> reference to `ata_controlcmd'
> ata-disk.o(.text+0x133):/r+d/stable/8.3/sys/dev/ata/ata-disk.c:393: undefined 
> reference to `ata_controlcmd'
> ata-disk.o(.text+0x16d):/r+d/stable/8.3/sys/dev/ata/ata-disk.c:407: undefined 
> reference to `ata_controlcmd'
> ata-disk.o(.text+0x21a): In function `ad_shutdown':
> /r+d/stable/8.3/sys/dev/ata/ata-disk.c:196: undefined reference to 
> `ata_controlcmd'
> ata-disk.o(.text+0x45c): In function `ad_detach':
> /r+d/stable/8.3/sys/dev/ata/ata-disk.c:182: undefined reference to 
> `ata_fail_requests'
> ...
> 

You seem to be using a mutually exclusive set of ata(4) options and
devices (previously, this erroneously wasn't a bug). When including
options ATA_CAM you do _not_ want to also include any of the following
devices:
device		atapicam
device		atadisk
device		ataraid
device		atapicd
device		atapifd
device		atapist

Instead you need the corresponding driver from the following set:
device		scbus
device		ch
device		da
device		sa
device		cd
device		pass

Marius



More information about the freebsd-stable mailing list