Mikael Pettersson 724114a573 sata_promise: separate SATA and PATA ops
This patch changes sata_promise so that the PATA ports
on TX2plus chips are bound to the pdc_pata_ops structure.
This means that operations called from the SATA ops
structures don't need any SATA-vs-PATA tests any more.
Instead, operations that depend on a port being SATA or
PATA are separated into different procedures.

* pdc_cable_type() is split into a PATA version and a
  SATA version
* pdc_error_handler() is split into a PATA version and a
  SATA version, that both call a common version after
  setting up the `hardreset' function pointer
* pdc_old_check_atapi_dma() is now only used for SATAI
  ports, so is renamed to pdc_old_sata_check_atapi_dma()
  and simplified
* pdc_sata_scr_{read,write}() are now only used for SATA
  ports, so their is-not-SATA tests are removed
* pdc_port_start() is split into three procedures: a wrapper
  which performs the ->ops adjustment on TX2plus PATA ports,
  a procedure with the common code, and a procedure with
  the SATA-specific code (this bit might be cleaned up by
  Tejun's new init model)

Tested on 20619, 20575, and 20775 chips.

Signed-off-by: Mikael Pettersson <mikpe@it.uu.se>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
2007-04-28 14:15:59 -04:00
..
2007-04-28 14:15:59 -04:00
2007-04-28 14:15:59 -04:00
2007-04-28 14:15:55 -04:00
2007-04-28 14:15:56 -04:00
2007-04-28 14:15:57 -04:00
2007-04-28 14:15:56 -04:00
2007-02-26 06:04:24 -05:00
2007-03-02 18:18:38 -05:00
2007-04-28 14:15:57 -04:00
2007-04-28 14:15:56 -04:00
2007-02-26 06:04:24 -05:00
2007-02-26 06:04:24 -05:00
2006-08-10 07:31:37 -04:00
2007-02-26 06:04:24 -05:00
2007-02-26 06:04:24 -05:00
2007-02-26 06:04:24 -05:00
2007-02-26 06:04:24 -05:00
2007-02-26 06:04:24 -05:00
2007-02-21 04:58:17 -05:00