r600_blit_shaders.c 15 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097
  1. /*
  2. * Copyright 2009 Advanced Micro Devices, Inc.
  3. *
  4. * Permission is hereby granted, free of charge, to any person obtaining a
  5. * copy of this software and associated documentation files (the "Software"),
  6. * to deal in the Software without restriction, including without limitation
  7. * the rights to use, copy, modify, merge, publish, distribute, sublicense,
  8. * and/or sell copies of the Software, and to permit persons to whom the
  9. * Software is furnished to do so, subject to the following conditions:
  10. *
  11. * The above copyright notice and this permission notice (including the next
  12. * paragraph) shall be included in all copies or substantial portions of the
  13. * Software.
  14. *
  15. * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
  16. * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
  17. * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
  18. * THE COPYRIGHT HOLDER(S) AND/OR ITS SUPPLIERS BE LIABLE FOR ANY CLAIM, DAMAGES OR
  19. * OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
  20. * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
  21. * DEALINGS IN THE SOFTWARE.
  22. *
  23. * Authors:
  24. * Alex Deucher <alexander.deucher@amd.com>
  25. */
  26. #include <linux/types.h>
  27. #include <linux/kernel.h>
  28. /*
  29. * R6xx+ cards need to use the 3D engine to blit data which requires
  30. * quite a bit of hw state setup. Rather than pull the whole 3D driver
  31. * (which normally generates the 3D state) into the DRM, we opt to use
  32. * statically generated state tables. The regsiter state and shaders
  33. * were hand generated to support blitting functionality. See the 3D
  34. * driver or documentation for descriptions of the registers and
  35. * shader instructions.
  36. */
  37. const u32 r6xx_default_state[] =
  38. {
  39. 0xc0002400,
  40. 0x00000000,
  41. 0xc0012800,
  42. 0x80000000,
  43. 0x80000000,
  44. 0xc0016800,
  45. 0x00000010,
  46. 0x00008000,
  47. 0xc0016800,
  48. 0x00000542,
  49. 0x07000003,
  50. 0xc0016800,
  51. 0x000005c5,
  52. 0x00000000,
  53. 0xc0016800,
  54. 0x00000363,
  55. 0x00000000,
  56. 0xc0016800,
  57. 0x0000060c,
  58. 0x82000000,
  59. 0xc0016800,
  60. 0x0000060e,
  61. 0x01020204,
  62. 0xc0016f00,
  63. 0x00000000,
  64. 0x00000000,
  65. 0xc0016f00,
  66. 0x00000001,
  67. 0x00000000,
  68. 0xc0096900,
  69. 0x0000022a,
  70. 0x00000000,
  71. 0x00000000,
  72. 0x00000000,
  73. 0x00000000,
  74. 0x00000000,
  75. 0x00000000,
  76. 0x00000000,
  77. 0x00000000,
  78. 0x00000000,
  79. 0xc0016900,
  80. 0x00000004,
  81. 0x00000000,
  82. 0xc0016900,
  83. 0x0000000a,
  84. 0x00000000,
  85. 0xc0016900,
  86. 0x0000000b,
  87. 0x00000000,
  88. 0xc0016900,
  89. 0x0000010c,
  90. 0x00000000,
  91. 0xc0016900,
  92. 0x0000010d,
  93. 0x00000000,
  94. 0xc0016900,
  95. 0x00000200,
  96. 0x00000000,
  97. 0xc0016900,
  98. 0x00000343,
  99. 0x00000060,
  100. 0xc0016900,
  101. 0x00000344,
  102. 0x00000040,
  103. 0xc0016900,
  104. 0x00000351,
  105. 0x0000aa00,
  106. 0xc0016900,
  107. 0x00000104,
  108. 0x00000000,
  109. 0xc0016900,
  110. 0x0000010e,
  111. 0x00000000,
  112. 0xc0046900,
  113. 0x00000105,
  114. 0x00000000,
  115. 0x00000000,
  116. 0x00000000,
  117. 0x00000000,
  118. 0xc0036900,
  119. 0x00000109,
  120. 0x00000000,
  121. 0x00000000,
  122. 0x00000000,
  123. 0xc0046900,
  124. 0x0000030c,
  125. 0x01000000,
  126. 0x00000000,
  127. 0x00000000,
  128. 0x00000000,
  129. 0xc0046900,
  130. 0x00000048,
  131. 0x3f800000,
  132. 0x00000000,
  133. 0x3f800000,
  134. 0x3f800000,
  135. 0xc0016900,
  136. 0x0000008e,
  137. 0x0000000f,
  138. 0xc0016900,
  139. 0x00000080,
  140. 0x00000000,
  141. 0xc0016900,
  142. 0x00000083,
  143. 0x0000ffff,
  144. 0xc0016900,
  145. 0x00000084,
  146. 0x00000000,
  147. 0xc0016900,
  148. 0x00000085,
  149. 0x20002000,
  150. 0xc0016900,
  151. 0x00000086,
  152. 0x00000000,
  153. 0xc0016900,
  154. 0x00000087,
  155. 0x20002000,
  156. 0xc0016900,
  157. 0x00000088,
  158. 0x00000000,
  159. 0xc0016900,
  160. 0x00000089,
  161. 0x20002000,
  162. 0xc0016900,
  163. 0x0000008a,
  164. 0x00000000,
  165. 0xc0016900,
  166. 0x0000008b,
  167. 0x20002000,
  168. 0xc0016900,
  169. 0x0000008c,
  170. 0x00000000,
  171. 0xc0016900,
  172. 0x00000094,
  173. 0x80000000,
  174. 0xc0016900,
  175. 0x00000095,
  176. 0x20002000,
  177. 0xc0026900,
  178. 0x000000b4,
  179. 0x00000000,
  180. 0x3f800000,
  181. 0xc0016900,
  182. 0x00000096,
  183. 0x80000000,
  184. 0xc0016900,
  185. 0x00000097,
  186. 0x20002000,
  187. 0xc0026900,
  188. 0x000000b6,
  189. 0x00000000,
  190. 0x3f800000,
  191. 0xc0016900,
  192. 0x00000098,
  193. 0x80000000,
  194. 0xc0016900,
  195. 0x00000099,
  196. 0x20002000,
  197. 0xc0026900,
  198. 0x000000b8,
  199. 0x00000000,
  200. 0x3f800000,
  201. 0xc0016900,
  202. 0x0000009a,
  203. 0x80000000,
  204. 0xc0016900,
  205. 0x0000009b,
  206. 0x20002000,
  207. 0xc0026900,
  208. 0x000000ba,
  209. 0x00000000,
  210. 0x3f800000,
  211. 0xc0016900,
  212. 0x0000009c,
  213. 0x80000000,
  214. 0xc0016900,
  215. 0x0000009d,
  216. 0x20002000,
  217. 0xc0026900,
  218. 0x000000bc,
  219. 0x00000000,
  220. 0x3f800000,
  221. 0xc0016900,
  222. 0x0000009e,
  223. 0x80000000,
  224. 0xc0016900,
  225. 0x0000009f,
  226. 0x20002000,
  227. 0xc0026900,
  228. 0x000000be,
  229. 0x00000000,
  230. 0x3f800000,
  231. 0xc0016900,
  232. 0x000000a0,
  233. 0x80000000,
  234. 0xc0016900,
  235. 0x000000a1,
  236. 0x20002000,
  237. 0xc0026900,
  238. 0x000000c0,
  239. 0x00000000,
  240. 0x3f800000,
  241. 0xc0016900,
  242. 0x000000a2,
  243. 0x80000000,
  244. 0xc0016900,
  245. 0x000000a3,
  246. 0x20002000,
  247. 0xc0026900,
  248. 0x000000c2,
  249. 0x00000000,
  250. 0x3f800000,
  251. 0xc0016900,
  252. 0x000000a4,
  253. 0x80000000,
  254. 0xc0016900,
  255. 0x000000a5,
  256. 0x20002000,
  257. 0xc0026900,
  258. 0x000000c4,
  259. 0x00000000,
  260. 0x3f800000,
  261. 0xc0016900,
  262. 0x000000a6,
  263. 0x80000000,
  264. 0xc0016900,
  265. 0x000000a7,
  266. 0x20002000,
  267. 0xc0026900,
  268. 0x000000c6,
  269. 0x00000000,
  270. 0x3f800000,
  271. 0xc0016900,
  272. 0x000000a8,
  273. 0x80000000,
  274. 0xc0016900,
  275. 0x000000a9,
  276. 0x20002000,
  277. 0xc0026900,
  278. 0x000000c8,
  279. 0x00000000,
  280. 0x3f800000,
  281. 0xc0016900,
  282. 0x000000aa,
  283. 0x80000000,
  284. 0xc0016900,
  285. 0x000000ab,
  286. 0x20002000,
  287. 0xc0026900,
  288. 0x000000ca,
  289. 0x00000000,
  290. 0x3f800000,
  291. 0xc0016900,
  292. 0x000000ac,
  293. 0x80000000,
  294. 0xc0016900,
  295. 0x000000ad,
  296. 0x20002000,
  297. 0xc0026900,
  298. 0x000000cc,
  299. 0x00000000,
  300. 0x3f800000,
  301. 0xc0016900,
  302. 0x000000ae,
  303. 0x80000000,
  304. 0xc0016900,
  305. 0x000000af,
  306. 0x20002000,
  307. 0xc0026900,
  308. 0x000000ce,
  309. 0x00000000,
  310. 0x3f800000,
  311. 0xc0016900,
  312. 0x000000b0,
  313. 0x80000000,
  314. 0xc0016900,
  315. 0x000000b1,
  316. 0x20002000,
  317. 0xc0026900,
  318. 0x000000d0,
  319. 0x00000000,
  320. 0x3f800000,
  321. 0xc0016900,
  322. 0x000000b2,
  323. 0x80000000,
  324. 0xc0016900,
  325. 0x000000b3,
  326. 0x20002000,
  327. 0xc0026900,
  328. 0x000000d2,
  329. 0x00000000,
  330. 0x3f800000,
  331. 0xc0016900,
  332. 0x00000293,
  333. 0x00004010,
  334. 0xc0016900,
  335. 0x00000300,
  336. 0x00000000,
  337. 0xc0016900,
  338. 0x00000301,
  339. 0x00000000,
  340. 0xc0016900,
  341. 0x00000312,
  342. 0xffffffff,
  343. 0xc0016900,
  344. 0x00000307,
  345. 0x00000000,
  346. 0xc0016900,
  347. 0x00000308,
  348. 0x00000000,
  349. 0xc0016900,
  350. 0x00000283,
  351. 0x00000000,
  352. 0xc0016900,
  353. 0x00000292,
  354. 0x00000000,
  355. 0xc0066900,
  356. 0x0000010f,
  357. 0x00000000,
  358. 0x00000000,
  359. 0x00000000,
  360. 0x00000000,
  361. 0x00000000,
  362. 0x00000000,
  363. 0xc0016900,
  364. 0x00000206,
  365. 0x00000000,
  366. 0xc0016900,
  367. 0x00000207,
  368. 0x00000000,
  369. 0xc0016900,
  370. 0x00000208,
  371. 0x00000000,
  372. 0xc0046900,
  373. 0x00000303,
  374. 0x3f800000,
  375. 0x3f800000,
  376. 0x3f800000,
  377. 0x3f800000,
  378. 0xc0016900,
  379. 0x00000205,
  380. 0x00000004,
  381. 0xc0016900,
  382. 0x00000280,
  383. 0x00000000,
  384. 0xc0016900,
  385. 0x00000281,
  386. 0x00000000,
  387. 0xc0016900,
  388. 0x0000037e,
  389. 0x00000000,
  390. 0xc0016900,
  391. 0x00000382,
  392. 0x00000000,
  393. 0xc0016900,
  394. 0x00000380,
  395. 0x00000000,
  396. 0xc0016900,
  397. 0x00000383,
  398. 0x00000000,
  399. 0xc0016900,
  400. 0x00000381,
  401. 0x00000000,
  402. 0xc0016900,
  403. 0x00000282,
  404. 0x00000008,
  405. 0xc0016900,
  406. 0x00000302,
  407. 0x0000002d,
  408. 0xc0016900,
  409. 0x0000037f,
  410. 0x00000000,
  411. 0xc0016900,
  412. 0x000001b2,
  413. 0x00000000,
  414. 0xc0016900,
  415. 0x000001b6,
  416. 0x00000000,
  417. 0xc0016900,
  418. 0x000001b7,
  419. 0x00000000,
  420. 0xc0016900,
  421. 0x000001b8,
  422. 0x00000000,
  423. 0xc0016900,
  424. 0x000001b9,
  425. 0x00000000,
  426. 0xc0016900,
  427. 0x00000225,
  428. 0x00000000,
  429. 0xc0016900,
  430. 0x00000229,
  431. 0x00000000,
  432. 0xc0016900,
  433. 0x00000237,
  434. 0x00000000,
  435. 0xc0016900,
  436. 0x00000100,
  437. 0x00000800,
  438. 0xc0016900,
  439. 0x00000101,
  440. 0x00000000,
  441. 0xc0016900,
  442. 0x00000102,
  443. 0x00000000,
  444. 0xc0016900,
  445. 0x000002a8,
  446. 0x00000000,
  447. 0xc0016900,
  448. 0x000002a9,
  449. 0x00000000,
  450. 0xc0016900,
  451. 0x00000103,
  452. 0x00000000,
  453. 0xc0016900,
  454. 0x00000284,
  455. 0x00000000,
  456. 0xc0016900,
  457. 0x00000290,
  458. 0x00000000,
  459. 0xc0016900,
  460. 0x00000285,
  461. 0x00000000,
  462. 0xc0016900,
  463. 0x00000286,
  464. 0x00000000,
  465. 0xc0016900,
  466. 0x00000287,
  467. 0x00000000,
  468. 0xc0016900,
  469. 0x00000288,
  470. 0x00000000,
  471. 0xc0016900,
  472. 0x00000289,
  473. 0x00000000,
  474. 0xc0016900,
  475. 0x0000028a,
  476. 0x00000000,
  477. 0xc0016900,
  478. 0x0000028b,
  479. 0x00000000,
  480. 0xc0016900,
  481. 0x0000028c,
  482. 0x00000000,
  483. 0xc0016900,
  484. 0x0000028d,
  485. 0x00000000,
  486. 0xc0016900,
  487. 0x0000028e,
  488. 0x00000000,
  489. 0xc0016900,
  490. 0x0000028f,
  491. 0x00000000,
  492. 0xc0016900,
  493. 0x000002a1,
  494. 0x00000000,
  495. 0xc0016900,
  496. 0x000002a5,
  497. 0x00000000,
  498. 0xc0016900,
  499. 0x000002ac,
  500. 0x00000000,
  501. 0xc0016900,
  502. 0x000002ad,
  503. 0x00000000,
  504. 0xc0016900,
  505. 0x000002ae,
  506. 0x00000000,
  507. 0xc0016900,
  508. 0x000002c8,
  509. 0x00000000,
  510. 0xc0016900,
  511. 0x00000206,
  512. 0x00000100,
  513. 0xc0016900,
  514. 0x00000204,
  515. 0x00010000,
  516. 0xc0036e00,
  517. 0x00000000,
  518. 0x00000012,
  519. 0x00000000,
  520. 0x00000000,
  521. 0xc0016900,
  522. 0x0000008f,
  523. 0x0000000f,
  524. 0xc0016900,
  525. 0x000001e8,
  526. 0x00000001,
  527. 0xc0016900,
  528. 0x00000202,
  529. 0x00cc0000,
  530. 0xc0016900,
  531. 0x00000205,
  532. 0x00000244,
  533. 0xc0016900,
  534. 0x00000203,
  535. 0x00000210,
  536. 0xc0016900,
  537. 0x000001b1,
  538. 0x00000000,
  539. 0xc0016900,
  540. 0x00000185,
  541. 0x00000000,
  542. 0xc0016900,
  543. 0x000001b3,
  544. 0x00000001,
  545. 0xc0016900,
  546. 0x000001b4,
  547. 0x00000000,
  548. 0xc0016900,
  549. 0x00000191,
  550. 0x00000b00,
  551. 0xc0016900,
  552. 0x000001b5,
  553. 0x00000000,
  554. };
  555. const u32 r7xx_default_state[] =
  556. {
  557. 0xc0012800,
  558. 0x80000000,
  559. 0x80000000,
  560. 0xc0016800,
  561. 0x00000010,
  562. 0x00008000,
  563. 0xc0016800,
  564. 0x00000542,
  565. 0x07000002,
  566. 0xc0016800,
  567. 0x000005c5,
  568. 0x00000000,
  569. 0xc0016800,
  570. 0x00000363,
  571. 0x00004000,
  572. 0xc0016800,
  573. 0x0000060c,
  574. 0x00000000,
  575. 0xc0016800,
  576. 0x0000060e,
  577. 0x00420204,
  578. 0xc0016f00,
  579. 0x00000000,
  580. 0x00000000,
  581. 0xc0016f00,
  582. 0x00000001,
  583. 0x00000000,
  584. 0xc0096900,
  585. 0x0000022a,
  586. 0x00000000,
  587. 0x00000000,
  588. 0x00000000,
  589. 0x00000000,
  590. 0x00000000,
  591. 0x00000000,
  592. 0x00000000,
  593. 0x00000000,
  594. 0x00000000,
  595. 0xc0016900,
  596. 0x00000004,
  597. 0x00000000,
  598. 0xc0016900,
  599. 0x0000000a,
  600. 0x00000000,
  601. 0xc0016900,
  602. 0x0000000b,
  603. 0x00000000,
  604. 0xc0016900,
  605. 0x0000010c,
  606. 0x00000000,
  607. 0xc0016900,
  608. 0x0000010d,
  609. 0x00000000,
  610. 0xc0016900,
  611. 0x00000200,
  612. 0x00000000,
  613. 0xc0016900,
  614. 0x00000343,
  615. 0x00000060,
  616. 0xc0016900,
  617. 0x00000344,
  618. 0x00000000,
  619. 0xc0016900,
  620. 0x00000351,
  621. 0x0000aa00,
  622. 0xc0016900,
  623. 0x00000104,
  624. 0x00000000,
  625. 0xc0016900,
  626. 0x0000010e,
  627. 0x00000000,
  628. 0xc0046900,
  629. 0x00000105,
  630. 0x00000000,
  631. 0x00000000,
  632. 0x00000000,
  633. 0x00000000,
  634. 0xc0046900,
  635. 0x0000030c,
  636. 0x01000000,
  637. 0x00000000,
  638. 0x00000000,
  639. 0x00000000,
  640. 0xc0016900,
  641. 0x0000008e,
  642. 0x0000000f,
  643. 0xc0016900,
  644. 0x00000080,
  645. 0x00000000,
  646. 0xc0016900,
  647. 0x00000083,
  648. 0x0000ffff,
  649. 0xc0016900,
  650. 0x00000084,
  651. 0x00000000,
  652. 0xc0016900,
  653. 0x00000085,
  654. 0x20002000,
  655. 0xc0016900,
  656. 0x00000086,
  657. 0x00000000,
  658. 0xc0016900,
  659. 0x00000087,
  660. 0x20002000,
  661. 0xc0016900,
  662. 0x00000088,
  663. 0x00000000,
  664. 0xc0016900,
  665. 0x00000089,
  666. 0x20002000,
  667. 0xc0016900,
  668. 0x0000008a,
  669. 0x00000000,
  670. 0xc0016900,
  671. 0x0000008b,
  672. 0x20002000,
  673. 0xc0016900,
  674. 0x0000008c,
  675. 0xaaaaaaaa,
  676. 0xc0016900,
  677. 0x00000094,
  678. 0x80000000,
  679. 0xc0016900,
  680. 0x00000095,
  681. 0x20002000,
  682. 0xc0026900,
  683. 0x000000b4,
  684. 0x00000000,
  685. 0x3f800000,
  686. 0xc0016900,
  687. 0x00000096,
  688. 0x80000000,
  689. 0xc0016900,
  690. 0x00000097,
  691. 0x20002000,
  692. 0xc0026900,
  693. 0x000000b6,
  694. 0x00000000,
  695. 0x3f800000,
  696. 0xc0016900,
  697. 0x00000098,
  698. 0x80000000,
  699. 0xc0016900,
  700. 0x00000099,
  701. 0x20002000,
  702. 0xc0026900,
  703. 0x000000b8,
  704. 0x00000000,
  705. 0x3f800000,
  706. 0xc0016900,
  707. 0x0000009a,
  708. 0x80000000,
  709. 0xc0016900,
  710. 0x0000009b,
  711. 0x20002000,
  712. 0xc0026900,
  713. 0x000000ba,
  714. 0x00000000,
  715. 0x3f800000,
  716. 0xc0016900,
  717. 0x0000009c,
  718. 0x80000000,
  719. 0xc0016900,
  720. 0x0000009d,
  721. 0x20002000,
  722. 0xc0026900,
  723. 0x000000bc,
  724. 0x00000000,
  725. 0x3f800000,
  726. 0xc0016900,
  727. 0x0000009e,
  728. 0x80000000,
  729. 0xc0016900,
  730. 0x0000009f,
  731. 0x20002000,
  732. 0xc0026900,
  733. 0x000000be,
  734. 0x00000000,
  735. 0x3f800000,
  736. 0xc0016900,
  737. 0x000000a0,
  738. 0x80000000,
  739. 0xc0016900,
  740. 0x000000a1,
  741. 0x20002000,
  742. 0xc0026900,
  743. 0x000000c0,
  744. 0x00000000,
  745. 0x3f800000,
  746. 0xc0016900,
  747. 0x000000a2,
  748. 0x80000000,
  749. 0xc0016900,
  750. 0x000000a3,
  751. 0x20002000,
  752. 0xc0026900,
  753. 0x000000c2,
  754. 0x00000000,
  755. 0x3f800000,
  756. 0xc0016900,
  757. 0x000000a4,
  758. 0x80000000,
  759. 0xc0016900,
  760. 0x000000a5,
  761. 0x20002000,
  762. 0xc0026900,
  763. 0x000000c4,
  764. 0x00000000,
  765. 0x3f800000,
  766. 0xc0016900,
  767. 0x000000a6,
  768. 0x80000000,
  769. 0xc0016900,
  770. 0x000000a7,
  771. 0x20002000,
  772. 0xc0026900,
  773. 0x000000c6,
  774. 0x00000000,
  775. 0x3f800000,
  776. 0xc0016900,
  777. 0x000000a8,
  778. 0x80000000,
  779. 0xc0016900,
  780. 0x000000a9,
  781. 0x20002000,
  782. 0xc0026900,
  783. 0x000000c8,
  784. 0x00000000,
  785. 0x3f800000,
  786. 0xc0016900,
  787. 0x000000aa,
  788. 0x80000000,
  789. 0xc0016900,
  790. 0x000000ab,
  791. 0x20002000,
  792. 0xc0026900,
  793. 0x000000ca,
  794. 0x00000000,
  795. 0x3f800000,
  796. 0xc0016900,
  797. 0x000000ac,
  798. 0x80000000,
  799. 0xc0016900,
  800. 0x000000ad,
  801. 0x20002000,
  802. 0xc0026900,
  803. 0x000000cc,
  804. 0x00000000,
  805. 0x3f800000,
  806. 0xc0016900,
  807. 0x000000ae,
  808. 0x80000000,
  809. 0xc0016900,
  810. 0x000000af,
  811. 0x20002000,
  812. 0xc0026900,
  813. 0x000000ce,
  814. 0x00000000,
  815. 0x3f800000,
  816. 0xc0016900,
  817. 0x000000b0,
  818. 0x80000000,
  819. 0xc0016900,
  820. 0x000000b1,
  821. 0x20002000,
  822. 0xc0026900,
  823. 0x000000d0,
  824. 0x00000000,
  825. 0x3f800000,
  826. 0xc0016900,
  827. 0x000000b2,
  828. 0x80000000,
  829. 0xc0016900,
  830. 0x000000b3,
  831. 0x20002000,
  832. 0xc0026900,
  833. 0x000000d2,
  834. 0x00000000,
  835. 0x3f800000,
  836. 0xc0016900,
  837. 0x00000293,
  838. 0x00514000,
  839. 0xc0016900,
  840. 0x00000300,
  841. 0x00000000,
  842. 0xc0016900,
  843. 0x00000301,
  844. 0x00000000,
  845. 0xc0016900,
  846. 0x00000312,
  847. 0xffffffff,
  848. 0xc0016900,
  849. 0x00000307,
  850. 0x00000000,
  851. 0xc0016900,
  852. 0x00000308,
  853. 0x00000000,
  854. 0xc0016900,
  855. 0x00000283,
  856. 0x00000000,
  857. 0xc0016900,
  858. 0x00000292,
  859. 0x00000000,
  860. 0xc0066900,
  861. 0x0000010f,
  862. 0x00000000,
  863. 0x00000000,
  864. 0x00000000,
  865. 0x00000000,
  866. 0x00000000,
  867. 0x00000000,
  868. 0xc0016900,
  869. 0x00000206,
  870. 0x00000000,
  871. 0xc0016900,
  872. 0x00000207,
  873. 0x00000000,
  874. 0xc0016900,
  875. 0x00000208,
  876. 0x00000000,
  877. 0xc0046900,
  878. 0x00000303,
  879. 0x3f800000,
  880. 0x3f800000,
  881. 0x3f800000,
  882. 0x3f800000,
  883. 0xc0016900,
  884. 0x00000205,
  885. 0x00000004,
  886. 0xc0016900,
  887. 0x00000280,
  888. 0x00000000,
  889. 0xc0016900,
  890. 0x00000281,
  891. 0x00000000,
  892. 0xc0016900,
  893. 0x0000037e,
  894. 0x00000000,
  895. 0xc0016900,
  896. 0x00000382,
  897. 0x00000000,
  898. 0xc0016900,
  899. 0x00000380,
  900. 0x00000000,
  901. 0xc0016900,
  902. 0x00000383,
  903. 0x00000000,
  904. 0xc0016900,
  905. 0x00000381,
  906. 0x00000000,
  907. 0xc0016900,
  908. 0x00000282,
  909. 0x00000008,
  910. 0xc0016900,
  911. 0x00000302,
  912. 0x0000002d,
  913. 0xc0016900,
  914. 0x0000037f,
  915. 0x00000000,
  916. 0xc0016900,
  917. 0x000001b2,
  918. 0x00000001,
  919. 0xc0016900,
  920. 0x000001b6,
  921. 0x00000000,
  922. 0xc0016900,
  923. 0x000001b7,
  924. 0x00000000,
  925. 0xc0016900,
  926. 0x000001b8,
  927. 0x00000000,
  928. 0xc0016900,
  929. 0x000001b9,
  930. 0x00000000,
  931. 0xc0016900,
  932. 0x00000225,
  933. 0x00000000,
  934. 0xc0016900,
  935. 0x00000229,
  936. 0x00000000,
  937. 0xc0016900,
  938. 0x00000237,
  939. 0x00000000,
  940. 0xc0016900,
  941. 0x00000100,
  942. 0x00000800,
  943. 0xc0016900,
  944. 0x00000101,
  945. 0x00000000,
  946. 0xc0016900,
  947. 0x00000102,
  948. 0x00000000,
  949. 0xc0016900,
  950. 0x000002a8,
  951. 0x00000000,
  952. 0xc0016900,
  953. 0x000002a9,
  954. 0x00000000,
  955. 0xc0016900,
  956. 0x00000103,
  957. 0x00000000,
  958. 0xc0016900,
  959. 0x00000284,
  960. 0x00000000,
  961. 0xc0016900,
  962. 0x00000290,
  963. 0x00000000,
  964. 0xc0016900,
  965. 0x00000285,
  966. 0x00000000,
  967. 0xc0016900,
  968. 0x00000286,
  969. 0x00000000,
  970. 0xc0016900,
  971. 0x00000287,
  972. 0x00000000,
  973. 0xc0016900,
  974. 0x00000288,
  975. 0x00000000,
  976. 0xc0016900,
  977. 0x00000289,
  978. 0x00000000,
  979. 0xc0016900,
  980. 0x0000028a,
  981. 0x00000000,
  982. 0xc0016900,
  983. 0x0000028b,
  984. 0x00000000,
  985. 0xc0016900,
  986. 0x0000028c,
  987. 0x00000000,
  988. 0xc0016900,
  989. 0x0000028d,
  990. 0x00000000,
  991. 0xc0016900,
  992. 0x0000028e,
  993. 0x00000000,
  994. 0xc0016900,
  995. 0x0000028f,
  996. 0x00000000,
  997. 0xc0016900,
  998. 0x000002a1,
  999. 0x00000000,
  1000. 0xc0016900,
  1001. 0x000002a5,
  1002. 0x00000000,
  1003. 0xc0016900,
  1004. 0x000002ac,
  1005. 0x00000000,
  1006. 0xc0016900,
  1007. 0x000002ad,
  1008. 0x00000000,
  1009. 0xc0016900,
  1010. 0x000002ae,
  1011. 0x00000000,
  1012. 0xc0016900,
  1013. 0x000002c8,
  1014. 0x00000000,
  1015. 0xc0016900,
  1016. 0x00000206,
  1017. 0x00000100,
  1018. 0xc0016900,
  1019. 0x00000204,
  1020. 0x00010000,
  1021. 0xc0036e00,
  1022. 0x00000000,
  1023. 0x00000012,
  1024. 0x00000000,
  1025. 0x00000000,
  1026. 0xc0016900,
  1027. 0x0000008f,
  1028. 0x0000000f,
  1029. 0xc0016900,
  1030. 0x000001e8,
  1031. 0x00000001,
  1032. 0xc0016900,
  1033. 0x00000202,
  1034. 0x00cc0000,
  1035. 0xc0016900,
  1036. 0x00000205,
  1037. 0x00000244,
  1038. 0xc0016900,
  1039. 0x00000203,
  1040. 0x00000210,
  1041. 0xc0016900,
  1042. 0x000001b1,
  1043. 0x00000000,
  1044. 0xc0016900,
  1045. 0x00000185,
  1046. 0x00000000,
  1047. 0xc0016900,
  1048. 0x000001b3,
  1049. 0x00000001,
  1050. 0xc0016900,
  1051. 0x000001b4,
  1052. 0x00000000,
  1053. 0xc0016900,
  1054. 0x00000191,
  1055. 0x00000b00,
  1056. 0xc0016900,
  1057. 0x000001b5,
  1058. 0x00000000,
  1059. };
  1060. /* same for r6xx/r7xx */
  1061. const u32 r6xx_vs[] =
  1062. {
  1063. 0x00000004,
  1064. 0x81000000,
  1065. 0x0000203c,
  1066. 0x94000b08,
  1067. 0x00004000,
  1068. 0x14200b1a,
  1069. 0x00000000,
  1070. 0x00000000,
  1071. 0x3c000000,
  1072. 0x68cd1000,
  1073. 0x00080000,
  1074. 0x00000000,
  1075. };
  1076. const u32 r6xx_ps[] =
  1077. {
  1078. 0x00000002,
  1079. 0x80800000,
  1080. 0x00000000,
  1081. 0x94200688,
  1082. 0x00000010,
  1083. 0x000d1000,
  1084. 0xb0800000,
  1085. 0x00000000,
  1086. };
  1087. const u32 r6xx_ps_size = ARRAY_SIZE(r6xx_ps);
  1088. const u32 r6xx_vs_size = ARRAY_SIZE(r6xx_vs);
  1089. const u32 r6xx_default_size = ARRAY_SIZE(r6xx_default_state);
  1090. const u32 r7xx_default_size = ARRAY_SIZE(r7xx_default_state);