1d722e3fbSopenharmony_ci#ifndef __NVIF_IF0003_H__
2d722e3fbSopenharmony_ci#define __NVIF_IF0003_H__
3d722e3fbSopenharmony_ci
4d722e3fbSopenharmony_cistruct nvif_perfdom_v0 {
5d722e3fbSopenharmony_ci	__u8  version;
6d722e3fbSopenharmony_ci	__u8  domain;
7d722e3fbSopenharmony_ci	__u8  mode;
8d722e3fbSopenharmony_ci	__u8  pad03[1];
9d722e3fbSopenharmony_ci	struct {
10d722e3fbSopenharmony_ci		__u8  signal[4];
11d722e3fbSopenharmony_ci		__u64 source[4][8];
12d722e3fbSopenharmony_ci		__u16 logic_op;
13d722e3fbSopenharmony_ci	} ctr[4];
14d722e3fbSopenharmony_ci};
15d722e3fbSopenharmony_ci
16d722e3fbSopenharmony_ci#define NVIF_PERFDOM_V0_INIT                                               0x00
17d722e3fbSopenharmony_ci#define NVIF_PERFDOM_V0_SAMPLE                                             0x01
18d722e3fbSopenharmony_ci#define NVIF_PERFDOM_V0_READ                                               0x02
19d722e3fbSopenharmony_ci
20d722e3fbSopenharmony_cistruct nvif_perfdom_init {
21d722e3fbSopenharmony_ci};
22d722e3fbSopenharmony_ci
23d722e3fbSopenharmony_cistruct nvif_perfdom_sample {
24d722e3fbSopenharmony_ci};
25d722e3fbSopenharmony_ci
26d722e3fbSopenharmony_cistruct nvif_perfdom_read_v0 {
27d722e3fbSopenharmony_ci	__u8  version;
28d722e3fbSopenharmony_ci	__u8  pad01[7];
29d722e3fbSopenharmony_ci	__u32 ctr[4];
30d722e3fbSopenharmony_ci	__u32 clk;
31d722e3fbSopenharmony_ci	__u8  pad04[4];
32d722e3fbSopenharmony_ci};
33d722e3fbSopenharmony_ci#endif
34