Lines Matching refs:hal

51 static void s1394_fcp_recv_write_unclaimed(s1394_hal_t *hal,
79 s1394_fcp_hal_init(s1394_hal_t *hal) in s1394_fcp_hal_init() argument
83 if ((ddi_prop_exists(DDI_DEV_T_ANY, hal->halinfo.dip, DDI_PROP_DONTPASS, in s1394_fcp_hal_init()
86 ret = s1394_fa_claim_addr(hal, S1394_FA_TYPE_FCP_CTL, in s1394_fcp_hal_init()
89 ret = s1394_fa_claim_addr(hal, S1394_FA_TYPE_FCP_TGT, in s1394_fcp_hal_init()
92 s1394_fa_free_addr(hal, S1394_FA_TYPE_FCP_CTL); in s1394_fcp_hal_init()
131 s1394_hal_t *hal = target->on_hal; in s1394_fcp_register_common() local
134 rw_enter(&hal->target_list_rwlock, RW_WRITER); in s1394_fcp_register_common()
136 if (s1394_fa_list_is_empty(hal, type)) { in s1394_fcp_register_common()
137 if (s1394_fa_claim_addr(hal, type, descr) != DDI_SUCCESS) { in s1394_fcp_register_common()
138 rw_exit(&hal->target_list_rwlock); in s1394_fcp_register_common()
144 s1394_fa_list_add(hal, target, type); in s1394_fcp_register_common()
149 rw_exit(&hal->target_list_rwlock); in s1394_fcp_register_common()
157 s1394_hal_t *hal = target->on_hal; in s1394_fcp_unregister_common() local
160 rw_enter(&hal->target_list_rwlock, RW_WRITER); in s1394_fcp_unregister_common()
162 result = s1394_fa_list_remove(hal, target, type); in s1394_fcp_unregister_common()
164 if (s1394_fa_list_is_empty(hal, type)) { in s1394_fcp_unregister_common()
165 s1394_fa_free_addr(hal, type); in s1394_fcp_unregister_common()
169 rw_exit(&hal->target_list_rwlock); in s1394_fcp_unregister_common()
233 s1394_hal_t *hal = (s1394_hal_t *)req->cmd_callback_arg; in s1394_fcp_recv_write_request() local
242 rw_enter(&hal->target_list_rwlock, RW_READER); in s1394_fcp_recv_write_request()
245 target = hal->hal_fa[type].fal_head; in s1394_fcp_recv_write_request()
248 s1394_fa_restore_cmd(hal, req); in s1394_fcp_recv_write_request()
261 saved_gen = s1394_fa_list_gen(hal, type); in s1394_fcp_recv_write_request()
263 rw_exit(&hal->target_list_rwlock); in s1394_fcp_recv_write_request()
265 rw_enter(&hal->target_list_rwlock, RW_READER); in s1394_fcp_recv_write_request()
277 if (saved_gen != s1394_fa_list_gen(hal, type)) { in s1394_fcp_recv_write_request()
290 rw_exit(&hal->target_list_rwlock); in s1394_fcp_recv_write_request()
294 s1394_fa_convert_cmd(hal, req); in s1394_fcp_recv_write_request()
296 s1394_fcp_recv_write_unclaimed(hal, req); in s1394_fcp_recv_write_request()
304 s1394_fcp_recv_write_unclaimed(s1394_hal_t *hal, cmd1394_cmd_t *req) in s1394_fcp_recv_write_unclaimed() argument
307 (void) s1394_send_response(hal, req); in s1394_fcp_recv_write_unclaimed()