Lines Matching +full:3 +full:- +full:port
27 nvkm_rdport(struct nvkm_device *device, int head, u16 port) in nvkm_rdport() argument
29 if (device->card_type >= NV_50) in nvkm_rdport()
30 return nvkm_rd08(device, 0x601000 + port); in nvkm_rdport()
32 if (port == 0x03c0 || port == 0x03c1 || /* AR */ in nvkm_rdport()
33 port == 0x03c2 || port == 0x03da || /* INP0 */ in nvkm_rdport()
34 port == 0x03d4 || port == 0x03d5) /* CR */ in nvkm_rdport()
35 return nvkm_rd08(device, 0x601000 + (head * 0x2000) + port); in nvkm_rdport()
37 if (port == 0x03c2 || port == 0x03cc || /* MISC */ in nvkm_rdport()
38 port == 0x03c4 || port == 0x03c5 || /* SR */ in nvkm_rdport()
39 port == 0x03ce || port == 0x03cf) { /* GR */ in nvkm_rdport()
40 if (device->card_type < NV_40) in nvkm_rdport()
42 return nvkm_rd08(device, 0x0c0000 + (head * 0x2000) + port); in nvkm_rdport()
49 nvkm_wrport(struct nvkm_device *device, int head, u16 port, u8 data) in nvkm_wrport() argument
51 if (device->card_type >= NV_50) in nvkm_wrport()
52 nvkm_wr08(device, 0x601000 + port, data); in nvkm_wrport()
54 if (port == 0x03c0 || port == 0x03c1 || /* AR */ in nvkm_wrport()
55 port == 0x03c2 || port == 0x03da || /* INP0 */ in nvkm_wrport()
56 port == 0x03d4 || port == 0x03d5) /* CR */ in nvkm_wrport()
57 nvkm_wr08(device, 0x601000 + (head * 0x2000) + port, data); in nvkm_wrport()
59 if (port == 0x03c2 || port == 0x03cc || /* MISC */ in nvkm_wrport()
60 port == 0x03c4 || port == 0x03c5 || /* SR */ in nvkm_wrport()
61 port == 0x03ce || port == 0x03cf) { /* GR */ in nvkm_wrport()
62 if (device->card_type < NV_40) in nvkm_wrport()
64 nvkm_wr08(device, 0x0c0000 + (head * 0x2000) + port, data); in nvkm_wrport()
111 nvkm_rdvgai(struct nvkm_device *device, int head, u16 port, u8 index) in nvkm_rdvgai() argument
113 if (port == 0x03c4) return nvkm_rdvgas(device, head, index); in nvkm_rdvgai()
114 if (port == 0x03ce) return nvkm_rdvgag(device, head, index); in nvkm_rdvgai()
115 if (port == 0x03d4) return nvkm_rdvgac(device, head, index); in nvkm_rdvgai()
120 nvkm_wrvgai(struct nvkm_device *device, int head, u16 port, u8 index, u8 value) in nvkm_wrvgai() argument
122 if (port == 0x03c4) nvkm_wrvgas(device, head, index, value); in nvkm_wrvgai()
123 else if (port == 0x03ce) nvkm_wrvgag(device, head, index, value); in nvkm_wrvgai()
124 else if (port == 0x03d4) nvkm_wrvgac(device, head, index, value); in nvkm_wrvgai()
132 if (device->card_type < NV_50) in nvkm_lockvgac()
136 if (device->chipset == 0x11) { in nvkm_lockvgac()
143 /* CR44 takes values 0 (head A), 3 (head B) and 4 (heads tied)
145 * 0xc{0,2}3c*, 0x60{1,3}3*, and 0x68{1,3}3d*
151 * cr44 must be set to 0 or 3 for accessing values on the correct head
158 * 0 and 1 are treated as head values and so the set value is (owner * 3)
164 if (device->card_type < NV_50) { in nvkm_rdvgaowner()
165 if (device->chipset == 0x11) { in nvkm_rdvgaowner()
190 if (device->card_type < NV_50) { in nvkm_wrvgaowner()
191 u8 owner = (select == 1) ? 3 : select; in nvkm_wrvgaowner()
192 if (device->chipset == 0x11) { in nvkm_wrvgaowner()
200 if (device->chipset == 0x11) { in nvkm_wrvgaowner()