Lines Matching full:sccb

110 static inline int abbrev_len(sclp_cmdw_t cmd, struct sccb_header *sccb)  in abbrev_len()  argument
112 struct evbuf_header *evbuf = (struct evbuf_header *)(sccb + 1); in abbrev_len()
113 int len = sccb->length, limit = SCLP_TRACE_MAX_SIZE; in abbrev_len()
115 /* Full SCCB tracing if debug level is set to max. */ in abbrev_len()
128 sclp_cmdw_t cmd, struct sccb_header *sccb, in sclp_trace_sccb() argument
132 if (sccb) { in sclp_trace_sccb()
133 sclp_trace_bin(prio + 1, sccb, abbrev_len(cmd, sccb), in sclp_trace_sccb()
134 err ? sccb->length : 0); in sclp_trace_sccb()
150 struct sccb_header *sccb = req->sccb; in sclp_trace_req() local
162 summary.response = sccb ? sccb->response_code : 0; in sclp_trace_req()
166 sclp_trace(prio, id, (u32)(addr_t)sccb, summary.b, err); in sclp_trace_req()
372 /* RQTM: Request timed out (a=sccb, b=summary) */ in sclp_req_queue_timeout()
387 static int sclp_service_call_trace(sclp_cmdw_t command, void *sccb) in sclp_service_call_trace() argument
392 /* SRV1: Service call about to be issued (a=command, b=sccb address) */ in sclp_service_call_trace()
393 sclp_trace_sccb(0, "SRV1", command, (u64)sccb, command, sccb, false); in sclp_service_call_trace()
395 rc = sclp_service_call(command, sccb); in sclp_service_call_trace()
417 rc = sclp_service_call_trace(req->command, req->sccb); in __sclp_start_request()
468 /* RQAB: Request aborted (a=sccb, b=summary) */ in sclp_process_queue()
504 /* RQAD: Request was added (a=sccb, b=caller) */ in sclp_add_request()
505 sclp_trace(2, "RQAD", (u32)(addr_t)req->sccb, _RET_IP_, false); in sclp_add_request()
534 sclp_dispatch_evbufs(struct sccb_header *sccb) in sclp_dispatch_evbufs() argument
545 for (offset = sizeof(struct sccb_header); offset < sccb->length; in sclp_dispatch_evbufs()
547 evbuf = (struct evbuf_header *) ((addr_t) sccb + offset); in sclp_dispatch_evbufs()
581 struct sccb_header *sccb; in sclp_read_cb() local
583 sccb = (struct sccb_header *) req->sccb; in sclp_read_cb()
584 if (req->status == SCLP_REQ_DONE && (sccb->response_code == 0x20 || in sclp_read_cb()
585 sccb->response_code == 0x220)) in sclp_read_cb()
586 sclp_dispatch_evbufs(sccb); in sclp_read_cb()
595 struct sccb_header *sccb; in __sclp_make_read_req() local
597 sccb = (struct sccb_header *) sclp_read_sccb; in __sclp_make_read_req()
598 clear_page(sccb); in __sclp_make_read_req()
604 sclp_read_req.sccb = sccb; in __sclp_make_read_req()
605 sccb->length = PAGE_SIZE; in __sclp_make_read_req()
606 sccb->function_code = 0; in __sclp_make_read_req()
607 sccb->control_mask[2] = 0x80; in __sclp_make_read_req()
610 /* Search request list for request with matching sccb. Return request if found,
613 __sclp_find_req(u32 sccb) in __sclp_find_req() argument
620 if (sccb == (u32) (addr_t) req->sccb) in __sclp_find_req()
628 struct sccb_header *sccb = (struct sccb_header *)(addr_t)sccb_int; in ok_response() local
632 if (!sccb) in ok_response()
635 /* Check SCCB response. */ in ok_response()
636 response = sccb->response_code & 0xff; in ok_response()
642 evbuf = (struct evbuf_header *)(sccb + 1); in ok_response()
679 /* RQOK: Request success (a=sccb, b=summary) */ in sclp_interrupt_handler()
688 /* UNEX: Unexpected SCCB completion (a=sccb address) */ in sclp_interrupt_handler()
921 sclp_remove_processed(struct sccb_header *sccb) in sclp_remove_processed() argument
927 evbuf = (struct evbuf_header *) (sccb + 1); in sclp_remove_processed()
929 remaining = sccb->length - sizeof(struct sccb_header); in sclp_remove_processed()
933 sccb->length -= evbuf->length; in sclp_remove_processed()
951 struct init_sccb *sccb = sclp_init_sccb; in __sclp_make_init_req() local
953 clear_page(sccb); in __sclp_make_init_req()
960 sclp_init_req.sccb = sccb; in __sclp_make_init_req()
961 sccb->header.length = sizeof(*sccb); in __sclp_make_init_req()
963 sccb->mask_length = SCLP_MASK_SIZE_COMPAT; in __sclp_make_init_req()
965 sccb->mask_length = sizeof(sccb_mask_t); in __sclp_make_init_req()
966 sccb_set_recv_mask(sccb, receive_mask); in __sclp_make_init_req()
967 sccb_set_send_mask(sccb, send_mask); in __sclp_make_init_req()
968 sccb_set_sclp_recv_mask(sccb, 0); in __sclp_make_init_req()
969 sccb_set_sclp_send_mask(sccb, 0); in __sclp_make_init_req()
979 struct init_sccb *sccb = sclp_init_sccb; in sclp_init_mask() local
1022 sccb->header.response_code == 0x20) { in sclp_init_mask()
1025 sclp_receive_mask = sccb_get_sclp_recv_mask(sccb); in sclp_init_mask()
1026 sclp_send_mask = sccb_get_sclp_send_mask(sccb); in sclp_init_mask()
1144 struct init_sccb *sccb; in sclp_check_interface() local
1158 sccb = (struct init_sccb *) sclp_init_req.sccb; in sclp_check_interface()
1159 rc = sclp_service_call_trace(sclp_init_req.command, sccb); in sclp_check_interface()
1179 if (sccb->header.response_code == 0x20) { in sclp_check_interface()
1182 } else if (sccb->header.response_code == 0x74f0) { in sclp_check_interface()