Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit d0e58031 authored by Mikael Pettersson's avatar Mikael Pettersson Committed by Jeff Garzik
Browse files

sata_promise: cleanups



This patch applies some trivial cleanups to sata_promise:
- repair whitespace damage
- correct comment at board_2057x_pata definition
- pull SATAII TX4 support code out to separate functions
- rename ata_nr to ata_no for consistency with libata's port_no
- remove some init-time debug printks (requested by Jeff)

This patch should cause no behavioural changes, except for
the removed printks.

Signed-off-by: default avatarMikael Pettersson <mikpe@it.uu.se>
--
 drivers/ata/sata_promise.c |   56 ++++++++++++++++++---------------------------
 1 files changed, 23 insertions(+), 33 deletions(-)
Signed-off-by: default avatarJeff Garzik <jeff@garzik.org>
parent 5446b656
Loading
Loading
Loading
Loading
+23 −33
Original line number Diff line number Diff line
@@ -45,8 +45,7 @@
#include "sata_promise.h"

#define DRV_NAME	"sata_promise"
#define DRV_VERSION	"2.07"

#define DRV_VERSION	"2.08"

enum {
	PDC_MAX_PORTS		= 4,
@@ -94,7 +93,7 @@ enum {
	board_20319		= 2,	/* FastTrak S150 TX4 */
	board_20619		= 3,	/* FastTrak TX4000 */
	board_2057x		= 4,	/* SATAII150 Tx2plus */
	board_2057x_pata	= 5,	/* SATAII150 Tx2plus */
	board_2057x_pata	= 5,	/* SATAII150 Tx2plus PATA port */
	board_40518		= 6,	/* SATAII150 Tx4 */

	PDC_HAS_PATA		= (1 << 1), /* PDC20375/20575 has PATA */
@@ -124,7 +123,6 @@ enum {
	PDC_FLAG_4_PORTS	= (1 << 26), /* 4 ports */
};


struct pdc_port_priv {
	u8			*pkt;
	dma_addr_t		pkt_dma;
@@ -340,7 +338,6 @@ static const struct pci_device_id pdc_ata_pci_tbl[] = {
	{ }	/* terminate list */
};


static struct pci_driver pdc_ata_pci_driver = {
	.name			= DRV_NAME,
	.id_table		= pdc_ata_pci_tbl,
@@ -348,7 +345,6 @@ static struct pci_driver pdc_ata_pci_driver = {
	.remove			= ata_pci_remove_one,
};


static int pdc_common_port_start(struct ata_port *ap)
{
	struct device *dev = ap->host->dev;
@@ -438,7 +434,6 @@ static u32 pdc_sata_scr_read (struct ata_port *ap, unsigned int sc_reg)
	return readl(ap->ioaddr.scr_addr + (sc_reg * 4));
}


static void pdc_sata_scr_write (struct ata_port *ap, unsigned int sc_reg,
			       u32 val)
{
@@ -701,6 +696,18 @@ static void pdc_irq_clear(struct ata_port *ap)
	readl(mmio + PDC_INT_SEQMASK);
}

static inline int pdc_is_sataii_tx4(unsigned long flags)
{
	const unsigned long mask = PDC_FLAG_GEN_II | PDC_FLAG_4_PORTS;
	return (flags & mask) == mask;
}

static inline unsigned int pdc_port_no_to_ata_no(unsigned int port_no, int is_sataii_tx4)
{
	static const unsigned char sataii_tx4_port_remap[4] = { 3, 1, 0, 2};
	return is_sataii_tx4 ? sataii_tx4_port_remap[port_no] : port_no;
}

static irqreturn_t pdc_interrupt (int irq, void *dev_instance)
{
	struct ata_host *host = dev_instance;
@@ -807,7 +814,6 @@ static void pdc_tf_load_mmio(struct ata_port *ap, const struct ata_taskfile *tf)
	ata_tf_load(ap, tf);
}


static void pdc_exec_command_mmio(struct ata_port *ap, const struct ata_taskfile *tf)
{
	WARN_ON (tf->protocol == ATA_PROT_DMA ||
@@ -867,7 +873,6 @@ static void pdc_ata_setup_port(struct ata_port *ap,
	ap->ioaddr.scr_addr		= scr_addr;
}


static void pdc_host_init(struct ata_host *host)
{
	void __iomem *mmio = host->iomap[PDC_MMIO_BAR];
@@ -955,10 +960,8 @@ static int pdc_ata_init_one (struct pci_dev *pdev, const struct pci_device_id *e

	if (pi->flags & PDC_FLAG_SATA_PATA) {
		u8 tmp = readb(base + PDC_FLASH_CTL+1);
		if (!(tmp & 0x80)) {
		if (!(tmp & 0x80))
			ppi[n_ports++] = pi + 1;
			dev_printk(KERN_INFO, &pdev->dev, "PATA port found\n");
		}
	}

	host = ata_host_alloc_pinfo(&pdev->dev, ppi, n_ports);
@@ -968,22 +971,12 @@ static int pdc_ata_init_one (struct pci_dev *pdev, const struct pci_device_id *e
	}
	host->iomap = pcim_iomap_table(pdev);

	is_sataii_tx4 = 0;
	if ((pi->flags & (PDC_FLAG_GEN_II|PDC_FLAG_4_PORTS)) == (PDC_FLAG_GEN_II|PDC_FLAG_4_PORTS)) {
		is_sataii_tx4 = 1;
		dev_printk(KERN_INFO, &pdev->dev, "applying SATAII TX4 port numbering workaround\n");
	}
	is_sataii_tx4 = pdc_is_sataii_tx4(pi->flags);
	for (i = 0; i < host->n_ports; i++) {
		static const unsigned char sataii_tx4_port_remap[4] = { 3, 1, 0, 2};
		int ata_nr;

		ata_nr = i;
		if (is_sataii_tx4)
			ata_nr = sataii_tx4_port_remap[i];

		unsigned int ata_no = pdc_port_no_to_ata_no(i, is_sataii_tx4);
		pdc_ata_setup_port(host->ports[i],
				   base + 0x200 + ata_nr * 0x80,
				   base + 0x400 + ata_nr * 0x100);
				   base + 0x200 + ata_no * 0x80,
				   base + 0x400 + ata_no * 0x100);
	}

	/* initialize adapter */
@@ -1002,19 +995,16 @@ static int pdc_ata_init_one (struct pci_dev *pdev, const struct pci_device_id *e
				 &pdc_ata_sht);
}


static int __init pdc_ata_init(void)
{
	return pci_register_driver(&pdc_ata_pci_driver);
}


static void __exit pdc_ata_exit(void)
{
	pci_unregister_driver(&pdc_ata_pci_driver);
}


MODULE_AUTHOR("Jeff Garzik");
MODULE_DESCRIPTION("Promise ATA TX2/TX4/TX4000 low-level driver");
MODULE_LICENSE("GPL");