Explorar el Código

[PATCH] libata: add ata_dev_pair helper

Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
Alan Cox hace 19 años
padre
commit
ebdfca6eb1
Se han modificado 2 ficheros con 19 adiciones y 0 borrados
  1. 17 0
      drivers/scsi/libata-core.c
  2. 2 0
      include/linux/libata.h

+ 17 - 0
drivers/scsi/libata-core.c

@@ -1575,6 +1575,23 @@ void sata_phy_reset(struct ata_port *ap)
 	ata_bus_reset(ap);
 }
 
+/**
+ *	ata_dev_pair		-	return other device on cable
+ *	@ap: port
+ *	@adev: device
+ *
+ *	Obtain the other device on the same cable, or if none is
+ *	present NULL is returned
+ */
+ 
+struct ata_device *ata_dev_pair(struct ata_port *ap, struct ata_device *adev)
+{
+	struct ata_device *pair = &ap->device[1 - adev->devno];
+	if (!ata_dev_present(pair))
+		return NULL;
+	return pair;
+}
+
 /**
  *	ata_port_disable - Disable port.
  *	@ap: Port to be disabled.

+ 2 - 0
include/linux/libata.h

@@ -573,6 +573,8 @@ extern int ata_std_bios_param(struct scsi_device *sdev,
 			      struct block_device *bdev,
 			      sector_t capacity, int geom[]);
 extern int ata_scsi_slave_config(struct scsi_device *sdev);
+extern struct ata_device *ata_dev_pair(struct ata_port *ap, 
+				       struct ata_device *adev);
 
 /*
  * Timing helpers