Commit | Line | Data |
---|---|---|
b2441318 | 1 | /* SPDX-License-Identifier: GPL-2.0 */ |
7a014a87 BS |
2 | #ifndef __NVKM_DISP_CONN_H__ |
3 | #define __NVKM_DISP_CONN_H__ | |
f2c906fc | 4 | #include <engine/disp.h> |
5025407b | 5 | |
f2c906fc | 6 | #include <core/notify.h> |
878da15a BS |
7 | #include <subdev/bios.h> |
8 | #include <subdev/bios/conn.h> | |
9 | ||
981a8162 | 10 | struct nvkm_conn { |
f2c906fc | 11 | struct nvkm_disp *disp; |
7a014a87 | 12 | int index; |
f2c906fc | 13 | struct nvbios_connE info; |
7a014a87 | 14 | |
79ca2770 | 15 | struct nvkm_notify hpd; |
7a014a87 | 16 | |
f2c906fc | 17 | struct list_head head; |
7a014a87 BS |
18 | }; |
19 | ||
981a8162 BS |
20 | int nvkm_conn_new(struct nvkm_disp *, int index, struct nvbios_connE *, |
21 | struct nvkm_conn **); | |
22 | void nvkm_conn_del(struct nvkm_conn **); | |
23 | void nvkm_conn_init(struct nvkm_conn *); | |
24 | void nvkm_conn_fini(struct nvkm_conn *); | |
f2c906fc BS |
25 | |
26 | #define CONN_MSG(c,l,f,a...) do { \ | |
981a8162 | 27 | struct nvkm_conn *_conn = (c); \ |
f2c906fc BS |
28 | nvkm_##l(&_conn->disp->engine.subdev, "conn %02x:%02x%02x: "f"\n", \ |
29 | _conn->index, _conn->info.location, _conn->info.type, ##a); \ | |
7a014a87 | 30 | } while(0) |
f2c906fc BS |
31 | #define CONN_ERR(c,f,a...) CONN_MSG((c), error, f, ##a) |
32 | #define CONN_DBG(c,f,a...) CONN_MSG((c), debug, f, ##a) | |
33 | #define CONN_TRACE(c,f,a...) CONN_MSG((c), trace, f, ##a) | |
7a014a87 | 34 | #endif |