From: Aaron Lu <aaron.lu@intel.com>
To: Dave Hansen <dave@sr71.net>
Cc: Tejun Heo <tj@kernel.org>,
linux-ide@vger.kernel.org, LKML <linux-kernel@vger.kernel.org>,
Shane Huang <shane.huang@amd.com>
Subject: Re: SATA hotplug not detecting new disks
Date: Fri, 26 Jul 2013 09:51:54 +0800 [thread overview]
Message-ID: <51F1D63A.2010403@intel.com> (raw)
In-Reply-To: <51F1B179.4070309@sr71.net>
On 07/26/2013 07:15 AM, Dave Hansen wrote:
> I've got a relatively new system that doesn't seem to be able to hotplug
> SATA disks. I see the same behavior on 3.10, 3.11-rc2, and Ubuntu's
> 3.8.0-25-generic. The disks are detected right away on reboots, but
> even after poking the /sys/class/scsi_host/host*/scan files, new disks
> are never detected. I've disabled link power management.
>
> Am I doing something stupid here? I thought this "just worked" on my
> previous hardware.
My vague memory reminds me that not all SATA ports are hot pluggable -
you can check the port's "External SATA port" bit and "Hot Plug Capable"
bit of the PxCMD register like this:
$ grep ahci /proc/iomem
e1a40000-e1a407ff : ahci
# dd if=/dev/mem of=ahcidump bs=4096 count=1 skip=0xe1a40
You will need to change 0xe1a40 to decimal format.
Then the PxCMD is at offset 0x118 for port 0, check bit 21 for E-SATA or
bit 18 for hot pluggable bits. If any of them set to 1, this port
should be hot pluggable; otherwise, it doesn't have this capability.
>
> The motherboard is an Intel DH87RL. The SATA controller is:
>
>> 00:1f.2 SATA controller: Intel Corporation Lynx Point 6-port SATA Controller 1 [AHCI mode] (rev 04) (prog-if 01 [AHCI 1.0])
>> Subsystem: Intel Corporation Device 204a
>> Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx+
>> Status: Cap+ 66MHz+ UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
>> Latency: 0
>> Interrupt: pin B routed to IRQ 41
>> Region 0: I/O ports at f0d0 [size=8]
>> Region 1: I/O ports at f0c0 [size=4]
>> Region 2: I/O ports at f0b0 [size=8]
>> Region 3: I/O ports at f0a0 [size=4]
>> Region 4: I/O ports at f060 [size=32]
>> Region 5: Memory at f7d3a000 (32-bit, non-prefetchable) [size=2K]
>> Capabilities: [80] MSI: Enable+ Count=1/1 Maskable- 64bit-
>> Address: fee2200c Data: 4191
>> Capabilities: [70] Power Management version 3
>> Flags: PMEClk- DSI- D1- D2- AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot+,D3cold-)
>> Status: D0 NoSoftRst+ PME-Enable- DSel=0 DScale=0 PME-
>> Capabilities: [a8] SATA HBA v1.0 BAR4 Offset=00000004
>> Kernel driver in use: ahci
>
> Relevant dmesg from boot:
>
> ahci 0000:00:1f.2: version 3.0
> ahci 0000:00:1f.2: irq 41 for MSI/MSI-X
> ahci 0000:00:1f.2: AHCI 0001.0300 32 slots 5 ports 6 Gbps 0x1e impl SATA
> mode
> ahci 0000:00:1f.2: flags: 64bit ncq pm led clo pio slum part ems apst
This doesn't have sxs(support external sata) bit here, so no ports from
this host is E-SATA port. Only need to check the hot pluggable bit.
Hope this helps,
-Aaron
> ahci 0000:00:1f.2: setting latency timer to 64
> scsi0 : ahci
> scsi1 : ahci
> scsi2 : ahci
> scsi3 : ahci
> scsi4 : ahci
> ata1: DUMMY
> ata2: SATA max UDMA/133 abar m2048@0xf7d3a000 port 0xf7d3a180 irq 41
> ata3: SATA max UDMA/133 abar m2048@0xf7d3a000 port 0xf7d3a200 irq 41
> ata4: SATA max UDMA/133 abar m2048@0xf7d3a000 port 0xf7d3a280 irq 41
> ata5: SATA max UDMA/133 abar m2048@0xf7d3a000 port 0xf7d3a300 irq 41
>
next prev parent reply other threads:[~2013-07-26 1:51 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-07-25 23:15 SATA hotplug not detecting new disks Dave Hansen
2013-07-26 1:51 ` Aaron Lu [this message]
2013-07-26 17:57 ` Dave Hansen
2013-07-26 21:12 ` Dave Hansen
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=51F1D63A.2010403@intel.com \
--to=aaron.lu@intel.com \
--cc=dave@sr71.net \
--cc=linux-ide@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=shane.huang@amd.com \
--cc=tj@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.