1 /***************************************************************************\ 2 |* *| 3 |* Copyright 1993-1999 NVIDIA, Corporation. All rights reserved. *| 4 |* *| 5 |* NOTICE TO USER: The source code is copyrighted under U.S. and *| 6 |* international laws. Users and possessors of this source code are *| 7 |* hereby granted a nonexclusive, royalty-free copyright license to *| 8 |* use this code in individual and commercial software. *| 9 |* *| 10 |* Any use of this source code must include, in the user documenta- *| 11 |* tion and internal comments to the code, notices to the end user *| 12 |* as follows: *| 13 |* *| 14 |* Copyright 1993-1999 NVIDIA, Corporation. All rights reserved. *| 15 |* *| 16 |* NVIDIA, CORPORATION MAKES NO REPRESENTATION ABOUT THE SUITABILITY *| 17 |* OF THIS SOURCE CODE FOR ANY PURPOSE. IT IS PROVIDED "AS IS" *| 18 |* WITHOUT EXPRESS OR IMPLIED WARRANTY OF ANY KIND. NVIDIA, CORPOR- *| 19 |* ATION DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOURCE CODE, *| 20 |* INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY, NONINFRINGE- *| 21 |* MENT, AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL *| 22 |* NVIDIA, CORPORATION BE LIABLE FOR ANY SPECIAL, INDIRECT, INCI- *| 23 |* DENTAL, OR CONSEQUENTIAL DAMAGES, OR ANY DAMAGES WHATSOEVER RE- *| 24 |* SULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION *| 25 |* OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF *| 26 |* OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOURCE CODE. *| 27 |* *| 28 |* U.S. Government End Users. This source code is a "commercial *| 29 |* item," as that term is defined at 48 C.F.R. 2.101 (OCT 1995), *| 30 |* consisting of "commercial computer software" and "commercial *| 31 |* computer software documentation," as such terms are used in *| 32 |* 48 C.F.R. 12.212 (SEPT 1995) and is provided to the U.S. Govern- *| 33 |* ment only as a commercial end item. Consistent with 48 C.F.R. *| 34 |* 12.212 and 48 C.F.R. 227.7202-1 through 227.7202-4 (JUNE 1995), *| 35 |* all U.S. Government End Users acquire the source code with only *| 36 |* those rights set forth herein. *| 37 |* *| 38 \***************************************************************************/ 39 40 /* 41 * GPL licensing note -- nVidia is allowing a liberal interpretation of 42 * the documentation restriction above, to merely say that this nVidia's 43 * copyright and disclaimer should be included with all code derived 44 * from this source. -- Jeff Garzik <jgarzik@pobox.com>, 01/Nov/99 45 */ 46 47 /* $XFree86: xc/programs/Xserver/hw/xfree86/drivers/nv/riva_tbl.h,v 1.9 2002/01/30 01:35:03 mvojkovi Exp $ */ 48 49 50 /* 51 * RIVA Fixed Functionality Init Tables. 52 */ 53 static unsigned RivaTablePMC[][2] = 54 { 55 {0x00000050, 0x00000000}, 56 {0x00000080, 0xFFFF00FF}, 57 {0x00000080, 0xFFFFFFFF} 58 }; 59 static unsigned RivaTablePTIMER[][2] = 60 { 61 {0x00000080, 0x00000008}, 62 {0x00000084, 0x00000003}, 63 {0x00000050, 0x00000000}, 64 {0x00000040, 0xFFFFFFFF} 65 }; 66 static unsigned RivaTableFIFO[][2] = 67 { 68 {0x00000000, 0x80000000}, 69 {0x00000800, 0x80000001}, 70 {0x00001000, 0x80000002}, 71 {0x00001800, 0x80000010}, 72 {0x00002000, 0x80000011}, 73 {0x00002800, 0x80000012}, 74 {0x00003000, 0x80000016}, 75 {0x00003800, 0x80000013} 76 }; 77 static unsigned nv3TablePFIFO[][2] = 78 { 79 {0x00000140, 0x00000000}, 80 {0x00000480, 0x00000000}, 81 {0x00000490, 0x00000000}, 82 {0x00000494, 0x00000000}, 83 {0x00000481, 0x00000000}, 84 {0x00000084, 0x00000000}, 85 {0x00000086, 0x00002000}, 86 {0x00000085, 0x00002200}, 87 {0x00000484, 0x00000000}, 88 {0x0000049C, 0x00000000}, 89 {0x00000104, 0x00000000}, 90 {0x00000108, 0x00000000}, 91 {0x00000100, 0x00000000}, 92 {0x000004A0, 0x00000000}, 93 {0x000004A4, 0x00000000}, 94 {0x000004A8, 0x00000000}, 95 {0x000004AC, 0x00000000}, 96 {0x000004B0, 0x00000000}, 97 {0x000004B4, 0x00000000}, 98 {0x000004B8, 0x00000000}, 99 {0x000004BC, 0x00000000}, 100 {0x00000050, 0x00000000}, 101 {0x00000040, 0xFFFFFFFF}, 102 {0x00000480, 0x00000001}, 103 {0x00000490, 0x00000001}, 104 {0x00000140, 0x00000001} 105 }; 106 static unsigned nv3TablePGRAPH[][2] = 107 { 108 {0x00000020, 0x1230001F}, 109 {0x00000021, 0x10113000}, 110 {0x00000022, 0x1131F101}, 111 {0x00000023, 0x0100F531}, 112 {0x00000060, 0x00000000}, 113 {0x00000065, 0x00000000}, 114 {0x00000068, 0x00000000}, 115 {0x00000069, 0x00000000}, 116 {0x0000006A, 0x00000000}, 117 {0x0000006B, 0x00000000}, 118 {0x0000006C, 0x00000000}, 119 {0x0000006D, 0x00000000}, 120 {0x0000006E, 0x00000000}, 121 {0x0000006F, 0x00000000}, 122 {0x000001A8, 0x00000000}, 123 {0x00000440, 0xFFFFFFFF}, 124 {0x00000480, 0x00000001}, 125 {0x000001A0, 0x00000000}, 126 {0x000001A2, 0x00000000}, 127 {0x0000018A, 0xFFFFFFFF}, 128 {0x00000190, 0x00000000}, 129 {0x00000142, 0x00000000}, 130 {0x00000154, 0x00000000}, 131 {0x00000155, 0xFFFFFFFF}, 132 {0x00000156, 0x00000000}, 133 {0x00000157, 0xFFFFFFFF}, 134 {0x00000064, 0x10010002}, 135 {0x00000050, 0x00000000}, 136 {0x00000051, 0x00000000}, 137 {0x00000040, 0xFFFFFFFF}, 138 {0x00000041, 0xFFFFFFFF}, 139 {0x00000440, 0xFFFFFFFF}, 140 {0x000001A9, 0x00000001} 141 }; 142 static unsigned nv3TablePGRAPH_8BPP[][2] = 143 { 144 {0x000001AA, 0x00001111} 145 }; 146 static unsigned nv3TablePGRAPH_15BPP[][2] = 147 { 148 {0x000001AA, 0x00002222} 149 }; 150 static unsigned nv3TablePGRAPH_32BPP[][2] = 151 { 152 {0x000001AA, 0x00003333} 153 }; 154 static unsigned nv3TablePRAMIN[][2] = 155 { 156 {0x00000500, 0x00010000}, 157 {0x00000501, 0x007FFFFF}, 158 {0x00000200, 0x80000000}, 159 {0x00000201, 0x00C20341}, 160 {0x00000204, 0x80000001}, 161 {0x00000205, 0x00C50342}, 162 {0x00000208, 0x80000002}, 163 {0x00000209, 0x00C60343}, 164 {0x0000020C, 0x80000003}, 165 {0x0000020D, 0x00DC0348}, 166 {0x00000210, 0x80000004}, 167 {0x00000211, 0x00DC0349}, 168 {0x00000214, 0x80000005}, 169 {0x00000215, 0x00DC034A}, 170 {0x00000218, 0x80000006}, 171 {0x00000219, 0x00DC034B}, 172 {0x00000240, 0x80000010}, 173 {0x00000241, 0x00D10344}, 174 {0x00000244, 0x80000011}, 175 {0x00000245, 0x00D00345}, 176 {0x00000248, 0x80000012}, 177 {0x00000249, 0x00CC0346}, 178 {0x0000024C, 0x80000013}, 179 {0x0000024D, 0x00D70347}, 180 {0x00000258, 0x80000016}, 181 {0x00000259, 0x00CA034C}, 182 {0x00000D05, 0x00000000}, 183 {0x00000D06, 0x00000000}, 184 {0x00000D07, 0x00000000}, 185 {0x00000D09, 0x00000000}, 186 {0x00000D0A, 0x00000000}, 187 {0x00000D0B, 0x00000000}, 188 {0x00000D0D, 0x00000000}, 189 {0x00000D0E, 0x00000000}, 190 {0x00000D0F, 0x00000000}, 191 {0x00000D11, 0x00000000}, 192 {0x00000D12, 0x00000000}, 193 {0x00000D13, 0x00000000}, 194 {0x00000D15, 0x00000000}, 195 {0x00000D16, 0x00000000}, 196 {0x00000D17, 0x00000000}, 197 {0x00000D19, 0x00000000}, 198 {0x00000D1A, 0x00000000}, 199 {0x00000D1B, 0x00000000}, 200 {0x00000D1D, 0x00000140}, 201 {0x00000D1E, 0x00000000}, 202 {0x00000D1F, 0x00000000}, 203 {0x00000D20, 0x10100200}, 204 {0x00000D21, 0x00000000}, 205 {0x00000D22, 0x00000000}, 206 {0x00000D23, 0x00000000}, 207 {0x00000D24, 0x10210200}, 208 {0x00000D25, 0x00000000}, 209 {0x00000D26, 0x00000000}, 210 {0x00000D27, 0x00000000}, 211 {0x00000D28, 0x10420200}, 212 {0x00000D29, 0x00000000}, 213 {0x00000D2A, 0x00000000}, 214 {0x00000D2B, 0x00000000}, 215 {0x00000D2C, 0x10830200}, 216 {0x00000D2D, 0x00000000}, 217 {0x00000D2E, 0x00000000}, 218 {0x00000D2F, 0x00000000}, 219 {0x00000D31, 0x00000000}, 220 {0x00000D32, 0x00000000}, 221 {0x00000D33, 0x00000000} 222 }; 223 static unsigned nv3TablePRAMIN_8BPP[][2] = 224 { 225 /* 0xXXXXX3XX For MSB mono format */ 226 /* 0xXXXXX2XX For LSB mono format */ 227 {0x00000D04, 0x10110203}, 228 {0x00000D08, 0x10110203}, 229 {0x00000D0C, 0x1011020B}, 230 {0x00000D10, 0x10118203}, 231 {0x00000D14, 0x10110203}, 232 {0x00000D18, 0x10110203}, 233 {0x00000D1C, 0x10419208}, 234 {0x00000D30, 0x10118203} 235 }; 236 static unsigned nv3TablePRAMIN_15BPP[][2] = 237 { 238 /* 0xXXXXX2XX For MSB mono format */ 239 /* 0xXXXXX3XX For LSB mono format */ 240 {0x00000D04, 0x10110200}, 241 {0x00000D08, 0x10110200}, 242 {0x00000D0C, 0x10110208}, 243 {0x00000D10, 0x10118200}, 244 {0x00000D14, 0x10110200}, 245 {0x00000D18, 0x10110200}, 246 {0x00000D1C, 0x10419208}, 247 {0x00000D30, 0x10118200} 248 }; 249 static unsigned nv3TablePRAMIN_32BPP[][2] = 250 { 251 /* 0xXXXXX3XX For MSB mono format */ 252 /* 0xXXXXX2XX For LSB mono format */ 253 {0x00000D04, 0x10110201}, 254 {0x00000D08, 0x10110201}, 255 {0x00000D0C, 0x10110209}, 256 {0x00000D10, 0x10118201}, 257 {0x00000D14, 0x10110201}, 258 {0x00000D18, 0x10110201}, 259 {0x00000D1C, 0x10419208}, 260 {0x00000D30, 0x10118201} 261 }; 262 static unsigned nv4TableFIFO[][2] = 263 { 264 {0x00003800, 0x80000014} 265 }; 266 static unsigned nv4TablePFIFO[][2] = 267 { 268 {0x00000140, 0x00000000}, 269 {0x00000480, 0x00000000}, 270 {0x00000494, 0x00000000}, 271 {0x00000481, 0x00000000}, 272 {0x0000048B, 0x00000000}, 273 {0x00000400, 0x00000000}, 274 {0x00000414, 0x00000000}, 275 {0x00000084, 0x03000100}, 276 {0x00000085, 0x00000110}, 277 {0x00000086, 0x00000112}, 278 {0x00000143, 0x0000FFFF}, 279 {0x00000496, 0x0000FFFF}, 280 {0x00000050, 0x00000000}, 281 {0x00000040, 0xFFFFFFFF}, 282 {0x00000415, 0x00000001}, 283 {0x00000480, 0x00000001}, 284 {0x00000494, 0x00000001}, 285 {0x00000495, 0x00000001}, 286 {0x00000140, 0x00000001} 287 }; 288 static unsigned nv4TablePGRAPH[][2] = 289 { 290 {0x00000020, 0x1231C001}, 291 {0x00000021, 0x72111101}, 292 {0x00000022, 0x11D5F071}, 293 {0x00000023, 0x10D4FF31}, 294 {0x00000060, 0x00000000}, 295 {0x00000068, 0x00000000}, 296 {0x00000070, 0x00000000}, 297 {0x00000078, 0x00000000}, 298 {0x00000061, 0x00000000}, 299 {0x00000069, 0x00000000}, 300 {0x00000071, 0x00000000}, 301 {0x00000079, 0x00000000}, 302 {0x00000062, 0x00000000}, 303 {0x0000006A, 0x00000000}, 304 {0x00000072, 0x00000000}, 305 {0x0000007A, 0x00000000}, 306 {0x00000063, 0x00000000}, 307 {0x0000006B, 0x00000000}, 308 {0x00000073, 0x00000000}, 309 {0x0000007B, 0x00000000}, 310 {0x00000064, 0x00000000}, 311 {0x0000006C, 0x00000000}, 312 {0x00000074, 0x00000000}, 313 {0x0000007C, 0x00000000}, 314 {0x00000065, 0x00000000}, 315 {0x0000006D, 0x00000000}, 316 {0x00000075, 0x00000000}, 317 {0x0000007D, 0x00000000}, 318 {0x00000066, 0x00000000}, 319 {0x0000006E, 0x00000000}, 320 {0x00000076, 0x00000000}, 321 {0x0000007E, 0x00000000}, 322 {0x00000067, 0x00000000}, 323 {0x0000006F, 0x00000000}, 324 {0x00000077, 0x00000000}, 325 {0x0000007F, 0x00000000}, 326 {0x00000058, 0x00000000}, 327 {0x00000059, 0x00000000}, 328 {0x0000005A, 0x00000000}, 329 {0x0000005B, 0x00000000}, 330 {0x00000196, 0x00000000}, 331 {0x000001A1, 0x01FFFFFF}, 332 {0x00000197, 0x00000000}, 333 {0x000001A2, 0x01FFFFFF}, 334 {0x00000198, 0x00000000}, 335 {0x000001A3, 0x01FFFFFF}, 336 {0x00000199, 0x00000000}, 337 {0x000001A4, 0x01FFFFFF}, 338 {0x00000050, 0x00000000}, 339 {0x00000040, 0xFFFFFFFF}, 340 {0x0000005C, 0x10010100}, 341 {0x000001C4, 0xFFFFFFFF}, 342 {0x000001C8, 0x00000001}, 343 {0x00000204, 0x00000000}, 344 {0x000001C3, 0x00000001} 345 }; 346 static unsigned nv4TablePGRAPH_8BPP[][2] = 347 { 348 {0x000001C9, 0x00111111}, 349 {0x00000186, 0x00001010}, 350 {0x0000020C, 0x03020202} 351 }; 352 static unsigned nv4TablePGRAPH_15BPP[][2] = 353 { 354 {0x000001C9, 0x00226222}, 355 {0x00000186, 0x00002071}, 356 {0x0000020C, 0x09080808} 357 }; 358 static unsigned nv4TablePGRAPH_16BPP[][2] = 359 { 360 {0x000001C9, 0x00556555}, 361 {0x00000186, 0x000050C2}, 362 {0x0000020C, 0x0C0B0B0B} 363 }; 364 static unsigned nv4TablePGRAPH_32BPP[][2] = 365 { 366 {0x000001C9, 0x0077D777}, 367 {0x00000186, 0x000070E5}, 368 {0x0000020C, 0x0E0D0D0D} 369 }; 370 static unsigned nv4TablePRAMIN[][2] = 371 { 372 {0x00000000, 0x80000010}, 373 {0x00000001, 0x80011145}, 374 {0x00000002, 0x80000011}, 375 {0x00000003, 0x80011146}, 376 {0x00000004, 0x80000012}, 377 {0x00000005, 0x80011147}, 378 {0x00000006, 0x80000013}, 379 {0x00000007, 0x80011148}, 380 {0x00000008, 0x80000014}, 381 {0x00000009, 0x80011149}, 382 {0x0000000A, 0x80000015}, 383 {0x0000000B, 0x8001114A}, 384 {0x0000000C, 0x80000016}, 385 {0x0000000D, 0x8001114F}, 386 {0x00000020, 0x80000000}, 387 {0x00000021, 0x80011142}, 388 {0x00000022, 0x80000001}, 389 {0x00000023, 0x80011143}, 390 {0x00000024, 0x80000002}, 391 {0x00000025, 0x80011144}, 392 {0x00000026, 0x80000003}, 393 {0x00000027, 0x8001114B}, 394 {0x00000028, 0x80000004}, 395 {0x00000029, 0x8001114C}, 396 {0x0000002A, 0x80000005}, 397 {0x0000002B, 0x8001114D}, 398 {0x0000002C, 0x80000006}, 399 {0x0000002D, 0x8001114E}, 400 {0x00000500, 0x00003000}, 401 {0x00000501, 0x01FFFFFF}, 402 {0x00000502, 0x00000002}, 403 {0x00000503, 0x00000002}, 404 {0x00000508, 0x01008043}, 405 {0x0000050A, 0x00000000}, 406 {0x0000050B, 0x00000000}, 407 {0x0000050C, 0x01008019}, 408 {0x0000050E, 0x00000000}, 409 {0x0000050F, 0x00000000}, 410 #if 1 411 {0x00000510, 0x01008018}, 412 #else 413 {0x00000510, 0x01008044}, 414 #endif 415 {0x00000512, 0x00000000}, 416 {0x00000513, 0x00000000}, 417 {0x00000514, 0x01008021}, 418 {0x00000516, 0x00000000}, 419 {0x00000517, 0x00000000}, 420 {0x00000518, 0x0100805F}, 421 {0x0000051A, 0x00000000}, 422 {0x0000051B, 0x00000000}, 423 #if 1 424 {0x0000051C, 0x0100804B}, 425 #else 426 {0x0000051C, 0x0100804A}, 427 #endif 428 {0x0000051E, 0x00000000}, 429 {0x0000051F, 0x00000000}, 430 {0x00000520, 0x0100A048}, 431 {0x00000521, 0x00000D01}, 432 {0x00000522, 0x11401140}, 433 {0x00000523, 0x00000000}, 434 {0x00000524, 0x0300A054}, 435 {0x00000525, 0x00000D01}, 436 {0x00000526, 0x11401140}, 437 {0x00000527, 0x00000000}, 438 {0x00000528, 0x0300A055}, 439 {0x00000529, 0x00000D01}, 440 {0x0000052A, 0x11401140}, 441 {0x0000052B, 0x00000000}, 442 {0x0000052C, 0x00000058}, 443 {0x0000052E, 0x11401140}, 444 {0x0000052F, 0x00000000}, 445 {0x00000530, 0x00000059}, 446 {0x00000532, 0x11401140}, 447 {0x00000533, 0x00000000}, 448 {0x00000534, 0x0000005A}, 449 {0x00000536, 0x11401140}, 450 {0x00000537, 0x00000000}, 451 {0x00000538, 0x0000005B}, 452 {0x0000053A, 0x11401140}, 453 {0x0000053B, 0x00000000}, 454 {0x0000053C, 0x0300A01C}, 455 {0x0000053E, 0x11401140}, 456 {0x0000053F, 0x00000000} 457 }; 458 static unsigned nv4TablePRAMIN_8BPP[][2] = 459 { 460 /* 0xXXXXXX01 For MSB mono format */ 461 /* 0xXXXXXX02 For LSB mono format */ 462 {0x00000509, 0x00000302}, 463 {0x0000050D, 0x00000302}, 464 {0x00000511, 0x00000202}, 465 {0x00000515, 0x00000302}, 466 {0x00000519, 0x00000302}, 467 {0x0000051D, 0x00000302}, 468 {0x0000052D, 0x00000302}, 469 {0x0000052E, 0x00000302}, 470 {0x00000535, 0x00000000}, 471 {0x00000539, 0x00000000}, 472 {0x0000053D, 0x00000302} 473 }; 474 static unsigned nv4TablePRAMIN_15BPP[][2] = 475 { 476 /* 0xXXXXXX01 For MSB mono format */ 477 /* 0xXXXXXX02 For LSB mono format */ 478 {0x00000509, 0x00000902}, 479 {0x0000050D, 0x00000902}, 480 {0x00000511, 0x00000802}, 481 {0x00000515, 0x00000902}, 482 {0x00000519, 0x00000902}, 483 {0x0000051D, 0x00000902}, 484 {0x0000052D, 0x00000902}, 485 {0x0000052E, 0x00000902}, 486 {0x00000535, 0x00000702}, 487 {0x00000539, 0x00000702}, 488 {0x0000053D, 0x00000902} 489 }; 490 static unsigned nv4TablePRAMIN_16BPP[][2] = 491 { 492 /* 0xXXXXXX01 For MSB mono format */ 493 /* 0xXXXXXX02 For LSB mono format */ 494 {0x00000509, 0x00000C02}, 495 {0x0000050D, 0x00000C02}, 496 {0x00000511, 0x00000B02}, 497 {0x00000515, 0x00000C02}, 498 {0x00000519, 0x00000C02}, 499 {0x0000051D, 0x00000C02}, 500 {0x0000052D, 0x00000C02}, 501 {0x0000052E, 0x00000C02}, 502 {0x00000535, 0x00000702}, 503 {0x00000539, 0x00000702}, 504 {0x0000053D, 0x00000C02} 505 }; 506 static unsigned nv4TablePRAMIN_32BPP[][2] = 507 { 508 /* 0xXXXXXX01 For MSB mono format */ 509 /* 0xXXXXXX02 For LSB mono format */ 510 {0x00000509, 0x00000E02}, 511 {0x0000050D, 0x00000E02}, 512 {0x00000511, 0x00000D02}, 513 {0x00000515, 0x00000E02}, 514 {0x00000519, 0x00000E02}, 515 {0x0000051D, 0x00000E02}, 516 {0x0000052D, 0x00000E02}, 517 {0x0000052E, 0x00000E02}, 518 {0x00000535, 0x00000E02}, 519 {0x00000539, 0x00000E02}, 520 {0x0000053D, 0x00000E02} 521 }; 522 static unsigned nv10TableFIFO[][2] = 523 { 524 {0x00003800, 0x80000014} 525 }; 526 static unsigned nv10TablePFIFO[][2] = 527 { 528 {0x00000140, 0x00000000}, 529 {0x00000480, 0x00000000}, 530 {0x00000494, 0x00000000}, 531 {0x00000481, 0x00000000}, 532 {0x0000048B, 0x00000000}, 533 {0x00000400, 0x00000000}, 534 {0x00000414, 0x00000000}, 535 {0x00000084, 0x03000100}, 536 {0x00000085, 0x00000110}, 537 {0x00000086, 0x00000112}, 538 {0x00000143, 0x0000FFFF}, 539 {0x00000496, 0x0000FFFF}, 540 {0x00000050, 0x00000000}, 541 {0x00000040, 0xFFFFFFFF}, 542 {0x00000415, 0x00000001}, 543 {0x00000480, 0x00000001}, 544 {0x00000494, 0x00000001}, 545 {0x00000495, 0x00000001}, 546 {0x00000140, 0x00000001} 547 }; 548 static unsigned nv10TablePGRAPH[][2] = 549 { 550 {0x00000020, 0x0003FFFF}, 551 {0x00000021, 0x00118701}, 552 {0x00000022, 0x24F82AD9}, 553 {0x00000023, 0x55DE0030}, 554 {0x00000020, 0x00000000}, 555 {0x00000024, 0x00000000}, 556 {0x00000058, 0x00000000}, 557 {0x00000060, 0x00000000}, 558 {0x00000068, 0x00000000}, 559 {0x00000070, 0x00000000}, 560 {0x00000078, 0x00000000}, 561 {0x00000059, 0x00000000}, 562 {0x00000061, 0x00000000}, 563 {0x00000069, 0x00000000}, 564 {0x00000071, 0x00000000}, 565 {0x00000079, 0x00000000}, 566 {0x0000005A, 0x00000000}, 567 {0x00000062, 0x00000000}, 568 {0x0000006A, 0x00000000}, 569 {0x00000072, 0x00000000}, 570 {0x0000007A, 0x00000000}, 571 {0x0000005B, 0x00000000}, 572 {0x00000063, 0x00000000}, 573 {0x0000006B, 0x00000000}, 574 {0x00000073, 0x00000000}, 575 {0x0000007B, 0x00000000}, 576 {0x0000005C, 0x00000000}, 577 {0x00000064, 0x00000000}, 578 {0x0000006C, 0x00000000}, 579 {0x00000074, 0x00000000}, 580 {0x0000007C, 0x00000000}, 581 {0x0000005D, 0x00000000}, 582 {0x00000065, 0x00000000}, 583 {0x0000006D, 0x00000000}, 584 {0x00000075, 0x00000000}, 585 {0x0000007D, 0x00000000}, 586 {0x0000005E, 0x00000000}, 587 {0x00000066, 0x00000000}, 588 {0x0000006E, 0x00000000}, 589 {0x00000076, 0x00000000}, 590 {0x0000007E, 0x00000000}, 591 {0x0000005F, 0x00000000}, 592 {0x00000067, 0x00000000}, 593 {0x0000006F, 0x00000000}, 594 {0x00000077, 0x00000000}, 595 {0x0000007F, 0x00000000}, 596 {0x00000053, 0x00000000}, 597 {0x00000054, 0x00000000}, 598 {0x00000055, 0x00000000}, 599 {0x00000056, 0x00000000}, 600 {0x00000057, 0x00000000}, 601 {0x00000196, 0x00000000}, 602 {0x000001A1, 0x01FFFFFF}, 603 {0x00000197, 0x00000000}, 604 {0x000001A2, 0x01FFFFFF}, 605 {0x00000198, 0x00000000}, 606 {0x000001A3, 0x01FFFFFF}, 607 {0x00000199, 0x00000000}, 608 {0x000001A4, 0x01FFFFFF}, 609 {0x0000019A, 0x00000000}, 610 {0x000001A5, 0x01FFFFFF}, 611 {0x0000019B, 0x00000000}, 612 {0x000001A6, 0x01FFFFFF}, 613 {0x00000050, 0x01111111}, 614 {0x00000040, 0xFFFFFFFF}, 615 {0x00000051, 0x10010100}, 616 {0x000001C5, 0xFFFFFFFF}, 617 {0x000001C8, 0x00000001}, 618 {0x00000204, 0x00000000}, 619 {0x000001C4, 0x00000001} 620 }; 621 static unsigned nv10TablePGRAPH_8BPP[][2] = 622 { 623 {0x000001C9, 0x00111111}, 624 {0x00000186, 0x00001010}, 625 {0x0000020C, 0x03020202} 626 }; 627 static unsigned nv10TablePGRAPH_15BPP[][2] = 628 { 629 {0x000001C9, 0x00226222}, 630 {0x00000186, 0x00002071}, 631 {0x0000020C, 0x09080808} 632 }; 633 static unsigned nv10TablePGRAPH_16BPP[][2] = 634 { 635 {0x000001C9, 0x00556555}, 636 {0x00000186, 0x000050C2}, 637 {0x0000020C, 0x000B0B0C} 638 }; 639 static unsigned nv10TablePGRAPH_32BPP[][2] = 640 { 641 {0x000001C9, 0x0077D777}, 642 {0x00000186, 0x000070E5}, 643 {0x0000020C, 0x0E0D0D0D} 644 }; 645 static unsigned nv10tri05TablePGRAPH[][2] = 646 { 647 {(0x00000E00/4), 0x00000000}, 648 {(0x00000E04/4), 0x00000000}, 649 {(0x00000E08/4), 0x00000000}, 650 {(0x00000E0C/4), 0x00000000}, 651 {(0x00000E10/4), 0x00001000}, 652 {(0x00000E14/4), 0x00001000}, 653 {(0x00000E18/4), 0x4003ff80}, 654 {(0x00000E1C/4), 0x00000000}, 655 {(0x00000E20/4), 0x00000000}, 656 {(0x00000E24/4), 0x00000000}, 657 {(0x00000E28/4), 0x00000000}, 658 {(0x00000E2C/4), 0x00000000}, 659 {(0x00000E30/4), 0x00080008}, 660 {(0x00000E34/4), 0x00080008}, 661 {(0x00000E38/4), 0x00000000}, 662 {(0x00000E3C/4), 0x00000000}, 663 {(0x00000E40/4), 0x00000000}, 664 {(0x00000E44/4), 0x00000000}, 665 {(0x00000E48/4), 0x00000000}, 666 {(0x00000E4C/4), 0x00000000}, 667 {(0x00000E50/4), 0x00000000}, 668 {(0x00000E54/4), 0x00000000}, 669 {(0x00000E58/4), 0x00000000}, 670 {(0x00000E5C/4), 0x00000000}, 671 {(0x00000E60/4), 0x00000000}, 672 {(0x00000E64/4), 0x10000000}, 673 {(0x00000E68/4), 0x00000000}, 674 {(0x00000E6C/4), 0x00000000}, 675 {(0x00000E70/4), 0x00000000}, 676 {(0x00000E74/4), 0x00000000}, 677 {(0x00000E78/4), 0x00000000}, 678 {(0x00000E7C/4), 0x00000000}, 679 {(0x00000E80/4), 0x00000000}, 680 {(0x00000E84/4), 0x00000000}, 681 {(0x00000E88/4), 0x08000000}, 682 {(0x00000E8C/4), 0x00000000}, 683 {(0x00000E90/4), 0x00000000}, 684 {(0x00000E94/4), 0x00000000}, 685 {(0x00000E98/4), 0x00000000}, 686 {(0x00000E9C/4), 0x4B7FFFFF}, 687 {(0x00000EA0/4), 0x00000000}, 688 {(0x00000EA4/4), 0x00000000}, 689 {(0x00000EA8/4), 0x00000000}, 690 {(0x00000F00/4), 0x07FF0800}, 691 {(0x00000F04/4), 0x07FF0800}, 692 {(0x00000F08/4), 0x07FF0800}, 693 {(0x00000F0C/4), 0x07FF0800}, 694 {(0x00000F10/4), 0x07FF0800}, 695 {(0x00000F14/4), 0x07FF0800}, 696 {(0x00000F18/4), 0x07FF0800}, 697 {(0x00000F1C/4), 0x07FF0800}, 698 {(0x00000F20/4), 0x07FF0800}, 699 {(0x00000F24/4), 0x07FF0800}, 700 {(0x00000F28/4), 0x07FF0800}, 701 {(0x00000F2C/4), 0x07FF0800}, 702 {(0x00000F30/4), 0x07FF0800}, 703 {(0x00000F34/4), 0x07FF0800}, 704 {(0x00000F38/4), 0x07FF0800}, 705 {(0x00000F3C/4), 0x07FF0800}, 706 {(0x00000F40/4), 0x10000000}, 707 {(0x00000F44/4), 0x00000000}, 708 {(0x00000F50/4), 0x00006740}, 709 {(0x00000F54/4), 0x00000000}, 710 {(0x00000F54/4), 0x00000000}, 711 {(0x00000F54/4), 0x00000000}, 712 {(0x00000F54/4), 0x3F800000}, 713 {(0x00000F50/4), 0x00006750}, 714 {(0x00000F54/4), 0x40000000}, 715 {(0x00000F54/4), 0x40000000}, 716 {(0x00000F54/4), 0x40000000}, 717 {(0x00000F54/4), 0x40000000}, 718 {(0x00000F50/4), 0x00006760}, 719 {(0x00000F54/4), 0x00000000}, 720 {(0x00000F54/4), 0x00000000}, 721 {(0x00000F54/4), 0x3F800000}, 722 {(0x00000F54/4), 0x00000000}, 723 {(0x00000F50/4), 0x00006770}, 724 {(0x00000F54/4), 0xC5000000}, 725 {(0x00000F54/4), 0xC5000000}, 726 {(0x00000F54/4), 0x00000000}, 727 {(0x00000F54/4), 0x00000000}, 728 {(0x00000F50/4), 0x00006780}, 729 {(0x00000F54/4), 0x00000000}, 730 {(0x00000F54/4), 0x00000000}, 731 {(0x00000F54/4), 0x3F800000}, 732 {(0x00000F54/4), 0x00000000}, 733 {(0x00000F50/4), 0x000067A0}, 734 {(0x00000F54/4), 0x3F800000}, 735 {(0x00000F54/4), 0x3F800000}, 736 {(0x00000F54/4), 0x3F800000}, 737 {(0x00000F54/4), 0x3F800000}, 738 {(0x00000F50/4), 0x00006AB0}, 739 {(0x00000F54/4), 0x3F800000}, 740 {(0x00000F54/4), 0x3F800000}, 741 {(0x00000F54/4), 0x3F800000}, 742 {(0x00000F50/4), 0x00006AC0}, 743 {(0x00000F54/4), 0x00000000}, 744 {(0x00000F54/4), 0x00000000}, 745 {(0x00000F54/4), 0x00000000}, 746 {(0x00000F50/4), 0x00006C10}, 747 {(0x00000F54/4), 0xBF800000}, 748 {(0x00000F50/4), 0x00007030}, 749 {(0x00000F54/4), 0x7149F2CA}, 750 {(0x00000F50/4), 0x00007040}, 751 {(0x00000F54/4), 0x7149F2CA}, 752 {(0x00000F50/4), 0x00007050}, 753 {(0x00000F54/4), 0x7149F2CA}, 754 {(0x00000F50/4), 0x00007060}, 755 {(0x00000F54/4), 0x7149F2CA}, 756 {(0x00000F50/4), 0x00007070}, 757 {(0x00000F54/4), 0x7149F2CA}, 758 {(0x00000F50/4), 0x00007080}, 759 {(0x00000F54/4), 0x7149F2CA}, 760 {(0x00000F50/4), 0x00007090}, 761 {(0x00000F54/4), 0x7149F2CA}, 762 {(0x00000F50/4), 0x000070A0}, 763 {(0x00000F54/4), 0x7149F2CA}, 764 {(0x00000F50/4), 0x00006A80}, 765 {(0x00000F54/4), 0x00000000}, 766 {(0x00000F54/4), 0x00000000}, 767 {(0x00000F54/4), 0x3F800000}, 768 {(0x00000F50/4), 0x00006AA0}, 769 {(0x00000F54/4), 0x00000000}, 770 {(0x00000F54/4), 0x00000000}, 771 {(0x00000F54/4), 0x00000000}, 772 {(0x00000F50/4), 0x00000040}, 773 {(0x00000F54/4), 0x00000005}, 774 {(0x00000F50/4), 0x00006400}, 775 {(0x00000F54/4), 0x3F800000}, 776 {(0x00000F54/4), 0x3F800000}, 777 {(0x00000F54/4), 0x4B7FFFFF}, 778 {(0x00000F54/4), 0x00000000}, 779 {(0x00000F50/4), 0x00006410}, 780 {(0x00000F54/4), 0xC5000000}, 781 {(0x00000F54/4), 0xC5000000}, 782 {(0x00000F54/4), 0x00000000}, 783 {(0x00000F54/4), 0x00000000}, 784 {(0x00000F50/4), 0x00006420}, 785 {(0x00000F54/4), 0x00000000}, 786 {(0x00000F54/4), 0x00000000}, 787 {(0x00000F54/4), 0x00000000}, 788 {(0x00000F54/4), 0x00000000}, 789 {(0x00000F50/4), 0x00006430}, 790 {(0x00000F54/4), 0x00000000}, 791 {(0x00000F54/4), 0x00000000}, 792 {(0x00000F54/4), 0x00000000}, 793 {(0x00000F54/4), 0x00000000}, 794 {(0x00000F50/4), 0x000064C0}, 795 {(0x00000F54/4), 0x3F800000}, 796 {(0x00000F54/4), 0x3F800000}, 797 {(0x00000F54/4), 0x477FFFFF}, 798 {(0x00000F54/4), 0x3F800000}, 799 {(0x00000F50/4), 0x000064D0}, 800 {(0x00000F54/4), 0xC5000000}, 801 {(0x00000F54/4), 0xC5000000}, 802 {(0x00000F54/4), 0x00000000}, 803 {(0x00000F54/4), 0x00000000}, 804 {(0x00000F50/4), 0x000064E0}, 805 {(0x00000F54/4), 0xC4FFF000}, 806 {(0x00000F54/4), 0xC4FFF000}, 807 {(0x00000F54/4), 0x00000000}, 808 {(0x00000F54/4), 0x00000000}, 809 {(0x00000F50/4), 0x000064F0}, 810 {(0x00000F54/4), 0x00000000}, 811 {(0x00000F54/4), 0x00000000}, 812 {(0x00000F54/4), 0x00000000}, 813 {(0x00000F54/4), 0x00000000}, 814 {(0x00000F40/4), 0x30000000}, 815 {(0x00000F44/4), 0x00000004}, 816 {(0x00000F48/4), 0x10000000}, 817 {(0x00000F4C/4), 0x00000000} 818 }; 819 static unsigned nv10TablePRAMIN[][2] = 820 { 821 {0x00000000, 0x80000010}, 822 {0x00000001, 0x80011145}, 823 {0x00000002, 0x80000011}, 824 {0x00000003, 0x80011146}, 825 {0x00000004, 0x80000012}, 826 {0x00000005, 0x80011147}, 827 {0x00000006, 0x80000013}, 828 {0x00000007, 0x80011148}, 829 {0x00000008, 0x80000014}, 830 {0x00000009, 0x80011149}, 831 {0x0000000A, 0x80000015}, 832 {0x0000000B, 0x8001114A}, 833 {0x0000000C, 0x80000016}, 834 {0x0000000D, 0x80011150}, 835 {0x00000020, 0x80000000}, 836 {0x00000021, 0x80011142}, 837 {0x00000022, 0x80000001}, 838 {0x00000023, 0x80011143}, 839 {0x00000024, 0x80000002}, 840 {0x00000025, 0x80011144}, 841 {0x00000026, 0x80000003}, 842 {0x00000027, 0x8001114B}, 843 {0x00000028, 0x80000004}, 844 {0x00000029, 0x8001114C}, 845 {0x0000002A, 0x80000005}, 846 {0x0000002B, 0x8001114D}, 847 {0x0000002C, 0x80000006}, 848 {0x0000002D, 0x8001114E}, 849 {0x0000002E, 0x80000007}, 850 {0x0000002F, 0x8001114F}, 851 {0x00000500, 0x00003000}, 852 {0x00000501, 0x01FFFFFF}, 853 {0x00000502, 0x00000002}, 854 {0x00000503, 0x00000002}, 855 #ifdef __BIG_ENDIAN 856 {0x00000508, 0x01088043}, 857 #else 858 {0x00000508, 0x01008043}, 859 #endif 860 {0x0000050A, 0x00000000}, 861 {0x0000050B, 0x00000000}, 862 #ifdef __BIG_ENDIAN 863 {0x0000050C, 0x01088019}, 864 #else 865 {0x0000050C, 0x01008019}, 866 #endif 867 {0x0000050E, 0x00000000}, 868 {0x0000050F, 0x00000000}, 869 #ifdef __BIG_ENDIAN 870 {0x00000510, 0x01088018}, 871 #else 872 {0x00000510, 0x01008018}, 873 #endif 874 {0x00000512, 0x00000000}, 875 {0x00000513, 0x00000000}, 876 #ifdef __BIG_ENDIAN 877 {0x00000514, 0x01088021}, 878 #else 879 {0x00000514, 0x01008021}, 880 #endif 881 {0x00000516, 0x00000000}, 882 {0x00000517, 0x00000000}, 883 #ifdef __BIG_ENDIAN 884 {0x00000518, 0x0108805F}, 885 #else 886 {0x00000518, 0x0100805F}, 887 #endif 888 {0x0000051A, 0x00000000}, 889 {0x0000051B, 0x00000000}, 890 #ifdef __BIG_ENDIAN 891 {0x0000051C, 0x0108804B}, 892 #else 893 {0x0000051C, 0x0100804B}, 894 #endif 895 {0x0000051E, 0x00000000}, 896 {0x0000051F, 0x00000000}, 897 {0x00000520, 0x0100A048}, 898 {0x00000521, 0x00000D01}, 899 {0x00000522, 0x11401140}, 900 {0x00000523, 0x00000000}, 901 {0x00000524, 0x0300A094}, 902 {0x00000525, 0x00000D01}, 903 {0x00000526, 0x11401140}, 904 {0x00000527, 0x00000000}, 905 {0x00000528, 0x0300A095}, 906 {0x00000529, 0x00000D01}, 907 {0x0000052A, 0x11401140}, 908 {0x0000052B, 0x00000000}, 909 #ifdef __BIG_ENDIAN 910 {0x0000052C, 0x00080058}, 911 #else 912 {0x0000052C, 0x00000058}, 913 #endif 914 {0x0000052E, 0x11401140}, 915 {0x0000052F, 0x00000000}, 916 #ifdef __BIG_ENDIAN 917 {0x00000530, 0x00080059}, 918 #else 919 {0x00000530, 0x00000059}, 920 #endif 921 {0x00000532, 0x11401140}, 922 {0x00000533, 0x00000000}, 923 {0x00000534, 0x0000005A}, 924 {0x00000536, 0x11401140}, 925 {0x00000537, 0x00000000}, 926 {0x00000538, 0x0000005B}, 927 {0x0000053A, 0x11401140}, 928 {0x0000053B, 0x00000000}, 929 {0x0000053C, 0x00000093}, 930 {0x0000053E, 0x11401140}, 931 {0x0000053F, 0x00000000}, 932 #ifdef __BIG_ENDIAN 933 {0x00000540, 0x0308A01C}, 934 #else 935 {0x00000540, 0x0300A01C}, 936 #endif 937 {0x00000542, 0x11401140}, 938 {0x00000543, 0x00000000} 939 }; 940 static unsigned nv10TablePRAMIN_8BPP[][2] = 941 { 942 /* 0xXXXXXX01 For MSB mono format */ 943 /* 0xXXXXXX02 For LSB mono format */ 944 {0x00000509, 0x00000302}, 945 {0x0000050D, 0x00000302}, 946 {0x00000511, 0x00000202}, 947 {0x00000515, 0x00000302}, 948 {0x00000519, 0x00000302}, 949 {0x0000051D, 0x00000302}, 950 {0x0000052D, 0x00000302}, 951 {0x0000052E, 0x00000302}, 952 {0x00000535, 0x00000000}, 953 {0x00000539, 0x00000000}, 954 {0x0000053D, 0x00000000}, 955 {0x00000541, 0x00000302} 956 }; 957 static unsigned nv10TablePRAMIN_15BPP[][2] = 958 { 959 /* 0xXXXXXX01 For MSB mono format */ 960 /* 0xXXXXXX02 For LSB mono format */ 961 {0x00000509, 0x00000902}, 962 {0x0000050D, 0x00000902}, 963 {0x00000511, 0x00000802}, 964 {0x00000515, 0x00000902}, 965 {0x00000519, 0x00000902}, 966 {0x0000051D, 0x00000902}, 967 {0x0000052D, 0x00000902}, 968 {0x0000052E, 0x00000902}, 969 {0x00000535, 0x00000902}, 970 {0x00000539, 0x00000902}, 971 {0x0000053D, 0x00000902}, 972 {0x00000541, 0x00000902} 973 }; 974 static unsigned nv10TablePRAMIN_16BPP[][2] = 975 { 976 /* 0xXXXXXX01 For MSB mono format */ 977 /* 0xXXXXXX02 For LSB mono format */ 978 {0x00000509, 0x00000C02}, 979 {0x0000050D, 0x00000C02}, 980 {0x00000511, 0x00000B02}, 981 {0x00000515, 0x00000C02}, 982 {0x00000519, 0x00000C02}, 983 {0x0000051D, 0x00000C02}, 984 {0x0000052D, 0x00000C02}, 985 {0x0000052E, 0x00000C02}, 986 {0x00000535, 0x00000C02}, 987 {0x00000539, 0x00000C02}, 988 {0x0000053D, 0x00000C02}, 989 {0x00000541, 0x00000C02} 990 }; 991 static unsigned nv10TablePRAMIN_32BPP[][2] = 992 { 993 /* 0xXXXXXX01 For MSB mono format */ 994 /* 0xXXXXXX02 For LSB mono format */ 995 {0x00000509, 0x00000E02}, 996 {0x0000050D, 0x00000E02}, 997 {0x00000511, 0x00000D02}, 998 {0x00000515, 0x00000E02}, 999 {0x00000519, 0x00000E02}, 1000 {0x0000051D, 0x00000E02}, 1001 {0x0000052D, 0x00000E02}, 1002 {0x0000052E, 0x00000E02}, 1003 {0x00000535, 0x00000E02}, 1004 {0x00000539, 0x00000E02}, 1005 {0x0000053D, 0x00000E02}, 1006 {0x00000541, 0x00000E02} 1007 }; 1008 1009