Lines Matching +full:0 +full:x2000

26 	case 0x00e0 ... 0x00e5:  in rt715_readable_register()
27 case 0x00ee ... 0x00ef: in rt715_readable_register()
28 case 0x00f0 ... 0x00f5: in rt715_readable_register()
29 case 0x00fe ... 0x00ff: in rt715_readable_register()
30 case 0x02e0: in rt715_readable_register()
31 case 0x02f0: in rt715_readable_register()
32 case 0x04e0: in rt715_readable_register()
33 case 0x04f0: in rt715_readable_register()
34 case 0x06e0: in rt715_readable_register()
35 case 0x06f0: in rt715_readable_register()
36 case 0x2000 ... 0x2016: in rt715_readable_register()
37 case 0x201a ... 0x2027: in rt715_readable_register()
38 case 0x2029 ... 0x202a: in rt715_readable_register()
39 case 0x202d ... 0x2034: in rt715_readable_register()
40 case 0x2200 ... 0x2204: in rt715_readable_register()
41 case 0x2206 ... 0x2212: in rt715_readable_register()
42 case 0x2220 ... 0x2223: in rt715_readable_register()
43 case 0x2230 ... 0x2239: in rt715_readable_register()
44 case 0x22f0 ... 0x22f3: in rt715_readable_register()
45 case 0x3122: in rt715_readable_register()
46 case 0x3123: in rt715_readable_register()
47 case 0x3124: in rt715_readable_register()
48 case 0x3125: in rt715_readable_register()
49 case 0x3607: in rt715_readable_register()
50 case 0x3608: in rt715_readable_register()
51 case 0x3609: in rt715_readable_register()
52 case 0x3610: in rt715_readable_register()
53 case 0x3611: in rt715_readable_register()
54 case 0x3627: in rt715_readable_register()
55 case 0x3712: in rt715_readable_register()
56 case 0x3713: in rt715_readable_register()
57 case 0x3718: in rt715_readable_register()
58 case 0x3719: in rt715_readable_register()
59 case 0x371a: in rt715_readable_register()
60 case 0x371b: in rt715_readable_register()
61 case 0x371d: in rt715_readable_register()
62 case 0x3729: in rt715_readable_register()
63 case 0x385e: in rt715_readable_register()
64 case 0x3859: in rt715_readable_register()
65 case 0x4c12: in rt715_readable_register()
66 case 0x4c13: in rt715_readable_register()
67 case 0x4c1d: in rt715_readable_register()
68 case 0x4c29: in rt715_readable_register()
69 case 0x4d12: in rt715_readable_register()
70 case 0x4d13: in rt715_readable_register()
71 case 0x4d1d: in rt715_readable_register()
72 case 0x4d29: in rt715_readable_register()
73 case 0x4e12: in rt715_readable_register()
74 case 0x4e13: in rt715_readable_register()
75 case 0x4e1d: in rt715_readable_register()
76 case 0x4e29: in rt715_readable_register()
77 case 0x4f12: in rt715_readable_register()
78 case 0x4f13: in rt715_readable_register()
79 case 0x4f1d: in rt715_readable_register()
80 case 0x4f29: in rt715_readable_register()
81 case 0x7207: in rt715_readable_register()
82 case 0x7208: in rt715_readable_register()
83 case 0x7209: in rt715_readable_register()
84 case 0x7227: in rt715_readable_register()
85 case 0x7307: in rt715_readable_register()
86 case 0x7308: in rt715_readable_register()
87 case 0x7309: in rt715_readable_register()
88 case 0x7312: in rt715_readable_register()
89 case 0x7313: in rt715_readable_register()
90 case 0x7318: in rt715_readable_register()
91 case 0x7319: in rt715_readable_register()
92 case 0x731a: in rt715_readable_register()
93 case 0x731b: in rt715_readable_register()
94 case 0x731d: in rt715_readable_register()
95 case 0x7327: in rt715_readable_register()
96 case 0x7329: in rt715_readable_register()
97 case 0x8287: in rt715_readable_register()
98 case 0x8288: in rt715_readable_register()
99 case 0x8289: in rt715_readable_register()
100 case 0x82a7: in rt715_readable_register()
101 case 0x8387: in rt715_readable_register()
102 case 0x8388: in rt715_readable_register()
103 case 0x8389: in rt715_readable_register()
104 case 0x8392: in rt715_readable_register()
105 case 0x8393: in rt715_readable_register()
106 case 0x8398: in rt715_readable_register()
107 case 0x8399: in rt715_readable_register()
108 case 0x839a: in rt715_readable_register()
109 case 0x839b: in rt715_readable_register()
110 case 0x839d: in rt715_readable_register()
111 case 0x83a7: in rt715_readable_register()
112 case 0x83a9: in rt715_readable_register()
113 case 0x752039: in rt715_readable_register()
123 case 0x00e5: in rt715_volatile_register()
124 case 0x00f0: in rt715_volatile_register()
125 case 0x00f3: in rt715_volatile_register()
126 case 0x00f5: in rt715_volatile_register()
127 case 0x2009: in rt715_volatile_register()
128 case 0x2016: in rt715_volatile_register()
129 case 0x201b: in rt715_volatile_register()
130 case 0x201c: in rt715_volatile_register()
131 case 0x201d: in rt715_volatile_register()
132 case 0x201f: in rt715_volatile_register()
133 case 0x2023: in rt715_volatile_register()
134 case 0x2230: in rt715_volatile_register()
135 case 0x200b ... 0x200e: /* i2c read */ in rt715_volatile_register()
136 case 0x2012 ... 0x2015: /* HD-A read */ in rt715_volatile_register()
137 case 0x202d ... 0x202f: /* BRA */ in rt715_volatile_register()
138 case 0x2201 ... 0x2212: /* i2c debug */ in rt715_volatile_register()
139 case 0x2220 ... 0x2223: /* decoded HD-A */ in rt715_volatile_register()
151 unsigned int reg2 = 0, reg3 = 0, reg4 = 0, mask, nid, val2; in rt715_sdw_read()
152 unsigned int is_hda_reg = 1, is_index_reg = 0; in rt715_sdw_read()
155 if (reg > 0xffff) in rt715_sdw_read()
158 mask = reg & 0xf000; in rt715_sdw_read()
161 val2 = reg & 0xff; in rt715_sdw_read()
163 nid = reg & 0xff; in rt715_sdw_read()
164 ret = regmap_write(rt715->sdw_regmap, reg, 0); in rt715_sdw_read()
165 if (ret < 0) in rt715_sdw_read()
167 reg2 = reg + 0x1000; in rt715_sdw_read()
168 reg2 |= 0x80; in rt715_sdw_read()
170 if (ret < 0) in rt715_sdw_read()
175 ((*val >> 8) & 0xff)); in rt715_sdw_read()
176 if (ret < 0) in rt715_sdw_read()
178 reg4 = reg3 + 0x1000; in rt715_sdw_read()
179 reg4 |= 0x80; in rt715_sdw_read()
180 ret = regmap_write(rt715->sdw_regmap, reg4, (*val & 0xff)); in rt715_sdw_read()
181 if (ret < 0) in rt715_sdw_read()
183 } else if (mask == 0x3000) { in rt715_sdw_read()
184 reg += 0x8000; in rt715_sdw_read()
186 if (ret < 0) in rt715_sdw_read()
188 } else if (mask == 0x7000) { in rt715_sdw_read()
189 reg += 0x2000; in rt715_sdw_read()
190 reg |= 0x800; in rt715_sdw_read()
192 ((*val >> 8) & 0xff)); in rt715_sdw_read()
193 if (ret < 0) in rt715_sdw_read()
195 reg2 = reg + 0x1000; in rt715_sdw_read()
196 reg2 |= 0x80; in rt715_sdw_read()
197 ret = regmap_write(rt715->sdw_regmap, reg2, (*val & 0xff)); in rt715_sdw_read()
198 if (ret < 0) in rt715_sdw_read()
200 } else if ((reg & 0xff00) == 0x8300) { /* for R channel */ in rt715_sdw_read()
201 reg2 = reg - 0x1000; in rt715_sdw_read()
202 reg2 &= ~0x80; in rt715_sdw_read()
204 ((*val >> 8) & 0xff)); in rt715_sdw_read()
205 if (ret < 0) in rt715_sdw_read()
207 ret = regmap_write(rt715->sdw_regmap, reg, (*val & 0xff)); in rt715_sdw_read()
208 if (ret < 0) in rt715_sdw_read()
210 } else if (mask == 0x9000) { in rt715_sdw_read()
212 ((*val >> 8) & 0xff)); in rt715_sdw_read()
213 if (ret < 0) in rt715_sdw_read()
215 reg2 = reg + 0x1000; in rt715_sdw_read()
216 reg2 |= 0x80; in rt715_sdw_read()
217 ret = regmap_write(rt715->sdw_regmap, reg2, (*val & 0xff)); in rt715_sdw_read()
218 if (ret < 0) in rt715_sdw_read()
220 } else if (mask == 0xb000) { in rt715_sdw_read()
222 if (ret < 0) in rt715_sdw_read()
226 if (ret < 0) in rt715_sdw_read()
228 is_hda_reg = 0; in rt715_sdw_read()
232 sdw_data_3 = 0; in rt715_sdw_read()
233 sdw_data_2 = 0; in rt715_sdw_read()
234 sdw_data_1 = 0; in rt715_sdw_read()
235 sdw_data_0 = 0; in rt715_sdw_read()
238 if (ret < 0) in rt715_sdw_read()
242 if (ret < 0) in rt715_sdw_read()
246 if (ret < 0) in rt715_sdw_read()
250 if (ret < 0) in rt715_sdw_read()
252 *val = ((sdw_data_3 & 0xff) << 24) | in rt715_sdw_read()
253 ((sdw_data_2 & 0xff) << 16) | in rt715_sdw_read()
254 ((sdw_data_1 & 0xff) << 8) | (sdw_data_0 & 0xff); in rt715_sdw_read()
257 if (is_hda_reg == 0) in rt715_sdw_read()
266 return 0; in rt715_sdw_read()
273 unsigned int reg2 = 0, reg3, reg4, nid, mask, val2; in rt715_sdw_write()
274 unsigned int is_index_reg = 0; in rt715_sdw_write()
277 if (reg > 0xffff) in rt715_sdw_write()
280 mask = reg & 0xf000; in rt715_sdw_write()
283 val2 = reg & 0xff; in rt715_sdw_write()
285 nid = reg & 0xff; in rt715_sdw_write()
286 ret = regmap_write(rt715->sdw_regmap, reg, 0); in rt715_sdw_write()
287 if (ret < 0) in rt715_sdw_write()
289 reg2 = reg + 0x1000; in rt715_sdw_write()
290 reg2 |= 0x80; in rt715_sdw_write()
292 if (ret < 0) in rt715_sdw_write()
297 ((val >> 8) & 0xff)); in rt715_sdw_write()
298 if (ret < 0) in rt715_sdw_write()
300 reg4 = reg3 + 0x1000; in rt715_sdw_write()
301 reg4 |= 0x80; in rt715_sdw_write()
302 ret = regmap_write(rt715->sdw_regmap, reg4, (val & 0xff)); in rt715_sdw_write()
303 if (ret < 0) in rt715_sdw_write()
306 } else if (reg < 0x4fff) { in rt715_sdw_write()
308 if (ret < 0) in rt715_sdw_write()
312 if (ret < 0) in rt715_sdw_write()
314 } else if (mask == 0x7000) { in rt715_sdw_write()
316 ((val >> 8) & 0xff)); in rt715_sdw_write()
317 if (ret < 0) in rt715_sdw_write()
319 reg2 = reg + 0x1000; in rt715_sdw_write()
320 reg2 |= 0x80; in rt715_sdw_write()
321 ret = regmap_write(rt715->sdw_regmap, reg2, (val & 0xff)); in rt715_sdw_write()
322 if (ret < 0) in rt715_sdw_write()
324 } else if ((reg & 0xff00) == 0x8300) { /* for R channel */ in rt715_sdw_write()
325 reg2 = reg - 0x1000; in rt715_sdw_write()
326 reg2 &= ~0x80; in rt715_sdw_write()
328 ((val >> 8) & 0xff)); in rt715_sdw_write()
329 if (ret < 0) in rt715_sdw_write()
331 ret = regmap_write(rt715->sdw_regmap, reg, (val & 0xff)); in rt715_sdw_write()
332 if (ret < 0) in rt715_sdw_write()
336 if (reg2 == 0) in rt715_sdw_write()
345 return 0; in rt715_sdw_write()
353 .max_register = 0x752039, /* Maximum number of register */
367 .max_register = 0xff01, /* Maximum number of register */
379 if (((verb & 0xff) != 0) || verb == 0xf00) { /* 12 bits command */ in hda_to_sdw()
380 if (verb == 0x7ff) /* special case */ in hda_to_sdw()
381 offset_h = 0; in hda_to_sdw()
383 offset_h = 0x3000; in hda_to_sdw()
385 if (verb & 0x800) /* get command */ in hda_to_sdw()
386 e_verb = (verb - 0xf00) | 0x80; in hda_to_sdw()
388 e_verb = (verb - 0x700); in hda_to_sdw()
391 *sdw_addr_l = *sdw_data_l = 0; in hda_to_sdw()
393 if ((verb & 0x800) == 0x800) { /* read */ in hda_to_sdw()
394 offset_h = 0x9000; in hda_to_sdw()
395 offset_l = 0xa000; in hda_to_sdw()
397 offset_h = 0x7000; in hda_to_sdw()
398 offset_l = 0x8000; in hda_to_sdw()
402 *sdw_addr_l = (e_verb << 8) | nid | 0x80; /* 0x80: valid bit */ in hda_to_sdw()
404 *sdw_data_l = payload & 0xff; in hda_to_sdw()
410 return 0; in hda_to_sdw()
426 return 0; in rt715_update_status()
447 prop->source_ports = 0x50;/* BITMAP: 01010000 */ in rt715_read_prop()
448 prop->sink_ports = 0x0; /* BITMAP: 00000000 */ in rt715_read_prop()
458 i = 0; in rt715_read_prop()
473 return 0; in rt715_read_prop()
485 if (ret < 0) in rt715_bus_config()
488 return 0; in rt715_bus_config()
514 return 0; in rt715_sdw_probe()
518 SDW_SLAVE_ENTRY_EXT(0x025d, 0x714, 0x2, 0, 0),
519 SDW_SLAVE_ENTRY_EXT(0x025d, 0x715, 0x2, 0, 0),
529 return 0; in rt715_dev_suspend()
533 return 0; in rt715_dev_suspend()
545 return 0; in rt715_dev_resume()
558 slave->unattach_request = 0; in rt715_dev_resume()
560 regcache_sync_region(rt715->regmap, 0x3000, 0x8fff); in rt715_dev_resume()
561 regcache_sync_region(rt715->regmap, 0x752039, 0x752039); in rt715_dev_resume()
563 return 0; in rt715_dev_resume()