• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /netgear-R7000-V1.0.7.12_1.2.5/components/opensource/linux/linux-2.6.36/drivers/s390/block/

Lines Matching defs:sense

34  * 24 and 32 byte sense ERP functions
291 * sense sense data of the actual error
299 dasd_3990_erp_action_4(struct dasd_ccw_req * erp, char *sense)
316 if (sense && (sense[25] == 0x1D)) { /* state change pending */
325 } else if (sense && (sense[25] == 0x1E)) { /* busy */
347 * 24 byte sense ERP functions (only)
382 * Does a analysis of the sense data (message Format)
386 * sense current sense data
392 dasd_3990_handle_env_data(struct dasd_ccw_req * erp, char *sense)
396 char msg_format = (sense[7] & 0xF0);
397 char msg_no = (sense[7] & 0x0F);
403 if (sense[1] & 0x10) { /* check message to operator bit */
447 "... %02x\n", sense[8]);
468 sense[8]);
490 "device = %02x\n", sense[4]);
592 sense[8]);
1023 * sense current sense data
1029 dasd_3990_erp_com_rej(struct dasd_ccw_req * erp, char *sense)
1037 if (sense[2] & SNS2_ENV_DATA_PRESENT) {
1042 dasd_3990_handle_env_data(erp, sense);
1046 } else if (sense[1] & SNS1_WRITE_INHIBITED) {
1114 dasd_3990_erp_equip_check(struct dasd_ccw_req * erp, char *sense)
1121 if (sense[1] & SNS1_WRITE_INHIBITED) {
1132 } else if (sense[2] & SNS2_ENV_DATA_PRESENT) {
1137 dasd_3990_handle_env_data(erp, sense);
1139 erp = dasd_3990_erp_action_4(erp, sense);
1141 } else if (sense[1] & SNS1_PERM_ERR) {
1173 dasd_3990_erp_data_check(struct dasd_ccw_req * erp, char *sense)
1180 if (sense[2] & SNS2_CORRECTABLE) { /* correctable data check */
1191 } else if (sense[2] & SNS2_ENV_DATA_PRESENT) {
1197 erp = dasd_3990_erp_action_4(erp, sense);
1199 } else if (sense[1] & SNS1_PERM_ERR) {
1232 dasd_3990_erp_overrun(struct dasd_ccw_req * erp, char *sense)
1261 dasd_3990_erp_inv_format(struct dasd_ccw_req * erp, char *sense)
1268 if (sense[2] & SNS2_ENV_DATA_PRESENT) {
1274 dasd_3990_handle_env_data(erp, sense);
1276 erp = dasd_3990_erp_action_4(erp, sense);
1303 dasd_3990_erp_EOC(struct dasd_ccw_req * default_erp, char *sense)
1328 dasd_3990_erp_env_data(struct dasd_ccw_req * erp, char *sense)
1337 dasd_3990_handle_env_data(erp, sense);
1340 if (sense[7] != 0x0F) {
1341 erp = dasd_3990_erp_action_4(erp, sense);
1363 dasd_3990_erp_no_rec(struct dasd_ccw_req * default_erp, char *sense)
1420 char *sense;
1425 sense = dasd_get_sense(&erp->refers->irb);
1429 if (!test_bit(DASD_FLAG_OFFLINE, &cqr->startdev->flags) && sense
1430 && (sense[0] == 0x10) && (sense[7] == 0x0F)
1431 && (sense[8] == 0x67)) {
1462 * Does a detailed inspection of the 24 byte sense data
1466 * sense sense data of the actual error
1473 dasd_3990_erp_inspect_24(struct dasd_ccw_req * erp, char *sense)
1478 /* Check sense for .... */
1480 if ((erp_filled == NULL) && (sense[0] & SNS0_CMD_REJECT)) {
1481 erp_filled = dasd_3990_erp_com_rej(erp, sense);
1484 if ((erp_filled == NULL) && (sense[0] & SNS0_INTERVENTION_REQ)) {
1488 if ((erp_filled == NULL) && (sense[0] & SNS0_BUS_OUT_CHECK)) {
1492 if ((erp_filled == NULL) && (sense[0] & SNS0_EQUIPMENT_CHECK)) {
1493 erp_filled = dasd_3990_erp_equip_check(erp, sense);
1496 if ((erp_filled == NULL) && (sense[0] & SNS0_DATA_CHECK)) {
1497 erp_filled = dasd_3990_erp_data_check(erp, sense);
1500 if ((erp_filled == NULL) && (sense[0] & SNS0_OVERRUN)) {
1501 erp_filled = dasd_3990_erp_overrun(erp, sense);
1504 if ((erp_filled == NULL) && (sense[1] & SNS1_INV_TRACK_FORMAT)) {
1505 erp_filled = dasd_3990_erp_inv_format(erp, sense);
1508 if ((erp_filled == NULL) && (sense[1] & SNS1_EOC)) {
1509 erp_filled = dasd_3990_erp_EOC(erp, sense);
1512 if ((erp_filled == NULL) && (sense[2] & SNS2_ENV_DATA_PRESENT)) {
1513 erp_filled = dasd_3990_erp_env_data(erp, sense);
1516 if ((erp_filled == NULL) && (sense[1] & SNS1_NO_REC_FOUND)) {
1517 erp_filled = dasd_3990_erp_no_rec(erp, sense);
1520 if ((erp_filled == NULL) && (sense[1] & SNS1_FILE_PROTECTED)) {
1535 * 32 byte sense ERP functions (only)
1548 * sense current sense data
1553 dasd_3990_erp_action_10_32(struct dasd_ccw_req * erp, char *sense)
1580 * sense current sense data
1587 dasd_3990_erp_action_1B_32(struct dasd_ccw_req * default_erp, char *sense)
1613 "32 bit sense, action 1B is not defined"
1619 if (sense[1] & 0x01) {
1664 if ((sense[3] == 0x01) && (LO_data[1] & 0x01)) {
1669 if ((sense[7] & 0x3F) == 0x01) {
1673 } else if ((sense[7] & 0x3F) == 0x03) {
1678 LO_data[0] = sense[7]; /* operation */
1681 LO_data[1] = sense[8]; /* auxiliary */
1682 LO_data[2] = sense[9];
1683 LO_data[3] = sense[3]; /* count */
1684 LO_data[4] = sense[29]; /* seek_addr.cyl */
1685 LO_data[5] = sense[30]; /* seek_addr.cyl 2nd byte */
1686 LO_data[7] = sense[31]; /* seek_addr.head 2nd byte */
1688 memcpy(&(LO_data[8]), &(sense[11]), 8);
1740 * sense current sense data
1745 dasd_3990_update_1B(struct dasd_ccw_req * previous_erp, char *sense)
1768 "32 bit sense, action 1B, update,"
1774 if (sense[1] & 0x01) {
1800 /* update the LO with the new returned sense data */
1803 if ((sense[3] == 0x01) && (LO_data[1] & 0x01)) {
1810 if ((sense[7] & 0x3F) == 0x01) {
1814 } else if ((sense[7] & 0x3F) == 0x03) {
1819 LO_data[0] = sense[7]; /* operation */
1822 LO_data[1] = sense[8]; /* auxiliary */
1823 LO_data[2] = sense[9];
1824 LO_data[3] = sense[3]; /* count */
1825 LO_data[4] = sense[29]; /* seek_addr.cyl */
1826 LO_data[5] = sense[30]; /* seek_addr.cyl 2nd byte */
1827 LO_data[7] = sense[31]; /* seek_addr.head 2nd byte */
1829 memcpy(&(LO_data[8]), &(sense[11]), 8);
1849 * by the sense data. This makes enqueueing of the request
1853 * sense sense data of the actual error
1861 dasd_3990_erp_compound_retry(struct dasd_ccw_req * erp, char *sense)
1864 switch (sense[25] & 0x03) {
1897 * sense sense data of the actual error
1905 dasd_3990_erp_compound_path(struct dasd_ccw_req * erp, char *sense)
1908 if (sense[25] & DASD_SENSE_BIT_3) {
1931 * sense sense data of the actual error
1939 dasd_3990_erp_compound_code(struct dasd_ccw_req * erp, char *sense)
1942 if (sense[25] & DASD_SENSE_BIT_2) {
1944 switch (sense[28]) {
1979 * sense sense data of the actual error
1987 dasd_3990_erp_compound_config(struct dasd_ccw_req * erp, char *sense)
1990 if ((sense[25] & DASD_SENSE_BIT_1) && (sense[26] & DASD_SENSE_BIT_2)) {
2014 * sense sense data of the actual error
2022 dasd_3990_erp_compound(struct dasd_ccw_req * erp, char *sense)
2028 dasd_3990_erp_compound_path(erp, sense);
2034 erp = dasd_3990_erp_compound_code(erp, sense);
2040 dasd_3990_erp_compound_config(erp, sense);
2058 * sense sense data of the actual error
2064 dasd_3990_erp_handle_sim(struct dasd_device *device, char *sense)
2067 if ((sense[24] & DASD_SIM_MSG_TO_OP) || (sense[1] & 0x10)) {
2070 "%02x%02x%02x%02x\n", sense[22],
2071 sense[23], sense[11], sense[12]);
2072 } else if (sense[24] & DASD_SIM_LOG) {
2075 "%02x%02x%02x%02x\n", sense[22],
2076 sense[23], sense[11], sense[12]);
2084 * Does a detailed inspection of the 32 byte sense data
2088 * sense sense data of the actual error
2096 dasd_3990_erp_inspect_32(struct dasd_ccw_req * erp, char *sense)
2103 /* check for SIM sense data */
2104 if ((sense[6] & DASD_SIM_SENSE) == DASD_SIM_SENSE)
2105 dasd_3990_erp_handle_sim(device, sense);
2107 if (sense[25] & DASD_SENSE_BIT_0) {
2110 dasd_3990_erp_compound_retry(erp, sense);
2115 switch (sense[25]) {
2144 erp = dasd_3990_erp_action_10_32(erp, sense);
2159 erp = dasd_3990_erp_action_1B_32(erp, sense);
2178 erp = dasd_3990_erp_action_4(erp, sense);
2185 erp = dasd_3990_erp_action_4(erp, sense);
2199 * main ERP control fuctions (24 and 32 byte sense)
2235 * Does a detailed inspection for sense data by calling either
2248 char *sense;
2255 /* sense data are located in the refers record of the
2259 sense = dasd_get_sense(&erp->refers->irb);
2260 if (!sense)
2262 /* distinguish between 24 and 32 byte sense data */
2263 else if (sense[27] & DASD_SENSE_BIT_0) {
2265 /* inspect the 24 byte sense data */
2266 erp_new = dasd_3990_erp_inspect_24(erp, sense);
2270 /* inspect the 32 byte sense data */
2271 erp_new = dasd_3990_erp_inspect_32(erp, sense);
2273 } /* end distinguish between 24 and 32 byte sense data */
2288 * TSB so the original sense data will not be changed.
2376 * determined based on the sense data.
2397 /* inspect sense, determine specific ERP if possible */
2412 * This means that the failed CCW and the relevant sense data
2414 * I don't distinguish between 24 and 32 byte sense because in case of
2415 * 24 byte sense byte 25 and 27 is set as well.
2436 /* one request has sense data, the other not -> no match, return 0 */
2439 /* no sense data in both cases -> check cstat for IFCC */
2447 /* check sense data; byte 0-2,25,27 */
2453 return 0; /* sense doesn't match */
2504 * DASD_3990_ERP_FURTHER_ERP (24 & 32 byte sense)
2524 char *sense = dasd_get_sense(&erp->irb);
2526 /* check for 24 byte sense ERP */
2541 if (sense && !(sense[2] & DASD_SENSE_BIT_0)) {
2546 switch (sense[25]) {
2566 sense[25]);
2570 /* check for 32 byte sense ERP */
2571 } else if (sense &&
2577 erp = dasd_3990_erp_compound(erp, sense);
2642 char *sense = dasd_get_sense(&erp->refers->irb);
2645 if (sense && erp->function == dasd_3990_erp_action_4) {
2647 erp = dasd_3990_erp_action_4(erp, sense);
2649 } else if (sense &&
2652 erp = dasd_3990_update_1B(erp, sense);
2654 } else if (sense && erp->function == dasd_3990_erp_int_req) {