xref: /netbsd-src/sys/external/bsd/drm2/dist/drm/nouveau/include/nvkm/subdev/bios/dp.h (revision 41ec02673d281bbb3d38e6c78504ce6e30c228c1)
1 /*	$NetBSD: dp.h,v 1.3 2021/12/18 23:45:33 riastradh Exp $	*/
2 
3 /* SPDX-License-Identifier: MIT */
4 #ifndef __NVBIOS_DP_H__
5 #define __NVBIOS_DP_H__
6 
7 u16
8 nvbios_dp_table(struct nvkm_bios *bios, u8 *ver, u8 *hdr, u8 *cnt, u8 *len);
9 
10 struct nvbios_dpout {
11 	u16 type;
12 	u16 mask;
13 	u8  flags;
14 	u32 script[5];
15 	u32 lnkcmp;
16 };
17 
18 u16 nvbios_dpout_parse(struct nvkm_bios *, u8 idx,
19 		       u8 *ver, u8 *hdr, u8 *cnt, u8 *len,
20 		       struct nvbios_dpout *);
21 u16 nvbios_dpout_match(struct nvkm_bios *, u16 type, u16 mask,
22 		       u8 *ver, u8 *hdr, u8 *cnt, u8 *len,
23 		       struct nvbios_dpout *);
24 
25 struct nvbios_dpcfg {
26 	u8 pc;
27 	u8 dc;
28 	u8 pe;
29 	u8 tx_pu;
30 };
31 
32 u16
33 nvbios_dpcfg_parse(struct nvkm_bios *, u16 outp, u8 idx,
34 		   u8 *ver, u8 *hdr, u8 *cnt, u8 *len, struct nvbios_dpcfg *);
35 u16
36 nvbios_dpcfg_match(struct nvkm_bios *, u16 outp, u8 pc, u8 vs, u8 pe,
37 		   u8 *ver, u8 *hdr, u8 *cnt, u8 *len, struct nvbios_dpcfg *);
38 #endif
39