/openbmc/linux/drivers/s390/char/ |
H A D | sclp_early.c | 33 if (!sccb) in sclp_early_facilities_detect() 65 sclp.rnmax = sccb->rnmax ? sccb->rnmax : sccb->rnmax2; in sclp_early_facilities_detect() 66 sclp.rzm = sccb->rnsize ? sccb->rnsize : sccb->rnsize2; in sclp_early_facilities_detect() 70 if (sccb->hamaxpow && sccb->hamaxpow < 64) in sclp_early_facilities_detect() 75 if (!sccb->hcpua) { in sclp_early_facilities_detect() 85 cpue = (void *)sccb + sccb->cpuoff; in sclp_early_facilities_detect() 105 if (sccb->hsa_size) in sclp_early_facilities_detect() 107 sclp.mtid = (sccb->fac42 & 0x80) ? (sccb->fac42 & 31) : 0; in sclp_early_facilities_detect() 108 sclp.mtid_cp = (sccb->fac42 & 0x80) ? (sccb->fac43 & 31) : 0; in sclp_early_facilities_detect() 109 sclp.mtid_prev = (sccb->fac42 & 0x80) ? (sccb->fac66 & 31) : 0; in sclp_early_facilities_detect() [all …]
|
H A D | sclp_early_core.c | 89 struct write_sccb *sccb; in sclp_early_print_lm() local 97 memset(sccb, 0, sizeof(*sccb)); in sclp_early_print_lm() 116 msg = &sccb->msg; in sclp_early_print_lm() 146 memset(sccb, 0, sizeof(*sccb)); in sclp_early_print_vt220() 148 sccb->header.length = sizeof(*sccb) + len; in sclp_early_print_vt220() 149 sccb->msg.header.length = sizeof(sccb->msg) + len; in sclp_early_print_vt220() 159 memset(sccb, 0, sizeof(*sccb)); in sclp_early_set_event_mask() 160 sccb->header.length = sizeof(*sccb); in sclp_early_set_event_mask() 197 struct init_sccb *sccb; in sclp_early_setup() local 319 rnmax = sccb->rnmax ? sccb->rnmax : sccb->rnmax2; in sclp_early_get_memsize() [all …]
|
H A D | sclp_cmd.c | 56 request->sccb = sccb; in sclp_sync_request_timeout() 96 if (!sccb) in _sclp_get_core_info() 131 sccb = kzalloc(sizeof(*sccb), GFP_KERNEL | GFP_DMA); in do_core_configure() 132 if (!sccb) in do_core_configure() 134 sccb->header.length = sizeof(*sccb); in do_core_configure() 149 kfree(sccb); in do_core_configure() 199 if (!sccb) in do_assign_storage() 254 if (!sccb) in sclp_attach_storage() 461 if (!sccb) in sclp_detect_standby_memory() 539 sccb->header.length = sizeof(*sccb); in do_chp_configure() [all …]
|
H A D | sclp_sdias.c | 114 memset(sccb, 0, sizeof(*sccb)); in sclp_sdias_blk_count() 117 sccb->hdr.length = sizeof(*sccb); in sclp_sdias_blk_count() 122 sccb->evbuf.event_id = 4712; in sclp_sdias_blk_count() 123 sccb->evbuf.dbs = 1; in sclp_sdias_blk_count() 125 request.sccb = sccb; in sclp_sdias_blk_count() 174 memset(sccb, 0, sizeof(*sccb)); in sclp_sdias_copy() 177 sccb->hdr.length = sizeof(*sccb); in sclp_sdias_copy() 180 sccb->evbuf.hdr.flags = 0; in sclp_sdias_copy() 189 sccb->evbuf.lbn = 0; in sclp_sdias_copy() 190 sccb->evbuf.dbs = 1; in sclp_sdias_copy() [all …]
|
H A D | sclp_pci.c | 60 struct pci_cfg_sccb *sccb; in do_pci_configure() local 67 if (!sccb) in do_pci_configure() 71 sccb->atype = SCLP_ATYPE_PCI; in do_pci_configure() 72 sccb->aid = fid; in do_pci_configure() 133 struct err_notify_sccb *sccb; in sclp_pci_report() local 152 if (!sccb) { in sclp_pci_report() 162 req.sccb = sccb; in sclp_pci_report() 164 sccb->evbuf.header.length = sizeof(sccb->evbuf) + report->length; in sclp_pci_report() 166 sccb->header.length = sizeof(sccb->header) + sccb->evbuf.header.length; in sclp_pci_report() 170 sccb->evbuf.fh = fh; in sclp_pci_report() [all …]
|
H A D | sclp.h | 125 __typeof__(sccb) __sccb = sccb; \ 129 #define sccb_get_recv_mask(sccb) sccb_get_generic_mask(sccb, 0) argument 130 #define sccb_get_send_mask(sccb) sccb_get_generic_mask(sccb, 1) argument 131 #define sccb_get_sclp_recv_mask(sccb) sccb_get_generic_mask(sccb, 2) argument 132 #define sccb_get_sclp_send_mask(sccb) sccb_get_generic_mask(sccb, 3) argument 136 __typeof__(sccb) __sccb = sccb; \ 140 #define sccb_set_recv_mask(sccb, val) sccb_set_generic_mask(sccb, 0, val) argument 141 #define sccb_set_send_mask(sccb, val) sccb_set_generic_mask(sccb, 1, val) argument 142 #define sccb_set_sclp_recv_mask(sccb, val) sccb_set_generic_mask(sccb, 2, val) argument 143 #define sccb_set_sclp_send_mask(sccb, val) sccb_set_generic_mask(sccb, 3, val) argument [all …]
|
H A D | sclp_ftp.c | 43 req->sccb, 24, req->sccb); in sclp_ftp_txcb() 91 struct sclp_diag_sccb *sccb; in sclp_ftp_et7() local 98 if (!req || !sccb) { in sclp_ftp_et7() 110 sccb->evbuf.mdd.ftp.srcflg = 0; in sclp_ftp_et7() 111 sccb->evbuf.mdd.ftp.pgsize = 0; in sclp_ftp_et7() 114 sccb->evbuf.mdd.ftp.fsize = 0; in sclp_ftp_et7() 115 sccb->evbuf.mdd.ftp.cmd = ftp->id; in sclp_ftp_et7() 116 sccb->evbuf.mdd.ftp.offset = ftp->ofs; in sclp_ftp_et7() 128 req->sccb = sccb; in sclp_ftp_et7() 144 sccb->hdr.response_code, sccb->evbuf.hdr.flags); in sclp_ftp_et7() [all …]
|
H A D | sclp_rw.c | 44 struct sccb_header *sccb; in sclp_make_buffer() local 52 buffer->sccb = sccb; in sclp_make_buffer() 75 return buffer->sccb; in sclp_unmake_buffer() 85 struct sccb_header *sccb; in sclp_initialize_mto() local 96 sccb = buffer->sccb; in sclp_initialize_mto() 100 msg = (struct msg_buf *)((addr_t) sccb + sccb->length); in sclp_initialize_mto() 135 struct sccb_header *sccb; in sclp_finalize_mto() local 142 sccb = buffer->sccb; in sclp_finalize_mto() 311 sccb = buffer->sccb; in sclp_buffer_space() 364 sccb = buffer->sccb; in sclp_writedata_callback() [all …]
|
H A D | sclp_ctl.c | 58 struct sccb_header *sccb; in sclp_ctl_ioctl_sccb() local 66 sccb = (void *) get_zeroed_page(GFP_KERNEL | GFP_DMA); in sclp_ctl_ioctl_sccb() 67 if (!sccb) in sclp_ctl_ioctl_sccb() 70 copy_from_user(sccb, u64_to_uptr(ctl_sccb.sccb), PAGE_SIZE); in sclp_ctl_ioctl_sccb() 72 sizeof(sccb->length) > copied || sccb->length > copied) { in sclp_ctl_ioctl_sccb() 76 if (sccb->length < 8) { in sclp_ctl_ioctl_sccb() 80 rc = sclp_sync_request(ctl_sccb.cmdw, sccb); in sclp_ctl_ioctl_sccb() 83 if (copy_to_user(u64_to_uptr(ctl_sccb.sccb), sccb, sccb->length)) in sclp_ctl_ioctl_sccb() 86 free_page((unsigned long) sccb); in sclp_ctl_ioctl_sccb()
|
H A D | sclp_vt220.c | 155 struct sclp_vt220_sccb *sccb; in sclp_vt220_callback() local 162 sccb = (struct sclp_vt220_sccb *) vt220_request->sclp_req.sccb; in sclp_vt220_callback() 223 struct sclp_vt220_sccb *sccb; in sclp_vt220_emit_current() local 263 struct sclp_vt220_sccb *sccb; in sclp_vt220_initialize_page() local 286 sccb = (struct sclp_vt220_sccb *) request->sclp_req.sccb; in sclp_vt220_space_left() 288 sccb->header.length; in sclp_vt220_space_left() 295 sccb = (struct sclp_vt220_sccb *) request->sclp_req.sccb; in sclp_vt220_chars_stored() 318 sccb = (struct sclp_vt220_sccb *) request->sclp_req.sccb; in sclp_vt220_add_msg() 319 buffer = (void *) ((addr_t) sccb + sccb->header.length); in sclp_vt220_add_msg() 339 sccb->header.length += to; in sclp_vt220_add_msg() [all …]
|
H A D | sclp.c | 132 if (sccb) { in sclp_trace_sccb() 133 sclp_trace_bin(prio + 1, sccb, abbrev_len(cmd, sccb), 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() 578 sccb = (struct sccb_header *) req->sccb; in sclp_read_cb() 599 sclp_read_req.sccb = sccb; in __sclp_make_read_req() 615 if (sccb == __pa(req->sccb)) in __sclp_find_req() 627 if (!sccb) in ok_response() 953 sclp_init_req.sccb = sccb; in __sclp_make_init_req() 954 sccb->header.length = sizeof(*sccb); in __sclp_make_init_req() [all …]
|
H A D | sclp_ap.c | 24 struct ap_cfg_sccb *sccb; in do_ap_configure() local 30 sccb = (struct ap_cfg_sccb *) get_zeroed_page(GFP_KERNEL | GFP_DMA); in do_ap_configure() 31 if (!sccb) in do_ap_configure() 34 sccb->header.length = PAGE_SIZE; in do_ap_configure() 36 rc = sclp_sync_request(cmd, sccb); in do_ap_configure() 39 switch (sccb->header.response_code) { in do_ap_configure() 44 apid, cmd, sccb->header.response_code); in do_ap_configure() 49 free_page((unsigned long) sccb); in do_ap_configure()
|
H A D | sclp_config.c | 95 struct sclp_ofb_sccb *sccb; in sclp_ofb_send_req() local 100 sccb = (struct sclp_ofb_sccb *) get_zeroed_page(GFP_KERNEL | GFP_DMA); in sclp_ofb_send_req() 101 if (!sccb) in sclp_ofb_send_req() 104 sccb->header.length = sizeof(struct sclp_ofb_sccb); in sclp_ofb_send_req() 105 sccb->ofb_evbuf.header.length = sizeof(struct sclp_ofb_evbuf); in sclp_ofb_send_req() 106 sccb->ofb_evbuf.header.type = EVTYP_CONFMGMDATA; in sclp_ofb_send_req() 107 sccb->ofb_evbuf.cm_data.ev_qualifier = EV_QUAL_OPEN4BUSINESS; in sclp_ofb_send_req() 108 memcpy(sccb->ofb_evbuf.ev_data, ev_data, len); in sclp_ofb_send_req() 115 rc = sclp_sync_request(SCLP_CMDW_WRITE_EVENT_DATA, sccb); in sclp_ofb_send_req() 119 response = sccb->header.response_code; in sclp_ofb_send_req() [all …]
|
H A D | sclp_cpi_sys.c | 82 struct cpi_sccb *sccb; in cpi_prepare_req() local 88 sccb = (struct cpi_sccb *) get_zeroed_page(GFP_KERNEL | GFP_DMA); in cpi_prepare_req() 89 if (!sccb) { in cpi_prepare_req() 95 sccb->header.length = sizeof(struct cpi_sccb); in cpi_prepare_req() 96 sccb->cpi_evbuf.header.length = sizeof(struct cpi_evbuf); in cpi_prepare_req() 97 sccb->cpi_evbuf.header.type = EVTYP_CTLPROGIDENT; in cpi_prepare_req() 98 evb = &sccb->cpi_evbuf; in cpi_prepare_req() 114 req->sccb = sccb; in cpi_prepare_req() 122 free_page((unsigned long) req->sccb); in cpi_free_req() 163 response = ((struct cpi_sccb *) req->sccb)->header.response_code; in cpi_req()
|
H A D | sclp_sd.c | 192 struct sclp_sd_sccb *sccb = (void *) page; in sclp_sd_sync() local 197 sclp_sd_listener_init(&listener, __pa(sccb)); in sclp_sd_sync() 201 memset(sccb, 0, PAGE_SIZE); in sclp_sd_sync() 202 sccb->hdr.length = sizeof(sccb->hdr) + sizeof(sccb->evbuf); in sclp_sd_sync() 203 evbuf = &sccb->evbuf; in sclp_sd_sync() 217 rc = sclp_sync_request(SCLP_CMDW_WRITE_EVENT_DATA, sccb); in sclp_sd_sync() 223 if (sccb->hdr.response_code == 0x73f0) { in sclp_sd_sync() 228 if (sccb->hdr.response_code != 0x0020 || !(evbuf->hdr.flags & 0x80)) { in sclp_sd_sync() 261 eq, di, sccb->hdr.response_code, evbuf->hdr.flags, in sclp_sd_sync()
|
H A D | sclp_rw.h | 68 void *sccb; member
|
/openbmc/qemu/pc-bios/s390-ccw/ |
H A D | sclp.c | 51 WriteEventMask *sccb = (void *)_sccb; in sclp_set_write_mask() local 55 sccb->cp_receive_mask = receive_mask; in sclp_set_write_mask() 56 sccb->cp_send_mask = send_mask; in sclp_set_write_mask() 68 WriteEventData *sccb = (void *)_sccb; in write() local 89 sccb->data[data_len++] = *p; in write() 97 sccb->ebh.flags = 0; in write() 112 ReadInfo *sccb = (void *)_sccb; in sclp_get_loadparm_ascii() local 115 sccb->h.length = SCCB_SIZE; in sclp_get_loadparm_ascii() 123 ReadEventData *sccb = (void *)_sccb; in sclp_read() local 131 sccb->h.length = SCCB_SIZE; in sclp_read() [all …]
|
/openbmc/qemu/hw/s390x/ |
H A D | sclp.c | 109 ReadInfo *read_info = (ReadInfo *) sccb; in read_SCP_info() 223 switch (((IoaCfgSccb *)sccb)->atype) { in sclp_configure_io_adapter() 251 sclp_c->read_SCP_info(sclp, sccb); in sclp_execute() 254 sclp_c->read_cpu_info(sclp, sccb); in sclp_execute() 312 if (cpu_physical_memory_is_io(sccb)) { in sclp_service_call() 315 if ((sccb & ~0x1fffUL) == 0 || (sccb & ~0x1fffUL) == env->psa in sclp_service_call() 316 || (sccb & ~0x7ffffff8UL) != 0) { in sclp_service_call() 351 sclp_c->service_interrupt(sclp, sccb); in sclp_service_call() 361 uint32_t param = sccb & ~3; in service_interrupt() 373 void sclp_service_interrupt(uint32_t sccb) in sclp_service_interrupt() argument [all …]
|
H A D | event-facility.c | 187 if (be16_to_cpu(sccb->h.length) < 8) { in write_event_data() 192 sccb->h.response_code = cpu_to_be16(write_event_length_check(sccb)); in write_event_data() 196 sccb->h.response_code = in write_event_data() 211 ReadEventData *red = (ReadEventData *) sccb; in handle_sccb_read_events() 215 slen = sccb_data_len(sccb); in handle_sccb_read_events() 265 switch (sccb->h.function_code) { in read_event_data() 267 sccb->h.response_code = cpu_to_be16( in read_event_data() 279 sccb->h.response_code = in read_event_data() 340 read_event_data(ef, sccb); in command_handler() 343 write_event_data(ef, sccb); in command_handler() [all …]
|
/openbmc/qemu/include/hw/s390x/ |
H A D | sclp.h | 211 void (*read_SCP_info)(SCLPDevice *sclp, SCCB *sccb); 212 void (*read_cpu_info)(SCLPDevice *sclp, SCCB *sccb); 215 void (*execute)(SCLPDevice *sclp, SCCB *sccb, uint32_t code); 216 void (*service_interrupt)(SCLPDevice *sclp, uint32_t sccb); 219 static inline int sccb_data_len(SCCB *sccb) in sccb_data_len() argument 221 return be16_to_cpu(sccb->h.length) - sizeof(sccb->h); in sccb_data_len() 224 void sclp_service_interrupt(uint32_t sccb); 226 int sclp_service_call(S390CPU *cpu, uint64_t sccb, uint32_t code); 227 int sclp_service_call_protected(S390CPU *cpu, uint64_t sccb, uint32_t code);
|
H A D | s390-pci-bus.h | 389 void s390_pci_sclp_configure(SCCB *sccb); 390 void s390_pci_sclp_deconfigure(SCCB *sccb);
|
/openbmc/linux/drivers/scsi/ |
H A D | FlashPoint.c | 28 struct sccb; 74 struct sccb { struct 109 struct sccb *Sccb_backlink; argument 249 struct sccb *currentSCCB; 1714 struct sccb *currSCCB; in FlashPoint_HandleInterrupt() 2282 struct sccb *currSCCB; in FPT_ssel() 2581 struct sccb *currSCCB; in FPT_sres() 2859 struct sccb *currSCCB; in FPT_sdecm() 3108 struct sccb *currSCCB; in FPT_sisyncn() 3189 struct sccb *currSCCB; in FPT_stsyncn() [all …]
|
/openbmc/linux/arch/s390/include/uapi/asm/ |
H A D | sclp_ctl.h | 17 __u64 sccb; member
|
/openbmc/linux/drivers/base/regmap/ |
H A D | Makefile | 20 obj-$(CONFIG_REGMAP_SCCB) += regmap-sccb.o
|
/openbmc/linux/arch/s390/include/asm/ |
H A D | sclp.h | 128 void sclp_early_set_buffer(void *sccb);
|