Team,
- Here are some errors seen when using the SATA linux drivers on the DM8148 EVM. The post will be updated with the DVSDK version soon.
- In the mean time here is a description of the problem (in blue).
Thanks and best regardas,
Anthony
Experiencing some difficulties with utilizing the SATA hard disk functionality. When a drive is connected, the OS successfully identifies and mounts the drives partition. I am able to navigate through directories on the drive and execute applications off it. One of the tests I am running creates a file at a target location, writes data to it for 10 seconds and then reads it back.
When running this test on the hard disk, I get numerous warning/error messages reported over the terminal connection (many related to interface errors and the command queue). The partition is often un-mounted by the OS during this test, causing it to fail. If it is not un-mounted, the data throughput is sporadically very poor (measured in 100s of kilobytes a second rather than megabytes a second). The test application executes successfully on an attached USB pen drive on the same platform.
As far as I can tell, the SATA connector is a 1.5Gbps interface, so I attempted the same test after configuring a jumper of the hard disk to force 1.5Gbps (rather than 3) and experienced the same results. I have performed the test on the following drives:
· Samsung HD103UJ (1TB, 7200RPM, 8MB Cache, SATAII)
· Samsung HD161HJ (160GB, 7200RPM, 32 MB Cache, SATAII)
· Samsung HD161HJ (160GB, 7200RPM, 32 MB Cache, SATAII – forced to 1.5Gbps with jumper)
I have also tried 3 SATA cables that have been used successfully on other platforms to rule a faulty cable out.
I have executed this test application on multiple platforms without any similar issues. Do you know of any known issues with hard disk access on this platform or possible fixes?
- I have copied an example of the reported errors generated immediately after running the test application at the bottom of this email. I would be grateful for any assistance you can give:
Example errors:
ata1.00: exception Emask 0x0 SAct 0x1 SErr 0x0 action 0x6 frozen
ata1.00: failed command: READ FPDMA QUEUED
ata1.00: cmd 60/02:00:a2:63:12/00:00:00:00:00/40 tag 0 ncq 1024 in
res 40/00:04:20:01:00/00:00:00:00:00/40 Emask 0x4 (timeout)
ata1.00: status: { DRDY }
ata1: hard resetting link
ata1: SATA link down (SStatus 1 SControl 310)
ata1: hard resetting link
ata1: SATA link up 1.5 Gbps (SStatus 113 SControl 310)
ata1.00: configured for UDMA/133
ata1: EH complete
ata1.00: exception Emask 0x12 SAct 0x1 SErr 0xa80501 action 0x6 frozen
ata1.00: irq_stat 0x09000000, interface fatal error
ata1: SError: { RecovData UnrecovData Proto 10B8B BadCRC LinkSeq }
ata1.00: failed command: READ FPDMA QUEUED
ata1.00: cmd 60/02:00:68:bd:12/00:00:00:00:00/40 tag 0 ncq 1024 in
res 40/00:04:68:bd:12/00:00:00:00:00/40 Emask 0x12 (ATA bus error)
ata1.00: status: { DRDY }
ata1: hard resetting link
ata1: softreset failed (1st FIS failed)
ata1: SATA link up 1.5 Gbps (SStatus 113 SControl 310)
ata1.00: qc timeout (cmd 0xec)
ata1.00: failed to IDENTIFY (I/O error, err_mask=0x4)
ata1.00: revalidation failed (errno=-5)
ata1: hard resetting link
ata1: SATA link up 1.5 Gbps (SStatus 113 SControl 310)
ata1.00: configured for UDMA/133
ata1: EH complete
ata1.00: exception Emask 0x12 SAct 0x1 SErr 0x1280501 action 0x6 frozen
ata1.00: irq_stat 0x08000000, interface fatal error
ata1: SError: { RecovData UnrecovData Proto 10B8B BadCRC TrStaTrns }
ata1.00: failed command: READ FPDMA QUEUED
ata1.00: cmd 60/04:00:84:c4:13/00:00:00:00:00/40 tag 0 ncq 2048 in
res 40/00:04:84:c4:13/00:00:00:00:00/40 Emask 0x12 (ATA bus error)
ata1.00: status: { DRDY }
ata1: hard resetting link
ata1: SATA link up 1.5 Gbps (SStatus 113 SControl 310)
ata1.00: configured for UDMA/133
ata1: EH complete
ata1.00: limiting speed to UDMA/100:PIO4
ata1.00: exception Emask 0x10 SAct 0x1 SErr 0x280100 action 0x6 frozen
ata1.00: irq_stat 0x08000000, interface fatal error
ata1: SError: { UnrecovData 10B8B BadCRC }
ata1.00: failed command: READ FPDMA QUEUED
ata1.00: cmd 60/04:00:e0:d4:13/00:00:00:00:00/40 tag 0 ncq 2048 in
res 40/00:04:e0:d4:13/00:00:00:00:00/40 Emask 0x10 (ATA bus error)
ata1.00: status: { DRDY }
ata1: hard resetting link
ata1: SATA link up 1.5 Gbps (SStatus 113 SControl 310)
ata1.00: configured for UDMA/100
ata1: EH complete
ata1.00: exception Emask 0x10 SAct 0x1 SErr 0x280100 action 0x6 frozen
ata1.00: irq_stat 0x08000000, interface fatal error
ata1: SError: { UnrecovData 10B8B BadCRC }
ata1.00: failed command: READ FPDMA QUEUED
ata1.00: cmd 60/04:00:88:ed:13/00:00:00:00:00/40 tag 0 ncq 2048 in
res 40/00:04:88:ed:13/00:00:00:00:00/40 Emask 0x10 (ATA bus error)
ata1.00: status: { DRDY }
ata1: hard resetting link
ata1: SATA link up 1.5 Gbps (SStatus 113 SControl 310)
ata1.00: configured for UDMA/100
ata1: EH complete
ata1.00: exception Emask 0x10 SAct 0x1 SErr 0x400100 action 0x6 frozen
ata1.00: irq_stat 0x08000000, interface fatal error
ata1: SError: { UnrecovData Handshk }
ata1.00: failed command: WRITE FPDMA QUEUED
ata1.00: cmd 61/08:00:b0:e1:14/00:00:00:00:00/40 tag 0 ncq 4096 out
res 40/00:04:b0:e1:14/00:00:00:00:00/40 Emask 0x10 (ATA bus error)
ata1.00: status: { DRDY }
ata1: hard resetting link
ata1: SATA link up 1.5 Gbps (SStatus 113 SControl 310)
ata1.00: configured for UDMA/100
ata1: EH complete
ata1.00: exception Emask 0x10 SAct 0x1 SErr 0x400100 action 0x6 frozen
ata1.00: irq_stat 0x08000000, interface fatal error
ata1: SError: { UnrecovData Handshk }
ata1.00: failed command: WRITE FPDMA QUEUED
ata1.00: cmd 61/08:00:28:3a:15/00:00:00:00:00/40 tag 0 ncq 4096 out
res 40/00:04:28:3a:15/00:00:00:00:00/40 Emask 0x10 (ATA bus error)
ata1.00: status: { DRDY }
ata1: hard resetting link
ata1: SATA link up 1.5 Gbps (SStatus 113 SControl 310)
ata1.00: configured for UDMA/100
ata1: EH complete
ata1.00: limiting speed to UDMA/33:PIO4
ata1.00: exception Emask 0x10 SAct 0x1 SErr 0x400100 action 0x6 frozen
ata1.00: irq_stat 0x08000000, interface fatal error
ata1: SError: { UnrecovData Handshk }
ata1.00: failed command: WRITE FPDMA QUEUED
ata1.00: cmd 61/08:00:60:49:15/00:00:00:00:00/40 tag 0 ncq 4096 out
res 40/00:04:60:49:15/00:00:00:00:00/40 Emask 0x10 (ATA bus error)
ata1.00: status: { DRDY }
ata1: hard resetting link
ata1: SATA link up 1.5 Gbps (SStatus 113 SControl 310)
ata1.00: configured for UDMA/33
ata1: EH complete
ata1.00: exception Emask 0x12 SAct 0x1 SErr 0x800500 action 0x6 frozen
ata1.00: irq_stat 0x08000000, interface fatal error
ata1: SError: { UnrecovData Proto LinkSeq }
ata1.00: failed command: WRITE FPDMA QUEUED
ata1.00: cmd 61/08:00:50:ae:15/00:00:00:00:00/40 tag 0 ncq 4096 out
res 40/00:04:50:ae:15/00:00:00:00:00/40 Emask 0x12 (ATA bus error)
ata1.00: status: { DRDY }
ata1: hard resetting link
ata1: SATA link up 1.5 Gbps (SStatus 113 SControl 310)
ata1.00: configured for UDMA/33
ata1: EH complete
ata1.00: exception Emask 0x10 SAct 0x1 SErr 0x280100 action 0x6 frozen
ata1.00: irq_stat 0x08000000, interface fatal error
ata1: SError: { UnrecovData 10B8B BadCRC }
ata1.00: failed command: READ FPDMA QUEUED
ata1.00: cmd 60/08:00:28:89:14/00:00:00:00:00/40 tag 0 ncq 4096 in
res 40/00:04:28:89:14/00:00:00:00:00/40 Emask 0x10 (ATA bus error)
ata1.00: status: { DRDY }
ata1: hard resetting link
ata1: SATA link up 1.5 Gbps (SStatus 113 SControl 310)
ata1.00: configured for UDMA/33
ata1: EH complete
ata1.00: exception Emask 0x10 SAct 0x1 SErr 0x400100 action 0x6 frozen
ata1.00: irq_stat 0x08000000, interface fatal error
ata1: SError: { UnrecovData Handshk }
ata1.00: failed command: WRITE FPDMA QUEUED
ata1.00: cmd 61/10:00:30:b8:16/00:00:00:00:00/40 tag 0 ncq 8192 out
res 40/00:04:30:b8:16/00:00:00:00:00/40 Emask 0x10 (ATA bus error)
ata1.00: status: { DRDY }
ata1: hard resetting link
ata1: SATA link up 1.5 Gbps (SStatus 113 SControl 310)
ata1.00: configured for UDMA/33
ata1: EH complete
ata1.00: exception Emask 0x10 SAct 0x1 SErr 0x400100 action 0x6 frozen
ata1.00: irq_stat 0x08000000, interface fatal error
ata1: SError: { UnrecovData Handshk }
ata1.00: failed command: WRITE FPDMA QUEUED
ata1.00: cmd 61/10:00:e0:e1:16/00:00:00:00:00/40 tag 0 ncq 8192 out
res 40/00:04:e0:e1:16/00:00:00:00:00/40 Emask 0x10 (ATA bus error)
ata1.00: status: { DRDY }
ata1: hard resetting link
ata1: SATA link up 1.5 Gbps (SStatus 113 SControl 310)
ata1.00: configured for UDMA/33
ata1: EH complete
ata1.00: exception Emask 0x10 SAct 0x1 SErr 0x280100 action 0x6 frozen
ata1.00: irq_stat 0x08000000, interface fatal error
ata1: SError: { UnrecovData 10B8B BadCRC }
ata1.00: failed command: READ FPDMA QUEUED
ata1.00: cmd 60/10:00:60:fd:15/00:00:00:00:00/40 tag 0 ncq 8192 in
res 40/00:04:60:fd:15/00:00:00:00:00/40 Emask 0x10 (ATA bus error)
ata1.00: status: { DRDY }
ata1: hard resetting link
ata1: SATA link up 1.5 Gbps (SStatus 113 SControl 310)
ata1.00: configured for UDMA/33
ata1: EH complete
ata1.00: exception Emask 0x0 SAct 0x1 SErr 0x0 action 0x6 frozen
ata1.00: failed command: READ FPDMA QUEUED
ata1.00: cmd 60/10:00:40:05:16/00:00:00:00:00/40 tag 0 ncq 8192 in
res 40/00:04:60:fd:15/00:00:00:00:00/40 Emask 0x4 (timeout)
ata1.00: status: { DRDY }
ata1: hard resetting link
ata1: SATA link up 1.5 Gbps (SStatus 113 SControl 310)
ata1.00: configured for UDMA/33
ata1: EH complete
ata1.00: exception Emask 0x10 SAct 0x1 SErr 0x280100 action 0x6 frozen
ata1.00: irq_stat 0x08000000, interface fatal error
ata1: SError: { UnrecovData 10B8B BadCRC }
ata1.00: failed command: READ FPDMA QUEUED
ata1.00: cmd 60/10:00:90:1a:16/00:00:00:00:00/40 tag 0 ncq 8192 in
res 40/00:04:90:1a:16/00:00:00:00:00/40 Emask 0x10 (ATA bus error)
ata1.00: status: { DRDY }
ata1: hard resetting link
ata1: SATA link up 1.5 Gbps (SStatus 113 SControl 310)
ata1.00: configured for UDMA/33
ata1: EH complete
ata1.00: exception Emask 0x10 SAct 0x1 SErr 0x280100 action 0x6 frozen
ata1.00: irq_stat 0x08000000, interface fatal error
ata1: SError: { UnrecovData 10B8B BadCRC }
ata1.00: failed command: READ FPDMA QUEUED
ata1.00: cmd 60/10:00:60:91:16/00:00:00:00:00/40 tag 0 ncq 8192 in
res 40/00:04:60:91:16/00:00:00:00:00/40 Emask 0x10 (ATA bus error)
ata1.00: status: { DRDY }
ata1: hard resetting link
ata1: SATA link up 1.5 Gbps (SStatus 113 SControl 310)
ata1.00: configured for UDMA/33
ata1: EH complete
ata1.00: exception Emask 0x12 SAct 0x1 SErr 0x1280500 action 0x6 frozen
ata1.00: irq_stat 0x08000000, interface fatal error
ata1: SError: { UnrecovData Proto 10B8B BadCRC TrStaTrns }
ata1.00: failed command: READ FPDMA QUEUED
ata1.00: cmd 60/10:00:00:c7:16/00:00:00:00:00/40 tag 0 ncq 8192 in
res 40/00:04:00:c7:16/00:00:00:00:00/40 Emask 0x12 (ATA bus error)
ata1.00: status: { DRDY }
ata1: hard resetting link
ata1: SATA link up 1.5 Gbps (SStatus 113 SControl 310)
ata1.00: configured for UDMA/33
ata1: EH complete
ata1.00: exception Emask 0x10 SAct 0x1 SErr 0x200100 action 0x6 frozen
ata1.00: irq_stat 0x08000000, interface fatal error
ata1: SError: { UnrecovData BadCRC }
ata1.00: failed command: READ FPDMA QUEUED
ata1.00: cmd 60/10:00:f0:ea:16/00:00:00:00:00/40 tag 0 ncq 8192 in
res 40/00:04:f0:ea:16/00:00:00:00:00/40 Emask 0x10 (ATA bus error)
ata1.00: status: { DRDY }
ata1: hard resetting link
ata1: SATA link up 1.5 Gbps (SStatus 113 SControl 310)
ata1.00: configured for UDMA/33
ata1: EH complete
ata1.00: exception Emask 0x10 SAct 0x1 SErr 0x200100 action 0x6 frozen
ata1.00: irq_stat 0x08000000, interface fatal error
ata1: SError: { UnrecovData BadCRC }
ata1.00: failed command: READ FPDMA QUEUED
ata1.00: cmd 60/10:00:90:14:17/00:00:00:00:00/40 tag 0 ncq 8192 in
res 40/00:04:90:14:17/00:00:00:00:00/40 Emask 0x10 (ATA bus error)
ata1.00: status: { DRDY }
ata1: hard resetting link
ata1: SATA link up 1.5 Gbps (SStatus 113 SControl 310)
ata1.00: configured for UDMA/33
ata1: EH complete
ata1.00: exception Emask 0x10 SAct 0x1 SErr 0x280100 action 0x6 frozen
ata1.00: irq_stat 0x08000000, interface fatal error
ata1: SError: { UnrecovData 10B8B BadCRC }
ata1.00: failed command: READ FPDMA QUEUED
ata1.00: cmd 60/10:00:30:38:17/00:00:00:00:00/40 tag 0 ncq 8192 in
res 40/00:04:30:38:17/00:00:00:00:00/40 Emask 0x10 (ATA bus error)
ata1.00: status: { DRDY }
ata1: hard resetting link
<Continues for 1000s of lines>