/*
* ipr.h -- driver for IBM Power Linux RAID adapters
*
- * Written By: Brian King, IBM Corporation
+ * Written By: Brian King <brking@us.ibm.com>, IBM Corporation
*
* Copyright (C) 2003, 2004 IBM Corporation
*
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*
+ * Alan Cox <alan@redhat.com> - Removed several careless u32/dma_addr_t errors
+ * that broke 64bit platforms.
*/
#ifndef _IPR_H
#include <linux/types.h>
#include <linux/completion.h>
#include <linux/list.h>
+#include <linux/kref.h>
#include <scsi/scsi.h>
#include <scsi/scsi_cmnd.h>
#ifdef CONFIG_KDB
/*
* Literals
*/
-#define IPR_DRIVER_VERSION "2.0.10"
-#define IPR_DRIVER_DATE "(June 7, 2004)"
+#define IPR_DRIVER_VERSION "2.0.11"
+#define IPR_DRIVER_DATE "(August 3, 2004)"
/*
* IPR_DBG_TRACE: Setting this to 1 will turn on some general function tracing
#define IPR_SUBS_DEV_ID_5703 0x0278
#define IPR_SUBS_DEV_ID_572E 0x02D3
#define IPR_SUBS_DEV_ID_573D 0x02D4
+#define IPR_SUBS_DEV_ID_570F 0x02BD
+#define IPR_SUBS_DEV_ID_571B 0x02BE
#define IPR_NAME "ipr"
#define IPR_BUS_RESET 0x10
#define IPR_ID_HOST_RR_Q 0xC4
#define IPR_QUERY_IOA_CONFIG 0xC5
-#define IPR_ABORT_TASK 0xC7
#define IPR_CANCEL_ALL_REQUESTS 0xCE
#define IPR_HOST_CONTROLLED_ASYNC 0xCF
#define IPR_HCAM_CDB_OP_CODE_CONFIG_CHANGE 0x01
struct ipr_hostrcb {
struct ipr_hcam hcam;
- u32 hostrcb_dma;
+ dma_addr_t hostrcb_dma;
struct list_head queue;
};
char cfg_table_start[8];
#define IPR_CFG_TBL_START "cfg"
struct ipr_config_table *cfg_table;
- u32 cfg_table_dma;
+ dma_addr_t cfg_table_dma;
char resource_table_label[8];
#define IPR_RES_TABLE_LABEL "res_tbl"
char ipr_hcam_label[8];
#define IPR_HCAM_LABEL "hcams"
struct ipr_hostrcb *hostrcb[IPR_NUM_HCAMS];
- u32 hostrcb_dma[IPR_NUM_HCAMS];
+ dma_addr_t hostrcb_dma[IPR_NUM_HCAMS];
struct list_head hostrcb_free_q;
struct list_head hostrcb_pending_q;
u32 *host_rrq;
- u32 host_rrq_dma;
+ dma_addr_t host_rrq_dma;
#define IPR_HRRQ_REQ_RESP_HANDLE_MASK 0xfffffffc
#define IPR_HRRQ_RESP_BIT_SET 0x00000002
#define IPR_HRRQ_TOGGLE_BIT 0x00000001
enum ipr_sdt_state sdt_state;
struct ipr_misc_cbs *vpd_cbs;
- u32 vpd_cbs_dma;
+ dma_addr_t vpd_cbs_dma;
struct pci_pool *ipr_cmd_pool;
}__attribute__((packed, aligned (4)));
struct ipr_dump {
- struct kobject kobj;
+ struct kref kref;
struct ipr_ioa_cfg *ioa_cfg;
struct ipr_driver_dump driver_dump;
struct ipr_ioa_dump ioa_dump;