18c2ecf20Sopenharmony_ci/* SPDX-License-Identifier: MIT */
28c2ecf20Sopenharmony_ci#ifndef __NVIF_IF0003_H__
38c2ecf20Sopenharmony_ci#define __NVIF_IF0003_H__
48c2ecf20Sopenharmony_ci
58c2ecf20Sopenharmony_cistruct nvif_perfdom_v0 {
68c2ecf20Sopenharmony_ci	__u8  version;
78c2ecf20Sopenharmony_ci	__u8  domain;
88c2ecf20Sopenharmony_ci	__u8  mode;
98c2ecf20Sopenharmony_ci	__u8  pad03[1];
108c2ecf20Sopenharmony_ci	struct {
118c2ecf20Sopenharmony_ci		__u8  signal[4];
128c2ecf20Sopenharmony_ci		__u64 source[4][8];
138c2ecf20Sopenharmony_ci		__u16 logic_op;
148c2ecf20Sopenharmony_ci	} ctr[4];
158c2ecf20Sopenharmony_ci};
168c2ecf20Sopenharmony_ci
178c2ecf20Sopenharmony_ci#define NVIF_PERFDOM_V0_INIT                                               0x00
188c2ecf20Sopenharmony_ci#define NVIF_PERFDOM_V0_SAMPLE                                             0x01
198c2ecf20Sopenharmony_ci#define NVIF_PERFDOM_V0_READ                                               0x02
208c2ecf20Sopenharmony_ci
218c2ecf20Sopenharmony_cistruct nvif_perfdom_init {
228c2ecf20Sopenharmony_ci};
238c2ecf20Sopenharmony_ci
248c2ecf20Sopenharmony_cistruct nvif_perfdom_sample {
258c2ecf20Sopenharmony_ci};
268c2ecf20Sopenharmony_ci
278c2ecf20Sopenharmony_cistruct nvif_perfdom_read_v0 {
288c2ecf20Sopenharmony_ci	__u8  version;
298c2ecf20Sopenharmony_ci	__u8  pad01[7];
308c2ecf20Sopenharmony_ci	__u32 ctr[4];
318c2ecf20Sopenharmony_ci	__u32 clk;
328c2ecf20Sopenharmony_ci	__u8  pad04[4];
338c2ecf20Sopenharmony_ci};
348c2ecf20Sopenharmony_ci#endif
35