Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 145024
b: refs/heads/master
c: 19799bf
h: refs/heads/master
v: v3
  • Loading branch information
David Milburn authored and Jeff Garzik committed May 15, 2009
1 parent 3c80fb7 commit fcf3ac3
Show file tree
Hide file tree
Showing 2 changed files with 10 additions and 14 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: 67651ee5710c45ea62fae68b768d65395ccf47c2
refs/heads/master: 19799bfc5da476ad72eecc5f0f9018c5d351cbd5
22 changes: 9 additions & 13 deletions trunk/drivers/ata/sata_sx4.c
Original file line number Diff line number Diff line change
Expand Up @@ -687,8 +687,11 @@ static void pdc20621_packet_start(struct ata_queued_cmd *qc)
static unsigned int pdc20621_qc_issue(struct ata_queued_cmd *qc)
{
switch (qc->tf.protocol) {
case ATA_PROT_DMA:
case ATA_PROT_NODATA:
if (qc->tf.flags & ATA_TFLAG_POLLING)
break;
/*FALLTHROUGH*/
case ATA_PROT_DMA:
pdc20621_packet_start(qc);
return 0;

Expand Down Expand Up @@ -787,12 +790,7 @@ static inline unsigned int pdc20621_host_intr(struct ata_port *ap,

static void pdc20621_irq_clear(struct ata_port *ap)
{
struct ata_host *host = ap->host;
void __iomem *mmio = host->iomap[PDC_MMIO_BAR];

mmio += PDC_CHIP0_OFS;

readl(mmio + PDC_20621_SEQMASK);
ioread8(ap->ioaddr.status_addr);
}

static irqreturn_t pdc20621_interrupt(int irq, void *dev_instance)
Expand Down Expand Up @@ -877,14 +875,12 @@ static void pdc_freeze(struct ata_port *ap)
static void pdc_thaw(struct ata_port *ap)
{
void __iomem *mmio = ap->ioaddr.cmd_addr;
void __iomem *mmio_base;
u32 tmp;

/* FIXME: start HDMA engine, if zero ATA engines running */

/* reading SEQ mask register clears IRQ */
mmio_base = ap->host->iomap[PDC_MMIO_BAR] + PDC_CHIP0_OFS;
readl(mmio_base + PDC_20621_SEQMASK);
/* clear IRQ */
ioread8(ap->ioaddr.status_addr);

/* turn IRQ back on */
tmp = readl(mmio + PDC_CTLSTAT);
Expand Down Expand Up @@ -974,15 +970,15 @@ static int pdc_check_atapi_dma(struct ata_queued_cmd *qc)
static void pdc_tf_load_mmio(struct ata_port *ap, const struct ata_taskfile *tf)
{
WARN_ON(tf->protocol == ATA_PROT_DMA ||
tf->protocol == ATA_PROT_NODATA);
tf->protocol == ATAPI_PROT_DMA);
ata_sff_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 ||
tf->protocol == ATA_PROT_NODATA);
tf->protocol == ATAPI_PROT_DMA);
ata_sff_exec_command(ap, tf);
}

Expand Down

0 comments on commit fcf3ac3

Please sign in to comment.