Lines Matching defs:cqr

260  * eer enabled DASD device. The presence of the cqr in device->eer_cqr
263 * that the cqr is currently in use, dasd_eer_snss cannot start a second
282 * If the parameter cqr is not NULL, the chain of requests will be searched
287 struct dasd_ccw_req *cqr,
298 /* go through cqr chain and count the valid sense data sets */
300 for (temp_cqr = cqr; temp_cqr; temp_cqr = temp_cqr->refers)
316 for (temp_cqr = cqr; temp_cqr; temp_cqr = temp_cqr->refers) {
331 struct dasd_ccw_req *cqr,
341 snss_rc = (cqr->status == DASD_CQR_DONE) ? 0 : -EIO;
360 dasd_eer_write_buffer(eerb, cqr->data, SNSS_DATA_SIZE);
371 void dasd_eer_write(struct dasd_device *device, struct dasd_ccw_req *cqr,
379 dasd_eer_write_standard_trigger(device, cqr, id);
387 dasd_eer_write_snss_trigger(device, cqr, id);
402 struct dasd_ccw_req *cqr;
404 cqr = device->eer_cqr;
405 if (!cqr) /* Device not eer enabled. */
414 cqr->status = DASD_CQR_QUEUED;
415 list_add(&cqr->devlist, &device->ccw_queue);
422 static void dasd_eer_snss_cb(struct dasd_ccw_req *cqr, void *data)
424 struct dasd_device *device = cqr->startdev;
427 dasd_eer_write(device, cqr, DASD_EER_STATECHANGE);
429 if (device->eer_cqr == cqr) {
434 cqr = NULL;
437 if (cqr)
445 dasd_sfree_request(cqr, device);
453 struct dasd_ccw_req *cqr = NULL;
470 cqr = dasd_smalloc_request(DASD_ECKD_MAGIC, 1 /* SNSS */,
472 if (IS_ERR(cqr)) {
474 cqr = NULL;
478 cqr->startdev = device;
479 cqr->retries = 255;
480 cqr->expires = 10 * HZ;
481 clear_bit(DASD_CQR_FLAGS_USE_ERP, &cqr->flags);
482 set_bit(DASD_CQR_ALLOW_SLOCK, &cqr->flags);
484 ccw = cqr->cpaddr;
488 ccw->cda = virt_to_dma32(cqr->data);
490 cqr->buildclk = get_tod_clock();
491 cqr->status = DASD_CQR_FILLED;
492 cqr->callback = dasd_eer_snss_cb;
495 device->eer_cqr = cqr;
496 cqr = NULL;
502 if (cqr)
503 dasd_sfree_request(cqr, device);
513 struct dasd_ccw_req *cqr;
520 cqr = device->eer_cqr;
525 if (cqr && !in_use)
526 dasd_sfree_request(cqr, device);