Home
last modified time | relevance | path

Searched refs:hw_sob (Results 1 - 10 of 10) sorted by relevance

/kernel/linux/linux-6.6/drivers/accel/habanalabs/common/
H A Dhw_queue.c408 struct hl_hw_sob *hw_sob; in init_signal_cs() local
414 hw_sob = &prop->hw_sob[prop->curr_sob_offset]; in init_signal_cs()
416 cs_cmpl->hw_sob = hw_sob; in init_signal_cs()
421 cs_cmpl->hw_sob->sob_id, cs_cmpl->sob_val, q_idx, in init_signal_cs()
428 cs_cmpl->hw_sob->sob_id, 0, true); in init_signal_cs()
430 rc = hl_cs_signal_sob_wraparound_handler(hdev, q_idx, &hw_sob, 1, in init_signal_cs()
433 job->cs->sob_addr_offset = hw_sob->sob_addr; in init_signal_cs()
446 cs_cmpl->hw_sob in hl_hw_queue_encaps_sig_set_sob_info()
906 struct hl_hw_sob *hw_sob; sync_stream_queue_init() local
[all...]
H A Dcommand_submission.c119 struct hl_hw_sob *hw_sob = container_of(ref, struct hl_hw_sob, in hl_sob_reset() local
121 struct hl_device *hdev = hw_sob->hdev; in hl_sob_reset()
123 dev_dbg(hdev->dev, "reset sob id %u\n", hw_sob->sob_id); in hl_sob_reset()
125 hdev->asic_funcs->reset_sob(hdev, hw_sob); in hl_sob_reset()
127 hw_sob->need_reset = false; in hl_sob_reset()
132 struct hl_hw_sob *hw_sob = container_of(ref, struct hl_hw_sob, in hl_sob_reset_error() local
134 struct hl_device *hdev = hw_sob->hdev; in hl_sob_reset_error()
138 hw_sob->q_idx, hw_sob->sob_id); in hl_sob_reset_error()
141 void hw_sob_put(struct hl_hw_sob *hw_sob) in hw_sob_put() argument
147 hw_sob_put_err(struct hl_hw_sob *hw_sob) hw_sob_put_err() argument
153 hw_sob_get(struct hl_hw_sob *hw_sob) hw_sob_get() argument
1785 hl_cs_signal_sob_wraparound_handler(struct hl_device *hdev, u32 q_idx, struct hl_hw_sob **hw_sob, u32 count, bool encaps_sig) hl_cs_signal_sob_wraparound_handler() argument
1998 struct hl_hw_sob *hw_sob; cs_ioctl_reserve_signals() local
2116 struct hl_hw_sob *hw_sob; cs_ioctl_unreserve_signals() local
[all...]
H A Dcontext.c18 hw_sob_put(handle->hw_sob); in encaps_handle_do_release()
H A Dhabanalabs.h841 * @hw_sob: the H/W SOB used in this signal/wait CS.
854 struct hl_hw_sob *hw_sob; member
1001 * @hw_sob: array of the used H/W SOBs by this H/W queue.
1015 struct hl_hw_sob hw_sob[HL_RSVD_SOBS]; member
3475 * @hw_sob: pointer to H/W SOB used in the reservation.
3486 struct hl_hw_sob *hw_sob; member
3899 void hw_sob_get(struct hl_hw_sob *hw_sob);
3900 void hw_sob_put(struct hl_hw_sob *hw_sob);
3914 struct hl_hw_sob **hw_sob, u32 count, bool encaps_sig);
/kernel/linux/linux-5.10/drivers/misc/habanalabs/common/
H A Dhw_queue.c405 struct hl_hw_sob *hw_sob; in init_signal_wait_cs() local
416 hw_sob = &hw_queue->hw_sob[hw_queue->curr_sob_offset]; in init_signal_wait_cs()
418 cs_cmpl->hw_sob = hw_sob; in init_signal_wait_cs()
423 cs_cmpl->hw_sob->sob_id, cs_cmpl->sob_val, q_idx); in init_signal_wait_cs()
426 cs_cmpl->hw_sob->sob_id); in init_signal_wait_cs()
428 kref_get(&hw_sob->kref); in init_signal_wait_cs()
437 kref_put(&hw_sob->kref, hl_sob_reset_error); in init_signal_wait_cs()
455 cs_cmpl->hw_sob in init_signal_wait_cs()
719 struct hl_hw_sob *hw_sob; sync_stream_queue_init() local
[all...]
H A Dcommand_submission.c23 struct hl_hw_sob *hw_sob = container_of(ref, struct hl_hw_sob, in hl_sob_reset() local
25 struct hl_device *hdev = hw_sob->hdev; in hl_sob_reset()
27 hdev->asic_funcs->reset_sob(hdev, hw_sob); in hl_sob_reset()
32 struct hl_hw_sob *hw_sob = container_of(ref, struct hl_hw_sob, in hl_sob_reset_error() local
34 struct hl_device *hdev = hw_sob->hdev; in hl_sob_reset_error()
38 hw_sob->q_idx, hw_sob->sob_id); in hl_sob_reset_error()
50 * an attached hw_sob object that we should handle here in hl_fence_release()
62 hl_cs_cmpl->hw_sob->sob_id, in hl_fence_release()
82 kref_put(&hl_cs_cmpl->hw_sob in hl_fence_release()
[all...]
H A Dhabanalabs.h396 * @hw_sob: the H/W SOB used in this signal/wait CS.
405 struct hl_hw_sob *hw_sob; member
494 * @hw_sob: array of the used H/W SOBs by this H/W queue.
515 struct hl_hw_sob hw_sob[HL_RSVD_SOBS]; member
/kernel/linux/linux-6.6/drivers/accel/habanalabs/gaudi/
H A Dgaudi.c1277 cs_cmpl->hw_sob->sob_id, in gaudi_collective_slave_init_job()
1283 wait_prop.sob_base = cs_cmpl->hw_sob->sob_id; in gaudi_collective_slave_init_job()
1292 cs_cmpl->hw_sob->sob_id, cs_cmpl->sob_val, in gaudi_collective_slave_init_job()
1325 cs_cmpl->hw_sob = handle->hw_sob; in gaudi_collective_wait_init_cs()
1326 /* at this checkpoint we only need the hw_sob pointer in gaudi_collective_wait_init_cs()
1335 cs_cmpl->hw_sob = signal_cs_cmpl->hw_sob; in gaudi_collective_wait_init_cs()
1340 * if yes then don't send any wait cs since the hw_sob in gaudi_collective_wait_init_cs()
1342 * then get refcount to hw_sob t in gaudi_collective_wait_init_cs()
8753 struct hl_hw_sob *hw_sob = (struct hl_hw_sob *) data; gaudi_reset_sob() local
[all...]
/kernel/linux/linux-5.10/drivers/misc/habanalabs/gaudi/
H A Dgaudi.c6585 struct hl_hw_sob *hw_sob = (struct hl_hw_sob *) data; in gaudi_reset_sob() local
6587 dev_dbg(hdev->dev, "reset SOB, q_idx: %d, sob_id: %d\n", hw_sob->q_idx, in gaudi_reset_sob()
6588 hw_sob->sob_id); in gaudi_reset_sob()
6590 WREG32(mmSYNC_MNGR_W_S_SYNC_MNGR_OBJS_SOB_OBJ_0 + hw_sob->sob_id * 4, in gaudi_reset_sob()
6593 kref_init(&hw_sob->kref); in gaudi_reset_sob()
/kernel/linux/linux-6.6/drivers/accel/habanalabs/gaudi2/
H A Dgaudi2.c10738 struct hl_hw_sob *hw_sob = data; in gaudi2_reset_sob() local
10740 dev_dbg(hdev->dev, "reset SOB, q_idx: %d, sob_id: %d\n", hw_sob->q_idx, hw_sob->sob_id); in gaudi2_reset_sob()
10742 WREG32(mmDCORE0_SYNC_MNGR_OBJS_SOB_OBJ_0 + hw_sob->sob_id * 4, 0); in gaudi2_reset_sob()
10744 kref_init(&hw_sob->kref); in gaudi2_reset_sob()

Completed in 43 milliseconds