Lines Matching refs:pm8001_dev
371 #define DEV_IS_GONE(pm8001_dev) \ argument
372 ((!pm8001_dev || (pm8001_dev->dev_type == SAS_PHY_UNUSED)))
385 struct pm8001_device *pm8001_dev; in pm8001_task_exec() local
413 pm8001_dev = dev->lldd_dev; in pm8001_task_exec()
415 if (DEV_IS_GONE(pm8001_dev) || !port->port_attached) { in pm8001_task_exec()
457 ccb->device = pm8001_dev; in pm8001_task_exec()
460 atomic_inc(&pm8001_dev->running_req); in pm8001_task_exec()
464 atomic_inc(&pm8001_dev->running_req); in pm8001_task_exec()
473 atomic_inc(&pm8001_dev->running_req); in pm8001_task_exec()
485 atomic_dec(&pm8001_dev->running_req); in pm8001_task_exec()
598 static void pm8001_free_dev(struct pm8001_device *pm8001_dev) in pm8001_free_dev() argument
600 u32 id = pm8001_dev->id; in pm8001_free_dev()
601 memset(pm8001_dev, 0, sizeof(*pm8001_dev)); in pm8001_free_dev()
602 pm8001_dev->id = id; in pm8001_free_dev()
603 pm8001_dev->dev_type = SAS_PHY_UNUSED; in pm8001_free_dev()
604 pm8001_dev->device_id = PM8001_MAX_DEVICES; in pm8001_free_dev()
605 pm8001_dev->sas_device = NULL; in pm8001_free_dev()
723 struct pm8001_device *pm8001_dev = dev->lldd_dev; in pm8001_exec_internal_tmf_task() local
748 pm8001_dev->setds_completion = &completion_setstate; in pm8001_exec_internal_tmf_task()
750 pm8001_dev, 0x01); in pm8001_exec_internal_tmf_task()
803 struct pm8001_device *pm8001_dev, struct domain_device *dev, u32 flag, in pm8001_exec_internal_task_abort() argument
827 ccb->device = pm8001_dev; in pm8001_exec_internal_task_abort()
833 pm8001_dev, flag, task_tag, ccb_tag); in pm8001_exec_internal_task_abort()
877 struct pm8001_device *pm8001_dev = dev->lldd_dev; in pm8001_dev_gone_notify() local
881 if (pm8001_dev) { in pm8001_dev_gone_notify()
882 u32 device_id = pm8001_dev->device_id; in pm8001_dev_gone_notify()
885 pm8001_dev->device_id, pm8001_dev->dev_type); in pm8001_dev_gone_notify()
886 if (atomic_read(&pm8001_dev->running_req)) { in pm8001_dev_gone_notify()
888 pm8001_exec_internal_task_abort(pm8001_ha, pm8001_dev , in pm8001_dev_gone_notify()
890 while (atomic_read(&pm8001_dev->running_req)) in pm8001_dev_gone_notify()
895 pm8001_free_dev(pm8001_dev); in pm8001_dev_gone_notify()
937 struct pm8001_device *pm8001_dev; in pm8001_open_reject_retry() local
942 pm8001_dev = ccb->device; in pm8001_open_reject_retry()
943 if (!pm8001_dev || (pm8001_dev->dev_type == SAS_PHY_UNUSED)) in pm8001_open_reject_retry()
946 uintptr_t d = (uintptr_t)pm8001_dev in pm8001_open_reject_retry()
948 if (((d % sizeof(*pm8001_dev)) != 0) in pm8001_open_reject_retry()
949 || ((d / sizeof(*pm8001_dev)) >= PM8001_MAX_DEVICES)) in pm8001_open_reject_retry()
951 } else if (pm8001_dev != device_to_close) in pm8001_open_reject_retry()
966 if (pm8001_dev) in pm8001_open_reject_retry()
967 atomic_dec(&pm8001_dev->running_req); in pm8001_open_reject_retry()
999 struct pm8001_device *pm8001_dev; in pm8001_I_T_nexus_reset() local
1006 pm8001_dev = dev->lldd_dev; in pm8001_I_T_nexus_reset()
1019 "with rc %d\n", pm8001_dev->device_id, rc); in pm8001_I_T_nexus_reset()
1024 rc = pm8001_exec_internal_task_abort(pm8001_ha, pm8001_dev , in pm8001_I_T_nexus_reset()
1028 "with rc %d\n", pm8001_dev->device_id, rc); in pm8001_I_T_nexus_reset()
1036 pm8001_dev->device_id, rc); in pm8001_I_T_nexus_reset()
1049 struct pm8001_device *pm8001_dev; in pm8001_I_T_nexus_event_handler() local
1056 pm8001_dev = dev->lldd_dev; in pm8001_I_T_nexus_event_handler()
1070 rc = pm8001_exec_internal_task_abort(pm8001_ha, pm8001_dev , in pm8001_I_T_nexus_event_handler()
1081 pm8001_dev->setds_completion = &completion_setstate; in pm8001_I_T_nexus_event_handler()
1086 rc = pm8001_exec_internal_task_abort(pm8001_ha, pm8001_dev , in pm8001_I_T_nexus_event_handler()
1099 pm8001_dev->device_id, rc); in pm8001_I_T_nexus_event_handler()
1110 struct pm8001_device *pm8001_dev = dev->lldd_dev; in pm8001_lu_reset() local
1115 rc = pm8001_exec_internal_task_abort(pm8001_ha, pm8001_dev , in pm8001_lu_reset()
1119 pm8001_dev->setds_completion = &completion_setstate; in pm8001_lu_reset()
1121 pm8001_dev, 0x01); in pm8001_lu_reset()
1129 pm8001_dev->device_id, rc); in pm8001_lu_reset()
1186 struct pm8001_device *pm8001_dev; in pm8001_abort_task() local
1194 pm8001_dev = dev->lldd_dev; in pm8001_abort_task()
1196 phy_id = pm8001_dev->attached_phy; in pm8001_abort_task()
1219 pm8001_exec_internal_task_abort(pm8001_ha, pm8001_dev, in pm8001_abort_task()
1220 pm8001_dev->sas_device, 0, tag); in pm8001_abort_task()
1229 pm8001_dev->setds_completion = &completion; in pm8001_abort_task()
1231 pm8001_dev, 0x03); in pm8001_abort_task()
1289 pm8001_dev, pm8001_dev->sas_device, 1, tag); in pm8001_abort_task()
1300 pm8001_dev->setds_completion = &completion; in pm8001_abort_task()
1302 pm8001_dev, 0x01); in pm8001_abort_task()
1306 pm8001_dev, pm8001_dev->sas_device, 0, tag); in pm8001_abort_task()
1311 rc = pm8001_exec_internal_task_abort(pm8001_ha, pm8001_dev, in pm8001_abort_task()
1312 pm8001_dev->sas_device, 0, tag); in pm8001_abort_task()
1344 struct pm8001_device *pm8001_dev = dev->lldd_dev; in pm8001_clear_task_set() local
1348 pm8001_dev->device_id); in pm8001_clear_task_set()