diff options
Diffstat (limited to 'drivers/scsi/ipr.h')
-rw-r--r-- | drivers/scsi/ipr.h | 46 |
1 files changed, 25 insertions, 21 deletions
diff --git a/drivers/scsi/ipr.h b/drivers/scsi/ipr.h index fd360bfe56dd..1ad24df69d70 100644 --- a/drivers/scsi/ipr.h +++ b/drivers/scsi/ipr.h | |||
@@ -36,8 +36,8 @@ | |||
36 | /* | 36 | /* |
37 | * Literals | 37 | * Literals |
38 | */ | 38 | */ |
39 | #define IPR_DRIVER_VERSION "2.1.2" | 39 | #define IPR_DRIVER_VERSION "2.1.3" |
40 | #define IPR_DRIVER_DATE "(February 8, 2006)" | 40 | #define IPR_DRIVER_DATE "(March 29, 2006)" |
41 | 41 | ||
42 | /* | 42 | /* |
43 | * IPR_MAX_CMD_PER_LUN: This defines the maximum number of outstanding | 43 | * IPR_MAX_CMD_PER_LUN: This defines the maximum number of outstanding |
@@ -133,6 +133,7 @@ | |||
133 | #define IPR_MAX_SCSI_RATE(width) ((320 * 10) / ((width) / 8)) | 133 | #define IPR_MAX_SCSI_RATE(width) ((320 * 10) / ((width) / 8)) |
134 | 134 | ||
135 | #define IPR_IOA_RES_HANDLE 0xffffffff | 135 | #define IPR_IOA_RES_HANDLE 0xffffffff |
136 | #define IPR_INVALID_RES_HANDLE 0 | ||
136 | #define IPR_IOA_RES_ADDR 0x00ffffff | 137 | #define IPR_IOA_RES_ADDR 0x00ffffff |
137 | 138 | ||
138 | /* | 139 | /* |
@@ -1191,30 +1192,17 @@ struct ipr_ucode_image_header { | |||
1191 | */ | 1192 | */ |
1192 | #define ipr_err(...) printk(KERN_ERR IPR_NAME ": "__VA_ARGS__) | 1193 | #define ipr_err(...) printk(KERN_ERR IPR_NAME ": "__VA_ARGS__) |
1193 | #define ipr_info(...) printk(KERN_INFO IPR_NAME ": "__VA_ARGS__) | 1194 | #define ipr_info(...) printk(KERN_INFO IPR_NAME ": "__VA_ARGS__) |
1194 | #define ipr_crit(...) printk(KERN_CRIT IPR_NAME ": "__VA_ARGS__) | ||
1195 | #define ipr_warn(...) printk(KERN_WARNING IPR_NAME": "__VA_ARGS__) | ||
1196 | #define ipr_dbg(...) IPR_DBG_CMD(printk(KERN_INFO IPR_NAME ": "__VA_ARGS__)) | 1195 | #define ipr_dbg(...) IPR_DBG_CMD(printk(KERN_INFO IPR_NAME ": "__VA_ARGS__)) |
1197 | 1196 | ||
1198 | #define ipr_sdev_printk(level, sdev, fmt, args...) \ | 1197 | #define ipr_ra_printk(level, ioa_cfg, ra, fmt, ...) \ |
1199 | sdev_printk(level, sdev, fmt, ## args) | 1198 | printk(level IPR_NAME ": %d:%d:%d:%d: " fmt, (ioa_cfg)->host->host_no, \ |
1199 | (ra).bus, (ra).target, (ra).lun, ##__VA_ARGS__) | ||
1200 | 1200 | ||
1201 | #define ipr_sdev_err(sdev, fmt, ...) \ | 1201 | #define ipr_ra_err(ioa_cfg, ra, fmt, ...) \ |
1202 | ipr_sdev_printk(KERN_ERR, sdev, fmt, ##__VA_ARGS__) | 1202 | ipr_ra_printk(KERN_ERR, ioa_cfg, ra, fmt, ##__VA_ARGS__) |
1203 | |||
1204 | #define ipr_sdev_info(sdev, fmt, ...) \ | ||
1205 | ipr_sdev_printk(KERN_INFO, sdev, fmt, ##__VA_ARGS__) | ||
1206 | |||
1207 | #define ipr_sdev_dbg(sdev, fmt, ...) \ | ||
1208 | IPR_DBG_CMD(ipr_sdev_printk(KERN_INFO, sdev, fmt, ##__VA_ARGS__)) | ||
1209 | |||
1210 | #define ipr_res_printk(level, ioa_cfg, res, fmt, ...) \ | ||
1211 | printk(level IPR_NAME ": %d:%d:%d:%d: " fmt, ioa_cfg->host->host_no, \ | ||
1212 | res.bus, res.target, res.lun, ##__VA_ARGS__) | ||
1213 | 1203 | ||
1214 | #define ipr_res_err(ioa_cfg, res, fmt, ...) \ | 1204 | #define ipr_res_err(ioa_cfg, res, fmt, ...) \ |
1215 | ipr_res_printk(KERN_ERR, ioa_cfg, res, fmt, ##__VA_ARGS__) | 1205 | ipr_ra_err(ioa_cfg, (res)->cfgte.res_addr, fmt, ##__VA_ARGS__) |
1216 | #define ipr_res_dbg(ioa_cfg, res, fmt, ...) \ | ||
1217 | IPR_DBG_CMD(ipr_res_printk(KERN_INFO, ioa_cfg, res, fmt, ##__VA_ARGS__)) | ||
1218 | 1206 | ||
1219 | #define ipr_phys_res_err(ioa_cfg, res, fmt, ...) \ | 1207 | #define ipr_phys_res_err(ioa_cfg, res, fmt, ...) \ |
1220 | { \ | 1208 | { \ |
@@ -1304,6 +1292,22 @@ static inline int ipr_is_gscsi(struct ipr_resource_entry *res) | |||
1304 | } | 1292 | } |
1305 | 1293 | ||
1306 | /** | 1294 | /** |
1295 | * ipr_is_scsi_disk - Determine if a resource is a SCSI disk | ||
1296 | * @res: resource entry struct | ||
1297 | * | ||
1298 | * Return value: | ||
1299 | * 1 if SCSI disk / 0 if not SCSI disk | ||
1300 | **/ | ||
1301 | static inline int ipr_is_scsi_disk(struct ipr_resource_entry *res) | ||
1302 | { | ||
1303 | if (ipr_is_af_dasd_device(res) || | ||
1304 | (ipr_is_gscsi(res) && IPR_IS_DASD_DEVICE(res->cfgte.std_inq_data))) | ||
1305 | return 1; | ||
1306 | else | ||
1307 | return 0; | ||
1308 | } | ||
1309 | |||
1310 | /** | ||
1307 | * ipr_is_naca_model - Determine if a resource is using NACA queueing model | 1311 | * ipr_is_naca_model - Determine if a resource is using NACA queueing model |
1308 | * @res: resource entry struct | 1312 | * @res: resource entry struct |
1309 | * | 1313 | * |