Lines Matching +full:0 +full:x50

36 	nvkm_mask(device, 0x00d954 + (aux->ch * 0x50), 0x00310000, 0x00000000);  in gm200_i2c_aux_fini()
44 const u32 ureq = unksel ? 0x00100000 : 0x00200000; in gm200_i2c_aux_init()
45 const u32 urep = unksel ? 0x01000000 : 0x02000000; in gm200_i2c_aux_init()
51 ctrl = nvkm_rd32(device, 0x00d954 + (aux->ch * 0x50)); in gm200_i2c_aux_init()
57 } while (ctrl & 0x03010000); in gm200_i2c_aux_init()
60 nvkm_mask(device, 0x00d954 + (aux->ch * 0x50), 0x00300000, ureq); in gm200_i2c_aux_init()
63 ctrl = nvkm_rd32(device, 0x00d954 + (aux->ch * 0x50)); in gm200_i2c_aux_init()
70 } while ((ctrl & 0x03000000) != urep); in gm200_i2c_aux_init()
72 return 0; in gm200_i2c_aux_init()
81 const u32 base = aux->ch * 0x50; in gm200_i2c_aux_xfer()
82 u32 ctrl, stat, timeout, retries = 0; in gm200_i2c_aux_xfer()
89 if (ret < 0) in gm200_i2c_aux_xfer()
92 stat = nvkm_rd32(device, 0x00d958 + base); in gm200_i2c_aux_xfer()
93 if (!(stat & 0x10000000)) { in gm200_i2c_aux_xfer()
101 for (i = 0; i < 16; i += 4) { in gm200_i2c_aux_xfer()
103 nvkm_wr32(device, 0x00d930 + base + i, xbuf[i / 4]); in gm200_i2c_aux_xfer()
107 ctrl = nvkm_rd32(device, 0x00d954 + base); in gm200_i2c_aux_xfer()
108 ctrl &= ~0x0001f1ff; in gm200_i2c_aux_xfer()
110 ctrl |= (*size ? (*size - 1) : 0x00000100); in gm200_i2c_aux_xfer()
111 nvkm_wr32(device, 0x00d950 + base, addr); in gm200_i2c_aux_xfer()
116 nvkm_wr32(device, 0x00d954 + base, 0x80000000 | ctrl); in gm200_i2c_aux_xfer()
117 nvkm_wr32(device, 0x00d954 + base, 0x00000000 | ctrl); in gm200_i2c_aux_xfer()
122 nvkm_wr32(device, 0x00d954 + base, 0x00010000 | ctrl); in gm200_i2c_aux_xfer()
126 ctrl = nvkm_rd32(device, 0x00d954 + base); in gm200_i2c_aux_xfer()
133 } while (ctrl & 0x00010000); in gm200_i2c_aux_xfer()
134 ret = 0; in gm200_i2c_aux_xfer()
137 stat = nvkm_mask(device, 0x00d958 + base, 0, 0); in gm200_i2c_aux_xfer()
138 if ((stat & 0x000f0000) == 0x00080000 || in gm200_i2c_aux_xfer()
139 (stat & 0x000f0000) == 0x00020000) in gm200_i2c_aux_xfer()
141 if ((stat & 0x00000100)) in gm200_i2c_aux_xfer()
143 if ((stat & 0x00000e00)) in gm200_i2c_aux_xfer()
150 for (i = 0; i < 16; i += 4) { in gm200_i2c_aux_xfer()
151 xbuf[i / 4] = nvkm_rd32(device, 0x00d940 + base + i); in gm200_i2c_aux_xfer()
155 *size = stat & 0x0000001f; in gm200_i2c_aux_xfer()
160 return ret < 0 ? ret : (stat & 0x000f0000) >> 16; in gm200_i2c_aux_xfer()
182 return 0; in gm200_i2c_aux_new()