All of lore.kernel.org
 help / color / mirror / Atom feed
From: Sergei Shtylyov <sshtylyov@ru.mvista.com>
To: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
Cc: linux-ide@vger.kernel.org, linux-kernel@vger.kernel.org
Subject: Re: [PATCH 3/4] ide: add struct ide_dma_ops
Date: Fri, 11 Apr 2008 17:11:10 +0400	[thread overview]
Message-ID: <47FF636E.4070903@ru.mvista.com> (raw)
In-Reply-To: <200803181512.50134.bzolnier@gmail.com>

Hello.

Bartlomiej Zolnierkiewicz wrote:

>>    Now where is the code which selects the correct dma_ops for the 
>>> HPT36x/370/372/372N chip with device ID 4 I'm asking you?  :-) 

> fixed

    Not actually... :-/

> From: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
> Subject: [PATCH] ide: add struct ide_dma_ops (take 2)

> Add struct ide_dma_ops and convert core code + drivers to use it.

> While at it:

> * Drop "ide_" prefix from ->ide_dma_end and ->ide_dma_test_irq methods.

> * Drop "ide_" "infixes" from DMA methods.

> * au1xxx-ide.c:
>   - use auide_dma_{test_irq,end}() directly in auide_dma_timeout()

> * pdc202xx_old.c:
>   - drop "old_" "infixes" from DMA methods

> * siimage.c:
>   - add siimage_dma_test_irq() helper
>   - print SATA warning in siimage_init_one()

> * Remove no longer needed ->init_hwif implementations.

> v2:
> * Changes based on review from Sergei:
>   - s/siimage_ide_dma_test_irq/siimage_dma_test_irq/
>   - s/drive->hwif/hwif/ in idefloppy_pc_intr().
>   - fix patch description w.r.t. au1xxx-ide changes
>   - fix au1xxx-ide build
>   - fix naming for cmd64*_dma_ops
>   - drop "ide_" and "old_" infixes
>   - s/hpt3xxx_dma_ops/hpt37x_dma_ops/
>   - s/hpt370x_dma_ops/hpt370_dma_ops/
>   - use correct DMA ops for HPT302/N, HPT371/N and HPT374
>   - s/it821x_smart_dma_ops/it821x_pass_through_dma_ops/

> Cc: Sergei Shtylyov <sshtylyov@ru.mvista.com>
> Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>

    Unfortunately, you'll have to try one more... ;-)

> Index: b/drivers/ide/pci/hpt366.c
> ===================================================================
> --- a/drivers/ide/pci/hpt366.c
> +++ b/drivers/ide/pci/hpt366.c
[...]
> @@ -1428,6 +1415,21 @@ static const struct ide_port_ops hpt3xx_
>  	.cable_detect		= hpt3xx_cable_detect,
>  };
>  
> +static struct ide_dma_ops hpt37x_dma_ops = {
> +	.dma_end		= hpt374_dma_end,
> +	.dma_test_irq		= hpt374_dma_test_irq,
> +};
> +
> +static struct ide_dma_ops hpt370_dma_ops = {
> +	.dma_start		= hpt370_dma_start,
> +	.dma_end		= hpt370_dma_end,
> +	.dma_timeout		= hpt370_dma_timeout,
> +};
> +
> +static struct ide_dma_ops hpt36x_dma_ops = {
> +	.dma_lost_irq		= hpt366_dma_lost_irq,
> +};
> +
>  static const struct ide_port_info hpt366_chipsets[] __devinitdata = {
>  	{	/* 0 */
>  		.name		= "HPT36x",
> @@ -1442,6 +1444,7 @@ static const struct ide_port_info hpt366
>  		 */
>  		.enablebits	= {{0x50,0x10,0x10}, {0x54,0x04,0x04}},
>  		.port_ops	= &hpt3xx_port_ops,
> +		.dma_ops	= &hpt36x_dma_ops,
>  		.host_flags	= IDE_HFLAGS_HPT3XX | IDE_HFLAG_SINGLE,
>  		.pio_mask	= ATA_PIO4,
>  		.mwdma_mask	= ATA_MWDMA2,

    I'm still not seeing the code to deals with the PCI device ID 4 which may 
be HPT36x, or HPT370, or HPT372[N] depending on revision -- you're always 
giving hpt36x_dma_ops to it...

> @@ -1483,6 +1489,7 @@ static const struct ide_port_info hpt366
>  		.enablebits	= {{0x50,0x04,0x04}, {0x54,0x04,0x04}},
>  		.udma_mask	= ATA_UDMA5,
>  		.port_ops	= &hpt3xx_port_ops,
> +		.dma_ops	= &hpt370_dma_ops,

    Wrong -- HPT374 should have hpt37x_dma_ops...

MBR, Sergei

  reply	other threads:[~2008-04-11 13:11 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-03-09 16:00 [PATCH 3/4] ide: add struct ide_dma_ops Bartlomiej Zolnierkiewicz
2008-03-12 19:27 ` Sergei Shtylyov
2008-03-18 14:12   ` Bartlomiej Zolnierkiewicz
2008-04-11 13:11     ` Sergei Shtylyov [this message]
2008-04-12 12:32       ` Bartlomiej Zolnierkiewicz
2008-04-12 17:54         ` Sergei Shtylyov

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=47FF636E.4070903@ru.mvista.com \
    --to=sshtylyov@ru.mvista.com \
    --cc=bzolnier@gmail.com \
    --cc=linux-ide@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.