Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
torvalds
GitHub Repository: torvalds/linux
Path: blob/master/drivers/accel/ivpu/ivpu_hw_ip.h
26428 views
1
/* SPDX-License-Identifier: GPL-2.0-only */
2
/*
3
* Copyright (C) 2020-2024 Intel Corporation
4
*/
5
6
#ifndef __IVPU_HW_IP_H__
7
#define __IVPU_HW_IP_H__
8
9
#include "ivpu_drv.h"
10
11
int ivpu_hw_ip_host_ss_configure(struct ivpu_device *vdev);
12
void ivpu_hw_ip_idle_gen_enable(struct ivpu_device *vdev);
13
void ivpu_hw_ip_idle_gen_disable(struct ivpu_device *vdev);
14
int ivpu_hw_ip_pwr_domain_enable(struct ivpu_device *vdev);
15
int ivpu_hw_ip_host_ss_axi_enable(struct ivpu_device *vdev);
16
int ivpu_hw_ip_top_noc_enable(struct ivpu_device *vdev);
17
u64 ivpu_hw_ip_read_perf_timer_counter(struct ivpu_device *vdev);
18
void ivpu_hw_ip_snoop_disable(struct ivpu_device *vdev);
19
void ivpu_hw_ip_tbu_mmu_enable(struct ivpu_device *vdev);
20
int ivpu_hw_ip_soc_cpu_boot(struct ivpu_device *vdev);
21
void ivpu_hw_ip_wdt_disable(struct ivpu_device *vdev);
22
void ivpu_hw_ip_diagnose_failure(struct ivpu_device *vdev);
23
u32 ivpu_hw_ip_ipc_rx_count_get(struct ivpu_device *vdev);
24
void ivpu_hw_ip_irq_clear(struct ivpu_device *vdev);
25
bool ivpu_hw_ip_irq_handler_37xx(struct ivpu_device *vdev, int irq);
26
bool ivpu_hw_ip_irq_handler_40xx(struct ivpu_device *vdev, int irq);
27
void ivpu_hw_ip_db_set(struct ivpu_device *vdev, u32 db_id);
28
u32 ivpu_hw_ip_ipc_rx_addr_get(struct ivpu_device *vdev);
29
void ivpu_hw_ip_ipc_tx_set(struct ivpu_device *vdev, u32 vpu_addr);
30
void ivpu_hw_ip_irq_enable(struct ivpu_device *vdev);
31
void ivpu_hw_ip_irq_disable(struct ivpu_device *vdev);
32
void ivpu_hw_ip_diagnose_failure(struct ivpu_device *vdev);
33
void ivpu_hw_ip_fabric_req_override_enable_50xx(struct ivpu_device *vdev);
34
void ivpu_hw_ip_fabric_req_override_disable_50xx(struct ivpu_device *vdev);
35
36
#endif /* __IVPU_HW_IP_H__ */
37
38