1 /* SPDX-License-Identifier: GPL-2.0 */ 2 static uint32_t gt215_ce_data[] = { 3 /* 0x0000: ctx_object */ 4 0x00000000, 5 /* 0x0004: ctx_dma */ 6 /* 0x0004: ctx_dma_query */ 7 0x00000000, 8 /* 0x0008: ctx_dma_src */ 9 0x00000000, 10 /* 0x000c: ctx_dma_dst */ 11 0x00000000, 12 /* 0x0010: ctx_query_address_high */ 13 0x00000000, 14 /* 0x0014: ctx_query_address_low */ 15 0x00000000, 16 /* 0x0018: ctx_query_counter */ 17 0x00000000, 18 /* 0x001c: ctx_src_address_high */ 19 0x00000000, 20 /* 0x0020: ctx_src_address_low */ 21 0x00000000, 22 /* 0x0024: ctx_src_pitch */ 23 0x00000000, 24 /* 0x0028: ctx_src_tile_mode */ 25 0x00000000, 26 /* 0x002c: ctx_src_xsize */ 27 0x00000000, 28 /* 0x0030: ctx_src_ysize */ 29 0x00000000, 30 /* 0x0034: ctx_src_zsize */ 31 0x00000000, 32 /* 0x0038: ctx_src_zoff */ 33 0x00000000, 34 /* 0x003c: ctx_src_xoff */ 35 0x00000000, 36 /* 0x0040: ctx_src_yoff */ 37 0x00000000, 38 /* 0x0044: ctx_src_cpp */ 39 0x00000000, 40 /* 0x0048: ctx_dst_address_high */ 41 0x00000000, 42 /* 0x004c: ctx_dst_address_low */ 43 0x00000000, 44 /* 0x0050: ctx_dst_pitch */ 45 0x00000000, 46 /* 0x0054: ctx_dst_tile_mode */ 47 0x00000000, 48 /* 0x0058: ctx_dst_xsize */ 49 0x00000000, 50 /* 0x005c: ctx_dst_ysize */ 51 0x00000000, 52 /* 0x0060: ctx_dst_zsize */ 53 0x00000000, 54 /* 0x0064: ctx_dst_zoff */ 55 0x00000000, 56 /* 0x0068: ctx_dst_xoff */ 57 0x00000000, 58 /* 0x006c: ctx_dst_yoff */ 59 0x00000000, 60 /* 0x0070: ctx_dst_cpp */ 61 0x00000000, 62 /* 0x0074: ctx_format */ 63 0x00000000, 64 /* 0x0078: ctx_swz_const0 */ 65 0x00000000, 66 /* 0x007c: ctx_swz_const1 */ 67 0x00000000, 68 /* 0x0080: ctx_xcnt */ 69 0x00000000, 70 /* 0x0084: ctx_ycnt */ 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 0x00000000, 99 0x00000000, 100 0x00000000, 101 0x00000000, 102 /* 0x0100: dispatch_table */ 103 0x00010000, 104 0x00000000, 105 0x00000000, 106 0x00010040, 107 0x00010160, 108 0x00000000, 109 0x00010050, 110 0x00010162, 111 0x00000000, 112 0x00030060, 113 /* 0x0128: dispatch_dma */ 114 0x00010170, 115 0x00000000, 116 0x00010170, 117 0x00000000, 118 0x00010170, 119 0x00000000, 120 0x00070080, 121 0x00000028, 122 0xfffff000, 123 0x0000002c, 124 0xfff80000, 125 0x00000030, 126 0xffffe000, 127 0x00000034, 128 0xfffff800, 129 0x00000038, 130 0xfffff000, 131 0x0000003c, 132 0xfff80000, 133 0x00000040, 134 0xffffe000, 135 0x00070088, 136 0x00000054, 137 0xfffff000, 138 0x00000058, 139 0xfff80000, 140 0x0000005c, 141 0xffffe000, 142 0x00000060, 143 0xfffff800, 144 0x00000064, 145 0xfffff000, 146 0x00000068, 147 0xfff80000, 148 0x0000006c, 149 0xffffe000, 150 0x000200c0, 151 0x00010492, 152 0x00000000, 153 0x0001051b, 154 0x00000000, 155 0x000e00c3, 156 0x0000001c, 157 0xffffff00, 158 0x00000020, 159 0x00000000, 160 0x00000048, 161 0xffffff00, 162 0x0000004c, 163 0x00000000, 164 0x00000024, 165 0xfff80000, 166 0x00000050, 167 0xfff80000, 168 0x00000080, 169 0xffff0000, 170 0x00000084, 171 0xffffe000, 172 0x00000074, 173 0xfccc0000, 174 0x00000078, 175 0x00000000, 176 0x0000007c, 177 0x00000000, 178 0x00000010, 179 0xffffff00, 180 0x00000014, 181 0x00000000, 182 0x00000018, 183 0x00000000, 184 0x00000800, 185 }; 186 187 static uint32_t gt215_ce_code[] = { 188 /* 0x0000: main */ 189 0x04fe04bd, 190 0x3517f000, 191 0xf10010fe, 192 0xf1040017, 193 0xf0fff327, 194 0x12d00023, 195 0x0c25f0c0, 196 0xf40012d0, 197 0x17f11031, 198 0x27f01200, 199 0x0012d003, 200 /* 0x002f: spin */ 201 0xf40031f4, 202 0x0ef40028, 203 /* 0x0035: ih */ 204 0x8001cffd, 205 0xf40812c4, 206 0x21f4060b, 207 /* 0x0041: ih_no_chsw */ 208 0x0412c472, 209 0xf4060bf4, 210 /* 0x004a: ih_no_cmd */ 211 0x11c4c321, 212 0x4001d00c, 213 /* 0x0052: swctx */ 214 0x47f101f8, 215 0x4bfe7700, 216 0x0007fe00, 217 0xf00204b9, 218 0x01f40643, 219 0x0604fa09, 220 /* 0x006b: swctx_load */ 221 0xfa060ef4, 222 /* 0x006e: swctx_done */ 223 0x03f80504, 224 /* 0x0072: chsw */ 225 0x27f100f8, 226 0x23cf1400, 227 0x1e3fc800, 228 0xf4170bf4, 229 0x21f40132, 230 0x1e3af052, 231 0xf00023d0, 232 0x24d00147, 233 /* 0x0093: chsw_no_unload */ 234 0xcf00f880, 235 0x3dc84023, 236 0x220bf41e, 237 0xf40131f4, 238 0x57f05221, 239 0x0367f004, 240 /* 0x00a8: chsw_load_ctx_dma */ 241 0xa07856bc, 242 0xb6018068, 243 0x87d00884, 244 0x0162b600, 245 /* 0x00bb: chsw_finish_load */ 246 0xf0f018f4, 247 0x23d00237, 248 /* 0x00c3: dispatch */ 249 0xf100f880, 250 0xcf190037, 251 0x33cf4032, 252 0xff24e400, 253 0x1024b607, 254 0x010057f1, 255 0x74bd64bd, 256 /* 0x00dc: dispatch_loop */ 257 0x58005658, 258 0x50b60157, 259 0x0446b804, 260 0xbb4d08f4, 261 0x47b80076, 262 0x0f08f404, 263 0xb60276bb, 264 0x57bb0374, 265 0xdf0ef400, 266 /* 0x0100: dispatch_valid_mthd */ 267 0xb60246bb, 268 0x45bb0344, 269 0x01459800, 270 0xb00453fd, 271 0x1bf40054, 272 0x00455820, 273 0xb0014658, 274 0x1bf40064, 275 0x00538009, 276 /* 0x0127: dispatch_cmd */ 277 0xf4300ef4, 278 0x55f90132, 279 0xf40c01f4, 280 /* 0x0132: dispatch_invalid_bitfield */ 281 0x25f0250e, 282 /* 0x0135: dispatch_illegal_mthd */ 283 0x0125f002, 284 /* 0x0138: dispatch_error */ 285 0x100047f1, 286 0xd00042d0, 287 0x27f04043, 288 0x0002d040, 289 /* 0x0148: hostirq_wait */ 290 0xf08002cf, 291 0x24b04024, 292 0xf71bf400, 293 /* 0x0154: dispatch_done */ 294 0x1d0027f1, 295 0xd00137f0, 296 0x00f80023, 297 /* 0x0160: cmd_nop */ 298 /* 0x0162: cmd_pm_trigger */ 299 0x27f100f8, 300 0x34bd2200, 301 0xd00233f0, 302 0x00f80023, 303 /* 0x0170: cmd_dma */ 304 0x012842b7, 305 0xf00145b6, 306 0x43801e39, 307 0x0040b701, 308 0x0644b606, 309 0xf80043d0, 310 /* 0x0189: cmd_exec_set_format */ 311 0xf030f400, 312 0xb00001b0, 313 0x01b00101, 314 0x0301b002, 315 0xc71d0498, 316 0x50b63045, 317 0x3446c701, 318 0xc70160b6, 319 0x70b63847, 320 0x0232f401, 321 0x94bd84bd, 322 /* 0x01b4: ncomp_loop */ 323 0xb60f4ac4, 324 0xb4bd0445, 325 /* 0x01bc: bpc_loop */ 326 0xf404a430, 327 0xa5ff0f18, 328 0x00cbbbc0, 329 0xf40231f4, 330 /* 0x01ce: cmp_c0 */ 331 0x1bf4220e, 332 0x10c7f00c, 333 0xf400cbbb, 334 /* 0x01da: cmp_c1 */ 335 0xa430160e, 336 0x0c18f406, 337 0xbb14c7f0, 338 0x0ef400cb, 339 /* 0x01e9: cmp_zero */ 340 0x80c7f107, 341 /* 0x01ed: bpc_next */ 342 0x01c83800, 343 0xb60180b6, 344 0xb5b801b0, 345 0xc308f404, 346 0xb80190b6, 347 0x08f40497, 348 0x0065fdb2, 349 0x98110680, 350 0x68fd2008, 351 0x0502f400, 352 /* 0x0216: dst_xcnt */ 353 0x75fd64bd, 354 0x1c078000, 355 0xf10078fd, 356 0xb6081057, 357 0x56d00654, 358 0x4057d000, 359 0x080050b7, 360 0xb61c0698, 361 0x64b60162, 362 0x11079808, 363 0xfd0172b6, 364 0x56d00567, 365 0x0050b700, 366 0x0060b401, 367 0xb40056d0, 368 0x56d00160, 369 0x0260b440, 370 0xb48056d0, 371 0x56d00360, 372 0x0050b7c0, 373 0x1e069804, 374 0x980056d0, 375 0x56d01f06, 376 0x1030f440, 377 /* 0x0276: cmd_exec_set_surface_tiled */ 378 0x579800f8, 379 0x6879c70a, 380 0xb66478c7, 381 0x77c70280, 382 0x0e76b060, 383 0xf0091bf4, 384 0x0ef40477, 385 /* 0x0291: xtile64 */ 386 0x027cf00f, 387 0xfd1170b6, 388 0x77f00947, 389 /* 0x029d: xtileok */ 390 0x0f5a9806, 391 0xfd115b98, 392 0xb7f000ab, 393 0x04b7bb01, 394 0xff01b2b6, 395 0xa7bbc4ab, 396 0x105d9805, 397 0xbb01e7f0, 398 0xe2b604e8, 399 0xb4deff01, 400 0xb605d8bb, 401 0xef9401e0, 402 0x02ebbb0c, 403 0xf005fefd, 404 0x60b7026c, 405 0x64b60208, 406 0x006fd008, 407 0xbb04b7bb, 408 0x5f9800cb, 409 0x115b980b, 410 0xf000fbfd, 411 0xb7bb01b7, 412 0x01b2b604, 413 0xbb00fbbb, 414 0xf0f905f7, 415 0xf00c5f98, 416 0xb8bb01b7, 417 0x01b2b604, 418 0xbb00fbbb, 419 0xf0f905f8, 420 0xb60078bb, 421 0xb7f00282, 422 0x04b8bb01, 423 0x9804b9bb, 424 0xe7f00e58, 425 0x04e9bb01, 426 0xff01e2b6, 427 0xf7bbf48e, 428 0x00cfbb04, 429 0xbb0079bb, 430 0xf0fc0589, 431 0xd9fd90fc, 432 0x00adbb00, 433 0xfd0089fd, 434 0xa8bb008f, 435 0x04a7bb00, 436 0xbb0192b6, 437 0x69d00497, 438 0x08579880, 439 0xbb075898, 440 0x7abb00ac, 441 0x0081b600, 442 0xfd1084b6, 443 0x62b7058b, 444 0x67d00600, 445 0x0060b700, 446 0x0068d004, 447 /* 0x0382: cmd_exec_set_surface_linear */ 448 0x6cf000f8, 449 0x0260b702, 450 0x0864b602, 451 0xd0085798, 452 0x60b70067, 453 0x57980400, 454 0x1074b607, 455 0xb70067d0, 456 0x98040060, 457 0x67d00957, 458 /* 0x03ab: cmd_exec_wait */ 459 0xf900f800, 460 0xf110f900, 461 0xb6080007, 462 /* 0x03b6: loop */ 463 0x01cf0604, 464 0x0114f000, 465 0xfcfa1bf4, 466 0xf800fc10, 467 /* 0x03c5: cmd_exec_query */ 468 0x0d34c800, 469 0xf5701bf4, 470 0xf103ab21, 471 0xb6080c47, 472 0x05980644, 473 0x0450b605, 474 0xd00045d0, 475 0x57f04040, 476 0x8045d00c, 477 0x040040b7, 478 0xb6040598, 479 0x45d01054, 480 0x0040b700, 481 0x0057f105, 482 0x0153f00b, 483 0xf10045d0, 484 0xb6404057, 485 0x53f10154, 486 0x45d08080, 487 0x1057f140, 488 0x1253f111, 489 0x8045d013, 490 0x151457f1, 491 0x171653f1, 492 0xf1c045d0, 493 0xf0260157, 494 0x47f10153, 495 0x44b60800, 496 0x0045d006, 497 /* 0x0438: query_counter */ 498 0x03ab21f5, 499 0x080c47f1, 500 0x980644b6, 501 0x45d00505, 502 0x4040d000, 503 0xd00457f0, 504 0x40b78045, 505 0x05980400, 506 0x1054b604, 507 0xb70045d0, 508 0xf1050040, 509 0xd0030057, 510 0x57f10045, 511 0x53f11110, 512 0x45d01312, 513 0x06059840, 514 0x050040b7, 515 0xf10045d0, 516 0xf0260157, 517 0x47f10153, 518 0x44b60800, 519 0x0045d006, 520 /* 0x0492: cmd_exec */ 521 0x21f500f8, 522 0x3fc803ab, 523 0x0e0bf400, 524 0x018921f5, 525 0x020047f1, 526 /* 0x04a7: cmd_exec_no_format */ 527 0xf11e0ef4, 528 0xb6081067, 529 0x77f00664, 530 0x11078001, 531 0x981c0780, 532 0x67d02007, 533 0x4067d000, 534 /* 0x04c2: cmd_exec_init_src_surface */ 535 0x32f444bd, 536 0xc854bd02, 537 0x0bf4043f, 538 0x8221f50a, 539 0x0a0ef403, 540 /* 0x04d4: src_tiled */ 541 0x027621f5, 542 /* 0x04db: cmd_exec_init_dst_surface */ 543 0xf40749f0, 544 0x57f00231, 545 0x083fc82c, 546 0xf50a0bf4, 547 0xf4038221, 548 /* 0x04ee: dst_tiled */ 549 0x21f50a0e, 550 0x49f00276, 551 /* 0x04f5: cmd_exec_kick */ 552 0x0057f108, 553 0x0654b608, 554 0xd0210698, 555 0x67f04056, 556 0x0063f141, 557 0x0546fd44, 558 0xc80054d0, 559 0x0bf40c3f, 560 0xc521f507, 561 /* 0x0519: cmd_exec_done */ 562 /* 0x051b: cmd_wrcache_flush */ 563 0xf100f803, 564 0xbd220027, 565 0x0133f034, 566 0xf80023d0, 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 0x00000000, 608 0x00000000, 609 0x00000000, 610 0x00000000, 611 0x00000000, 612 0x00000000, 613 0x00000000, 614 0x00000000, 615 0x00000000, 616 0x00000000, 617 0x00000000, 618 0x00000000, 619 0x00000000, 620 0x00000000, 621 }; 622