# SATA HD drives not detected [SOLVED]

## TomWouters

Hi,

I recently installed gentoo and everything (finally) seems to be working OK. I use an old non-sata drive for boot. I also have 2 seagate 320GB Sata drives, which are not detected by gentoo. They are detected in the BIOS and they worked when running under WinXP. 

When I try fdisk /dev/sda, sdb,... it says 'unable to open sda' and when I look in /dev, there is no sda, sda,... I've tried booting with ACPI on and off and with APIC on and off, didn't work. My motherboard has an nForce 4 chipset. 

Here's my lspci:

```

00:00.0 Memory controller: nVidia Corporation CK804 Memory Controller (rev a3)

00:01.0 ISA bridge: nVidia Corporation CK804 ISA Bridge (rev a3)

00:01.1 SMBus: nVidia Corporation CK804 SMBus (rev a2)

00:02.0 USB Controller: nVidia Corporation CK804 USB Controller (rev a2)

00:02.1 USB Controller: nVidia Corporation CK804 USB Controller (rev a3)

00:06.0 IDE interface: nVidia Corporation CK804 IDE (rev f2)

00:07.0 IDE interface: nVidia Corporation CK804 Serial ATA Controller (rev f3)

00:08.0 IDE interface: nVidia Corporation CK804 Serial ATA Controller (rev f3)

00:09.0 PCI bridge: nVidia Corporation CK804 PCI Bridge (rev a2)

00:0a.0 Bridge: nVidia Corporation CK804 Ethernet Controller (rev a3)

00:0b.0 PCI bridge: nVidia Corporation CK804 PCIE Bridge (rev a3)

00:0c.0 PCI bridge: nVidia Corporation CK804 PCIE Bridge (rev a3)

00:0d.0 PCI bridge: nVidia Corporation CK804 PCIE Bridge (rev a3)

00:0e.0 PCI bridge: nVidia Corporation CK804 PCIE Bridge (rev a3)

00:18.0 Host bridge: Advanced Micro Devices [AMD] K8 [Athlon64/Opteron] HyperTransport Technology Configuration

00:18.1 Host bridge: Advanced Micro Devices [AMD] K8 [Athlon64/Opteron] Address Map

00:18.2 Host bridge: Advanced Micro Devices [AMD] K8 [Athlon64/Opteron] DRAM Controller

00:18.3 Host bridge: Advanced Micro Devices [AMD] K8 [Athlon64/Opteron] Miscellaneous Control

05:08.0 VGA compatible controller: nVidia Corporation NV11 [GeForce2 MX/MX 400](rev a1)

```

uname -a

```

Linux server 2.6.17-gentoo-r8 #4 Fri Sep 29 05:46:45 CEST 2006 x86_64 AMD Sempron(tm) Processor 2800+ GNU/Linux

```

dmesg | grep ata:

```

Bootdata ok (command line is -noapic acpi=off root=/dev/hda3 )

 BIOS-e820: 000000001fff3000 - 0000000020000000 (ACPI data)

Memory: 509336k/524224k available (2797k kernel code, 14096k reserved, 1290k data, 188k init)

libata version 1.20 loaded.

sata_nv 0000:00:07.0: version 0.8

ata1: SATA max UDMA/133 cmd 0x9F0 ctl 0xBF2 bmdma 0xD800 irq 11

ata2: SATA max UDMA/133 cmd 0x970 ctl 0xB72 bmdma 0xD808 irq 11

ata1: SATA link down (SStatus 0)

scsi0 : sata_nv

ata2: SATA link down (SStatus 0)

scsi1 : sata_nv

ata3: SATA max UDMA/133 cmd 0x9E0 ctl 0xBE2 bmdma 0xC400 irq 5

ata4: SATA max UDMA/133 cmd 0x960 ctl 0xB62 bmdma 0xC408 irq 5

ata3: SATA link up 1.5 Gbps (SStatus 113)

ata3: dev 0 cfg 49:2f00 82:346b 83:7d01 84:4023 85:3469 86:3c01 87:4023 88:407f

ata3: dev 0 ATA-7, max UDMA/133, 625142448 sectors: LBA48

ata3: qc timeout (cmd 0xef)

ata3: failed to set xfermode (err_mask=0x4)

scsi2 : sata_nv

ata4: SATA link up 1.5 Gbps (SStatus 113)

ata4: dev 0 cfg 49:2f00 82:346b 83:7d01 84:4023 85:3469 86:3c01 87:4023 88:407f

ata4: dev 0 ATA-7, max UDMA/133, 625142448 sectors: LBA48

ata4: qc timeout (cmd 0xef)

ata4: failed to set xfermode (err_mask=0x4)

scsi3 : sata_nv

EXT3-fs: mounted filesystem with ordered data mode.

```

I have been looking for this for a while now and can't seem to solve it. Any help is appreciated...

Thanks

TomLast edited by TomWouters on Fri Sep 29, 2006 10:59 pm; edited 1 time in total

----------

## mens

This may sound stupid, but did you include scsi disk support in your kernel?

----------

## lagalopex

What is your kernel-config?

```
grep "^CONFIG.*\(sata\|scsi\)" -i /usr/src/linux/.config
```

I have (for sata-hdd, usb-hdd, usb-card-reader... so less options may work for you):

```
CONFIG_BLK_DEV_IDESCSI=m

CONFIG_SCSI=y

CONFIG_SCSI_PROC_FS=y

CONFIG_SCSI_MULTI_LUN=y

CONFIG_SCSI_SATA=y

CONFIG_SCSI_SATA_NV=y
```

*so slow...*   :Laughing: 

----------

## TomWouters

I have:

```
CONFIG_SCSI=y

CONFIG_SCSI_CONSTANTS=y

CONFIG_SCSI_SPI_ATTRS=y

CONFIG_SCSI_FC_ATTRS=y

CONFIG_SCSI_SATA=y

CONFIG_SCSI_SATA_NV=y

CONFIG_SCSI_SATA_SIL=y

```

I'm checking the scsi disk support now, but I think I did include it.

----------

## TomWouters

 *mens wrote:*   

> This may sound stupid, but did you include scsi disk support in your kernel?

 

I just checked and I did include it.

----------

## lagalopex

do a 

```
dmesg | grep "ata\|scsi"
```

and show us whats in "/dev/sd*"

Your disks are detected as ata3 and ata4... both 320GB...

----------

## TomWouters

 *lagalopex wrote:*   

> do a 
> 
> ```
> dmesg | grep "ata\|scsi"
> ```
> ...

 

dmesg | grep "ata\|scsi":

```
Bootdata ok (command line is -noapic acpi=off root=/dev/hda3 )

 BIOS-e820: 000000001fff3000 - 0000000020000000 (ACPI data)

Memory: 509336k/524224k available (2797k kernel code, 14096k reserved, 1290k data, 188k init)

libata version 1.20 loaded.

sata_nv 0000:00:07.0: version 0.8

ata1: SATA max UDMA/133 cmd 0x9F0 ctl 0xBF2 bmdma 0xD800 irq 11

ata2: SATA max UDMA/133 cmd 0x970 ctl 0xB72 bmdma 0xD808 irq 11

ata1: SATA link down (SStatus 0)

scsi0 : sata_nv

ata2: SATA link down (SStatus 0)

scsi1 : sata_nv

ata3: SATA max UDMA/133 cmd 0x9E0 ctl 0xBE2 bmdma 0xC400 irq 5

ata4: SATA max UDMA/133 cmd 0x960 ctl 0xB62 bmdma 0xC408 irq 5

ata3: SATA link up 1.5 Gbps (SStatus 113)

ata3: dev 0 cfg 49:2f00 82:346b 83:7d01 84:4023 85:3469 86:3c01 87:4023 88:407f

ata3: dev 0 ATA-7, max UDMA/133, 625142448 sectors: LBA48

ata3: qc timeout (cmd 0xef)

ata3: failed to set xfermode (err_mask=0x4)

scsi2 : sata_nv

ata4: SATA link up 1.5 Gbps (SStatus 113)

ata4: dev 0 cfg 49:2f00 82:346b 83:7d01 84:4023 85:3469 86:3c01 87:4023 88:407f

ata4: dev 0 ATA-7, max UDMA/133, 625142448 sectors: LBA48

ata4: qc timeout (cmd 0xef)

ata4: failed to set xfermode (err_mask=0x4)

scsi3 : sata_nv

EXT3-fs: mounted filesystem with ordered data mode.

```

there is no /dev/sd*. 

Thanks,

Tom

----------

## lagalopex

Try "noapic" kernel option.

Enable the pci-dma -> nvidia/amd

(Disable sata_sil, if possible)

Perhaps one is working... just few ideas   :Confused: 

As you can see in my sig, i also have a nforce4 board with sata-hdd... though its the boot-hdd... but its working fine

----------

## TomWouters

 *lagalopex wrote:*   

> Try "noapic" kernel option.
> 
> Enable the pci-dma -> nvidia/amd
> 
> (Disable sata_sil, if possible)
> ...

 

the noapic option was already in there and the pci-dma was enabled. I disabled the sil sata support, rebooting now...

----------

## TomWouters

Nope, still the same....

Tom

----------

## TomWouters

Well, I just added the 'irqpoll' option in the bootloader and I'm now able to see the SATA drives. Don't have a clue what this irqpoll thing does and what the consequences on the rest of the system are...

Greetz

Tom

----------

## lagalopex

 *Documentation/kernel-parameters.txt wrote:*   

> irqpoll [HW]
> 
> When an interrupt is not handled search all handlers
> 
> for it. Also check all handlers each timer
> ...

 

Try a bios-update, disable unneeded sata-ports, try to assign a (nearly) free irq to the used sata-ports

```
$ cat /proc/interrupts

           CPU0

  0:  203463230    IO-APIC-edge  timer

  7:          1    IO-APIC-edge  parport0

  8:          0    IO-APIC-edge  rtc

  9:          0   IO-APIC-level  acpi

 14:     571621    IO-APIC-edge  ide0

 15:        294    IO-APIC-edge  ide1

 16:    6934438   IO-APIC-level  libata, ehci_hcd:usb2

 17:  107204318   IO-APIC-level  eth0

 18:   63819826   IO-APIC-level  nvidia

 19:   14919887   IO-APIC-level  NVidia CK804

 20:   25947246   IO-APIC-level  ohci_hcd:usb1

 21:   70960866   IO-APIC-level  Technisat/B2C2 FlexCop II/IIb/III Digital TV PCI Driver

 22:       2271   IO-APIC-level  eth1

NMI:     374440

LOC:  203476799

ERR:          0

MIS:          0
```

----------

