linux-ide.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 0/7] libata: irq_on/off restructuring (take #2)
@ 2007-07-07  6:57 Albert Lee
  2007-07-07  7:00 ` [PATCH 1/7] libata: remove irq_on from ata_bus_reset() and ata_std_postreset() Albert Lee
                   ` (6 more replies)
  0 siblings, 7 replies; 14+ messages in thread
From: Albert Lee @ 2007-07-07  6:57 UTC (permalink / raw)
  To: Jeff Garzik; +Cc: Alan Cox, Doug Maxey, Mark Lord, Tejun Heo, Linux IDE

(Revised per Tejun's advice.)
For ATA, there are two levels of mechanism available to turn irq on/off.
- device level: nIEN bit in the control register. This masks INTRQ from the device.
- host adapter level: some controllers can mask out per-port irq from the host adapter.

Currently various parts of libata deal with irq on/off.
  ex. tf_load() can alter the nIEN bit.
  ex. irq_on() also alters the device level nIEN bit.
  ex. freeze()/thaw() deal with the host adapter irq mask.

It seems these irq_on/off codes could be better structured.
Patches against the libata-dev tree for your review, thanks.

1/7: remove irq_on from ata_bus_reset() and ata_std_postreset()
2/7: sata_promise::pdc_freeze() semantic change
3/7: add freeze()/thaw() to old EH LLDDs
4/7: use freeze()/thaw() for polling PIO
5/7: integrate freeze/thaw with irq_on/off
6/7: tf_load() cleanup
7/7: remove ap->last_ctl


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

end of thread, other threads:[~2007-10-02 15:28 UTC | newest]

Thread overview: 14+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2007-07-07  6:57 [PATCH 0/7] libata: irq_on/off restructuring (take #2) Albert Lee
2007-07-07  7:00 ` [PATCH 1/7] libata: remove irq_on from ata_bus_reset() and ata_std_postreset() Albert Lee
2007-07-12 20:12   ` Jeff Garzik
2007-07-07  7:02 ` [PATCH 2/7] sata_promise: pdc_freeze() semantic change Albert Lee
2007-10-02 15:28   ` Jeff Garzik
2007-07-07  7:05 ` [PATCH 3/7] libata: add freeze/thaw to old EH LLDDs Albert Lee
2007-07-07  7:09 ` [PATCH 4/7] libata: use freeze/thaw for polling PIO Albert Lee
2007-07-13  6:53   ` Tejun Heo
2007-07-07  7:12 ` [PATCH 5/7] libata: integrate freeze/thaw with irq_on/off Albert Lee
2007-07-13  6:51   ` Tejun Heo
2007-07-16  9:17     ` Albert Lee
2007-07-07  7:20 ` [PATCH 6/7] libata: remove nIEN handling from ata_tf_load() Albert Lee
2007-07-07  7:23 ` [PATCH 7/7] libata: remove ap->last_ctl Albert Lee
2007-07-13  6:58   ` Tejun Heo

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).