Lines Matching refs:schib
173 struct schib *schib) in css_validate_subchannel() argument
177 switch (schib->pmcw.st) { in css_validate_subchannel()
180 if (!css_sch_is_valid(schib)) in css_validate_subchannel()
182 else if (is_blacklisted(schid.ssid, schib->pmcw.dev)) { in css_validate_subchannel()
185 schib->pmcw.dev, schid.ssid); in css_validate_subchannel()
197 schid.ssid, schid.sch_no, schib->pmcw.st); in css_validate_subchannel()
203 struct schib *schib) in css_alloc_subchannel() argument
208 ret = css_validate_subchannel(schid, schib); in css_alloc_subchannel()
217 sch->schib = *schib; in css_alloc_subchannel()
218 sch->st = schib->pmcw.st; in css_alloc_subchannel()
293 ssd_from_pmcw(&sch->ssd_info, &sch->schib.pmcw); in css_update_ssd_info()
360 struct pmcw *pmcw = &sch->schib.pmcw; in pimpampom_show()
372 struct pmcw *pmcw = &sch->schib.pmcw; in dev_busid_show()
437 static int css_probe_device(struct subchannel_id schid, struct schib *schib) in css_probe_device() argument
442 sch = css_alloc_subchannel(schid, schib); in css_probe_device()
478 int css_sch_is_valid(struct schib *schib) in css_sch_is_valid() argument
480 if ((schib->pmcw.st == SUBCHANNEL_TYPE_IO) && !schib->pmcw.dnv) in css_sch_is_valid()
482 if ((schib->pmcw.st == SUBCHANNEL_TYPE_MSG) && !schib->pmcw.w) in css_sch_is_valid()
490 struct schib schib; in css_evaluate_new_subchannel() local
503 ccode = stsch(schid, &schib); in css_evaluate_new_subchannel()
507 return css_probe_device(schid, &schib); in css_evaluate_new_subchannel()