Home
last modified time | relevance | path

Searched refs:ccw (Results 1 – 45 of 45) sorted by relevance

/linux-4.4.14/Documentation/DocBook/
Ds390-drivers.xml.db12 API-struct-ccw-dev-id
13 API-ccw-dev-id-is-equal
15 API-struct-ccw-device
16 API-struct-ccw-driver
17 API-ccw-device-set-offline
18 API-ccw-device-set-online
21 API-ccw-driver-register
22 API-ccw-driver-unregister
23 API-ccw-device-siosl
24 API-ccw-device-set-options-mask
[all …]
/linux-4.4.14/drivers/s390/char/
Dtape.h305 tape_ccw_cc(struct ccw1 *ccw, __u8 cmd_code, __u16 memsize, void *cda) in tape_ccw_cc() argument
307 ccw->cmd_code = cmd_code; in tape_ccw_cc()
308 ccw->flags = CCW_FLAG_CC; in tape_ccw_cc()
309 ccw->count = memsize; in tape_ccw_cc()
310 ccw->cda = (__u32)(addr_t) cda; in tape_ccw_cc()
311 return ccw + 1; in tape_ccw_cc()
315 tape_ccw_end(struct ccw1 *ccw, __u8 cmd_code, __u16 memsize, void *cda) in tape_ccw_end() argument
317 ccw->cmd_code = cmd_code; in tape_ccw_end()
318 ccw->flags = 0; in tape_ccw_end()
319 ccw->count = memsize; in tape_ccw_end()
[all …]
Dtape_std.c275 struct ccw1 *ccw; in tape_std_mtfsf() local
282 ccw = tape_ccw_cc(request->cpaddr, MODE_SET_DB, 1, in tape_std_mtfsf()
284 ccw = tape_ccw_repeat(ccw, FORSPACEFILE, mt_count); in tape_std_mtfsf()
285 ccw = tape_ccw_end(ccw, NOP, 0, NULL); in tape_std_mtfsf()
299 struct ccw1 *ccw; in tape_std_mtfsr() local
307 ccw = tape_ccw_cc(request->cpaddr, MODE_SET_DB, 1, in tape_std_mtfsr()
309 ccw = tape_ccw_repeat(ccw, FORSPACEBLOCK, mt_count); in tape_std_mtfsr()
310 ccw = tape_ccw_end(ccw, NOP, 0, NULL); in tape_std_mtfsr()
331 struct ccw1 *ccw; in tape_std_mtbsr() local
339 ccw = tape_ccw_cc(request->cpaddr, MODE_SET_DB, 1, in tape_std_mtbsr()
[all …]
Draw3270.c157 rq->ccw.cda = __pa(rq->buffer); in raw3270_request_alloc()
158 rq->ccw.flags = CCW_FLAG_SLI; in raw3270_request_alloc()
180 rq->ccw.cmd_code = 0; in raw3270_request_reset()
181 rq->ccw.count = 0; in raw3270_request_reset()
182 rq->ccw.cda = __pa(rq->buffer); in raw3270_request_reset()
183 rq->ccw.flags = CCW_FLAG_SLI; in raw3270_request_reset()
194 rq->ccw.cmd_code = cmd; in raw3270_request_set_cmd()
203 if (size + rq->ccw.count > rq->size) in raw3270_request_add_data()
205 memcpy(rq->buffer + rq->ccw.count, data, size); in raw3270_request_add_data()
206 rq->ccw.count += size; in raw3270_request_add_data()
[all …]
Dcon3215.c146 struct ccw1 *ccw; in raw3215_mk_read_req() local
158 ccw = req->ccws; in raw3215_mk_read_req()
159 ccw->cmd_code = 0x0A; /* read inquiry */ in raw3215_mk_read_req()
160 ccw->flags = 0x20; /* ignore incorrect length */ in raw3215_mk_read_req()
161 ccw->count = 160; in raw3215_mk_read_req()
162 ccw->cda = (__u32) __pa(raw->inbuf); in raw3215_mk_read_req()
174 struct ccw1 *ccw; in raw3215_mk_write_req() local
191 ccw = req->ccws; in raw3215_mk_write_req()
217 if (ccw > req->ccws) in raw3215_mk_write_req()
218 ccw[-1].flags |= 0x40; /* use command chaining */ in raw3215_mk_write_req()
[all …]
Draw3270.h100 struct ccw1 ccw; /* single ccw. */ member
Dfs3270.c138 fp->init->ccw.count = fp->rdbuf_size; in fs3270_activate()
Dtape_34xx.c1226 MODULE_DEVICE_TABLE(ccw, tape_34xx_ids);
Dvmur.c58 MODULE_DEVICE_TABLE(ccw, ur_ids);
Dtape_3590.c1700 MODULE_DEVICE_TABLE(ccw, tape_3590_ids);
/linux-4.4.14/drivers/s390/virtio/
Dvirtio_ccw.c304 struct ccw1 *ccw, __u32 intparm) in ccw_io_helper() argument
312 ret = ccw_device_start(vcdev->cdev, ccw, intparm, 0, 0); in ccw_io_helper()
326 struct ccw1 *ccw) in virtio_ccw_drop_indicator() argument
341 ccw->cmd_code = CCW_CMD_SET_IND_ADAPTER; in virtio_ccw_drop_indicator()
342 ccw->count = sizeof(*thinint_area); in virtio_ccw_drop_indicator()
343 ccw->cda = (__u32)(unsigned long) thinint_area; in virtio_ccw_drop_indicator()
350 ccw->cmd_code = CCW_CMD_SET_IND; in virtio_ccw_drop_indicator()
351 ccw->count = sizeof(vcdev->indicators); in virtio_ccw_drop_indicator()
352 ccw->cda = (__u32)(unsigned long) indicatorp; in virtio_ccw_drop_indicator()
356 ccw->flags = 0; in virtio_ccw_drop_indicator()
[all …]
/linux-4.4.14/drivers/dma/
Dmxs-dma.c117 struct mxs_dma_ccw *ccw; member
424 mxs_chan->ccw = dma_zalloc_coherent(mxs_dma->dma_device.dev, in mxs_dma_alloc_chan_resources()
427 if (!mxs_chan->ccw) { in mxs_dma_alloc_chan_resources()
457 mxs_chan->ccw, mxs_chan->ccw_phys); in mxs_dma_alloc_chan_resources()
472 mxs_chan->ccw, mxs_chan->ccw_phys); in mxs_dma_free_chan_resources()
506 struct mxs_dma_ccw *ccw; in mxs_dma_prep_slave_sg() local
532 ccw = &mxs_chan->ccw[idx - 1]; in mxs_dma_prep_slave_sg()
533 ccw->next = mxs_chan->ccw_phys + sizeof(*ccw) * idx; in mxs_dma_prep_slave_sg()
534 ccw->bits |= CCW_CHAIN; in mxs_dma_prep_slave_sg()
535 ccw->bits &= ~CCW_IRQ; in mxs_dma_prep_slave_sg()
[all …]
/linux-4.4.14/arch/s390/include/asm/
Didals.h70 set_normalized_cda(struct ccw1 * ccw, void *vaddr) in set_normalized_cda() argument
75 if (ccw->flags & CCW_FLAG_IDA) in set_normalized_cda()
77 nridaws = idal_nr_words(vaddr, ccw->count); in set_normalized_cda()
83 idal_create_words(idal, vaddr, ccw->count); in set_normalized_cda()
84 ccw->flags |= CCW_FLAG_IDA; in set_normalized_cda()
87 ccw->cda = (__u32)(unsigned long) vaddr; in set_normalized_cda()
95 clear_normalized_cda(struct ccw1 * ccw) in clear_normalized_cda() argument
97 if (ccw->flags & CCW_FLAG_IDA) { in clear_normalized_cda()
98 kfree((void *)(unsigned long) ccw->cda); in clear_normalized_cda()
99 ccw->flags &= ~CCW_FLAG_IDA; in clear_normalized_cda()
[all …]
Dipl.h82 struct ipl_block_ccw ccw; member
127 } ccw; member
/linux-4.4.14/drivers/s390/block/
Ddasd_fba.c53 MODULE_DEVICE_TABLE(ccw, dasd_fba_ids);
87 define_extent(struct ccw1 * ccw, struct DE_fba_data *data, int rw, in define_extent() argument
90 ccw->cmd_code = DASD_FBA_CCW_DEFINE_EXTENT; in define_extent()
91 ccw->flags = 0; in define_extent()
92 ccw->count = 16; in define_extent()
93 ccw->cda = (__u32) __pa(data); in define_extent()
107 locate_record(struct ccw1 * ccw, struct LO_fba_data *data, int rw, in locate_record() argument
110 ccw->cmd_code = DASD_FBA_CCW_LOCATE; in locate_record()
111 ccw->flags = 0; in locate_record()
112 ccw->count = 8; in locate_record()
[all …]
Ddasd_eckd.c86 MODULE_DEVICE_TABLE(ccw, dasd_eckd_ids);
99 struct ccw1 ccw; member
109 struct ccw1 ccw; member
237 define_extent(struct ccw1 *ccw, struct DE_eckd_data *data, unsigned int trk, in define_extent() argument
247 ccw->cmd_code = DASD_ECKD_CCW_DEFINE_EXTENT; in define_extent()
248 ccw->flags = 0; in define_extent()
249 ccw->count = 16; in define_extent()
250 ccw->cda = (__u32) __pa(data); in define_extent()
272 rc = check_XRC (ccw, data, device); in define_extent()
277 rc = check_XRC (ccw, data, device); in define_extent()
[all …]
Ddasd_3990_erp.c200 struct ccw1 *ccw; in dasd_3990_erp_DCTL() local
218 ccw = dctl_cqr->cpaddr; in dasd_3990_erp_DCTL()
219 memset(ccw, 0, sizeof(struct ccw1)); in dasd_3990_erp_DCTL()
220 ccw->cmd_code = CCW_CMD_DCTL; in dasd_3990_erp_DCTL()
221 ccw->count = 4; in dasd_3990_erp_DCTL()
222 ccw->cda = (__u32)(addr_t) DCTL_data; in dasd_3990_erp_DCTL()
1599 struct ccw1 *ccw, *oldccw; in dasd_3990_erp_action_1B_32() local
1693 ccw = erp->cpaddr; in dasd_3990_erp_action_1B_32()
1694 memset(ccw, 0, sizeof(struct ccw1)); in dasd_3990_erp_action_1B_32()
1695 ccw->cmd_code = DASD_ECKD_CCW_DEFINE_EXTENT; in dasd_3990_erp_action_1B_32()
[all …]
Ddasd_alias.c419 struct ccw1 *ccw; in read_unit_address_configuration() local
441 ccw = cqr->cpaddr; in read_unit_address_configuration()
442 ccw->cmd_code = DASD_ECKD_CCW_PSF; in read_unit_address_configuration()
443 ccw->count = sizeof(struct dasd_psf_prssd_data); in read_unit_address_configuration()
444 ccw->flags |= CCW_FLAG_CC; in read_unit_address_configuration()
445 ccw->cda = (__u32)(addr_t) prssdp; in read_unit_address_configuration()
450 ccw++; in read_unit_address_configuration()
451 ccw->cmd_code = DASD_ECKD_CCW_RSSD; in read_unit_address_configuration()
452 ccw->count = sizeof(*(lcu->uac)); in read_unit_address_configuration()
453 ccw->cda = (__u32)(addr_t) lcu->uac; in read_unit_address_configuration()
[all …]
Ddasd_eer.c459 struct ccw1 *ccw; in dasd_eer_enable() local
478 ccw = cqr->cpaddr; in dasd_eer_enable()
479 ccw->cmd_code = DASD_ECKD_CCW_SNSS; in dasd_eer_enable()
480 ccw->count = SNSS_DATA_SIZE; in dasd_eer_enable()
481 ccw->flags = 0; in dasd_eer_enable()
482 ccw->cda = (__u32)(addr_t) cqr->data; in dasd_eer_enable()
Ddasd.c1245 struct ccw1 *ccw; in dasd_kfree_request() local
1248 ccw = cqr->cpaddr; in dasd_kfree_request()
1250 clear_normalized_cda(ccw); in dasd_kfree_request()
1251 } while (ccw++->flags & (CCW_FLAG_CC | CCW_FLAG_DC)); in dasd_kfree_request()
3766 struct ccw1 *ccw; in dasd_generic_build_rdc() local
3779 ccw = cqr->cpaddr; in dasd_generic_build_rdc()
3780 ccw->cmd_code = CCW_CMD_RDC; in dasd_generic_build_rdc()
3783 ccw->cda = (__u32)(addr_t) idaw; in dasd_generic_build_rdc()
3784 ccw->flags = CCW_FLAG_IDA; in dasd_generic_build_rdc()
3787 ccw->cda = (__u32)(addr_t) rdc_buffer; in dasd_generic_build_rdc()
[all …]
Ddasd_int.h670 dasd_kmalloc_set_cda(struct ccw1 *ccw, void *cda, struct dasd_device *device) in dasd_kmalloc_set_cda() argument
672 return set_normalized_cda(ccw, cda); in dasd_kmalloc_set_cda()
Ddasd_devmap.c143 *id1 = ipl_info.data.ccw.dev_id.ssid; in dasd_busid()
144 *devno = ipl_info.data.ccw.dev_id.devno; in dasd_busid()
/linux-4.4.14/drivers/s390/net/
Dctcm_mpc.c1527 rc = ccw_device_start(ch->cdev, &ch->ccw[15], in mpc_action_send_discontact()
1711 ch->ccw[8].flags = CCW_FLAG_SLI | CCW_FLAG_CC; in mpc_action_side_xid()
1712 ch->ccw[8].count = 0; in mpc_action_side_xid()
1713 ch->ccw[8].cda = 0x00; in mpc_action_side_xid()
1724 ch->ccw[9].cmd_code = CCW_CMD_WRITE; in mpc_action_side_xid()
1725 ch->ccw[9].flags = CCW_FLAG_SLI | CCW_FLAG_CC; in mpc_action_side_xid()
1726 ch->ccw[9].count = TH_HEADER_LENGTH; in mpc_action_side_xid()
1727 ch->ccw[9].cda = virt_to_phys(ch->xid_th); in mpc_action_side_xid()
1731 ch->ccw[10].cmd_code = CCW_CMD_WRITE; in mpc_action_side_xid()
1732 ch->ccw[10].flags = CCW_FLAG_SLI | CCW_FLAG_CC; in mpc_action_side_xid()
[all …]
Dctcm_fsms.c278 clear_normalized_cda(&ch->ccw[4]); in chx_txdone()
306 ch->ccw[1].count = ch->trans_skb->len; in chx_txdone()
309 rc = ccw_device_start(ch->cdev, &ch->ccw[0], in chx_txdone()
418 ch->ccw[1].count = ch->max_bufsize; in chx_rx()
419 rc = ccw_device_start(ch->cdev, &ch->ccw[0], in chx_rx()
476 ch->ccw[1].count = 2; /* Transfer only length */ in chx_firstio()
480 rc = ccw_device_start(ch->cdev, &ch->ccw[0], in chx_firstio()
527 ch->ccw[1].count = ch->max_bufsize; in chx_rxidle()
529 rc = ccw_device_start(ch->cdev, &ch->ccw[0], in chx_rxidle()
566 CTCM_CCW_DUMP((char *)&ch->ccw[6], sizeof(struct ccw1) * 2); in ctcm_chx_setmode()
[all …]
Dctcm_main.c219 clear_normalized_cda(&ch->ccw[4]); in channel_remove()
221 clear_normalized_cda(&ch->ccw[1]); in channel_remove()
229 kfree(ch->ccw); in channel_remove()
383 clear_normalized_cda(&ch->ccw[1]); in ctcm_ch_alloc_buffer()
394 ch->ccw[1].count = ch->max_bufsize; in ctcm_ch_alloc_buffer()
395 if (set_normalized_cda(&ch->ccw[1], ch->trans_skb->data)) { in ctcm_ch_alloc_buffer()
406 ch->ccw[1].count = 0; in ctcm_ch_alloc_buffer()
533 ch->ccw[4].count = block_len; in ctcm_transmit_skb()
534 if (set_normalized_cda(&ch->ccw[4], skb->data)) { in ctcm_transmit_skb()
553 ch->ccw[1].count = skb->len; in ctcm_transmit_skb()
[all …]
Dctcm_main.h147 struct ccw1 *ccw; member
Dqeth_core_main.c539 rc = ccw_device_start(card->read.ccwdev, &card->read.ccw, in qeth_issue_next_read()
737 memcpy(&channel->ccw, READ_CCW, sizeof(struct ccw1)); in qeth_setup_ccw()
739 memcpy(&channel->ccw, WRITE_CCW, sizeof(struct ccw1)); in qeth_setup_ccw()
740 channel->ccw.count = len; in qeth_setup_ccw()
741 channel->ccw.cda = (__u32) __pa(iob); in qeth_setup_ccw()
1697 channel->ccw.cmd_code = ciw->cmd; in qeth_read_conf_data()
1698 channel->ccw.cda = (__u32) __pa(rcd_buf); in qeth_read_conf_data()
1699 channel->ccw.count = ciw->count; in qeth_read_conf_data()
1700 channel->ccw.flags = CCW_FLAG_SLI; in qeth_read_conf_data()
1703 ret = ccw_device_start_timeout(channel->ccwdev, &channel->ccw, in qeth_read_conf_data()
[all …]
Dqeth_core.h599 struct ccw1 ccw; member
Dlcs.c2382 MODULE_DEVICE_TABLE(ccw, lcs_ids);
Dqeth_l2_main.c1459 rc = ccw_device_start(card->write.ccwdev, &card->write.ccw, in qeth_osn_send_control_data()
/linux-4.4.14/arch/s390/kernel/
Dipl.c316 if ((ipb->ipl_info.ccw.vm_flags & DIAG308_VM_FLAGS_VP_VALID) && in reipl_get_ascii_vmparm()
317 (ipb->ipl_info.ccw.vm_parm_len > 0)) { in reipl_get_ascii_vmparm()
319 len = min_t(size_t, size - 1, ipb->ipl_info.ccw.vm_parm_len); in reipl_get_ascii_vmparm()
320 memcpy(dest, ipb->ipl_info.ccw.vm_parm, len); in reipl_get_ascii_vmparm()
570 reipl_ccw_dev(&ipl_info.data.ccw.dev_id); in __ipl_run()
654 memset(ipb->ipl_info.ccw.vm_parm, 0, DIAG308_VMPARM_SIZE); in reipl_generic_vmparm_store()
655 ipb->ipl_info.ccw.vm_parm_len = ip_len; in reipl_generic_vmparm_store()
657 ipb->ipl_info.ccw.vm_flags |= DIAG308_VM_FLAGS_VP_VALID; in reipl_generic_vmparm_store()
658 memcpy(ipb->ipl_info.ccw.vm_parm, buf, ip_len); in reipl_generic_vmparm_store()
659 ASCEBC(ipb->ipl_info.ccw.vm_parm, ip_len); in reipl_generic_vmparm_store()
[all …]
/linux-4.4.14/drivers/crypto/nx/
Dnx-842-powernv.c396 u32 ccw; in nx842_powernv_function() local
426 ccw = 0; in nx842_powernv_function()
427 ccw = SET_FIELD(ccw, CCW_CT, nx842_ct); in nx842_powernv_function()
428 ccw = SET_FIELD(ccw, CCW_CI_842, 0); /* use 0 for hw auto-selection */ in nx842_powernv_function()
429 ccw = SET_FIELD(ccw, CCW_FC_842, fc); in nx842_powernv_function()
439 ret = icswx(cpu_to_be32(ccw), crb); in nx842_powernv_function()
442 (unsigned int)ccw, in nx842_powernv_function()
443 (unsigned int)be32_to_cpu(crb->ccw)); in nx842_powernv_function()
/linux-4.4.14/Documentation/s390/
Ddriver-model.txt10 All ccw devices are accessed via a subchannel, this is reflected in the
28 system; it is a pseudo subchannel where disconnected ccw devices are moved to
29 if they are displaced by another ccw device becoming operational on their
30 former subchannel. The ccw devices will be moved again to a proper subchannel
33 You should address a ccw device via its bus id (e.g. 0.0.4711); the device can
34 be found under bus/ccw/devices/.
36 All ccw devices export some data via sysfs.
62 1.1 Bringing up a ccw device
73 1.2 Writing a driver for ccw devices
208 The ccwgroup mechanism is designed to handle devices consisting of multiple ccw
[all …]
Dcds.txt145 ccw to retrieve device characteristics in its online routine.
335 ccw_device_start() must be called disabled and with the ccw device lock held.
413 ccw_device_halt() must be called disabled and with the ccw device lock held.
428 -EINVAL - The device is not operational or the ccw device is not online.
446 ccw_device_clear() must be called disabled and with the ccw device lock held.
457 -EINVAL - The device is not operational or the ccw device is not online.
DCommonIO9 Enable logging of debug information in case of ccw device timeouts.
/linux-4.4.14/arch/powerpc/include/asm/
Dicswx.h130 __be32 ccw; member
168 static inline int icswx(__be32 ccw, struct coprocessor_request_block *crb) in icswx() argument
170 __be64 ccw_reg = ccw; in icswx()
/linux-4.4.14/arch/powerpc/mm/
Dicswx.c218 u32 ccw; in acop_handle_fault() local
226 ccw = regs->gpr[rs]; in acop_handle_fault()
227 ct = (ccw >> 16) & 0x3f; in acop_handle_fault()
/linux-4.4.14/Documentation/virtual/kvm/
Ds390-diag.txt43 provides either s390-virtio (subcodes 0-2) or virtio-ccw (subcode 3).
58 Subcode 3 - virtio-ccw notification
62 the subchannel of the virtio-ccw proxy device to be notified.
Dapi.txt1613 For the special case of virtio-ccw devices on s390, the ioevent is matched
1627 For virtio-ccw devices, addr contains the subchannel id and datamatch the
/linux-4.4.14/drivers/s390/cio/
Dqdio_main.c1359 irq_ptr->ccw.cmd_code = irq_ptr->equeue.cmd; in qdio_establish()
1360 irq_ptr->ccw.flags = CCW_FLAG_SLI; in qdio_establish()
1361 irq_ptr->ccw.count = irq_ptr->equeue.count; in qdio_establish()
1362 irq_ptr->ccw.cda = (u32)((addr_t)irq_ptr->qdr); in qdio_establish()
1367 rc = ccw_device_start(cdev, &irq_ptr->ccw, QDIO_DOING_ESTABLISH, 0, 0); in qdio_establish()
1429 irq_ptr->ccw.cmd_code = irq_ptr->aqueue.cmd; in qdio_activate()
1430 irq_ptr->ccw.flags = CCW_FLAG_SLI; in qdio_activate()
1431 irq_ptr->ccw.count = irq_ptr->aqueue.count; in qdio_activate()
1432 irq_ptr->ccw.cda = 0; in qdio_activate()
1437 rc = ccw_device_start(cdev, &irq_ptr->ccw, QDIO_DOING_ACTIVATE, in qdio_activate()
Dblacklist.c179 from_ssid = ipl_info.data.ccw.dev_id.ssid; in blacklist_parse_parameters()
180 from = ipl_info.data.ccw.dev_id.devno; in blacklist_parse_parameters()
Dqdio_setup.c463 memset(&irq_ptr->ccw, 0, sizeof(irq_ptr->ccw)); in qdio_setup_irq()
Dqdio.h293 struct ccw1 ccw; member
/linux-4.4.14/arch/s390/include/uapi/asm/
DKbuild50 header-y += virtio-ccw.h
/linux-4.4.14/drivers/s390/scsi/
Dzfcp_ccw.c86 MODULE_DEVICE_TABLE(ccw, zfcp_ccw_device_id);