All of lore.kernel.org
 help / color / mirror / Atom feed
* ATA link errors in custom PATA driver
@ 2018-09-05 15:08 Nathan Williams
  0 siblings, 0 replies; only message in thread
From: Nathan Williams @ 2018-09-05 15:08 UTC (permalink / raw)
  To: kernelnewbies

Hi,

I have a Altera socfpga platform that implements a very basic ATA PIO0 Compact
Flash controller in the FPGA and I have a very basic PATA Linux driver that
does MMIO to the FPGA registers and configures 3 GPIOs for power, reset and
card detect. It's basically a copy of pata_platform.c with a check_status
function to read the card detect GPIO and if a card is detected, it switches
on the power GPIO and deasserts the reset GPIO.

The driver and FPGA CF controller work fine together for me except for an
intermittent issue where on boot I occasionally see the following:

[    5.836242] ata1: link is slow to respond, please be patient (ready=0)
[   10.816241] ata1: device not ready (errno=-16), forcing hardreset
[   16.016250] ata1: link is slow to respond, please be patient (ready=0)
[   20.876239] ata1: SRST failed (errno=-16)
[   26.076243] ata1: link is slow to respond, please be patient (ready=0)
[   30.936243] ata1: SRST failed (errno=-16)
[   36.136243] ata1: link is slow to respond, please be patient (ready=0)
[   65.956240] ata1: SRST failed (errno=-16)
[   70.976238] ata1: SRST failed (errno=-16)
[   70.981059] ata1: reset failed, giving up

This is occurs when there is no CF card plugged in, so I don't understand why
the driver appears to be trying to communicate with a Compact Flash device?

I'm a little stuck trying to figure out how to properly handle a hot pluggable
CF card, so any advice on this would be much appreciated.

Nathan

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2018-09-05 15:08 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-09-05 15:08 ATA link errors in custom PATA driver Nathan Williams

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.