Home
last modified time | relevance | path

Searched refs:hdev (Results 1 – 25 of 280) sorted by relevance

12345678910>>...12

/linux/drivers/accel/habanalabs/common/
H A Ddevice.c51 static u64 hl_set_dram_bar(struct hl_device *hdev, u64 addr, struct pci_mem_region *region, in hl_set_dram_bar() argument
54 struct asic_fixed_properties *prop = &hdev->asic_prop; in hl_set_dram_bar()
64 old_base = hdev->asic_funcs->set_dram_bar_base(hdev, bar_base_addr); in hl_set_dram_bar()
73 int hl_access_sram_dram_region(struct hl_device *hdev, u64 addr, u64 *val, in hl_access_sram_dram_region() argument
76 struct pci_mem_region *region = &hdev->pci_mem_region[region_type]; in hl_access_sram_dram_region()
81 old_base = hl_set_dram_bar(hdev, addr, region, &bar_region_base); in hl_access_sram_dram_region()
86 acc_addr = hdev->pcie_bar[region->bar_id] + region->offset_in_bar + in hl_access_sram_dram_region()
111 rc = hl_set_dram_bar(hdev, old_base, region, NULL); in hl_access_sram_dram_region()
119 static void *hl_dma_alloc_common(struct hl_device *hdev, size_t size, dma_addr_t *dma_handle, in hl_dma_alloc_common() argument
127 ptr = hdev->asic_funcs->asic_dma_alloc_coherent(hdev, size, dma_handle, flag); in hl_dma_alloc_common()
[all …]
H A Dhabanalabs_drv.c120 static enum hl_asic_type get_asic_type(struct hl_device *hdev) in get_asic_type() argument
122 struct pci_dev *pdev = hdev->pdev; in get_asic_type()
179 struct hl_device *hdev = to_hl_device(ddev); in hl_device_open() local
188 hpriv->hdev = hdev; in hl_device_open()
195 hl_mem_mgr_init(hpriv->hdev->dev, &hpriv->mem_mgr); in hl_device_open()
199 mutex_lock(&hdev->fpriv_list_lock); in hl_device_open()
201 if (!hl_device_operational(hdev, &status)) { in hl_device_open()
202 dev_dbg_ratelimited(hdev->dev, in hl_device_open()
204 dev_name(hdev->dev), hdev->status[status]); in hl_device_open()
215 if (hdev->is_in_dram_scrub) { in hl_device_open()
[all …]
H A Dfirmware_if.c55 int hl_fw_version_cmp(struct hl_device *hdev, u32 major, u32 minor, u32 subminor) in hl_fw_version_cmp() argument
57 if (hdev->fw_sw_major_ver != major) in hl_fw_version_cmp()
58 return (hdev->fw_sw_major_ver > major) ? 1 : -1; in hl_fw_version_cmp()
60 if (hdev->fw_sw_minor_ver != minor) in hl_fw_version_cmp()
61 return (hdev->fw_sw_minor_ver > minor) ? 1 : -1; in hl_fw_version_cmp()
63 if (hdev->fw_sw_sub_minor_ver != subminor) in hl_fw_version_cmp()
64 return (hdev->fw_sw_sub_minor_ver > subminor) ? 1 : -1; in hl_fw_version_cmp()
137 static int hl_get_sw_major_minor_subminor(struct hl_device *hdev, const char *fw_str) in hl_get_sw_major_minor_subminor() argument
164 start = extract_u32_until_given_char(start, &hdev->fw_sw_major_ver, '.'); in hl_get_sw_major_minor_subminor()
169 start = extract_u32_until_given_char(start, &hdev->fw_sw_minor_ver, '.'); in hl_get_sw_major_minor_subminor()
[all …]
H A Dhw_queue.c43 struct hl_device *hdev = cs->ctx->hdev; in hl_hw_queue_update_ci() local
47 if (hdev->disabled) in hl_hw_queue_update_ci()
50 q = &hdev->kernel_queues[0]; in hl_hw_queue_update_ci()
53 if (!hdev->asic_prop.max_queues || q->queue_type == QUEUE_TYPE_HW) in hl_hw_queue_update_ci()
61 for (i = 0 ; i < hdev->asic_prop.max_queues ; i++, q++) { in hl_hw_queue_update_ci()
83 void hl_hw_queue_submit_bd(struct hl_device *hdev, struct hl_hw_queue *q, in hl_hw_queue_submit_bd() argument
100 hdev->asic_funcs->access_dev_mem(hdev, PCI_REGION_DRAM, addr, in hl_hw_queue_submit_bd()
106 hdev->asic_funcs->ring_doorbell(hdev, q->hw_queue_id, q->pi); in hl_hw_queue_submit_bd()
127 static int ext_queue_sanity_checks(struct hl_device *hdev, in ext_queue_sanity_checks() argument
132 &hdev->completion_queue[q->cq_id].free_slots_cnt; in ext_queue_sanity_checks()
[all …]
H A Dcommand_buffer.c19 struct hl_device *hdev = ctx->hdev; in cb_map_mem() local
20 struct asic_fixed_properties *prop = &hdev->asic_prop; in cb_map_mem()
24 if (!hdev->supports_cb_mapping) { in cb_map_mem()
25 dev_err_ratelimited(hdev->dev, in cb_map_mem()
37 dev_err(hdev->dev, "Failed to allocate device virtual address for CB\n"); in cb_map_mem()
41 mutex_lock(&hdev->mmu_lock); in cb_map_mem()
45 dev_err(hdev->dev, "Failed to map VA %#llx to CB\n", cb->virtual_addr); in cb_map_mem()
49 rc = hl_mmu_invalidate_cache(hdev, false, MMU_OP_USERPTR | MMU_OP_SKIP_LOW_CACHE_INV); in cb_map_mem()
53 mutex_unlock(&hdev->mmu_lock); in cb_map_mem()
62 mutex_unlock(&hdev->mmu_lock); in cb_map_mem()
[all …]
H A Dhldio.c62 bool hl_device_supports_nvme(struct hl_device *hdev) in hl_device_supports_nvme() argument
64 return hdev->asic_prop.supports_nvme; in hl_device_supports_nvme()
69 struct hl_device *hdev = ctx->hdev; in hl_dio_fd_register() local
84 dev_err(hdev->dev, "file is not in the direct mode\n"); in hl_dio_fd_register()
90 dev_err(hdev->dev, "read iter is not supported, need to fall back to legacy\n"); in hl_dio_fd_register()
101 dev_err(hdev->dev, "sparse files are not currently supported\n"); in hl_dio_fd_register()
107 dev_err(hdev->dev, "invalid block device\n"); in hl_dio_fd_register()
114 dev_err(hdev->dev, "device does not support PCI P2P DMA\n"); in hl_dio_fd_register()
138 static long hl_dio_count_io(struct hl_device *hdev) in hl_dio_count_io() argument
144 sum += per_cpu(*hdev->hldio.inflight_ios, i); in hl_dio_count_io()
[all …]
H A Dirq.c22 struct hl_device *hdev; member
62 struct hl_device *hdev = eqe_work->hdev; in irq_handle_eqe() local
64 hdev->asic_funcs->handle_eqe(hdev, &eqe_work->eq_entry); in irq_handle_eqe()
78 static void job_finish(struct hl_device *hdev, u32 cs_seq, struct hl_cq *cq, ktime_t timestamp) in job_finish() argument
83 queue = &hdev->kernel_queues[cq->hw_queue_id]; in job_finish()
86 queue_work(hdev->cq_wq[cq->cq_idx], &job->finish_work); in job_finish()
99 static void cs_finish(struct hl_device *hdev, u16 cs_seq, ktime_t timestamp) in cs_finish() argument
101 struct asic_fixed_properties *prop = &hdev->asic_prop; in cs_finish()
106 cs = hdev->shadow_cs_queue[cs_seq & (prop->max_pending_cs - 1)]; in cs_finish()
108 dev_warn(hdev->dev, in cs_finish()
[all …]
/linux/net/bluetooth/
H A Dcoredump.c32 bt_dev_dbg(hdev, \
34 hci_dmp_cb(skb)->pkt_type, hdev->dump.state)
51 static int hci_devcd_update_state(struct hci_dev *hdev, int state) in hci_devcd_update_state() argument
53 bt_dev_dbg(hdev, "Updating devcoredump state from %d to %d.", in hci_devcd_update_state()
54 hdev->dump.state, state); in hci_devcd_update_state()
56 hdev->dump.state = state; in hci_devcd_update_state()
58 return hci_devcd_update_hdr_state(hdev->dump.head, in hci_devcd_update_state()
59 hdev->dump.alloc_size, state); in hci_devcd_update_state()
62 static int hci_devcd_mkheader(struct hci_dev *hdev, struct sk_buff *skb) in hci_devcd_mkheader() argument
72 if (hdev->dump.dmp_hdr) in hci_devcd_mkheader()
[all …]
H A Dmsft.h15 bool msft_monitor_supported(struct hci_dev *hdev);
16 void msft_register(struct hci_dev *hdev);
17 void msft_release(struct hci_dev *hdev);
18 void msft_do_open(struct hci_dev *hdev);
19 void msft_do_close(struct hci_dev *hdev);
20 void msft_vendor_evt(struct hci_dev *hdev, void *data, struct sk_buff *skb);
21 __u64 msft_get_features(struct hci_dev *hdev);
22 int msft_add_monitor_pattern(struct hci_dev *hdev, struct adv_monitor *monitor);
23 int msft_remove_monitor(struct hci_dev *hdev, struct adv_monitor *monitor);
25 int msft_set_filter_enable(struct hci_dev *hdev, bool enable);
[all …]
H A Dmsft.c136 bool msft_monitor_supported(struct hci_dev *hdev) in msft_monitor_supported() argument
138 return !!(msft_get_features(hdev) & MSFT_FEATURE_MASK_LE_ADV_MONITOR); in msft_monitor_supported()
141 static bool read_supported_features(struct hci_dev *hdev, in read_supported_features() argument
150 skb = __hci_cmd_sync(hdev, hdev->msft_opcode, sizeof(cp), &cp, in read_supported_features()
153 bt_dev_err(hdev, "Failed to read MSFT supported features (%ld)", in read_supported_features()
159 bt_dev_err(hdev, "MSFT supported features length mismatch"); in read_supported_features()
179 hdev->msft_curve_validity = true; in read_supported_features()
194 (struct hci_dev *hdev, u16 handle, bool is_mgmt) in msft_find_handle_data() argument
197 struct msft_data *msft = hdev->msft_data; in msft_find_handle_data()
211 (struct hci_dev *hdev, u8 addr_type, bdaddr_t *addr, in msft_find_address_data() argument
[all …]
/linux/net/nfc/hci/
H A Dcore.c37 void nfc_hci_reset_pipes(struct nfc_hci_dev *hdev) in nfc_hci_reset_pipes() argument
42 hdev->pipes[i].gate = NFC_HCI_INVALID_GATE; in nfc_hci_reset_pipes()
43 hdev->pipes[i].dest_host = NFC_HCI_INVALID_HOST; in nfc_hci_reset_pipes()
45 memset(hdev->gate2pipe, NFC_HCI_INVALID_PIPE, sizeof(hdev->gate2pipe)); in nfc_hci_reset_pipes()
49 void nfc_hci_reset_pipes_per_host(struct nfc_hci_dev *hdev, u8 host) in nfc_hci_reset_pipes_per_host() argument
54 if (hdev->pipes[i].dest_host != host) in nfc_hci_reset_pipes_per_host()
57 hdev->pipes[i].gate = NFC_HCI_INVALID_GATE; in nfc_hci_reset_pipes_per_host()
58 hdev->pipes[i].dest_host = NFC_HCI_INVALID_HOST; in nfc_hci_reset_pipes_per_host()
65 struct nfc_hci_dev *hdev = container_of(work, struct nfc_hci_dev, in nfc_hci_msg_tx_work() local
71 mutex_lock(&hdev->msg_tx_mutex); in nfc_hci_msg_tx_work()
[all …]
/linux/drivers/media/platform/qcom/venus/
H A Dhfi_venus.c138 static void venus_set_state(struct venus_hfi_device *hdev, in venus_set_state() argument
141 mutex_lock(&hdev->lock); in venus_set_state()
142 hdev->state = state; in venus_set_state()
143 mutex_unlock(&hdev->lock); in venus_set_state()
146 static bool venus_is_valid_state(struct venus_hfi_device *hdev) in venus_is_valid_state() argument
148 return hdev->state != VENUS_STATE_DEINIT; in venus_is_valid_state()
151 static void venus_dump_packet(struct venus_hfi_device *hdev, const void *packet) in venus_dump_packet() argument
162 static int venus_write_queue(struct venus_hfi_device *hdev, in venus_write_queue() argument
178 venus_dump_packet(hdev, packet); in venus_write_queue()
239 static int venus_read_queue(struct venus_hfi_device *hdev, in venus_read_queue() argument
[all …]
/linux/drivers/net/ethernet/hisilicon/hns3/hns3pf/
H A Dhclge_dcb.c11 static int hclge_ieee_ets_to_tm_info(struct hclge_dev *hdev, in hclge_ieee_ets_to_tm_info() argument
19 hdev->tm_info.tc_info[i].tc_sch_mode = in hclge_ieee_ets_to_tm_info()
21 hdev->tm_info.pg_info[0].tc_dwrr[i] = 0; in hclge_ieee_ets_to_tm_info()
24 hdev->tm_info.tc_info[i].tc_sch_mode = in hclge_ieee_ets_to_tm_info()
26 hdev->tm_info.pg_info[0].tc_dwrr[i] = in hclge_ieee_ets_to_tm_info()
39 hclge_tm_prio_tc_info_update(hdev, ets->prio_tc); in hclge_ieee_ets_to_tm_info()
44 static void hclge_tm_info_to_ieee_ets(struct hclge_dev *hdev, in hclge_tm_info_to_ieee_ets() argument
51 ets->ets_cap = hdev->tc_max; in hclge_tm_info_to_ieee_ets()
54 ets->prio_tc[i] = hdev->tm_info.prio_tc[i]; in hclge_tm_info_to_ieee_ets()
55 if (i < hdev->tm_info.num_tc) in hclge_tm_info_to_ieee_ets()
[all …]
H A Dhclge_tm.c138 static void hclge_pfc_stats_get(struct hclge_dev *hdev, bool tx, u64 *stats) in hclge_pfc_stats_get() argument
149 stats[i] = HCLGE_STATS_READ(&hdev->mac_stats, offset[i]); in hclge_pfc_stats_get()
152 void hclge_pfc_rx_stats_get(struct hclge_dev *hdev, u64 *stats) in hclge_pfc_rx_stats_get() argument
154 hclge_pfc_stats_get(hdev, false, stats); in hclge_pfc_rx_stats_get()
157 void hclge_pfc_tx_stats_get(struct hclge_dev *hdev, u64 *stats) in hclge_pfc_tx_stats_get() argument
159 hclge_pfc_stats_get(hdev, true, stats); in hclge_pfc_tx_stats_get()
162 int hclge_mac_pause_en_cfg(struct hclge_dev *hdev, bool tx, bool rx) in hclge_mac_pause_en_cfg() argument
171 return hclge_cmd_send(&hdev->hw, &desc, 1); in hclge_mac_pause_en_cfg()
174 int hclge_pfc_pause_en_cfg(struct hclge_dev *hdev, u8 tx_rx_bitmap, in hclge_pfc_pause_en_cfg() argument
185 return hclge_cmd_send(&hdev->hw, &desc, 1); in hclge_pfc_pause_en_cfg()
[all …]
/linux/drivers/net/ethernet/hisilicon/hns3/hns3vf/
H A Dhclgevf_mbx.c17 static void hclgevf_reset_mbx_resp_status(struct hclgevf_dev *hdev) in hclgevf_reset_mbx_resp_status() argument
22 hdev->mbx_resp.received_resp = false; in hclgevf_reset_mbx_resp_status()
23 hdev->mbx_resp.origin_mbx_msg = 0; in hclgevf_reset_mbx_resp_status()
24 hdev->mbx_resp.resp_status = 0; in hclgevf_reset_mbx_resp_status()
25 hdev->mbx_resp.match_id++; in hclgevf_reset_mbx_resp_status()
27 if (hdev->mbx_resp.match_id == 0) in hclgevf_reset_mbx_resp_status()
28 hdev->mbx_resp.match_id = HCLGEVF_MBX_MATCH_ID_START; in hclgevf_reset_mbx_resp_status()
29 memset(hdev->mbx_resp.additional_info, 0, HCLGE_MBX_MAX_RESP_DATA_SIZE); in hclgevf_reset_mbx_resp_status()
40 static int hclgevf_get_mbx_resp(struct hclgevf_dev *hdev, u16 code0, u16 code1, in hclgevf_get_mbx_resp() argument
50 dev_err(&hdev->pdev->dev, in hclgevf_get_mbx_resp()
[all …]
/linux/drivers/accel/habanalabs/common/pci/
H A Dpci.c32 int hl_pci_bars_map(struct hl_device *hdev, const char * const name[3], in hl_pci_bars_map() argument
35 struct pci_dev *pdev = hdev->pdev; in hl_pci_bars_map()
40 dev_err(hdev->dev, "Cannot obtain PCI resources\n"); in hl_pci_bars_map()
46 hdev->pcie_bar[bar] = is_wc[i] ? in hl_pci_bars_map()
49 if (!hdev->pcie_bar[bar]) { in hl_pci_bars_map()
50 dev_err(hdev->dev, "pci_ioremap%s_bar failed for %s\n", in hl_pci_bars_map()
62 if (hdev->pcie_bar[bar]) in hl_pci_bars_map()
63 iounmap(hdev->pcie_bar[bar]); in hl_pci_bars_map()
77 static void hl_pci_bars_unmap(struct hl_device *hdev) in hl_pci_bars_unmap() argument
79 struct pci_dev *pdev = hdev->pdev; in hl_pci_bars_unmap()
[all …]
/linux/drivers/accel/habanalabs/goya/
H A Dgoya_hwmgr.c10 void goya_set_pll_profile(struct hl_device *hdev, enum hl_pll_frequency freq) in goya_set_pll_profile() argument
12 struct goya_device *goya = hdev->asic_specific; in goya_set_pll_profile()
14 if (!hdev->pdev) in goya_set_pll_profile()
19 hl_fw_set_frequency(hdev, HL_GOYA_MME_PLL, hdev->high_pll); in goya_set_pll_profile()
20 hl_fw_set_frequency(hdev, HL_GOYA_TPC_PLL, hdev->high_pll); in goya_set_pll_profile()
21 hl_fw_set_frequency(hdev, HL_GOYA_IC_PLL, hdev->high_pll); in goya_set_pll_profile()
24 hl_fw_set_frequency(hdev, HL_GOYA_MME_PLL, GOYA_PLL_FREQ_LOW); in goya_set_pll_profile()
25 hl_fw_set_frequency(hdev, HL_GOYA_TPC_PLL, GOYA_PLL_FREQ_LOW); in goya_set_pll_profile()
26 hl_fw_set_frequency(hdev, HL_GOYA_IC_PLL, GOYA_PLL_FREQ_LOW); in goya_set_pll_profile()
29 hl_fw_set_frequency(hdev, HL_GOYA_MME_PLL, goya->mme_clk); in goya_set_pll_profile()
[all …]
H A DgoyaP.h157 struct hl_device *hdev; member
180 int goya_set_fixed_properties(struct hl_device *hdev);
181 int goya_mmu_init(struct hl_device *hdev);
182 void goya_init_dma_qmans(struct hl_device *hdev);
183 void goya_init_mme_qmans(struct hl_device *hdev);
184 void goya_init_tpc_qmans(struct hl_device *hdev);
185 int goya_init_cpu_queues(struct hl_device *hdev);
186 void goya_init_security(struct hl_device *hdev);
187 void goya_ack_protection_bits_errors(struct hl_device *hdev);
188 int goya_late_init(struct hl_device *hdev);
[all …]
H A Dgoya.c355 static int goya_mmu_clear_pgt_range(struct hl_device *hdev);
356 static int goya_mmu_set_dram_default_page(struct hl_device *hdev);
357 static int goya_mmu_add_mappings_for_device_cpu(struct hl_device *hdev);
358 static void goya_mmu_prepare(struct hl_device *hdev, u32 asid);
360 int goya_set_fixed_properties(struct hl_device *hdev) in goya_set_fixed_properties() argument
362 struct asic_fixed_properties *prop = &hdev->asic_prop; in goya_set_fixed_properties()
410 if (hdev->pldm) in goya_set_fixed_properties()
507 static int goya_pci_bars_map(struct hl_device *hdev) in goya_pci_bars_map() argument
513 rc = hl_pci_bars_map(hdev, name, is_wc); in goya_pci_bars_map()
517 hdev->rmmio = hdev->pcie_bar[SRAM_CFG_BAR_ID] + in goya_pci_bars_map()
[all …]
/linux/drivers/bluetooth/
H A Dbpa10x.c37 struct hci_dev *hdev; member
50 struct hci_dev *hdev = (struct hci_dev *) skb->dev; in bpa10x_tx_complete() local
52 BT_DBG("%s urb %p status %d count %d", hdev->name, in bpa10x_tx_complete()
55 if (!test_bit(HCI_RUNNING, &hdev->flags)) in bpa10x_tx_complete()
59 hdev->stat.byte_tx += urb->transfer_buffer_length; in bpa10x_tx_complete()
61 hdev->stat.err_tx++; in bpa10x_tx_complete()
87 struct hci_dev *hdev = urb->context; in bpa10x_rx_complete() local
88 struct bpa10x_data *data = hci_get_drvdata(hdev); in bpa10x_rx_complete()
91 BT_DBG("%s urb %p status %d count %d", hdev->name, in bpa10x_rx_complete()
94 if (!test_bit(HCI_RUNNING, &hdev->flags)) in bpa10x_rx_complete()
[all …]
H A Dhci_serdev.c26 struct hci_dev *hdev = hu->hdev; in hci_uart_tx_complete() local
31 hdev->stat.cmd_tx++; in hci_uart_tx_complete()
35 hdev->stat.acl_tx++; in hci_uart_tx_complete()
39 hdev->stat.sco_tx++; in hci_uart_tx_complete()
61 struct hci_dev *hdev = hu->hdev; in hci_uart_write_work() local
75 hdev->stat.byte_tx += len; in hci_uart_write_work()
94 static int hci_uart_flush(struct hci_dev *hdev) in hci_uart_flush() argument
96 struct hci_uart *hu = hci_get_drvdata(hdev); in hci_uart_flush()
98 BT_DBG("hdev %p serdev %p", hdev, hu->serdev); in hci_uart_flush()
114 static int hci_uart_open(struct hci_dev *hdev) in hci_uart_open() argument
[all …]
H A Dbtqcomsmd.c21 struct hci_dev *hdev; member
27 static int btqcomsmd_recv(struct hci_dev *hdev, unsigned int type, in btqcomsmd_recv() argument
35 hdev->stat.err_rx++; in btqcomsmd_recv()
42 return hci_recv_frame(hdev, skb); in btqcomsmd_recv()
50 btq->hdev->stat.byte_rx += count; in btqcomsmd_acl_callback()
51 return btqcomsmd_recv(btq->hdev, HCI_ACLDATA_PKT, data, count); in btqcomsmd_acl_callback()
59 btq->hdev->stat.byte_rx += count; in btqcomsmd_cmd_callback()
60 return btqcomsmd_recv(btq->hdev, HCI_EVENT_PKT, data, count); in btqcomsmd_cmd_callback()
63 static int btqcomsmd_send(struct hci_dev *hdev, struct sk_buff *skb) in btqcomsmd_send() argument
65 struct btqcomsmd *btq = hci_get_drvdata(hdev); in btqcomsmd_send()
[all …]
/linux/drivers/hid/
H A Dhid-rmi.c95 struct hid_device *hdev; member
105 static int rmi_write_report(struct hid_device *hdev, u8 *report, int len);
121 static int rmi_set_page(struct hid_device *hdev, u8 page) in rmi_set_page() argument
123 struct rmi_data *data = hid_get_drvdata(hdev); in rmi_set_page()
131 retval = rmi_write_report(hdev, data->writeReport, in rmi_set_page()
134 dev_err(&hdev->dev, in rmi_set_page()
143 static int rmi_set_mode(struct hid_device *hdev, u8 mode) in rmi_set_mode() argument
153 ret = hid_hw_raw_request(hdev, RMI_SET_RMI_MODE_REPORT_ID, buf, in rmi_set_mode()
157 dev_err(&hdev->dev, "unable to set rmi mode to %d (%d)\n", mode, in rmi_set_mode()
165 static int rmi_write_report(struct hid_device *hdev, u8 *report, int len) in rmi_write_report() argument
[all …]
/linux/drivers/accel/habanalabs/common/mmu/
H A Dmmu.c23 static struct hl_mmu_funcs *hl_mmu_get_funcs(struct hl_device *hdev, int pgt_residency, in hl_mmu_get_funcs() argument
26 return &hdev->mmu_func[pgt_residency]; in hl_mmu_get_funcs()
29 bool hl_is_dram_va(struct hl_device *hdev, u64 virt_addr) in hl_is_dram_va() argument
31 struct asic_fixed_properties *prop = &hdev->asic_prop; in hl_is_dram_va()
44 int hl_mmu_init(struct hl_device *hdev) in hl_mmu_init() argument
48 if (hdev->mmu_disable) in hl_mmu_init()
51 mutex_init(&hdev->mmu_lock); in hl_mmu_init()
53 if (hdev->mmu_func[MMU_DR_PGT].init != NULL) { in hl_mmu_init()
54 rc = hdev->mmu_func[MMU_DR_PGT].init(hdev); in hl_mmu_init()
59 if (hdev->mmu_func[MMU_HR_PGT].init != NULL) { in hl_mmu_init()
[all …]
/linux/drivers/accel/habanalabs/gaudi/
H A Dgaudi.c479 static int gaudi_mmu_update_asid_hop0_addr(struct hl_device *hdev, u32 asid,
481 static int gaudi_send_job_on_qman0(struct hl_device *hdev,
483 static int gaudi_memset_device_memory(struct hl_device *hdev, u64 addr,
485 static int gaudi_memset_registers(struct hl_device *hdev, u64 reg_base,
487 static int gaudi_run_tpc_kernel(struct hl_device *hdev, u64 tpc_kernel,
489 static int gaudi_mmu_clear_pgt_range(struct hl_device *hdev);
490 static int gaudi_cpucp_info_get(struct hl_device *hdev);
491 static void gaudi_disable_clock_gating(struct hl_device *hdev);
492 static void gaudi_mmu_prepare(struct hl_device *hdev, u32 asid);
493 static u32 gaudi_gen_signal_cb(struct hl_device *hdev, void *data, u16 sob_id,
[all …]

12345678910>>...12