Commit 3da73622 authored by James Bottomley's avatar James Bottomley Committed by James Bottomley

ServeRAID driver ( ips ) Version 7.10.18

From: Hammer, Jack <Jack_Hammer@adaptec.com>

- Fix path/name for scsi_hosts.h include for 2.6 kernels
- Fix sort order of 7k
- Remove 3 unused "inline" functions
Signed-off-by: default avatarJames Bottomley <James.Bottomley@SteelEye.com>
parent 6baf14e7
......@@ -133,6 +133,10 @@
/* 6.10.00 - Remove 1G Addressing Limitations */
/* 6.11.xx - Get VersionInfo buffer off the stack ! DDTS 60401 */
/* 6.11.xx - Make Logical Drive Info structure safe for DMA DDTS 60639 */
/* 7.10.xx - Add highmem_io flag in SCSI Templete for 2.4 kernels */
/* - Fix path/name for scsi_hosts.h include for 2.6 kernels */
/* - Fix sort order of 7k */
/* - Remove 3 unused "inline" functions */
/*****************************************************************************/
/*
......@@ -176,7 +180,13 @@
#include <scsi/sg.h>
#include "scsi.h"
#if LINUX_VERSION_CODE <= KERNEL_VERSION(2,5,0)
#include "hosts.h"
#else
#include <scsi/scsi_host.h>
#endif
#include "ips.h"
#include <linux/module.h>
......@@ -197,8 +207,8 @@ MODULE_PARM(ips, "s");
/*
* DRIVER_VER
*/
#define IPS_VERSION_HIGH "7.00"
#define IPS_VERSION_LOW ".15 "
#define IPS_VERSION_HIGH "7.10"
#define IPS_VERSION_LOW ".18 "
#if !defined(__i386__) && !defined(__ia64__) && !defined(__x86_64__)
#warning "This driver has only been tested on the x86/ia64/x86_64 platforms"
......@@ -278,6 +288,9 @@ static Scsi_Host_Template ips_driver_template = {
#if LINUX_VERSION_CODE < KERNEL_VERSION(2,5,0)
.use_new_eh_code = 1,
#endif
#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,4,20) && LINUX_VERSION_CODE < KERNEL_VERSION(2,5,0)
.highmem_io = 1,
#endif
};
IPS_DEFINE_COMPAT_TABLE( Compatable ); /* Version Compatability Table */
......@@ -6904,7 +6917,6 @@ ips_order_controllers(void)
for (j = position; j < ips_num_controllers; j++) {
switch (ips_ha[j]->ad_type) {
case IPS_ADTYPE_SERVERAID6M:
case IPS_ADTYPE_SERVERAID7k:
case IPS_ADTYPE_SERVERAID7M:
if (nvram->adapter_order[i] == 'M') {
ips_shift_controllers(position,
......@@ -6925,6 +6937,7 @@ ips_order_controllers(void)
case IPS_ADTYPE_SERVERAID6I:
case IPS_ADTYPE_SERVERAID5I2:
case IPS_ADTYPE_SERVERAID5I1:
case IPS_ADTYPE_SERVERAID7k:
if (nvram->adapter_order[i] == 'S') {
ips_shift_controllers(position,
j);
......@@ -7453,6 +7466,13 @@ ips_init_phase2(int index)
MODULE_LICENSE("GPL");
#endif
MODULE_DESCRIPTION("IBM ServeRAID Adapter Driver " IPS_VER_STRING);
#ifdef MODULE_VERSION
MODULE_VERSION(IPS_VER_STRING);
#endif
/*
* Overrides for Emacs so that we almost follow Linus's tabbing style.
* Emacs will notice this stuff at the end of the file and automatically
......
......@@ -96,7 +96,11 @@
#endif
#if LINUX_VERSION_CODE < KERNEL_VERSION(2,5,0)
typedef void irqreturn_t;
#ifndef irqreturn_t
typedef void irqreturn_t;
#endif
#define IRQ_NONE
#define IRQ_HANDLED
#define IRQ_RETVAL(x)
......@@ -1210,13 +1214,13 @@ typedef struct {
#define IPS_VER_MAJOR 7
#define IPS_VER_MAJOR_STRING "7"
#define IPS_VER_MINOR 00
#define IPS_VER_MINOR_STRING "00"
#define IPS_VER_BUILD 15
#define IPS_VER_BUILD_STRING "15"
#define IPS_VER_STRING "7.00.15"
#define IPS_VER_MINOR 10
#define IPS_VER_MINOR_STRING "10"
#define IPS_VER_BUILD 18
#define IPS_VER_BUILD_STRING "18"
#define IPS_VER_STRING "7.10.18"
#define IPS_RELEASE_ID 0x00020000
#define IPS_BUILD_IDENT 625
#define IPS_BUILD_IDENT 731
#define IPS_LEGALCOPYRIGHT_STRING "(C) Copyright IBM Corp. 1994, 2002. All Rights Reserved."
#define IPS_ADAPTECCOPYRIGHT_STRING "(c) Copyright Adaptec, Inc. 2002 to 2004. All Rights Reserved."
#define IPS_DELLCOPYRIGHT_STRING "(c) Copyright Dell 2004. All Rights Reserved."
......@@ -1227,32 +1231,35 @@ typedef struct {
#define IPS_VER_SERVERAID2 "2.88.13"
#define IPS_VER_NAVAJO "2.88.13"
#define IPS_VER_SERVERAID3 "6.10.24"
#define IPS_VER_SERVERAID4H "7.00.15"
#define IPS_VER_SERVERAID4MLx "7.00.15"
#define IPS_VER_SARASOTA "7.00.15"
#define IPS_VER_MARCO "7.00.15"
#define IPS_VER_SEBRING "7.00.15"
#define IPS_VER_SERVERAID4H "7.10.11"
#define IPS_VER_SERVERAID4MLx "7.10.18"
#define IPS_VER_SARASOTA "7.10.18"
#define IPS_VER_MARCO "7.10.18"
#define IPS_VER_SEBRING "7.10.18"
#define IPS_VER_KEYWEST "7.10.18"
/* Compatability IDs for various adapters */
#define IPS_COMPAT_UNKNOWN ""
#define IPS_COMPAT_CURRENT "SB610"
#define IPS_COMPAT_CURRENT "KW710"
#define IPS_COMPAT_SERVERAID1 "2.25.01"
#define IPS_COMPAT_SERVERAID2 "2.88.13"
#define IPS_COMPAT_NAVAJO "2.88.13"
#define IPS_COMPAT_KIOWA "2.88.13"
#define IPS_COMPAT_SERVERAID3H "SB610"
#define IPS_COMPAT_SERVERAID3L "SB610"
#define IPS_COMPAT_SERVERAID4H "SB610"
#define IPS_COMPAT_SERVERAID4M "SB610"
#define IPS_COMPAT_SERVERAID4L "SB610"
#define IPS_COMPAT_SERVERAID4Mx "SB610"
#define IPS_COMPAT_SERVERAID4Lx "SB610"
#define IPS_COMPAT_SARASOTA "SB610"
#define IPS_COMPAT_MARCO "SB610"
#define IPS_COMPAT_SEBRING "SB610"
#define IPS_COMPAT_BIOS "SB610"
#define IPS_COMPAT_MAX_ADAPTER_TYPE 16
#define IPS_COMPAT_SERVERAID4H "KW710"
#define IPS_COMPAT_SERVERAID4M "KW710"
#define IPS_COMPAT_SERVERAID4L "KW710"
#define IPS_COMPAT_SERVERAID4Mx "KW710"
#define IPS_COMPAT_SERVERAID4Lx "KW710"
#define IPS_COMPAT_SARASOTA "KW710"
#define IPS_COMPAT_MARCO "KW710"
#define IPS_COMPAT_SEBRING "KW710"
#define IPS_COMPAT_TAMPA "KW710"
#define IPS_COMPAT_KEYWEST "KW710"
#define IPS_COMPAT_BIOS "KW710"
#define IPS_COMPAT_MAX_ADAPTER_TYPE 18
#define IPS_COMPAT_ID_LENGTH 8
#define IPS_DEFINE_COMPAT_TABLE(tablename) \
......@@ -1272,7 +1279,9 @@ typedef struct {
IPS_COMPAT_SARASOTA, /* one-channel variety of SARASOTA */ \
IPS_COMPAT_SARASOTA, /* two-channel variety of SARASOTA */ \
IPS_COMPAT_MARCO, \
IPS_COMPAT_SEBRING \
IPS_COMPAT_SEBRING, \
IPS_COMPAT_TAMPA, \
IPS_COMPAT_KEYWEST \
}
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment