/kernel/linux/linux-5.10/drivers/s390/cio/ |
H A D | cio.c | 117 CIO_HEX_EVENT(0, &sch->schib, sizeof (struct schib)); in cio_start_handle_notoper() 162 sch->schib.scsw.cmd.actl |= SCSW_ACTL_START_PEND; in cio_start_key() 199 sch->schib.scsw.cmd.actl |= SCSW_ACTL_RESUME_PEND; in cio_resume() 238 sch->schib.scsw.cmd.actl |= SCSW_ACTL_HALT_PEND; in cio_halt() 272 sch->schib.scsw.cmd.actl |= SCSW_ACTL_CLEAR_PEND; in cio_clear() 340 if (!sch->schib.pmcw.ena) in cio_cancel_halt_clear() 344 if (!(scsw_actl(&sch->schib.scsw) & SCSW_ACTL_HALT_PEND) && in cio_cancel_halt_clear() 345 !(scsw_actl(&sch->schib.scsw) & SCSW_ACTL_CLEAR_PEND)) { in cio_cancel_halt_clear() 346 if (!scsw_is_tm(&sch->schib in cio_cancel_halt_clear() 379 cio_apply_config(struct subchannel *sch, struct schib *schib) cio_apply_config() argument 393 cio_check_config(struct subchannel *sch, struct schib *schib) cio_check_config() argument 412 struct schib schib; cio_commit_config() local 460 struct schib schib; cio_update_schib() local 612 struct schib schib; cio_test_for_console() local 627 struct schib schib; cio_get_console_sch_no() local 648 struct schib schib; cio_probe_console() local [all...] |
H A D | trace.h | 25 TP_PROTO(struct subchannel_id schid, struct schib *schib, int cc), 26 TP_ARGS(schid, schib, cc), 32 __field_struct(struct schib, schib) 50 __entry->devno = schib->pmcw.dev; 51 __entry->schib = *schib; 52 __entry->pmcw_ena = schib->pmcw.ena; 53 __entry->pmcw_st = schib [all...] |
H A D | css.c | 176 struct schib *schib) in css_validate_subchannel() 180 switch (schib->pmcw.st) { in css_validate_subchannel() 183 if (!css_sch_is_valid(schib)) in css_validate_subchannel() 185 else if (is_blacklisted(schid.ssid, schib->pmcw.dev)) { in css_validate_subchannel() 188 schib->pmcw.dev, schid.ssid); in css_validate_subchannel() 200 schid.ssid, schid.sch_no, schib->pmcw.st); in css_validate_subchannel() 206 struct schib *schib) in css_alloc_subchannel() 211 ret = css_validate_subchannel(schid, schib); in css_alloc_subchannel() 175 css_validate_subchannel(struct subchannel_id schid, struct schib *schib) css_validate_subchannel() argument 205 css_alloc_subchannel(struct subchannel_id schid, struct schib *schib) css_alloc_subchannel() argument 499 css_probe_device(struct subchannel_id schid, struct schib *schib) css_probe_device() argument 540 css_sch_is_valid(struct schib *schib) css_sch_is_valid() argument 552 struct schib schib; css_evaluate_new_subchannel() local [all...] |
H A D | device_ops.c | 145 if (!sch->schib.pmcw.ena) in ccw_device_clear() 201 if (!sch->schib.pmcw.ena) in ccw_device_start_timeout_key() 216 ((sch->schib.scsw.cmd.stctl & SCSW_STCTL_PRIM_STATUS) && in ccw_device_start_timeout_key() 217 !(sch->schib.scsw.cmd.stctl & SCSW_STCTL_SEC_STATUS)) || in ccw_device_start_timeout_key() 378 if (!sch->schib.pmcw.ena) in ccw_device_halt() 412 if (!sch->schib.pmcw.ena) in ccw_device_resume() 417 !(sch->schib.scsw.cmd.actl & SCSW_ACTL_SUSPENDED)) in ccw_device_resume() 482 chpid.id = sch->schib.pmcw.chpid[chp_idx]; in ccw_device_get_chp_desc() 502 chpid.id = sch->schib.pmcw.chpid[chp_idx]; in ccw_device_get_util_str() 547 if (!sch->schib in ccw_device_tm_start_timeout_key() [all...] |
H A D | css.h | 107 struct schib *schib); 153 struct schib; 154 int css_sch_is_valid(struct schib *);
|
H A D | ioasm.c | 16 static inline int __stsch(struct subchannel_id schid, struct schib *addr) in __stsch() 33 int stsch(struct subchannel_id schid, struct schib *addr) in stsch() 44 static inline int __msch(struct subchannel_id schid, struct schib *addr) in __msch() 61 int msch(struct subchannel_id schid, struct schib *addr) in msch()
|
H A D | ioasm.h | 16 int stsch(struct subchannel_id schid, struct schib *addr); 17 int msch(struct subchannel_id schid, struct schib *addr);
|
H A D | cio.h | 77 struct schib { struct 108 struct schib schib; /* subchannel information block */ member
|
H A D | device_fsm.c | 39 struct schib schib; in ccw_timeout_log() local 48 cc = stsch(sch->schid, &schib); in ccw_timeout_log() 86 printk(KERN_WARNING "cio: schib:\n"); in ccw_timeout_log() 88 &schib, sizeof(schib), 0); in ccw_timeout_log() 184 chpid.id = sch->schib.pmcw.chpid[i]; in __recover_lost_chpids() 213 sch->lpm = sch->schib.pmcw.pam & sch->opm; in ccw_device_recog_done() 487 u8 broken_paths = (sch->schib.pmcw.pam & sch->opm) ^ sch->vpm; in ccw_device_handle_broken_paths() 500 /* Update schib in ccw_device_verify_done() [all...] |
H A D | device_pgid.c | 77 req->lpm = lpm_adjust(req->lpm, sch->schib.pmcw.pam & sch->opm & in nop_do() 182 req->lpm = sch->schib.pmcw.pam; in pgid_wipeout_start() 459 req->lpm = lpm_adjust(req->lpm, sch->schib.pmcw.pam & in snid_do() 517 sch->lpm = sch->schib.pmcw.pam; in verify_start() 523 cdev->private->pgid_todo_mask = sch->schib.pmcw.pam; in verify_start() 613 req->lpm = sch->schib.pmcw.pam & sch->opm; in ccw_device_disband_start() 673 req->lpm = sch->schib.pmcw.pam & sch->opm; in ccw_device_stlck_start()
|
H A D | ccwreq.c | 337 if ((0x80 >> chp) & sch->schib.pmcw.lpum) in ccw_request_timeout() 340 scsw_cstat(&sch->schib.scsw), in ccw_request_timeout() 341 scsw_dstat(&sch->schib.scsw), in ccw_request_timeout() 343 sch->schib.pmcw.chpid[chp]); in ccw_request_timeout()
|
H A D | device.c | 744 priv->dev_id.devno = sch->schib.pmcw.dev; in io_subchannel_initialize_dev() 944 old_enabled = old_sch->schib.pmcw.ena; in ccw_device_move_to_sch() 963 sch->schib.pmcw.dev, rc); in ccw_device_move_to_sch() 1028 sch->lpm = sch->schib.pmcw.pam & sch->opm; in io_subchannel_init_fields() 1033 sch->schib.pmcw.dev, sch->schid.ssid, in io_subchannel_init_fields() 1034 sch->schid.sch_no, sch->schib.pmcw.pim, in io_subchannel_init_fields() 1035 sch->schib.pmcw.pam, sch->schib.pmcw.pom); in io_subchannel_init_fields() 1152 if (scsw_actl(&sch->schib.scsw) == 0 || sch->schib in io_subchannel_terminate_path() [all...] |
H A D | chsc_sch.c | 126 struct schib schib; in chsc_subchannel_prepare() local 132 cc = stsch(sch->schid, &schib); in chsc_subchannel_prepare() 133 if (!cc && scsw_stctl(&schib.scsw)) in chsc_subchannel_prepare() 210 return sch->schib.pmcw.ena && !scsw_fctl(&sch->schib.scsw); in chsc_subchannel_match_next_free() 266 sch->schib.scsw.cmd.fctl |= SCSW_FCTL_START_FUNC; in chsc_async()
|
/kernel/linux/linux-6.6/drivers/s390/cio/ |
H A D | cio.c | 117 CIO_HEX_EVENT(0, &sch->schib, sizeof (struct schib)); in cio_start_handle_notoper() 162 sch->schib.scsw.cmd.actl |= SCSW_ACTL_START_PEND; in cio_start_key() 199 sch->schib.scsw.cmd.actl |= SCSW_ACTL_RESUME_PEND; in cio_resume() 238 sch->schib.scsw.cmd.actl |= SCSW_ACTL_HALT_PEND; in cio_halt() 272 sch->schib.scsw.cmd.actl |= SCSW_ACTL_CLEAR_PEND; in cio_clear() 340 if (!sch->schib.pmcw.ena) in cio_cancel_halt_clear() 344 if (!(scsw_actl(&sch->schib.scsw) & SCSW_ACTL_HALT_PEND) && in cio_cancel_halt_clear() 345 !(scsw_actl(&sch->schib.scsw) & SCSW_ACTL_CLEAR_PEND)) { in cio_cancel_halt_clear() 346 if (!scsw_is_tm(&sch->schib in cio_cancel_halt_clear() 379 cio_apply_config(struct subchannel *sch, struct schib *schib) cio_apply_config() argument 393 cio_check_config(struct subchannel *sch, struct schib *schib) cio_check_config() argument 412 struct schib schib; cio_commit_config() local 460 struct schib schib; cio_update_schib() local 612 struct schib schib; cio_test_for_console() local 627 struct schib schib; cio_get_console_sch_no() local 648 struct schib schib; cio_probe_console() local [all...] |
H A D | trace.h | 25 TP_PROTO(struct subchannel_id schid, struct schib *schib, int cc), 26 TP_ARGS(schid, schib, cc), 32 __field_struct(struct schib, schib) 50 __entry->devno = schib->pmcw.dev; 51 __entry->schib = *schib; 52 __entry->pmcw_ena = schib->pmcw.ena; 53 __entry->pmcw_st = schib [all...] |
H A D | css.c | 175 struct schib *schib) in css_validate_subchannel() 179 switch (schib->pmcw.st) { in css_validate_subchannel() 182 if (!css_sch_is_valid(schib)) in css_validate_subchannel() 184 else if (is_blacklisted(schid.ssid, schib->pmcw.dev)) { in css_validate_subchannel() 187 schib->pmcw.dev, schid.ssid); in css_validate_subchannel() 199 schid.ssid, schid.sch_no, schib->pmcw.st); in css_validate_subchannel() 205 struct schib *schib) in css_alloc_subchannel() 210 ret = css_validate_subchannel(schid, schib); in css_alloc_subchannel() 174 css_validate_subchannel(struct subchannel_id schid, struct schib *schib) css_validate_subchannel() argument 204 css_alloc_subchannel(struct subchannel_id schid, struct schib *schib) css_alloc_subchannel() argument 466 css_probe_device(struct subchannel_id schid, struct schib *schib) css_probe_device() argument 507 css_sch_is_valid(struct schib *schib) css_sch_is_valid() argument 519 struct schib schib; css_evaluate_new_subchannel() local [all...] |
H A D | device_ops.c | 145 if (!sch->schib.pmcw.ena) in ccw_device_clear() 201 if (!sch->schib.pmcw.ena) in ccw_device_start_timeout_key() 217 ((sch->schib.scsw.cmd.stctl & SCSW_STCTL_PRIM_STATUS) && in ccw_device_start_timeout_key() 218 !(sch->schib.scsw.cmd.stctl & SCSW_STCTL_SEC_STATUS))) in ccw_device_start_timeout_key() 378 if (!sch->schib.pmcw.ena) in ccw_device_halt() 412 if (!sch->schib.pmcw.ena) in ccw_device_resume() 417 !(sch->schib.scsw.cmd.actl & SCSW_ACTL_SUSPENDED)) in ccw_device_resume() 482 chpid.id = sch->schib.pmcw.chpid[chp_idx]; in ccw_device_get_chp_desc() 502 chpid.id = sch->schib.pmcw.chpid[chp_idx]; in ccw_device_get_util_str() 547 if (!sch->schib in ccw_device_tm_start_timeout_key() [all...] |
H A D | css.h | 105 struct schib *schib); 151 struct schib; 152 int css_sch_is_valid(struct schib *);
|
H A D | ioasm.c | 18 static inline int __stsch(struct subchannel_id schid, struct schib *addr) in __stsch() 36 int stsch(struct subchannel_id schid, struct schib *addr) in stsch() 47 static inline int __msch(struct subchannel_id schid, struct schib *addr) in __msch() 65 int msch(struct subchannel_id schid, struct schib *addr) in msch()
|
H A D | device_fsm.c | 40 struct schib schib; in ccw_timeout_log() local 49 cc = stsch(sch->schid, &schib); in ccw_timeout_log() 87 printk(KERN_WARNING "cio: schib:\n"); in ccw_timeout_log() 89 &schib, sizeof(schib), 0); in ccw_timeout_log() 179 chpid.id = sch->schib.pmcw.chpid[i]; in __recover_lost_chpids() 208 sch->lpm = sch->schib.pmcw.pam & sch->opm; in ccw_device_recog_done() 476 u8 broken_paths = (sch->schib.pmcw.pam & sch->opm) ^ sch->vpm; in ccw_device_handle_broken_paths() 489 /* Update schib in ccw_device_verify_done() [all...] |
H A D | ioasm.h | 16 int stsch(struct subchannel_id schid, struct schib *addr); 17 int msch(struct subchannel_id schid, struct schib *addr);
|
H A D | cio.h | 66 struct schib { struct 97 struct schib schib; /* subchannel information block */ member
|
H A D | device_pgid.c | 78 req->lpm = lpm_adjust(req->lpm, sch->schib.pmcw.pam & sch->opm & in nop_do() 183 req->lpm = sch->schib.pmcw.pam; in pgid_wipeout_start() 460 req->lpm = lpm_adjust(req->lpm, sch->schib.pmcw.pam & in snid_do() 518 sch->lpm = sch->schib.pmcw.pam; in verify_start() 524 cdev->private->pgid_todo_mask = sch->schib.pmcw.pam; in verify_start() 614 req->lpm = sch->schib.pmcw.pam & sch->opm; in ccw_device_disband_start() 674 req->lpm = sch->schib.pmcw.pam & sch->opm; in ccw_device_stlck_start()
|
H A D | ccwreq.c | 337 if ((0x80 >> chp) & sch->schib.pmcw.lpum) in ccw_request_timeout() 340 scsw_cstat(&sch->schib.scsw), in ccw_request_timeout() 341 scsw_dstat(&sch->schib.scsw), in ccw_request_timeout() 343 sch->schib.pmcw.chpid[chp]); in ccw_request_timeout()
|
H A D | device.c | 741 priv->dev_id.devno = sch->schib.pmcw.dev; in io_subchannel_initialize_dev() 925 old_enabled = old_sch->schib.pmcw.ena; in ccw_device_move_to_sch() 944 sch->schib.pmcw.dev, rc); in ccw_device_move_to_sch() 1009 sch->lpm = sch->schib.pmcw.pam & sch->opm; in io_subchannel_init_fields() 1014 sch->schib.pmcw.dev, sch->schid.ssid, in io_subchannel_init_fields() 1015 sch->schid.sch_no, sch->schib.pmcw.pim, in io_subchannel_init_fields() 1016 sch->schib.pmcw.pam, sch->schib.pmcw.pom); in io_subchannel_init_fields() 1128 if (scsw_actl(&sch->schib.scsw) == 0 || sch->schib in io_subchannel_terminate_path() [all...] |