meson_registers.h 68 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910
  1. /* SPDX-License-Identifier: GPL-2.0-or-later */
  2. /*
  3. * Copyright (C) 2015 Amlogic, Inc. All rights reserved.
  4. */
  5. #ifndef __MESON_REGISTERS_H
  6. #define __MESON_REGISTERS_H
  7. #include <linux/io.h>
  8. /* Shift all registers by 2 */
  9. #define _REG(reg) ((reg) << 2)
  10. #define writel_bits_relaxed(mask, val, addr) \
  11. writel_relaxed((readl_relaxed(addr) & ~(mask)) | ((val) & (mask)), addr)
  12. /* vpp2 */
  13. #define VPP2_DUMMY_DATA 0x1900
  14. #define VPP2_LINE_IN_LENGTH 0x1901
  15. #define VPP2_PIC_IN_HEIGHT 0x1902
  16. #define VPP2_SCALE_COEF_IDX 0x1903
  17. #define VPP2_SCALE_COEF 0x1904
  18. #define VPP2_VSC_REGION12_STARTP 0x1905
  19. #define VPP2_VSC_REGION34_STARTP 0x1906
  20. #define VPP2_VSC_REGION4_ENDP 0x1907
  21. #define VPP2_VSC_START_PHASE_STEP 0x1908
  22. #define VPP2_VSC_REGION0_PHASE_SLOPE 0x1909
  23. #define VPP2_VSC_REGION1_PHASE_SLOPE 0x190a
  24. #define VPP2_VSC_REGION3_PHASE_SLOPE 0x190b
  25. #define VPP2_VSC_REGION4_PHASE_SLOPE 0x190c
  26. #define VPP2_VSC_PHASE_CTRL 0x190d
  27. #define VPP2_VSC_INI_PHASE 0x190e
  28. #define VPP2_HSC_REGION12_STARTP 0x1910
  29. #define VPP2_HSC_REGION34_STARTP 0x1911
  30. #define VPP2_HSC_REGION4_ENDP 0x1912
  31. #define VPP2_HSC_START_PHASE_STEP 0x1913
  32. #define VPP2_HSC_REGION0_PHASE_SLOPE 0x1914
  33. #define VPP2_HSC_REGION1_PHASE_SLOPE 0x1915
  34. #define VPP2_HSC_REGION3_PHASE_SLOPE 0x1916
  35. #define VPP2_HSC_REGION4_PHASE_SLOPE 0x1917
  36. #define VPP2_HSC_PHASE_CTRL 0x1918
  37. #define VPP2_SC_MISC 0x1919
  38. #define VPP2_PREBLEND_VD1_H_START_END 0x191a
  39. #define VPP2_PREBLEND_VD1_V_START_END 0x191b
  40. #define VPP2_POSTBLEND_VD1_H_START_END 0x191c
  41. #define VPP2_POSTBLEND_VD1_V_START_END 0x191d
  42. #define VPP2_PREBLEND_H_SIZE 0x1920
  43. #define VPP2_POSTBLEND_H_SIZE 0x1921
  44. #define VPP2_HOLD_LINES 0x1922
  45. #define VPP2_BLEND_ONECOLOR_CTRL 0x1923
  46. #define VPP2_PREBLEND_CURRENT_XY 0x1924
  47. #define VPP2_POSTBLEND_CURRENT_XY 0x1925
  48. #define VPP2_MISC 0x1926
  49. #define VPP2_OFIFO_SIZE 0x1927
  50. #define VPP2_FIFO_STATUS 0x1928
  51. #define VPP2_SMOKE_CTRL 0x1929
  52. #define VPP2_SMOKE1_VAL 0x192a
  53. #define VPP2_SMOKE2_VAL 0x192b
  54. #define VPP2_SMOKE1_H_START_END 0x192d
  55. #define VPP2_SMOKE1_V_START_END 0x192e
  56. #define VPP2_SMOKE2_H_START_END 0x192f
  57. #define VPP2_SMOKE2_V_START_END 0x1930
  58. #define VPP2_SCO_FIFO_CTRL 0x1933
  59. #define VPP2_HSC_PHASE_CTRL1 0x1934
  60. #define VPP2_HSC_INI_PAT_CTRL 0x1935
  61. #define VPP2_VADJ_CTRL 0x1940
  62. #define VPP2_VADJ1_Y 0x1941
  63. #define VPP2_VADJ1_MA_MB 0x1942
  64. #define VPP2_VADJ1_MC_MD 0x1943
  65. #define VPP2_VADJ2_Y 0x1944
  66. #define VPP2_VADJ2_MA_MB 0x1945
  67. #define VPP2_VADJ2_MC_MD 0x1946
  68. #define VPP2_MATRIX_PROBE_COLOR 0x195c
  69. #define VPP2_MATRIX_HL_COLOR 0x195d
  70. #define VPP2_MATRIX_PROBE_POS 0x195e
  71. #define VPP2_MATRIX_CTRL 0x195f
  72. #define VPP2_MATRIX_COEF00_01 0x1960
  73. #define VPP2_MATRIX_COEF02_10 0x1961
  74. #define VPP2_MATRIX_COEF11_12 0x1962
  75. #define VPP2_MATRIX_COEF20_21 0x1963
  76. #define VPP2_MATRIX_COEF22 0x1964
  77. #define VPP2_MATRIX_OFFSET0_1 0x1965
  78. #define VPP2_MATRIX_OFFSET2 0x1966
  79. #define VPP2_MATRIX_PRE_OFFSET0_1 0x1967
  80. #define VPP2_MATRIX_PRE_OFFSET2 0x1968
  81. #define VPP2_DUMMY_DATA1 0x1969
  82. #define VPP2_GAINOFF_CTRL0 0x196a
  83. #define VPP2_GAINOFF_CTRL1 0x196b
  84. #define VPP2_GAINOFF_CTRL2 0x196c
  85. #define VPP2_GAINOFF_CTRL3 0x196d
  86. #define VPP2_GAINOFF_CTRL4 0x196e
  87. #define VPP2_CHROMA_ADDR_PORT 0x1970
  88. #define VPP2_CHROMA_DATA_PORT 0x1971
  89. #define VPP2_GCLK_CTRL0 0x1972
  90. #define VPP2_GCLK_CTRL1 0x1973
  91. #define VPP2_SC_GCLK_CTRL 0x1974
  92. #define VPP2_MISC1 0x1976
  93. #define VPP2_DNLP_CTRL_00 0x1981
  94. #define VPP2_DNLP_CTRL_01 0x1982
  95. #define VPP2_DNLP_CTRL_02 0x1983
  96. #define VPP2_DNLP_CTRL_03 0x1984
  97. #define VPP2_DNLP_CTRL_04 0x1985
  98. #define VPP2_DNLP_CTRL_05 0x1986
  99. #define VPP2_DNLP_CTRL_06 0x1987
  100. #define VPP2_DNLP_CTRL_07 0x1988
  101. #define VPP2_DNLP_CTRL_08 0x1989
  102. #define VPP2_DNLP_CTRL_09 0x198a
  103. #define VPP2_DNLP_CTRL_10 0x198b
  104. #define VPP2_DNLP_CTRL_11 0x198c
  105. #define VPP2_DNLP_CTRL_12 0x198d
  106. #define VPP2_DNLP_CTRL_13 0x198e
  107. #define VPP2_DNLP_CTRL_14 0x198f
  108. #define VPP2_DNLP_CTRL_15 0x1990
  109. #define VPP2_VE_ENABLE_CTRL 0x19a1
  110. #define VPP2_VE_DEMO_LEFT_TOP_SCREEN_WIDTH 0x19a2
  111. #define VPP2_VE_DEMO_CENTER_BAR 0x19a3
  112. #define VPP2_VE_H_V_SIZE 0x19a4
  113. #define VPP2_VDO_MEAS_CTRL 0x19a8
  114. #define VPP2_VDO_MEAS_VS_COUNT_HI 0x19a9
  115. #define VPP2_VDO_MEAS_VS_COUNT_LO 0x19aa
  116. #define VPP2_OSD_VSC_PHASE_STEP 0x19c0
  117. #define VPP2_OSD_VSC_INI_PHASE 0x19c1
  118. #define VPP2_OSD_VSC_CTRL0 0x19c2
  119. #define VPP2_OSD_HSC_PHASE_STEP 0x19c3
  120. #define VPP2_OSD_HSC_INI_PHASE 0x19c4
  121. #define VPP2_OSD_HSC_CTRL0 0x19c5
  122. #define VPP2_OSD_HSC_INI_PAT_CTRL 0x19c6
  123. #define VPP2_OSD_SC_DUMMY_DATA 0x19c7
  124. #define VPP2_OSD_SC_CTRL0 0x19c8
  125. #define VPP2_OSD_SCI_WH_M1 0x19c9
  126. #define VPP2_OSD_SCO_H_START_END 0x19ca
  127. #define VPP2_OSD_SCO_V_START_END 0x19cb
  128. #define VPP2_OSD_SCALE_COEF_IDX 0x19cc
  129. #define VPP2_OSD_SCALE_COEF 0x19cd
  130. #define VPP2_INT_LINE_NUM 0x19ce
  131. /* viu */
  132. #define VIU_ADDR_START 0x1a00
  133. #define VIU_ADDR_END 0x1aff
  134. #define VIU_SW_RESET 0x1a01
  135. #define VIU_SW_RESET_OSD1_AFBCD BIT(31)
  136. #define VIU_SW_RESET_G12A_OSD1_AFBCD BIT(21)
  137. #define VIU_SW_RESET_G12A_AFBC_ARB BIT(19)
  138. #define VIU_SW_RESET_OSD1 BIT(0)
  139. #define VIU_MISC_CTRL0 0x1a06
  140. #define VIU_CTRL0_VD1_AFBC_MASK 0x170000
  141. #define VIU_CTRL0_AFBC_TO_VD1 BIT(20)
  142. #define VIU_MISC_CTRL1 0x1a07
  143. #define MALI_AFBC_MISC GENMASK(15, 8)
  144. #define D2D3_INTF_LENGTH 0x1a08
  145. #define D2D3_INTF_CTRL0 0x1a09
  146. #define VD1_AFBCD0_MISC_CTRL 0x1a0a
  147. #define VD1_AXI_SEL_AFBC (1 << 12)
  148. #define AFBC_VD1_SEL (1 << 10)
  149. #define VD2_AFBCD1_MISC_CTRL 0x1a0b
  150. #define VIU_OSD1_CTRL_STAT 0x1a10
  151. #define VIU_OSD1_OSD_BLK_ENABLE BIT(0)
  152. #define VIU_OSD1_OSD_MEM_MODE_LINEAR BIT(2)
  153. #define VIU_OSD1_POSTBLD_SRC_VD1 (1 << 8)
  154. #define VIU_OSD1_POSTBLD_SRC_VD2 (2 << 8)
  155. #define VIU_OSD1_POSTBLD_SRC_OSD1 (3 << 8)
  156. #define VIU_OSD1_POSTBLD_SRC_OSD2 (4 << 8)
  157. #define VIU_OSD1_OSD_ENABLE BIT(21)
  158. #define VIU_OSD1_CFG_SYN_EN BIT(31)
  159. #define VIU_OSD1_CTRL_STAT2 0x1a2d
  160. #define VIU_OSD1_COLOR_ADDR 0x1a11
  161. #define VIU_OSD1_COLOR 0x1a12
  162. #define VIU_OSD1_TCOLOR_AG0 0x1a17
  163. #define VIU_OSD1_TCOLOR_AG1 0x1a18
  164. #define VIU_OSD1_TCOLOR_AG2 0x1a19
  165. #define VIU_OSD1_TCOLOR_AG3 0x1a1a
  166. #define VIU_OSD1_BLK0_CFG_W0 0x1a1b
  167. #define VIU_OSD1_BLK1_CFG_W0 0x1a1f
  168. #define VIU_OSD1_BLK2_CFG_W0 0x1a23
  169. #define VIU_OSD1_BLK3_CFG_W0 0x1a27
  170. #define VIU_OSD1_BLK0_CFG_W1 0x1a1c
  171. #define VIU_OSD1_BLK1_CFG_W1 0x1a20
  172. #define VIU_OSD1_BLK2_CFG_W1 0x1a24
  173. #define VIU_OSD1_BLK3_CFG_W1 0x1a28
  174. #define VIU_OSD1_BLK0_CFG_W2 0x1a1d
  175. #define VIU_OSD1_BLK1_CFG_W2 0x1a21
  176. #define VIU_OSD1_BLK2_CFG_W2 0x1a25
  177. #define VIU_OSD1_BLK3_CFG_W2 0x1a29
  178. #define VIU_OSD1_BLK0_CFG_W3 0x1a1e
  179. #define VIU_OSD1_BLK1_CFG_W3 0x1a22
  180. #define VIU_OSD1_BLK2_CFG_W3 0x1a26
  181. #define VIU_OSD1_BLK3_CFG_W3 0x1a2a
  182. #define VIU_OSD1_BLK0_CFG_W4 0x1a13
  183. #define VIU_OSD1_BLK1_CFG_W4 0x1a14
  184. #define VIU_OSD1_BLK2_CFG_W4 0x1a15
  185. #define VIU_OSD1_BLK3_CFG_W4 0x1a16
  186. #define VIU_OSD1_FIFO_CTRL_STAT 0x1a2b
  187. #define VIU_OSD1_TEST_RDDATA 0x1a2c
  188. #define VIU_OSD1_PROT_CTRL 0x1a2e
  189. #define VIU_OSD1_MALI_UNPACK_CTRL 0x1a2f
  190. #define VIU_OSD1_MALI_UNPACK_EN BIT(31)
  191. #define VIU_OSD1_MALI_AFBCD_R_REORDER GENMASK(15, 12)
  192. #define VIU_OSD1_MALI_AFBCD_G_REORDER GENMASK(11, 8)
  193. #define VIU_OSD1_MALI_AFBCD_B_REORDER GENMASK(7, 4)
  194. #define VIU_OSD1_MALI_AFBCD_A_REORDER GENMASK(3, 0)
  195. #define VIU_OSD1_MALI_REORDER_R 1
  196. #define VIU_OSD1_MALI_REORDER_G 2
  197. #define VIU_OSD1_MALI_REORDER_B 3
  198. #define VIU_OSD1_MALI_REORDER_A 4
  199. #define VIU_OSD2_CTRL_STAT 0x1a30
  200. #define VIU_OSD2_CTRL_STAT2 0x1a4d
  201. #define VIU_OSD2_COLOR_ADDR 0x1a31
  202. #define VIU_OSD2_COLOR 0x1a32
  203. #define VIU_OSD2_HL1_H_START_END 0x1a33
  204. #define VIU_OSD2_HL1_V_START_END 0x1a34
  205. #define VIU_OSD2_HL2_H_START_END 0x1a35
  206. #define VIU_OSD2_HL2_V_START_END 0x1a36
  207. #define VIU_OSD2_TCOLOR_AG0 0x1a37
  208. #define VIU_OSD2_TCOLOR_AG1 0x1a38
  209. #define VIU_OSD2_TCOLOR_AG2 0x1a39
  210. #define VIU_OSD2_TCOLOR_AG3 0x1a3a
  211. #define VIU_OSD2_BLK0_CFG_W0 0x1a3b
  212. #define VIU_OSD2_BLK1_CFG_W0 0x1a3f
  213. #define VIU_OSD2_BLK2_CFG_W0 0x1a43
  214. #define VIU_OSD2_BLK3_CFG_W0 0x1a47
  215. #define VIU_OSD2_BLK0_CFG_W1 0x1a3c
  216. #define VIU_OSD2_BLK1_CFG_W1 0x1a40
  217. #define VIU_OSD2_BLK2_CFG_W1 0x1a44
  218. #define VIU_OSD2_BLK3_CFG_W1 0x1a48
  219. #define VIU_OSD2_BLK0_CFG_W2 0x1a3d
  220. #define VIU_OSD2_BLK1_CFG_W2 0x1a41
  221. #define VIU_OSD2_BLK2_CFG_W2 0x1a45
  222. #define VIU_OSD2_BLK3_CFG_W2 0x1a49
  223. #define VIU_OSD2_BLK0_CFG_W3 0x1a3e
  224. #define VIU_OSD2_BLK1_CFG_W3 0x1a42
  225. #define VIU_OSD2_BLK2_CFG_W3 0x1a46
  226. #define VIU_OSD2_BLK3_CFG_W3 0x1a4a
  227. #define VIU_OSD2_BLK0_CFG_W4 0x1a64
  228. #define VIU_OSD2_BLK1_CFG_W4 0x1a65
  229. #define VIU_OSD2_BLK2_CFG_W4 0x1a66
  230. #define VIU_OSD2_BLK3_CFG_W4 0x1a67
  231. #define VIU_OSD2_FIFO_CTRL_STAT 0x1a4b
  232. #define VIU_OSD2_TEST_RDDATA 0x1a4c
  233. #define VIU_OSD2_PROT_CTRL 0x1a4e
  234. #define VIU_OSD2_MALI_UNPACK_CTRL 0x1abd
  235. #define VIU_OSD2_DIMM_CTRL 0x1acf
  236. #define VIU_OSD3_CTRL_STAT 0x3d80
  237. #define VIU_OSD3_CTRL_STAT2 0x3d81
  238. #define VIU_OSD3_COLOR_ADDR 0x3d82
  239. #define VIU_OSD3_COLOR 0x3d83
  240. #define VIU_OSD3_TCOLOR_AG0 0x3d84
  241. #define VIU_OSD3_TCOLOR_AG1 0x3d85
  242. #define VIU_OSD3_TCOLOR_AG2 0x3d86
  243. #define VIU_OSD3_TCOLOR_AG3 0x3d87
  244. #define VIU_OSD3_BLK0_CFG_W0 0x3d88
  245. #define VIU_OSD3_BLK0_CFG_W1 0x3d8c
  246. #define VIU_OSD3_BLK0_CFG_W2 0x3d90
  247. #define VIU_OSD3_BLK0_CFG_W3 0x3d94
  248. #define VIU_OSD3_BLK0_CFG_W4 0x3d98
  249. #define VIU_OSD3_BLK1_CFG_W4 0x3d99
  250. #define VIU_OSD3_BLK2_CFG_W4 0x3d9a
  251. #define VIU_OSD3_FIFO_CTRL_STAT 0x3d9c
  252. #define VIU_OSD3_TEST_RDDATA 0x3d9d
  253. #define VIU_OSD3_PROT_CTRL 0x3d9e
  254. #define VIU_OSD3_MALI_UNPACK_CTRL 0x3d9f
  255. #define VIU_OSD3_DIMM_CTRL 0x3da0
  256. #define VIU_OSD_DDR_PRIORITY_URGENT BIT(0)
  257. #define VIU_OSD_HOLD_FIFO_LINES(lines) ((lines & 0x1f) << 5)
  258. #define VIU_OSD_FIFO_DEPTH_VAL(val) ((val & 0x7f) << 12)
  259. #define VIU_OSD_WORDS_PER_BURST(words) (((words & 0x4) >> 1) << 22)
  260. #define VIU_OSD_FIFO_LIMITS(size) ((size & 0xf) << 24)
  261. #define VIU_OSD_BURST_LENGTH_24 (0x0 << 31 | 0x0 << 10)
  262. #define VIU_OSD_BURST_LENGTH_32 (0x0 << 31 | 0x1 << 10)
  263. #define VIU_OSD_BURST_LENGTH_48 (0x0 << 31 | 0x2 << 10)
  264. #define VIU_OSD_BURST_LENGTH_64 (0x0 << 31 | 0x3 << 10)
  265. #define VIU_OSD_BURST_LENGTH_96 (0x1 << 31 | 0x0 << 10)
  266. #define VIU_OSD_BURST_LENGTH_128 (0x1 << 31 | 0x1 << 10)
  267. #define VD1_IF0_GEN_REG 0x1a50
  268. #define VD1_IF0_CANVAS0 0x1a51
  269. #define VD1_IF0_CANVAS1 0x1a52
  270. #define VD1_IF0_LUMA_X0 0x1a53
  271. #define VD1_IF0_LUMA_Y0 0x1a54
  272. #define VD1_IF0_CHROMA_X0 0x1a55
  273. #define VD1_IF0_CHROMA_Y0 0x1a56
  274. #define VD1_IF0_LUMA_X1 0x1a57
  275. #define VD1_IF0_LUMA_Y1 0x1a58
  276. #define VD1_IF0_CHROMA_X1 0x1a59
  277. #define VD1_IF0_CHROMA_Y1 0x1a5a
  278. #define VD1_IF0_RPT_LOOP 0x1a5b
  279. #define VD1_IF0_LUMA0_RPT_PAT 0x1a5c
  280. #define VD1_IF0_CHROMA0_RPT_PAT 0x1a5d
  281. #define VD1_IF0_LUMA1_RPT_PAT 0x1a5e
  282. #define VD1_IF0_CHROMA1_RPT_PAT 0x1a5f
  283. #define VD1_IF0_LUMA_PSEL 0x1a60
  284. #define VD1_IF0_CHROMA_PSEL 0x1a61
  285. #define VD1_IF0_DUMMY_PIXEL 0x1a62
  286. #define VD1_IF0_LUMA_FIFO_SIZE 0x1a63
  287. #define VD1_IF0_RANGE_MAP_Y 0x1a6a
  288. #define VD1_IF0_RANGE_MAP_CB 0x1a6b
  289. #define VD1_IF0_RANGE_MAP_CR 0x1a6c
  290. #define VD1_IF0_GEN_REG2 0x1a6d
  291. #define VD1_IF0_PROT_CNTL 0x1a6e
  292. #define VIU_VD1_FMT_CTRL 0x1a68
  293. #define VIU_VD1_FMT_W 0x1a69
  294. #define VD2_IF0_GEN_REG 0x1a70
  295. #define VD2_IF0_CANVAS0 0x1a71
  296. #define VD2_IF0_CANVAS1 0x1a72
  297. #define VD2_IF0_LUMA_X0 0x1a73
  298. #define VD2_IF0_LUMA_Y0 0x1a74
  299. #define VD2_IF0_CHROMA_X0 0x1a75
  300. #define VD2_IF0_CHROMA_Y0 0x1a76
  301. #define VD2_IF0_LUMA_X1 0x1a77
  302. #define VD2_IF0_LUMA_Y1 0x1a78
  303. #define VD2_IF0_CHROMA_X1 0x1a79
  304. #define VD2_IF0_CHROMA_Y1 0x1a7a
  305. #define VD2_IF0_RPT_LOOP 0x1a7b
  306. #define VD2_IF0_LUMA0_RPT_PAT 0x1a7c
  307. #define VD2_IF0_CHROMA0_RPT_PAT 0x1a7d
  308. #define VD2_IF0_LUMA1_RPT_PAT 0x1a7e
  309. #define VD2_IF0_CHROMA1_RPT_PAT 0x1a7f
  310. #define VD2_IF0_LUMA_PSEL 0x1a80
  311. #define VD2_IF0_CHROMA_PSEL 0x1a81
  312. #define VD2_IF0_DUMMY_PIXEL 0x1a82
  313. #define VD2_IF0_LUMA_FIFO_SIZE 0x1a83
  314. #define VD2_IF0_RANGE_MAP_Y 0x1a8a
  315. #define VD2_IF0_RANGE_MAP_CB 0x1a8b
  316. #define VD2_IF0_RANGE_MAP_CR 0x1a8c
  317. #define VD2_IF0_GEN_REG2 0x1a8d
  318. #define VD2_IF0_PROT_CNTL 0x1a8e
  319. #define VIU_VD2_FMT_CTRL 0x1a88
  320. #define VIU_VD2_FMT_W 0x1a89
  321. /* VIU Matrix Registers */
  322. #define VIU_OSD1_MATRIX_CTRL 0x1a90
  323. #define VIU_OSD1_MATRIX_COEF00_01 0x1a91
  324. #define VIU_OSD1_MATRIX_COEF02_10 0x1a92
  325. #define VIU_OSD1_MATRIX_COEF11_12 0x1a93
  326. #define VIU_OSD1_MATRIX_COEF20_21 0x1a94
  327. #define VIU_OSD1_MATRIX_COLMOD_COEF42 0x1a95
  328. #define VIU_OSD1_MATRIX_OFFSET0_1 0x1a96
  329. #define VIU_OSD1_MATRIX_OFFSET2 0x1a97
  330. #define VIU_OSD1_MATRIX_PRE_OFFSET0_1 0x1a98
  331. #define VIU_OSD1_MATRIX_PRE_OFFSET2 0x1a99
  332. #define VIU_OSD1_MATRIX_COEF22_30 0x1a9d
  333. #define VIU_OSD1_MATRIX_COEF31_32 0x1a9e
  334. #define VIU_OSD1_MATRIX_COEF40_41 0x1a9f
  335. #define VD1_IF0_GEN_REG3 0x1aa7
  336. #define VIU_OSD_BLENDO_H_START_END 0x1aa9
  337. #define VIU_OSD_BLENDO_V_START_END 0x1aaa
  338. #define VIU_OSD_BLEND_GEN_CTRL0 0x1aab
  339. #define VIU_OSD_BLEND_GEN_CTRL1 0x1aac
  340. #define VIU_OSD_BLEND_DUMMY_DATA 0x1aad
  341. #define VIU_OSD_BLEND_CURRENT_XY 0x1aae
  342. #define VIU_OSD2_MATRIX_CTRL 0x1ab0
  343. #define VIU_OSD2_MATRIX_COEF00_01 0x1ab1
  344. #define VIU_OSD2_MATRIX_COEF02_10 0x1ab2
  345. #define VIU_OSD2_MATRIX_COEF11_12 0x1ab3
  346. #define VIU_OSD2_MATRIX_COEF20_21 0x1ab4
  347. #define VIU_OSD2_MATRIX_COEF22 0x1ab5
  348. #define VIU_OSD2_MATRIX_OFFSET0_1 0x1ab6
  349. #define VIU_OSD2_MATRIX_OFFSET2 0x1ab7
  350. #define VIU_OSD2_MATRIX_PRE_OFFSET0_1 0x1ab8
  351. #define VIU_OSD2_MATRIX_PRE_OFFSET2 0x1ab9
  352. #define VIU_OSD2_MATRIX_PROBE_COLOR 0x1aba
  353. #define VIU_OSD2_MATRIX_HL_COLOR 0x1abb
  354. #define VIU_OSD2_MATRIX_PROBE_POS 0x1abc
  355. #define VIU_OSD1_EOTF_CTL 0x1ad4
  356. #define VIU_OSD1_EOTF_COEF00_01 0x1ad5
  357. #define VIU_OSD1_EOTF_COEF02_10 0x1ad6
  358. #define VIU_OSD1_EOTF_COEF11_12 0x1ad7
  359. #define VIU_OSD1_EOTF_COEF20_21 0x1ad8
  360. #define VIU_OSD1_EOTF_COEF22_RS 0x1ad9
  361. #define VIU_OSD1_EOTF_LUT_ADDR_PORT 0x1ada
  362. #define VIU_OSD1_EOTF_LUT_DATA_PORT 0x1adb
  363. #define VIU_OSD1_OETF_CTL 0x1adc
  364. #define VIU_OSD1_OETF_LUT_ADDR_PORT 0x1add
  365. #define VIU_OSD1_OETF_LUT_DATA_PORT 0x1ade
  366. #define AFBC_ENABLE 0x1ae0
  367. #define AFBC_MODE 0x1ae1
  368. #define AFBC_SIZE_IN 0x1ae2
  369. #define AFBC_DEC_DEF_COLOR 0x1ae3
  370. #define AFBC_CONV_CTRL 0x1ae4
  371. #define AFBC_LBUF_DEPTH 0x1ae5
  372. #define AFBC_HEAD_BADDR 0x1ae6
  373. #define AFBC_BODY_BADDR 0x1ae7
  374. #define AFBC_SIZE_OUT 0x1ae8
  375. #define AFBC_OUT_YSCOPE 0x1ae9
  376. #define AFBC_STAT 0x1aea
  377. #define AFBC_VD_CFMT_CTRL 0x1aeb
  378. #define AFBC_VD_CFMT_W 0x1aec
  379. #define AFBC_MIF_HOR_SCOPE 0x1aed
  380. #define AFBC_MIF_VER_SCOPE 0x1aee
  381. #define AFBC_PIXEL_HOR_SCOPE 0x1aef
  382. #define AFBC_PIXEL_VER_SCOPE 0x1af0
  383. #define AFBC_VD_CFMT_H 0x1af1
  384. /* vpp */
  385. #define VPP_DUMMY_DATA 0x1d00
  386. #define VPP_LINE_IN_LENGTH 0x1d01
  387. #define VPP_PIC_IN_HEIGHT 0x1d02
  388. #define VPP_SCALE_COEF_IDX 0x1d03
  389. #define VPP_SCALE_HORIZONTAL_COEF BIT(8)
  390. #define VPP_SCALE_COEF 0x1d04
  391. #define VPP_VSC_REGION12_STARTP 0x1d05
  392. #define VPP_VSC_REGION34_STARTP 0x1d06
  393. #define VPP_VSC_REGION4_ENDP 0x1d07
  394. #define VPP_VSC_START_PHASE_STEP 0x1d08
  395. #define VPP_VSC_REGION0_PHASE_SLOPE 0x1d09
  396. #define VPP_VSC_REGION1_PHASE_SLOPE 0x1d0a
  397. #define VPP_VSC_REGION3_PHASE_SLOPE 0x1d0b
  398. #define VPP_VSC_REGION4_PHASE_SLOPE 0x1d0c
  399. #define VPP_VSC_PHASE_CTRL 0x1d0d
  400. #define VPP_VSC_INI_PHASE 0x1d0e
  401. #define VPP_HSC_REGION12_STARTP 0x1d10
  402. #define VPP_HSC_REGION34_STARTP 0x1d11
  403. #define VPP_HSC_REGION4_ENDP 0x1d12
  404. #define VPP_HSC_START_PHASE_STEP 0x1d13
  405. #define VPP_HSC_REGION0_PHASE_SLOPE 0x1d14
  406. #define VPP_HSC_REGION1_PHASE_SLOPE 0x1d15
  407. #define VPP_HSC_REGION3_PHASE_SLOPE 0x1d16
  408. #define VPP_HSC_REGION4_PHASE_SLOPE 0x1d17
  409. #define VPP_HSC_PHASE_CTRL 0x1d18
  410. #define VPP_SC_MISC 0x1d19
  411. #define VPP_SC_VD_EN_ENABLE BIT(15)
  412. #define VPP_SC_TOP_EN_ENABLE BIT(16)
  413. #define VPP_SC_HSC_EN_ENABLE BIT(17)
  414. #define VPP_SC_VSC_EN_ENABLE BIT(18)
  415. #define VPP_VSC_BANK_LENGTH(length) (length & 0x7)
  416. #define VPP_HSC_BANK_LENGTH(length) ((length & 0x7) << 8)
  417. #define VPP_PREBLEND_VD1_H_START_END 0x1d1a
  418. #define VPP_PREBLEND_VD1_V_START_END 0x1d1b
  419. #define VPP_POSTBLEND_VD1_H_START_END 0x1d1c
  420. #define VPP_POSTBLEND_VD1_V_START_END 0x1d1d
  421. #define VPP_BLEND_VD2_H_START_END 0x1d1e
  422. #define VPP_BLEND_VD2_V_START_END 0x1d1f
  423. #define VPP_PREBLEND_H_SIZE 0x1d20
  424. #define VPP_POSTBLEND_H_SIZE 0x1d21
  425. #define VPP_HOLD_LINES 0x1d22
  426. #define VPP_POSTBLEND_HOLD_LINES(lines) (lines & 0xf)
  427. #define VPP_PREBLEND_HOLD_LINES(lines) ((lines & 0xf) << 8)
  428. #define VPP_BLEND_ONECOLOR_CTRL 0x1d23
  429. #define VPP_PREBLEND_CURRENT_XY 0x1d24
  430. #define VPP_POSTBLEND_CURRENT_XY 0x1d25
  431. #define VPP_MISC 0x1d26
  432. #define VPP_PREBLEND_ENABLE BIT(6)
  433. #define VPP_POSTBLEND_ENABLE BIT(7)
  434. #define VPP_OSD2_ALPHA_PREMULT BIT(8)
  435. #define VPP_OSD1_ALPHA_PREMULT BIT(9)
  436. #define VPP_VD1_POSTBLEND BIT(10)
  437. #define VPP_VD2_POSTBLEND BIT(11)
  438. #define VPP_OSD1_POSTBLEND BIT(12)
  439. #define VPP_OSD2_POSTBLEND BIT(13)
  440. #define VPP_VD1_PREBLEND BIT(14)
  441. #define VPP_VD2_PREBLEND BIT(15)
  442. #define VPP_OSD1_PREBLEND BIT(16)
  443. #define VPP_OSD2_PREBLEND BIT(17)
  444. #define VPP_COLOR_MNG_ENABLE BIT(28)
  445. #define VPP_OFIFO_SIZE 0x1d27
  446. #define VPP_OFIFO_SIZE_MASK GENMASK(13, 0)
  447. #define VPP_OFIFO_SIZE_DEFAULT (0xfff << 20 | 0x1000)
  448. #define VPP_FIFO_STATUS 0x1d28
  449. #define VPP_SMOKE_CTRL 0x1d29
  450. #define VPP_SMOKE1_VAL 0x1d2a
  451. #define VPP_SMOKE2_VAL 0x1d2b
  452. #define VPP_SMOKE3_VAL 0x1d2c
  453. #define VPP_SMOKE1_H_START_END 0x1d2d
  454. #define VPP_SMOKE1_V_START_END 0x1d2e
  455. #define VPP_SMOKE2_H_START_END 0x1d2f
  456. #define VPP_SMOKE2_V_START_END 0x1d30
  457. #define VPP_SMOKE3_H_START_END 0x1d31
  458. #define VPP_SMOKE3_V_START_END 0x1d32
  459. #define VPP_SCO_FIFO_CTRL 0x1d33
  460. #define VPP_HSC_PHASE_CTRL1 0x1d34
  461. #define VPP_HSC_INI_PAT_CTRL 0x1d35
  462. #define VPP_VADJ_CTRL 0x1d40
  463. #define VPP_MINUS_BLACK_LVL_VADJ1_ENABLE BIT(1)
  464. #define VPP_VADJ1_Y 0x1d41
  465. #define VPP_VADJ1_MA_MB 0x1d42
  466. #define VPP_VADJ1_MC_MD 0x1d43
  467. #define VPP_VADJ2_Y 0x1d44
  468. #define VPP_VADJ2_MA_MB 0x1d45
  469. #define VPP_VADJ2_MC_MD 0x1d46
  470. #define VPP_HSHARP_CTRL 0x1d50
  471. #define VPP_HSHARP_LUMA_THRESH01 0x1d51
  472. #define VPP_HSHARP_LUMA_THRESH23 0x1d52
  473. #define VPP_HSHARP_CHROMA_THRESH01 0x1d53
  474. #define VPP_HSHARP_CHROMA_THRESH23 0x1d54
  475. #define VPP_HSHARP_LUMA_GAIN 0x1d55
  476. #define VPP_HSHARP_CHROMA_GAIN 0x1d56
  477. #define VPP_MATRIX_PROBE_COLOR 0x1d5c
  478. #define VPP_MATRIX_HL_COLOR 0x1d5d
  479. #define VPP_MATRIX_PROBE_POS 0x1d5e
  480. #define VPP_MATRIX_CTRL 0x1d5f
  481. #define VPP_MATRIX_COEF00_01 0x1d60
  482. #define VPP_MATRIX_COEF02_10 0x1d61
  483. #define VPP_MATRIX_COEF11_12 0x1d62
  484. #define VPP_MATRIX_COEF20_21 0x1d63
  485. #define VPP_MATRIX_COEF22 0x1d64
  486. #define VPP_MATRIX_OFFSET0_1 0x1d65
  487. #define VPP_MATRIX_OFFSET2 0x1d66
  488. #define VPP_MATRIX_PRE_OFFSET0_1 0x1d67
  489. #define VPP_MATRIX_PRE_OFFSET2 0x1d68
  490. #define VPP_DUMMY_DATA1 0x1d69
  491. #define VPP_GAINOFF_CTRL0 0x1d6a
  492. #define VPP_GAINOFF_CTRL1 0x1d6b
  493. #define VPP_GAINOFF_CTRL2 0x1d6c
  494. #define VPP_GAINOFF_CTRL3 0x1d6d
  495. #define VPP_GAINOFF_CTRL4 0x1d6e
  496. #define VPP_CHROMA_ADDR_PORT 0x1d70
  497. #define VPP_CHROMA_DATA_PORT 0x1d71
  498. #define VPP_GCLK_CTRL0 0x1d72
  499. #define VPP_GCLK_CTRL1 0x1d73
  500. #define VPP_SC_GCLK_CTRL 0x1d74
  501. #define VPP_MISC1 0x1d76
  502. #define VPP_BLACKEXT_CTRL 0x1d80
  503. #define VPP_DNLP_CTRL_00 0x1d81
  504. #define VPP_DNLP_CTRL_01 0x1d82
  505. #define VPP_DNLP_CTRL_02 0x1d83
  506. #define VPP_DNLP_CTRL_03 0x1d84
  507. #define VPP_DNLP_CTRL_04 0x1d85
  508. #define VPP_DNLP_CTRL_05 0x1d86
  509. #define VPP_DNLP_CTRL_06 0x1d87
  510. #define VPP_DNLP_CTRL_07 0x1d88
  511. #define VPP_DNLP_CTRL_08 0x1d89
  512. #define VPP_DNLP_CTRL_09 0x1d8a
  513. #define VPP_DNLP_CTRL_10 0x1d8b
  514. #define VPP_DNLP_CTRL_11 0x1d8c
  515. #define VPP_DNLP_CTRL_12 0x1d8d
  516. #define VPP_DNLP_CTRL_13 0x1d8e
  517. #define VPP_DNLP_CTRL_14 0x1d8f
  518. #define VPP_DNLP_CTRL_15 0x1d90
  519. #define VPP_PEAKING_HGAIN 0x1d91
  520. #define VPP_PEAKING_VGAIN 0x1d92
  521. #define VPP_PEAKING_NLP_1 0x1d93
  522. #define VPP_DOLBY_CTRL 0x1d93
  523. #define VPP_PPS_DUMMY_DATA_MODE (1 << 17)
  524. #define VPP_PEAKING_NLP_2 0x1d94
  525. #define VPP_PEAKING_NLP_3 0x1d95
  526. #define VPP_PEAKING_NLP_4 0x1d96
  527. #define VPP_PEAKING_NLP_5 0x1d97
  528. #define VPP_SHARP_LIMIT 0x1d98
  529. #define VPP_VLTI_CTRL 0x1d99
  530. #define VPP_HLTI_CTRL 0x1d9a
  531. #define VPP_CTI_CTRL 0x1d9b
  532. #define VPP_BLUE_STRETCH_1 0x1d9c
  533. #define VPP_BLUE_STRETCH_2 0x1d9d
  534. #define VPP_BLUE_STRETCH_3 0x1d9e
  535. #define VPP_CCORING_CTRL 0x1da0
  536. #define VPP_VE_ENABLE_CTRL 0x1da1
  537. #define VPP_VE_DEMO_LEFT_TOP_SCREEN_WIDTH 0x1da2
  538. #define VPP_VE_DEMO_CENTER_BAR 0x1da3
  539. #define VPP_VE_H_V_SIZE 0x1da4
  540. #define VPP_VDO_MEAS_CTRL 0x1da8
  541. #define VPP_VDO_MEAS_VS_COUNT_HI 0x1da9
  542. #define VPP_VDO_MEAS_VS_COUNT_LO 0x1daa
  543. #define VPP_INPUT_CTRL 0x1dab
  544. #define VPP_CTI_CTRL2 0x1dac
  545. #define VPP_PEAKING_SAT_THD1 0x1dad
  546. #define VPP_PEAKING_SAT_THD2 0x1dae
  547. #define VPP_PEAKING_SAT_THD3 0x1daf
  548. #define VPP_PEAKING_SAT_THD4 0x1db0
  549. #define VPP_PEAKING_SAT_THD5 0x1db1
  550. #define VPP_PEAKING_SAT_THD6 0x1db2
  551. #define VPP_PEAKING_SAT_THD7 0x1db3
  552. #define VPP_PEAKING_SAT_THD8 0x1db4
  553. #define VPP_PEAKING_SAT_THD9 0x1db5
  554. #define VPP_PEAKING_GAIN_ADD1 0x1db6
  555. #define VPP_PEAKING_GAIN_ADD2 0x1db7
  556. #define VPP_PEAKING_DNLP 0x1db8
  557. #define VPP_SHARP_DEMO_WIN_CTRL1 0x1db9
  558. #define VPP_SHARP_DEMO_WIN_CTRL2 0x1dba
  559. #define VPP_FRONT_HLTI_CTRL 0x1dbb
  560. #define VPP_FRONT_CTI_CTRL 0x1dbc
  561. #define VPP_FRONT_CTI_CTRL2 0x1dbd
  562. #define VPP_OSD_VSC_PHASE_STEP 0x1dc0
  563. #define VPP_OSD_VSC_INI_PHASE 0x1dc1
  564. #define VPP_OSD_VSC_CTRL0 0x1dc2
  565. #define VPP_OSD_HSC_PHASE_STEP 0x1dc3
  566. #define VPP_OSD_HSC_INI_PHASE 0x1dc4
  567. #define VPP_OSD_HSC_CTRL0 0x1dc5
  568. #define VPP_OSD_HSC_INI_PAT_CTRL 0x1dc6
  569. #define VPP_OSD_SC_DUMMY_DATA 0x1dc7
  570. #define VPP_OSD_SC_CTRL0 0x1dc8
  571. #define VPP_OSD_SCI_WH_M1 0x1dc9
  572. #define VPP_OSD_SCO_H_START_END 0x1dca
  573. #define VPP_OSD_SCO_V_START_END 0x1dcb
  574. #define VPP_OSD_SCALE_COEF_IDX 0x1dcc
  575. #define VPP_OSD_SCALE_COEF 0x1dcd
  576. #define VPP_INT_LINE_NUM 0x1dce
  577. #define VPP_WRAP_OSD1_MATRIX_COEF00_01 0x3d60
  578. #define VPP_WRAP_OSD1_MATRIX_COEF02_10 0x3d61
  579. #define VPP_WRAP_OSD1_MATRIX_COEF11_12 0x3d62
  580. #define VPP_WRAP_OSD1_MATRIX_COEF20_21 0x3d63
  581. #define VPP_WRAP_OSD1_MATRIX_COEF22 0x3d64
  582. #define VPP_WRAP_OSD1_MATRIX_COEF13_14 0x3d65
  583. #define VPP_WRAP_OSD1_MATRIX_COEF23_24 0x3d66
  584. #define VPP_WRAP_OSD1_MATRIX_COEF15_25 0x3d67
  585. #define VPP_WRAP_OSD1_MATRIX_CLIP 0x3d68
  586. #define VPP_WRAP_OSD1_MATRIX_OFFSET0_1 0x3d69
  587. #define VPP_WRAP_OSD1_MATRIX_OFFSET2 0x3d6a
  588. #define VPP_WRAP_OSD1_MATRIX_PRE_OFFSET0_1 0x3d6b
  589. #define VPP_WRAP_OSD1_MATRIX_PRE_OFFSET2 0x3d6c
  590. #define VPP_WRAP_OSD1_MATRIX_EN_CTRL 0x3d6d
  591. #define VPP_WRAP_OSD2_MATRIX_COEF00_01 0x3d70
  592. #define VPP_WRAP_OSD2_MATRIX_COEF02_10 0x3d71
  593. #define VPP_WRAP_OSD2_MATRIX_COEF11_12 0x3d72
  594. #define VPP_WRAP_OSD2_MATRIX_COEF20_21 0x3d73
  595. #define VPP_WRAP_OSD2_MATRIX_COEF22 0x3d74
  596. #define VPP_WRAP_OSD2_MATRIX_COEF13_14 0x3d75
  597. #define VPP_WRAP_OSD2_MATRIX_COEF23_24 0x3d76
  598. #define VPP_WRAP_OSD2_MATRIX_COEF15_25 0x3d77
  599. #define VPP_WRAP_OSD2_MATRIX_CLIP 0x3d78
  600. #define VPP_WRAP_OSD2_MATRIX_OFFSET0_1 0x3d79
  601. #define VPP_WRAP_OSD2_MATRIX_OFFSET2 0x3d7a
  602. #define VPP_WRAP_OSD2_MATRIX_PRE_OFFSET0_1 0x3d7b
  603. #define VPP_WRAP_OSD2_MATRIX_PRE_OFFSET2 0x3d7c
  604. #define VPP_WRAP_OSD2_MATRIX_EN_CTRL 0x3d7d
  605. #define VPP_WRAP_OSD3_MATRIX_COEF00_01 0x3db0
  606. #define VPP_WRAP_OSD3_MATRIX_COEF02_10 0x3db1
  607. #define VPP_WRAP_OSD3_MATRIX_COEF11_12 0x3db2
  608. #define VPP_WRAP_OSD3_MATRIX_COEF20_21 0x3db3
  609. #define VPP_WRAP_OSD3_MATRIX_COEF22 0x3db4
  610. #define VPP_WRAP_OSD3_MATRIX_COEF13_14 0x3db5
  611. #define VPP_WRAP_OSD3_MATRIX_COEF23_24 0x3db6
  612. #define VPP_WRAP_OSD3_MATRIX_COEF15_25 0x3db7
  613. #define VPP_WRAP_OSD3_MATRIX_CLIP 0x3db8
  614. #define VPP_WRAP_OSD3_MATRIX_OFFSET0_1 0x3db9
  615. #define VPP_WRAP_OSD3_MATRIX_OFFSET2 0x3dba
  616. #define VPP_WRAP_OSD3_MATRIX_PRE_OFFSET0_1 0x3dbb
  617. #define VPP_WRAP_OSD3_MATRIX_PRE_OFFSET2 0x3dbc
  618. #define VPP_WRAP_OSD3_MATRIX_EN_CTRL 0x3dbd
  619. /* osd1 HDR */
  620. #define OSD1_HDR2_CTRL 0x38a0
  621. #define OSD1_HDR2_CTRL_VDIN0_HDR2_TOP_EN BIT(13)
  622. #define OSD1_HDR2_CTRL_REG_ONLY_MAT BIT(16)
  623. /* osd2 scaler */
  624. #define OSD2_VSC_PHASE_STEP 0x3d00
  625. #define OSD2_VSC_INI_PHASE 0x3d01
  626. #define OSD2_VSC_CTRL0 0x3d02
  627. #define OSD2_HSC_PHASE_STEP 0x3d03
  628. #define OSD2_HSC_INI_PHASE 0x3d04
  629. #define OSD2_HSC_CTRL0 0x3d05
  630. #define OSD2_HSC_INI_PAT_CTRL 0x3d06
  631. #define OSD2_SC_DUMMY_DATA 0x3d07
  632. #define OSD2_SC_CTRL0 0x3d08
  633. #define OSD2_SCI_WH_M1 0x3d09
  634. #define OSD2_SCO_H_START_END 0x3d0a
  635. #define OSD2_SCO_V_START_END 0x3d0b
  636. #define OSD2_SCALE_COEF_IDX 0x3d18
  637. #define OSD2_SCALE_COEF 0x3d19
  638. /* osd34 scaler */
  639. #define OSD34_SCALE_COEF_IDX 0x3d1e
  640. #define OSD34_SCALE_COEF 0x3d1f
  641. #define OSD34_VSC_PHASE_STEP 0x3d20
  642. #define OSD34_VSC_INI_PHASE 0x3d21
  643. #define OSD34_VSC_CTRL0 0x3d22
  644. #define OSD34_HSC_PHASE_STEP 0x3d23
  645. #define OSD34_HSC_INI_PHASE 0x3d24
  646. #define OSD34_HSC_CTRL0 0x3d25
  647. #define OSD34_HSC_INI_PAT_CTRL 0x3d26
  648. #define OSD34_SC_DUMMY_DATA 0x3d27
  649. #define OSD34_SC_CTRL0 0x3d28
  650. #define OSD34_SCI_WH_M1 0x3d29
  651. #define OSD34_SCO_H_START_END 0x3d2a
  652. #define OSD34_SCO_V_START_END 0x3d2b
  653. /* viu2 */
  654. #define VIU2_ADDR_START 0x1e00
  655. #define VIU2_ADDR_END 0x1eff
  656. #define VIU2_SW_RESET 0x1e01
  657. #define VIU2_OSD1_CTRL_STAT 0x1e10
  658. #define VIU2_OSD1_CTRL_STAT2 0x1e2d
  659. #define VIU2_OSD1_COLOR_ADDR 0x1e11
  660. #define VIU2_OSD1_COLOR 0x1e12
  661. #define VIU2_OSD1_TCOLOR_AG0 0x1e17
  662. #define VIU2_OSD1_TCOLOR_AG1 0x1e18
  663. #define VIU2_OSD1_TCOLOR_AG2 0x1e19
  664. #define VIU2_OSD1_TCOLOR_AG3 0x1e1a
  665. #define VIU2_OSD1_BLK0_CFG_W0 0x1e1b
  666. #define VIU2_OSD1_BLK1_CFG_W0 0x1e1f
  667. #define VIU2_OSD1_BLK2_CFG_W0 0x1e23
  668. #define VIU2_OSD1_BLK3_CFG_W0 0x1e27
  669. #define VIU2_OSD1_BLK0_CFG_W1 0x1e1c
  670. #define VIU2_OSD1_BLK1_CFG_W1 0x1e20
  671. #define VIU2_OSD1_BLK2_CFG_W1 0x1e24
  672. #define VIU2_OSD1_BLK3_CFG_W1 0x1e28
  673. #define VIU2_OSD1_BLK0_CFG_W2 0x1e1d
  674. #define VIU2_OSD1_BLK1_CFG_W2 0x1e21
  675. #define VIU2_OSD1_BLK2_CFG_W2 0x1e25
  676. #define VIU2_OSD1_BLK3_CFG_W2 0x1e29
  677. #define VIU2_OSD1_BLK0_CFG_W3 0x1e1e
  678. #define VIU2_OSD1_BLK1_CFG_W3 0x1e22
  679. #define VIU2_OSD1_BLK2_CFG_W3 0x1e26
  680. #define VIU2_OSD1_BLK3_CFG_W3 0x1e2a
  681. #define VIU2_OSD1_BLK0_CFG_W4 0x1e13
  682. #define VIU2_OSD1_BLK1_CFG_W4 0x1e14
  683. #define VIU2_OSD1_BLK2_CFG_W4 0x1e15
  684. #define VIU2_OSD1_BLK3_CFG_W4 0x1e16
  685. #define VIU2_OSD1_FIFO_CTRL_STAT 0x1e2b
  686. #define VIU2_OSD1_TEST_RDDATA 0x1e2c
  687. #define VIU2_OSD1_PROT_CTRL 0x1e2e
  688. #define VIU2_OSD2_CTRL_STAT 0x1e30
  689. #define VIU2_OSD2_CTRL_STAT2 0x1e4d
  690. #define VIU2_OSD2_COLOR_ADDR 0x1e31
  691. #define VIU2_OSD2_COLOR 0x1e32
  692. #define VIU2_OSD2_HL1_H_START_END 0x1e33
  693. #define VIU2_OSD2_HL1_V_START_END 0x1e34
  694. #define VIU2_OSD2_HL2_H_START_END 0x1e35
  695. #define VIU2_OSD2_HL2_V_START_END 0x1e36
  696. #define VIU2_OSD2_TCOLOR_AG0 0x1e37
  697. #define VIU2_OSD2_TCOLOR_AG1 0x1e38
  698. #define VIU2_OSD2_TCOLOR_AG2 0x1e39
  699. #define VIU2_OSD2_TCOLOR_AG3 0x1e3a
  700. #define VIU2_OSD2_BLK0_CFG_W0 0x1e3b
  701. #define VIU2_OSD2_BLK1_CFG_W0 0x1e3f
  702. #define VIU2_OSD2_BLK2_CFG_W0 0x1e43
  703. #define VIU2_OSD2_BLK3_CFG_W0 0x1e47
  704. #define VIU2_OSD2_BLK0_CFG_W1 0x1e3c
  705. #define VIU2_OSD2_BLK1_CFG_W1 0x1e40
  706. #define VIU2_OSD2_BLK2_CFG_W1 0x1e44
  707. #define VIU2_OSD2_BLK3_CFG_W1 0x1e48
  708. #define VIU2_OSD2_BLK0_CFG_W2 0x1e3d
  709. #define VIU2_OSD2_BLK1_CFG_W2 0x1e41
  710. #define VIU2_OSD2_BLK2_CFG_W2 0x1e45
  711. #define VIU2_OSD2_BLK3_CFG_W2 0x1e49
  712. #define VIU2_OSD2_BLK0_CFG_W3 0x1e3e
  713. #define VIU2_OSD2_BLK1_CFG_W3 0x1e42
  714. #define VIU2_OSD2_BLK2_CFG_W3 0x1e46
  715. #define VIU2_OSD2_BLK3_CFG_W3 0x1e4a
  716. #define VIU2_OSD2_BLK0_CFG_W4 0x1e64
  717. #define VIU2_OSD2_BLK1_CFG_W4 0x1e65
  718. #define VIU2_OSD2_BLK2_CFG_W4 0x1e66
  719. #define VIU2_OSD2_BLK3_CFG_W4 0x1e67
  720. #define VIU2_OSD2_FIFO_CTRL_STAT 0x1e4b
  721. #define VIU2_OSD2_TEST_RDDATA 0x1e4c
  722. #define VIU2_OSD2_PROT_CTRL 0x1e4e
  723. #define VIU2_VD1_IF0_GEN_REG 0x1e50
  724. #define VIU2_VD1_IF0_CANVAS0 0x1e51
  725. #define VIU2_VD1_IF0_CANVAS1 0x1e52
  726. #define VIU2_VD1_IF0_LUMA_X0 0x1e53
  727. #define VIU2_VD1_IF0_LUMA_Y0 0x1e54
  728. #define VIU2_VD1_IF0_CHROMA_X0 0x1e55
  729. #define VIU2_VD1_IF0_CHROMA_Y0 0x1e56
  730. #define VIU2_VD1_IF0_LUMA_X1 0x1e57
  731. #define VIU2_VD1_IF0_LUMA_Y1 0x1e58
  732. #define VIU2_VD1_IF0_CHROMA_X1 0x1e59
  733. #define VIU2_VD1_IF0_CHROMA_Y1 0x1e5a
  734. #define VIU2_VD1_IF0_RPT_LOOP 0x1e5b
  735. #define VIU2_VD1_IF0_LUMA0_RPT_PAT 0x1e5c
  736. #define VIU2_VD1_IF0_CHROMA0_RPT_PAT 0x1e5d
  737. #define VIU2_VD1_IF0_LUMA1_RPT_PAT 0x1e5e
  738. #define VIU2_VD1_IF0_CHROMA1_RPT_PAT 0x1e5f
  739. #define VIU2_VD1_IF0_LUMA_PSEL 0x1e60
  740. #define VIU2_VD1_IF0_CHROMA_PSEL 0x1e61
  741. #define VIU2_VD1_IF0_DUMMY_PIXEL 0x1e62
  742. #define VIU2_VD1_IF0_LUMA_FIFO_SIZE 0x1e63
  743. #define VIU2_VD1_IF0_RANGE_MAP_Y 0x1e6a
  744. #define VIU2_VD1_IF0_RANGE_MAP_CB 0x1e6b
  745. #define VIU2_VD1_IF0_RANGE_MAP_CR 0x1e6c
  746. #define VIU2_VD1_IF0_GEN_REG2 0x1e6d
  747. #define VIU2_VD1_IF0_PROT_CNTL 0x1e6e
  748. #define VIU2_VD1_FMT_CTRL 0x1e68
  749. #define VIU2_VD1_FMT_W 0x1e69
  750. /* encode */
  751. #define ENCP_VFIFO2VD_CTL 0x1b58
  752. #define ENCP_VFIFO2VD_PIXEL_START 0x1b59
  753. #define ENCP_VFIFO2VD_PIXEL_END 0x1b5a
  754. #define ENCP_VFIFO2VD_LINE_TOP_START 0x1b5b
  755. #define ENCP_VFIFO2VD_LINE_TOP_END 0x1b5c
  756. #define ENCP_VFIFO2VD_LINE_BOT_START 0x1b5d
  757. #define ENCP_VFIFO2VD_LINE_BOT_END 0x1b5e
  758. #define VENC_SYNC_ROUTE 0x1b60
  759. #define VENC_VIDEO_EXSRC 0x1b61
  760. #define VENC_DVI_SETTING 0x1b62
  761. #define VENC_C656_CTRL 0x1b63
  762. #define VENC_UPSAMPLE_CTRL0 0x1b64
  763. #define VENC_UPSAMPLE_CTRL1 0x1b65
  764. #define VENC_UPSAMPLE_CTRL2 0x1b66
  765. #define VENC_UPSAMPLE_CTRL_F0_2_CLK_RATIO BIT(0)
  766. #define VENC_UPSAMPLE_CTRL_F1_EN BIT(5)
  767. #define VENC_UPSAMPLE_CTRL_F1_UPSAMPLE_EN BIT(6)
  768. #define VENC_UPSAMPLE_CTRL_INTERLACE_HIGH_LUMA (0x0 << 12)
  769. #define VENC_UPSAMPLE_CTRL_CVBS (0x1 << 12)
  770. #define VENC_UPSAMPLE_CTRL_S_VIDEO_LUMA (0x2 << 12)
  771. #define VENC_UPSAMPLE_CTRL_S_VIDEO_CHROMA (0x3 << 12)
  772. #define VENC_UPSAMPLE_CTRL_INTERLACE_PB (0x4 << 12)
  773. #define VENC_UPSAMPLE_CTRL_INTERLACE_PR (0x5 << 12)
  774. #define VENC_UPSAMPLE_CTRL_INTERLACE_R (0x6 << 12)
  775. #define VENC_UPSAMPLE_CTRL_INTERLACE_G (0x7 << 12)
  776. #define VENC_UPSAMPLE_CTRL_INTERLACE_B (0x8 << 12)
  777. #define VENC_UPSAMPLE_CTRL_PROGRESSIVE_Y (0x9 << 12)
  778. #define VENC_UPSAMPLE_CTRL_PROGRESSIVE_PB (0xa << 12)
  779. #define VENC_UPSAMPLE_CTRL_PROGRESSIVE_PR (0xb << 12)
  780. #define VENC_UPSAMPLE_CTRL_PROGRESSIVE_R (0xc << 12)
  781. #define VENC_UPSAMPLE_CTRL_PROGRESSIVE_G (0xd << 12)
  782. #define VENC_UPSAMPLE_CTRL_PROGRESSIVE_B (0xe << 12)
  783. #define VENC_UPSAMPLE_CTRL_VDAC_TEST_VALUE (0xf << 12)
  784. #define TCON_INVERT_CTL 0x1b67
  785. #define VENC_VIDEO_PROG_MODE 0x1b68
  786. #define VENC_ENCI_LINE 0x1b69
  787. #define VENC_ENCI_PIXEL 0x1b6a
  788. #define VENC_ENCP_LINE 0x1b6b
  789. #define VENC_ENCP_PIXEL 0x1b6c
  790. #define VENC_STATA 0x1b6d
  791. #define VENC_INTCTRL 0x1b6e
  792. #define VENC_INTCTRL_ENCI_LNRST_INT_EN BIT(1)
  793. #define VENC_INTCTRL_ENCP_LNRST_INT_EN BIT(9)
  794. #define VENC_INTFLAG 0x1b6f
  795. #define VENC_VIDEO_TST_EN 0x1b70
  796. #define VENC_VIDEO_TST_MDSEL 0x1b71
  797. #define VENC_VIDEO_TST_Y 0x1b72
  798. #define VENC_VIDEO_TST_CB 0x1b73
  799. #define VENC_VIDEO_TST_CR 0x1b74
  800. #define VENC_VIDEO_TST_CLRBAR_STRT 0x1b75
  801. #define VENC_VIDEO_TST_CLRBAR_WIDTH 0x1b76
  802. #define VENC_VIDEO_TST_VDCNT_STSET 0x1b77
  803. #define VENC_VDAC_DACSEL0 0x1b78
  804. #define VENC_VDAC_SEL_ATV_DMD BIT(5)
  805. #define VENC_VDAC_DACSEL1 0x1b79
  806. #define VENC_VDAC_DACSEL2 0x1b7a
  807. #define VENC_VDAC_DACSEL3 0x1b7b
  808. #define VENC_VDAC_DACSEL4 0x1b7c
  809. #define VENC_VDAC_DACSEL5 0x1b7d
  810. #define VENC_VDAC_SETTING 0x1b7e
  811. #define VENC_VDAC_TST_VAL 0x1b7f
  812. #define VENC_VDAC_DAC0_GAINCTRL 0x1bf0
  813. #define VENC_VDAC_DAC0_OFFSET 0x1bf1
  814. #define VENC_VDAC_DAC1_GAINCTRL 0x1bf2
  815. #define VENC_VDAC_DAC1_OFFSET 0x1bf3
  816. #define VENC_VDAC_DAC2_GAINCTRL 0x1bf4
  817. #define VENC_VDAC_DAC2_OFFSET 0x1bf5
  818. #define VENC_VDAC_DAC3_GAINCTRL 0x1bf6
  819. #define VENC_VDAC_DAC3_OFFSET 0x1bf7
  820. #define VENC_VDAC_DAC4_GAINCTRL 0x1bf8
  821. #define VENC_VDAC_DAC4_OFFSET 0x1bf9
  822. #define VENC_VDAC_DAC5_GAINCTRL 0x1bfa
  823. #define VENC_VDAC_DAC5_OFFSET 0x1bfb
  824. #define VENC_VDAC_FIFO_CTRL 0x1bfc
  825. #define VENC_VDAC_FIFO_EN_ENCI_ENABLE BIT(13)
  826. #define ENCL_TCON_INVERT_CTL 0x1bfd
  827. #define ENCP_VIDEO_EN 0x1b80
  828. #define ENCP_VIDEO_SYNC_MODE 0x1b81
  829. #define ENCP_MACV_EN 0x1b82
  830. #define ENCP_VIDEO_Y_SCL 0x1b83
  831. #define ENCP_VIDEO_PB_SCL 0x1b84
  832. #define ENCP_VIDEO_PR_SCL 0x1b85
  833. #define ENCP_VIDEO_SYNC_SCL 0x1b86
  834. #define ENCP_VIDEO_MACV_SCL 0x1b87
  835. #define ENCP_VIDEO_Y_OFFST 0x1b88
  836. #define ENCP_VIDEO_PB_OFFST 0x1b89
  837. #define ENCP_VIDEO_PR_OFFST 0x1b8a
  838. #define ENCP_VIDEO_SYNC_OFFST 0x1b8b
  839. #define ENCP_VIDEO_MACV_OFFST 0x1b8c
  840. #define ENCP_VIDEO_MODE 0x1b8d
  841. #define ENCP_VIDEO_MODE_DE_V_HIGH BIT(14)
  842. #define ENCP_VIDEO_MODE_ADV 0x1b8e
  843. #define ENCP_DBG_PX_RST 0x1b90
  844. #define ENCP_DBG_LN_RST 0x1b91
  845. #define ENCP_DBG_PX_INT 0x1b92
  846. #define ENCP_DBG_LN_INT 0x1b93
  847. #define ENCP_VIDEO_YFP1_HTIME 0x1b94
  848. #define ENCP_VIDEO_YFP2_HTIME 0x1b95
  849. #define ENCP_VIDEO_YC_DLY 0x1b96
  850. #define ENCP_VIDEO_MAX_PXCNT 0x1b97
  851. #define ENCP_VIDEO_HSPULS_BEGIN 0x1b98
  852. #define ENCP_VIDEO_HSPULS_END 0x1b99
  853. #define ENCP_VIDEO_HSPULS_SWITCH 0x1b9a
  854. #define ENCP_VIDEO_VSPULS_BEGIN 0x1b9b
  855. #define ENCP_VIDEO_VSPULS_END 0x1b9c
  856. #define ENCP_VIDEO_VSPULS_BLINE 0x1b9d
  857. #define ENCP_VIDEO_VSPULS_ELINE 0x1b9e
  858. #define ENCP_VIDEO_EQPULS_BEGIN 0x1b9f
  859. #define ENCP_VIDEO_EQPULS_END 0x1ba0
  860. #define ENCP_VIDEO_EQPULS_BLINE 0x1ba1
  861. #define ENCP_VIDEO_EQPULS_ELINE 0x1ba2
  862. #define ENCP_VIDEO_HAVON_END 0x1ba3
  863. #define ENCP_VIDEO_HAVON_BEGIN 0x1ba4
  864. #define ENCP_VIDEO_VAVON_ELINE 0x1baf
  865. #define ENCP_VIDEO_VAVON_BLINE 0x1ba6
  866. #define ENCP_VIDEO_HSO_BEGIN 0x1ba7
  867. #define ENCP_VIDEO_HSO_END 0x1ba8
  868. #define ENCP_VIDEO_VSO_BEGIN 0x1ba9
  869. #define ENCP_VIDEO_VSO_END 0x1baa
  870. #define ENCP_VIDEO_VSO_BLINE 0x1bab
  871. #define ENCP_VIDEO_VSO_ELINE 0x1bac
  872. #define ENCP_VIDEO_SYNC_WAVE_CURVE 0x1bad
  873. #define ENCP_VIDEO_MAX_LNCNT 0x1bae
  874. #define ENCP_VIDEO_SY_VAL 0x1bb0
  875. #define ENCP_VIDEO_SY2_VAL 0x1bb1
  876. #define ENCP_VIDEO_BLANKY_VAL 0x1bb2
  877. #define ENCP_VIDEO_BLANKPB_VAL 0x1bb3
  878. #define ENCP_VIDEO_BLANKPR_VAL 0x1bb4
  879. #define ENCP_VIDEO_HOFFST 0x1bb5
  880. #define ENCP_VIDEO_VOFFST 0x1bb6
  881. #define ENCP_VIDEO_RGB_CTRL 0x1bb7
  882. #define ENCP_VIDEO_FILT_CTRL 0x1bb8
  883. #define ENCP_VIDEO_OFLD_VPEQ_OFST 0x1bb9
  884. #define ENCP_VIDEO_OFLD_VOAV_OFST 0x1bba
  885. #define ENCP_VIDEO_MATRIX_CB 0x1bbb
  886. #define ENCP_VIDEO_MATRIX_CR 0x1bbc
  887. #define ENCP_VIDEO_RGBIN_CTRL 0x1bbd
  888. #define ENCP_MACV_BLANKY_VAL 0x1bc0
  889. #define ENCP_MACV_MAXY_VAL 0x1bc1
  890. #define ENCP_MACV_1ST_PSSYNC_STRT 0x1bc2
  891. #define ENCP_MACV_PSSYNC_STRT 0x1bc3
  892. #define ENCP_MACV_AGC_STRT 0x1bc4
  893. #define ENCP_MACV_AGC_END 0x1bc5
  894. #define ENCP_MACV_WAVE_END 0x1bc6
  895. #define ENCP_MACV_STRTLINE 0x1bc7
  896. #define ENCP_MACV_ENDLINE 0x1bc8
  897. #define ENCP_MACV_TS_CNT_MAX_L 0x1bc9
  898. #define ENCP_MACV_TS_CNT_MAX_H 0x1bca
  899. #define ENCP_MACV_TIME_DOWN 0x1bcb
  900. #define ENCP_MACV_TIME_LO 0x1bcc
  901. #define ENCP_MACV_TIME_UP 0x1bcd
  902. #define ENCP_MACV_TIME_RST 0x1bce
  903. #define ENCP_VBI_CTRL 0x1bd0
  904. #define ENCP_VBI_SETTING 0x1bd1
  905. #define ENCP_VBI_BEGIN 0x1bd2
  906. #define ENCP_VBI_WIDTH 0x1bd3
  907. #define ENCP_VBI_HVAL 0x1bd4
  908. #define ENCP_VBI_DATA0 0x1bd5
  909. #define ENCP_VBI_DATA1 0x1bd6
  910. #define C656_HS_ST 0x1be0
  911. #define C656_HS_ED 0x1be1
  912. #define C656_VS_LNST_E 0x1be2
  913. #define C656_VS_LNST_O 0x1be3
  914. #define C656_VS_LNED_E 0x1be4
  915. #define C656_VS_LNED_O 0x1be5
  916. #define C656_FS_LNST 0x1be6
  917. #define C656_FS_LNED 0x1be7
  918. #define ENCI_VIDEO_MODE 0x1b00
  919. #define ENCI_VIDEO_MODE_ADV 0x1b01
  920. #define ENCI_VIDEO_MODE_ADV_DMXMD(val) (val & 0x3)
  921. #define ENCI_VIDEO_MODE_ADV_VBICTL_LINE_17_22 BIT(2)
  922. #define ENCI_VIDEO_MODE_ADV_YBW_MEDIUM (0 << 4)
  923. #define ENCI_VIDEO_MODE_ADV_YBW_LOW (0x1 << 4)
  924. #define ENCI_VIDEO_MODE_ADV_YBW_HIGH (0x2 << 4)
  925. #define ENCI_VIDEO_FSC_ADJ 0x1b02
  926. #define ENCI_VIDEO_BRIGHT 0x1b03
  927. #define ENCI_VIDEO_CONT 0x1b04
  928. #define ENCI_VIDEO_SAT 0x1b05
  929. #define ENCI_VIDEO_HUE 0x1b06
  930. #define ENCI_VIDEO_SCH 0x1b07
  931. #define ENCI_SYNC_MODE 0x1b08
  932. #define ENCI_SYNC_CTRL 0x1b09
  933. #define ENCI_SYNC_HSO_BEGIN 0x1b0a
  934. #define ENCI_SYNC_HSO_END 0x1b0b
  935. #define ENCI_SYNC_VSO_EVN 0x1b0c
  936. #define ENCI_SYNC_VSO_ODD 0x1b0d
  937. #define ENCI_SYNC_VSO_EVNLN 0x1b0e
  938. #define ENCI_SYNC_VSO_ODDLN 0x1b0f
  939. #define ENCI_SYNC_HOFFST 0x1b10
  940. #define ENCI_SYNC_VOFFST 0x1b11
  941. #define ENCI_SYNC_ADJ 0x1b12
  942. #define ENCI_RGB_SETTING 0x1b13
  943. #define ENCI_DE_H_BEGIN 0x1b16
  944. #define ENCI_DE_H_END 0x1b17
  945. #define ENCI_DE_V_BEGIN_EVEN 0x1b18
  946. #define ENCI_DE_V_END_EVEN 0x1b19
  947. #define ENCI_DE_V_BEGIN_ODD 0x1b1a
  948. #define ENCI_DE_V_END_ODD 0x1b1b
  949. #define ENCI_VBI_SETTING 0x1b20
  950. #define ENCI_VBI_CCDT_EVN 0x1b21
  951. #define ENCI_VBI_CCDT_ODD 0x1b22
  952. #define ENCI_VBI_CC525_LN 0x1b23
  953. #define ENCI_VBI_CC625_LN 0x1b24
  954. #define ENCI_VBI_WSSDT 0x1b25
  955. #define ENCI_VBI_WSS_LN 0x1b26
  956. #define ENCI_VBI_CGMSDT_L 0x1b27
  957. #define ENCI_VBI_CGMSDT_H 0x1b28
  958. #define ENCI_VBI_CGMS_LN 0x1b29
  959. #define ENCI_VBI_TTX_HTIME 0x1b2a
  960. #define ENCI_VBI_TTX_LN 0x1b2b
  961. #define ENCI_VBI_TTXDT0 0x1b2c
  962. #define ENCI_VBI_TTXDT1 0x1b2d
  963. #define ENCI_VBI_TTXDT2 0x1b2e
  964. #define ENCI_VBI_TTXDT3 0x1b2f
  965. #define ENCI_MACV_N0 0x1b30
  966. #define ENCI_MACV_N1 0x1b31
  967. #define ENCI_MACV_N2 0x1b32
  968. #define ENCI_MACV_N3 0x1b33
  969. #define ENCI_MACV_N4 0x1b34
  970. #define ENCI_MACV_N5 0x1b35
  971. #define ENCI_MACV_N6 0x1b36
  972. #define ENCI_MACV_N7 0x1b37
  973. #define ENCI_MACV_N8 0x1b38
  974. #define ENCI_MACV_N9 0x1b39
  975. #define ENCI_MACV_N10 0x1b3a
  976. #define ENCI_MACV_N11 0x1b3b
  977. #define ENCI_MACV_N12 0x1b3c
  978. #define ENCI_MACV_N13 0x1b3d
  979. #define ENCI_MACV_N14 0x1b3e
  980. #define ENCI_MACV_N15 0x1b3f
  981. #define ENCI_MACV_N16 0x1b40
  982. #define ENCI_MACV_N17 0x1b41
  983. #define ENCI_MACV_N18 0x1b42
  984. #define ENCI_MACV_N19 0x1b43
  985. #define ENCI_MACV_N20 0x1b44
  986. #define ENCI_MACV_N21 0x1b45
  987. #define ENCI_MACV_N22 0x1b46
  988. #define ENCI_DBG_PX_RST 0x1b48
  989. #define ENCI_DBG_FLDLN_RST 0x1b49
  990. #define ENCI_DBG_PX_INT 0x1b4a
  991. #define ENCI_DBG_FLDLN_INT 0x1b4b
  992. #define ENCI_DBG_MAXPX 0x1b4c
  993. #define ENCI_DBG_MAXLN 0x1b4d
  994. #define ENCI_MACV_MAX_AMP 0x1b50
  995. #define ENCI_MACV_MAX_AMP_ENABLE_CHANGE BIT(15)
  996. #define ENCI_MACV_MAX_AMP_VAL(val) (val & 0x83ff)
  997. #define ENCI_MACV_PULSE_LO 0x1b51
  998. #define ENCI_MACV_PULSE_HI 0x1b52
  999. #define ENCI_MACV_BKP_MAX 0x1b53
  1000. #define ENCI_CFILT_CTRL 0x1b54
  1001. #define ENCI_CFILT_CMPT_SEL_HIGH BIT(1)
  1002. #define ENCI_CFILT7 0x1b55
  1003. #define ENCI_YC_DELAY 0x1b56
  1004. #define ENCI_VIDEO_EN 0x1b57
  1005. #define ENCI_VIDEO_EN_ENABLE BIT(0)
  1006. #define ENCI_DVI_HSO_BEGIN 0x1c00
  1007. #define ENCI_DVI_HSO_END 0x1c01
  1008. #define ENCI_DVI_VSO_BLINE_EVN 0x1c02
  1009. #define ENCI_DVI_VSO_BLINE_ODD 0x1c03
  1010. #define ENCI_DVI_VSO_ELINE_EVN 0x1c04
  1011. #define ENCI_DVI_VSO_ELINE_ODD 0x1c05
  1012. #define ENCI_DVI_VSO_BEGIN_EVN 0x1c06
  1013. #define ENCI_DVI_VSO_BEGIN_ODD 0x1c07
  1014. #define ENCI_DVI_VSO_END_EVN 0x1c08
  1015. #define ENCI_DVI_VSO_END_ODD 0x1c09
  1016. #define ENCI_CFILT_CTRL2 0x1c0a
  1017. #define ENCI_CFILT_CMPT_CR_DLY(delay) (delay & 0xf)
  1018. #define ENCI_CFILT_CMPT_CB_DLY(delay) ((delay & 0xf) << 4)
  1019. #define ENCI_CFILT_CVBS_CR_DLY(delay) ((delay & 0xf) << 8)
  1020. #define ENCI_CFILT_CVBS_CB_DLY(delay) ((delay & 0xf) << 12)
  1021. #define ENCI_DACSEL_0 0x1c0b
  1022. #define ENCI_DACSEL_1 0x1c0c
  1023. #define ENCP_DACSEL_0 0x1c0d
  1024. #define ENCP_DACSEL_1 0x1c0e
  1025. #define ENCP_MAX_LINE_SWITCH_POINT 0x1c0f
  1026. #define ENCI_TST_EN 0x1c10
  1027. #define ENCI_TST_MDSEL 0x1c11
  1028. #define ENCI_TST_Y 0x1c12
  1029. #define ENCI_TST_CB 0x1c13
  1030. #define ENCI_TST_CR 0x1c14
  1031. #define ENCI_TST_CLRBAR_STRT 0x1c15
  1032. #define ENCI_TST_CLRBAR_WIDTH 0x1c16
  1033. #define ENCI_TST_VDCNT_STSET 0x1c17
  1034. #define ENCI_VFIFO2VD_CTL 0x1c18
  1035. #define ENCI_VFIFO2VD_CTL_ENABLE BIT(0)
  1036. #define ENCI_VFIFO2VD_CTL_VD_SEL(val) ((val & 0xff) << 8)
  1037. #define ENCI_VFIFO2VD_PIXEL_START 0x1c19
  1038. #define ENCI_VFIFO2VD_PIXEL_END 0x1c1a
  1039. #define ENCI_VFIFO2VD_LINE_TOP_START 0x1c1b
  1040. #define ENCI_VFIFO2VD_LINE_TOP_END 0x1c1c
  1041. #define ENCI_VFIFO2VD_LINE_BOT_START 0x1c1d
  1042. #define ENCI_VFIFO2VD_LINE_BOT_END 0x1c1e
  1043. #define ENCI_VFIFO2VD_CTL2 0x1c1f
  1044. #define ENCT_VFIFO2VD_CTL 0x1c20
  1045. #define ENCT_VFIFO2VD_PIXEL_START 0x1c21
  1046. #define ENCT_VFIFO2VD_PIXEL_END 0x1c22
  1047. #define ENCT_VFIFO2VD_LINE_TOP_START 0x1c23
  1048. #define ENCT_VFIFO2VD_LINE_TOP_END 0x1c24
  1049. #define ENCT_VFIFO2VD_LINE_BOT_START 0x1c25
  1050. #define ENCT_VFIFO2VD_LINE_BOT_END 0x1c26
  1051. #define ENCT_VFIFO2VD_CTL2 0x1c27
  1052. #define ENCT_TST_EN 0x1c28
  1053. #define ENCT_TST_MDSEL 0x1c29
  1054. #define ENCT_TST_Y 0x1c2a
  1055. #define ENCT_TST_CB 0x1c2b
  1056. #define ENCT_TST_CR 0x1c2c
  1057. #define ENCT_TST_CLRBAR_STRT 0x1c2d
  1058. #define ENCT_TST_CLRBAR_WIDTH 0x1c2e
  1059. #define ENCT_TST_VDCNT_STSET 0x1c2f
  1060. #define ENCP_DVI_HSO_BEGIN 0x1c30
  1061. #define ENCP_DVI_HSO_END 0x1c31
  1062. #define ENCP_DVI_VSO_BLINE_EVN 0x1c32
  1063. #define ENCP_DVI_VSO_BLINE_ODD 0x1c33
  1064. #define ENCP_DVI_VSO_ELINE_EVN 0x1c34
  1065. #define ENCP_DVI_VSO_ELINE_ODD 0x1c35
  1066. #define ENCP_DVI_VSO_BEGIN_EVN 0x1c36
  1067. #define ENCP_DVI_VSO_BEGIN_ODD 0x1c37
  1068. #define ENCP_DVI_VSO_END_EVN 0x1c38
  1069. #define ENCP_DVI_VSO_END_ODD 0x1c39
  1070. #define ENCP_DE_H_BEGIN 0x1c3a
  1071. #define ENCP_DE_H_END 0x1c3b
  1072. #define ENCP_DE_V_BEGIN_EVEN 0x1c3c
  1073. #define ENCP_DE_V_END_EVEN 0x1c3d
  1074. #define ENCP_DE_V_BEGIN_ODD 0x1c3e
  1075. #define ENCP_DE_V_END_ODD 0x1c3f
  1076. #define ENCI_SYNC_LINE_LENGTH 0x1c40
  1077. #define ENCI_SYNC_PIXEL_EN 0x1c41
  1078. #define ENCI_SYNC_TO_LINE_EN 0x1c42
  1079. #define ENCI_SYNC_TO_PIXEL 0x1c43
  1080. #define ENCP_SYNC_LINE_LENGTH 0x1c44
  1081. #define ENCP_SYNC_PIXEL_EN 0x1c45
  1082. #define ENCP_SYNC_TO_LINE_EN 0x1c46
  1083. #define ENCP_SYNC_TO_PIXEL 0x1c47
  1084. #define ENCT_SYNC_LINE_LENGTH 0x1c48
  1085. #define ENCT_SYNC_PIXEL_EN 0x1c49
  1086. #define ENCT_SYNC_TO_LINE_EN 0x1c4a
  1087. #define ENCT_SYNC_TO_PIXEL 0x1c4b
  1088. #define ENCL_SYNC_LINE_LENGTH 0x1c4c
  1089. #define ENCL_SYNC_PIXEL_EN 0x1c4d
  1090. #define ENCL_SYNC_TO_LINE_EN 0x1c4e
  1091. #define ENCL_SYNC_TO_PIXEL 0x1c4f
  1092. #define ENCP_VFIFO2VD_CTL2 0x1c50
  1093. #define VENC_DVI_SETTING_MORE 0x1c51
  1094. #define VENC_VDAC_DAC4_FILT_CTRL0 0x1c54
  1095. #define VENC_VDAC_DAC4_FILT_CTRL1 0x1c55
  1096. #define VENC_VDAC_DAC5_FILT_CTRL0 0x1c56
  1097. #define VENC_VDAC_DAC5_FILT_CTRL1 0x1c57
  1098. #define VENC_VDAC_DAC0_FILT_CTRL0 0x1c58
  1099. #define VENC_VDAC_DAC0_FILT_CTRL0_EN BIT(0)
  1100. #define VENC_VDAC_DAC0_FILT_CTRL1 0x1c59
  1101. #define VENC_VDAC_DAC1_FILT_CTRL0 0x1c5a
  1102. #define VENC_VDAC_DAC1_FILT_CTRL1 0x1c5b
  1103. #define VENC_VDAC_DAC2_FILT_CTRL0 0x1c5c
  1104. #define VENC_VDAC_DAC2_FILT_CTRL1 0x1c5d
  1105. #define VENC_VDAC_DAC3_FILT_CTRL0 0x1c5e
  1106. #define VENC_VDAC_DAC3_FILT_CTRL1 0x1c5f
  1107. #define ENCT_VIDEO_EN 0x1c60
  1108. #define ENCT_VIDEO_Y_SCL 0x1c61
  1109. #define ENCT_VIDEO_PB_SCL 0x1c62
  1110. #define ENCT_VIDEO_PR_SCL 0x1c63
  1111. #define ENCT_VIDEO_Y_OFFST 0x1c64
  1112. #define ENCT_VIDEO_PB_OFFST 0x1c65
  1113. #define ENCT_VIDEO_PR_OFFST 0x1c66
  1114. #define ENCT_VIDEO_MODE 0x1c67
  1115. #define ENCT_VIDEO_MODE_ADV 0x1c68
  1116. #define ENCT_DBG_PX_RST 0x1c69
  1117. #define ENCT_DBG_LN_RST 0x1c6a
  1118. #define ENCT_DBG_PX_INT 0x1c6b
  1119. #define ENCT_DBG_LN_INT 0x1c6c
  1120. #define ENCT_VIDEO_YFP1_HTIME 0x1c6d
  1121. #define ENCT_VIDEO_YFP2_HTIME 0x1c6e
  1122. #define ENCT_VIDEO_YC_DLY 0x1c6f
  1123. #define ENCT_VIDEO_MAX_PXCNT 0x1c70
  1124. #define ENCT_VIDEO_HAVON_END 0x1c71
  1125. #define ENCT_VIDEO_HAVON_BEGIN 0x1c72
  1126. #define ENCT_VIDEO_VAVON_ELINE 0x1c73
  1127. #define ENCT_VIDEO_VAVON_BLINE 0x1c74
  1128. #define ENCT_VIDEO_HSO_BEGIN 0x1c75
  1129. #define ENCT_VIDEO_HSO_END 0x1c76
  1130. #define ENCT_VIDEO_VSO_BEGIN 0x1c77
  1131. #define ENCT_VIDEO_VSO_END 0x1c78
  1132. #define ENCT_VIDEO_VSO_BLINE 0x1c79
  1133. #define ENCT_VIDEO_VSO_ELINE 0x1c7a
  1134. #define ENCT_VIDEO_MAX_LNCNT 0x1c7b
  1135. #define ENCT_VIDEO_BLANKY_VAL 0x1c7c
  1136. #define ENCT_VIDEO_BLANKPB_VAL 0x1c7d
  1137. #define ENCT_VIDEO_BLANKPR_VAL 0x1c7e
  1138. #define ENCT_VIDEO_HOFFST 0x1c7f
  1139. #define ENCT_VIDEO_VOFFST 0x1c80
  1140. #define ENCT_VIDEO_RGB_CTRL 0x1c81
  1141. #define ENCT_VIDEO_FILT_CTRL 0x1c82
  1142. #define ENCT_VIDEO_OFLD_VPEQ_OFST 0x1c83
  1143. #define ENCT_VIDEO_OFLD_VOAV_OFST 0x1c84
  1144. #define ENCT_VIDEO_MATRIX_CB 0x1c85
  1145. #define ENCT_VIDEO_MATRIX_CR 0x1c86
  1146. #define ENCT_VIDEO_RGBIN_CTRL 0x1c87
  1147. #define ENCT_MAX_LINE_SWITCH_POINT 0x1c88
  1148. #define ENCT_DACSEL_0 0x1c89
  1149. #define ENCT_DACSEL_1 0x1c8a
  1150. #define ENCL_VFIFO2VD_CTL 0x1c90
  1151. #define ENCL_VFIFO2VD_PIXEL_START 0x1c91
  1152. #define ENCL_VFIFO2VD_PIXEL_END 0x1c92
  1153. #define ENCL_VFIFO2VD_LINE_TOP_START 0x1c93
  1154. #define ENCL_VFIFO2VD_LINE_TOP_END 0x1c94
  1155. #define ENCL_VFIFO2VD_LINE_BOT_START 0x1c95
  1156. #define ENCL_VFIFO2VD_LINE_BOT_END 0x1c96
  1157. #define ENCL_VFIFO2VD_CTL2 0x1c97
  1158. #define ENCL_TST_EN 0x1c98
  1159. #define ENCL_TST_MDSEL 0x1c99
  1160. #define ENCL_TST_Y 0x1c9a
  1161. #define ENCL_TST_CB 0x1c9b
  1162. #define ENCL_TST_CR 0x1c9c
  1163. #define ENCL_TST_CLRBAR_STRT 0x1c9d
  1164. #define ENCL_TST_CLRBAR_WIDTH 0x1c9e
  1165. #define ENCL_TST_VDCNT_STSET 0x1c9f
  1166. #define ENCL_VIDEO_EN 0x1ca0
  1167. #define ENCL_VIDEO_Y_SCL 0x1ca1
  1168. #define ENCL_VIDEO_PB_SCL 0x1ca2
  1169. #define ENCL_VIDEO_PR_SCL 0x1ca3
  1170. #define ENCL_VIDEO_Y_OFFST 0x1ca4
  1171. #define ENCL_VIDEO_PB_OFFST 0x1ca5
  1172. #define ENCL_VIDEO_PR_OFFST 0x1ca6
  1173. #define ENCL_VIDEO_MODE 0x1ca7
  1174. #define ENCL_PX_LN_CNT_SHADOW_EN BIT(15)
  1175. #define ENCL_VIDEO_MODE_ADV 0x1ca8
  1176. #define ENCL_VIDEO_MODE_ADV_VFIFO_EN BIT(3)
  1177. #define ENCL_VIDEO_MODE_ADV_GAIN_HDTV BIT(4)
  1178. #define ENCL_SEL_GAMMA_RGB_IN BIT(10)
  1179. #define ENCL_DBG_PX_RST 0x1ca9
  1180. #define ENCL_DBG_LN_RST 0x1caa
  1181. #define ENCL_DBG_PX_INT 0x1cab
  1182. #define ENCL_DBG_LN_INT 0x1cac
  1183. #define ENCL_VIDEO_YFP1_HTIME 0x1cad
  1184. #define ENCL_VIDEO_YFP2_HTIME 0x1cae
  1185. #define ENCL_VIDEO_YC_DLY 0x1caf
  1186. #define ENCL_VIDEO_MAX_PXCNT 0x1cb0
  1187. #define ENCL_VIDEO_HAVON_END 0x1cb1
  1188. #define ENCL_VIDEO_HAVON_BEGIN 0x1cb2
  1189. #define ENCL_VIDEO_VAVON_ELINE 0x1cb3
  1190. #define ENCL_VIDEO_VAVON_BLINE 0x1cb4
  1191. #define ENCL_VIDEO_HSO_BEGIN 0x1cb5
  1192. #define ENCL_VIDEO_HSO_END 0x1cb6
  1193. #define ENCL_VIDEO_VSO_BEGIN 0x1cb7
  1194. #define ENCL_VIDEO_VSO_END 0x1cb8
  1195. #define ENCL_VIDEO_VSO_BLINE 0x1cb9
  1196. #define ENCL_VIDEO_VSO_ELINE 0x1cba
  1197. #define ENCL_VIDEO_MAX_LNCNT 0x1cbb
  1198. #define ENCL_VIDEO_BLANKY_VAL 0x1cbc
  1199. #define ENCL_VIDEO_BLANKPB_VAL 0x1cbd
  1200. #define ENCL_VIDEO_BLANKPR_VAL 0x1cbe
  1201. #define ENCL_VIDEO_HOFFST 0x1cbf
  1202. #define ENCL_VIDEO_VOFFST 0x1cc0
  1203. #define ENCL_VIDEO_RGB_CTRL 0x1cc1
  1204. #define ENCL_VIDEO_FILT_CTRL 0x1cc2
  1205. #define ENCL_VIDEO_FILT_CTRL_BYPASS_FILTER BIT(12)
  1206. #define ENCL_VIDEO_OFLD_VPEQ_OFST 0x1cc3
  1207. #define ENCL_VIDEO_OFLD_VOAV_OFST 0x1cc4
  1208. #define ENCL_VIDEO_MATRIX_CB 0x1cc5
  1209. #define ENCL_VIDEO_MATRIX_CR 0x1cc6
  1210. #define ENCL_VIDEO_RGBIN_CTRL 0x1cc7
  1211. #define ENCL_VIDEO_RGBIN_RGB BIT(0)
  1212. #define ENCL_VIDEO_RGBIN_ZBLK BIT(1)
  1213. #define ENCL_MAX_LINE_SWITCH_POINT 0x1cc8
  1214. #define ENCL_DACSEL_0 0x1cc9
  1215. #define ENCL_DACSEL_1 0x1cca
  1216. #define RDMA_AHB_START_ADDR_MAN 0x1100
  1217. #define RDMA_AHB_END_ADDR_MAN 0x1101
  1218. #define RDMA_AHB_START_ADDR_1 0x1102
  1219. #define RDMA_AHB_END_ADDR_1 0x1103
  1220. #define RDMA_AHB_START_ADDR_2 0x1104
  1221. #define RDMA_AHB_END_ADDR_2 0x1105
  1222. #define RDMA_AHB_START_ADDR_3 0x1106
  1223. #define RDMA_AHB_END_ADDR_3 0x1107
  1224. #define RDMA_AHB_START_ADDR_4 0x1108
  1225. #define RDMA_AHB_END_ADDR_4 0x1109
  1226. #define RDMA_AHB_START_ADDR_5 0x110a
  1227. #define RDMA_AHB_END_ADDR_5 0x110b
  1228. #define RDMA_AHB_START_ADDR_6 0x110c
  1229. #define RDMA_AHB_END_ADDR_6 0x110d
  1230. #define RDMA_AHB_START_ADDR_7 0x110e
  1231. #define RDMA_AHB_END_ADDR_7 0x110f
  1232. #define RDMA_ACCESS_AUTO 0x1110
  1233. #define RDMA_ACCESS_TRIGGER_CHAN3 GENMASK(31, 24)
  1234. #define RDMA_ACCESS_TRIGGER_CHAN2 GENMASK(23, 16)
  1235. #define RDMA_ACCESS_TRIGGER_CHAN1 GENMASK(15, 8)
  1236. #define RDMA_ACCESS_TRIGGER_STOP 0
  1237. #define RDMA_ACCESS_TRIGGER_VSYNC 1
  1238. #define RDMA_ACCESS_TRIGGER_LINE 32
  1239. #define RDMA_ACCESS_RW_FLAG_CHAN3 BIT(7)
  1240. #define RDMA_ACCESS_RW_FLAG_CHAN2 BIT(6)
  1241. #define RDMA_ACCESS_RW_FLAG_CHAN1 BIT(5)
  1242. #define RDMA_ACCESS_ADDR_INC_CHAN3 BIT(3)
  1243. #define RDMA_ACCESS_ADDR_INC_CHAN2 BIT(2)
  1244. #define RDMA_ACCESS_ADDR_INC_CHAN1 BIT(1)
  1245. #define RDMA_ACCESS_AUTO2 0x1111
  1246. #define RDMA_ACCESS_RW_FLAG_CHAN7 BIT(7)
  1247. #define RDMA_ACCESS_RW_FLAG_CHAN6 BIT(6)
  1248. #define RDMA_ACCESS_RW_FLAG_CHAN5 BIT(5)
  1249. #define RDMA_ACCESS_RW_FLAG_CHAN4 BIT(4)
  1250. #define RDMA_ACCESS_ADDR_INC_CHAN7 BIT(3)
  1251. #define RDMA_ACCESS_ADDR_INC_CHAN6 BIT(2)
  1252. #define RDMA_ACCESS_ADDR_INC_CHAN5 BIT(1)
  1253. #define RDMA_ACCESS_ADDR_INC_CHAN4 BIT(0)
  1254. #define RDMA_ACCESS_AUTO3 0x1112
  1255. #define RDMA_ACCESS_TRIGGER_CHAN7 GENMASK(31, 24)
  1256. #define RDMA_ACCESS_TRIGGER_CHAN6 GENMASK(23, 16)
  1257. #define RDMA_ACCESS_TRIGGER_CHAN5 GENMASK(15, 8)
  1258. #define RDMA_ACCESS_TRIGGER_CHAN4 GENMASK(7, 0)
  1259. #define RDMA_ACCESS_MAN 0x1113
  1260. #define RDMA_ACCESS_MAN_RW_FLAG BIT(2)
  1261. #define RDMA_ACCESS_MAN_ADDR_INC BIT(1)
  1262. #define RDMA_ACCESS_MAN_START BIT(0)
  1263. #define RDMA_CTRL 0x1114
  1264. #define RDMA_IRQ_CLEAR_CHAN7 BIT(31)
  1265. #define RDMA_IRQ_CLEAR_CHAN6 BIT(30)
  1266. #define RDMA_IRQ_CLEAR_CHAN5 BIT(29)
  1267. #define RDMA_IRQ_CLEAR_CHAN4 BIT(28)
  1268. #define RDMA_IRQ_CLEAR_CHAN3 BIT(27)
  1269. #define RDMA_IRQ_CLEAR_CHAN2 BIT(26)
  1270. #define RDMA_IRQ_CLEAR_CHAN1 BIT(25)
  1271. #define RDMA_IRQ_CLEAR_CHAN_MAN BIT(24)
  1272. #define RDMA_DEFAULT_CONFIG (BIT(7) | BIT(6))
  1273. #define RDMA_CTRL_AHB_WR_BURST GENMASK(5, 4)
  1274. #define RDMA_CTRL_AHB_RD_BURST GENMASK(3, 2)
  1275. #define RDMA_CTRL_SW_RESET BIT(1)
  1276. #define RDMA_CTRL_FREE_CLK_EN BIT(0)
  1277. #define RDMA_STATUS 0x1115
  1278. #define RDMA_IRQ_STAT_CHAN7 BIT(31)
  1279. #define RDMA_IRQ_STAT_CHAN6 BIT(30)
  1280. #define RDMA_IRQ_STAT_CHAN5 BIT(29)
  1281. #define RDMA_IRQ_STAT_CHAN4 BIT(28)
  1282. #define RDMA_IRQ_STAT_CHAN3 BIT(27)
  1283. #define RDMA_IRQ_STAT_CHAN2 BIT(26)
  1284. #define RDMA_IRQ_STAT_CHAN1 BIT(25)
  1285. #define RDMA_IRQ_STAT_CHAN_MAN BIT(24)
  1286. #define RDMA_STATUS2 0x1116
  1287. #define RDMA_STATUS3 0x1117
  1288. #define L_GAMMA_CNTL_PORT 0x1400
  1289. #define L_GAMMA_CNTL_PORT_VCOM_POL BIT(7) /* RW */
  1290. #define L_GAMMA_CNTL_PORT_RVS_OUT BIT(6) /* RW */
  1291. #define L_GAMMA_CNTL_PORT_ADR_RDY BIT(5) /* Read Only */
  1292. #define L_GAMMA_CNTL_PORT_WR_RDY BIT(4) /* Read Only */
  1293. #define L_GAMMA_CNTL_PORT_RD_RDY BIT(3) /* Read Only */
  1294. #define L_GAMMA_CNTL_PORT_TR BIT(2) /* RW */
  1295. #define L_GAMMA_CNTL_PORT_SET BIT(1) /* RW */
  1296. #define L_GAMMA_CNTL_PORT_EN BIT(0) /* RW */
  1297. #define L_GAMMA_DATA_PORT 0x1401
  1298. #define L_GAMMA_ADDR_PORT 0x1402
  1299. #define L_GAMMA_ADDR_PORT_RD BIT(12)
  1300. #define L_GAMMA_ADDR_PORT_AUTO_INC BIT(11)
  1301. #define L_GAMMA_ADDR_PORT_SEL_R BIT(10)
  1302. #define L_GAMMA_ADDR_PORT_SEL_G BIT(9)
  1303. #define L_GAMMA_ADDR_PORT_SEL_B BIT(8)
  1304. #define L_GAMMA_ADDR_PORT_ADDR GENMASK(7, 0)
  1305. #define L_GAMMA_VCOM_HSWITCH_ADDR 0x1403
  1306. #define L_RGB_BASE_ADDR 0x1405
  1307. #define L_RGB_COEFF_ADDR 0x1406
  1308. #define L_POL_CNTL_ADDR 0x1407
  1309. #define L_DITH_CNTL_ADDR 0x1408
  1310. #define L_DITH_CNTL_DITH10_EN BIT(10)
  1311. #define L_GAMMA_PROBE_CTRL 0x1409
  1312. #define L_GAMMA_PROBE_COLOR_L 0x140a
  1313. #define L_GAMMA_PROBE_COLOR_H 0x140b
  1314. #define L_GAMMA_PROBE_HL_COLOR 0x140c
  1315. #define L_GAMMA_PROBE_POS_X 0x140d
  1316. #define L_GAMMA_PROBE_POS_Y 0x140e
  1317. #define L_STH1_HS_ADDR 0x1410
  1318. #define L_STH1_HE_ADDR 0x1411
  1319. #define L_STH1_VS_ADDR 0x1412
  1320. #define L_STH1_VE_ADDR 0x1413
  1321. #define L_STH2_HS_ADDR 0x1414
  1322. #define L_STH2_HE_ADDR 0x1415
  1323. #define L_STH2_VS_ADDR 0x1416
  1324. #define L_STH2_VE_ADDR 0x1417
  1325. #define L_OEH_HS_ADDR 0x1418
  1326. #define L_OEH_HE_ADDR 0x1419
  1327. #define L_OEH_VS_ADDR 0x141a
  1328. #define L_OEH_VE_ADDR 0x141b
  1329. #define L_VCOM_HSWITCH_ADDR 0x141c
  1330. #define L_VCOM_VS_ADDR 0x141d
  1331. #define L_VCOM_VE_ADDR 0x141e
  1332. #define L_CPV1_HS_ADDR 0x141f
  1333. #define L_CPV1_HE_ADDR 0x1420
  1334. #define L_CPV1_VS_ADDR 0x1421
  1335. #define L_CPV1_VE_ADDR 0x1422
  1336. #define L_CPV2_HS_ADDR 0x1423
  1337. #define L_CPV2_HE_ADDR 0x1424
  1338. #define L_CPV2_VS_ADDR 0x1425
  1339. #define L_CPV2_VE_ADDR 0x1426
  1340. #define L_STV1_HS_ADDR 0x1427
  1341. #define L_STV1_HE_ADDR 0x1428
  1342. #define L_STV1_VS_ADDR 0x1429
  1343. #define L_STV1_VE_ADDR 0x142a
  1344. #define L_STV2_HS_ADDR 0x142b
  1345. #define L_STV2_HE_ADDR 0x142c
  1346. #define L_STV2_VS_ADDR 0x142d
  1347. #define L_STV2_VE_ADDR 0x142e
  1348. #define L_OEV1_HS_ADDR 0x142f
  1349. #define L_OEV1_HE_ADDR 0x1430
  1350. #define L_OEV1_VS_ADDR 0x1431
  1351. #define L_OEV1_VE_ADDR 0x1432
  1352. #define L_OEV2_HS_ADDR 0x1433
  1353. #define L_OEV2_HE_ADDR 0x1434
  1354. #define L_OEV2_VS_ADDR 0x1435
  1355. #define L_OEV2_VE_ADDR 0x1436
  1356. #define L_OEV3_HS_ADDR 0x1437
  1357. #define L_OEV3_HE_ADDR 0x1438
  1358. #define L_OEV3_VS_ADDR 0x1439
  1359. #define L_OEV3_VE_ADDR 0x143a
  1360. #define L_LCD_PWR_ADDR 0x143b
  1361. #define L_LCD_PWM0_LO_ADDR 0x143c
  1362. #define L_LCD_PWM0_HI_ADDR 0x143d
  1363. #define L_LCD_PWM1_LO_ADDR 0x143e
  1364. #define L_LCD_PWM1_HI_ADDR 0x143f
  1365. #define L_INV_CNT_ADDR 0x1440
  1366. #define L_TCON_MISC_SEL_ADDR 0x1441
  1367. #define L_TCON_MISC_SEL_STV1 BIT(4)
  1368. #define L_TCON_MISC_SEL_STV2 BIT(5)
  1369. #define L_DUAL_PORT_CNTL_ADDR 0x1442
  1370. #define MLVDS_CLK_CTL1_HI 0x1443
  1371. #define MLVDS_CLK_CTL1_LO 0x1444
  1372. #define L_TCON_DOUBLE_CTL 0x1449
  1373. #define L_TCON_PATTERN_HI 0x144a
  1374. #define L_TCON_PATTERN_LO 0x144b
  1375. #define LDIM_BL_ADDR_PORT 0x144e
  1376. #define LDIM_BL_DATA_PORT 0x144f
  1377. #define L_DE_HS_ADDR 0x1451
  1378. #define L_DE_HE_ADDR 0x1452
  1379. #define L_DE_VS_ADDR 0x1453
  1380. #define L_DE_VE_ADDR 0x1454
  1381. #define L_HSYNC_HS_ADDR 0x1455
  1382. #define L_HSYNC_HE_ADDR 0x1456
  1383. #define L_HSYNC_VS_ADDR 0x1457
  1384. #define L_HSYNC_VE_ADDR 0x1458
  1385. #define L_VSYNC_HS_ADDR 0x1459
  1386. #define L_VSYNC_HE_ADDR 0x145a
  1387. #define L_VSYNC_VS_ADDR 0x145b
  1388. #define L_VSYNC_VE_ADDR 0x145c
  1389. #define L_LCD_MCU_CTL 0x145d
  1390. #define DUAL_MLVDS_CTL 0x1460
  1391. #define DUAL_MLVDS_LINE_START 0x1461
  1392. #define DUAL_MLVDS_LINE_END 0x1462
  1393. #define DUAL_MLVDS_PIXEL_W_START_L 0x1463
  1394. #define DUAL_MLVDS_PIXEL_W_END_L 0x1464
  1395. #define DUAL_MLVDS_PIXEL_W_START_R 0x1465
  1396. #define DUAL_MLVDS_PIXEL_W_END_R 0x1466
  1397. #define DUAL_MLVDS_PIXEL_R_START_L 0x1467
  1398. #define DUAL_MLVDS_PIXEL_R_CNT_L 0x1468
  1399. #define DUAL_MLVDS_PIXEL_R_START_R 0x1469
  1400. #define DUAL_MLVDS_PIXEL_R_CNT_R 0x146a
  1401. #define V_INVERSION_PIXEL 0x1470
  1402. #define V_INVERSION_LINE 0x1471
  1403. #define V_INVERSION_CONTROL 0x1472
  1404. #define MLVDS2_CONTROL 0x1474
  1405. #define MLVDS2_CONFIG_HI 0x1475
  1406. #define MLVDS2_CONFIG_LO 0x1476
  1407. #define MLVDS2_DUAL_GATE_WR_START 0x1477
  1408. #define MLVDS2_DUAL_GATE_WR_END 0x1478
  1409. #define MLVDS2_DUAL_GATE_RD_START 0x1479
  1410. #define MLVDS2_DUAL_GATE_RD_END 0x147a
  1411. #define MLVDS2_SECOND_RESET_CTL 0x147b
  1412. #define MLVDS2_DUAL_GATE_CTL_HI 0x147c
  1413. #define MLVDS2_DUAL_GATE_CTL_LO 0x147d
  1414. #define MLVDS2_RESET_CONFIG_HI 0x147e
  1415. #define MLVDS2_RESET_CONFIG_LO 0x147f
  1416. #define GAMMA_CNTL_PORT 0x1480
  1417. #define GAMMA_DATA_PORT 0x1481
  1418. #define GAMMA_ADDR_PORT 0x1482
  1419. #define GAMMA_VCOM_HSWITCH_ADDR 0x1483
  1420. #define RGB_BASE_ADDR 0x1485
  1421. #define RGB_COEFF_ADDR 0x1486
  1422. #define POL_CNTL_ADDR 0x1487
  1423. #define DITH_CNTL_ADDR 0x1488
  1424. #define GAMMA_PROBE_CTRL 0x1489
  1425. #define GAMMA_PROBE_COLOR_L 0x148a
  1426. #define GAMMA_PROBE_COLOR_H 0x148b
  1427. #define GAMMA_PROBE_HL_COLOR 0x148c
  1428. #define GAMMA_PROBE_POS_X 0x148d
  1429. #define GAMMA_PROBE_POS_Y 0x148e
  1430. #define STH1_HS_ADDR 0x1490
  1431. #define STH1_HE_ADDR 0x1491
  1432. #define STH1_VS_ADDR 0x1492
  1433. #define STH1_VE_ADDR 0x1493
  1434. #define STH2_HS_ADDR 0x1494
  1435. #define STH2_HE_ADDR 0x1495
  1436. #define STH2_VS_ADDR 0x1496
  1437. #define STH2_VE_ADDR 0x1497
  1438. #define OEH_HS_ADDR 0x1498
  1439. #define OEH_HE_ADDR 0x1499
  1440. #define OEH_VS_ADDR 0x149a
  1441. #define OEH_VE_ADDR 0x149b
  1442. #define VCOM_HSWITCH_ADDR 0x149c
  1443. #define VCOM_VS_ADDR 0x149d
  1444. #define VCOM_VE_ADDR 0x149e
  1445. #define CPV1_HS_ADDR 0x149f
  1446. #define CPV1_HE_ADDR 0x14a0
  1447. #define CPV1_VS_ADDR 0x14a1
  1448. #define CPV1_VE_ADDR 0x14a2
  1449. #define CPV2_HS_ADDR 0x14a3
  1450. #define CPV2_HE_ADDR 0x14a4
  1451. #define CPV2_VS_ADDR 0x14a5
  1452. #define CPV2_VE_ADDR 0x14a6
  1453. #define STV1_HS_ADDR 0x14a7
  1454. #define STV1_HE_ADDR 0x14a8
  1455. #define STV1_VS_ADDR 0x14a9
  1456. #define STV1_VE_ADDR 0x14aa
  1457. #define STV2_HS_ADDR 0x14ab
  1458. #define STV2_HE_ADDR 0x14ac
  1459. #define STV2_VS_ADDR 0x14ad
  1460. #define STV2_VE_ADDR 0x14ae
  1461. #define OEV1_HS_ADDR 0x14af
  1462. #define OEV1_HE_ADDR 0x14b0
  1463. #define OEV1_VS_ADDR 0x14b1
  1464. #define OEV1_VE_ADDR 0x14b2
  1465. #define OEV2_HS_ADDR 0x14b3
  1466. #define OEV2_HE_ADDR 0x14b4
  1467. #define OEV2_VS_ADDR 0x14b5
  1468. #define OEV2_VE_ADDR 0x14b6
  1469. #define OEV3_HS_ADDR 0x14b7
  1470. #define OEV3_HE_ADDR 0x14b8
  1471. #define OEV3_VS_ADDR 0x14b9
  1472. #define OEV3_VE_ADDR 0x14ba
  1473. #define LCD_PWR_ADDR 0x14bb
  1474. #define LCD_PWM0_LO_ADDR 0x14bc
  1475. #define LCD_PWM0_HI_ADDR 0x14bd
  1476. #define LCD_PWM1_LO_ADDR 0x14be
  1477. #define LCD_PWM1_HI_ADDR 0x14bf
  1478. #define INV_CNT_ADDR 0x14c0
  1479. #define TCON_MISC_SEL_ADDR 0x14c1
  1480. #define DUAL_PORT_CNTL_ADDR 0x14c2
  1481. #define MLVDS_CONTROL 0x14c3
  1482. #define MLVDS_RESET_PATTERN_HI 0x14c4
  1483. #define MLVDS_RESET_PATTERN_LO 0x14c5
  1484. #define MLVDS_RESET_PATTERN_EXT 0x14c6
  1485. #define MLVDS_CONFIG_HI 0x14c7
  1486. #define MLVDS_CONFIG_LO 0x14c8
  1487. #define TCON_DOUBLE_CTL 0x14c9
  1488. #define TCON_PATTERN_HI 0x14ca
  1489. #define TCON_PATTERN_LO 0x14cb
  1490. #define TCON_CONTROL_HI 0x14cc
  1491. #define TCON_CONTROL_LO 0x14cd
  1492. #define LVDS_BLANK_DATA_HI 0x14ce
  1493. #define LVDS_BLANK_DATA_LO 0x14cf
  1494. #define LVDS_PACK_CNTL_ADDR 0x14d0
  1495. #define DE_HS_ADDR 0x14d1
  1496. #define DE_HE_ADDR 0x14d2
  1497. #define DE_VS_ADDR 0x14d3
  1498. #define DE_VE_ADDR 0x14d4
  1499. #define HSYNC_HS_ADDR 0x14d5
  1500. #define HSYNC_HE_ADDR 0x14d6
  1501. #define HSYNC_VS_ADDR 0x14d7
  1502. #define HSYNC_VE_ADDR 0x14d8
  1503. #define VSYNC_HS_ADDR 0x14d9
  1504. #define VSYNC_HE_ADDR 0x14da
  1505. #define VSYNC_VS_ADDR 0x14db
  1506. #define VSYNC_VE_ADDR 0x14dc
  1507. #define LCD_MCU_CTL 0x14dd
  1508. #define LCD_MCU_DATA_0 0x14de
  1509. #define LCD_MCU_DATA_1 0x14df
  1510. #define LVDS_GEN_CNTL 0x14e0
  1511. #define LVDS_PHY_CNTL0 0x14e1
  1512. #define LVDS_PHY_CNTL1 0x14e2
  1513. #define LVDS_PHY_CNTL2 0x14e3
  1514. #define LVDS_PHY_CNTL3 0x14e4
  1515. #define LVDS_PHY_CNTL4 0x14e5
  1516. #define LVDS_PHY_CNTL5 0x14e6
  1517. #define LVDS_SRG_TEST 0x14e8
  1518. #define LVDS_BIST_MUX0 0x14e9
  1519. #define LVDS_BIST_MUX1 0x14ea
  1520. #define LVDS_BIST_FIXED0 0x14eb
  1521. #define LVDS_BIST_FIXED1 0x14ec
  1522. #define LVDS_BIST_CNTL0 0x14ed
  1523. #define LVDS_CLKB_CLKA 0x14ee
  1524. #define LVDS_PHY_CLK_CNTL 0x14ef
  1525. #define LVDS_SER_EN 0x14f0
  1526. #define LVDS_PHY_CNTL6 0x14f1
  1527. #define LVDS_PHY_CNTL7 0x14f2
  1528. #define LVDS_PHY_CNTL8 0x14f3
  1529. #define MLVDS_CLK_CTL0_HI 0x14f4
  1530. #define MLVDS_CLK_CTL0_LO 0x14f5
  1531. #define MLVDS_DUAL_GATE_WR_START 0x14f6
  1532. #define MLVDS_DUAL_GATE_WR_END 0x14f7
  1533. #define MLVDS_DUAL_GATE_RD_START 0x14f8
  1534. #define MLVDS_DUAL_GATE_RD_END 0x14f9
  1535. #define MLVDS_SECOND_RESET_CTL 0x14fa
  1536. #define MLVDS_DUAL_GATE_CTL_HI 0x14fb
  1537. #define MLVDS_DUAL_GATE_CTL_LO 0x14fc
  1538. #define MLVDS_RESET_CONFIG_HI 0x14fd
  1539. #define MLVDS_RESET_CONFIG_LO 0x14fe
  1540. #define VPU_OSD1_MMC_CTRL 0x2701
  1541. #define VPU_OSD2_MMC_CTRL 0x2702
  1542. #define VPU_VD1_MMC_CTRL 0x2703
  1543. #define VPU_VD2_MMC_CTRL 0x2704
  1544. #define VPU_DI_IF1_MMC_CTRL 0x2705
  1545. #define VPU_DI_MEM_MMC_CTRL 0x2706
  1546. #define VPU_DI_INP_MMC_CTRL 0x2707
  1547. #define VPU_DI_MTNRD_MMC_CTRL 0x2708
  1548. #define VPU_DI_CHAN2_MMC_CTRL 0x2709
  1549. #define VPU_DI_MTNWR_MMC_CTRL 0x270a
  1550. #define VPU_DI_NRWR_MMC_CTRL 0x270b
  1551. #define VPU_DI_DIWR_MMC_CTRL 0x270c
  1552. #define VPU_VDIN0_MMC_CTRL 0x270d
  1553. #define VPU_VDIN1_MMC_CTRL 0x270e
  1554. #define VPU_BT656_MMC_CTRL 0x270f
  1555. #define VPU_TVD3D_MMC_CTRL 0x2710
  1556. #define VPU_TVDVBI_MMC_CTRL 0x2711
  1557. #define VPU_TVDVBI_VSLATCH_ADDR 0x2712
  1558. #define VPU_TVDVBI_WRRSP_ADDR 0x2713
  1559. #define VPU_VDIN_PRE_ARB_CTRL 0x2714
  1560. #define VPU_VDISP_PRE_ARB_CTRL 0x2715
  1561. #define VPU_VPUARB2_PRE_ARB_CTRL 0x2716
  1562. #define VPU_OSD3_MMC_CTRL 0x2717
  1563. #define VPU_OSD4_MMC_CTRL 0x2718
  1564. #define VPU_VD3_MMC_CTRL 0x2719
  1565. #define VPU_VIU_VENC_MUX_CTRL 0x271a
  1566. #define VIU1_SEL_VENC_MASK 0x3
  1567. #define VIU1_SEL_VENC_ENCL 0
  1568. #define VIU1_SEL_VENC_ENCI 1
  1569. #define VIU1_SEL_VENC_ENCP 2
  1570. #define VIU1_SEL_VENC_ENCT 3
  1571. #define VIU2_SEL_VENC_MASK 0xc
  1572. #define VIU2_SEL_VENC_ENCL 0
  1573. #define VIU2_SEL_VENC_ENCI (1 << 2)
  1574. #define VIU2_SEL_VENC_ENCP (2 << 2)
  1575. #define VIU2_SEL_VENC_ENCT (3 << 2)
  1576. #define VPU_HDMI_SETTING 0x271b
  1577. #define VPU_HDMI_ENCI_DATA_TO_HDMI BIT(0)
  1578. #define VPU_HDMI_ENCP_DATA_TO_HDMI BIT(1)
  1579. #define VPU_HDMI_INV_HSYNC BIT(2)
  1580. #define VPU_HDMI_INV_VSYNC BIT(3)
  1581. #define VPU_HDMI_OUTPUT_CRYCB (0 << 5)
  1582. #define VPU_HDMI_OUTPUT_YCBCR (1 << 5)
  1583. #define VPU_HDMI_OUTPUT_YCRCB (2 << 5)
  1584. #define VPU_HDMI_OUTPUT_CBCRY (3 << 5)
  1585. #define VPU_HDMI_OUTPUT_CBYCR (4 << 5)
  1586. #define VPU_HDMI_OUTPUT_CRCBY (5 << 5)
  1587. #define VPU_HDMI_WR_RATE(rate) (((rate & 0x1f) - 1) << 8)
  1588. #define VPU_HDMI_RD_RATE(rate) (((rate & 0x1f) - 1) << 12)
  1589. #define ENCI_INFO_READ 0x271c
  1590. #define ENCP_INFO_READ 0x271d
  1591. #define ENCT_INFO_READ 0x271e
  1592. #define ENCL_INFO_READ 0x271f
  1593. #define VPU_SW_RESET 0x2720
  1594. #define VPU_D2D3_MMC_CTRL 0x2721
  1595. #define VPU_CONT_MMC_CTRL 0x2722
  1596. #define VPU_CLK_GATE 0x2723
  1597. #define VPU_RDMA_MMC_CTRL 0x2724
  1598. #define VPU_MEM_PD_REG0 0x2725
  1599. #define VPU_MEM_PD_REG1 0x2726
  1600. #define VPU_HDMI_DATA_OVR 0x2727
  1601. #define VPU_PROT1_MMC_CTRL 0x2728
  1602. #define VPU_PROT2_MMC_CTRL 0x2729
  1603. #define VPU_PROT3_MMC_CTRL 0x272a
  1604. #define VPU_ARB4_V1_MMC_CTRL 0x272b
  1605. #define VPU_ARB4_V2_MMC_CTRL 0x272c
  1606. #define VPU_VPU_PWM_V0 0x2730
  1607. #define VPU_VPU_PWM_V1 0x2731
  1608. #define VPU_VPU_PWM_V2 0x2732
  1609. #define VPU_VPU_PWM_V3 0x2733
  1610. #define VPU_VPU_PWM_H0 0x2734
  1611. #define VPU_VPU_PWM_H1 0x2735
  1612. #define VPU_VPU_PWM_H2 0x2736
  1613. #define VPU_VPU_PWM_H3 0x2737
  1614. #define VPU_MISC_CTRL 0x2740
  1615. #define VPU_ISP_GCLK_CTRL0 0x2741
  1616. #define VPU_ISP_GCLK_CTRL1 0x2742
  1617. #define VPU_HDMI_FMT_CTRL 0x2743
  1618. #define VPU_VDIN_ASYNC_HOLD_CTRL 0x2743
  1619. #define VPU_VDISP_ASYNC_HOLD_CTRL 0x2744
  1620. #define VPU_VPUARB2_ASYNC_HOLD_CTRL 0x2745
  1621. #define VPU_PROT1_CLK_GATE 0x2750
  1622. #define VPU_PROT1_GEN_CNTL 0x2751
  1623. #define VPU_PROT1_X_START_END 0x2752
  1624. #define VPU_PROT1_Y_START_END 0x2753
  1625. #define VPU_PROT1_Y_LEN_STEP 0x2754
  1626. #define VPU_PROT1_RPT_LOOP 0x2755
  1627. #define VPU_PROT1_RPT_PAT 0x2756
  1628. #define VPU_PROT1_DDR 0x2757
  1629. #define VPU_PROT1_RBUF_ROOM 0x2758
  1630. #define VPU_PROT1_STAT_0 0x2759
  1631. #define VPU_PROT1_STAT_1 0x275a
  1632. #define VPU_PROT1_STAT_2 0x275b
  1633. #define VPU_PROT1_REQ_ONOFF 0x275c
  1634. #define VPU_PROT2_CLK_GATE 0x2760
  1635. #define VPU_PROT2_GEN_CNTL 0x2761
  1636. #define VPU_PROT2_X_START_END 0x2762
  1637. #define VPU_PROT2_Y_START_END 0x2763
  1638. #define VPU_PROT2_Y_LEN_STEP 0x2764
  1639. #define VPU_PROT2_RPT_LOOP 0x2765
  1640. #define VPU_PROT2_RPT_PAT 0x2766
  1641. #define VPU_PROT2_DDR 0x2767
  1642. #define VPU_PROT2_RBUF_ROOM 0x2768
  1643. #define VPU_PROT2_STAT_0 0x2769
  1644. #define VPU_PROT2_STAT_1 0x276a
  1645. #define VPU_PROT2_STAT_2 0x276b
  1646. #define VPU_PROT2_REQ_ONOFF 0x276c
  1647. #define VPU_PROT3_CLK_GATE 0x2770
  1648. #define VPU_PROT3_GEN_CNTL 0x2771
  1649. #define VPU_PROT3_X_START_END 0x2772
  1650. #define VPU_PROT3_Y_START_END 0x2773
  1651. #define VPU_PROT3_Y_LEN_STEP 0x2774
  1652. #define VPU_PROT3_RPT_LOOP 0x2775
  1653. #define VPU_PROT3_RPT_PAT 0x2776
  1654. #define VPU_PROT3_DDR 0x2777
  1655. #define VPU_PROT3_RBUF_ROOM 0x2778
  1656. #define VPU_PROT3_STAT_0 0x2779
  1657. #define VPU_PROT3_STAT_1 0x277a
  1658. #define VPU_PROT3_STAT_2 0x277b
  1659. #define VPU_PROT3_REQ_ONOFF 0x277c
  1660. #define VPU_RDARB_MODE_L1C1 0x2790
  1661. #define VPU_RDARB_MODE_L1C2 0x2799
  1662. #define VPU_RDARB_MODE_L2C1 0x279d
  1663. #define VPU_WRARB_MODE_L2C1 0x27a2
  1664. #define VPU_RDARB_SLAVE_TO_MASTER_PORT(dc, port) (port << (16 + dc))
  1665. /* osd super scale */
  1666. #define OSDSR_HV_SIZEIN 0x3130
  1667. #define OSDSR_CTRL_MODE 0x3131
  1668. #define OSDSR_ABIC_HCOEF 0x3132
  1669. #define OSDSR_YBIC_HCOEF 0x3133
  1670. #define OSDSR_CBIC_HCOEF 0x3134
  1671. #define OSDSR_ABIC_VCOEF 0x3135
  1672. #define OSDSR_YBIC_VCOEF 0x3136
  1673. #define OSDSR_CBIC_VCOEF 0x3137
  1674. #define OSDSR_VAR_PARA 0x3138
  1675. #define OSDSR_CONST_PARA 0x3139
  1676. #define OSDSR_RKE_EXTWIN 0x313a
  1677. #define OSDSR_UK_GRAD2DDIAG_TH_RATE 0x313b
  1678. #define OSDSR_UK_GRAD2DDIAG_LIMIT 0x313c
  1679. #define OSDSR_UK_GRAD2DADJA_TH_RATE 0x313d
  1680. #define OSDSR_UK_GRAD2DADJA_LIMIT 0x313e
  1681. #define OSDSR_UK_BST_GAIN 0x313f
  1682. #define OSDSR_HVBLEND_TH 0x3140
  1683. #define OSDSR_DEMO_WIND_TB 0x3141
  1684. #define OSDSR_DEMO_WIND_LR 0x3142
  1685. #define OSDSR_INT_BLANK_NUM 0x3143
  1686. #define OSDSR_FRM_END_STAT 0x3144
  1687. #define OSDSR_ABIC_HCOEF0 0x3145
  1688. #define OSDSR_YBIC_HCOEF0 0x3146
  1689. #define OSDSR_CBIC_HCOEF0 0x3147
  1690. #define OSDSR_ABIC_VCOEF0 0x3148
  1691. #define OSDSR_YBIC_VCOEF0 0x3149
  1692. #define OSDSR_CBIC_VCOEF0 0x314a
  1693. /* osd afbcd on gxtvbb */
  1694. #define OSD1_AFBCD_ENABLE 0x31a0
  1695. #define OSD1_AFBCD_ID_FIFO_THRD GENMASK(15, 9)
  1696. #define OSD1_AFBCD_DEC_ENABLE BIT(8)
  1697. #define OSD1_AFBCD_FRM_START BIT(0)
  1698. #define OSD1_AFBCD_MODE 0x31a1
  1699. #define OSD1_AFBCD_SOFT_RESET BIT(31)
  1700. #define OSD1_AFBCD_AXI_REORDER_MODE BIT(28)
  1701. #define OSD1_AFBCD_MIF_URGENT GENMASK(25, 24)
  1702. #define OSD1_AFBCD_HOLD_LINE_NUM GENMASK(22, 16)
  1703. #define OSD1_AFBCD_RGBA_EXCHAN_CTRL GENMASK(15, 8)
  1704. #define OSD1_AFBCD_HREG_BLOCK_SPLIT BIT(6)
  1705. #define OSD1_AFBCD_HREG_HALF_BLOCK BIT(5)
  1706. #define OSD1_AFBCD_HREG_PIXEL_PACKING_FMT GENMASK(4, 0)
  1707. #define OSD1_AFBCD_SIZE_IN 0x31a2
  1708. #define OSD1_AFBCD_HREG_VSIZE_IN GENMASK(31, 16)
  1709. #define OSD1_AFBCD_HREG_HSIZE_IN GENMASK(15, 0)
  1710. #define OSD1_AFBCD_HDR_PTR 0x31a3
  1711. #define OSD1_AFBCD_FRAME_PTR 0x31a4
  1712. #define OSD1_AFBCD_CHROMA_PTR 0x31a5
  1713. #define OSD1_AFBCD_CONV_CTRL 0x31a6
  1714. #define OSD1_AFBCD_CONV_LBUF_LEN GENMASK(15, 0)
  1715. #define OSD1_AFBCD_STATUS 0x31a8
  1716. #define OSD1_AFBCD_PIXEL_HSCOPE 0x31a9
  1717. #define OSD1_AFBCD_DEC_PIXEL_BGN_H GENMASK(31, 16)
  1718. #define OSD1_AFBCD_DEC_PIXEL_END_H GENMASK(15, 0)
  1719. #define OSD1_AFBCD_PIXEL_VSCOPE 0x31aa
  1720. #define OSD1_AFBCD_DEC_PIXEL_BGN_V GENMASK(31, 16)
  1721. #define OSD1_AFBCD_DEC_PIXEL_END_V GENMASK(15, 0)
  1722. /* add for gxm and 962e dv core2 */
  1723. #define DOLBY_CORE2A_SWAP_CTRL1 0x3434
  1724. #define DOLBY_CORE2A_SWAP_CTRL2 0x3435
  1725. /* osd afbc on g12a */
  1726. #define VPU_MAFBC_BLOCK_ID 0x3a00
  1727. #define VPU_MAFBC_IRQ_RAW_STATUS 0x3a01
  1728. #define VPU_MAFBC_IRQ_CLEAR 0x3a02
  1729. #define VPU_MAFBC_IRQ_MASK 0x3a03
  1730. #define VPU_MAFBC_IRQ_STATUS 0x3a04
  1731. #define VPU_MAFBC_IRQ_SECURE_ID_ERROR BIT(5)
  1732. #define VPU_MAFBC_IRQ_AXI_ERROR BIT(4)
  1733. #define VPU_MAFBC_IRQ_DETILING_ERROR BIT(3)
  1734. #define VPU_MAFBC_IRQ_DECODE_ERROR BIT(2)
  1735. #define VPU_MAFBC_IRQ_CONFIGURATION_SWAPPED BIT(1)
  1736. #define VPU_MAFBC_IRQ_SURFACES_COMPLETED BIT(0)
  1737. #define VPU_MAFBC_COMMAND 0x3a05
  1738. #define VPU_MAFBC_PENDING_SWAP BIT(1)
  1739. #define VPU_MAFBC_DIRECT_SWAP BIT(0)
  1740. #define VPU_MAFBC_STATUS 0x3a06
  1741. #define VPU_MAFBC_ERROR BIT(2)
  1742. #define VPU_MAFBC_SWAPPING BIT(1)
  1743. #define VPU_MAFBC_ACTIVE BIT(0)
  1744. #define VPU_MAFBC_SURFACE_CFG 0x3a07
  1745. #define VPU_MAFBC_CONTINUOUS_DECODING_ENABLE BIT(16)
  1746. #define VPU_MAFBC_S3_ENABLE BIT(3)
  1747. #define VPU_MAFBC_S2_ENABLE BIT(2)
  1748. #define VPU_MAFBC_S1_ENABLE BIT(1)
  1749. #define VPU_MAFBC_S0_ENABLE BIT(0)
  1750. #define VPU_MAFBC_HEADER_BUF_ADDR_LOW_S0 0x3a10
  1751. #define VPU_MAFBC_HEADER_BUF_ADDR_HIGH_S0 0x3a11
  1752. #define VPU_MAFBC_FORMAT_SPECIFIER_S0 0x3a12
  1753. #define VPU_MAFBC_PAYLOAD_LIMIT_EN BIT(19)
  1754. #define VPU_MAFBC_TILED_HEADER_EN BIT(18)
  1755. #define VPU_MAFBC_SUPER_BLOCK_ASPECT GENMASK(17, 16)
  1756. #define VPU_MAFBC_BLOCK_SPLIT BIT(9)
  1757. #define VPU_MAFBC_YUV_TRANSFORM BIT(8)
  1758. #define VPU_MAFBC_PIXEL_FORMAT GENMASK(3, 0)
  1759. #define VPU_MAFBC_BUFFER_WIDTH_S0 0x3a13
  1760. #define VPU_MAFBC_BUFFER_HEIGHT_S0 0x3a14
  1761. #define VPU_MAFBC_BOUNDING_BOX_X_START_S0 0x3a15
  1762. #define VPU_MAFBC_BOUNDING_BOX_X_END_S0 0x3a16
  1763. #define VPU_MAFBC_BOUNDING_BOX_Y_START_S0 0x3a17
  1764. #define VPU_MAFBC_BOUNDING_BOX_Y_END_S0 0x3a18
  1765. #define VPU_MAFBC_OUTPUT_BUF_ADDR_LOW_S0 0x3a19
  1766. #define VPU_MAFBC_OUTPUT_BUF_ADDR_HIGH_S0 0x3a1a
  1767. #define VPU_MAFBC_OUTPUT_BUF_STRIDE_S0 0x3a1b
  1768. #define VPU_MAFBC_PREFETCH_CFG_S0 0x3a1c
  1769. #define VPU_MAFBC_PREFETCH_READ_DIRECTION_Y BIT(1)
  1770. #define VPU_MAFBC_PREFETCH_READ_DIRECTION_X BIT(0)
  1771. #define VPU_MAFBC_HEADER_BUF_ADDR_LOW_S1 0x3a30
  1772. #define VPU_MAFBC_HEADER_BUF_ADDR_HIGH_S1 0x3a31
  1773. #define VPU_MAFBC_FORMAT_SPECIFIER_S1 0x3a32
  1774. #define VPU_MAFBC_BUFFER_WIDTH_S1 0x3a33
  1775. #define VPU_MAFBC_BUFFER_HEIGHT_S1 0x3a34
  1776. #define VPU_MAFBC_BOUNDING_BOX_X_START_S1 0x3a35
  1777. #define VPU_MAFBC_BOUNDING_BOX_X_END_S1 0x3a36
  1778. #define VPU_MAFBC_BOUNDING_BOX_Y_START_S1 0x3a37
  1779. #define VPU_MAFBC_BOUNDING_BOX_Y_END_S1 0x3a38
  1780. #define VPU_MAFBC_OUTPUT_BUF_ADDR_LOW_S1 0x3a39
  1781. #define VPU_MAFBC_OUTPUT_BUF_ADDR_HIGH_S1 0x3a3a
  1782. #define VPU_MAFBC_OUTPUT_BUF_STRIDE_S1 0x3a3b
  1783. #define VPU_MAFBC_PREFETCH_CFG_S1 0x3a3c
  1784. #define VPU_MAFBC_HEADER_BUF_ADDR_LOW_S2 0x3a50
  1785. #define VPU_MAFBC_HEADER_BUF_ADDR_HIGH_S2 0x3a51
  1786. #define VPU_MAFBC_FORMAT_SPECIFIER_S2 0x3a52
  1787. #define VPU_MAFBC_BUFFER_WIDTH_S2 0x3a53
  1788. #define VPU_MAFBC_BUFFER_HEIGHT_S2 0x3a54
  1789. #define VPU_MAFBC_BOUNDING_BOX_X_START_S2 0x3a55
  1790. #define VPU_MAFBC_BOUNDING_BOX_X_END_S2 0x3a56
  1791. #define VPU_MAFBC_BOUNDING_BOX_Y_START_S2 0x3a57
  1792. #define VPU_MAFBC_BOUNDING_BOX_Y_END_S2 0x3a58
  1793. #define VPU_MAFBC_OUTPUT_BUF_ADDR_LOW_S2 0x3a59
  1794. #define VPU_MAFBC_OUTPUT_BUF_ADDR_HIGH_S2 0x3a5a
  1795. #define VPU_MAFBC_OUTPUT_BUF_STRIDE_S2 0x3a5b
  1796. #define VPU_MAFBC_PREFETCH_CFG_S2 0x3a5c
  1797. #define VPU_MAFBC_HEADER_BUF_ADDR_LOW_S3 0x3a70
  1798. #define VPU_MAFBC_HEADER_BUF_ADDR_HIGH_S3 0x3a71
  1799. #define VPU_MAFBC_FORMAT_SPECIFIER_S3 0x3a72
  1800. #define VPU_MAFBC_BUFFER_WIDTH_S3 0x3a73
  1801. #define VPU_MAFBC_BUFFER_HEIGHT_S3 0x3a74
  1802. #define VPU_MAFBC_BOUNDING_BOX_X_START_S3 0x3a75
  1803. #define VPU_MAFBC_BOUNDING_BOX_X_END_S3 0x3a76
  1804. #define VPU_MAFBC_BOUNDING_BOX_Y_START_S3 0x3a77
  1805. #define VPU_MAFBC_BOUNDING_BOX_Y_END_S3 0x3a78
  1806. #define VPU_MAFBC_OUTPUT_BUF_ADDR_LOW_S3 0x3a79
  1807. #define VPU_MAFBC_OUTPUT_BUF_ADDR_HIGH_S3 0x3a7a
  1808. #define VPU_MAFBC_OUTPUT_BUF_STRIDE_S3 0x3a7b
  1809. #define VPU_MAFBC_PREFETCH_CFG_S3 0x3a7c
  1810. #define DOLBY_PATH_CTRL 0x1a0c
  1811. #define DOLBY_BYPASS_EN(val) (val & 0xf)
  1812. #define OSD_PATH_MISC_CTRL 0x1a0e
  1813. #define OSD_PATH_OSD_AXI_SEL_OSD1_AFBCD BIT(4)
  1814. #define OSD_PATH_OSD_AXI_SEL_OSD2_AFBCD BIT(5)
  1815. #define OSD_PATH_OSD_AXI_SEL_OSD3_AFBCD BIT(6)
  1816. #define MALI_AFBCD_TOP_CTRL 0x1a0f
  1817. #define MALI_AFBCD_MANUAL_RESET BIT(23)
  1818. #define VIU_OSD_BLEND_CTRL 0x39b0
  1819. #define VIU_OSD_BLEND_REORDER(dest, src) ((src) << (dest * 4))
  1820. #define VIU_OSD_BLEND_DIN_EN(bits) ((bits & 0xf) << 20)
  1821. #define VIU_OSD_BLEND1_DIN3_BYPASS_TO_DOUT1 BIT(24)
  1822. #define VIU_OSD_BLEND1_DOUT_BYPASS_TO_BLEND2 BIT(25)
  1823. #define VIU_OSD_BLEND_DIN0_BYPASS_TO_DOUT0 BIT(26)
  1824. #define VIU_OSD_BLEND_BLEN2_PREMULT_EN(input) ((input & 0x3) << 27)
  1825. #define VIU_OSD_BLEND_HOLD_LINES(lines) ((lines & 0x7) << 29)
  1826. #define VIU_OSD_BLEND_CTRL1 0x39c0
  1827. #define VIU_OSD_BLEND_DIN0_SCOPE_H 0x39b1
  1828. #define VIU_OSD_BLEND_DIN0_SCOPE_V 0x39b2
  1829. #define VIU_OSD_BLEND_DIN1_SCOPE_H 0x39b3
  1830. #define VIU_OSD_BLEND_DIN1_SCOPE_V 0x39b4
  1831. #define VIU_OSD_BLEND_DIN2_SCOPE_H 0x39b5
  1832. #define VIU_OSD_BLEND_DIN2_SCOPE_V 0x39b6
  1833. #define VIU_OSD_BLEND_DIN3_SCOPE_H 0x39b7
  1834. #define VIU_OSD_BLEND_DIN3_SCOPE_V 0x39b8
  1835. #define VIU_OSD_BLEND_DUMMY_DATA0 0x39b9
  1836. #define VIU_OSD_BLEND_DUMMY_ALPHA 0x39ba
  1837. #define VIU_OSD_BLEND_BLEND0_SIZE 0x39bb
  1838. #define VIU_OSD_BLEND_BLEND1_SIZE 0x39bc
  1839. #define VIU_OSD_BLEND_RO_CURRENT_XY 0x39bf
  1840. #define VPP_OUT_H_V_SIZE 0x1da5
  1841. #define VPP_VD2_HDR_IN_SIZE 0x1df0
  1842. #define VPP_OSD1_IN_SIZE 0x1df1
  1843. #define VPP_GCLK_CTRL2 0x1df2
  1844. #define VD2_PPS_DUMMY_DATA 0x1df4
  1845. #define VPP_OSD1_BLD_H_SCOPE 0x1df5
  1846. #define VPP_OSD1_BLD_V_SCOPE 0x1df6
  1847. #define VPP_OSD2_BLD_H_SCOPE 0x1df7
  1848. #define VPP_OSD2_BLD_V_SCOPE 0x1df8
  1849. #define VPP_WRBAK_CTRL 0x1df9
  1850. #define VPP_SLEEP_CTRL 0x1dfa
  1851. #define VD1_BLEND_SRC_CTRL 0x1dfb
  1852. #define VD2_BLEND_SRC_CTRL 0x1dfc
  1853. #define VD_BLEND_PREBLD_SRC_VD1 (1 << 0)
  1854. #define VD_BLEND_PREBLD_SRC_VD2 (2 << 0)
  1855. #define VD_BLEND_PREBLD_SRC_OSD1 (3 << 0)
  1856. #define VD_BLEND_PREBLD_SRC_OSD2 (4 << 0)
  1857. #define VD_BLEND_PREBLD_PREMULT_EN BIT(4)
  1858. #define VD_BLEND_POSTBLD_SRC_VD1 (1 << 8)
  1859. #define VD_BLEND_POSTBLD_SRC_VD2 (2 << 8)
  1860. #define VD_BLEND_POSTBLD_SRC_OSD1 (3 << 8)
  1861. #define VD_BLEND_POSTBLD_SRC_OSD2 (4 << 8)
  1862. #define VD_BLEND_POSTBLD_PREMULT_EN BIT(16)
  1863. #define OSD1_BLEND_SRC_CTRL 0x1dfd
  1864. #define OSD2_BLEND_SRC_CTRL 0x1dfe
  1865. #define OSD_BLEND_POSTBLD_SRC_VD1 (1 << 8)
  1866. #define OSD_BLEND_POSTBLD_SRC_VD2 (2 << 8)
  1867. #define OSD_BLEND_POSTBLD_SRC_OSD1 (3 << 8)
  1868. #define OSD_BLEND_POSTBLD_SRC_OSD2 (4 << 8)
  1869. #define OSD_BLEND_PATH_SEL_ENABLE BIT(20)
  1870. #define VPP_POST_BLEND_BLEND_DUMMY_DATA 0x3968
  1871. #define VPP_POST_BLEND_DUMMY_ALPHA 0x3969
  1872. #define VPP_RDARB_MODE 0x3978
  1873. #define VPP_RDARB_REQEN_SLV 0x3979
  1874. #endif /* __MESON_REGISTERS_H */