1/* SPDX-License-Identifier: MIT */
2#ifndef __NOUVEAU_VGA_H__
3#define __NOUVEAU_VGA_H__
4#include <core/subdev.h>
5
6/* access to various legacy io ports */
7u8   nvkm_rdport(struct nvkm_device *, int head, u16 port);
8void nvkm_wrport(struct nvkm_device *, int head, u16 port, u8 value);
9
10/* VGA Sequencer */
11u8   nvkm_rdvgas(struct nvkm_device *, int head, u8 index);
12void nvkm_wrvgas(struct nvkm_device *, int head, u8 index, u8 value);
13
14/* VGA Graphics */
15u8   nvkm_rdvgag(struct nvkm_device *, int head, u8 index);
16void nvkm_wrvgag(struct nvkm_device *, int head, u8 index, u8 value);
17
18/* VGA CRTC */
19u8   nvkm_rdvgac(struct nvkm_device *, int head, u8 index);
20void nvkm_wrvgac(struct nvkm_device *, int head, u8 index, u8 value);
21
22/* VGA indexed port access dispatcher */
23u8   nvkm_rdvgai(struct nvkm_device *, int head, u16 port, u8 index);
24void nvkm_wrvgai(struct nvkm_device *, int head, u16 port, u8 index, u8 value);
25
26bool nvkm_lockvgac(struct nvkm_device *, bool lock);
27u8   nvkm_rdvgaowner(struct nvkm_device *);
28void nvkm_wrvgaowner(struct nvkm_device *, u8);
29#endif
30