Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
L
linux
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
nexedi
linux
Commits
f211e1fd
Commit
f211e1fd
authored
Dec 12, 2002
by
Justin T. Gibbs
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Complete the upgrade to aic7xxx 6.2.23 and aic79xx 1.3.0_ALPHA3.
parent
f33f47a2
Changes
9
Hide whitespace changes
Inline
Side-by-side
Showing
9 changed files
with
103 additions
and
56 deletions
+103
-56
drivers/scsi/Kconfig
drivers/scsi/Kconfig
+44
-1
drivers/scsi/aic7xxx/Kconfig.aic79xx
drivers/scsi/aic7xxx/Kconfig.aic79xx
+2
-1
drivers/scsi/aic7xxx/Kconfig.aic7xxx
drivers/scsi/aic7xxx/Kconfig.aic7xxx
+2
-8
drivers/scsi/aic7xxx/Makefile
drivers/scsi/aic7xxx/Makefile
+24
-28
drivers/scsi/aic7xxx/aic79xx_osm.c
drivers/scsi/aic7xxx/aic79xx_osm.c
+1
-2
drivers/scsi/aic7xxx/aic79xx_osm.h
drivers/scsi/aic7xxx/aic79xx_osm.h
+5
-6
drivers/scsi/aic7xxx/aic7xxx_osm.c
drivers/scsi/aic7xxx/aic7xxx_osm.c
+1
-2
drivers/scsi/aic7xxx/aic7xxx_osm.h
drivers/scsi/aic7xxx/aic7xxx_osm.h
+5
-8
drivers/scsi/aic7xxx/aiclib.h
drivers/scsi/aic7xxx/aiclib.h
+19
-0
No files found.
drivers/scsi/Kconfig
View file @
f211e1fd
...
...
@@ -277,7 +277,50 @@ config SCSI_AACRAID
tristate "Adaptec AACRAID support (EXPERIMENTAL)"
depends on EXPERIMENTAL && SCSI && PCI
source "drivers/scsi/aic7xxx/Kconfig"
source "drivers/scsi/aic7xxx/Kconfig.aic7xxx"
config SCSI_AIC7XXX_OLD
tristate "Adaptec AIC7xxx support (old driver)"
help
WARNING This driver is an older aic7xxx driver and is no longer
under active development. Adaptec, Inc. is writing a new driver to
take the place of this one, and it is recommended that whenever
possible, people should use the new Adaptec written driver instead
of this one. This driver will eventually be phased out entirely.
This is support for the various aic7xxx based Adaptec SCSI
controllers. These include the 274x EISA cards; 284x VLB cards;
2902, 2910, 293x, 294x, 394x, 3985 and several other PCI and
motherboard based SCSI controllers from Adaptec. It does not support
the AAA-13x RAID controllers from Adaptec, nor will it likely ever
support them. It does not support the 2920 cards from Adaptec that
use the Future Domain SCSI controller chip. For those cards, you
need the "Future Domain 16xx SCSI support" driver.
In general, if the controller is based on an Adaptec SCSI controller
chip from the aic777x series or the aic78xx series, this driver
should work. The only exception is the 7810 which is specifically
not supported (that'
s
the
RAID
controller
chip
on
the
AAA
-
13
x
cards
).
Note
that
the
AHA2920
SCSI
host
adapter
is
*
not
*
supported
by
this
driver
;
choose
"Future Domain 16xx SCSI support"
instead
if
you
have
one
of
those
.
Information
on
the
configuration
options
for
this
controller
can
be
found
by
checking
the
help
file
for
each
of
the
available
configuration
options
.
You
should
read
<
file
:
Documentation
/
scsi
/
aic7xxx_old
.
txt
>
at
a
minimum
before
contacting
the
maintainer
with
any
questions
.
The
SCSI
-
HOWTO
,
available
from
<
http
://
www
.
linuxdoc
.
org
/
docs
.
html
#
howto
>,
can
also
be
of
great
help
.
If
you
want
to
compile
this
driver
as
a
module
(
=
code
which
can
be
inserted
in
and
removed
from
the
running
kernel
whenever
you
want
),
say
M
here
and
read
<
file
:
Documentation
/
modules
.
txt
>.
The
module
will
be
called
aic7xxx_old
.
o
.
source
"drivers/scsi/aic7xxx/Kconfig.aic79xx"
#
All
the
I2O
code
and
drivers
do
not
seem
to
be
64
bit
safe
.
config
SCSI_DPT_I2O
...
...
drivers/scsi/aic7xxx/Kconfig.aic79xx
View file @
f211e1fd
#
# AIC79XX 2.5.X Kernel configuration File.
# $Id: //depot/linux-aic79xx-2.5.0/drivers/scsi/aic7xxx/Kconfig.aic79xx#
1
$
# $Id: //depot/linux-aic79xx-2.5.0/drivers/scsi/aic7xxx/Kconfig.aic79xx#
2
$
#
config SCSI_AIC79XX
tristate "Adaptec AIC79xx U320 support"
depends on PCI
help
This driver supports all of Adaptec's Ultra 320 PCI-X
based SCSI controllers.
...
...
drivers/scsi/aic7xxx/Kconfig.aic7xxx
View file @
f211e1fd
#
# AIC7XXX and AIC79XX 2.5.X Kernel configuration File.
# $Id: //depot/linux-aic79xx-2.5.0/drivers/scsi/aic7xxx/Kconfig.aic7xxx#
2
$
# $Id: //depot/linux-aic79xx-2.5.0/drivers/scsi/aic7xxx/Kconfig.aic7xxx#
4
$
#
config SCSI_AIC7XXX
tristate "Adaptec AIC7xxx Fast -> U160 support"
tristate "Adaptec AIC7xxx Fast -> U160 support
(New Driver)
"
---help---
This driver supports all of Adaptec's Fast through Ultra 160 PCI
based SCSI controllers as well as the aic7770 based EISA and VLB
...
...
@@ -98,9 +98,3 @@ config AIC7XXX_REG_PRETTY_PRINT
contents in diagnostics. This make it much easier to understand debug
output without having to refer to a data book and/or the aic7xxx.reg
file.
config SCSI_AIC79XX
tristate "Adaptec AIC79xx U320 support"
help
This driver supports all of Adaptec's Ultra 320 PCI-X
based SCSI controllers.
drivers/scsi/aic7xxx/Makefile
View file @
f211e1fd
#
# Makefile for the Linux aic7xxx SCSI driver.
#
# Let kbuild descend into aicasm when cleaning
#
# $Id: //depot/linux-aic79xx-2.5.0/drivers/scsi/aic7xxx/Makefile#1 $
# $Id: //depot/linux-aic79xx-2.5.0/drivers/scsi/aic7xxx/Makefile#2 $
#
# Let kbuild descend into aicasm when cleaning
subdir-
+=
aicasm
obj-$(CONFIG_SCSI_AIC7XXX)
+=
aic7xxx.o
ifeq
($(CONFIG_PCI),y)
obj-$(CONFIG_SCSI_AIC79XX)
+=
aic79xx.o
endif
# Core files
aic7xxx-objs
+=
aic7xxx_core.o aic7xxx_93cx6.o aic7770.o
# Core Fast -> U160 files
aic7xxx-y
+=
aic7xxx_core.o
\
aic7xxx_93cx6.o
\
aic7770.o
aic7xxx-$(CONFIG_PCI)
+=
aic7xxx_pci.o
aic7xxx-$(CONFIG_AIC7XXX_REG_PRETTY_PRINT)
+=
aic7xxx_reg_print.o
# Platform Specific Files
aic7xxx-
objs
+=
aic7xxx_osm.o aic7xxx_proc.o aic7770_osm.o
ifeq
($(CONFIG_AIC7XXX_REG_PRETTY_PRINT),y)
aic7xxx-objs
+=
aic7xxx_reg_print
.o
endif
# Platform Specific F
ast -> U160 F
iles
aic7xxx-
y
+=
aic7xxx_osm.o
\
aic7xxx_proc.o
\
aic7770_osm
.o
aic7xxx-$(CONFIG_PCI)
+=
aic7xxx_osm_pci.o
# PCI Specific Files
ifeq
($(CONFIG_PCI),y)
# Core PCI files
aic7xxx-objs
+=
aic7xxx_pci.o
# Platform Specific PCI Files
aic7xxx-objs
+=
aic7xxx_osm_pci.o
endif
# Core U320 files
aic79xx-y
+=
aic79xx_core.o
\
aic79xx_pci.o
aic79xx-$(CONFIG_AIC79XX_REG_PRETTY_PRINT)
+=
aic79xx_reg_print.o
# Platform Specific U320 Files
aic79xx-objs
=
aic79xx_osm.o aic79xx_proc.o aic79xx_osm_pci.o
# Core Files
aic79xx-objs
+=
aic79xx_core.o aic79xx_pci.o
ifeq
($(CONFIG_AIC79XX_REG_PRETTY_PRINT),y)
aic79xx-objs
+=
aic79xx_reg_print.o
endif
aic79xx-y
+=
aic79xx_osm.o
\
aic79xx_proc.o
\
aic79xx_osm_pci.o
EXTRA_CFLAGS
+=
-I
$(src)
/..
EXTRA_CFLAGS
+=
-I
drivers
/scsi
#EXTRA_CFLAGS += -g
# Files generated that shall be removed upon make clean
...
...
@@ -49,8 +45,8 @@ clean-files += aic79xx_seq.h aic79xx_reg.h aic79xx_reg_print.c
$(obj)/aic7xxx_core.o
:
$(obj)/aic7xxx_seq.h
$(obj)/aic79xx_core.o
:
$(obj)/aic79xx_seq.h
$(addprefix $(obj)/,$(aic7xxx-
objs
))
:
$(obj)/aic7xxx_reg.h
$(addprefix $(obj)/,$(aic79xx-
objs
))
:
$(obj)/aic79xx_reg.h
$(addprefix $(obj)/,$(aic7xxx-
y
))
:
$(obj)/aic7xxx_reg.h
$(addprefix $(obj)/,$(aic79xx-
y
))
:
$(obj)/aic79xx_reg.h
ifeq
($(CONFIG_AIC7XXX_BUILD_FIRMWARE),y)
aic7xxx_gen
=
$(obj)
/aic7xxx_seq.h
$(obj)
/aic7xxx_reg.h
...
...
drivers/scsi/aic7xxx/aic79xx_osm.c
View file @
f211e1fd
/*
* Adaptec AIC79xx device driver for Linux.
*
* $Id: //depot/aic7xxx/linux/drivers/scsi/aic7xxx/aic79xx_osm.c#9
2
$
* $Id: //depot/aic7xxx/linux/drivers/scsi/aic7xxx/aic79xx_osm.c#9
3
$
*
* --------------------------------------------------------------------------
* Copyright (c) 1994-2000 Justin T. Gibbs.
...
...
@@ -801,7 +801,6 @@ static int ahd_linux_release(struct Scsi_Host *);
static
const
char
*
ahd_linux_info
(
struct
Scsi_Host
*
);
static
int
ahd_linux_queue
(
Scsi_Cmnd
*
,
void
(
*
)(
Scsi_Cmnd
*
));
#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,5,0)
static
int
ahd_linux_slave_alloc
(
Scsi_Device
*
);
static
int
ahd_linux_slave_configure
(
Scsi_Device
*
);
static
void
ahd_linux_slave_destroy
(
Scsi_Device
*
);
static
int
ahd_linux_biosparam
(
struct
scsi_device
*
,
...
...
drivers/scsi/aic7xxx/aic79xx_osm.h
View file @
f211e1fd
...
...
@@ -36,7 +36,7 @@
* IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
* POSSIBILITY OF SUCH DAMAGES.
*
* $Id: //depot/aic7xxx/linux/drivers/scsi/aic7xxx/aic79xx_osm.h#
88
$
* $Id: //depot/aic7xxx/linux/drivers/scsi/aic7xxx/aic79xx_osm.h#
90
$
*
*/
#ifndef _AIC79XX_LINUX_H_
...
...
@@ -141,7 +141,7 @@ typedef Scsi_Cmnd *ahd_io_ctx_t;
/************************* Configuration Data *********************************/
extern
int
aic79xx_allow_memio
;
extern
int
aic79xx_detect_complete
;
extern
Scsi_Host_Template
*
aic79xx_driver_template
;
extern
Scsi_Host_Template
aic79xx_driver_template
;
/***************************** Bus Space/DMA **********************************/
...
...
@@ -246,10 +246,6 @@ int ahd_dmamap_unload(struct ahd_softc *, bus_dma_tag_t, bus_dmamap_t);
typedef
struct
timer_list
ahd_timer_t
;
/********************************** Includes **********************************/
/* Host template and function declarations referenced by the template. */
#include "aic79xx_host.h"
/* Core driver definitions */
#if CONFIG_AIC79XX_REG_PRETTY_PRINT
#define AIC_DEBUG_REGISTERS 1
#else
...
...
@@ -1052,6 +1048,9 @@ ahd_flush_device_writes(struct ahd_softc *ahd)
#define ahd_pci_set_dma_mask(dev_softc, mask) \
(((dev_softc)->dma_mask = mask) && 0)
#endif
/**************************** Proc FS Support *********************************/
int
ahd_linux_proc_info
(
char
*
,
char
**
,
off_t
,
int
,
int
,
int
);
/*************************** Domain Validation ********************************/
#define AHD_DV_CMD(cmd) ((cmd)->scsi_done == ahd_linux_dv_complete)
#define AHD_DV_SIMQ_FROZEN(ahd) \
...
...
drivers/scsi/aic7xxx/aic7xxx_osm.c
View file @
f211e1fd
/*
* Adaptec AIC7xxx device driver for Linux.
*
* $Id: //depot/aic7xxx/linux/drivers/scsi/aic7xxx/aic7xxx_osm.c#16
0
$
* $Id: //depot/aic7xxx/linux/drivers/scsi/aic7xxx/aic7xxx_osm.c#16
1
$
*
* Copyright (c) 1994 John Aycock
* The University of Calgary Department of Computer Science.
...
...
@@ -812,7 +812,6 @@ static int ahc_linux_release(struct Scsi_Host *);
static
int
ahc_linux_queue
(
Scsi_Cmnd
*
,
void
(
*
)(
Scsi_Cmnd
*
));
static
const
char
*
ahc_linux_info
(
struct
Scsi_Host
*
);
#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,5,0)
static
int
ahc_linux_slave_alloc
(
Scsi_Device
*
);
static
int
ahc_linux_slave_configure
(
Scsi_Device
*
);
static
void
ahc_linux_slave_destroy
(
Scsi_Device
*
);
static
int
ahd_linux_biosparam
(
struct
scsi_device
*
,
...
...
drivers/scsi/aic7xxx/aic7xxx_osm.h
View file @
f211e1fd
...
...
@@ -18,8 +18,6 @@
* along with this program; see the file COPYING. If not, write to
* the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
*
* $Id: //depot/aic7xxx/linux/drivers/scsi/aic7xxx/aic7xxx_osm.h#108 $
*
* Copyright (c) 2000-2001 Adaptec Inc.
* All rights reserved.
*
...
...
@@ -55,7 +53,7 @@
* IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
* POSSIBILITY OF SUCH DAMAGES.
*
* $Id: //depot/aic7xxx/linux/drivers/scsi/aic7xxx/aic7xxx_osm.h#10
8
$
* $Id: //depot/aic7xxx/linux/drivers/scsi/aic7xxx/aic7xxx_osm.h#10
9
$
*
*/
#ifndef _AIC7XXX_LINUX_H_
...
...
@@ -156,7 +154,7 @@ typedef Scsi_Cmnd *ahc_io_ctx_t;
extern
int
aic7xxx_no_probe
;
extern
int
aic7xxx_allow_memio
;
extern
int
aic7xxx_detect_complete
;
extern
Scsi_Host_Template
*
aic7xxx_driver_template
;
extern
Scsi_Host_Template
aic7xxx_driver_template
;
/***************************** Bus Space/DMA **********************************/
...
...
@@ -261,10 +259,6 @@ int ahc_dmamap_unload(struct ahc_softc *, bus_dma_tag_t, bus_dmamap_t);
typedef
struct
timer_list
ahc_timer_t
;
/********************************** Includes **********************************/
/* Host template and function declarations referenced by the template. */
#include "aic7xxx_host.h"
/* Core driver definitions */
#if CONFIG_AIC7XXX_REG_PRETTY_PRINT
#define AIC_DEBUG_REGISTERS 1
#else
...
...
@@ -1020,6 +1014,9 @@ ahc_flush_device_writes(struct ahc_softc *ahc)
#define ahc_pci_set_dma_mask(dev_softc, mask) \
(((dev_softc)->dma_mask = mask) && 0)
#endif
/**************************** Proc FS Support *********************************/
int
ahc_linux_proc_info
(
char
*
,
char
**
,
off_t
,
int
,
int
,
int
);
/*************************** Domain Validation ********************************/
#define AHC_DV_CMD(cmd) ((cmd)->scsi_done == ahc_linux_dv_complete)
#define AHC_DV_SIMQ_FROZEN(ahc) \
...
...
drivers/scsi/aic7xxx/aiclib.h
View file @
f211e1fd
...
...
@@ -825,6 +825,25 @@ typedef enum {
extern
const
char
*
scsi_sense_key_text
[];
/************************* Large Disk Handling ********************************/
static
__inline
int
aic_sector_div
(
u_long
capacity
,
int
heads
,
int
sectors
);
#if LINUX_VERSION_CODE < KERNEL_VERSION(2,5,0)
static
__inline
int
aic_sector_div
(
u_long
capacity
,
int
heads
,
int
sectors
)
{
return
(
capacity
/
(
heads
*
sectors
));
}
#else
static
__inline
int
aic_sector_div
(
sector_t
capacity
,
int
heads
,
int
sectors
)
{
/* ugly, ugly sector_div calling convention.. */
sector_div
(
capacity
,
(
heads
*
sectors
));
return
(
int
)
capacity
;
}
#endif
/**************************** Module Library Hack *****************************/
/*
* What we'd like to do is have a single "scsi library" module that both the
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment