[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <200911171835.05232.bzolnier@gmail.com>
Date: Tue, 17 Nov 2009 18:35:05 +0100
From: Bartlomiej Zolnierkiewicz <bzolnier@...il.com>
To: Alan Cox <alan@...ux.intel.com>
Cc: linux-kernel@...r.kernel.org, linux-ide@...r.kernel.org
Subject: Re: [PATCH 3/5] cmd64x: implement serialization as per notes
On Tuesday 17 November 2009 15:51:32 Alan Cox wrote:
> +struct cmd_priv
> +{
> + int dma_live; /* Channel using DMA */
> + int irq_t[2]; /* Register to check for IRQ */
> + int irq_m[2]; /* Bit to check */
> +};
irq_t and irq_m content will be identical for all host instances
so you may as well add one instance for it, use ->private_data to
store dma_live information and remove cmd_priv allocation
> + /* If the other port is not live then issue the command */
> + if (alt == NULL || !alt->qc_active) {
> + if (dma)
> + priv->dma_live = qc->ap->port_no;
> + return 0;
> + }
> + /* If there is a live DMA command then wait */
> + if (priv->dma_live != -1)
> + return ATA_DEFER_PORT;
> + if (dma) {
> + /* Cannot overlap our DMA command */
> + if (alt->qc_active)
> + return ATA_DEFER_PORT;
no need to check alt->qc_active again here
--
Bartlomiej Zolnierkiewicz
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists