From: Jeremy Higdon <jeremy@sgi.com>
To: Sergei Shtylyov <sshtylyov@ru.mvista.com>
Cc: Jes Sorensen <jes@sgi.com>, Brent Casavant <bcasavan@sgi.com>,
jpk@sgi.com, Andrew Morton <akpm@osdl.org>,
Alan Cox <alan@lxorguk.ukuu.org.uk>,
Linux IDE <linux-ide@vger.kernel.org>
Subject: Re: [Fwd: - ide-remove-dma_base2-field-form-ide_hwif_t.patch removed from -mm tree]
Date: Mon, 24 Jul 2006 15:57:03 -0700 [thread overview]
Message-ID: <20060724225703.GD776006@sgi.com> (raw)
In-Reply-To: <44C52CCE.7070204@ru.mvista.com>
On Tue, Jul 25, 2006 at 12:25:50AM +0400, Sergei Shtylyov wrote:
> Hello.
>
> Alan and Andrew wanted me to coordinate the change with SGI before
> recasting this patch because the sgiioc4.c is the only real user of the
> 'dma_base2' field which the IDE maintaner wanted me to remove. The use of
> this field in this driver doesn't seem necessary or even well grounded --
> hwif_data seem to fit the task better... Will you ACK this change?
>
> WBR, Sergei
This patch won't apply with the line wrapping in the email. Can you please
resend? You can turn off the "format=flowed" tag in your mailer or send as
an attachment.
The field is necessary for proper operation of the driver.
jeremy
> -------- Original Message --------
> Subject: - ide-remove-dma_base2-field-form-ide_hwif_t.patch removed from
> -mm tree
> Date: Mon, 26 Jun 2006 11:19:17 -0700
> From: akpm@osdl.org
> To: sshtylyov@ru.mvista.com, alan@lxorguk.ukuu.org.uk,
> B.Zolnierkiewicz@elka.pw.edu.pl, mm-commits@vger.kernel.org
>
>
> The patch titled
>
> IDE: remove 'dma_base2' field form 'ide_hwif_t'
>
> has been removed from the -mm tree. Its filename is
>
> ide-remove-dma_base2-field-form-ide_hwif_t.patch
>
> This patch was dropped because it conflicts with ide-clean-up-siimage.patch
>
> ------------------------------------------------------
> Subject: IDE: remove 'dma_base2' field form 'ide_hwif_t'
> From: Sergei Shtylylov <sshtylyov@ru.mvista.com>
>
>
> Remove 'dma_base2' field from 'ide_hwif_t' as it's used only by 2 drivers
> and without a great need.
>
> Signed-off-by: Sergei Shtylyov <sshtylyov@ru.mvista.com>
> Cc: Bartlomiej Zolnierkiewicz <B.Zolnierkiewicz@elka.pw.edu.pl>
> Cc: Alan Cox <alan@lxorguk.ukuu.org.uk>
> Signed-off-by: Andrew Morton <akpm@osdl.org>
> ---
>
> drivers/ide/ide-dma.c | 14 +-------------
> drivers/ide/pci/sgiioc4.c | 22 ++++++++++------------
> include/linux/ide.h | 1 -
> 3 files changed, 11 insertions(+), 26 deletions(-)
>
> diff -puN drivers/ide/ide-dma.c~ide-remove-dma_base2-field-form-ide_hwif_t
> drivers/ide/ide-dma.c
> --- a/drivers/ide/ide-dma.c~ide-remove-dma_base2-field-form-ide_hwif_t
> +++ a/drivers/ide/ide-dma.c
> @@ -802,8 +802,6 @@ static int ide_release_iomio_dma(ide_hwi
> release_region(hwif->dma_base, 8);
> if (hwif->extra_ports)
> release_region(hwif->extra_base, hwif->extra_ports);
> - if (hwif->dma_base2)
> - release_region(hwif->dma_base, 8);
> return 1;
> }
>
> @@ -877,19 +875,9 @@ static int ide_iomio_dma(ide_hwif_t *hwi
> }
>
> if(hwif->mate)
> - hwif->dma_master = (hwif->channel) ? hwif->mate->dma_base :
> base;
> + hwif->dma_master = (hwif->channel) ?
> hwif->mate->dma_base:base;
> else
> hwif->dma_master = base;
> - if (hwif->dma_base2) {
> - if (!request_region(hwif->dma_base2, ports, hwif->name))
> - {
> - printk(" -- Error, secondary ports in use.\n");
> - release_region(base, ports);
> - if (hwif->extra_ports)
> - release_region(hwif->extra_base,
> hwif->extra_ports);
> - return 1;
> - }
> - }
> return 0;
> }
>
> diff -puN
> drivers/ide/pci/sgiioc4.c~ide-remove-dma_base2-field-form-ide_hwif_t
> drivers/ide/pci/sgiioc4.c
> --- a/drivers/ide/pci/sgiioc4.c~ide-remove-dma_base2-field-form-ide_hwif_t
> +++ a/drivers/ide/pci/sgiioc4.c
> @@ -220,7 +220,7 @@ sgiioc4_ide_dma_end(ide_drive_t * drive)
> ide_hwif_t *hwif = HWIF(drive);
> u64 dma_base = hwif->dma_base;
> int dma_stat = 0;
> - unsigned long *ending_dma = (unsigned long *) hwif->dma_base2;
> + unsigned long *ending_dma = ide_get_hwifdata(hwif);
>
> hwif->OUTL(IOC4_S_DMA_STOP, dma_base + IOC4_DMA_CTRL * 4);
>
> @@ -367,7 +367,8 @@ sgiioc4_INB(unsigned long port)
> static void __devinit
> ide_dma_sgiioc4(ide_hwif_t * hwif, unsigned long dma_base)
> {
> - int num_ports = sizeof (ioc4_dma_regs_t);
> + int num_ports = sizeof(ioc4_dma_regs_t);
> + void *pad;
>
> printk(KERN_INFO "%s: BM-DMA at 0x%04lx-0x%04lx\n", hwif->name,
> dma_base, dma_base + num_ports - 1);
> @@ -391,17 +392,14 @@ ide_dma_sgiioc4(ide_hwif_t * hwif, unsig
>
> hwif->sg_max_nents = IOC4_PRD_ENTRIES;
>
> - hwif->dma_base2 = (unsigned long)
> - pci_alloc_consistent(hwif->pci_dev,
> - IOC4_IDE_CACHELINE_SIZE,
> - (dma_addr_t *) &(hwif->dma_status));
> + pad = pci_alloc_consistent(hwif->pci_dev, IOC4_IDE_CACHELINE_SIZE,
> + (dma_addr_t *) &(hwif->dma_status));
>
> - if (!hwif->dma_base2)
> - goto dma_base2alloc_failure;
> -
> - return;
> + if (pad) {
> + ide_set_hwifdata(hwif, pad);
> + return;
> + }
>
> -dma_base2alloc_failure:
> pci_free_consistent(hwif->pci_dev,
> IOC4_PRD_ENTRIES * IOC4_PRD_BYTES,
> hwif->dmatable_cpu, hwif->dmatable_dma);
> @@ -461,7 +459,7 @@ sgiioc4_configure_for_dma(int dma_direct
> hwif->OUTL(dma_addr, dma_base + IOC4_DMA_PTR_L * 4);
>
> /* Address of the Ending DMA */
> - memset((unsigned int *) hwif->dma_base2, 0, IOC4_IDE_CACHELINE_SIZE);
> + memset(ide_get_hwifdata(hwif), 0, IOC4_IDE_CACHELINE_SIZE);
> ending_dma_addr = cpu_to_le32(hwif->dma_status);
> hwif->OUTL(ending_dma_addr, dma_base + IOC4_DMA_END_ADDR * 4);
>
> diff -puN
> drivers/ide/pci/siimage.c~ide-remove-dma_base2-field-form-ide_hwif_t
> drivers/ide/pci/siimage.c
> diff -puN include/linux/ide.h~ide-remove-dma_base2-field-form-ide_hwif_t
> include/linux/ide.h
> --- a/include/linux/ide.h~ide-remove-dma_base2-field-form-ide_hwif_t
> +++ a/include/linux/ide.h
> @@ -773,7 +773,6 @@ typedef struct hwif_s {
> unsigned long dma_status; /* dma status register */
> unsigned long dma_vendor3; /* dma vendor 3 register */
> unsigned long dma_prdtable; /* actual prd table address */
> - unsigned long dma_base2; /* extended base addr for dma ports
> */
>
> unsigned long config_data; /* for use by chipset-specific code
> */
> unsigned long select_data; /* for use by chipset-specific code
> */
> _
>
> Patches currently in -mm which might be from sshtylyov@ru.mvista.com are
>
> origin.patch
> ide-actually-honor-drives-minimum-pio-dma-cycle-times.patch
> ide-pdc202xx_old-remove-the-obsolete-busproc.patch
> pdc202xx_old-depends-on-config_blk_dev_idedma.patch
> remove-code-that-has-long-been-commented-out-from-pdc20265_old.patch
> ide-clean-up-siimage.patch
> ide-claim-extra-dma-ports-regardless-of-channel.patch
> ide-remove-dma_base2-field-form-ide_hwif_t.patch
> ide-always-release-dma-engine.patch
> ide-hpt3xxn-clocking-fixes.patch
> ide-fix-hpt37x-timing-tables.patch
> ide-optimize-hpt37x-timing-tables.patch
> ide-fix-hpt3xx-hotswap-support.patch
> ide-fix-the-case-of-multiple-hpt3xx-chips-present.patch
> ide-hpt3xx-fix-pci-clock-detection.patch
> ide-hpt3xx-fix-pci-clock-detection-fix-2.patch
> piix-fix-82371mx-enablebits.patch
> piix-remove-check-for-broken-mw-dma-mode-0.patch
> piix-slc90e66-pio-mode-fallback-fix.patch
> ide_dma_speed-fixes.patch
> hpt3xx-rework-rate-filtering.patch
> hpt3xx-rework-rate-filtering-tidy.patch
> hpt3xx-print-the-real-chip-name-at-startup.patch
> hpt3xx-switch-to-using-pci_get_slot.patch
> hpt3xx-cache-channels-mcr-address.patch
> hpt3x7-merge-speedproc-handlers.patch
> hpt370-clean-up-dma-timeout-handling.patch
> enable-cdrom-dma-access-with-pdc20265_old.patch
next prev parent reply other threads:[~2006-07-24 22:57 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2006-07-24 20:25 [Fwd: - ide-remove-dma_base2-field-form-ide_hwif_t.patch removed from -mm tree] Sergei Shtylyov
2006-07-24 22:57 ` Jeremy Higdon [this message]
2006-07-26 19:21 ` [PATCH] remove dma_base2 field form ide_hwif_t Sergei Shtylyov
2006-07-26 19:23 ` [Fwd: - ide-remove-dma_base2-field-form-ide_hwif_t.patch removed from -mm tree] Sergei Shtylyov
2006-07-26 19:29 ` Brent Casavant
2006-07-25 18:25 ` Alan Cox
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=20060724225703.GD776006@sgi.com \
--to=jeremy@sgi.com \
--cc=akpm@osdl.org \
--cc=alan@lxorguk.ukuu.org.uk \
--cc=bcasavan@sgi.com \
--cc=jes@sgi.com \
--cc=jpk@sgi.com \
--cc=linux-ide@vger.kernel.org \
--cc=sshtylyov@ru.mvista.com \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).