1 /* SPDX-License-Identifier: GPL-2.0-only */
3 * Copyright (C) 2020-2024 Intel Corporation
6 #ifndef __IVPU_HW_IP_H__
7 #define __IVPU_HW_IP_H__
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
);
36 #endif /* __IVPU_HW_IP_H__ */