lkml.org 
[lkml]   [2001]   [Dec]   [1]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patches in this message
/
Date
From
SubjectPATCH: 2 small patches against 2.4.17-pre2 (sym2 + email change)

Hi Marcelo,

On Fri, 30 Nov 2001, Marcelo Tosatti wrote:

> On Tue, 27 Nov 2001, Gérard Roudier wrote:
>
> Sorry for the delay, I saved this mail to my pending list... :)

No problem, Marcelo and thanks very much for the reply.

I just switched to your 2.4.17-pre2 kernel and updated my patches
accordingly (attached).

Here is the log of sym-2 driver changes (patch #2):

* version sym-2.1.17
- Fix a couple of gcc/gcc3 warnings.
- Allocate separately from the HCB the array for CCBs hashed by DSA.
All driver memory allocations are now not greater than 1 PAGE
even on PPC64 / 4KB PAGE surprising setup.

* version sym-2.1.17a
- Use u_long instead of U32 for the IO base cookie. This is more
consistent with what archs are expecting.
- Use MMIO per default for Power PC instead of some fake normal IO,
as Paul Mackerras stated that MMIO works fine now on this arch.

There are no real fixes. Most changes are conveniences for PPCs.

The patch #1 that updates my email address is more important since my old
email address will be no longer valid in a couple of weeks. This patch
also adds an entry in MAINTAINERS, btw.

[...]

> Well, basically, it seems Alan got tired of maintenance... :)

This may well have happened between linux-2.4.9 and linux-2.4.10. :)

> You can take a look at Alan's diary for more stuff.

Will do, thanks. But in fact, I just wanted to read something from Alan
about the maintainance baton being passed to you and I have been supplied
an URL that fitted just fine.

Regards,
Gérard.
--- /home/linux/v2.4/linux/CREDITS Sat Dec 1 19:04:19 2001
+++ linux/CREDITS Sat Dec 1 19:25:03 2001
@@ -2502,7 +2502,7 @@
S: Australia

N: Gerard Roudier
-E: groudier@iplus.fr
+E: groudier@free.fr
D: Contributed to asynchronous read-ahead improvement
S: 21 Rue Carnot
S: 95170 Deuil La Barre
--- /home/linux/v2.4/linux/MAINTAINERS Sat Dec 1 19:04:19 2001
+++ linux/MAINTAINERS Sat Dec 1 19:25:03 2001
@@ -924,6 +924,12 @@
W: http://www.sistina.com/lvm
S: Maintained

+LSILOGIC/SYMBIOS/NCR 53C8XX and 53C1010 PCI-SCSI drivers
+P: Gerard Roudier
+M: groudier@free.fr
+L: linux-scsi@vger.kernel.org
+S: Maintained
+
M68K
P: Jes Sorensen
M: jes@trained-monkey.org
--- /home/linux/v2.4/linux/drivers/scsi/README.ncr53c8xx Sun Aug 19 17:08:26 2001
+++ linux/drivers/scsi/README.ncr53c8xx Sat Dec 1 19:25:03 2001
@@ -1,6 +1,6 @@
The Linux NCR53C8XX/SYM53C8XX drivers README file

-Written by Gerard Roudier <groudier@club-internet.fr>
+Written by Gerard Roudier <groudier@free.fr>
21 Rue Carnot
95170 DEUIL LA BARRE - FRANCE

@@ -87,7 +87,7 @@

The initial Linux ncr53c8xx driver has been a port of the ncr driver from
FreeBSD that has been achieved in November 1995 by:
- Gerard Roudier <groudier@club-internet.fr>
+ Gerard Roudier <groudier@free.fr>

The original driver has been written for 386bsd and FreeBSD by:
Wolfgang Stanglmeier <wolf@cologne.de>
@@ -1287,7 +1287,7 @@
be sure I will receive it. Obviously, a bug in the driver code is
possible.

- My email address: Gerard Roudier <groudier@club-internet.fr>
+ My email address: Gerard Roudier <groudier@free.fr>

Allowing disconnections is important if you use several devices on
your SCSI bus but often causes problems with buggy devices.
--- /home/linux/v2.4/linux/drivers/scsi/ncr53c8xx.c Sat Dec 1 19:04:14 2001
+++ linux/drivers/scsi/ncr53c8xx.c Sat Dec 1 19:25:03 2001
@@ -22,7 +22,7 @@
** This driver has been ported to Linux from the FreeBSD NCR53C8XX driver
** and is currently maintained by
**
-** Gerard Roudier <groudier@club-internet.fr>
+** Gerard Roudier <groudier@free.fr>
**
** Being given that this driver originates from the FreeBSD version, and
** in order to keep synergy on both, any suggested enhancements and corrections
@@ -63,7 +63,7 @@
** August 18 1997 by Cort <cort@cs.nmt.edu>:
** Support for Power/PC (Big Endian).
**
-** June 20 1998 by Gerard Roudier <groudier@club-internet.fr>:
+** June 20 1998 by Gerard Roudier
** Support for up to 64 tags per lun.
** O(1) everywhere (C and SCRIPTS) for normal cases.
** Low PCI traffic for command handling when on-chip RAM is present.
--- /home/linux/v2.4/linux/drivers/scsi/ncr53c8xx.h Sun Apr 8 14:10:13 2001
+++ linux/drivers/scsi/ncr53c8xx.h Sat Dec 1 19:25:03 2001
@@ -22,7 +22,7 @@
** This driver has been ported to Linux from the FreeBSD NCR53C8XX driver
** and is currently maintained by
**
-** Gerard Roudier <groudier@club-internet.fr>
+** Gerard Roudier <groudier@free.fr>
**
** Being given that this driver originates from the FreeBSD version, and
** in order to keep synergy on both, any suggested enhancements and corrections
--- /home/linux/v2.4/linux/drivers/scsi/sym53c8xx.c Sat Dec 1 19:04:15 2001
+++ linux/drivers/scsi/sym53c8xx.c Sat Dec 1 19:25:03 2001
@@ -1,7 +1,7 @@
/******************************************************************************
** High Performance device driver for the Symbios 53C896 controller.
**
-** Copyright (C) 1998-2000 Gerard Roudier <groudier@club-internet.fr>
+** Copyright (C) 1998-2001 Gerard Roudier <groudier@free.fr>
**
** This driver also supports all the Symbios 53C8XX controller family,
** except 53C810 revisions < 16, 53C825 revisions < 16 and all
@@ -32,7 +32,7 @@
** The Linux port of the FreeBSD ncr driver has been achieved in
** november 1995 by:
**
-** Gerard Roudier <groudier@club-internet.fr>
+** Gerard Roudier <groudier@free.fr>
**
** Being given that this driver originates from the FreeBSD version, and
** in order to keep synergy on both, any suggested enhancements and corrections
--- /home/linux/v2.4/linux/drivers/scsi/sym53c8xx.h Wed Oct 3 22:13:53 2001
+++ linux/drivers/scsi/sym53c8xx.h Sat Dec 1 19:25:03 2001
@@ -1,7 +1,7 @@
/******************************************************************************
** High Performance device driver for the Symbios 53C896 controller.
**
-** Copyright (C) 1998-2000 Gerard Roudier <groudier@club-internet.fr>
+** Copyright (C) 1998-2001 Gerard Roudier <groudier@free.fr>
**
** This driver also supports all the Symbios 53C8XX controller family,
** except 53C810 revisions < 16, 53C825 revisions < 16 and all
@@ -32,7 +32,7 @@
** The Linux port of the FreeBSD ncr driver has been achieved in
** november 1995 by:
**
-** Gerard Roudier <groudier@club-internet.fr>
+** Gerard Roudier <groudier@free.fr>
**
** Being given that this driver originates from the FreeBSD version, and
** in order to keep synergy on both, any suggested enhancements and corrections
--- /home/linux/v2.4/linux/drivers/scsi/sym53c8xx_comm.h Sat Dec 1 19:04:15 2001
+++ linux/drivers/scsi/sym53c8xx_comm.h Sat Dec 1 19:25:03 2001
@@ -1,7 +1,7 @@
/******************************************************************************
** High Performance device driver for the Symbios 53C896 controller.
**
-** Copyright (C) 1998-2000 Gerard Roudier <groudier@club-internet.fr>
+** Copyright (C) 1998-2001 Gerard Roudier <groudier@free.fr>
**
** This driver also supports all the Symbios 53C8XX controller family,
** except 53C810 revisions < 16, 53C825 revisions < 16 and all
@@ -32,7 +32,7 @@
** The Linux port of the FreeBSD ncr driver has been achieved in
** november 1995 by:
**
-** Gerard Roudier <groudier@club-internet.fr>
+** Gerard Roudier <groudier@free.fr>
**
** Being given that this driver originates from the FreeBSD version, and
** in order to keep synergy on both, any suggested enhancements and corrections
--- /home/linux/v2.4/linux/drivers/scsi/sym53c8xx_defs.h Sat Dec 1 19:04:15 2001
+++ linux/drivers/scsi/sym53c8xx_defs.h Sat Dec 1 19:25:03 2001
@@ -1,7 +1,7 @@
/******************************************************************************
** High Performance device driver for the Symbios 53C896 controller.
**
-** Copyright (C) 1998-2000 Gerard Roudier <groudier@club-internet.fr>
+** Copyright (C) 1998-2001 Gerard Roudier <groudier@free.fr>
**
** This driver also supports all the Symbios 53C8XX controller family,
** except 53C810 revisions < 16, 53C825 revisions < 16 and all
@@ -32,7 +32,7 @@
** The Linux port of the FreeBSD ncr driver has been achieved in
** november 1995 by:
**
-** Gerard Roudier <groudier@club-internet.fr>
+** Gerard Roudier <groudier@free.fr>
**
** Being given that this driver originates from the FreeBSD version, and
** in order to keep synergy on both, any suggested enhancements and corrections--- /home/linux/v2.4/linux/drivers/scsi/sym53c8xx_2/ChangeLog.txt Sat Dec 1 19:04:18 2001
+++ linux/drivers/scsi/sym53c8xx_2/ChangeLog.txt Sat Dec 1 19:09:48 2001
@@ -128,3 +128,21 @@
* version sym-2.1.16-20011028
- Slightly simplify driver configuration.
- Prepare a new patch against linux-2.4.13.
+
+Sat Nov 17 10:00 2001 Gerard Roudier
+ * version sym-2.1.17
+ - Fix a couple of gcc/gcc3 warnings.
+ - Allocate separately from the HCB the array for CCBs hashed by DSA.
+ All driver memory allocations are now not greater than 1 PAGE
+ even on PPC64 / 4KB PAGE surprising setup.
+
+Sat Dec 01 18:00 2001 Gerard Roudier
+ * version sym-2.1.17a
+ - Use u_long instead of U32 for the IO base cookie. This is more
+ consistent with what archs are expecting.
+ - Use MMIO per default for Power PC instead of some fake normal IO,
+ as Paul Mackerras stated that MMIO works fine now on this arch.
+
+
+
+
--- /home/linux/v2.4/linux/drivers/scsi/sym53c8xx_2/sym53c8xx.h Sat Dec 1 19:04:18 2001
+++ linux/drivers/scsi/sym53c8xx_2/sym53c8xx.h Sat Dec 1 19:22:26 2001
@@ -130,17 +130,17 @@
#if !defined(HOSTS_C)

/*
- * Use normal IO if configured. Forced for alpha and powerpc.
- * Powerpc fails copying to on-chip RAM using memcpy_toio().
+ * Use normal IO if configured.
+ * Normal IO forced for alpha.
* Forced to MMIO for sparc.
*/
#if defined(__alpha__)
#define SYM_CONF_IOMAPPED
-#elif defined(__powerpc__)
-#define SYM_CONF_IOMAPPED
-#define SYM_OPT_NO_BUS_MEMORY_MAPPING
#elif defined(__sparc__)
#undef SYM_CONF_IOMAPPED
+/* #elif defined(__powerpc__) */
+/* #define SYM_CONF_IOMAPPED */
+/* #define SYM_OPT_NO_BUS_MEMORY_MAPPING */
#elif defined(CONFIG_SCSI_SYM53C8XX_IOMAPPED)
#define SYM_CONF_IOMAPPED
#endif
--- /home/linux/v2.4/linux/drivers/scsi/sym53c8xx_2/sym_glue.c Sat Dec 1 19:04:18 2001
+++ linux/drivers/scsi/sym53c8xx_2/sym_glue.c Sat Dec 1 19:09:48 2001
@@ -2456,8 +2456,8 @@
u_char pci_fix_up = SYM_SETUP_PCI_FIX_UP;
u_char revision;
u_int irq;
- u_long base, base_2, io_port;
- u_long base_c, base_2_c;
+ u_long base, base_2, base_io;
+ u_long base_c, base_2_c, io_port;
int i;
sym_chip *chip;

@@ -2474,7 +2474,7 @@
device_id = PciDeviceId(pdev);
irq = PciIrqLine(pdev);

- i = pci_get_base_address(pdev, 0, &io_port);
+ i = pci_get_base_address(pdev, 0, &base_io);
io_port = pci_get_base_cookie(pdev, 0);

base_c = pci_get_base_cookie(pdev, i);
@@ -2492,9 +2492,9 @@
/*
* If user excluded this chip, donnot initialize it.
*/
- if (io_port) {
+ if (base_io) {
for (i = 0 ; i < 8 ; i++) {
- if (sym_driver_setup.excludes[i] == io_port)
+ if (sym_driver_setup.excludes[i] == base_io)
return -1;
}
}
--- /home/linux/v2.4/linux/drivers/scsi/sym53c8xx_2/sym_glue.h Sat Dec 1 19:04:18 2001
+++ linux/drivers/scsi/sym53c8xx_2/sym_glue.h Sat Dec 1 19:25:19 2001
@@ -77,7 +77,6 @@
#include <linux/errno.h>
#include <linux/pci.h>
#include <linux/string.h>
-#include <linux/slab.h>
#include <linux/mm.h>
#include <linux/ioport.h>
#include <linux/time.h>
@@ -463,7 +462,7 @@

vm_offset_t mmio_va; /* MMIO kernel virtual address */
vm_offset_t ram_va; /* RAM kernel virtual address */
- u32 io_port; /* IO port address */
+ u_long io_port; /* IO port address cookie */
u_short io_ws; /* IO window size */
int irq; /* IRQ number */

--- /home/linux/v2.4/linux/drivers/scsi/sym53c8xx_2/sym_hipd.c Sat Dec 1 19:04:18 2001
+++ linux/drivers/scsi/sym53c8xx_2/sym_hipd.c Sat Dec 1 19:09:48 2001
@@ -50,7 +50,7 @@
* SUCH DAMAGE.
*/

-#define SYM_DRIVER_NAME "sym-2.1.16a"
+#define SYM_DRIVER_NAME "sym-2.1.17a"

#ifdef __FreeBSD__
#include <dev/sym/sym_glue.h>
@@ -4691,6 +4691,7 @@
OUTL_DSP (SCRIPTA_BA (np, clrack));
return;
out_stuck:
+ return;
}

/*
@@ -5226,6 +5227,7 @@

return;
fail:
+ return;
}

/*
@@ -5788,6 +5790,13 @@
goto attach_failed;

/*
+ * Allocate the array of lists of CCBs hashed by DSA.
+ */
+ np->ccbh = sym_calloc(sizeof(ccb_p *)*CCB_HASH_SIZE, "CCBH");
+ if (!np->ccbh)
+ goto attach_failed;
+
+ /*
* Initialyze the CCB free and busy queues.
*/
sym_que_init(&np->free_ccbq);
@@ -5978,6 +5987,8 @@
sym_mfree_dma(cp, sizeof(*cp), "CCB");
}
}
+ if (np->ccbh)
+ sym_mfree(np->ccbh, sizeof(ccb_p *)*CCB_HASH_SIZE, "CCBH");

if (np->badluntbl)
sym_mfree_dma(np->badluntbl, 256,"BADLUNTBL");
--- /home/linux/v2.4/linux/drivers/scsi/sym53c8xx_2/sym_hipd.h Sat Dec 1 19:04:18 2001
+++ linux/drivers/scsi/sym53c8xx_2/sym_hipd.h Sat Dec 1 19:09:48 2001
@@ -1068,7 +1068,8 @@
/*
* CCB lists and queue.
*/
- ccb_p ccbh[CCB_HASH_SIZE]; /* CCB hashed by DSA value */
+ ccb_p *ccbh; /* CCBs hashed by DSA value */
+ /* CCB_HASH_SIZE lists of CCBs */
SYM_QUEHEAD free_ccbq; /* Queue of available CCBs */
SYM_QUEHEAD busy_ccbq; /* Queue of busy CCBs */

--- /home/linux/v2.4/linux/drivers/scsi/sym53c8xx_2/sym_nvram.c Sat Dec 1 19:04:18 2001
+++ linux/drivers/scsi/sym53c8xx_2/sym_nvram.c Sat Dec 1 19:09:48 2001
@@ -505,10 +505,10 @@
return retv;
}

-#undef SET_BIT 0
-#undef CLR_BIT 1
-#undef SET_CLK 2
-#undef CLR_CLK 3
+#undef SET_BIT
+#undef CLR_BIT
+#undef SET_CLK
+#undef CLR_CLK

/*
* Try reading Symbios NVRAM.
\
 
 \ /
  Last update: 2005-03-22 13:13    [W:0.080 / U:0.116 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site