Bug report for ahci-mvebu driver

Dinu Marius
2022-11-01T19:53:22Z

Hello.

I'm contacting you because your email is listed in www.kernel.org/doc/linux/MAINTAINERS
I encountered a problem with the ahci-mvebu driver. I think it's a bug.

Hardware:
Areca ARC-5040 RAID enclosure (DAS), eSATA port, 8 SATA drive bays with 1x 500GB HDD stand-alone and 7x 2TB HDDs in RAID5.
Linksys WRT-1900ACS v2 router, Marvell Armada 385 (88F6820), one eSATAp using ahci-mvebu driver with port-multiplier support.
The router runs OpenWrt with kernel version 5.15.

Problem encountered:
Areca DAS is not detected properly. When I connect it, I get these repeating errors in kernel log:

[--- from boot log ---]
<4>[ 1.490840] ahci-mvebu f10a8000.sata: supply ahci not found, using dummy regulator
<4>[ 1.498512] ahci-mvebu f10a8000.sata: supply phy not found, using dummy regulator
<4>[ 1.506053] ahci-mvebu f10a8000.sata: supply target not found, using dummy regulator
<6>[ 1.513896] ahci-mvebu f10a8000.sata: AHCI 0001.0000 32 slots 2 ports 6 Gbps 0x3 impl platform mode
<6>[ 1.522994] ahci-mvebu f10a8000.sata: flags: 64bit ncq sntf led only pmp fbs pio slum part sxs
<6>[ 1.532212] scsi host0: ahci-mvebu
<6>[ 1.535848] scsi host1: ahci-mvebu
<6>[ 1.539353] ata1: SATA max UDMA/133 mmio [mem 0xf10a8000-0xf10a9fff] port 0x100 irq 49
<6>[ 1.547313] ata2: SATA max UDMA/133 mmio [mem 0xf10a8000-0xf10a9fff] port 0x180 irq 49

[--- Areca connected ---]
<6>[ 742.795979] ata2: SATA link down (SStatus 100 SControl 300)
<3>[ 745.465974] ata2: COMRESET failed (errno=-32)
<4>[ 745.470361] ata2: reset failed (errno=-32), retrying in 8 secs
<3>[ 755.365973] ata2: COMRESET failed (errno=-32)
<4>[ 755.370361] ata2: reset failed (errno=-32), retrying in 8 secs
<6>[ 764.655979] ata2: SATA link down (SStatus 100 SControl 300)
<6>[ 766.045984] ata2: SATA link down (SStatus 101 SControl 300)
<6>[ 767.576004] ata2: SATA link down (SStatus 100 SControl 300)
<6>[ 768.325978] ata2: SATA link down (SStatus 100 SControl 300)
<3>[ 770.865973] ata2: COMRESET failed (errno=-32)
<4>[ 770.870360] ata2: reset failed (errno=-32), retrying in 8 secs
<6>[ 779.515985] ata2: SATA link down (SStatus 101 SControl 300)
<6>[ 780.275979] ata2: SATA link down (SStatus 100 SControl 300)

The same errors appear if I leave it connected during reboot.
I tried to limit SATA speed to 150 and to disable NCQ from Areca admin interface. It didn't work.
I found no way of making it work.

The same router works perfectly when I connect a laptop HDD.
The same DAS, including the same eSATA cable, works perfectly when connected to an older
Linksys WRT-1900AC v1 with Marvell Armada XP (MV78230), using sata-mv driver.
This is the kernel log from the older router:

[--- from boot log ---]
<7>[ 1.612541] sata_mv f10a0000.sata: version 1.28
<6>[ 1.612652] sata_mv f10a0000.sata: slots 32 ports 1
<6>[ 1.618121] scsi host0: sata_mv
<6>[ 1.621486] ata1: SATA max UDMA/133 irq 36

[--- Areca connected ---]
<6>[88761.966331] ata1: SATA link up 3.0 Gbps (SStatus 123 SControl F300)
<6>[88761.975472] ata1.15: Port Multiplier 1.2, 0x197b:0x0325 r193, 8 ports, feat 0xf/0x1f
<6>[88764.670933] ata1.00: ATA-6: WDC WD50ARC-5040-VOL#01, 0100 AX, max UDMA/133
<6>[88764.677860] ata1.00: 976773168 sectors, multi 0: LBA48
<6>[88764.683599] ata1.00: configured for UDMA/133
<6>[88764.688391] ata1.01: ATA-6: Areca Archive, 0100 AX, max UDMA/133
<6>[88764.694596] ata1.01: 23437498368 sectors, multi 0: LBA48
<6>[88764.700779] ata1.01: configured for UDMA/133
<5>[88764.705557] scsi 0:0:0:0: Direct-Access ATA WDC WD50ARC-5040 n/a PQ: 0 ANSI: 5
<5>[88764.714802] sd 0:0:0:0: [sda] 976773168 512-byte logical blocks: (500 GB/466 GiB)
<5>[88764.722521] sd 0:0:0:0: [sda] Write Protect is off
<7>[88764.727558] sd 0:0:0:0: [sda] Mode Sense: 00 3a 00 00
<5>[88764.727915] scsi 0:1:0:0: Direct-Access ATA Areca Archive n/a PQ: 0 ANSI: 5
<5>[88764.728706] sd 0:0:0:0: [sda] Write cache: enabled, read cache: enabled, doesn't support DPO or FUA
<5>[88764.745574] sd 0:1:0:0: [sdb] 23437498368 512-byte logical blocks: (12.0 TB/10.9 TiB)
<5>[88764.753819] sd 0:1:0:0: [sdb] Write Protect is off
<7>[88764.758886] sd 0:1:0:0: [sdb] Mode Sense: 00 3a 00 00
<5>[88764.759101] sd 0:1:0:0: [sdb] Write cache: enabled, read cache: enabled, doesn't support DPO or FUA
<5>[88764.760537] sd 0:0:0:0: [sda] Attached SCSI disk
<5>[88764.772600] sd 0:1:0:0: [sdb] Attached SCSI disk

I'm not currently using the new router, so it's available for tests.
Thanks.
Marius Dinu