With the fix in the second hunk, I don't see any reason not to turn on
MEMORY_MAPPED_IO in qla1280. It seems to work fine on my machine
with this controller (ia64 Big Sur).
--david
diff -Nru a/drivers/scsi/qla1280.c b/drivers/scsi/qla1280.c
--- a/drivers/scsi/qla1280.c Sat May 10 01:47:43 2003
+++ b/drivers/scsi/qla1280.c Sat May 10 01:47:43 2003
@@ -284,7 +284,7 @@
#define QL1280_TARGET_MODE_SUPPORT 0 /* Target mode support */
#define QL1280_LUN_SUPPORT 0
#define WATCHDOGTIMER 0
-#define MEMORY_MAPPED_IO 0
+#define MEMORY_MAPPED_IO 1
#define DEBUG_QLA1280_INTR 0
#define USE_NVRAM_DEFAULTS 0
#define DEBUG_PRINT_NVRAM 0
@@ -2634,7 +2634,7 @@
/*
* Get memory mapped I/O address.
*/
- pci_read_config_word (ha->pdev, PCI_BASE_ADDRESS_1, &mmapbase);
+ pci_read_config_dword (ha->pdev, PCI_BASE_ADDRESS_1, &mmapbase);
mmapbase &= PCI_BASE_ADDRESS_MEM_MASK;
/*
> @@ -2634,7 +2634,7 @@
> /*
> * Get memory mapped I/O address.
> */
> - pci_read_config_word (ha->pdev, PCI_BASE_ADDRESS_1, &mmapbase);
> + pci_read_config_dword (ha->pdev, PCI_BASE_ADDRESS_1, &mmapbase);
> mmapbase &= PCI_BASE_ADDRESS_MEM_MASK;
>
>
shouldn't this be pci_resource_start() ?
>>>>> On 10 May 2003 12:15:08 +0200, Arjan van de Ven <[email protected]> said:
>> @@ -2634,7 +2634,7 @@
>> /*
>> * Get memory mapped I/O address.
>> */
>> - pci_read_config_word (ha->pdev, PCI_BASE_ADDRESS_1, &mmapbase);
>> + pci_read_config_dword (ha->pdev, PCI_BASE_ADDRESS_1, &mmapbase);
>> mmapbase &= PCI_BASE_ADDRESS_MEM_MASK;
Arjan> shouldn't this be pci_resource_start() ?
Probably should be. I wanted a minimal fix, because if you start
cleaning up qla1280, it won't stop there... ;-(
--david
On Sat, 2003-05-10 at 02:51, David Mosberger wrote:
> With the fix in the second hunk, I don't see any reason not to turn on
> MEMORY_MAPPED_IO in qla1280. It seems to work fine on my machine
> with this controller (ia64 Big Sur).
David, you absolute MAY NOT pass this:
> - pci_read_config_word (ha->pdev, PCI_BASE_ADDRESS_1, &mmapbase);
> + pci_read_config_dword (ha->pdev, PCI_BASE_ADDRESS_1, &mmapbase);
into ioremap() which is exactly what this driver is doing.
One must use the PCI device struct resource values.
--
David S. Miller <[email protected]>
>>>>> On 10 May 2003 04:30:11 -0700, "David S. Miller" <[email protected]> said:
DaveM> On Sat, 2003-05-10 at 02:51, David Mosberger wrote:
>> With the fix in the second hunk, I don't see any reason not to turn on
>> MEMORY_MAPPED_IO in qla1280. It seems to work fine on my machine
>> with this controller (ia64 Big Sur).
DaveM> David, you absolute MAY NOT pass this:
Me? It's the driver that's doing it! ;-)
--david
From: David Mosberger <[email protected]>
Date: Sat, 10 May 2003 04:34:42 -0700
>>>>> On 10 May 2003 04:30:11 -0700, "David S. Miller" <[email protected]> said:
DaveM> David, you absolute MAY NOT pass this:
Me? It's the driver that's doing it! ;-)
It won't do it until your changes :-)
>>>>> "Arjan" == Arjan van de Ven <[email protected]> writes:
>> @@ -2634,7 +2634,7 @@ /* * Get memory mapped I/O address. */ -
>> pci_read_config_word (ha->pdev, PCI_BASE_ADDRESS_1, &mmapbase); +
>> pci_read_config_dword (ha->pdev, PCI_BASE_ADDRESS_1, &mmapbase);
>> mmapbase &= PCI_BASE_ADDRESS_MEM_MASK;
>>
>>
Arjan> shouldn't this be pci_resource_start() ?
Yep,
The existing code is a nightmare, I am working on cleaning this up so
we can get rid of all the I/O ports crap.
Jes
On 135, 05 15, 2003 at 11:52:45AM -0400, Jes Sorensen wrote:
> >>>>> "Arjan" == Arjan van de Ven <[email protected]> writes:
>
> >> @@ -2634,7 +2634,7 @@ /* * Get memory mapped I/O address. */ -
> >> pci_read_config_word (ha->pdev, PCI_BASE_ADDRESS_1, &mmapbase); +
> >> pci_read_config_dword (ha->pdev, PCI_BASE_ADDRESS_1, &mmapbase);
> >> mmapbase &= PCI_BASE_ADDRESS_MEM_MASK;
> >>
> >>
> Arjan> shouldn't this be pci_resource_start() ?
>
> Yep,
>
> The existing code is a nightmare, I am working on cleaning this up so
> we can get rid of all the I/O ports crap.
Do you want to convert this driver to use memmaped io only ?
That's bad news for me and visws subarch.
--
Andrey Panin | Embedded systems software developer
[email protected] | PGP key: wwwkeys.pgp.net