ASMedia 106x devices

From: Thomas Jahns
Date: Mon Jun 04 2012 - 09:10:58 EST


Hello,

I found a description on how to make the following device functional in Linux at

https://bugzilla.kernel.org/show_bug.cgi?id=42804

My adapter is a USB 3.0/S-ATA 6g controller which shows up as follows
(after patching kernel 3.2.17 as distributed by Debian):

$ lspci -v
04:00.0 USB Controller: Device 1b21:1040 (prog-if 30)
Subsystem: Device 174c:2104
Flags: bus master, fast devsel, latency 0, IRQ 17
Memory at d2100000 (64-bit, non-prefetchable) [size=32K]
Capabilities: <access denied>
Kernel driver in use: xhci_hcd

05:00.0 IDE interface: Device 1b21:0611 (rev 01) (prog-if 85 [Master SecO PriO])
Subsystem: Device 1b21:1060
Flags: bus master, fast devsel, latency 0, IRQ 51
I/O ports at 5020 [size=8]
I/O ports at 5014 [size=4]
I/O ports at 5018 [size=8]
I/O ports at 5010 [size=4]
I/O ports at 5000 [size=16]
Memory at d2200000 (32-bit, non-prefetchable) [size=512]
Capabilities: <access denied>
Kernel driver in use: ahci

Therefore I wanted to ask someone to please apply the attached patch.

Like the original author, Hiroaki Nito, I've had good experience using this
patch with my card, a Delock 89299.

The patch fixes, from my incomplete understanding, the fact that the device
"lies" about its capabilities, by presenting itself as an IDE device when in
fact it's an AHCI controller.

I hope this completes the process. Which, from my investigation of the email
archive, Hiroaki Nito started, but did not follow through because the advice to
follow Documentation/SubmittingPatches was given much later.

Regards, Thomas Jahns

P.S.: I'm not subscribed to either linux-ide or linux-kernel. So, if this patch
is still insufficient to be included, please email me directly.
--
Thomas Jahns
DKRZ GmbH, Department: Application software

Deutsches Klimarechenzentrum
Bundesstraße 45a
D-20146 Hamburg

Phone: +49-40-460094-151
Fax: +49-40-460094-270
Email: Thomas Jahns <jahns@xxxxxxx>
Author: Hiroaki Nito
Signed-off-by: Thomas Jahns <jahns@xxxxxxx>
--- a/drivers/ata/ahci.c 2012-05-20 23:56:54.000000000 +0200
+++ b/drivers/ata/ahci.c 2012-05-31 14:51:01.577045033 +0200
@@ -391,6 +391,9 @@
{ PCI_VDEVICE(PROMISE, 0x3f20), board_ahci }, /* PDC42819 */

/* Asmedia */
+ { PCI_VDEVICE(ASMEDIA, 0x0601), board_ahci }, /* ASM106x */
+ { PCI_VDEVICE(ASMEDIA, 0x0602), board_ahci }, /* ASM106x */
+ { PCI_VDEVICE(ASMEDIA, 0x0611), board_ahci }, /* ASM1061 */
{ PCI_VDEVICE(ASMEDIA, 0x0612), board_ahci }, /* ASM1061 */

/* Generic, PCI class code for AHCI */

Attachment: smime.p7s
Description: S/MIME Cryptographic Signature