2002-02-11 05:12:11

by Nathaniel Russell

[permalink] [raw]
Subject: [PATCH] 2.5.3-dj5 synclink.c fix so that it compiles

This is a temp fix for thje synclink.c file in drivers/char it work's for me
so DJ will you please apply this patch.
Thank you Victor Torres.
All it does it removes the #error please convert me to
Documentation/DMA-mapping.txt
it compiles and work's great for me.
Please apply


Attachments:
synclink.diff (372.00 B)

2002-02-11 09:56:19

by Jens Axboe

[permalink] [raw]
Subject: Re: [PATCH] 2.5.3-dj5 synclink.c fix so that it compiles

On Mon, Feb 11 2002, reddog83 wrote:
> This is a temp fix for thje synclink.c file in drivers/char it work's for me
> so DJ will you please apply this patch.
> Thank you Victor Torres.
> All it does it removes the #error please convert me to
> Documentation/DMA-mapping.txt
> it compiles and work's great for me.

I find this _really_ hard to believe. It may compile, but does it link?

> Please apply

Not really

--
Jens Axboe

2002-02-11 15:41:03

by Paul Fulghum

[permalink] [raw]
Subject: Re: [PATCH] 2.5.3-dj5 synclink.c fix so that it compiles

> This is a temp fix for thje synclink.c file in drivers/char it work's for
me
> so DJ will you please apply this patch.
> Thank you Victor Torres.
> All it does it removes the #error please convert me to
> Documentation/DMA-mapping.txt
> it compiles and work's great for me.
> Please apply

There is nothing in the DMA-mapping.txt that
applies to the PCI version of the synclink adapter
(which does not do DMA to/from system memory).

The ISA version of the synclink adapter does do
ISA DMA bus master transfers. After reading
DMA-mapping.txt twice it is unclear what changes
need to be applied. The documentation seems to imply
that ISA devices need to make some pci_xxx calls.
I'm not sure how this works when there is no PCI bus.

For now, removing the #error line should work fine
for the PCI adapter and probably for the ISA as well.

I will look at this again as time allows.

I usually wait 6-12 months after the new development
kernel opens before attempting to sync my drivers
to the latest changes. This avoids most of the eat-your-file-system
phase, prevents wasting time chasing after a rapidly changing API,
and still leaves another 12 months for tweaking.

Paul Fulghum, [email protected]
Microgate Corporation, http://www.microgate.com

2002-02-11 20:47:41

by Nathaniel Russell

[permalink] [raw]
Subject: Re: [PATCH] 2.5.3-dj5 synclink.c fix so that it compiles

Paul-
That is understandable. I had the same guess as you when I made this patch.
Why is ths synclink.c driver using DMA Mapping. After I took that line out I
was fine becuase my system is fine.

On Monday 11 February 2002 10:38 am, you wrote:
> > This is a temp fix for thje synclink.c file in drivers/char it work's for
>
> me
>
> > so DJ will you please apply this patch.
> > Thank you Victor Torres.
> > All it does it removes the #error please convert me to
> > Documentation/DMA-mapping.txt
> > it compiles and work's great for me.
> > Please apply
>
> There is nothing in the DMA-mapping.txt that
> applies to the PCI version of the synclink adapter
> (which does not do DMA to/from system memory).
>
> The ISA version of the synclink adapter does do
> ISA DMA bus master transfers. After reading
> DMA-mapping.txt twice it is unclear what changes
> need to be applied. The documentation seems to imply
> that ISA devices need to make some pci_xxx calls.
> I'm not sure how this works when there is no PCI bus.
>
> For now, removing the #error line should work fine
> for the PCI adapter and probably for the ISA as well.
>
> I will look at this again as time allows.
>
> I usually wait 6-12 months after the new development
> kernel opens before attempting to sync my drivers
> to the latest changes. This avoids most of the eat-your-file-system
> phase, prevents wasting time chasing after a rapidly changing API,
> and still leaves another 12 months for tweaking.
>
> Paul Fulghum, [email protected]
> Microgate Corporation, http://www.microgate.com

2002-02-12 06:57:19

by Jens Axboe

[permalink] [raw]
Subject: Re: [PATCH] 2.5.3-dj5 synclink.c fix so that it compiles

On Mon, Feb 11 2002, reddog83 wrote:
> Paul-
> That is understandable. I had the same guess as you when I made this patch.
> Why is ths synclink.c driver using DMA Mapping. After I took that line out I
> was fine becuase my system is fine.

The "real" fix for synclink is just something like this, afaics.

# This is a BitKeeper generated patch for the following project:
# Project Name: Linux kernel tree
# This patch format is intended for GNU patch command version 2.5 or higher.
# This patch includes the following deltas:
# ChangeSet 1.275 -> 1.276
# drivers/char/synclink.c 1.11 -> 1.12
#
# The following is the BitKeeper ChangeSet Log
# --------------------------------------------
# 02/02/12 [email protected] 1.276
# synclink is an ISA-only driver, so just use isa_virt_to_bus to make
# it work
# --------------------------------------------
#
diff -Nru a/drivers/char/synclink.c b/drivers/char/synclink.c
--- a/drivers/char/synclink.c Tue Feb 12 07:55:54 2002
+++ b/drivers/char/synclink.c Tue Feb 12 07:55:54 2002
@@ -60,8 +60,6 @@
# define BREAKPOINT() { }
#endif

-#error Please convert me to Documentation/DMA-mapping.txt
-
#define MAX_ISA_DEVICES 10
#define MAX_PCI_DEVICES 10
#define MAX_TOTAL_DEVICES 20
@@ -3985,7 +3983,7 @@
if ( info->buffer_list == NULL )
return -ENOMEM;

- info->buffer_list_phys = virt_to_bus(info->buffer_list);
+ info->buffer_list_phys = isa_virt_to_bus(info->buffer_list);
}

/* We got the memory for the buffer entry lists. */
@@ -4096,7 +4094,7 @@
kmalloc(DMABUFFERSIZE, GFP_KERNEL | GFP_DMA);
if ( BufferList[i].virt_addr == NULL )
return -ENOMEM;
- phys_addr = virt_to_bus(BufferList[i].virt_addr);
+ phys_addr = isa_virt_to_bus(BufferList[i].virt_addr);
}
BufferList[i].phys_addr = phys_addr;
}

--
Jens Axboe

2002-02-12 07:04:10

by Jens Axboe

[permalink] [raw]
Subject: Re: [PATCH] 2.5.3-dj5 synclink.c fix so that it compiles

On Tue, Feb 12 2002, Jens Axboe wrote:
> On Mon, Feb 11 2002, reddog83 wrote:
> > Paul-
> > That is understandable. I had the same guess as you when I made this patch.
> > Why is ths synclink.c driver using DMA Mapping. After I took that line out I
> > was fine becuase my system is fine.
>
> The "real" fix for synclink is just something like this, afaics.

Agrh, scratch that. It's not ISA only of course, my bad.

--
Jens Axboe

2002-02-12 07:08:20

by Jens Axboe

[permalink] [raw]
Subject: Re: [PATCH] 2.5.3-dj5 synclink.c fix so that it compiles

On Tue, Feb 12 2002, Jens Axboe wrote:
> On Tue, Feb 12 2002, Jens Axboe wrote:
> > On Mon, Feb 11 2002, reddog83 wrote:
> > > Paul-
> > > That is understandable. I had the same guess as you when I made this patch.
> > > Why is ths synclink.c driver using DMA Mapping. After I took that line out I
> > > was fine becuase my system is fine.
> >
> > The "real" fix for synclink is just something like this, afaics.
>
> Agrh, scratch that. It's not ISA only of course, my bad.

For fsck sake, that path was ISA only... Ok, time for coffee.

--
Jens Axboe

2002-02-12 07:14:00

by David Miller

[permalink] [raw]
Subject: Re: [PATCH] 2.5.3-dj5 synclink.c fix so that it compiles

From: Jens Axboe <[email protected]>
Date: Tue, 12 Feb 2002 07:56:36 +0100

On Mon, Feb 11 2002, reddog83 wrote:
> Paul-
> That is understandable. I had the same guess as you when I made this patch.
> Why is ths synclink.c driver using DMA Mapping. After I took that line out I
> was fine becuase my system is fine.

The "real" fix for synclink is just something like this, afaics.

It is a PCI driver Jens, this change is not correct.

2002-02-12 07:15:10

by Jens Axboe

[permalink] [raw]
Subject: Re: [PATCH] 2.5.3-dj5 synclink.c fix so that it compiles

On Mon, Feb 11 2002, David S. Miller wrote:
> From: Jens Axboe <[email protected]>
> Date: Tue, 12 Feb 2002 07:56:36 +0100
>
> On Mon, Feb 11 2002, reddog83 wrote:
> > Paul-
> > That is understandable. I had the same guess as you when I made this patch.
> > Why is ths synclink.c driver using DMA Mapping. After I took that line out I
> > was fine becuase my system is fine.
>
> The "real" fix for synclink is just something like this, afaics.
>
> It is a PCI driver Jens, this change is not correct.

See my repeated follow-ups :-)

--
Jens Axboe

2002-02-12 14:27:04

by Paul Fulghum

[permalink] [raw]
Subject: Re: [PATCH] 2.5.3-dj5 synclink.c fix so that it compiles

> > The "real" fix for synclink is just something like this, afaics.
> >
> > It is a PCI driver Jens, this change is not correct.
>
> See my repeated follow-ups :-)

It is an ISA and PCI driver, but only the ISA adapter
uses DMA and requires DMA mapping.

Thanks for the patch Jens.

Paul Fulghum, [email protected]
Microgate Corporation, http://www.microgate.com