Linux kernel mirror (for testing)
git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel
os
linux
1/* SPDX-License-Identifier: MIT */
2/*
3 * Copyright © 2024 Intel Corporation
4 */
5
6#ifndef _XE_MFX_COMMANDS_H_
7#define _XE_MFX_COMMANDS_H_
8
9#include "instructions/xe_instr_defs.h"
10
11#define MFX_CMD_SUBTYPE REG_GENMASK(28, 27) /* A.K.A cmd pipe */
12#define MFX_CMD_OPCODE REG_GENMASK(26, 24)
13#define MFX_CMD_SUB_OPCODE REG_GENMASK(23, 16)
14#define MFX_FLAGS_AND_LEN REG_GENMASK(15, 0)
15
16#define XE_MFX_INSTR(subtype, op, sub_op) \
17 (XE_INSTR_VIDEOPIPE | \
18 REG_FIELD_PREP(MFX_CMD_SUBTYPE, subtype) | \
19 REG_FIELD_PREP(MFX_CMD_OPCODE, op) | \
20 REG_FIELD_PREP(MFX_CMD_SUB_OPCODE, sub_op))
21
22#define MFX_WAIT XE_MFX_INSTR(1, 0, 0)
23#define MFX_WAIT_DW0_PXP_SYNC_CONTROL_FLAG REG_BIT(9)
24#define MFX_WAIT_DW0_MFX_SYNC_CONTROL_FLAG REG_BIT(8)
25
26#define CRYPTO_KEY_EXCHANGE XE_MFX_INSTR(2, 6, 9)
27
28#endif