linux-ide.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* Port-Multiplier hotplug support: ATA_FLAG_AN
@ 2008-05-13 22:50 Mark Lord
  2008-05-13 23:25 ` Jeff Garzik
  2008-05-14  3:10 ` Tejun Heo
  0 siblings, 2 replies; 5+ messages in thread
From: Mark Lord @ 2008-05-13 22:50 UTC (permalink / raw)
  To: Tejun Heo, Jeff Garzik, Alan Cox, IDE/ATA development list

Tejun,

Apparently the newer (GenIIe) sata_mv chips *can* support asynchronous
notification without problems.  Some/all of the older ones cannot (errata).

So, I've done the one-liner change in sata_mv, to add ATA_FLAG_AN to
the 7042 and 6042 chips, and it all seems to work rather nicely.

Am I missing something?  Is there any other local code to sata_mv
that should be provided before setting ATA_FLAG_AN ?

Like I said, it works, but I just want to check whether any other
pieces are expected to be present? 

Cheers

Mark

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: Port-Multiplier hotplug support: ATA_FLAG_AN
  2008-05-13 22:50 Port-Multiplier hotplug support: ATA_FLAG_AN Mark Lord
@ 2008-05-13 23:25 ` Jeff Garzik
  2008-05-14  2:50   ` Mark Lord
  2008-05-14  3:10 ` Tejun Heo
  1 sibling, 1 reply; 5+ messages in thread
From: Jeff Garzik @ 2008-05-13 23:25 UTC (permalink / raw)
  To: Mark Lord; +Cc: Tejun Heo, Alan Cox, IDE/ATA development list

Mark Lord wrote:
> Tejun,
> 
> Apparently the newer (GenIIe) sata_mv chips *can* support asynchronous
> notification without problems.  Some/all of the older ones cannot (errata).
> 
> So, I've done the one-liner change in sata_mv, to add ATA_FLAG_AN to
> the 7042 and 6042 chips, and it all seems to work rather nicely.
> 
> Am I missing something?  Is there any other local code to sata_mv
> that should be provided before setting ATA_FLAG_AN ?
> 
> Like I said, it works, but I just want to check whether any other
> pieces are expected to be present?

Did you check ATAPI or just PMP AN?

	Jeff




^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: Port-Multiplier hotplug support: ATA_FLAG_AN
  2008-05-13 23:25 ` Jeff Garzik
@ 2008-05-14  2:50   ` Mark Lord
  0 siblings, 0 replies; 5+ messages in thread
From: Mark Lord @ 2008-05-14  2:50 UTC (permalink / raw)
  To: Jeff Garzik; +Cc: Tejun Heo, Alan Cox, IDE/ATA development list

Jeff Garzik wrote:
> Mark Lord wrote:
>> Tejun,
>>
>> Apparently the newer (GenIIe) sata_mv chips *can* support asynchronous
>> notification without problems.  Some/all of the older ones cannot 
>> (errata).
>>
>> So, I've done the one-liner change in sata_mv, to add ATA_FLAG_AN to
>> the 7042 and 6042 chips, and it all seems to work rather nicely.
>>
>> Am I missing something?  Is there any other local code to sata_mv
>> that should be provided before setting ATA_FLAG_AN ?
>>
>> Like I said, it works, but I just want to check whether any other
>> pieces are expected to be present?
> 
> Did you check ATAPI or just PMP AN?
..

sata_mv does not (yet) support ATAPI for anything.

-ml

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: Port-Multiplier hotplug support: ATA_FLAG_AN
  2008-05-13 22:50 Port-Multiplier hotplug support: ATA_FLAG_AN Mark Lord
  2008-05-13 23:25 ` Jeff Garzik
@ 2008-05-14  3:10 ` Tejun Heo
  2008-05-14 12:46   ` Mark Lord
  1 sibling, 1 reply; 5+ messages in thread
From: Tejun Heo @ 2008-05-14  3:10 UTC (permalink / raw)
  To: Mark Lord; +Cc: Jeff Garzik, Alan Cox, IDE/ATA development list

Mark Lord wrote:
> Tejun,
> 
> Apparently the newer (GenIIe) sata_mv chips *can* support asynchronous
> notification without problems.  Some/all of the older ones cannot (errata).
> 
> So, I've done the one-liner change in sata_mv, to add ATA_FLAG_AN to
> the 7042 and 6042 chips, and it all seems to work rather nicely.
> 
> Am I missing something?  Is there any other local code to sata_mv
> that should be provided before setting ATA_FLAG_AN ?
> 
> Like I said, it works, but I just want to check whether any other
> pieces are expected to be present?

You need to call sata_async_notification() from interrupt handler after 
AN FIS is received.  sata_async_notification() is responsible for 
discerning between ATAPI and PMP ANs using SNotification and schedule 
appropriate actions.  If SNotification is not available && PMP is 
attached, it just calls ata_port_schedule_eh().  That's probably why it 
just worked by setting ATA_FLAG_AN.

Thanks.

-- 
tejun

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: Port-Multiplier hotplug support: ATA_FLAG_AN
  2008-05-14  3:10 ` Tejun Heo
@ 2008-05-14 12:46   ` Mark Lord
  0 siblings, 0 replies; 5+ messages in thread
From: Mark Lord @ 2008-05-14 12:46 UTC (permalink / raw)
  To: Tejun Heo; +Cc: Jeff Garzik, Alan Cox, IDE/ATA development list

Tejun Heo wrote:
> Mark Lord wrote:
>> Tejun,
>>
>> Apparently the newer (GenIIe) sata_mv chips *can* support asynchronous
>> notification without problems.  Some/all of the older ones cannot 
>> (errata).
>>
>> So, I've done the one-liner change in sata_mv, to add ATA_FLAG_AN to
>> the 7042 and 6042 chips, and it all seems to work rather nicely.
>>
>> Am I missing something?  Is there any other local code to sata_mv
>> that should be provided before setting ATA_FLAG_AN ?
>>
>> Like I said, it works, but I just want to check whether any other
>> pieces are expected to be present?
> 
> You need to call sata_async_notification() from interrupt handler after 
> AN FIS is received.  sata_async_notification() is responsible for 
> discerning between ATAPI and PMP ANs using SNotification and schedule 
> appropriate actions.  If SNotification is not available && PMP is 
> attached, it just calls ata_port_schedule_eh().  That's probably why it 
> just worked by setting ATA_FLAG_AN.
..

Okay, that's cool.  So mv_err_intr() now just calls sata_async_notification(),
and then bails out without further action (if no other errors coincided),
and the EH then runs for just that one PM link, rather than the whole port.

(tested, working).

Cool!

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2008-05-14 12:46 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2008-05-13 22:50 Port-Multiplier hotplug support: ATA_FLAG_AN Mark Lord
2008-05-13 23:25 ` Jeff Garzik
2008-05-14  2:50   ` Mark Lord
2008-05-14  3:10 ` Tejun Heo
2008-05-14 12:46   ` Mark Lord

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).