162306a36Sopenharmony_ci/* SPDX-License-Identifier: MIT */
262306a36Sopenharmony_ci#ifndef __NVIF_IF0003_H__
362306a36Sopenharmony_ci#define __NVIF_IF0003_H__
462306a36Sopenharmony_ci
562306a36Sopenharmony_cistruct nvif_perfdom_v0 {
662306a36Sopenharmony_ci	__u8  version;
762306a36Sopenharmony_ci	__u8  domain;
862306a36Sopenharmony_ci	__u8  mode;
962306a36Sopenharmony_ci	__u8  pad03[1];
1062306a36Sopenharmony_ci	struct {
1162306a36Sopenharmony_ci		__u8  signal[4];
1262306a36Sopenharmony_ci		__u64 source[4][8];
1362306a36Sopenharmony_ci		__u16 logic_op;
1462306a36Sopenharmony_ci	} ctr[4];
1562306a36Sopenharmony_ci};
1662306a36Sopenharmony_ci
1762306a36Sopenharmony_ci#define NVIF_PERFDOM_V0_INIT                                               0x00
1862306a36Sopenharmony_ci#define NVIF_PERFDOM_V0_SAMPLE                                             0x01
1962306a36Sopenharmony_ci#define NVIF_PERFDOM_V0_READ                                               0x02
2062306a36Sopenharmony_ci
2162306a36Sopenharmony_cistruct nvif_perfdom_init {
2262306a36Sopenharmony_ci};
2362306a36Sopenharmony_ci
2462306a36Sopenharmony_cistruct nvif_perfdom_sample {
2562306a36Sopenharmony_ci};
2662306a36Sopenharmony_ci
2762306a36Sopenharmony_cistruct nvif_perfdom_read_v0 {
2862306a36Sopenharmony_ci	__u8  version;
2962306a36Sopenharmony_ci	__u8  pad01[7];
3062306a36Sopenharmony_ci	__u32 ctr[4];
3162306a36Sopenharmony_ci	__u32 clk;
3262306a36Sopenharmony_ci	__u8  pad04[4];
3362306a36Sopenharmony_ci};
3462306a36Sopenharmony_ci#endif
35