Linux Audio

Check our new training course

Loading...
Note: File does not exist in v6.8.
 1/* SPDX-License-Identifier: GPL-2.0-only OR MIT */
 2/*
 3 * Copyright (C) 2020-2024 Intel Corporation
 4 */
 5#ifndef __IVPU_MS_H__
 6#define __IVPU_MS_H__
 7
 8#include <linux/list.h>
 9
10struct drm_device;
11struct drm_file;
12struct ivpu_bo;
13struct ivpu_device;
14struct ivpu_file_priv;
15
16struct ivpu_ms_instance {
17	struct ivpu_bo *bo;
18	struct list_head ms_instance_node;
19	u64 mask;
20	u64 buff_size;
21	u64 active_buff_vpu_addr;
22	u64 inactive_buff_vpu_addr;
23	void *active_buff_ptr;
24	void *inactive_buff_ptr;
25	u64 leftover_bytes;
26	void *leftover_addr;
27};
28
29int ivpu_ms_start_ioctl(struct drm_device *dev, void *data, struct drm_file *file);
30int ivpu_ms_stop_ioctl(struct drm_device *dev, void *data, struct drm_file *file);
31int ivpu_ms_get_data_ioctl(struct drm_device *dev, void *data, struct drm_file *file);
32int ivpu_ms_get_info_ioctl(struct drm_device *dev, void *data, struct drm_file *file);
33void ivpu_ms_cleanup(struct ivpu_file_priv *file_priv);
34void ivpu_ms_cleanup_all(struct ivpu_device *vdev);
35
36#endif /* __IVPU_MS_H__ */