1 /* SPDX-License-Identifier: GPL-2.0 */ 2 static uint32_t gf100_ce_data[] = { 3 /* 0x0000: ctx_object */ 4 0x00000000, 5 /* 0x0004: ctx_query_address_high */ 6 0x00000000, 7 /* 0x0008: ctx_query_address_low */ 8 0x00000000, 9 /* 0x000c: ctx_query_counter */ 10 0x00000000, 11 /* 0x0010: ctx_src_address_high */ 12 0x00000000, 13 /* 0x0014: ctx_src_address_low */ 14 0x00000000, 15 /* 0x0018: ctx_src_pitch */ 16 0x00000000, 17 /* 0x001c: ctx_src_tile_mode */ 18 0x00000000, 19 /* 0x0020: ctx_src_xsize */ 20 0x00000000, 21 /* 0x0024: ctx_src_ysize */ 22 0x00000000, 23 /* 0x0028: ctx_src_zsize */ 24 0x00000000, 25 /* 0x002c: ctx_src_zoff */ 26 0x00000000, 27 /* 0x0030: ctx_src_xoff */ 28 0x00000000, 29 /* 0x0034: ctx_src_yoff */ 30 0x00000000, 31 /* 0x0038: ctx_src_cpp */ 32 0x00000000, 33 /* 0x003c: ctx_dst_address_high */ 34 0x00000000, 35 /* 0x0040: ctx_dst_address_low */ 36 0x00000000, 37 /* 0x0044: ctx_dst_pitch */ 38 0x00000000, 39 /* 0x0048: ctx_dst_tile_mode */ 40 0x00000000, 41 /* 0x004c: ctx_dst_xsize */ 42 0x00000000, 43 /* 0x0050: ctx_dst_ysize */ 44 0x00000000, 45 /* 0x0054: ctx_dst_zsize */ 46 0x00000000, 47 /* 0x0058: ctx_dst_zoff */ 48 0x00000000, 49 /* 0x005c: ctx_dst_xoff */ 50 0x00000000, 51 /* 0x0060: ctx_dst_yoff */ 52 0x00000000, 53 /* 0x0064: ctx_dst_cpp */ 54 0x00000000, 55 /* 0x0068: ctx_format */ 56 0x00000000, 57 /* 0x006c: ctx_swz_const0 */ 58 0x00000000, 59 /* 0x0070: ctx_swz_const1 */ 60 0x00000000, 61 /* 0x0074: ctx_xcnt */ 62 0x00000000, 63 /* 0x0078: ctx_ycnt */ 64 0x00000000, 65 0x00000000, 66 0x00000000, 67 0x00000000, 68 0x00000000, 69 0x00000000, 70 0x00000000, 71 0x00000000, 72 0x00000000, 73 0x00000000, 74 0x00000000, 75 0x00000000, 76 0x00000000, 77 0x00000000, 78 0x00000000, 79 0x00000000, 80 0x00000000, 81 0x00000000, 82 0x00000000, 83 0x00000000, 84 0x00000000, 85 0x00000000, 86 0x00000000, 87 0x00000000, 88 0x00000000, 89 0x00000000, 90 0x00000000, 91 0x00000000, 92 0x00000000, 93 0x00000000, 94 0x00000000, 95 0x00000000, 96 0x00000000, 97 0x00000000, 98 /* 0x0100: dispatch_table */ 99 0x00010000, 100 0x00000000, 101 0x00000000, 102 0x00010040, 103 0x0001019f, 104 0x00000000, 105 0x00010050, 106 0x000101a1, 107 0x00000000, 108 0x00070080, 109 0x0000001c, 110 0xfffff000, 111 0x00000020, 112 0xfff80000, 113 0x00000024, 114 0xffffe000, 115 0x00000028, 116 0xfffff800, 117 0x0000002c, 118 0xfffff000, 119 0x00000030, 120 0xfff80000, 121 0x00000034, 122 0xffffe000, 123 0x00070088, 124 0x00000048, 125 0xfffff000, 126 0x0000004c, 127 0xfff80000, 128 0x00000050, 129 0xffffe000, 130 0x00000054, 131 0xfffff800, 132 0x00000058, 133 0xfffff000, 134 0x0000005c, 135 0xfff80000, 136 0x00000060, 137 0xffffe000, 138 0x000200c0, 139 0x000104b8, 140 0x00000000, 141 0x00010541, 142 0x00000000, 143 0x000e00c3, 144 0x00000010, 145 0xffffff00, 146 0x00000014, 147 0x00000000, 148 0x0000003c, 149 0xffffff00, 150 0x00000040, 151 0x00000000, 152 0x00000018, 153 0xfff80000, 154 0x00000044, 155 0xfff80000, 156 0x00000074, 157 0xffff0000, 158 0x00000078, 159 0xffffe000, 160 0x00000068, 161 0xfccc0000, 162 0x0000006c, 163 0x00000000, 164 0x00000070, 165 0x00000000, 166 0x00000004, 167 0xffffff00, 168 0x00000008, 169 0x00000000, 170 0x0000000c, 171 0x00000000, 172 0x00000800, 173 }; 174 175 static uint32_t gf100_ce_code[] = { 176 /* 0x0000: main */ 177 0x04fe04bd, 178 0x3517f000, 179 0xf10010fe, 180 0xf1040017, 181 0xf0fff327, 182 0x12d00023, 183 0x0c25f0c0, 184 0xf40012d0, 185 0x17f11031, 186 0x27f01200, 187 0x0012d003, 188 /* 0x002f: spin */ 189 0xf40031f4, 190 0x0ef40028, 191 /* 0x0035: ih */ 192 0x8001cffd, 193 0xf40812c4, 194 0x21f4060b, 195 /* 0x0041: ih_no_chsw */ 196 0x0412c4ca, 197 0xf5070bf4, 198 /* 0x004b: ih_no_cmd */ 199 0xc4010221, 200 0x01d00c11, 201 /* 0x0053: swctx */ 202 0xf101f840, 203 0xfe770047, 204 0x47f1004b, 205 0x44cf2100, 206 0x0144f000, 207 0xb60444b6, 208 0xf7f13040, 209 0xf4b6061c, 210 0x1457f106, 211 0x00f5d101, 212 0xb6043594, 213 0x57fe0250, 214 0x0145fe00, 215 0x010052b7, 216 0x00ff67f1, 217 0x56fd60bd, 218 0x0253f004, 219 0xf80545fa, 220 0x0053f003, 221 0xd100e7f0, 222 0x549800fe, 223 0x0845b600, 224 0xb6015698, 225 0x46fd1864, 226 0x0047fe05, 227 0xf00204b9, 228 0x01f40643, 229 0x0604fa09, 230 /* 0x00c3: swctx_load */ 231 0xfa060ef4, 232 /* 0x00c6: swctx_done */ 233 0x03f80504, 234 /* 0x00ca: chsw */ 235 0x27f100f8, 236 0x23cf1400, 237 0x1e3fc800, 238 0xf4170bf4, 239 0x21f40132, 240 0x1e3af053, 241 0xf00023d0, 242 0x24d00147, 243 /* 0x00eb: chsw_no_unload */ 244 0xcf00f880, 245 0x3dc84023, 246 0x090bf41e, 247 0xf40131f4, 248 /* 0x00fa: chsw_finish_load */ 249 0x37f05321, 250 0x8023d002, 251 /* 0x0102: dispatch */ 252 0x37f100f8, 253 0x32cf1900, 254 0x0033cf40, 255 0x07ff24e4, 256 0xf11024b6, 257 0xbd010057, 258 /* 0x011b: dispatch_loop */ 259 0x5874bd64, 260 0x57580056, 261 0x0450b601, 262 0xf40446b8, 263 0x76bb4d08, 264 0x0447b800, 265 0xbb0f08f4, 266 0x74b60276, 267 0x0057bb03, 268 /* 0x013f: dispatch_valid_mthd */ 269 0xbbdf0ef4, 270 0x44b60246, 271 0x0045bb03, 272 0xfd014598, 273 0x54b00453, 274 0x201bf400, 275 0x58004558, 276 0x64b00146, 277 0x091bf400, 278 0xf4005380, 279 /* 0x0166: dispatch_cmd */ 280 0x32f4300e, 281 0xf455f901, 282 0x0ef40c01, 283 /* 0x0171: dispatch_invalid_bitfield */ 284 0x0225f025, 285 /* 0x0174: dispatch_illegal_mthd */ 286 /* 0x0177: dispatch_error */ 287 0xf10125f0, 288 0xd0100047, 289 0x43d00042, 290 0x4027f040, 291 /* 0x0187: hostirq_wait */ 292 0xcf0002d0, 293 0x24f08002, 294 0x0024b040, 295 /* 0x0193: dispatch_done */ 296 0xf1f71bf4, 297 0xf01d0027, 298 0x23d00137, 299 /* 0x019f: cmd_nop */ 300 0xf800f800, 301 /* 0x01a1: cmd_pm_trigger */ 302 0x0027f100, 303 0xf034bd22, 304 0x23d00233, 305 /* 0x01af: cmd_exec_set_format */ 306 0xf400f800, 307 0x01b0f030, 308 0x0101b000, 309 0xb00201b0, 310 0x04980301, 311 0x3045c71a, 312 0xc70150b6, 313 0x60b63446, 314 0x3847c701, 315 0xf40170b6, 316 0x84bd0232, 317 /* 0x01da: ncomp_loop */ 318 0x4ac494bd, 319 0x0445b60f, 320 /* 0x01e2: bpc_loop */ 321 0xa430b4bd, 322 0x0f18f404, 323 0xbbc0a5ff, 324 0x31f400cb, 325 0x220ef402, 326 /* 0x01f4: cmp_c0 */ 327 0xf00c1bf4, 328 0xcbbb10c7, 329 0x160ef400, 330 /* 0x0200: cmp_c1 */ 331 0xf406a430, 332 0xc7f00c18, 333 0x00cbbb14, 334 /* 0x020f: cmp_zero */ 335 0xf1070ef4, 336 /* 0x0213: bpc_next */ 337 0x380080c7, 338 0x80b601c8, 339 0x01b0b601, 340 0xf404b5b8, 341 0x90b6c308, 342 0x0497b801, 343 0xfdb208f4, 344 0x06800065, 345 0x1d08980e, 346 0xf40068fd, 347 0x64bd0502, 348 /* 0x023c: dst_xcnt */ 349 0x800075fd, 350 0x78fd1907, 351 0x1057f100, 352 0x0654b608, 353 0xd00056d0, 354 0x50b74057, 355 0x06980800, 356 0x0162b619, 357 0x980864b6, 358 0x72b60e07, 359 0x0567fd01, 360 0xb70056d0, 361 0xb4010050, 362 0x56d00060, 363 0x0160b400, 364 0xb44056d0, 365 0x56d00260, 366 0x0360b480, 367 0xb7c056d0, 368 0x98040050, 369 0x56d01b06, 370 0x1c069800, 371 0xf44056d0, 372 0x00f81030, 373 /* 0x029c: cmd_exec_set_surface_tiled */ 374 0xc7075798, 375 0x78c76879, 376 0x0380b664, 377 0xb06077c7, 378 0x1bf40e76, 379 0x0477f009, 380 /* 0x02b7: xtile64 */ 381 0xf00f0ef4, 382 0x70b6027c, 383 0x0947fd11, 384 /* 0x02c3: xtileok */ 385 0x980677f0, 386 0x5b980c5a, 387 0x00abfd0e, 388 0xbb01b7f0, 389 0xb2b604b7, 390 0xc4abff01, 391 0x9805a7bb, 392 0xe7f00d5d, 393 0x04e8bb01, 394 0xff01e2b6, 395 0xd8bbb4de, 396 0x01e0b605, 397 0xbb0cef94, 398 0xfefd02eb, 399 0x026cf005, 400 0x020860b7, 401 0xd00864b6, 402 0xb7bb006f, 403 0x00cbbb04, 404 0x98085f98, 405 0xfbfd0e5b, 406 0x01b7f000, 407 0xb604b7bb, 408 0xfbbb01b2, 409 0x05f7bb00, 410 0x5f98f0f9, 411 0x01b7f009, 412 0xb604b8bb, 413 0xfbbb01b2, 414 0x05f8bb00, 415 0x78bbf0f9, 416 0x0282b600, 417 0xbb01b7f0, 418 0xb9bb04b8, 419 0x0b589804, 420 0xbb01e7f0, 421 0xe2b604e9, 422 0xf48eff01, 423 0xbb04f7bb, 424 0x79bb00cf, 425 0x0589bb00, 426 0x90fcf0fc, 427 0xbb00d9fd, 428 0x89fd00ad, 429 0x008ffd00, 430 0xbb00a8bb, 431 0x92b604a7, 432 0x0497bb01, 433 0x988069d0, 434 0x58980557, 435 0x00acbb04, 436 0xb6007abb, 437 0x84b60081, 438 0x058bfd10, 439 0x060062b7, 440 0xb70067d0, 441 0xd0040060, 442 0x00f80068, 443 /* 0x03a8: cmd_exec_set_surface_linear */ 444 0xb7026cf0, 445 0xb6020260, 446 0x57980864, 447 0x0067d005, 448 0x040060b7, 449 0xb6045798, 450 0x67d01074, 451 0x0060b700, 452 0x06579804, 453 0xf80067d0, 454 /* 0x03d1: cmd_exec_wait */ 455 0xf900f900, 456 0x0007f110, 457 0x0604b608, 458 /* 0x03dc: loop */ 459 0xf00001cf, 460 0x1bf40114, 461 0xfc10fcfa, 462 /* 0x03eb: cmd_exec_query */ 463 0xc800f800, 464 0x1bf40d34, 465 0xd121f570, 466 0x0c47f103, 467 0x0644b608, 468 0xb6020598, 469 0x45d00450, 470 0x4040d000, 471 0xd00c57f0, 472 0x40b78045, 473 0x05980400, 474 0x1054b601, 475 0xb70045d0, 476 0xf1050040, 477 0xf00b0057, 478 0x45d00153, 479 0x4057f100, 480 0x0154b640, 481 0x808053f1, 482 0xf14045d0, 483 0xf1111057, 484 0xd0131253, 485 0x57f18045, 486 0x53f11514, 487 0x45d01716, 488 0x0157f1c0, 489 0x0153f026, 490 0x080047f1, 491 0xd00644b6, 492 /* 0x045e: query_counter */ 493 0x21f50045, 494 0x47f103d1, 495 0x44b6080c, 496 0x02059806, 497 0xd00045d0, 498 0x57f04040, 499 0x8045d004, 500 0x040040b7, 501 0xb6010598, 502 0x45d01054, 503 0x0040b700, 504 0x0057f105, 505 0x0045d003, 506 0x111057f1, 507 0x131253f1, 508 0x984045d0, 509 0x40b70305, 510 0x45d00500, 511 0x0157f100, 512 0x0153f026, 513 0x080047f1, 514 0xd00644b6, 515 0x00f80045, 516 /* 0x04b8: cmd_exec */ 517 0x03d121f5, 518 0xf4003fc8, 519 0x21f50e0b, 520 0x47f101af, 521 0x0ef40200, 522 /* 0x04cd: cmd_exec_no_format */ 523 0x1067f11e, 524 0x0664b608, 525 0x800177f0, 526 0x07800e07, 527 0x1d079819, 528 0xd00067d0, 529 0x44bd4067, 530 /* 0x04e8: cmd_exec_init_src_surface */ 531 0xbd0232f4, 532 0x043fc854, 533 0xf50a0bf4, 534 0xf403a821, 535 /* 0x04fa: src_tiled */ 536 0x21f50a0e, 537 0x49f0029c, 538 /* 0x0501: cmd_exec_init_dst_surface */ 539 0x0231f407, 540 0xc82c57f0, 541 0x0bf4083f, 542 0xa821f50a, 543 0x0a0ef403, 544 /* 0x0514: dst_tiled */ 545 0x029c21f5, 546 /* 0x051b: cmd_exec_kick */ 547 0xf10849f0, 548 0xb6080057, 549 0x06980654, 550 0x4056d01e, 551 0xf14167f0, 552 0xfd440063, 553 0x54d00546, 554 0x0c3fc800, 555 0xf5070bf4, 556 /* 0x053f: cmd_exec_done */ 557 0xf803eb21, 558 /* 0x0541: cmd_wrcache_flush */ 559 0x0027f100, 560 0xf034bd22, 561 0x23d00133, 562 0x0000f800, 563 0x00000000, 564 0x00000000, 565 0x00000000, 566 0x00000000, 567 0x00000000, 568 0x00000000, 569 0x00000000, 570 0x00000000, 571 0x00000000, 572 0x00000000, 573 0x00000000, 574 0x00000000, 575 0x00000000, 576 0x00000000, 577 0x00000000, 578 0x00000000, 579 0x00000000, 580 0x00000000, 581 0x00000000, 582 0x00000000, 583 0x00000000, 584 0x00000000, 585 0x00000000, 586 0x00000000, 587 0x00000000, 588 0x00000000, 589 0x00000000, 590 0x00000000, 591 0x00000000, 592 0x00000000, 593 0x00000000, 594 0x00000000, 595 0x00000000, 596 0x00000000, 597 0x00000000, 598 0x00000000, 599 0x00000000, 600 0x00000000, 601 0x00000000, 602 0x00000000, 603 0x00000000, 604 0x00000000, 605 0x00000000, 606 0x00000000, 607 }; 608