diff options
author | Tejun Heo <htejun@gmail.com> | 2007-08-06 05:36:22 -0400 |
---|---|---|
committer | Jeff Garzik <jeff@garzik.org> | 2007-10-12 14:55:30 -0400 |
commit | 9af5c9c97dc9d599281778864c72b385f0c63341 (patch) | |
tree | 8359986bd42c4a9a5b1993078aa9ee4c7971ac3d /drivers/ata/pata_ixp4xx_cf.c | |
parent | 640fdb504941fa2b9f6f274716fc9f97f2bf6bff (diff) |
libata-link: introduce ata_link
Introduce ata_link. It abstracts PHY and sits between ata_port and
ata_device. This new level of abstraction is necessary to support
SATA Port Multiplier, which basically adds a bunch of links (PHYs) to
a ATA host port. Fields related to command execution, spd_limit and
EH are per-link and thus moved to ata_link.
This patch only defines the host link. Multiple link handling will be
added later. Also, a lot of ap->link derefences are added but many of
them will be removed as each part is converted to deal directly with
ata_link instead of ata_port.
This patch introduces no behavior change.
Signed-off-by: Tejun Heo <htejun@gmail.com>
Cc: James Bottomley <James.Bottomley@SteelEye.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
Diffstat (limited to 'drivers/ata/pata_ixp4xx_cf.c')
-rw-r--r-- | drivers/ata/pata_ixp4xx_cf.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/ata/pata_ixp4xx_cf.c b/drivers/ata/pata_ixp4xx_cf.c index 5dea3584c6c2..3e2b8ce5fa37 100644 --- a/drivers/ata/pata_ixp4xx_cf.c +++ b/drivers/ata/pata_ixp4xx_cf.c | |||
@@ -31,7 +31,7 @@ static int ixp4xx_set_mode(struct ata_port *ap, struct ata_device **error) | |||
31 | int i; | 31 | int i; |
32 | 32 | ||
33 | for (i = 0; i < ATA_MAX_DEVICES; i++) { | 33 | for (i = 0; i < ATA_MAX_DEVICES; i++) { |
34 | struct ata_device *dev = &ap->device[i]; | 34 | struct ata_device *dev = &ap->link.device[i]; |
35 | if (ata_dev_enabled(dev)) { | 35 | if (ata_dev_enabled(dev)) { |
36 | ata_dev_printk(dev, KERN_INFO, "configured for PIO0\n"); | 36 | ata_dev_printk(dev, KERN_INFO, "configured for PIO0\n"); |
37 | dev->pio_mode = XFER_PIO_0; | 37 | dev->pio_mode = XFER_PIO_0; |
@@ -49,7 +49,7 @@ static void ixp4xx_mmio_data_xfer(struct ata_device *adev, unsigned char *buf, | |||
49 | unsigned int i; | 49 | unsigned int i; |
50 | unsigned int words = buflen >> 1; | 50 | unsigned int words = buflen >> 1; |
51 | u16 *buf16 = (u16 *) buf; | 51 | u16 *buf16 = (u16 *) buf; |
52 | struct ata_port *ap = adev->ap; | 52 | struct ata_port *ap = adev->link->ap; |
53 | void __iomem *mmio = ap->ioaddr.data_addr; | 53 | void __iomem *mmio = ap->ioaddr.data_addr; |
54 | struct ixp4xx_pata_data *data = ap->host->dev->platform_data; | 54 | struct ixp4xx_pata_data *data = ap->host->dev->platform_data; |
55 | 55 | ||