Lines Matching defs:edev

38 static bool ses_page2_supported(struct enclosure_device *edev)
40 struct ses_device *ses_dev = edev->scratch;
153 static int ses_set_page2_descriptor(struct enclosure_device *edev,
158 struct scsi_device *sdev = to_scsi_device(edev->edev.parent);
159 struct ses_device *ses_dev = edev->scratch;
184 static unsigned char *ses_get_page2_descriptor(struct enclosure_device *edev,
188 struct scsi_device *sdev = to_scsi_device(edev->edev.parent);
189 struct ses_device *ses_dev = edev->scratch;
213 static void ses_get_fault(struct enclosure_device *edev,
218 if (!ses_page2_supported(edev)) {
222 desc = ses_get_page2_descriptor(edev, ecomp);
227 static int ses_set_fault(struct enclosure_device *edev,
234 if (!ses_page2_supported(edev))
237 desc_ptr = ses_get_page2_descriptor(edev, ecomp);
256 return ses_set_page2_descriptor(edev, ecomp, desc);
259 static void ses_get_status(struct enclosure_device *edev,
264 if (!ses_page2_supported(edev)) {
268 desc = ses_get_page2_descriptor(edev, ecomp);
273 static void ses_get_locate(struct enclosure_device *edev,
278 if (!ses_page2_supported(edev)) {
282 desc = ses_get_page2_descriptor(edev, ecomp);
287 static int ses_set_locate(struct enclosure_device *edev,
294 if (!ses_page2_supported(edev))
297 desc_ptr = ses_get_page2_descriptor(edev, ecomp);
315 return ses_set_page2_descriptor(edev, ecomp, desc);
318 static int ses_set_active(struct enclosure_device *edev,
325 if (!ses_page2_supported(edev))
328 desc_ptr = ses_get_page2_descriptor(edev, ecomp);
348 return ses_set_page2_descriptor(edev, ecomp, desc);
351 static int ses_show_id(struct enclosure_device *edev, char *buf)
353 struct ses_device *ses_dev = edev->scratch;
359 static void ses_get_power_status(struct enclosure_device *edev,
364 if (!ses_page2_supported(edev)) {
369 desc = ses_get_page2_descriptor(edev, ecomp);
374 static int ses_set_power_status(struct enclosure_device *edev,
381 if (!ses_page2_supported(edev))
384 desc_ptr = ses_get_page2_descriptor(edev, ecomp);
403 return ses_set_page2_descriptor(edev, ecomp, desc);
420 struct enclosure_device *edev;
424 int ses_match_host(struct enclosure_device *edev, void *data)
429 if (!scsi_is_sdev_device(edev->edev.parent))
432 sdev = to_scsi_device(edev->edev.parent);
437 sed->edev = edev;
505 static int ses_enclosure_find_by_addr(struct enclosure_device *edev,
512 for (i = 0; i < edev->components; i++) {
513 scomp = edev->component[i].scratch;
517 if (enclosure_add_device(edev, i, efd->dev) == 0)
526 static void ses_enclosure_data_process(struct enclosure_device *edev,
533 struct ses_device *ses_dev = edev->scratch;
598 edev,
602 else if (components < edev->components)
603 ecomp = &edev->component[components++];
643 static void ses_match_to_enclosure(struct enclosure_device *edev,
647 struct scsi_device *edev_sdev = to_scsi_device(edev->edev.parent);
653 ses_enclosure_data_process(edev, edev_sdev, 0);
675 struct enclosure_device *edev;
682 while ((edev = enclosure_find(&sdev->host->shost_gendev, prev)) != NULL) {
683 ses_match_to_enclosure(edev, sdev, 1);
684 prev = edev;
782 edev = enclosure_register(cdev->parent, dev_name(&sdev->sdev_gendev),
784 if (IS_ERR(edev)) {
785 err = PTR_ERR(edev);
791 edev->scratch = ses_dev;
793 edev->component[i].scratch = scomp + i;
795 ses_enclosure_data_process(edev, sdev, 1);
802 ses_match_to_enclosure(edev, tmp_sdev, 0);
831 struct enclosure_device *edev, *prev = NULL;
833 while ((edev = enclosure_find(&sdev->host->shost_gendev, prev)) != NULL) {
834 prev = edev;
835 if (!enclosure_remove_device(edev, &sdev->sdev_gendev))
838 if (edev)
839 put_device(&edev->edev);
844 struct enclosure_device *edev;
848 edev = enclosure_find(&sdev->sdev_gendev, NULL);
849 if (!edev)
852 ses_dev = edev->scratch;
853 edev->scratch = NULL;
860 if (edev->components)
861 kfree(edev->component[0].scratch);
863 put_device(&edev->edev);
864 enclosure_unregister(edev);