Lines Matching refs:cdev
99 static int diag210_get_dev_info(struct ccw_device *cdev) in diag210_get_dev_info() argument
101 struct ccw_dev_id *dev_id = &cdev->private->dev_id; in diag210_get_dev_info()
102 struct senseid *senseid = &cdev->private->senseid; in diag210_get_dev_info()
134 static void snsid_init(struct ccw_device *cdev) in snsid_init() argument
136 cdev->private->flags.esid = 0; in snsid_init()
137 memset(&cdev->private->senseid, 0, sizeof(cdev->private->senseid)); in snsid_init()
138 cdev->private->senseid.cu_type = 0xffff; in snsid_init()
144 static int snsid_check(struct ccw_device *cdev, void *data) in snsid_check() argument
146 struct cmd_scsw *scsw = &cdev->private->irb.scsw.cmd; in snsid_check()
152 if (cdev->private->senseid.cu_type == 0xffff) in snsid_check()
155 if (cdev->private->senseid.reserved != 0xff) in snsid_check()
159 cdev->private->flags.esid = 1; in snsid_check()
163 snsid_init(cdev); in snsid_check()
170 static void snsid_callback(struct ccw_device *cdev, void *data, int rc) in snsid_callback() argument
172 struct ccw_dev_id *id = &cdev->private->dev_id; in snsid_callback()
173 struct senseid *senseid = &cdev->private->senseid; in snsid_callback()
178 snsid_init(cdev); in snsid_callback()
179 if (diag210_get_dev_info(cdev) == 0) { in snsid_callback()
188 ccw_device_sense_id_done(cdev, rc); in snsid_callback()
199 void ccw_device_sense_id_start(struct ccw_device *cdev) in ccw_device_sense_id_start() argument
201 struct subchannel *sch = to_subchannel(cdev->dev.parent); in ccw_device_sense_id_start()
202 struct ccw_request *req = &cdev->private->req; in ccw_device_sense_id_start()
203 struct ccw1 *cp = cdev->private->iccws; in ccw_device_sense_id_start()
206 CIO_HEX_EVENT(4, &cdev->private->dev_id, sizeof(cdev->private->dev_id)); in ccw_device_sense_id_start()
208 snsid_init(cdev); in ccw_device_sense_id_start()
211 cp->cda = (u32) (addr_t) &cdev->private->senseid; in ccw_device_sense_id_start()
222 ccw_request_start(cdev); in ccw_device_sense_id_start()