162306a36Sopenharmony_ci/* SPDX-License-Identifier: GPL-2.0-or-later */
262306a36Sopenharmony_ci/*
362306a36Sopenharmony_ci * Copyright (C) 2015 Amlogic, Inc. All rights reserved.
462306a36Sopenharmony_ci */
562306a36Sopenharmony_ci
662306a36Sopenharmony_ci#ifndef __MESON_REGISTERS_H
762306a36Sopenharmony_ci#define __MESON_REGISTERS_H
862306a36Sopenharmony_ci
962306a36Sopenharmony_ci#include <linux/io.h>
1062306a36Sopenharmony_ci
1162306a36Sopenharmony_ci/* Shift all registers by 2 */
1262306a36Sopenharmony_ci#define _REG(reg)	((reg) << 2)
1362306a36Sopenharmony_ci
1462306a36Sopenharmony_ci#define writel_bits_relaxed(mask, val, addr) \
1562306a36Sopenharmony_ci	writel_relaxed((readl_relaxed(addr) & ~(mask)) | ((val) & (mask)), addr)
1662306a36Sopenharmony_ci
1762306a36Sopenharmony_ci/* vpp2 */
1862306a36Sopenharmony_ci#define VPP2_DUMMY_DATA 0x1900
1962306a36Sopenharmony_ci#define VPP2_LINE_IN_LENGTH 0x1901
2062306a36Sopenharmony_ci#define VPP2_PIC_IN_HEIGHT 0x1902
2162306a36Sopenharmony_ci#define VPP2_SCALE_COEF_IDX 0x1903
2262306a36Sopenharmony_ci#define VPP2_SCALE_COEF 0x1904
2362306a36Sopenharmony_ci#define VPP2_VSC_REGION12_STARTP 0x1905
2462306a36Sopenharmony_ci#define VPP2_VSC_REGION34_STARTP 0x1906
2562306a36Sopenharmony_ci#define VPP2_VSC_REGION4_ENDP 0x1907
2662306a36Sopenharmony_ci#define VPP2_VSC_START_PHASE_STEP 0x1908
2762306a36Sopenharmony_ci#define VPP2_VSC_REGION0_PHASE_SLOPE 0x1909
2862306a36Sopenharmony_ci#define VPP2_VSC_REGION1_PHASE_SLOPE 0x190a
2962306a36Sopenharmony_ci#define VPP2_VSC_REGION3_PHASE_SLOPE 0x190b
3062306a36Sopenharmony_ci#define VPP2_VSC_REGION4_PHASE_SLOPE 0x190c
3162306a36Sopenharmony_ci#define VPP2_VSC_PHASE_CTRL 0x190d
3262306a36Sopenharmony_ci#define VPP2_VSC_INI_PHASE 0x190e
3362306a36Sopenharmony_ci#define VPP2_HSC_REGION12_STARTP 0x1910
3462306a36Sopenharmony_ci#define VPP2_HSC_REGION34_STARTP 0x1911
3562306a36Sopenharmony_ci#define VPP2_HSC_REGION4_ENDP 0x1912
3662306a36Sopenharmony_ci#define VPP2_HSC_START_PHASE_STEP 0x1913
3762306a36Sopenharmony_ci#define VPP2_HSC_REGION0_PHASE_SLOPE 0x1914
3862306a36Sopenharmony_ci#define VPP2_HSC_REGION1_PHASE_SLOPE 0x1915
3962306a36Sopenharmony_ci#define VPP2_HSC_REGION3_PHASE_SLOPE 0x1916
4062306a36Sopenharmony_ci#define VPP2_HSC_REGION4_PHASE_SLOPE 0x1917
4162306a36Sopenharmony_ci#define VPP2_HSC_PHASE_CTRL 0x1918
4262306a36Sopenharmony_ci#define VPP2_SC_MISC 0x1919
4362306a36Sopenharmony_ci#define VPP2_PREBLEND_VD1_H_START_END 0x191a
4462306a36Sopenharmony_ci#define VPP2_PREBLEND_VD1_V_START_END 0x191b
4562306a36Sopenharmony_ci#define VPP2_POSTBLEND_VD1_H_START_END 0x191c
4662306a36Sopenharmony_ci#define VPP2_POSTBLEND_VD1_V_START_END 0x191d
4762306a36Sopenharmony_ci#define VPP2_PREBLEND_H_SIZE 0x1920
4862306a36Sopenharmony_ci#define VPP2_POSTBLEND_H_SIZE 0x1921
4962306a36Sopenharmony_ci#define VPP2_HOLD_LINES 0x1922
5062306a36Sopenharmony_ci#define VPP2_BLEND_ONECOLOR_CTRL 0x1923
5162306a36Sopenharmony_ci#define VPP2_PREBLEND_CURRENT_XY 0x1924
5262306a36Sopenharmony_ci#define VPP2_POSTBLEND_CURRENT_XY 0x1925
5362306a36Sopenharmony_ci#define VPP2_MISC 0x1926
5462306a36Sopenharmony_ci#define VPP2_OFIFO_SIZE 0x1927
5562306a36Sopenharmony_ci#define VPP2_FIFO_STATUS 0x1928
5662306a36Sopenharmony_ci#define VPP2_SMOKE_CTRL 0x1929
5762306a36Sopenharmony_ci#define VPP2_SMOKE1_VAL 0x192a
5862306a36Sopenharmony_ci#define VPP2_SMOKE2_VAL 0x192b
5962306a36Sopenharmony_ci#define VPP2_SMOKE1_H_START_END 0x192d
6062306a36Sopenharmony_ci#define VPP2_SMOKE1_V_START_END 0x192e
6162306a36Sopenharmony_ci#define VPP2_SMOKE2_H_START_END 0x192f
6262306a36Sopenharmony_ci#define VPP2_SMOKE2_V_START_END 0x1930
6362306a36Sopenharmony_ci#define VPP2_SCO_FIFO_CTRL 0x1933
6462306a36Sopenharmony_ci#define VPP2_HSC_PHASE_CTRL1 0x1934
6562306a36Sopenharmony_ci#define VPP2_HSC_INI_PAT_CTRL 0x1935
6662306a36Sopenharmony_ci#define VPP2_VADJ_CTRL 0x1940
6762306a36Sopenharmony_ci#define VPP2_VADJ1_Y 0x1941
6862306a36Sopenharmony_ci#define VPP2_VADJ1_MA_MB 0x1942
6962306a36Sopenharmony_ci#define VPP2_VADJ1_MC_MD 0x1943
7062306a36Sopenharmony_ci#define VPP2_VADJ2_Y 0x1944
7162306a36Sopenharmony_ci#define VPP2_VADJ2_MA_MB 0x1945
7262306a36Sopenharmony_ci#define VPP2_VADJ2_MC_MD 0x1946
7362306a36Sopenharmony_ci#define VPP2_MATRIX_PROBE_COLOR 0x195c
7462306a36Sopenharmony_ci#define VPP2_MATRIX_HL_COLOR 0x195d
7562306a36Sopenharmony_ci#define VPP2_MATRIX_PROBE_POS 0x195e
7662306a36Sopenharmony_ci#define VPP2_MATRIX_CTRL 0x195f
7762306a36Sopenharmony_ci#define VPP2_MATRIX_COEF00_01 0x1960
7862306a36Sopenharmony_ci#define VPP2_MATRIX_COEF02_10 0x1961
7962306a36Sopenharmony_ci#define VPP2_MATRIX_COEF11_12 0x1962
8062306a36Sopenharmony_ci#define VPP2_MATRIX_COEF20_21 0x1963
8162306a36Sopenharmony_ci#define VPP2_MATRIX_COEF22 0x1964
8262306a36Sopenharmony_ci#define VPP2_MATRIX_OFFSET0_1 0x1965
8362306a36Sopenharmony_ci#define VPP2_MATRIX_OFFSET2 0x1966
8462306a36Sopenharmony_ci#define VPP2_MATRIX_PRE_OFFSET0_1 0x1967
8562306a36Sopenharmony_ci#define VPP2_MATRIX_PRE_OFFSET2 0x1968
8662306a36Sopenharmony_ci#define VPP2_DUMMY_DATA1 0x1969
8762306a36Sopenharmony_ci#define VPP2_GAINOFF_CTRL0 0x196a
8862306a36Sopenharmony_ci#define VPP2_GAINOFF_CTRL1 0x196b
8962306a36Sopenharmony_ci#define VPP2_GAINOFF_CTRL2 0x196c
9062306a36Sopenharmony_ci#define VPP2_GAINOFF_CTRL3 0x196d
9162306a36Sopenharmony_ci#define VPP2_GAINOFF_CTRL4 0x196e
9262306a36Sopenharmony_ci#define VPP2_CHROMA_ADDR_PORT 0x1970
9362306a36Sopenharmony_ci#define VPP2_CHROMA_DATA_PORT 0x1971
9462306a36Sopenharmony_ci#define VPP2_GCLK_CTRL0 0x1972
9562306a36Sopenharmony_ci#define VPP2_GCLK_CTRL1 0x1973
9662306a36Sopenharmony_ci#define VPP2_SC_GCLK_CTRL 0x1974
9762306a36Sopenharmony_ci#define VPP2_MISC1 0x1976
9862306a36Sopenharmony_ci#define VPP2_DNLP_CTRL_00 0x1981
9962306a36Sopenharmony_ci#define VPP2_DNLP_CTRL_01 0x1982
10062306a36Sopenharmony_ci#define VPP2_DNLP_CTRL_02 0x1983
10162306a36Sopenharmony_ci#define VPP2_DNLP_CTRL_03 0x1984
10262306a36Sopenharmony_ci#define VPP2_DNLP_CTRL_04 0x1985
10362306a36Sopenharmony_ci#define VPP2_DNLP_CTRL_05 0x1986
10462306a36Sopenharmony_ci#define VPP2_DNLP_CTRL_06 0x1987
10562306a36Sopenharmony_ci#define VPP2_DNLP_CTRL_07 0x1988
10662306a36Sopenharmony_ci#define VPP2_DNLP_CTRL_08 0x1989
10762306a36Sopenharmony_ci#define VPP2_DNLP_CTRL_09 0x198a
10862306a36Sopenharmony_ci#define VPP2_DNLP_CTRL_10 0x198b
10962306a36Sopenharmony_ci#define VPP2_DNLP_CTRL_11 0x198c
11062306a36Sopenharmony_ci#define VPP2_DNLP_CTRL_12 0x198d
11162306a36Sopenharmony_ci#define VPP2_DNLP_CTRL_13 0x198e
11262306a36Sopenharmony_ci#define VPP2_DNLP_CTRL_14 0x198f
11362306a36Sopenharmony_ci#define VPP2_DNLP_CTRL_15 0x1990
11462306a36Sopenharmony_ci#define VPP2_VE_ENABLE_CTRL 0x19a1
11562306a36Sopenharmony_ci#define VPP2_VE_DEMO_LEFT_TOP_SCREEN_WIDTH 0x19a2
11662306a36Sopenharmony_ci#define VPP2_VE_DEMO_CENTER_BAR 0x19a3
11762306a36Sopenharmony_ci#define VPP2_VE_H_V_SIZE 0x19a4
11862306a36Sopenharmony_ci#define VPP2_VDO_MEAS_CTRL 0x19a8
11962306a36Sopenharmony_ci#define VPP2_VDO_MEAS_VS_COUNT_HI 0x19a9
12062306a36Sopenharmony_ci#define VPP2_VDO_MEAS_VS_COUNT_LO 0x19aa
12162306a36Sopenharmony_ci#define VPP2_OSD_VSC_PHASE_STEP 0x19c0
12262306a36Sopenharmony_ci#define VPP2_OSD_VSC_INI_PHASE 0x19c1
12362306a36Sopenharmony_ci#define VPP2_OSD_VSC_CTRL0 0x19c2
12462306a36Sopenharmony_ci#define VPP2_OSD_HSC_PHASE_STEP 0x19c3
12562306a36Sopenharmony_ci#define VPP2_OSD_HSC_INI_PHASE 0x19c4
12662306a36Sopenharmony_ci#define VPP2_OSD_HSC_CTRL0 0x19c5
12762306a36Sopenharmony_ci#define VPP2_OSD_HSC_INI_PAT_CTRL 0x19c6
12862306a36Sopenharmony_ci#define VPP2_OSD_SC_DUMMY_DATA 0x19c7
12962306a36Sopenharmony_ci#define VPP2_OSD_SC_CTRL0 0x19c8
13062306a36Sopenharmony_ci#define VPP2_OSD_SCI_WH_M1 0x19c9
13162306a36Sopenharmony_ci#define VPP2_OSD_SCO_H_START_END 0x19ca
13262306a36Sopenharmony_ci#define VPP2_OSD_SCO_V_START_END 0x19cb
13362306a36Sopenharmony_ci#define VPP2_OSD_SCALE_COEF_IDX 0x19cc
13462306a36Sopenharmony_ci#define VPP2_OSD_SCALE_COEF 0x19cd
13562306a36Sopenharmony_ci#define VPP2_INT_LINE_NUM 0x19ce
13662306a36Sopenharmony_ci
13762306a36Sopenharmony_ci/* viu */
13862306a36Sopenharmony_ci#define VIU_ADDR_START 0x1a00
13962306a36Sopenharmony_ci#define VIU_ADDR_END 0x1aff
14062306a36Sopenharmony_ci#define VIU_SW_RESET 0x1a01
14162306a36Sopenharmony_ci#define		VIU_SW_RESET_OSD1_AFBCD		BIT(31)
14262306a36Sopenharmony_ci#define		VIU_SW_RESET_G12A_OSD1_AFBCD	BIT(21)
14362306a36Sopenharmony_ci#define		VIU_SW_RESET_G12A_AFBC_ARB	BIT(19)
14462306a36Sopenharmony_ci#define		VIU_SW_RESET_OSD1               BIT(0)
14562306a36Sopenharmony_ci#define VIU_MISC_CTRL0 0x1a06
14662306a36Sopenharmony_ci#define		VIU_CTRL0_VD1_AFBC_MASK         0x170000
14762306a36Sopenharmony_ci#define		VIU_CTRL0_AFBC_TO_VD1		BIT(20)
14862306a36Sopenharmony_ci#define VIU_MISC_CTRL1 0x1a07
14962306a36Sopenharmony_ci#define		MALI_AFBC_MISC			GENMASK(15, 8)
15062306a36Sopenharmony_ci#define D2D3_INTF_LENGTH 0x1a08
15162306a36Sopenharmony_ci#define D2D3_INTF_CTRL0 0x1a09
15262306a36Sopenharmony_ci#define VD1_AFBCD0_MISC_CTRL 0x1a0a
15362306a36Sopenharmony_ci#define		VD1_AXI_SEL_AFBC		(1 << 12)
15462306a36Sopenharmony_ci#define		AFBC_VD1_SEL			(1 << 10)
15562306a36Sopenharmony_ci#define VD2_AFBCD1_MISC_CTRL 0x1a0b
15662306a36Sopenharmony_ci#define VIU_OSD1_CTRL_STAT 0x1a10
15762306a36Sopenharmony_ci#define		VIU_OSD1_OSD_BLK_ENABLE         BIT(0)
15862306a36Sopenharmony_ci#define		VIU_OSD1_OSD_MEM_MODE_LINEAR	BIT(2)
15962306a36Sopenharmony_ci#define		VIU_OSD1_POSTBLD_SRC_VD1        (1 << 8)
16062306a36Sopenharmony_ci#define		VIU_OSD1_POSTBLD_SRC_VD2        (2 << 8)
16162306a36Sopenharmony_ci#define		VIU_OSD1_POSTBLD_SRC_OSD1       (3 << 8)
16262306a36Sopenharmony_ci#define		VIU_OSD1_POSTBLD_SRC_OSD2       (4 << 8)
16362306a36Sopenharmony_ci#define		VIU_OSD1_OSD_ENABLE             BIT(21)
16462306a36Sopenharmony_ci#define		VIU_OSD1_CFG_SYN_EN             BIT(31)
16562306a36Sopenharmony_ci#define VIU_OSD1_CTRL_STAT2 0x1a2d
16662306a36Sopenharmony_ci#define VIU_OSD1_COLOR_ADDR 0x1a11
16762306a36Sopenharmony_ci#define VIU_OSD1_COLOR 0x1a12
16862306a36Sopenharmony_ci#define VIU_OSD1_TCOLOR_AG0 0x1a17
16962306a36Sopenharmony_ci#define VIU_OSD1_TCOLOR_AG1 0x1a18
17062306a36Sopenharmony_ci#define VIU_OSD1_TCOLOR_AG2 0x1a19
17162306a36Sopenharmony_ci#define VIU_OSD1_TCOLOR_AG3 0x1a1a
17262306a36Sopenharmony_ci#define VIU_OSD1_BLK0_CFG_W0 0x1a1b
17362306a36Sopenharmony_ci#define VIU_OSD1_BLK1_CFG_W0 0x1a1f
17462306a36Sopenharmony_ci#define VIU_OSD1_BLK2_CFG_W0 0x1a23
17562306a36Sopenharmony_ci#define VIU_OSD1_BLK3_CFG_W0 0x1a27
17662306a36Sopenharmony_ci#define VIU_OSD1_BLK0_CFG_W1 0x1a1c
17762306a36Sopenharmony_ci#define VIU_OSD1_BLK1_CFG_W1 0x1a20
17862306a36Sopenharmony_ci#define VIU_OSD1_BLK2_CFG_W1 0x1a24
17962306a36Sopenharmony_ci#define VIU_OSD1_BLK3_CFG_W1 0x1a28
18062306a36Sopenharmony_ci#define VIU_OSD1_BLK0_CFG_W2 0x1a1d
18162306a36Sopenharmony_ci#define VIU_OSD1_BLK1_CFG_W2 0x1a21
18262306a36Sopenharmony_ci#define VIU_OSD1_BLK2_CFG_W2 0x1a25
18362306a36Sopenharmony_ci#define VIU_OSD1_BLK3_CFG_W2 0x1a29
18462306a36Sopenharmony_ci#define VIU_OSD1_BLK0_CFG_W3 0x1a1e
18562306a36Sopenharmony_ci#define VIU_OSD1_BLK1_CFG_W3 0x1a22
18662306a36Sopenharmony_ci#define VIU_OSD1_BLK2_CFG_W3 0x1a26
18762306a36Sopenharmony_ci#define VIU_OSD1_BLK3_CFG_W3 0x1a2a
18862306a36Sopenharmony_ci#define VIU_OSD1_BLK0_CFG_W4 0x1a13
18962306a36Sopenharmony_ci#define VIU_OSD1_BLK1_CFG_W4 0x1a14
19062306a36Sopenharmony_ci#define VIU_OSD1_BLK2_CFG_W4 0x1a15
19162306a36Sopenharmony_ci#define VIU_OSD1_BLK3_CFG_W4 0x1a16
19262306a36Sopenharmony_ci#define VIU_OSD1_FIFO_CTRL_STAT 0x1a2b
19362306a36Sopenharmony_ci#define VIU_OSD1_TEST_RDDATA 0x1a2c
19462306a36Sopenharmony_ci#define VIU_OSD1_PROT_CTRL 0x1a2e
19562306a36Sopenharmony_ci#define VIU_OSD1_MALI_UNPACK_CTRL 0x1a2f
19662306a36Sopenharmony_ci#define		VIU_OSD1_MALI_UNPACK_EN		BIT(31)
19762306a36Sopenharmony_ci#define		VIU_OSD1_MALI_AFBCD_R_REORDER	GENMASK(15, 12)
19862306a36Sopenharmony_ci#define		VIU_OSD1_MALI_AFBCD_G_REORDER	GENMASK(11, 8)
19962306a36Sopenharmony_ci#define		VIU_OSD1_MALI_AFBCD_B_REORDER	GENMASK(7, 4)
20062306a36Sopenharmony_ci#define		VIU_OSD1_MALI_AFBCD_A_REORDER	GENMASK(3, 0)
20162306a36Sopenharmony_ci#define		VIU_OSD1_MALI_REORDER_R		1
20262306a36Sopenharmony_ci#define		VIU_OSD1_MALI_REORDER_G		2
20362306a36Sopenharmony_ci#define		VIU_OSD1_MALI_REORDER_B		3
20462306a36Sopenharmony_ci#define		VIU_OSD1_MALI_REORDER_A		4
20562306a36Sopenharmony_ci#define VIU_OSD2_CTRL_STAT 0x1a30
20662306a36Sopenharmony_ci#define VIU_OSD2_CTRL_STAT2 0x1a4d
20762306a36Sopenharmony_ci#define VIU_OSD2_COLOR_ADDR 0x1a31
20862306a36Sopenharmony_ci#define VIU_OSD2_COLOR 0x1a32
20962306a36Sopenharmony_ci#define VIU_OSD2_HL1_H_START_END 0x1a33
21062306a36Sopenharmony_ci#define VIU_OSD2_HL1_V_START_END 0x1a34
21162306a36Sopenharmony_ci#define VIU_OSD2_HL2_H_START_END 0x1a35
21262306a36Sopenharmony_ci#define VIU_OSD2_HL2_V_START_END 0x1a36
21362306a36Sopenharmony_ci#define VIU_OSD2_TCOLOR_AG0 0x1a37
21462306a36Sopenharmony_ci#define VIU_OSD2_TCOLOR_AG1 0x1a38
21562306a36Sopenharmony_ci#define VIU_OSD2_TCOLOR_AG2 0x1a39
21662306a36Sopenharmony_ci#define VIU_OSD2_TCOLOR_AG3 0x1a3a
21762306a36Sopenharmony_ci#define VIU_OSD2_BLK0_CFG_W0 0x1a3b
21862306a36Sopenharmony_ci#define VIU_OSD2_BLK1_CFG_W0 0x1a3f
21962306a36Sopenharmony_ci#define VIU_OSD2_BLK2_CFG_W0 0x1a43
22062306a36Sopenharmony_ci#define VIU_OSD2_BLK3_CFG_W0 0x1a47
22162306a36Sopenharmony_ci#define VIU_OSD2_BLK0_CFG_W1 0x1a3c
22262306a36Sopenharmony_ci#define VIU_OSD2_BLK1_CFG_W1 0x1a40
22362306a36Sopenharmony_ci#define VIU_OSD2_BLK2_CFG_W1 0x1a44
22462306a36Sopenharmony_ci#define VIU_OSD2_BLK3_CFG_W1 0x1a48
22562306a36Sopenharmony_ci#define VIU_OSD2_BLK0_CFG_W2 0x1a3d
22662306a36Sopenharmony_ci#define VIU_OSD2_BLK1_CFG_W2 0x1a41
22762306a36Sopenharmony_ci#define VIU_OSD2_BLK2_CFG_W2 0x1a45
22862306a36Sopenharmony_ci#define VIU_OSD2_BLK3_CFG_W2 0x1a49
22962306a36Sopenharmony_ci#define VIU_OSD2_BLK0_CFG_W3 0x1a3e
23062306a36Sopenharmony_ci#define VIU_OSD2_BLK1_CFG_W3 0x1a42
23162306a36Sopenharmony_ci#define VIU_OSD2_BLK2_CFG_W3 0x1a46
23262306a36Sopenharmony_ci#define VIU_OSD2_BLK3_CFG_W3 0x1a4a
23362306a36Sopenharmony_ci#define VIU_OSD2_BLK0_CFG_W4 0x1a64
23462306a36Sopenharmony_ci#define VIU_OSD2_BLK1_CFG_W4 0x1a65
23562306a36Sopenharmony_ci#define VIU_OSD2_BLK2_CFG_W4 0x1a66
23662306a36Sopenharmony_ci#define VIU_OSD2_BLK3_CFG_W4 0x1a67
23762306a36Sopenharmony_ci#define VIU_OSD2_FIFO_CTRL_STAT 0x1a4b
23862306a36Sopenharmony_ci#define VIU_OSD2_TEST_RDDATA 0x1a4c
23962306a36Sopenharmony_ci#define VIU_OSD2_PROT_CTRL 0x1a4e
24062306a36Sopenharmony_ci#define VIU_OSD2_MALI_UNPACK_CTRL 0x1abd
24162306a36Sopenharmony_ci#define VIU_OSD2_DIMM_CTRL 0x1acf
24262306a36Sopenharmony_ci
24362306a36Sopenharmony_ci#define VIU_OSD3_CTRL_STAT 0x3d80
24462306a36Sopenharmony_ci#define VIU_OSD3_CTRL_STAT2 0x3d81
24562306a36Sopenharmony_ci#define VIU_OSD3_COLOR_ADDR 0x3d82
24662306a36Sopenharmony_ci#define VIU_OSD3_COLOR 0x3d83
24762306a36Sopenharmony_ci#define VIU_OSD3_TCOLOR_AG0 0x3d84
24862306a36Sopenharmony_ci#define VIU_OSD3_TCOLOR_AG1 0x3d85
24962306a36Sopenharmony_ci#define VIU_OSD3_TCOLOR_AG2 0x3d86
25062306a36Sopenharmony_ci#define VIU_OSD3_TCOLOR_AG3 0x3d87
25162306a36Sopenharmony_ci#define VIU_OSD3_BLK0_CFG_W0 0x3d88
25262306a36Sopenharmony_ci#define VIU_OSD3_BLK0_CFG_W1 0x3d8c
25362306a36Sopenharmony_ci#define VIU_OSD3_BLK0_CFG_W2 0x3d90
25462306a36Sopenharmony_ci#define VIU_OSD3_BLK0_CFG_W3 0x3d94
25562306a36Sopenharmony_ci#define VIU_OSD3_BLK0_CFG_W4 0x3d98
25662306a36Sopenharmony_ci#define VIU_OSD3_BLK1_CFG_W4 0x3d99
25762306a36Sopenharmony_ci#define VIU_OSD3_BLK2_CFG_W4 0x3d9a
25862306a36Sopenharmony_ci#define VIU_OSD3_FIFO_CTRL_STAT 0x3d9c
25962306a36Sopenharmony_ci#define VIU_OSD3_TEST_RDDATA 0x3d9d
26062306a36Sopenharmony_ci#define VIU_OSD3_PROT_CTRL 0x3d9e
26162306a36Sopenharmony_ci#define VIU_OSD3_MALI_UNPACK_CTRL 0x3d9f
26262306a36Sopenharmony_ci#define VIU_OSD3_DIMM_CTRL 0x3da0
26362306a36Sopenharmony_ci
26462306a36Sopenharmony_ci#define VIU_OSD_DDR_PRIORITY_URGENT      BIT(0)
26562306a36Sopenharmony_ci#define VIU_OSD_HOLD_FIFO_LINES(lines)   ((lines & 0x1f) << 5)
26662306a36Sopenharmony_ci#define VIU_OSD_FIFO_DEPTH_VAL(val)      ((val & 0x7f) << 12)
26762306a36Sopenharmony_ci#define VIU_OSD_WORDS_PER_BURST(words)   (((words & 0x4) >> 1) << 22)
26862306a36Sopenharmony_ci#define VIU_OSD_FIFO_LIMITS(size)        ((size & 0xf) << 24)
26962306a36Sopenharmony_ci#define VIU_OSD_BURST_LENGTH_24          (0x0 << 31 | 0x0 << 10)
27062306a36Sopenharmony_ci#define VIU_OSD_BURST_LENGTH_32          (0x0 << 31 | 0x1 << 10)
27162306a36Sopenharmony_ci#define VIU_OSD_BURST_LENGTH_48          (0x0 << 31 | 0x2 << 10)
27262306a36Sopenharmony_ci#define VIU_OSD_BURST_LENGTH_64          (0x0 << 31 | 0x3 << 10)
27362306a36Sopenharmony_ci#define VIU_OSD_BURST_LENGTH_96          (0x1 << 31 | 0x0 << 10)
27462306a36Sopenharmony_ci#define VIU_OSD_BURST_LENGTH_128         (0x1 << 31 | 0x1 << 10)
27562306a36Sopenharmony_ci
27662306a36Sopenharmony_ci#define VD1_IF0_GEN_REG 0x1a50
27762306a36Sopenharmony_ci#define VD1_IF0_CANVAS0 0x1a51
27862306a36Sopenharmony_ci#define VD1_IF0_CANVAS1 0x1a52
27962306a36Sopenharmony_ci#define VD1_IF0_LUMA_X0 0x1a53
28062306a36Sopenharmony_ci#define VD1_IF0_LUMA_Y0 0x1a54
28162306a36Sopenharmony_ci#define VD1_IF0_CHROMA_X0 0x1a55
28262306a36Sopenharmony_ci#define VD1_IF0_CHROMA_Y0 0x1a56
28362306a36Sopenharmony_ci#define VD1_IF0_LUMA_X1 0x1a57
28462306a36Sopenharmony_ci#define VD1_IF0_LUMA_Y1 0x1a58
28562306a36Sopenharmony_ci#define VD1_IF0_CHROMA_X1 0x1a59
28662306a36Sopenharmony_ci#define VD1_IF0_CHROMA_Y1 0x1a5a
28762306a36Sopenharmony_ci#define VD1_IF0_RPT_LOOP 0x1a5b
28862306a36Sopenharmony_ci#define VD1_IF0_LUMA0_RPT_PAT 0x1a5c
28962306a36Sopenharmony_ci#define VD1_IF0_CHROMA0_RPT_PAT 0x1a5d
29062306a36Sopenharmony_ci#define VD1_IF0_LUMA1_RPT_PAT 0x1a5e
29162306a36Sopenharmony_ci#define VD1_IF0_CHROMA1_RPT_PAT 0x1a5f
29262306a36Sopenharmony_ci#define VD1_IF0_LUMA_PSEL 0x1a60
29362306a36Sopenharmony_ci#define VD1_IF0_CHROMA_PSEL 0x1a61
29462306a36Sopenharmony_ci#define VD1_IF0_DUMMY_PIXEL 0x1a62
29562306a36Sopenharmony_ci#define VD1_IF0_LUMA_FIFO_SIZE 0x1a63
29662306a36Sopenharmony_ci#define VD1_IF0_RANGE_MAP_Y 0x1a6a
29762306a36Sopenharmony_ci#define VD1_IF0_RANGE_MAP_CB 0x1a6b
29862306a36Sopenharmony_ci#define VD1_IF0_RANGE_MAP_CR 0x1a6c
29962306a36Sopenharmony_ci#define VD1_IF0_GEN_REG2 0x1a6d
30062306a36Sopenharmony_ci#define VD1_IF0_PROT_CNTL 0x1a6e
30162306a36Sopenharmony_ci#define VIU_VD1_FMT_CTRL 0x1a68
30262306a36Sopenharmony_ci#define VIU_VD1_FMT_W 0x1a69
30362306a36Sopenharmony_ci#define VD2_IF0_GEN_REG 0x1a70
30462306a36Sopenharmony_ci#define VD2_IF0_CANVAS0 0x1a71
30562306a36Sopenharmony_ci#define VD2_IF0_CANVAS1 0x1a72
30662306a36Sopenharmony_ci#define VD2_IF0_LUMA_X0 0x1a73
30762306a36Sopenharmony_ci#define VD2_IF0_LUMA_Y0 0x1a74
30862306a36Sopenharmony_ci#define VD2_IF0_CHROMA_X0 0x1a75
30962306a36Sopenharmony_ci#define VD2_IF0_CHROMA_Y0 0x1a76
31062306a36Sopenharmony_ci#define VD2_IF0_LUMA_X1 0x1a77
31162306a36Sopenharmony_ci#define VD2_IF0_LUMA_Y1 0x1a78
31262306a36Sopenharmony_ci#define VD2_IF0_CHROMA_X1 0x1a79
31362306a36Sopenharmony_ci#define VD2_IF0_CHROMA_Y1 0x1a7a
31462306a36Sopenharmony_ci#define VD2_IF0_RPT_LOOP 0x1a7b
31562306a36Sopenharmony_ci#define VD2_IF0_LUMA0_RPT_PAT 0x1a7c
31662306a36Sopenharmony_ci#define VD2_IF0_CHROMA0_RPT_PAT 0x1a7d
31762306a36Sopenharmony_ci#define VD2_IF0_LUMA1_RPT_PAT 0x1a7e
31862306a36Sopenharmony_ci#define VD2_IF0_CHROMA1_RPT_PAT 0x1a7f
31962306a36Sopenharmony_ci#define VD2_IF0_LUMA_PSEL 0x1a80
32062306a36Sopenharmony_ci#define VD2_IF0_CHROMA_PSEL 0x1a81
32162306a36Sopenharmony_ci#define VD2_IF0_DUMMY_PIXEL 0x1a82
32262306a36Sopenharmony_ci#define VD2_IF0_LUMA_FIFO_SIZE 0x1a83
32362306a36Sopenharmony_ci#define VD2_IF0_RANGE_MAP_Y 0x1a8a
32462306a36Sopenharmony_ci#define VD2_IF0_RANGE_MAP_CB 0x1a8b
32562306a36Sopenharmony_ci#define VD2_IF0_RANGE_MAP_CR 0x1a8c
32662306a36Sopenharmony_ci#define VD2_IF0_GEN_REG2 0x1a8d
32762306a36Sopenharmony_ci#define VD2_IF0_PROT_CNTL 0x1a8e
32862306a36Sopenharmony_ci#define VIU_VD2_FMT_CTRL 0x1a88
32962306a36Sopenharmony_ci#define VIU_VD2_FMT_W 0x1a89
33062306a36Sopenharmony_ci
33162306a36Sopenharmony_ci/* VIU Matrix Registers */
33262306a36Sopenharmony_ci#define VIU_OSD1_MATRIX_CTRL 0x1a90
33362306a36Sopenharmony_ci#define VIU_OSD1_MATRIX_COEF00_01 0x1a91
33462306a36Sopenharmony_ci#define VIU_OSD1_MATRIX_COEF02_10 0x1a92
33562306a36Sopenharmony_ci#define VIU_OSD1_MATRIX_COEF11_12 0x1a93
33662306a36Sopenharmony_ci#define VIU_OSD1_MATRIX_COEF20_21 0x1a94
33762306a36Sopenharmony_ci#define VIU_OSD1_MATRIX_COLMOD_COEF42 0x1a95
33862306a36Sopenharmony_ci#define VIU_OSD1_MATRIX_OFFSET0_1 0x1a96
33962306a36Sopenharmony_ci#define VIU_OSD1_MATRIX_OFFSET2 0x1a97
34062306a36Sopenharmony_ci#define VIU_OSD1_MATRIX_PRE_OFFSET0_1 0x1a98
34162306a36Sopenharmony_ci#define VIU_OSD1_MATRIX_PRE_OFFSET2 0x1a99
34262306a36Sopenharmony_ci#define VIU_OSD1_MATRIX_COEF22_30 0x1a9d
34362306a36Sopenharmony_ci#define VIU_OSD1_MATRIX_COEF31_32 0x1a9e
34462306a36Sopenharmony_ci#define VIU_OSD1_MATRIX_COEF40_41 0x1a9f
34562306a36Sopenharmony_ci#define VD1_IF0_GEN_REG3 0x1aa7
34662306a36Sopenharmony_ci
34762306a36Sopenharmony_ci#define VIU_OSD_BLENDO_H_START_END 0x1aa9
34862306a36Sopenharmony_ci#define VIU_OSD_BLENDO_V_START_END 0x1aaa
34962306a36Sopenharmony_ci#define VIU_OSD_BLEND_GEN_CTRL0 0x1aab
35062306a36Sopenharmony_ci#define VIU_OSD_BLEND_GEN_CTRL1 0x1aac
35162306a36Sopenharmony_ci#define VIU_OSD_BLEND_DUMMY_DATA 0x1aad
35262306a36Sopenharmony_ci#define VIU_OSD_BLEND_CURRENT_XY 0x1aae
35362306a36Sopenharmony_ci
35462306a36Sopenharmony_ci#define VIU_OSD2_MATRIX_CTRL 0x1ab0
35562306a36Sopenharmony_ci#define VIU_OSD2_MATRIX_COEF00_01 0x1ab1
35662306a36Sopenharmony_ci#define VIU_OSD2_MATRIX_COEF02_10 0x1ab2
35762306a36Sopenharmony_ci#define VIU_OSD2_MATRIX_COEF11_12 0x1ab3
35862306a36Sopenharmony_ci#define VIU_OSD2_MATRIX_COEF20_21 0x1ab4
35962306a36Sopenharmony_ci#define VIU_OSD2_MATRIX_COEF22 0x1ab5
36062306a36Sopenharmony_ci#define VIU_OSD2_MATRIX_OFFSET0_1 0x1ab6
36162306a36Sopenharmony_ci#define VIU_OSD2_MATRIX_OFFSET2 0x1ab7
36262306a36Sopenharmony_ci#define VIU_OSD2_MATRIX_PRE_OFFSET0_1 0x1ab8
36362306a36Sopenharmony_ci#define VIU_OSD2_MATRIX_PRE_OFFSET2 0x1ab9
36462306a36Sopenharmony_ci#define VIU_OSD2_MATRIX_PROBE_COLOR 0x1aba
36562306a36Sopenharmony_ci#define VIU_OSD2_MATRIX_HL_COLOR 0x1abb
36662306a36Sopenharmony_ci#define VIU_OSD2_MATRIX_PROBE_POS 0x1abc
36762306a36Sopenharmony_ci#define VIU_OSD1_EOTF_CTL 0x1ad4
36862306a36Sopenharmony_ci#define VIU_OSD1_EOTF_COEF00_01 0x1ad5
36962306a36Sopenharmony_ci#define VIU_OSD1_EOTF_COEF02_10 0x1ad6
37062306a36Sopenharmony_ci#define VIU_OSD1_EOTF_COEF11_12 0x1ad7
37162306a36Sopenharmony_ci#define VIU_OSD1_EOTF_COEF20_21 0x1ad8
37262306a36Sopenharmony_ci#define VIU_OSD1_EOTF_COEF22_RS 0x1ad9
37362306a36Sopenharmony_ci#define VIU_OSD1_EOTF_LUT_ADDR_PORT 0x1ada
37462306a36Sopenharmony_ci#define VIU_OSD1_EOTF_LUT_DATA_PORT 0x1adb
37562306a36Sopenharmony_ci#define VIU_OSD1_OETF_CTL 0x1adc
37662306a36Sopenharmony_ci#define VIU_OSD1_OETF_LUT_ADDR_PORT 0x1add
37762306a36Sopenharmony_ci#define VIU_OSD1_OETF_LUT_DATA_PORT 0x1ade
37862306a36Sopenharmony_ci#define AFBC_ENABLE 0x1ae0
37962306a36Sopenharmony_ci#define AFBC_MODE 0x1ae1
38062306a36Sopenharmony_ci#define AFBC_SIZE_IN 0x1ae2
38162306a36Sopenharmony_ci#define AFBC_DEC_DEF_COLOR 0x1ae3
38262306a36Sopenharmony_ci#define AFBC_CONV_CTRL 0x1ae4
38362306a36Sopenharmony_ci#define AFBC_LBUF_DEPTH 0x1ae5
38462306a36Sopenharmony_ci#define AFBC_HEAD_BADDR 0x1ae6
38562306a36Sopenharmony_ci#define AFBC_BODY_BADDR 0x1ae7
38662306a36Sopenharmony_ci#define AFBC_SIZE_OUT 0x1ae8
38762306a36Sopenharmony_ci#define AFBC_OUT_YSCOPE 0x1ae9
38862306a36Sopenharmony_ci#define AFBC_STAT 0x1aea
38962306a36Sopenharmony_ci#define AFBC_VD_CFMT_CTRL 0x1aeb
39062306a36Sopenharmony_ci#define AFBC_VD_CFMT_W 0x1aec
39162306a36Sopenharmony_ci#define AFBC_MIF_HOR_SCOPE 0x1aed
39262306a36Sopenharmony_ci#define AFBC_MIF_VER_SCOPE 0x1aee
39362306a36Sopenharmony_ci#define AFBC_PIXEL_HOR_SCOPE 0x1aef
39462306a36Sopenharmony_ci#define AFBC_PIXEL_VER_SCOPE 0x1af0
39562306a36Sopenharmony_ci#define AFBC_VD_CFMT_H 0x1af1
39662306a36Sopenharmony_ci
39762306a36Sopenharmony_ci/* vpp */
39862306a36Sopenharmony_ci#define VPP_DUMMY_DATA 0x1d00
39962306a36Sopenharmony_ci#define VPP_LINE_IN_LENGTH 0x1d01
40062306a36Sopenharmony_ci#define VPP_PIC_IN_HEIGHT 0x1d02
40162306a36Sopenharmony_ci#define VPP_SCALE_COEF_IDX 0x1d03
40262306a36Sopenharmony_ci#define		VPP_SCALE_HORIZONTAL_COEF       BIT(8)
40362306a36Sopenharmony_ci#define VPP_SCALE_COEF 0x1d04
40462306a36Sopenharmony_ci#define VPP_VSC_REGION12_STARTP 0x1d05
40562306a36Sopenharmony_ci#define VPP_VSC_REGION34_STARTP 0x1d06
40662306a36Sopenharmony_ci#define VPP_VSC_REGION4_ENDP 0x1d07
40762306a36Sopenharmony_ci#define VPP_VSC_START_PHASE_STEP 0x1d08
40862306a36Sopenharmony_ci#define VPP_VSC_REGION0_PHASE_SLOPE 0x1d09
40962306a36Sopenharmony_ci#define VPP_VSC_REGION1_PHASE_SLOPE 0x1d0a
41062306a36Sopenharmony_ci#define VPP_VSC_REGION3_PHASE_SLOPE 0x1d0b
41162306a36Sopenharmony_ci#define VPP_VSC_REGION4_PHASE_SLOPE 0x1d0c
41262306a36Sopenharmony_ci#define VPP_VSC_PHASE_CTRL 0x1d0d
41362306a36Sopenharmony_ci#define VPP_VSC_INI_PHASE 0x1d0e
41462306a36Sopenharmony_ci#define VPP_HSC_REGION12_STARTP 0x1d10
41562306a36Sopenharmony_ci#define VPP_HSC_REGION34_STARTP 0x1d11
41662306a36Sopenharmony_ci#define VPP_HSC_REGION4_ENDP 0x1d12
41762306a36Sopenharmony_ci#define VPP_HSC_START_PHASE_STEP 0x1d13
41862306a36Sopenharmony_ci#define VPP_HSC_REGION0_PHASE_SLOPE 0x1d14
41962306a36Sopenharmony_ci#define VPP_HSC_REGION1_PHASE_SLOPE 0x1d15
42062306a36Sopenharmony_ci#define VPP_HSC_REGION3_PHASE_SLOPE 0x1d16
42162306a36Sopenharmony_ci#define VPP_HSC_REGION4_PHASE_SLOPE 0x1d17
42262306a36Sopenharmony_ci#define VPP_HSC_PHASE_CTRL 0x1d18
42362306a36Sopenharmony_ci#define VPP_SC_MISC 0x1d19
42462306a36Sopenharmony_ci#define		VPP_SC_VD_EN_ENABLE             BIT(15)
42562306a36Sopenharmony_ci#define		VPP_SC_TOP_EN_ENABLE            BIT(16)
42662306a36Sopenharmony_ci#define		VPP_SC_HSC_EN_ENABLE            BIT(17)
42762306a36Sopenharmony_ci#define		VPP_SC_VSC_EN_ENABLE            BIT(18)
42862306a36Sopenharmony_ci#define		VPP_VSC_BANK_LENGTH(length)     (length & 0x7)
42962306a36Sopenharmony_ci#define		VPP_HSC_BANK_LENGTH(length)     ((length & 0x7) << 8)
43062306a36Sopenharmony_ci#define VPP_PREBLEND_VD1_H_START_END 0x1d1a
43162306a36Sopenharmony_ci#define VPP_PREBLEND_VD1_V_START_END 0x1d1b
43262306a36Sopenharmony_ci#define VPP_POSTBLEND_VD1_H_START_END 0x1d1c
43362306a36Sopenharmony_ci#define VPP_POSTBLEND_VD1_V_START_END 0x1d1d
43462306a36Sopenharmony_ci#define VPP_BLEND_VD2_H_START_END 0x1d1e
43562306a36Sopenharmony_ci#define VPP_BLEND_VD2_V_START_END 0x1d1f
43662306a36Sopenharmony_ci#define VPP_PREBLEND_H_SIZE 0x1d20
43762306a36Sopenharmony_ci#define VPP_POSTBLEND_H_SIZE 0x1d21
43862306a36Sopenharmony_ci#define VPP_HOLD_LINES 0x1d22
43962306a36Sopenharmony_ci#define		VPP_POSTBLEND_HOLD_LINES(lines) (lines & 0xf)
44062306a36Sopenharmony_ci#define		VPP_PREBLEND_HOLD_LINES(lines)  ((lines & 0xf) << 8)
44162306a36Sopenharmony_ci#define VPP_BLEND_ONECOLOR_CTRL 0x1d23
44262306a36Sopenharmony_ci#define VPP_PREBLEND_CURRENT_XY 0x1d24
44362306a36Sopenharmony_ci#define VPP_POSTBLEND_CURRENT_XY 0x1d25
44462306a36Sopenharmony_ci#define VPP_MISC 0x1d26
44562306a36Sopenharmony_ci#define		VPP_PREBLEND_ENABLE             BIT(6)
44662306a36Sopenharmony_ci#define		VPP_POSTBLEND_ENABLE            BIT(7)
44762306a36Sopenharmony_ci#define		VPP_OSD2_ALPHA_PREMULT          BIT(8)
44862306a36Sopenharmony_ci#define		VPP_OSD1_ALPHA_PREMULT          BIT(9)
44962306a36Sopenharmony_ci#define		VPP_VD1_POSTBLEND               BIT(10)
45062306a36Sopenharmony_ci#define		VPP_VD2_POSTBLEND               BIT(11)
45162306a36Sopenharmony_ci#define		VPP_OSD1_POSTBLEND              BIT(12)
45262306a36Sopenharmony_ci#define		VPP_OSD2_POSTBLEND              BIT(13)
45362306a36Sopenharmony_ci#define		VPP_VD1_PREBLEND                BIT(14)
45462306a36Sopenharmony_ci#define		VPP_VD2_PREBLEND                BIT(15)
45562306a36Sopenharmony_ci#define		VPP_OSD1_PREBLEND               BIT(16)
45662306a36Sopenharmony_ci#define		VPP_OSD2_PREBLEND               BIT(17)
45762306a36Sopenharmony_ci#define		VPP_COLOR_MNG_ENABLE            BIT(28)
45862306a36Sopenharmony_ci#define VPP_OFIFO_SIZE 0x1d27
45962306a36Sopenharmony_ci#define		VPP_OFIFO_SIZE_MASK             GENMASK(13, 0)
46062306a36Sopenharmony_ci#define		VPP_OFIFO_SIZE_DEFAULT          (0xfff << 20 | 0x1000)
46162306a36Sopenharmony_ci#define VPP_FIFO_STATUS 0x1d28
46262306a36Sopenharmony_ci#define VPP_SMOKE_CTRL 0x1d29
46362306a36Sopenharmony_ci#define VPP_SMOKE1_VAL 0x1d2a
46462306a36Sopenharmony_ci#define VPP_SMOKE2_VAL 0x1d2b
46562306a36Sopenharmony_ci#define VPP_SMOKE3_VAL 0x1d2c
46662306a36Sopenharmony_ci#define VPP_SMOKE1_H_START_END 0x1d2d
46762306a36Sopenharmony_ci#define VPP_SMOKE1_V_START_END 0x1d2e
46862306a36Sopenharmony_ci#define VPP_SMOKE2_H_START_END 0x1d2f
46962306a36Sopenharmony_ci#define VPP_SMOKE2_V_START_END 0x1d30
47062306a36Sopenharmony_ci#define VPP_SMOKE3_H_START_END 0x1d31
47162306a36Sopenharmony_ci#define VPP_SMOKE3_V_START_END 0x1d32
47262306a36Sopenharmony_ci#define VPP_SCO_FIFO_CTRL 0x1d33
47362306a36Sopenharmony_ci#define VPP_HSC_PHASE_CTRL1 0x1d34
47462306a36Sopenharmony_ci#define VPP_HSC_INI_PAT_CTRL 0x1d35
47562306a36Sopenharmony_ci#define VPP_VADJ_CTRL 0x1d40
47662306a36Sopenharmony_ci#define		VPP_MINUS_BLACK_LVL_VADJ1_ENABLE BIT(1)
47762306a36Sopenharmony_ci
47862306a36Sopenharmony_ci#define VPP_VADJ1_Y 0x1d41
47962306a36Sopenharmony_ci#define VPP_VADJ1_MA_MB 0x1d42
48062306a36Sopenharmony_ci#define VPP_VADJ1_MC_MD 0x1d43
48162306a36Sopenharmony_ci#define VPP_VADJ2_Y 0x1d44
48262306a36Sopenharmony_ci#define VPP_VADJ2_MA_MB 0x1d45
48362306a36Sopenharmony_ci#define VPP_VADJ2_MC_MD 0x1d46
48462306a36Sopenharmony_ci#define VPP_HSHARP_CTRL 0x1d50
48562306a36Sopenharmony_ci#define VPP_HSHARP_LUMA_THRESH01 0x1d51
48662306a36Sopenharmony_ci#define VPP_HSHARP_LUMA_THRESH23 0x1d52
48762306a36Sopenharmony_ci#define VPP_HSHARP_CHROMA_THRESH01 0x1d53
48862306a36Sopenharmony_ci#define VPP_HSHARP_CHROMA_THRESH23 0x1d54
48962306a36Sopenharmony_ci#define VPP_HSHARP_LUMA_GAIN 0x1d55
49062306a36Sopenharmony_ci#define VPP_HSHARP_CHROMA_GAIN 0x1d56
49162306a36Sopenharmony_ci#define VPP_MATRIX_PROBE_COLOR 0x1d5c
49262306a36Sopenharmony_ci#define VPP_MATRIX_HL_COLOR 0x1d5d
49362306a36Sopenharmony_ci#define VPP_MATRIX_PROBE_POS 0x1d5e
49462306a36Sopenharmony_ci#define VPP_MATRIX_CTRL 0x1d5f
49562306a36Sopenharmony_ci#define VPP_MATRIX_COEF00_01 0x1d60
49662306a36Sopenharmony_ci#define VPP_MATRIX_COEF02_10 0x1d61
49762306a36Sopenharmony_ci#define VPP_MATRIX_COEF11_12 0x1d62
49862306a36Sopenharmony_ci#define VPP_MATRIX_COEF20_21 0x1d63
49962306a36Sopenharmony_ci#define VPP_MATRIX_COEF22 0x1d64
50062306a36Sopenharmony_ci#define VPP_MATRIX_OFFSET0_1 0x1d65
50162306a36Sopenharmony_ci#define VPP_MATRIX_OFFSET2 0x1d66
50262306a36Sopenharmony_ci#define VPP_MATRIX_PRE_OFFSET0_1 0x1d67
50362306a36Sopenharmony_ci#define VPP_MATRIX_PRE_OFFSET2 0x1d68
50462306a36Sopenharmony_ci#define VPP_DUMMY_DATA1 0x1d69
50562306a36Sopenharmony_ci#define VPP_GAINOFF_CTRL0 0x1d6a
50662306a36Sopenharmony_ci#define VPP_GAINOFF_CTRL1 0x1d6b
50762306a36Sopenharmony_ci#define VPP_GAINOFF_CTRL2 0x1d6c
50862306a36Sopenharmony_ci#define VPP_GAINOFF_CTRL3 0x1d6d
50962306a36Sopenharmony_ci#define VPP_GAINOFF_CTRL4 0x1d6e
51062306a36Sopenharmony_ci#define VPP_CHROMA_ADDR_PORT 0x1d70
51162306a36Sopenharmony_ci#define VPP_CHROMA_DATA_PORT 0x1d71
51262306a36Sopenharmony_ci#define VPP_GCLK_CTRL0 0x1d72
51362306a36Sopenharmony_ci#define VPP_GCLK_CTRL1 0x1d73
51462306a36Sopenharmony_ci#define VPP_SC_GCLK_CTRL 0x1d74
51562306a36Sopenharmony_ci#define VPP_MISC1 0x1d76
51662306a36Sopenharmony_ci#define VPP_BLACKEXT_CTRL 0x1d80
51762306a36Sopenharmony_ci#define VPP_DNLP_CTRL_00 0x1d81
51862306a36Sopenharmony_ci#define VPP_DNLP_CTRL_01 0x1d82
51962306a36Sopenharmony_ci#define VPP_DNLP_CTRL_02 0x1d83
52062306a36Sopenharmony_ci#define VPP_DNLP_CTRL_03 0x1d84
52162306a36Sopenharmony_ci#define VPP_DNLP_CTRL_04 0x1d85
52262306a36Sopenharmony_ci#define VPP_DNLP_CTRL_05 0x1d86
52362306a36Sopenharmony_ci#define VPP_DNLP_CTRL_06 0x1d87
52462306a36Sopenharmony_ci#define VPP_DNLP_CTRL_07 0x1d88
52562306a36Sopenharmony_ci#define VPP_DNLP_CTRL_08 0x1d89
52662306a36Sopenharmony_ci#define VPP_DNLP_CTRL_09 0x1d8a
52762306a36Sopenharmony_ci#define VPP_DNLP_CTRL_10 0x1d8b
52862306a36Sopenharmony_ci#define VPP_DNLP_CTRL_11 0x1d8c
52962306a36Sopenharmony_ci#define VPP_DNLP_CTRL_12 0x1d8d
53062306a36Sopenharmony_ci#define VPP_DNLP_CTRL_13 0x1d8e
53162306a36Sopenharmony_ci#define VPP_DNLP_CTRL_14 0x1d8f
53262306a36Sopenharmony_ci#define VPP_DNLP_CTRL_15 0x1d90
53362306a36Sopenharmony_ci#define VPP_PEAKING_HGAIN 0x1d91
53462306a36Sopenharmony_ci#define VPP_PEAKING_VGAIN 0x1d92
53562306a36Sopenharmony_ci#define VPP_PEAKING_NLP_1 0x1d93
53662306a36Sopenharmony_ci#define VPP_DOLBY_CTRL 0x1d93
53762306a36Sopenharmony_ci#define VPP_PPS_DUMMY_DATA_MODE (1 << 17)
53862306a36Sopenharmony_ci#define VPP_PEAKING_NLP_2 0x1d94
53962306a36Sopenharmony_ci#define VPP_PEAKING_NLP_3 0x1d95
54062306a36Sopenharmony_ci#define VPP_PEAKING_NLP_4 0x1d96
54162306a36Sopenharmony_ci#define VPP_PEAKING_NLP_5 0x1d97
54262306a36Sopenharmony_ci#define VPP_SHARP_LIMIT 0x1d98
54362306a36Sopenharmony_ci#define VPP_VLTI_CTRL 0x1d99
54462306a36Sopenharmony_ci#define VPP_HLTI_CTRL 0x1d9a
54562306a36Sopenharmony_ci#define VPP_CTI_CTRL 0x1d9b
54662306a36Sopenharmony_ci#define VPP_BLUE_STRETCH_1 0x1d9c
54762306a36Sopenharmony_ci#define VPP_BLUE_STRETCH_2 0x1d9d
54862306a36Sopenharmony_ci#define VPP_BLUE_STRETCH_3 0x1d9e
54962306a36Sopenharmony_ci#define VPP_CCORING_CTRL 0x1da0
55062306a36Sopenharmony_ci#define VPP_VE_ENABLE_CTRL 0x1da1
55162306a36Sopenharmony_ci#define VPP_VE_DEMO_LEFT_TOP_SCREEN_WIDTH 0x1da2
55262306a36Sopenharmony_ci#define VPP_VE_DEMO_CENTER_BAR 0x1da3
55362306a36Sopenharmony_ci#define VPP_VE_H_V_SIZE 0x1da4
55462306a36Sopenharmony_ci#define VPP_VDO_MEAS_CTRL 0x1da8
55562306a36Sopenharmony_ci#define VPP_VDO_MEAS_VS_COUNT_HI 0x1da9
55662306a36Sopenharmony_ci#define VPP_VDO_MEAS_VS_COUNT_LO 0x1daa
55762306a36Sopenharmony_ci#define VPP_INPUT_CTRL 0x1dab
55862306a36Sopenharmony_ci#define VPP_CTI_CTRL2 0x1dac
55962306a36Sopenharmony_ci#define VPP_PEAKING_SAT_THD1 0x1dad
56062306a36Sopenharmony_ci#define VPP_PEAKING_SAT_THD2 0x1dae
56162306a36Sopenharmony_ci#define VPP_PEAKING_SAT_THD3 0x1daf
56262306a36Sopenharmony_ci#define VPP_PEAKING_SAT_THD4 0x1db0
56362306a36Sopenharmony_ci#define VPP_PEAKING_SAT_THD5 0x1db1
56462306a36Sopenharmony_ci#define VPP_PEAKING_SAT_THD6 0x1db2
56562306a36Sopenharmony_ci#define VPP_PEAKING_SAT_THD7 0x1db3
56662306a36Sopenharmony_ci#define VPP_PEAKING_SAT_THD8 0x1db4
56762306a36Sopenharmony_ci#define VPP_PEAKING_SAT_THD9 0x1db5
56862306a36Sopenharmony_ci#define VPP_PEAKING_GAIN_ADD1 0x1db6
56962306a36Sopenharmony_ci#define VPP_PEAKING_GAIN_ADD2 0x1db7
57062306a36Sopenharmony_ci#define VPP_PEAKING_DNLP 0x1db8
57162306a36Sopenharmony_ci#define VPP_SHARP_DEMO_WIN_CTRL1 0x1db9
57262306a36Sopenharmony_ci#define VPP_SHARP_DEMO_WIN_CTRL2 0x1dba
57362306a36Sopenharmony_ci#define VPP_FRONT_HLTI_CTRL 0x1dbb
57462306a36Sopenharmony_ci#define VPP_FRONT_CTI_CTRL 0x1dbc
57562306a36Sopenharmony_ci#define VPP_FRONT_CTI_CTRL2 0x1dbd
57662306a36Sopenharmony_ci#define VPP_OSD_VSC_PHASE_STEP 0x1dc0
57762306a36Sopenharmony_ci#define VPP_OSD_VSC_INI_PHASE 0x1dc1
57862306a36Sopenharmony_ci#define VPP_OSD_VSC_CTRL0 0x1dc2
57962306a36Sopenharmony_ci#define VPP_OSD_HSC_PHASE_STEP 0x1dc3
58062306a36Sopenharmony_ci#define VPP_OSD_HSC_INI_PHASE 0x1dc4
58162306a36Sopenharmony_ci#define VPP_OSD_HSC_CTRL0 0x1dc5
58262306a36Sopenharmony_ci#define VPP_OSD_HSC_INI_PAT_CTRL 0x1dc6
58362306a36Sopenharmony_ci#define VPP_OSD_SC_DUMMY_DATA 0x1dc7
58462306a36Sopenharmony_ci#define VPP_OSD_SC_CTRL0 0x1dc8
58562306a36Sopenharmony_ci#define VPP_OSD_SCI_WH_M1 0x1dc9
58662306a36Sopenharmony_ci#define VPP_OSD_SCO_H_START_END 0x1dca
58762306a36Sopenharmony_ci#define VPP_OSD_SCO_V_START_END 0x1dcb
58862306a36Sopenharmony_ci#define VPP_OSD_SCALE_COEF_IDX 0x1dcc
58962306a36Sopenharmony_ci#define VPP_OSD_SCALE_COEF 0x1dcd
59062306a36Sopenharmony_ci#define VPP_INT_LINE_NUM 0x1dce
59162306a36Sopenharmony_ci
59262306a36Sopenharmony_ci#define VPP_WRAP_OSD1_MATRIX_COEF00_01 0x3d60
59362306a36Sopenharmony_ci#define VPP_WRAP_OSD1_MATRIX_COEF02_10 0x3d61
59462306a36Sopenharmony_ci#define VPP_WRAP_OSD1_MATRIX_COEF11_12 0x3d62
59562306a36Sopenharmony_ci#define VPP_WRAP_OSD1_MATRIX_COEF20_21 0x3d63
59662306a36Sopenharmony_ci#define VPP_WRAP_OSD1_MATRIX_COEF22 0x3d64
59762306a36Sopenharmony_ci#define VPP_WRAP_OSD1_MATRIX_COEF13_14 0x3d65
59862306a36Sopenharmony_ci#define VPP_WRAP_OSD1_MATRIX_COEF23_24 0x3d66
59962306a36Sopenharmony_ci#define VPP_WRAP_OSD1_MATRIX_COEF15_25 0x3d67
60062306a36Sopenharmony_ci#define VPP_WRAP_OSD1_MATRIX_CLIP 0x3d68
60162306a36Sopenharmony_ci#define VPP_WRAP_OSD1_MATRIX_OFFSET0_1 0x3d69
60262306a36Sopenharmony_ci#define VPP_WRAP_OSD1_MATRIX_OFFSET2 0x3d6a
60362306a36Sopenharmony_ci#define VPP_WRAP_OSD1_MATRIX_PRE_OFFSET0_1 0x3d6b
60462306a36Sopenharmony_ci#define VPP_WRAP_OSD1_MATRIX_PRE_OFFSET2 0x3d6c
60562306a36Sopenharmony_ci#define VPP_WRAP_OSD1_MATRIX_EN_CTRL 0x3d6d
60662306a36Sopenharmony_ci
60762306a36Sopenharmony_ci#define VPP_WRAP_OSD2_MATRIX_COEF00_01 0x3d70
60862306a36Sopenharmony_ci#define VPP_WRAP_OSD2_MATRIX_COEF02_10 0x3d71
60962306a36Sopenharmony_ci#define VPP_WRAP_OSD2_MATRIX_COEF11_12 0x3d72
61062306a36Sopenharmony_ci#define VPP_WRAP_OSD2_MATRIX_COEF20_21 0x3d73
61162306a36Sopenharmony_ci#define VPP_WRAP_OSD2_MATRIX_COEF22 0x3d74
61262306a36Sopenharmony_ci#define VPP_WRAP_OSD2_MATRIX_COEF13_14 0x3d75
61362306a36Sopenharmony_ci#define VPP_WRAP_OSD2_MATRIX_COEF23_24 0x3d76
61462306a36Sopenharmony_ci#define VPP_WRAP_OSD2_MATRIX_COEF15_25 0x3d77
61562306a36Sopenharmony_ci#define VPP_WRAP_OSD2_MATRIX_CLIP 0x3d78
61662306a36Sopenharmony_ci#define VPP_WRAP_OSD2_MATRIX_OFFSET0_1 0x3d79
61762306a36Sopenharmony_ci#define VPP_WRAP_OSD2_MATRIX_OFFSET2 0x3d7a
61862306a36Sopenharmony_ci#define VPP_WRAP_OSD2_MATRIX_PRE_OFFSET0_1 0x3d7b
61962306a36Sopenharmony_ci#define VPP_WRAP_OSD2_MATRIX_PRE_OFFSET2 0x3d7c
62062306a36Sopenharmony_ci#define VPP_WRAP_OSD2_MATRIX_EN_CTRL 0x3d7d
62162306a36Sopenharmony_ci
62262306a36Sopenharmony_ci#define VPP_WRAP_OSD3_MATRIX_COEF00_01 0x3db0
62362306a36Sopenharmony_ci#define VPP_WRAP_OSD3_MATRIX_COEF02_10 0x3db1
62462306a36Sopenharmony_ci#define VPP_WRAP_OSD3_MATRIX_COEF11_12 0x3db2
62562306a36Sopenharmony_ci#define VPP_WRAP_OSD3_MATRIX_COEF20_21 0x3db3
62662306a36Sopenharmony_ci#define VPP_WRAP_OSD3_MATRIX_COEF22 0x3db4
62762306a36Sopenharmony_ci#define VPP_WRAP_OSD3_MATRIX_COEF13_14 0x3db5
62862306a36Sopenharmony_ci#define VPP_WRAP_OSD3_MATRIX_COEF23_24 0x3db6
62962306a36Sopenharmony_ci#define VPP_WRAP_OSD3_MATRIX_COEF15_25 0x3db7
63062306a36Sopenharmony_ci#define VPP_WRAP_OSD3_MATRIX_CLIP 0x3db8
63162306a36Sopenharmony_ci#define VPP_WRAP_OSD3_MATRIX_OFFSET0_1 0x3db9
63262306a36Sopenharmony_ci#define VPP_WRAP_OSD3_MATRIX_OFFSET2 0x3dba
63362306a36Sopenharmony_ci#define VPP_WRAP_OSD3_MATRIX_PRE_OFFSET0_1 0x3dbb
63462306a36Sopenharmony_ci#define VPP_WRAP_OSD3_MATRIX_PRE_OFFSET2 0x3dbc
63562306a36Sopenharmony_ci#define VPP_WRAP_OSD3_MATRIX_EN_CTRL 0x3dbd
63662306a36Sopenharmony_ci
63762306a36Sopenharmony_ci/* osd1 HDR */
63862306a36Sopenharmony_ci#define OSD1_HDR2_CTRL 0x38a0
63962306a36Sopenharmony_ci#define OSD1_HDR2_CTRL_VDIN0_HDR2_TOP_EN       BIT(13)
64062306a36Sopenharmony_ci#define OSD1_HDR2_CTRL_REG_ONLY_MAT            BIT(16)
64162306a36Sopenharmony_ci
64262306a36Sopenharmony_ci/* osd2 scaler */
64362306a36Sopenharmony_ci#define OSD2_VSC_PHASE_STEP 0x3d00
64462306a36Sopenharmony_ci#define OSD2_VSC_INI_PHASE 0x3d01
64562306a36Sopenharmony_ci#define OSD2_VSC_CTRL0 0x3d02
64662306a36Sopenharmony_ci#define OSD2_HSC_PHASE_STEP 0x3d03
64762306a36Sopenharmony_ci#define OSD2_HSC_INI_PHASE 0x3d04
64862306a36Sopenharmony_ci#define OSD2_HSC_CTRL0 0x3d05
64962306a36Sopenharmony_ci#define OSD2_HSC_INI_PAT_CTRL 0x3d06
65062306a36Sopenharmony_ci#define OSD2_SC_DUMMY_DATA 0x3d07
65162306a36Sopenharmony_ci#define OSD2_SC_CTRL0 0x3d08
65262306a36Sopenharmony_ci#define OSD2_SCI_WH_M1 0x3d09
65362306a36Sopenharmony_ci#define OSD2_SCO_H_START_END 0x3d0a
65462306a36Sopenharmony_ci#define OSD2_SCO_V_START_END 0x3d0b
65562306a36Sopenharmony_ci#define OSD2_SCALE_COEF_IDX 0x3d18
65662306a36Sopenharmony_ci#define OSD2_SCALE_COEF 0x3d19
65762306a36Sopenharmony_ci
65862306a36Sopenharmony_ci/* osd34 scaler */
65962306a36Sopenharmony_ci#define OSD34_SCALE_COEF_IDX 0x3d1e
66062306a36Sopenharmony_ci#define OSD34_SCALE_COEF 0x3d1f
66162306a36Sopenharmony_ci#define OSD34_VSC_PHASE_STEP 0x3d20
66262306a36Sopenharmony_ci#define OSD34_VSC_INI_PHASE 0x3d21
66362306a36Sopenharmony_ci#define OSD34_VSC_CTRL0 0x3d22
66462306a36Sopenharmony_ci#define OSD34_HSC_PHASE_STEP 0x3d23
66562306a36Sopenharmony_ci#define OSD34_HSC_INI_PHASE 0x3d24
66662306a36Sopenharmony_ci#define OSD34_HSC_CTRL0 0x3d25
66762306a36Sopenharmony_ci#define OSD34_HSC_INI_PAT_CTRL 0x3d26
66862306a36Sopenharmony_ci#define OSD34_SC_DUMMY_DATA 0x3d27
66962306a36Sopenharmony_ci#define OSD34_SC_CTRL0 0x3d28
67062306a36Sopenharmony_ci#define OSD34_SCI_WH_M1 0x3d29
67162306a36Sopenharmony_ci#define OSD34_SCO_H_START_END 0x3d2a
67262306a36Sopenharmony_ci#define OSD34_SCO_V_START_END 0x3d2b
67362306a36Sopenharmony_ci
67462306a36Sopenharmony_ci/* viu2 */
67562306a36Sopenharmony_ci#define VIU2_ADDR_START 0x1e00
67662306a36Sopenharmony_ci#define VIU2_ADDR_END 0x1eff
67762306a36Sopenharmony_ci#define VIU2_SW_RESET 0x1e01
67862306a36Sopenharmony_ci#define VIU2_OSD1_CTRL_STAT 0x1e10
67962306a36Sopenharmony_ci#define VIU2_OSD1_CTRL_STAT2 0x1e2d
68062306a36Sopenharmony_ci#define VIU2_OSD1_COLOR_ADDR 0x1e11
68162306a36Sopenharmony_ci#define VIU2_OSD1_COLOR 0x1e12
68262306a36Sopenharmony_ci#define VIU2_OSD1_TCOLOR_AG0 0x1e17
68362306a36Sopenharmony_ci#define VIU2_OSD1_TCOLOR_AG1 0x1e18
68462306a36Sopenharmony_ci#define VIU2_OSD1_TCOLOR_AG2 0x1e19
68562306a36Sopenharmony_ci#define VIU2_OSD1_TCOLOR_AG3 0x1e1a
68662306a36Sopenharmony_ci#define VIU2_OSD1_BLK0_CFG_W0 0x1e1b
68762306a36Sopenharmony_ci#define VIU2_OSD1_BLK1_CFG_W0 0x1e1f
68862306a36Sopenharmony_ci#define VIU2_OSD1_BLK2_CFG_W0 0x1e23
68962306a36Sopenharmony_ci#define VIU2_OSD1_BLK3_CFG_W0 0x1e27
69062306a36Sopenharmony_ci#define VIU2_OSD1_BLK0_CFG_W1 0x1e1c
69162306a36Sopenharmony_ci#define VIU2_OSD1_BLK1_CFG_W1 0x1e20
69262306a36Sopenharmony_ci#define VIU2_OSD1_BLK2_CFG_W1 0x1e24
69362306a36Sopenharmony_ci#define VIU2_OSD1_BLK3_CFG_W1 0x1e28
69462306a36Sopenharmony_ci#define VIU2_OSD1_BLK0_CFG_W2 0x1e1d
69562306a36Sopenharmony_ci#define VIU2_OSD1_BLK1_CFG_W2 0x1e21
69662306a36Sopenharmony_ci#define VIU2_OSD1_BLK2_CFG_W2 0x1e25
69762306a36Sopenharmony_ci#define VIU2_OSD1_BLK3_CFG_W2 0x1e29
69862306a36Sopenharmony_ci#define VIU2_OSD1_BLK0_CFG_W3 0x1e1e
69962306a36Sopenharmony_ci#define VIU2_OSD1_BLK1_CFG_W3 0x1e22
70062306a36Sopenharmony_ci#define VIU2_OSD1_BLK2_CFG_W3 0x1e26
70162306a36Sopenharmony_ci#define VIU2_OSD1_BLK3_CFG_W3 0x1e2a
70262306a36Sopenharmony_ci#define VIU2_OSD1_BLK0_CFG_W4 0x1e13
70362306a36Sopenharmony_ci#define VIU2_OSD1_BLK1_CFG_W4 0x1e14
70462306a36Sopenharmony_ci#define VIU2_OSD1_BLK2_CFG_W4 0x1e15
70562306a36Sopenharmony_ci#define VIU2_OSD1_BLK3_CFG_W4 0x1e16
70662306a36Sopenharmony_ci#define VIU2_OSD1_FIFO_CTRL_STAT 0x1e2b
70762306a36Sopenharmony_ci#define VIU2_OSD1_TEST_RDDATA 0x1e2c
70862306a36Sopenharmony_ci#define VIU2_OSD1_PROT_CTRL 0x1e2e
70962306a36Sopenharmony_ci#define VIU2_OSD2_CTRL_STAT 0x1e30
71062306a36Sopenharmony_ci#define VIU2_OSD2_CTRL_STAT2 0x1e4d
71162306a36Sopenharmony_ci#define VIU2_OSD2_COLOR_ADDR 0x1e31
71262306a36Sopenharmony_ci#define VIU2_OSD2_COLOR 0x1e32
71362306a36Sopenharmony_ci#define VIU2_OSD2_HL1_H_START_END 0x1e33
71462306a36Sopenharmony_ci#define VIU2_OSD2_HL1_V_START_END 0x1e34
71562306a36Sopenharmony_ci#define VIU2_OSD2_HL2_H_START_END 0x1e35
71662306a36Sopenharmony_ci#define VIU2_OSD2_HL2_V_START_END 0x1e36
71762306a36Sopenharmony_ci#define VIU2_OSD2_TCOLOR_AG0 0x1e37
71862306a36Sopenharmony_ci#define VIU2_OSD2_TCOLOR_AG1 0x1e38
71962306a36Sopenharmony_ci#define VIU2_OSD2_TCOLOR_AG2 0x1e39
72062306a36Sopenharmony_ci#define VIU2_OSD2_TCOLOR_AG3 0x1e3a
72162306a36Sopenharmony_ci#define VIU2_OSD2_BLK0_CFG_W0 0x1e3b
72262306a36Sopenharmony_ci#define VIU2_OSD2_BLK1_CFG_W0 0x1e3f
72362306a36Sopenharmony_ci#define VIU2_OSD2_BLK2_CFG_W0 0x1e43
72462306a36Sopenharmony_ci#define VIU2_OSD2_BLK3_CFG_W0 0x1e47
72562306a36Sopenharmony_ci#define VIU2_OSD2_BLK0_CFG_W1 0x1e3c
72662306a36Sopenharmony_ci#define VIU2_OSD2_BLK1_CFG_W1 0x1e40
72762306a36Sopenharmony_ci#define VIU2_OSD2_BLK2_CFG_W1 0x1e44
72862306a36Sopenharmony_ci#define VIU2_OSD2_BLK3_CFG_W1 0x1e48
72962306a36Sopenharmony_ci#define VIU2_OSD2_BLK0_CFG_W2 0x1e3d
73062306a36Sopenharmony_ci#define VIU2_OSD2_BLK1_CFG_W2 0x1e41
73162306a36Sopenharmony_ci#define VIU2_OSD2_BLK2_CFG_W2 0x1e45
73262306a36Sopenharmony_ci#define VIU2_OSD2_BLK3_CFG_W2 0x1e49
73362306a36Sopenharmony_ci#define VIU2_OSD2_BLK0_CFG_W3 0x1e3e
73462306a36Sopenharmony_ci#define VIU2_OSD2_BLK1_CFG_W3 0x1e42
73562306a36Sopenharmony_ci#define VIU2_OSD2_BLK2_CFG_W3 0x1e46
73662306a36Sopenharmony_ci#define VIU2_OSD2_BLK3_CFG_W3 0x1e4a
73762306a36Sopenharmony_ci#define VIU2_OSD2_BLK0_CFG_W4 0x1e64
73862306a36Sopenharmony_ci#define VIU2_OSD2_BLK1_CFG_W4 0x1e65
73962306a36Sopenharmony_ci#define VIU2_OSD2_BLK2_CFG_W4 0x1e66
74062306a36Sopenharmony_ci#define VIU2_OSD2_BLK3_CFG_W4 0x1e67
74162306a36Sopenharmony_ci#define VIU2_OSD2_FIFO_CTRL_STAT 0x1e4b
74262306a36Sopenharmony_ci#define VIU2_OSD2_TEST_RDDATA 0x1e4c
74362306a36Sopenharmony_ci#define VIU2_OSD2_PROT_CTRL 0x1e4e
74462306a36Sopenharmony_ci#define VIU2_VD1_IF0_GEN_REG 0x1e50
74562306a36Sopenharmony_ci#define VIU2_VD1_IF0_CANVAS0 0x1e51
74662306a36Sopenharmony_ci#define VIU2_VD1_IF0_CANVAS1 0x1e52
74762306a36Sopenharmony_ci#define VIU2_VD1_IF0_LUMA_X0 0x1e53
74862306a36Sopenharmony_ci#define VIU2_VD1_IF0_LUMA_Y0 0x1e54
74962306a36Sopenharmony_ci#define VIU2_VD1_IF0_CHROMA_X0 0x1e55
75062306a36Sopenharmony_ci#define VIU2_VD1_IF0_CHROMA_Y0 0x1e56
75162306a36Sopenharmony_ci#define VIU2_VD1_IF0_LUMA_X1 0x1e57
75262306a36Sopenharmony_ci#define VIU2_VD1_IF0_LUMA_Y1 0x1e58
75362306a36Sopenharmony_ci#define VIU2_VD1_IF0_CHROMA_X1 0x1e59
75462306a36Sopenharmony_ci#define VIU2_VD1_IF0_CHROMA_Y1 0x1e5a
75562306a36Sopenharmony_ci#define VIU2_VD1_IF0_RPT_LOOP 0x1e5b
75662306a36Sopenharmony_ci#define VIU2_VD1_IF0_LUMA0_RPT_PAT 0x1e5c
75762306a36Sopenharmony_ci#define VIU2_VD1_IF0_CHROMA0_RPT_PAT 0x1e5d
75862306a36Sopenharmony_ci#define VIU2_VD1_IF0_LUMA1_RPT_PAT 0x1e5e
75962306a36Sopenharmony_ci#define VIU2_VD1_IF0_CHROMA1_RPT_PAT 0x1e5f
76062306a36Sopenharmony_ci#define VIU2_VD1_IF0_LUMA_PSEL 0x1e60
76162306a36Sopenharmony_ci#define VIU2_VD1_IF0_CHROMA_PSEL 0x1e61
76262306a36Sopenharmony_ci#define VIU2_VD1_IF0_DUMMY_PIXEL 0x1e62
76362306a36Sopenharmony_ci#define VIU2_VD1_IF0_LUMA_FIFO_SIZE 0x1e63
76462306a36Sopenharmony_ci#define VIU2_VD1_IF0_RANGE_MAP_Y 0x1e6a
76562306a36Sopenharmony_ci#define VIU2_VD1_IF0_RANGE_MAP_CB 0x1e6b
76662306a36Sopenharmony_ci#define VIU2_VD1_IF0_RANGE_MAP_CR 0x1e6c
76762306a36Sopenharmony_ci#define VIU2_VD1_IF0_GEN_REG2 0x1e6d
76862306a36Sopenharmony_ci#define VIU2_VD1_IF0_PROT_CNTL 0x1e6e
76962306a36Sopenharmony_ci#define VIU2_VD1_FMT_CTRL 0x1e68
77062306a36Sopenharmony_ci#define VIU2_VD1_FMT_W 0x1e69
77162306a36Sopenharmony_ci
77262306a36Sopenharmony_ci/* encode */
77362306a36Sopenharmony_ci#define ENCP_VFIFO2VD_CTL 0x1b58
77462306a36Sopenharmony_ci#define ENCP_VFIFO2VD_PIXEL_START 0x1b59
77562306a36Sopenharmony_ci#define ENCP_VFIFO2VD_PIXEL_END 0x1b5a
77662306a36Sopenharmony_ci#define ENCP_VFIFO2VD_LINE_TOP_START 0x1b5b
77762306a36Sopenharmony_ci#define ENCP_VFIFO2VD_LINE_TOP_END 0x1b5c
77862306a36Sopenharmony_ci#define ENCP_VFIFO2VD_LINE_BOT_START 0x1b5d
77962306a36Sopenharmony_ci#define ENCP_VFIFO2VD_LINE_BOT_END 0x1b5e
78062306a36Sopenharmony_ci#define VENC_SYNC_ROUTE 0x1b60
78162306a36Sopenharmony_ci#define VENC_VIDEO_EXSRC 0x1b61
78262306a36Sopenharmony_ci#define VENC_DVI_SETTING 0x1b62
78362306a36Sopenharmony_ci#define VENC_C656_CTRL 0x1b63
78462306a36Sopenharmony_ci#define VENC_UPSAMPLE_CTRL0 0x1b64
78562306a36Sopenharmony_ci#define VENC_UPSAMPLE_CTRL1 0x1b65
78662306a36Sopenharmony_ci#define VENC_UPSAMPLE_CTRL2 0x1b66
78762306a36Sopenharmony_ci#define		VENC_UPSAMPLE_CTRL_F0_2_CLK_RATIO        BIT(0)
78862306a36Sopenharmony_ci#define		VENC_UPSAMPLE_CTRL_F1_EN                 BIT(5)
78962306a36Sopenharmony_ci#define		VENC_UPSAMPLE_CTRL_F1_UPSAMPLE_EN        BIT(6)
79062306a36Sopenharmony_ci#define		VENC_UPSAMPLE_CTRL_INTERLACE_HIGH_LUMA   (0x0 << 12)
79162306a36Sopenharmony_ci#define		VENC_UPSAMPLE_CTRL_CVBS                  (0x1 << 12)
79262306a36Sopenharmony_ci#define		VENC_UPSAMPLE_CTRL_S_VIDEO_LUMA          (0x2 << 12)
79362306a36Sopenharmony_ci#define		VENC_UPSAMPLE_CTRL_S_VIDEO_CHROMA        (0x3 << 12)
79462306a36Sopenharmony_ci#define		VENC_UPSAMPLE_CTRL_INTERLACE_PB          (0x4 << 12)
79562306a36Sopenharmony_ci#define		VENC_UPSAMPLE_CTRL_INTERLACE_PR          (0x5 << 12)
79662306a36Sopenharmony_ci#define		VENC_UPSAMPLE_CTRL_INTERLACE_R           (0x6 << 12)
79762306a36Sopenharmony_ci#define		VENC_UPSAMPLE_CTRL_INTERLACE_G           (0x7 << 12)
79862306a36Sopenharmony_ci#define		VENC_UPSAMPLE_CTRL_INTERLACE_B           (0x8 << 12)
79962306a36Sopenharmony_ci#define		VENC_UPSAMPLE_CTRL_PROGRESSIVE_Y         (0x9 << 12)
80062306a36Sopenharmony_ci#define		VENC_UPSAMPLE_CTRL_PROGRESSIVE_PB        (0xa << 12)
80162306a36Sopenharmony_ci#define		VENC_UPSAMPLE_CTRL_PROGRESSIVE_PR        (0xb << 12)
80262306a36Sopenharmony_ci#define		VENC_UPSAMPLE_CTRL_PROGRESSIVE_R         (0xc << 12)
80362306a36Sopenharmony_ci#define		VENC_UPSAMPLE_CTRL_PROGRESSIVE_G         (0xd << 12)
80462306a36Sopenharmony_ci#define		VENC_UPSAMPLE_CTRL_PROGRESSIVE_B         (0xe << 12)
80562306a36Sopenharmony_ci#define		VENC_UPSAMPLE_CTRL_VDAC_TEST_VALUE       (0xf << 12)
80662306a36Sopenharmony_ci#define TCON_INVERT_CTL 0x1b67
80762306a36Sopenharmony_ci#define VENC_VIDEO_PROG_MODE 0x1b68
80862306a36Sopenharmony_ci#define VENC_ENCI_LINE 0x1b69
80962306a36Sopenharmony_ci#define VENC_ENCI_PIXEL 0x1b6a
81062306a36Sopenharmony_ci#define VENC_ENCP_LINE 0x1b6b
81162306a36Sopenharmony_ci#define VENC_ENCP_PIXEL 0x1b6c
81262306a36Sopenharmony_ci#define VENC_STATA 0x1b6d
81362306a36Sopenharmony_ci#define VENC_INTCTRL 0x1b6e
81462306a36Sopenharmony_ci#define		VENC_INTCTRL_ENCI_LNRST_INT_EN  BIT(1)
81562306a36Sopenharmony_ci#define		VENC_INTCTRL_ENCP_LNRST_INT_EN  BIT(9)
81662306a36Sopenharmony_ci#define VENC_INTFLAG 0x1b6f
81762306a36Sopenharmony_ci#define VENC_VIDEO_TST_EN 0x1b70
81862306a36Sopenharmony_ci#define VENC_VIDEO_TST_MDSEL 0x1b71
81962306a36Sopenharmony_ci#define VENC_VIDEO_TST_Y 0x1b72
82062306a36Sopenharmony_ci#define VENC_VIDEO_TST_CB 0x1b73
82162306a36Sopenharmony_ci#define VENC_VIDEO_TST_CR 0x1b74
82262306a36Sopenharmony_ci#define VENC_VIDEO_TST_CLRBAR_STRT 0x1b75
82362306a36Sopenharmony_ci#define VENC_VIDEO_TST_CLRBAR_WIDTH 0x1b76
82462306a36Sopenharmony_ci#define VENC_VIDEO_TST_VDCNT_STSET 0x1b77
82562306a36Sopenharmony_ci#define VENC_VDAC_DACSEL0 0x1b78
82662306a36Sopenharmony_ci#define		VENC_VDAC_SEL_ATV_DMD           BIT(5)
82762306a36Sopenharmony_ci#define VENC_VDAC_DACSEL1 0x1b79
82862306a36Sopenharmony_ci#define VENC_VDAC_DACSEL2 0x1b7a
82962306a36Sopenharmony_ci#define VENC_VDAC_DACSEL3 0x1b7b
83062306a36Sopenharmony_ci#define VENC_VDAC_DACSEL4 0x1b7c
83162306a36Sopenharmony_ci#define VENC_VDAC_DACSEL5 0x1b7d
83262306a36Sopenharmony_ci#define VENC_VDAC_SETTING 0x1b7e
83362306a36Sopenharmony_ci#define VENC_VDAC_TST_VAL 0x1b7f
83462306a36Sopenharmony_ci#define VENC_VDAC_DAC0_GAINCTRL 0x1bf0
83562306a36Sopenharmony_ci#define VENC_VDAC_DAC0_OFFSET 0x1bf1
83662306a36Sopenharmony_ci#define VENC_VDAC_DAC1_GAINCTRL 0x1bf2
83762306a36Sopenharmony_ci#define VENC_VDAC_DAC1_OFFSET 0x1bf3
83862306a36Sopenharmony_ci#define VENC_VDAC_DAC2_GAINCTRL 0x1bf4
83962306a36Sopenharmony_ci#define VENC_VDAC_DAC2_OFFSET 0x1bf5
84062306a36Sopenharmony_ci#define VENC_VDAC_DAC3_GAINCTRL 0x1bf6
84162306a36Sopenharmony_ci#define VENC_VDAC_DAC3_OFFSET 0x1bf7
84262306a36Sopenharmony_ci#define VENC_VDAC_DAC4_GAINCTRL 0x1bf8
84362306a36Sopenharmony_ci#define VENC_VDAC_DAC4_OFFSET 0x1bf9
84462306a36Sopenharmony_ci#define VENC_VDAC_DAC5_GAINCTRL 0x1bfa
84562306a36Sopenharmony_ci#define VENC_VDAC_DAC5_OFFSET 0x1bfb
84662306a36Sopenharmony_ci#define VENC_VDAC_FIFO_CTRL 0x1bfc
84762306a36Sopenharmony_ci#define		VENC_VDAC_FIFO_EN_ENCI_ENABLE   BIT(13)
84862306a36Sopenharmony_ci#define ENCL_TCON_INVERT_CTL 0x1bfd
84962306a36Sopenharmony_ci#define ENCP_VIDEO_EN 0x1b80
85062306a36Sopenharmony_ci#define ENCP_VIDEO_SYNC_MODE 0x1b81
85162306a36Sopenharmony_ci#define ENCP_MACV_EN 0x1b82
85262306a36Sopenharmony_ci#define ENCP_VIDEO_Y_SCL 0x1b83
85362306a36Sopenharmony_ci#define ENCP_VIDEO_PB_SCL 0x1b84
85462306a36Sopenharmony_ci#define ENCP_VIDEO_PR_SCL 0x1b85
85562306a36Sopenharmony_ci#define ENCP_VIDEO_SYNC_SCL 0x1b86
85662306a36Sopenharmony_ci#define ENCP_VIDEO_MACV_SCL 0x1b87
85762306a36Sopenharmony_ci#define ENCP_VIDEO_Y_OFFST 0x1b88
85862306a36Sopenharmony_ci#define ENCP_VIDEO_PB_OFFST 0x1b89
85962306a36Sopenharmony_ci#define ENCP_VIDEO_PR_OFFST 0x1b8a
86062306a36Sopenharmony_ci#define ENCP_VIDEO_SYNC_OFFST 0x1b8b
86162306a36Sopenharmony_ci#define ENCP_VIDEO_MACV_OFFST 0x1b8c
86262306a36Sopenharmony_ci#define ENCP_VIDEO_MODE 0x1b8d
86362306a36Sopenharmony_ci#define		ENCP_VIDEO_MODE_DE_V_HIGH       BIT(14)
86462306a36Sopenharmony_ci#define ENCP_VIDEO_MODE_ADV 0x1b8e
86562306a36Sopenharmony_ci#define ENCP_DBG_PX_RST 0x1b90
86662306a36Sopenharmony_ci#define ENCP_DBG_LN_RST 0x1b91
86762306a36Sopenharmony_ci#define ENCP_DBG_PX_INT 0x1b92
86862306a36Sopenharmony_ci#define ENCP_DBG_LN_INT 0x1b93
86962306a36Sopenharmony_ci#define ENCP_VIDEO_YFP1_HTIME 0x1b94
87062306a36Sopenharmony_ci#define ENCP_VIDEO_YFP2_HTIME 0x1b95
87162306a36Sopenharmony_ci#define ENCP_VIDEO_YC_DLY 0x1b96
87262306a36Sopenharmony_ci#define ENCP_VIDEO_MAX_PXCNT 0x1b97
87362306a36Sopenharmony_ci#define ENCP_VIDEO_HSPULS_BEGIN 0x1b98
87462306a36Sopenharmony_ci#define ENCP_VIDEO_HSPULS_END 0x1b99
87562306a36Sopenharmony_ci#define ENCP_VIDEO_HSPULS_SWITCH 0x1b9a
87662306a36Sopenharmony_ci#define ENCP_VIDEO_VSPULS_BEGIN 0x1b9b
87762306a36Sopenharmony_ci#define ENCP_VIDEO_VSPULS_END 0x1b9c
87862306a36Sopenharmony_ci#define ENCP_VIDEO_VSPULS_BLINE 0x1b9d
87962306a36Sopenharmony_ci#define ENCP_VIDEO_VSPULS_ELINE 0x1b9e
88062306a36Sopenharmony_ci#define ENCP_VIDEO_EQPULS_BEGIN 0x1b9f
88162306a36Sopenharmony_ci#define ENCP_VIDEO_EQPULS_END 0x1ba0
88262306a36Sopenharmony_ci#define ENCP_VIDEO_EQPULS_BLINE 0x1ba1
88362306a36Sopenharmony_ci#define ENCP_VIDEO_EQPULS_ELINE 0x1ba2
88462306a36Sopenharmony_ci#define ENCP_VIDEO_HAVON_END 0x1ba3
88562306a36Sopenharmony_ci#define ENCP_VIDEO_HAVON_BEGIN 0x1ba4
88662306a36Sopenharmony_ci#define ENCP_VIDEO_VAVON_ELINE 0x1baf
88762306a36Sopenharmony_ci#define ENCP_VIDEO_VAVON_BLINE 0x1ba6
88862306a36Sopenharmony_ci#define ENCP_VIDEO_HSO_BEGIN 0x1ba7
88962306a36Sopenharmony_ci#define ENCP_VIDEO_HSO_END 0x1ba8
89062306a36Sopenharmony_ci#define ENCP_VIDEO_VSO_BEGIN 0x1ba9
89162306a36Sopenharmony_ci#define ENCP_VIDEO_VSO_END 0x1baa
89262306a36Sopenharmony_ci#define ENCP_VIDEO_VSO_BLINE 0x1bab
89362306a36Sopenharmony_ci#define ENCP_VIDEO_VSO_ELINE 0x1bac
89462306a36Sopenharmony_ci#define ENCP_VIDEO_SYNC_WAVE_CURVE 0x1bad
89562306a36Sopenharmony_ci#define ENCP_VIDEO_MAX_LNCNT 0x1bae
89662306a36Sopenharmony_ci#define ENCP_VIDEO_SY_VAL 0x1bb0
89762306a36Sopenharmony_ci#define ENCP_VIDEO_SY2_VAL 0x1bb1
89862306a36Sopenharmony_ci#define ENCP_VIDEO_BLANKY_VAL 0x1bb2
89962306a36Sopenharmony_ci#define ENCP_VIDEO_BLANKPB_VAL 0x1bb3
90062306a36Sopenharmony_ci#define ENCP_VIDEO_BLANKPR_VAL 0x1bb4
90162306a36Sopenharmony_ci#define ENCP_VIDEO_HOFFST 0x1bb5
90262306a36Sopenharmony_ci#define ENCP_VIDEO_VOFFST 0x1bb6
90362306a36Sopenharmony_ci#define ENCP_VIDEO_RGB_CTRL 0x1bb7
90462306a36Sopenharmony_ci#define ENCP_VIDEO_FILT_CTRL 0x1bb8
90562306a36Sopenharmony_ci#define ENCP_VIDEO_OFLD_VPEQ_OFST 0x1bb9
90662306a36Sopenharmony_ci#define ENCP_VIDEO_OFLD_VOAV_OFST 0x1bba
90762306a36Sopenharmony_ci#define ENCP_VIDEO_MATRIX_CB 0x1bbb
90862306a36Sopenharmony_ci#define ENCP_VIDEO_MATRIX_CR 0x1bbc
90962306a36Sopenharmony_ci#define ENCP_VIDEO_RGBIN_CTRL 0x1bbd
91062306a36Sopenharmony_ci#define ENCP_MACV_BLANKY_VAL 0x1bc0
91162306a36Sopenharmony_ci#define ENCP_MACV_MAXY_VAL 0x1bc1
91262306a36Sopenharmony_ci#define ENCP_MACV_1ST_PSSYNC_STRT 0x1bc2
91362306a36Sopenharmony_ci#define ENCP_MACV_PSSYNC_STRT 0x1bc3
91462306a36Sopenharmony_ci#define ENCP_MACV_AGC_STRT 0x1bc4
91562306a36Sopenharmony_ci#define ENCP_MACV_AGC_END 0x1bc5
91662306a36Sopenharmony_ci#define ENCP_MACV_WAVE_END 0x1bc6
91762306a36Sopenharmony_ci#define ENCP_MACV_STRTLINE 0x1bc7
91862306a36Sopenharmony_ci#define ENCP_MACV_ENDLINE 0x1bc8
91962306a36Sopenharmony_ci#define ENCP_MACV_TS_CNT_MAX_L 0x1bc9
92062306a36Sopenharmony_ci#define ENCP_MACV_TS_CNT_MAX_H 0x1bca
92162306a36Sopenharmony_ci#define ENCP_MACV_TIME_DOWN 0x1bcb
92262306a36Sopenharmony_ci#define ENCP_MACV_TIME_LO 0x1bcc
92362306a36Sopenharmony_ci#define ENCP_MACV_TIME_UP 0x1bcd
92462306a36Sopenharmony_ci#define ENCP_MACV_TIME_RST 0x1bce
92562306a36Sopenharmony_ci#define ENCP_VBI_CTRL 0x1bd0
92662306a36Sopenharmony_ci#define ENCP_VBI_SETTING 0x1bd1
92762306a36Sopenharmony_ci#define ENCP_VBI_BEGIN 0x1bd2
92862306a36Sopenharmony_ci#define ENCP_VBI_WIDTH 0x1bd3
92962306a36Sopenharmony_ci#define ENCP_VBI_HVAL 0x1bd4
93062306a36Sopenharmony_ci#define ENCP_VBI_DATA0 0x1bd5
93162306a36Sopenharmony_ci#define ENCP_VBI_DATA1 0x1bd6
93262306a36Sopenharmony_ci#define C656_HS_ST 0x1be0
93362306a36Sopenharmony_ci#define C656_HS_ED 0x1be1
93462306a36Sopenharmony_ci#define C656_VS_LNST_E 0x1be2
93562306a36Sopenharmony_ci#define C656_VS_LNST_O 0x1be3
93662306a36Sopenharmony_ci#define C656_VS_LNED_E 0x1be4
93762306a36Sopenharmony_ci#define C656_VS_LNED_O 0x1be5
93862306a36Sopenharmony_ci#define C656_FS_LNST 0x1be6
93962306a36Sopenharmony_ci#define C656_FS_LNED 0x1be7
94062306a36Sopenharmony_ci#define ENCI_VIDEO_MODE 0x1b00
94162306a36Sopenharmony_ci#define ENCI_VIDEO_MODE_ADV 0x1b01
94262306a36Sopenharmony_ci#define		ENCI_VIDEO_MODE_ADV_DMXMD(val)          (val & 0x3)
94362306a36Sopenharmony_ci#define		ENCI_VIDEO_MODE_ADV_VBICTL_LINE_17_22   BIT(2)
94462306a36Sopenharmony_ci#define		ENCI_VIDEO_MODE_ADV_YBW_MEDIUM          (0 << 4)
94562306a36Sopenharmony_ci#define		ENCI_VIDEO_MODE_ADV_YBW_LOW             (0x1 << 4)
94662306a36Sopenharmony_ci#define		ENCI_VIDEO_MODE_ADV_YBW_HIGH            (0x2 << 4)
94762306a36Sopenharmony_ci#define ENCI_VIDEO_FSC_ADJ 0x1b02
94862306a36Sopenharmony_ci#define ENCI_VIDEO_BRIGHT 0x1b03
94962306a36Sopenharmony_ci#define ENCI_VIDEO_CONT 0x1b04
95062306a36Sopenharmony_ci#define ENCI_VIDEO_SAT 0x1b05
95162306a36Sopenharmony_ci#define ENCI_VIDEO_HUE 0x1b06
95262306a36Sopenharmony_ci#define ENCI_VIDEO_SCH 0x1b07
95362306a36Sopenharmony_ci#define ENCI_SYNC_MODE 0x1b08
95462306a36Sopenharmony_ci#define ENCI_SYNC_CTRL 0x1b09
95562306a36Sopenharmony_ci#define ENCI_SYNC_HSO_BEGIN 0x1b0a
95662306a36Sopenharmony_ci#define ENCI_SYNC_HSO_END 0x1b0b
95762306a36Sopenharmony_ci#define ENCI_SYNC_VSO_EVN 0x1b0c
95862306a36Sopenharmony_ci#define ENCI_SYNC_VSO_ODD 0x1b0d
95962306a36Sopenharmony_ci#define ENCI_SYNC_VSO_EVNLN 0x1b0e
96062306a36Sopenharmony_ci#define ENCI_SYNC_VSO_ODDLN 0x1b0f
96162306a36Sopenharmony_ci#define ENCI_SYNC_HOFFST 0x1b10
96262306a36Sopenharmony_ci#define ENCI_SYNC_VOFFST 0x1b11
96362306a36Sopenharmony_ci#define ENCI_SYNC_ADJ 0x1b12
96462306a36Sopenharmony_ci#define ENCI_RGB_SETTING 0x1b13
96562306a36Sopenharmony_ci#define ENCI_DE_H_BEGIN 0x1b16
96662306a36Sopenharmony_ci#define ENCI_DE_H_END 0x1b17
96762306a36Sopenharmony_ci#define ENCI_DE_V_BEGIN_EVEN 0x1b18
96862306a36Sopenharmony_ci#define ENCI_DE_V_END_EVEN 0x1b19
96962306a36Sopenharmony_ci#define ENCI_DE_V_BEGIN_ODD 0x1b1a
97062306a36Sopenharmony_ci#define ENCI_DE_V_END_ODD 0x1b1b
97162306a36Sopenharmony_ci#define ENCI_VBI_SETTING 0x1b20
97262306a36Sopenharmony_ci#define ENCI_VBI_CCDT_EVN 0x1b21
97362306a36Sopenharmony_ci#define ENCI_VBI_CCDT_ODD 0x1b22
97462306a36Sopenharmony_ci#define ENCI_VBI_CC525_LN 0x1b23
97562306a36Sopenharmony_ci#define ENCI_VBI_CC625_LN 0x1b24
97662306a36Sopenharmony_ci#define ENCI_VBI_WSSDT 0x1b25
97762306a36Sopenharmony_ci#define ENCI_VBI_WSS_LN 0x1b26
97862306a36Sopenharmony_ci#define ENCI_VBI_CGMSDT_L 0x1b27
97962306a36Sopenharmony_ci#define ENCI_VBI_CGMSDT_H 0x1b28
98062306a36Sopenharmony_ci#define ENCI_VBI_CGMS_LN 0x1b29
98162306a36Sopenharmony_ci#define ENCI_VBI_TTX_HTIME 0x1b2a
98262306a36Sopenharmony_ci#define ENCI_VBI_TTX_LN 0x1b2b
98362306a36Sopenharmony_ci#define ENCI_VBI_TTXDT0 0x1b2c
98462306a36Sopenharmony_ci#define ENCI_VBI_TTXDT1 0x1b2d
98562306a36Sopenharmony_ci#define ENCI_VBI_TTXDT2 0x1b2e
98662306a36Sopenharmony_ci#define ENCI_VBI_TTXDT3 0x1b2f
98762306a36Sopenharmony_ci#define ENCI_MACV_N0 0x1b30
98862306a36Sopenharmony_ci#define ENCI_MACV_N1 0x1b31
98962306a36Sopenharmony_ci#define ENCI_MACV_N2 0x1b32
99062306a36Sopenharmony_ci#define ENCI_MACV_N3 0x1b33
99162306a36Sopenharmony_ci#define ENCI_MACV_N4 0x1b34
99262306a36Sopenharmony_ci#define ENCI_MACV_N5 0x1b35
99362306a36Sopenharmony_ci#define ENCI_MACV_N6 0x1b36
99462306a36Sopenharmony_ci#define ENCI_MACV_N7 0x1b37
99562306a36Sopenharmony_ci#define ENCI_MACV_N8 0x1b38
99662306a36Sopenharmony_ci#define ENCI_MACV_N9 0x1b39
99762306a36Sopenharmony_ci#define ENCI_MACV_N10 0x1b3a
99862306a36Sopenharmony_ci#define ENCI_MACV_N11 0x1b3b
99962306a36Sopenharmony_ci#define ENCI_MACV_N12 0x1b3c
100062306a36Sopenharmony_ci#define ENCI_MACV_N13 0x1b3d
100162306a36Sopenharmony_ci#define ENCI_MACV_N14 0x1b3e
100262306a36Sopenharmony_ci#define ENCI_MACV_N15 0x1b3f
100362306a36Sopenharmony_ci#define ENCI_MACV_N16 0x1b40
100462306a36Sopenharmony_ci#define ENCI_MACV_N17 0x1b41
100562306a36Sopenharmony_ci#define ENCI_MACV_N18 0x1b42
100662306a36Sopenharmony_ci#define ENCI_MACV_N19 0x1b43
100762306a36Sopenharmony_ci#define ENCI_MACV_N20 0x1b44
100862306a36Sopenharmony_ci#define ENCI_MACV_N21 0x1b45
100962306a36Sopenharmony_ci#define ENCI_MACV_N22 0x1b46
101062306a36Sopenharmony_ci#define ENCI_DBG_PX_RST 0x1b48
101162306a36Sopenharmony_ci#define ENCI_DBG_FLDLN_RST 0x1b49
101262306a36Sopenharmony_ci#define ENCI_DBG_PX_INT 0x1b4a
101362306a36Sopenharmony_ci#define ENCI_DBG_FLDLN_INT 0x1b4b
101462306a36Sopenharmony_ci#define ENCI_DBG_MAXPX 0x1b4c
101562306a36Sopenharmony_ci#define ENCI_DBG_MAXLN 0x1b4d
101662306a36Sopenharmony_ci#define ENCI_MACV_MAX_AMP 0x1b50
101762306a36Sopenharmony_ci#define		ENCI_MACV_MAX_AMP_ENABLE_CHANGE BIT(15)
101862306a36Sopenharmony_ci#define		ENCI_MACV_MAX_AMP_VAL(val)      (val & 0x83ff)
101962306a36Sopenharmony_ci#define ENCI_MACV_PULSE_LO 0x1b51
102062306a36Sopenharmony_ci#define ENCI_MACV_PULSE_HI 0x1b52
102162306a36Sopenharmony_ci#define ENCI_MACV_BKP_MAX 0x1b53
102262306a36Sopenharmony_ci#define ENCI_CFILT_CTRL 0x1b54
102362306a36Sopenharmony_ci#define		ENCI_CFILT_CMPT_SEL_HIGH        BIT(1)
102462306a36Sopenharmony_ci#define ENCI_CFILT7 0x1b55
102562306a36Sopenharmony_ci#define ENCI_YC_DELAY 0x1b56
102662306a36Sopenharmony_ci#define ENCI_VIDEO_EN 0x1b57
102762306a36Sopenharmony_ci#define		ENCI_VIDEO_EN_ENABLE            BIT(0)
102862306a36Sopenharmony_ci#define ENCI_DVI_HSO_BEGIN 0x1c00
102962306a36Sopenharmony_ci#define ENCI_DVI_HSO_END 0x1c01
103062306a36Sopenharmony_ci#define ENCI_DVI_VSO_BLINE_EVN 0x1c02
103162306a36Sopenharmony_ci#define ENCI_DVI_VSO_BLINE_ODD 0x1c03
103262306a36Sopenharmony_ci#define ENCI_DVI_VSO_ELINE_EVN 0x1c04
103362306a36Sopenharmony_ci#define ENCI_DVI_VSO_ELINE_ODD 0x1c05
103462306a36Sopenharmony_ci#define ENCI_DVI_VSO_BEGIN_EVN 0x1c06
103562306a36Sopenharmony_ci#define ENCI_DVI_VSO_BEGIN_ODD 0x1c07
103662306a36Sopenharmony_ci#define ENCI_DVI_VSO_END_EVN 0x1c08
103762306a36Sopenharmony_ci#define ENCI_DVI_VSO_END_ODD 0x1c09
103862306a36Sopenharmony_ci#define ENCI_CFILT_CTRL2 0x1c0a
103962306a36Sopenharmony_ci#define		ENCI_CFILT_CMPT_CR_DLY(delay)   (delay & 0xf)
104062306a36Sopenharmony_ci#define		ENCI_CFILT_CMPT_CB_DLY(delay)   ((delay & 0xf) << 4)
104162306a36Sopenharmony_ci#define		ENCI_CFILT_CVBS_CR_DLY(delay)   ((delay & 0xf) << 8)
104262306a36Sopenharmony_ci#define		ENCI_CFILT_CVBS_CB_DLY(delay)   ((delay & 0xf) << 12)
104362306a36Sopenharmony_ci#define ENCI_DACSEL_0 0x1c0b
104462306a36Sopenharmony_ci#define ENCI_DACSEL_1 0x1c0c
104562306a36Sopenharmony_ci#define ENCP_DACSEL_0 0x1c0d
104662306a36Sopenharmony_ci#define ENCP_DACSEL_1 0x1c0e
104762306a36Sopenharmony_ci#define ENCP_MAX_LINE_SWITCH_POINT 0x1c0f
104862306a36Sopenharmony_ci#define ENCI_TST_EN 0x1c10
104962306a36Sopenharmony_ci#define ENCI_TST_MDSEL 0x1c11
105062306a36Sopenharmony_ci#define ENCI_TST_Y 0x1c12
105162306a36Sopenharmony_ci#define ENCI_TST_CB 0x1c13
105262306a36Sopenharmony_ci#define ENCI_TST_CR 0x1c14
105362306a36Sopenharmony_ci#define ENCI_TST_CLRBAR_STRT 0x1c15
105462306a36Sopenharmony_ci#define ENCI_TST_CLRBAR_WIDTH 0x1c16
105562306a36Sopenharmony_ci#define ENCI_TST_VDCNT_STSET 0x1c17
105662306a36Sopenharmony_ci#define ENCI_VFIFO2VD_CTL 0x1c18
105762306a36Sopenharmony_ci#define		ENCI_VFIFO2VD_CTL_ENABLE        BIT(0)
105862306a36Sopenharmony_ci#define		ENCI_VFIFO2VD_CTL_VD_SEL(val)   ((val & 0xff) << 8)
105962306a36Sopenharmony_ci#define ENCI_VFIFO2VD_PIXEL_START 0x1c19
106062306a36Sopenharmony_ci#define ENCI_VFIFO2VD_PIXEL_END 0x1c1a
106162306a36Sopenharmony_ci#define ENCI_VFIFO2VD_LINE_TOP_START 0x1c1b
106262306a36Sopenharmony_ci#define ENCI_VFIFO2VD_LINE_TOP_END 0x1c1c
106362306a36Sopenharmony_ci#define ENCI_VFIFO2VD_LINE_BOT_START 0x1c1d
106462306a36Sopenharmony_ci#define ENCI_VFIFO2VD_LINE_BOT_END 0x1c1e
106562306a36Sopenharmony_ci#define ENCI_VFIFO2VD_CTL2 0x1c1f
106662306a36Sopenharmony_ci#define ENCT_VFIFO2VD_CTL 0x1c20
106762306a36Sopenharmony_ci#define ENCT_VFIFO2VD_PIXEL_START 0x1c21
106862306a36Sopenharmony_ci#define ENCT_VFIFO2VD_PIXEL_END 0x1c22
106962306a36Sopenharmony_ci#define ENCT_VFIFO2VD_LINE_TOP_START 0x1c23
107062306a36Sopenharmony_ci#define ENCT_VFIFO2VD_LINE_TOP_END 0x1c24
107162306a36Sopenharmony_ci#define ENCT_VFIFO2VD_LINE_BOT_START 0x1c25
107262306a36Sopenharmony_ci#define ENCT_VFIFO2VD_LINE_BOT_END 0x1c26
107362306a36Sopenharmony_ci#define ENCT_VFIFO2VD_CTL2 0x1c27
107462306a36Sopenharmony_ci#define ENCT_TST_EN 0x1c28
107562306a36Sopenharmony_ci#define ENCT_TST_MDSEL 0x1c29
107662306a36Sopenharmony_ci#define ENCT_TST_Y 0x1c2a
107762306a36Sopenharmony_ci#define ENCT_TST_CB 0x1c2b
107862306a36Sopenharmony_ci#define ENCT_TST_CR 0x1c2c
107962306a36Sopenharmony_ci#define ENCT_TST_CLRBAR_STRT 0x1c2d
108062306a36Sopenharmony_ci#define ENCT_TST_CLRBAR_WIDTH 0x1c2e
108162306a36Sopenharmony_ci#define ENCT_TST_VDCNT_STSET 0x1c2f
108262306a36Sopenharmony_ci#define ENCP_DVI_HSO_BEGIN 0x1c30
108362306a36Sopenharmony_ci#define ENCP_DVI_HSO_END 0x1c31
108462306a36Sopenharmony_ci#define ENCP_DVI_VSO_BLINE_EVN 0x1c32
108562306a36Sopenharmony_ci#define ENCP_DVI_VSO_BLINE_ODD 0x1c33
108662306a36Sopenharmony_ci#define ENCP_DVI_VSO_ELINE_EVN 0x1c34
108762306a36Sopenharmony_ci#define ENCP_DVI_VSO_ELINE_ODD 0x1c35
108862306a36Sopenharmony_ci#define ENCP_DVI_VSO_BEGIN_EVN 0x1c36
108962306a36Sopenharmony_ci#define ENCP_DVI_VSO_BEGIN_ODD 0x1c37
109062306a36Sopenharmony_ci#define ENCP_DVI_VSO_END_EVN 0x1c38
109162306a36Sopenharmony_ci#define ENCP_DVI_VSO_END_ODD 0x1c39
109262306a36Sopenharmony_ci#define ENCP_DE_H_BEGIN 0x1c3a
109362306a36Sopenharmony_ci#define ENCP_DE_H_END 0x1c3b
109462306a36Sopenharmony_ci#define ENCP_DE_V_BEGIN_EVEN 0x1c3c
109562306a36Sopenharmony_ci#define ENCP_DE_V_END_EVEN 0x1c3d
109662306a36Sopenharmony_ci#define ENCP_DE_V_BEGIN_ODD 0x1c3e
109762306a36Sopenharmony_ci#define ENCP_DE_V_END_ODD 0x1c3f
109862306a36Sopenharmony_ci#define ENCI_SYNC_LINE_LENGTH 0x1c40
109962306a36Sopenharmony_ci#define ENCI_SYNC_PIXEL_EN 0x1c41
110062306a36Sopenharmony_ci#define ENCI_SYNC_TO_LINE_EN 0x1c42
110162306a36Sopenharmony_ci#define ENCI_SYNC_TO_PIXEL 0x1c43
110262306a36Sopenharmony_ci#define ENCP_SYNC_LINE_LENGTH 0x1c44
110362306a36Sopenharmony_ci#define ENCP_SYNC_PIXEL_EN 0x1c45
110462306a36Sopenharmony_ci#define ENCP_SYNC_TO_LINE_EN 0x1c46
110562306a36Sopenharmony_ci#define ENCP_SYNC_TO_PIXEL 0x1c47
110662306a36Sopenharmony_ci#define ENCT_SYNC_LINE_LENGTH 0x1c48
110762306a36Sopenharmony_ci#define ENCT_SYNC_PIXEL_EN 0x1c49
110862306a36Sopenharmony_ci#define ENCT_SYNC_TO_LINE_EN 0x1c4a
110962306a36Sopenharmony_ci#define ENCT_SYNC_TO_PIXEL 0x1c4b
111062306a36Sopenharmony_ci#define ENCL_SYNC_LINE_LENGTH 0x1c4c
111162306a36Sopenharmony_ci#define ENCL_SYNC_PIXEL_EN 0x1c4d
111262306a36Sopenharmony_ci#define ENCL_SYNC_TO_LINE_EN 0x1c4e
111362306a36Sopenharmony_ci#define ENCL_SYNC_TO_PIXEL 0x1c4f
111462306a36Sopenharmony_ci#define ENCP_VFIFO2VD_CTL2 0x1c50
111562306a36Sopenharmony_ci#define VENC_DVI_SETTING_MORE 0x1c51
111662306a36Sopenharmony_ci#define VENC_VDAC_DAC4_FILT_CTRL0 0x1c54
111762306a36Sopenharmony_ci#define VENC_VDAC_DAC4_FILT_CTRL1 0x1c55
111862306a36Sopenharmony_ci#define VENC_VDAC_DAC5_FILT_CTRL0 0x1c56
111962306a36Sopenharmony_ci#define VENC_VDAC_DAC5_FILT_CTRL1 0x1c57
112062306a36Sopenharmony_ci#define VENC_VDAC_DAC0_FILT_CTRL0 0x1c58
112162306a36Sopenharmony_ci#define		VENC_VDAC_DAC0_FILT_CTRL0_EN    BIT(0)
112262306a36Sopenharmony_ci#define VENC_VDAC_DAC0_FILT_CTRL1 0x1c59
112362306a36Sopenharmony_ci#define VENC_VDAC_DAC1_FILT_CTRL0 0x1c5a
112462306a36Sopenharmony_ci#define VENC_VDAC_DAC1_FILT_CTRL1 0x1c5b
112562306a36Sopenharmony_ci#define VENC_VDAC_DAC2_FILT_CTRL0 0x1c5c
112662306a36Sopenharmony_ci#define VENC_VDAC_DAC2_FILT_CTRL1 0x1c5d
112762306a36Sopenharmony_ci#define VENC_VDAC_DAC3_FILT_CTRL0 0x1c5e
112862306a36Sopenharmony_ci#define VENC_VDAC_DAC3_FILT_CTRL1 0x1c5f
112962306a36Sopenharmony_ci#define ENCT_VIDEO_EN 0x1c60
113062306a36Sopenharmony_ci#define ENCT_VIDEO_Y_SCL 0x1c61
113162306a36Sopenharmony_ci#define ENCT_VIDEO_PB_SCL 0x1c62
113262306a36Sopenharmony_ci#define ENCT_VIDEO_PR_SCL 0x1c63
113362306a36Sopenharmony_ci#define ENCT_VIDEO_Y_OFFST 0x1c64
113462306a36Sopenharmony_ci#define ENCT_VIDEO_PB_OFFST 0x1c65
113562306a36Sopenharmony_ci#define ENCT_VIDEO_PR_OFFST 0x1c66
113662306a36Sopenharmony_ci#define ENCT_VIDEO_MODE 0x1c67
113762306a36Sopenharmony_ci#define ENCT_VIDEO_MODE_ADV 0x1c68
113862306a36Sopenharmony_ci#define ENCT_DBG_PX_RST 0x1c69
113962306a36Sopenharmony_ci#define ENCT_DBG_LN_RST 0x1c6a
114062306a36Sopenharmony_ci#define ENCT_DBG_PX_INT 0x1c6b
114162306a36Sopenharmony_ci#define ENCT_DBG_LN_INT 0x1c6c
114262306a36Sopenharmony_ci#define ENCT_VIDEO_YFP1_HTIME 0x1c6d
114362306a36Sopenharmony_ci#define ENCT_VIDEO_YFP2_HTIME 0x1c6e
114462306a36Sopenharmony_ci#define ENCT_VIDEO_YC_DLY 0x1c6f
114562306a36Sopenharmony_ci#define ENCT_VIDEO_MAX_PXCNT 0x1c70
114662306a36Sopenharmony_ci#define ENCT_VIDEO_HAVON_END 0x1c71
114762306a36Sopenharmony_ci#define ENCT_VIDEO_HAVON_BEGIN 0x1c72
114862306a36Sopenharmony_ci#define ENCT_VIDEO_VAVON_ELINE 0x1c73
114962306a36Sopenharmony_ci#define ENCT_VIDEO_VAVON_BLINE 0x1c74
115062306a36Sopenharmony_ci#define ENCT_VIDEO_HSO_BEGIN 0x1c75
115162306a36Sopenharmony_ci#define ENCT_VIDEO_HSO_END 0x1c76
115262306a36Sopenharmony_ci#define ENCT_VIDEO_VSO_BEGIN 0x1c77
115362306a36Sopenharmony_ci#define ENCT_VIDEO_VSO_END 0x1c78
115462306a36Sopenharmony_ci#define ENCT_VIDEO_VSO_BLINE 0x1c79
115562306a36Sopenharmony_ci#define ENCT_VIDEO_VSO_ELINE 0x1c7a
115662306a36Sopenharmony_ci#define ENCT_VIDEO_MAX_LNCNT 0x1c7b
115762306a36Sopenharmony_ci#define ENCT_VIDEO_BLANKY_VAL 0x1c7c
115862306a36Sopenharmony_ci#define ENCT_VIDEO_BLANKPB_VAL 0x1c7d
115962306a36Sopenharmony_ci#define ENCT_VIDEO_BLANKPR_VAL 0x1c7e
116062306a36Sopenharmony_ci#define ENCT_VIDEO_HOFFST 0x1c7f
116162306a36Sopenharmony_ci#define ENCT_VIDEO_VOFFST 0x1c80
116262306a36Sopenharmony_ci#define ENCT_VIDEO_RGB_CTRL 0x1c81
116362306a36Sopenharmony_ci#define ENCT_VIDEO_FILT_CTRL 0x1c82
116462306a36Sopenharmony_ci#define ENCT_VIDEO_OFLD_VPEQ_OFST 0x1c83
116562306a36Sopenharmony_ci#define ENCT_VIDEO_OFLD_VOAV_OFST 0x1c84
116662306a36Sopenharmony_ci#define ENCT_VIDEO_MATRIX_CB 0x1c85
116762306a36Sopenharmony_ci#define ENCT_VIDEO_MATRIX_CR 0x1c86
116862306a36Sopenharmony_ci#define ENCT_VIDEO_RGBIN_CTRL 0x1c87
116962306a36Sopenharmony_ci#define ENCT_MAX_LINE_SWITCH_POINT 0x1c88
117062306a36Sopenharmony_ci#define ENCT_DACSEL_0 0x1c89
117162306a36Sopenharmony_ci#define ENCT_DACSEL_1 0x1c8a
117262306a36Sopenharmony_ci#define ENCL_VFIFO2VD_CTL 0x1c90
117362306a36Sopenharmony_ci#define ENCL_VFIFO2VD_PIXEL_START 0x1c91
117462306a36Sopenharmony_ci#define ENCL_VFIFO2VD_PIXEL_END 0x1c92
117562306a36Sopenharmony_ci#define ENCL_VFIFO2VD_LINE_TOP_START 0x1c93
117662306a36Sopenharmony_ci#define ENCL_VFIFO2VD_LINE_TOP_END 0x1c94
117762306a36Sopenharmony_ci#define ENCL_VFIFO2VD_LINE_BOT_START 0x1c95
117862306a36Sopenharmony_ci#define ENCL_VFIFO2VD_LINE_BOT_END 0x1c96
117962306a36Sopenharmony_ci#define ENCL_VFIFO2VD_CTL2 0x1c97
118062306a36Sopenharmony_ci#define ENCL_TST_EN 0x1c98
118162306a36Sopenharmony_ci#define ENCL_TST_MDSEL 0x1c99
118262306a36Sopenharmony_ci#define ENCL_TST_Y 0x1c9a
118362306a36Sopenharmony_ci#define ENCL_TST_CB 0x1c9b
118462306a36Sopenharmony_ci#define ENCL_TST_CR 0x1c9c
118562306a36Sopenharmony_ci#define ENCL_TST_CLRBAR_STRT 0x1c9d
118662306a36Sopenharmony_ci#define ENCL_TST_CLRBAR_WIDTH 0x1c9e
118762306a36Sopenharmony_ci#define ENCL_TST_VDCNT_STSET 0x1c9f
118862306a36Sopenharmony_ci#define ENCL_VIDEO_EN 0x1ca0
118962306a36Sopenharmony_ci#define ENCL_VIDEO_Y_SCL 0x1ca1
119062306a36Sopenharmony_ci#define ENCL_VIDEO_PB_SCL 0x1ca2
119162306a36Sopenharmony_ci#define ENCL_VIDEO_PR_SCL 0x1ca3
119262306a36Sopenharmony_ci#define ENCL_VIDEO_Y_OFFST 0x1ca4
119362306a36Sopenharmony_ci#define ENCL_VIDEO_PB_OFFST 0x1ca5
119462306a36Sopenharmony_ci#define ENCL_VIDEO_PR_OFFST 0x1ca6
119562306a36Sopenharmony_ci#define ENCL_VIDEO_MODE 0x1ca7
119662306a36Sopenharmony_ci#define		ENCL_PX_LN_CNT_SHADOW_EN	BIT(15)
119762306a36Sopenharmony_ci#define ENCL_VIDEO_MODE_ADV 0x1ca8
119862306a36Sopenharmony_ci#define		ENCL_VIDEO_MODE_ADV_VFIFO_EN	BIT(3)
119962306a36Sopenharmony_ci#define		ENCL_VIDEO_MODE_ADV_GAIN_HDTV	BIT(4)
120062306a36Sopenharmony_ci#define		ENCL_SEL_GAMMA_RGB_IN		BIT(10)
120162306a36Sopenharmony_ci#define ENCL_DBG_PX_RST 0x1ca9
120262306a36Sopenharmony_ci#define ENCL_DBG_LN_RST 0x1caa
120362306a36Sopenharmony_ci#define ENCL_DBG_PX_INT 0x1cab
120462306a36Sopenharmony_ci#define ENCL_DBG_LN_INT 0x1cac
120562306a36Sopenharmony_ci#define ENCL_VIDEO_YFP1_HTIME 0x1cad
120662306a36Sopenharmony_ci#define ENCL_VIDEO_YFP2_HTIME 0x1cae
120762306a36Sopenharmony_ci#define ENCL_VIDEO_YC_DLY 0x1caf
120862306a36Sopenharmony_ci#define ENCL_VIDEO_MAX_PXCNT 0x1cb0
120962306a36Sopenharmony_ci#define ENCL_VIDEO_HAVON_END 0x1cb1
121062306a36Sopenharmony_ci#define ENCL_VIDEO_HAVON_BEGIN 0x1cb2
121162306a36Sopenharmony_ci#define ENCL_VIDEO_VAVON_ELINE 0x1cb3
121262306a36Sopenharmony_ci#define ENCL_VIDEO_VAVON_BLINE 0x1cb4
121362306a36Sopenharmony_ci#define ENCL_VIDEO_HSO_BEGIN 0x1cb5
121462306a36Sopenharmony_ci#define ENCL_VIDEO_HSO_END 0x1cb6
121562306a36Sopenharmony_ci#define ENCL_VIDEO_VSO_BEGIN 0x1cb7
121662306a36Sopenharmony_ci#define ENCL_VIDEO_VSO_END 0x1cb8
121762306a36Sopenharmony_ci#define ENCL_VIDEO_VSO_BLINE 0x1cb9
121862306a36Sopenharmony_ci#define ENCL_VIDEO_VSO_ELINE 0x1cba
121962306a36Sopenharmony_ci#define ENCL_VIDEO_MAX_LNCNT 0x1cbb
122062306a36Sopenharmony_ci#define ENCL_VIDEO_BLANKY_VAL 0x1cbc
122162306a36Sopenharmony_ci#define ENCL_VIDEO_BLANKPB_VAL 0x1cbd
122262306a36Sopenharmony_ci#define ENCL_VIDEO_BLANKPR_VAL 0x1cbe
122362306a36Sopenharmony_ci#define ENCL_VIDEO_HOFFST 0x1cbf
122462306a36Sopenharmony_ci#define ENCL_VIDEO_VOFFST 0x1cc0
122562306a36Sopenharmony_ci#define ENCL_VIDEO_RGB_CTRL 0x1cc1
122662306a36Sopenharmony_ci#define ENCL_VIDEO_FILT_CTRL 0x1cc2
122762306a36Sopenharmony_ci#define		ENCL_VIDEO_FILT_CTRL_BYPASS_FILTER	BIT(12)
122862306a36Sopenharmony_ci#define ENCL_VIDEO_OFLD_VPEQ_OFST 0x1cc3
122962306a36Sopenharmony_ci#define ENCL_VIDEO_OFLD_VOAV_OFST 0x1cc4
123062306a36Sopenharmony_ci#define ENCL_VIDEO_MATRIX_CB 0x1cc5
123162306a36Sopenharmony_ci#define ENCL_VIDEO_MATRIX_CR 0x1cc6
123262306a36Sopenharmony_ci#define ENCL_VIDEO_RGBIN_CTRL 0x1cc7
123362306a36Sopenharmony_ci#define		ENCL_VIDEO_RGBIN_RGB	BIT(0)
123462306a36Sopenharmony_ci#define		ENCL_VIDEO_RGBIN_ZBLK	BIT(1)
123562306a36Sopenharmony_ci#define ENCL_MAX_LINE_SWITCH_POINT 0x1cc8
123662306a36Sopenharmony_ci#define ENCL_DACSEL_0 0x1cc9
123762306a36Sopenharmony_ci#define ENCL_DACSEL_1 0x1cca
123862306a36Sopenharmony_ci#define RDMA_AHB_START_ADDR_MAN 0x1100
123962306a36Sopenharmony_ci#define RDMA_AHB_END_ADDR_MAN 0x1101
124062306a36Sopenharmony_ci#define RDMA_AHB_START_ADDR_1 0x1102
124162306a36Sopenharmony_ci#define RDMA_AHB_END_ADDR_1 0x1103
124262306a36Sopenharmony_ci#define RDMA_AHB_START_ADDR_2 0x1104
124362306a36Sopenharmony_ci#define RDMA_AHB_END_ADDR_2 0x1105
124462306a36Sopenharmony_ci#define RDMA_AHB_START_ADDR_3 0x1106
124562306a36Sopenharmony_ci#define RDMA_AHB_END_ADDR_3 0x1107
124662306a36Sopenharmony_ci#define RDMA_AHB_START_ADDR_4 0x1108
124762306a36Sopenharmony_ci#define RDMA_AHB_END_ADDR_4 0x1109
124862306a36Sopenharmony_ci#define RDMA_AHB_START_ADDR_5 0x110a
124962306a36Sopenharmony_ci#define RDMA_AHB_END_ADDR_5 0x110b
125062306a36Sopenharmony_ci#define RDMA_AHB_START_ADDR_6 0x110c
125162306a36Sopenharmony_ci#define RDMA_AHB_END_ADDR_6 0x110d
125262306a36Sopenharmony_ci#define RDMA_AHB_START_ADDR_7 0x110e
125362306a36Sopenharmony_ci#define RDMA_AHB_END_ADDR_7 0x110f
125462306a36Sopenharmony_ci#define RDMA_ACCESS_AUTO 0x1110
125562306a36Sopenharmony_ci#define		RDMA_ACCESS_TRIGGER_CHAN3	GENMASK(31, 24)
125662306a36Sopenharmony_ci#define		RDMA_ACCESS_TRIGGER_CHAN2	GENMASK(23, 16)
125762306a36Sopenharmony_ci#define		RDMA_ACCESS_TRIGGER_CHAN1	GENMASK(15, 8)
125862306a36Sopenharmony_ci#define		RDMA_ACCESS_TRIGGER_STOP	0
125962306a36Sopenharmony_ci#define		RDMA_ACCESS_TRIGGER_VSYNC	1
126062306a36Sopenharmony_ci#define		RDMA_ACCESS_TRIGGER_LINE	32
126162306a36Sopenharmony_ci#define		RDMA_ACCESS_RW_FLAG_CHAN3	BIT(7)
126262306a36Sopenharmony_ci#define		RDMA_ACCESS_RW_FLAG_CHAN2	BIT(6)
126362306a36Sopenharmony_ci#define		RDMA_ACCESS_RW_FLAG_CHAN1	BIT(5)
126462306a36Sopenharmony_ci#define		RDMA_ACCESS_ADDR_INC_CHAN3	BIT(3)
126562306a36Sopenharmony_ci#define		RDMA_ACCESS_ADDR_INC_CHAN2	BIT(2)
126662306a36Sopenharmony_ci#define		RDMA_ACCESS_ADDR_INC_CHAN1	BIT(1)
126762306a36Sopenharmony_ci#define RDMA_ACCESS_AUTO2 0x1111
126862306a36Sopenharmony_ci#define		RDMA_ACCESS_RW_FLAG_CHAN7	BIT(7)
126962306a36Sopenharmony_ci#define		RDMA_ACCESS_RW_FLAG_CHAN6	BIT(6)
127062306a36Sopenharmony_ci#define		RDMA_ACCESS_RW_FLAG_CHAN5	BIT(5)
127162306a36Sopenharmony_ci#define		RDMA_ACCESS_RW_FLAG_CHAN4	BIT(4)
127262306a36Sopenharmony_ci#define		RDMA_ACCESS_ADDR_INC_CHAN7	BIT(3)
127362306a36Sopenharmony_ci#define		RDMA_ACCESS_ADDR_INC_CHAN6	BIT(2)
127462306a36Sopenharmony_ci#define		RDMA_ACCESS_ADDR_INC_CHAN5	BIT(1)
127562306a36Sopenharmony_ci#define		RDMA_ACCESS_ADDR_INC_CHAN4	BIT(0)
127662306a36Sopenharmony_ci#define RDMA_ACCESS_AUTO3 0x1112
127762306a36Sopenharmony_ci#define		RDMA_ACCESS_TRIGGER_CHAN7	GENMASK(31, 24)
127862306a36Sopenharmony_ci#define		RDMA_ACCESS_TRIGGER_CHAN6	GENMASK(23, 16)
127962306a36Sopenharmony_ci#define		RDMA_ACCESS_TRIGGER_CHAN5	GENMASK(15, 8)
128062306a36Sopenharmony_ci#define		RDMA_ACCESS_TRIGGER_CHAN4	GENMASK(7, 0)
128162306a36Sopenharmony_ci#define RDMA_ACCESS_MAN 0x1113
128262306a36Sopenharmony_ci#define		RDMA_ACCESS_MAN_RW_FLAG		BIT(2)
128362306a36Sopenharmony_ci#define		RDMA_ACCESS_MAN_ADDR_INC	BIT(1)
128462306a36Sopenharmony_ci#define		RDMA_ACCESS_MAN_START		BIT(0)
128562306a36Sopenharmony_ci#define RDMA_CTRL 0x1114
128662306a36Sopenharmony_ci#define		RDMA_IRQ_CLEAR_CHAN7	BIT(31)
128762306a36Sopenharmony_ci#define		RDMA_IRQ_CLEAR_CHAN6	BIT(30)
128862306a36Sopenharmony_ci#define		RDMA_IRQ_CLEAR_CHAN5	BIT(29)
128962306a36Sopenharmony_ci#define		RDMA_IRQ_CLEAR_CHAN4	BIT(28)
129062306a36Sopenharmony_ci#define		RDMA_IRQ_CLEAR_CHAN3	BIT(27)
129162306a36Sopenharmony_ci#define		RDMA_IRQ_CLEAR_CHAN2	BIT(26)
129262306a36Sopenharmony_ci#define		RDMA_IRQ_CLEAR_CHAN1	BIT(25)
129362306a36Sopenharmony_ci#define		RDMA_IRQ_CLEAR_CHAN_MAN	BIT(24)
129462306a36Sopenharmony_ci#define		RDMA_DEFAULT_CONFIG	(BIT(7) | BIT(6))
129562306a36Sopenharmony_ci#define		RDMA_CTRL_AHB_WR_BURST	GENMASK(5, 4)
129662306a36Sopenharmony_ci#define		RDMA_CTRL_AHB_RD_BURST	GENMASK(3, 2)
129762306a36Sopenharmony_ci#define		RDMA_CTRL_SW_RESET	BIT(1)
129862306a36Sopenharmony_ci#define		RDMA_CTRL_FREE_CLK_EN	BIT(0)
129962306a36Sopenharmony_ci#define RDMA_STATUS 0x1115
130062306a36Sopenharmony_ci#define		RDMA_IRQ_STAT_CHAN7	BIT(31)
130162306a36Sopenharmony_ci#define		RDMA_IRQ_STAT_CHAN6	BIT(30)
130262306a36Sopenharmony_ci#define		RDMA_IRQ_STAT_CHAN5	BIT(29)
130362306a36Sopenharmony_ci#define		RDMA_IRQ_STAT_CHAN4	BIT(28)
130462306a36Sopenharmony_ci#define		RDMA_IRQ_STAT_CHAN3	BIT(27)
130562306a36Sopenharmony_ci#define		RDMA_IRQ_STAT_CHAN2	BIT(26)
130662306a36Sopenharmony_ci#define		RDMA_IRQ_STAT_CHAN1	BIT(25)
130762306a36Sopenharmony_ci#define		RDMA_IRQ_STAT_CHAN_MAN	BIT(24)
130862306a36Sopenharmony_ci#define RDMA_STATUS2 0x1116
130962306a36Sopenharmony_ci#define RDMA_STATUS3 0x1117
131062306a36Sopenharmony_ci#define L_GAMMA_CNTL_PORT 0x1400
131162306a36Sopenharmony_ci#define		L_GAMMA_CNTL_PORT_VCOM_POL	BIT(7)	/* RW */
131262306a36Sopenharmony_ci#define		L_GAMMA_CNTL_PORT_RVS_OUT	BIT(6)	/* RW */
131362306a36Sopenharmony_ci#define		L_GAMMA_CNTL_PORT_ADR_RDY	BIT(5)	/* Read Only */
131462306a36Sopenharmony_ci#define		L_GAMMA_CNTL_PORT_WR_RDY	BIT(4)	/* Read Only */
131562306a36Sopenharmony_ci#define		L_GAMMA_CNTL_PORT_RD_RDY	BIT(3)	/* Read Only */
131662306a36Sopenharmony_ci#define		L_GAMMA_CNTL_PORT_TR		BIT(2)	/* RW */
131762306a36Sopenharmony_ci#define		L_GAMMA_CNTL_PORT_SET		BIT(1)	/* RW */
131862306a36Sopenharmony_ci#define		L_GAMMA_CNTL_PORT_EN		BIT(0)	/* RW */
131962306a36Sopenharmony_ci#define L_GAMMA_DATA_PORT 0x1401
132062306a36Sopenharmony_ci#define L_GAMMA_ADDR_PORT 0x1402
132162306a36Sopenharmony_ci#define		L_GAMMA_ADDR_PORT_RD		BIT(12)
132262306a36Sopenharmony_ci#define		L_GAMMA_ADDR_PORT_AUTO_INC	BIT(11)
132362306a36Sopenharmony_ci#define		L_GAMMA_ADDR_PORT_SEL_R		BIT(10)
132462306a36Sopenharmony_ci#define		L_GAMMA_ADDR_PORT_SEL_G		BIT(9)
132562306a36Sopenharmony_ci#define		L_GAMMA_ADDR_PORT_SEL_B		BIT(8)
132662306a36Sopenharmony_ci#define		L_GAMMA_ADDR_PORT_ADDR		GENMASK(7, 0)
132762306a36Sopenharmony_ci#define L_GAMMA_VCOM_HSWITCH_ADDR 0x1403
132862306a36Sopenharmony_ci#define L_RGB_BASE_ADDR 0x1405
132962306a36Sopenharmony_ci#define L_RGB_COEFF_ADDR 0x1406
133062306a36Sopenharmony_ci#define L_POL_CNTL_ADDR 0x1407
133162306a36Sopenharmony_ci#define L_DITH_CNTL_ADDR 0x1408
133262306a36Sopenharmony_ci#define		L_DITH_CNTL_DITH10_EN	BIT(10)
133362306a36Sopenharmony_ci#define L_GAMMA_PROBE_CTRL 0x1409
133462306a36Sopenharmony_ci#define L_GAMMA_PROBE_COLOR_L 0x140a
133562306a36Sopenharmony_ci#define L_GAMMA_PROBE_COLOR_H 0x140b
133662306a36Sopenharmony_ci#define L_GAMMA_PROBE_HL_COLOR 0x140c
133762306a36Sopenharmony_ci#define L_GAMMA_PROBE_POS_X 0x140d
133862306a36Sopenharmony_ci#define L_GAMMA_PROBE_POS_Y 0x140e
133962306a36Sopenharmony_ci#define L_STH1_HS_ADDR 0x1410
134062306a36Sopenharmony_ci#define L_STH1_HE_ADDR 0x1411
134162306a36Sopenharmony_ci#define L_STH1_VS_ADDR 0x1412
134262306a36Sopenharmony_ci#define L_STH1_VE_ADDR 0x1413
134362306a36Sopenharmony_ci#define L_STH2_HS_ADDR 0x1414
134462306a36Sopenharmony_ci#define L_STH2_HE_ADDR 0x1415
134562306a36Sopenharmony_ci#define L_STH2_VS_ADDR 0x1416
134662306a36Sopenharmony_ci#define L_STH2_VE_ADDR 0x1417
134762306a36Sopenharmony_ci#define L_OEH_HS_ADDR 0x1418
134862306a36Sopenharmony_ci#define L_OEH_HE_ADDR 0x1419
134962306a36Sopenharmony_ci#define L_OEH_VS_ADDR 0x141a
135062306a36Sopenharmony_ci#define L_OEH_VE_ADDR 0x141b
135162306a36Sopenharmony_ci#define L_VCOM_HSWITCH_ADDR 0x141c
135262306a36Sopenharmony_ci#define L_VCOM_VS_ADDR 0x141d
135362306a36Sopenharmony_ci#define L_VCOM_VE_ADDR 0x141e
135462306a36Sopenharmony_ci#define L_CPV1_HS_ADDR 0x141f
135562306a36Sopenharmony_ci#define L_CPV1_HE_ADDR 0x1420
135662306a36Sopenharmony_ci#define L_CPV1_VS_ADDR 0x1421
135762306a36Sopenharmony_ci#define L_CPV1_VE_ADDR 0x1422
135862306a36Sopenharmony_ci#define L_CPV2_HS_ADDR 0x1423
135962306a36Sopenharmony_ci#define L_CPV2_HE_ADDR 0x1424
136062306a36Sopenharmony_ci#define L_CPV2_VS_ADDR 0x1425
136162306a36Sopenharmony_ci#define L_CPV2_VE_ADDR 0x1426
136262306a36Sopenharmony_ci#define L_STV1_HS_ADDR 0x1427
136362306a36Sopenharmony_ci#define L_STV1_HE_ADDR 0x1428
136462306a36Sopenharmony_ci#define L_STV1_VS_ADDR 0x1429
136562306a36Sopenharmony_ci#define L_STV1_VE_ADDR 0x142a
136662306a36Sopenharmony_ci#define L_STV2_HS_ADDR 0x142b
136762306a36Sopenharmony_ci#define L_STV2_HE_ADDR 0x142c
136862306a36Sopenharmony_ci#define L_STV2_VS_ADDR 0x142d
136962306a36Sopenharmony_ci#define L_STV2_VE_ADDR 0x142e
137062306a36Sopenharmony_ci#define L_OEV1_HS_ADDR 0x142f
137162306a36Sopenharmony_ci#define L_OEV1_HE_ADDR 0x1430
137262306a36Sopenharmony_ci#define L_OEV1_VS_ADDR 0x1431
137362306a36Sopenharmony_ci#define L_OEV1_VE_ADDR 0x1432
137462306a36Sopenharmony_ci#define L_OEV2_HS_ADDR 0x1433
137562306a36Sopenharmony_ci#define L_OEV2_HE_ADDR 0x1434
137662306a36Sopenharmony_ci#define L_OEV2_VS_ADDR 0x1435
137762306a36Sopenharmony_ci#define L_OEV2_VE_ADDR 0x1436
137862306a36Sopenharmony_ci#define L_OEV3_HS_ADDR 0x1437
137962306a36Sopenharmony_ci#define L_OEV3_HE_ADDR 0x1438
138062306a36Sopenharmony_ci#define L_OEV3_VS_ADDR 0x1439
138162306a36Sopenharmony_ci#define L_OEV3_VE_ADDR 0x143a
138262306a36Sopenharmony_ci#define L_LCD_PWR_ADDR 0x143b
138362306a36Sopenharmony_ci#define L_LCD_PWM0_LO_ADDR 0x143c
138462306a36Sopenharmony_ci#define L_LCD_PWM0_HI_ADDR 0x143d
138562306a36Sopenharmony_ci#define L_LCD_PWM1_LO_ADDR 0x143e
138662306a36Sopenharmony_ci#define L_LCD_PWM1_HI_ADDR 0x143f
138762306a36Sopenharmony_ci#define L_INV_CNT_ADDR 0x1440
138862306a36Sopenharmony_ci#define L_TCON_MISC_SEL_ADDR 0x1441
138962306a36Sopenharmony_ci#define		L_TCON_MISC_SEL_STV1	BIT(4)
139062306a36Sopenharmony_ci#define		L_TCON_MISC_SEL_STV2	BIT(5)
139162306a36Sopenharmony_ci#define L_DUAL_PORT_CNTL_ADDR 0x1442
139262306a36Sopenharmony_ci#define MLVDS_CLK_CTL1_HI 0x1443
139362306a36Sopenharmony_ci#define MLVDS_CLK_CTL1_LO 0x1444
139462306a36Sopenharmony_ci#define L_TCON_DOUBLE_CTL 0x1449
139562306a36Sopenharmony_ci#define L_TCON_PATTERN_HI 0x144a
139662306a36Sopenharmony_ci#define L_TCON_PATTERN_LO 0x144b
139762306a36Sopenharmony_ci#define LDIM_BL_ADDR_PORT 0x144e
139862306a36Sopenharmony_ci#define LDIM_BL_DATA_PORT 0x144f
139962306a36Sopenharmony_ci#define L_DE_HS_ADDR 0x1451
140062306a36Sopenharmony_ci#define L_DE_HE_ADDR 0x1452
140162306a36Sopenharmony_ci#define L_DE_VS_ADDR 0x1453
140262306a36Sopenharmony_ci#define L_DE_VE_ADDR 0x1454
140362306a36Sopenharmony_ci#define L_HSYNC_HS_ADDR 0x1455
140462306a36Sopenharmony_ci#define L_HSYNC_HE_ADDR 0x1456
140562306a36Sopenharmony_ci#define L_HSYNC_VS_ADDR 0x1457
140662306a36Sopenharmony_ci#define L_HSYNC_VE_ADDR 0x1458
140762306a36Sopenharmony_ci#define L_VSYNC_HS_ADDR 0x1459
140862306a36Sopenharmony_ci#define L_VSYNC_HE_ADDR 0x145a
140962306a36Sopenharmony_ci#define L_VSYNC_VS_ADDR 0x145b
141062306a36Sopenharmony_ci#define L_VSYNC_VE_ADDR 0x145c
141162306a36Sopenharmony_ci#define L_LCD_MCU_CTL 0x145d
141262306a36Sopenharmony_ci#define DUAL_MLVDS_CTL 0x1460
141362306a36Sopenharmony_ci#define DUAL_MLVDS_LINE_START 0x1461
141462306a36Sopenharmony_ci#define DUAL_MLVDS_LINE_END 0x1462
141562306a36Sopenharmony_ci#define DUAL_MLVDS_PIXEL_W_START_L 0x1463
141662306a36Sopenharmony_ci#define DUAL_MLVDS_PIXEL_W_END_L 0x1464
141762306a36Sopenharmony_ci#define DUAL_MLVDS_PIXEL_W_START_R 0x1465
141862306a36Sopenharmony_ci#define DUAL_MLVDS_PIXEL_W_END_R 0x1466
141962306a36Sopenharmony_ci#define DUAL_MLVDS_PIXEL_R_START_L 0x1467
142062306a36Sopenharmony_ci#define DUAL_MLVDS_PIXEL_R_CNT_L 0x1468
142162306a36Sopenharmony_ci#define DUAL_MLVDS_PIXEL_R_START_R 0x1469
142262306a36Sopenharmony_ci#define DUAL_MLVDS_PIXEL_R_CNT_R 0x146a
142362306a36Sopenharmony_ci#define V_INVERSION_PIXEL 0x1470
142462306a36Sopenharmony_ci#define V_INVERSION_LINE 0x1471
142562306a36Sopenharmony_ci#define V_INVERSION_CONTROL 0x1472
142662306a36Sopenharmony_ci#define MLVDS2_CONTROL 0x1474
142762306a36Sopenharmony_ci#define MLVDS2_CONFIG_HI 0x1475
142862306a36Sopenharmony_ci#define MLVDS2_CONFIG_LO 0x1476
142962306a36Sopenharmony_ci#define MLVDS2_DUAL_GATE_WR_START 0x1477
143062306a36Sopenharmony_ci#define MLVDS2_DUAL_GATE_WR_END 0x1478
143162306a36Sopenharmony_ci#define MLVDS2_DUAL_GATE_RD_START 0x1479
143262306a36Sopenharmony_ci#define MLVDS2_DUAL_GATE_RD_END 0x147a
143362306a36Sopenharmony_ci#define MLVDS2_SECOND_RESET_CTL 0x147b
143462306a36Sopenharmony_ci#define MLVDS2_DUAL_GATE_CTL_HI 0x147c
143562306a36Sopenharmony_ci#define MLVDS2_DUAL_GATE_CTL_LO 0x147d
143662306a36Sopenharmony_ci#define MLVDS2_RESET_CONFIG_HI 0x147e
143762306a36Sopenharmony_ci#define MLVDS2_RESET_CONFIG_LO 0x147f
143862306a36Sopenharmony_ci#define GAMMA_CNTL_PORT 0x1480
143962306a36Sopenharmony_ci#define GAMMA_DATA_PORT 0x1481
144062306a36Sopenharmony_ci#define GAMMA_ADDR_PORT 0x1482
144162306a36Sopenharmony_ci#define GAMMA_VCOM_HSWITCH_ADDR 0x1483
144262306a36Sopenharmony_ci#define RGB_BASE_ADDR 0x1485
144362306a36Sopenharmony_ci#define RGB_COEFF_ADDR 0x1486
144462306a36Sopenharmony_ci#define POL_CNTL_ADDR 0x1487
144562306a36Sopenharmony_ci#define DITH_CNTL_ADDR 0x1488
144662306a36Sopenharmony_ci#define GAMMA_PROBE_CTRL 0x1489
144762306a36Sopenharmony_ci#define GAMMA_PROBE_COLOR_L 0x148a
144862306a36Sopenharmony_ci#define GAMMA_PROBE_COLOR_H 0x148b
144962306a36Sopenharmony_ci#define GAMMA_PROBE_HL_COLOR 0x148c
145062306a36Sopenharmony_ci#define GAMMA_PROBE_POS_X 0x148d
145162306a36Sopenharmony_ci#define GAMMA_PROBE_POS_Y 0x148e
145262306a36Sopenharmony_ci#define STH1_HS_ADDR 0x1490
145362306a36Sopenharmony_ci#define STH1_HE_ADDR 0x1491
145462306a36Sopenharmony_ci#define STH1_VS_ADDR 0x1492
145562306a36Sopenharmony_ci#define STH1_VE_ADDR 0x1493
145662306a36Sopenharmony_ci#define STH2_HS_ADDR 0x1494
145762306a36Sopenharmony_ci#define STH2_HE_ADDR 0x1495
145862306a36Sopenharmony_ci#define STH2_VS_ADDR 0x1496
145962306a36Sopenharmony_ci#define STH2_VE_ADDR 0x1497
146062306a36Sopenharmony_ci#define OEH_HS_ADDR 0x1498
146162306a36Sopenharmony_ci#define OEH_HE_ADDR 0x1499
146262306a36Sopenharmony_ci#define OEH_VS_ADDR 0x149a
146362306a36Sopenharmony_ci#define OEH_VE_ADDR 0x149b
146462306a36Sopenharmony_ci#define VCOM_HSWITCH_ADDR 0x149c
146562306a36Sopenharmony_ci#define VCOM_VS_ADDR 0x149d
146662306a36Sopenharmony_ci#define VCOM_VE_ADDR 0x149e
146762306a36Sopenharmony_ci#define CPV1_HS_ADDR 0x149f
146862306a36Sopenharmony_ci#define CPV1_HE_ADDR 0x14a0
146962306a36Sopenharmony_ci#define CPV1_VS_ADDR 0x14a1
147062306a36Sopenharmony_ci#define CPV1_VE_ADDR 0x14a2
147162306a36Sopenharmony_ci#define CPV2_HS_ADDR 0x14a3
147262306a36Sopenharmony_ci#define CPV2_HE_ADDR 0x14a4
147362306a36Sopenharmony_ci#define CPV2_VS_ADDR 0x14a5
147462306a36Sopenharmony_ci#define CPV2_VE_ADDR 0x14a6
147562306a36Sopenharmony_ci#define STV1_HS_ADDR 0x14a7
147662306a36Sopenharmony_ci#define STV1_HE_ADDR 0x14a8
147762306a36Sopenharmony_ci#define STV1_VS_ADDR 0x14a9
147862306a36Sopenharmony_ci#define STV1_VE_ADDR 0x14aa
147962306a36Sopenharmony_ci#define STV2_HS_ADDR 0x14ab
148062306a36Sopenharmony_ci#define STV2_HE_ADDR 0x14ac
148162306a36Sopenharmony_ci#define STV2_VS_ADDR 0x14ad
148262306a36Sopenharmony_ci#define STV2_VE_ADDR 0x14ae
148362306a36Sopenharmony_ci#define OEV1_HS_ADDR 0x14af
148462306a36Sopenharmony_ci#define OEV1_HE_ADDR 0x14b0
148562306a36Sopenharmony_ci#define OEV1_VS_ADDR 0x14b1
148662306a36Sopenharmony_ci#define OEV1_VE_ADDR 0x14b2
148762306a36Sopenharmony_ci#define OEV2_HS_ADDR 0x14b3
148862306a36Sopenharmony_ci#define OEV2_HE_ADDR 0x14b4
148962306a36Sopenharmony_ci#define OEV2_VS_ADDR 0x14b5
149062306a36Sopenharmony_ci#define OEV2_VE_ADDR 0x14b6
149162306a36Sopenharmony_ci#define OEV3_HS_ADDR 0x14b7
149262306a36Sopenharmony_ci#define OEV3_HE_ADDR 0x14b8
149362306a36Sopenharmony_ci#define OEV3_VS_ADDR 0x14b9
149462306a36Sopenharmony_ci#define OEV3_VE_ADDR 0x14ba
149562306a36Sopenharmony_ci#define LCD_PWR_ADDR 0x14bb
149662306a36Sopenharmony_ci#define LCD_PWM0_LO_ADDR 0x14bc
149762306a36Sopenharmony_ci#define LCD_PWM0_HI_ADDR 0x14bd
149862306a36Sopenharmony_ci#define LCD_PWM1_LO_ADDR 0x14be
149962306a36Sopenharmony_ci#define LCD_PWM1_HI_ADDR 0x14bf
150062306a36Sopenharmony_ci#define INV_CNT_ADDR 0x14c0
150162306a36Sopenharmony_ci#define TCON_MISC_SEL_ADDR 0x14c1
150262306a36Sopenharmony_ci#define DUAL_PORT_CNTL_ADDR 0x14c2
150362306a36Sopenharmony_ci#define MLVDS_CONTROL 0x14c3
150462306a36Sopenharmony_ci#define MLVDS_RESET_PATTERN_HI 0x14c4
150562306a36Sopenharmony_ci#define MLVDS_RESET_PATTERN_LO 0x14c5
150662306a36Sopenharmony_ci#define MLVDS_RESET_PATTERN_EXT 0x14c6
150762306a36Sopenharmony_ci#define MLVDS_CONFIG_HI 0x14c7
150862306a36Sopenharmony_ci#define MLVDS_CONFIG_LO 0x14c8
150962306a36Sopenharmony_ci#define TCON_DOUBLE_CTL 0x14c9
151062306a36Sopenharmony_ci#define TCON_PATTERN_HI 0x14ca
151162306a36Sopenharmony_ci#define TCON_PATTERN_LO 0x14cb
151262306a36Sopenharmony_ci#define TCON_CONTROL_HI 0x14cc
151362306a36Sopenharmony_ci#define TCON_CONTROL_LO 0x14cd
151462306a36Sopenharmony_ci#define LVDS_BLANK_DATA_HI 0x14ce
151562306a36Sopenharmony_ci#define LVDS_BLANK_DATA_LO 0x14cf
151662306a36Sopenharmony_ci#define LVDS_PACK_CNTL_ADDR 0x14d0
151762306a36Sopenharmony_ci#define DE_HS_ADDR 0x14d1
151862306a36Sopenharmony_ci#define DE_HE_ADDR 0x14d2
151962306a36Sopenharmony_ci#define DE_VS_ADDR 0x14d3
152062306a36Sopenharmony_ci#define DE_VE_ADDR 0x14d4
152162306a36Sopenharmony_ci#define HSYNC_HS_ADDR 0x14d5
152262306a36Sopenharmony_ci#define HSYNC_HE_ADDR 0x14d6
152362306a36Sopenharmony_ci#define HSYNC_VS_ADDR 0x14d7
152462306a36Sopenharmony_ci#define HSYNC_VE_ADDR 0x14d8
152562306a36Sopenharmony_ci#define VSYNC_HS_ADDR 0x14d9
152662306a36Sopenharmony_ci#define VSYNC_HE_ADDR 0x14da
152762306a36Sopenharmony_ci#define VSYNC_VS_ADDR 0x14db
152862306a36Sopenharmony_ci#define VSYNC_VE_ADDR 0x14dc
152962306a36Sopenharmony_ci#define LCD_MCU_CTL 0x14dd
153062306a36Sopenharmony_ci#define LCD_MCU_DATA_0 0x14de
153162306a36Sopenharmony_ci#define LCD_MCU_DATA_1 0x14df
153262306a36Sopenharmony_ci#define LVDS_GEN_CNTL 0x14e0
153362306a36Sopenharmony_ci#define LVDS_PHY_CNTL0 0x14e1
153462306a36Sopenharmony_ci#define LVDS_PHY_CNTL1 0x14e2
153562306a36Sopenharmony_ci#define LVDS_PHY_CNTL2 0x14e3
153662306a36Sopenharmony_ci#define LVDS_PHY_CNTL3 0x14e4
153762306a36Sopenharmony_ci#define LVDS_PHY_CNTL4 0x14e5
153862306a36Sopenharmony_ci#define LVDS_PHY_CNTL5 0x14e6
153962306a36Sopenharmony_ci#define LVDS_SRG_TEST 0x14e8
154062306a36Sopenharmony_ci#define LVDS_BIST_MUX0 0x14e9
154162306a36Sopenharmony_ci#define LVDS_BIST_MUX1 0x14ea
154262306a36Sopenharmony_ci#define LVDS_BIST_FIXED0 0x14eb
154362306a36Sopenharmony_ci#define LVDS_BIST_FIXED1 0x14ec
154462306a36Sopenharmony_ci#define LVDS_BIST_CNTL0 0x14ed
154562306a36Sopenharmony_ci#define LVDS_CLKB_CLKA 0x14ee
154662306a36Sopenharmony_ci#define LVDS_PHY_CLK_CNTL 0x14ef
154762306a36Sopenharmony_ci#define LVDS_SER_EN 0x14f0
154862306a36Sopenharmony_ci#define LVDS_PHY_CNTL6 0x14f1
154962306a36Sopenharmony_ci#define LVDS_PHY_CNTL7 0x14f2
155062306a36Sopenharmony_ci#define LVDS_PHY_CNTL8 0x14f3
155162306a36Sopenharmony_ci#define MLVDS_CLK_CTL0_HI 0x14f4
155262306a36Sopenharmony_ci#define MLVDS_CLK_CTL0_LO 0x14f5
155362306a36Sopenharmony_ci#define MLVDS_DUAL_GATE_WR_START 0x14f6
155462306a36Sopenharmony_ci#define MLVDS_DUAL_GATE_WR_END 0x14f7
155562306a36Sopenharmony_ci#define MLVDS_DUAL_GATE_RD_START 0x14f8
155662306a36Sopenharmony_ci#define MLVDS_DUAL_GATE_RD_END 0x14f9
155762306a36Sopenharmony_ci#define MLVDS_SECOND_RESET_CTL 0x14fa
155862306a36Sopenharmony_ci#define MLVDS_DUAL_GATE_CTL_HI 0x14fb
155962306a36Sopenharmony_ci#define MLVDS_DUAL_GATE_CTL_LO 0x14fc
156062306a36Sopenharmony_ci#define MLVDS_RESET_CONFIG_HI 0x14fd
156162306a36Sopenharmony_ci#define MLVDS_RESET_CONFIG_LO 0x14fe
156262306a36Sopenharmony_ci#define VPU_OSD1_MMC_CTRL 0x2701
156362306a36Sopenharmony_ci#define VPU_OSD2_MMC_CTRL 0x2702
156462306a36Sopenharmony_ci#define VPU_VD1_MMC_CTRL 0x2703
156562306a36Sopenharmony_ci#define VPU_VD2_MMC_CTRL 0x2704
156662306a36Sopenharmony_ci#define VPU_DI_IF1_MMC_CTRL 0x2705
156762306a36Sopenharmony_ci#define VPU_DI_MEM_MMC_CTRL 0x2706
156862306a36Sopenharmony_ci#define VPU_DI_INP_MMC_CTRL 0x2707
156962306a36Sopenharmony_ci#define VPU_DI_MTNRD_MMC_CTRL 0x2708
157062306a36Sopenharmony_ci#define VPU_DI_CHAN2_MMC_CTRL 0x2709
157162306a36Sopenharmony_ci#define VPU_DI_MTNWR_MMC_CTRL 0x270a
157262306a36Sopenharmony_ci#define VPU_DI_NRWR_MMC_CTRL 0x270b
157362306a36Sopenharmony_ci#define VPU_DI_DIWR_MMC_CTRL 0x270c
157462306a36Sopenharmony_ci#define VPU_VDIN0_MMC_CTRL 0x270d
157562306a36Sopenharmony_ci#define VPU_VDIN1_MMC_CTRL 0x270e
157662306a36Sopenharmony_ci#define VPU_BT656_MMC_CTRL 0x270f
157762306a36Sopenharmony_ci#define VPU_TVD3D_MMC_CTRL 0x2710
157862306a36Sopenharmony_ci#define VPU_TVDVBI_MMC_CTRL 0x2711
157962306a36Sopenharmony_ci#define VPU_TVDVBI_VSLATCH_ADDR 0x2712
158062306a36Sopenharmony_ci#define VPU_TVDVBI_WRRSP_ADDR 0x2713
158162306a36Sopenharmony_ci#define VPU_VDIN_PRE_ARB_CTRL 0x2714
158262306a36Sopenharmony_ci#define VPU_VDISP_PRE_ARB_CTRL 0x2715
158362306a36Sopenharmony_ci#define VPU_VPUARB2_PRE_ARB_CTRL 0x2716
158462306a36Sopenharmony_ci#define VPU_OSD3_MMC_CTRL 0x2717
158562306a36Sopenharmony_ci#define VPU_OSD4_MMC_CTRL 0x2718
158662306a36Sopenharmony_ci#define VPU_VD3_MMC_CTRL 0x2719
158762306a36Sopenharmony_ci#define VPU_VIU_VENC_MUX_CTRL 0x271a
158862306a36Sopenharmony_ci#define		VIU1_SEL_VENC_MASK	0x3
158962306a36Sopenharmony_ci#define		VIU1_SEL_VENC_ENCL	0
159062306a36Sopenharmony_ci#define		VIU1_SEL_VENC_ENCI	1
159162306a36Sopenharmony_ci#define		VIU1_SEL_VENC_ENCP	2
159262306a36Sopenharmony_ci#define		VIU1_SEL_VENC_ENCT	3
159362306a36Sopenharmony_ci#define		VIU2_SEL_VENC_MASK	0xc
159462306a36Sopenharmony_ci#define		VIU2_SEL_VENC_ENCL	0
159562306a36Sopenharmony_ci#define		VIU2_SEL_VENC_ENCI	(1 << 2)
159662306a36Sopenharmony_ci#define		VIU2_SEL_VENC_ENCP	(2 << 2)
159762306a36Sopenharmony_ci#define		VIU2_SEL_VENC_ENCT	(3 << 2)
159862306a36Sopenharmony_ci#define VPU_HDMI_SETTING 0x271b
159962306a36Sopenharmony_ci#define		VPU_HDMI_ENCI_DATA_TO_HDMI      BIT(0)
160062306a36Sopenharmony_ci#define		VPU_HDMI_ENCP_DATA_TO_HDMI      BIT(1)
160162306a36Sopenharmony_ci#define		VPU_HDMI_INV_HSYNC              BIT(2)
160262306a36Sopenharmony_ci#define		VPU_HDMI_INV_VSYNC              BIT(3)
160362306a36Sopenharmony_ci#define		VPU_HDMI_OUTPUT_CRYCB           (0 << 5)
160462306a36Sopenharmony_ci#define		VPU_HDMI_OUTPUT_YCBCR           (1 << 5)
160562306a36Sopenharmony_ci#define		VPU_HDMI_OUTPUT_YCRCB           (2 << 5)
160662306a36Sopenharmony_ci#define		VPU_HDMI_OUTPUT_CBCRY           (3 << 5)
160762306a36Sopenharmony_ci#define		VPU_HDMI_OUTPUT_CBYCR           (4 << 5)
160862306a36Sopenharmony_ci#define		VPU_HDMI_OUTPUT_CRCBY           (5 << 5)
160962306a36Sopenharmony_ci#define		VPU_HDMI_WR_RATE(rate)          (((rate & 0x1f) - 1) << 8)
161062306a36Sopenharmony_ci#define		VPU_HDMI_RD_RATE(rate)          (((rate & 0x1f) - 1) << 12)
161162306a36Sopenharmony_ci#define ENCI_INFO_READ 0x271c
161262306a36Sopenharmony_ci#define ENCP_INFO_READ 0x271d
161362306a36Sopenharmony_ci#define ENCT_INFO_READ 0x271e
161462306a36Sopenharmony_ci#define ENCL_INFO_READ 0x271f
161562306a36Sopenharmony_ci#define VPU_SW_RESET 0x2720
161662306a36Sopenharmony_ci#define VPU_D2D3_MMC_CTRL 0x2721
161762306a36Sopenharmony_ci#define VPU_CONT_MMC_CTRL 0x2722
161862306a36Sopenharmony_ci#define VPU_CLK_GATE 0x2723
161962306a36Sopenharmony_ci#define VPU_RDMA_MMC_CTRL 0x2724
162062306a36Sopenharmony_ci#define VPU_MEM_PD_REG0 0x2725
162162306a36Sopenharmony_ci#define VPU_MEM_PD_REG1 0x2726
162262306a36Sopenharmony_ci#define VPU_HDMI_DATA_OVR 0x2727
162362306a36Sopenharmony_ci#define VPU_PROT1_MMC_CTRL 0x2728
162462306a36Sopenharmony_ci#define VPU_PROT2_MMC_CTRL 0x2729
162562306a36Sopenharmony_ci#define VPU_PROT3_MMC_CTRL 0x272a
162662306a36Sopenharmony_ci#define VPU_ARB4_V1_MMC_CTRL 0x272b
162762306a36Sopenharmony_ci#define VPU_ARB4_V2_MMC_CTRL 0x272c
162862306a36Sopenharmony_ci#define VPU_VPU_PWM_V0 0x2730
162962306a36Sopenharmony_ci#define VPU_VPU_PWM_V1 0x2731
163062306a36Sopenharmony_ci#define VPU_VPU_PWM_V2 0x2732
163162306a36Sopenharmony_ci#define VPU_VPU_PWM_V3 0x2733
163262306a36Sopenharmony_ci#define VPU_VPU_PWM_H0 0x2734
163362306a36Sopenharmony_ci#define VPU_VPU_PWM_H1 0x2735
163462306a36Sopenharmony_ci#define VPU_VPU_PWM_H2 0x2736
163562306a36Sopenharmony_ci#define VPU_VPU_PWM_H3 0x2737
163662306a36Sopenharmony_ci#define VPU_MISC_CTRL 0x2740
163762306a36Sopenharmony_ci#define VPU_ISP_GCLK_CTRL0 0x2741
163862306a36Sopenharmony_ci#define VPU_ISP_GCLK_CTRL1 0x2742
163962306a36Sopenharmony_ci#define VPU_HDMI_FMT_CTRL 0x2743
164062306a36Sopenharmony_ci#define VPU_VDIN_ASYNC_HOLD_CTRL 0x2743
164162306a36Sopenharmony_ci#define VPU_VDISP_ASYNC_HOLD_CTRL 0x2744
164262306a36Sopenharmony_ci#define VPU_VPUARB2_ASYNC_HOLD_CTRL 0x2745
164362306a36Sopenharmony_ci
164462306a36Sopenharmony_ci#define VPU_PROT1_CLK_GATE 0x2750
164562306a36Sopenharmony_ci#define VPU_PROT1_GEN_CNTL 0x2751
164662306a36Sopenharmony_ci#define VPU_PROT1_X_START_END 0x2752
164762306a36Sopenharmony_ci#define VPU_PROT1_Y_START_END 0x2753
164862306a36Sopenharmony_ci#define VPU_PROT1_Y_LEN_STEP 0x2754
164962306a36Sopenharmony_ci#define VPU_PROT1_RPT_LOOP 0x2755
165062306a36Sopenharmony_ci#define VPU_PROT1_RPT_PAT 0x2756
165162306a36Sopenharmony_ci#define VPU_PROT1_DDR 0x2757
165262306a36Sopenharmony_ci#define VPU_PROT1_RBUF_ROOM 0x2758
165362306a36Sopenharmony_ci#define VPU_PROT1_STAT_0 0x2759
165462306a36Sopenharmony_ci#define VPU_PROT1_STAT_1 0x275a
165562306a36Sopenharmony_ci#define VPU_PROT1_STAT_2 0x275b
165662306a36Sopenharmony_ci#define VPU_PROT1_REQ_ONOFF 0x275c
165762306a36Sopenharmony_ci#define VPU_PROT2_CLK_GATE 0x2760
165862306a36Sopenharmony_ci#define VPU_PROT2_GEN_CNTL 0x2761
165962306a36Sopenharmony_ci#define VPU_PROT2_X_START_END 0x2762
166062306a36Sopenharmony_ci#define VPU_PROT2_Y_START_END 0x2763
166162306a36Sopenharmony_ci#define VPU_PROT2_Y_LEN_STEP 0x2764
166262306a36Sopenharmony_ci#define VPU_PROT2_RPT_LOOP 0x2765
166362306a36Sopenharmony_ci#define VPU_PROT2_RPT_PAT 0x2766
166462306a36Sopenharmony_ci#define VPU_PROT2_DDR 0x2767
166562306a36Sopenharmony_ci#define VPU_PROT2_RBUF_ROOM 0x2768
166662306a36Sopenharmony_ci#define VPU_PROT2_STAT_0 0x2769
166762306a36Sopenharmony_ci#define VPU_PROT2_STAT_1 0x276a
166862306a36Sopenharmony_ci#define VPU_PROT2_STAT_2 0x276b
166962306a36Sopenharmony_ci#define VPU_PROT2_REQ_ONOFF 0x276c
167062306a36Sopenharmony_ci#define VPU_PROT3_CLK_GATE 0x2770
167162306a36Sopenharmony_ci#define VPU_PROT3_GEN_CNTL 0x2771
167262306a36Sopenharmony_ci#define VPU_PROT3_X_START_END 0x2772
167362306a36Sopenharmony_ci#define VPU_PROT3_Y_START_END 0x2773
167462306a36Sopenharmony_ci#define VPU_PROT3_Y_LEN_STEP 0x2774
167562306a36Sopenharmony_ci#define VPU_PROT3_RPT_LOOP 0x2775
167662306a36Sopenharmony_ci#define VPU_PROT3_RPT_PAT 0x2776
167762306a36Sopenharmony_ci#define VPU_PROT3_DDR 0x2777
167862306a36Sopenharmony_ci#define VPU_PROT3_RBUF_ROOM 0x2778
167962306a36Sopenharmony_ci#define VPU_PROT3_STAT_0 0x2779
168062306a36Sopenharmony_ci#define VPU_PROT3_STAT_1 0x277a
168162306a36Sopenharmony_ci#define VPU_PROT3_STAT_2 0x277b
168262306a36Sopenharmony_ci#define VPU_PROT3_REQ_ONOFF 0x277c
168362306a36Sopenharmony_ci#define VPU_RDARB_MODE_L1C1 0x2790
168462306a36Sopenharmony_ci#define VPU_RDARB_MODE_L1C2 0x2799
168562306a36Sopenharmony_ci#define VPU_RDARB_MODE_L2C1 0x279d
168662306a36Sopenharmony_ci#define VPU_WRARB_MODE_L2C1 0x27a2
168762306a36Sopenharmony_ci#define		VPU_RDARB_SLAVE_TO_MASTER_PORT(dc, port) (port << (16 + dc))
168862306a36Sopenharmony_ci
168962306a36Sopenharmony_ci/* osd super scale */
169062306a36Sopenharmony_ci#define OSDSR_HV_SIZEIN 0x3130
169162306a36Sopenharmony_ci#define OSDSR_CTRL_MODE 0x3131
169262306a36Sopenharmony_ci#define OSDSR_ABIC_HCOEF 0x3132
169362306a36Sopenharmony_ci#define OSDSR_YBIC_HCOEF 0x3133
169462306a36Sopenharmony_ci#define OSDSR_CBIC_HCOEF 0x3134
169562306a36Sopenharmony_ci#define OSDSR_ABIC_VCOEF 0x3135
169662306a36Sopenharmony_ci#define OSDSR_YBIC_VCOEF 0x3136
169762306a36Sopenharmony_ci#define OSDSR_CBIC_VCOEF 0x3137
169862306a36Sopenharmony_ci#define OSDSR_VAR_PARA 0x3138
169962306a36Sopenharmony_ci#define OSDSR_CONST_PARA 0x3139
170062306a36Sopenharmony_ci#define OSDSR_RKE_EXTWIN 0x313a
170162306a36Sopenharmony_ci#define OSDSR_UK_GRAD2DDIAG_TH_RATE 0x313b
170262306a36Sopenharmony_ci#define OSDSR_UK_GRAD2DDIAG_LIMIT 0x313c
170362306a36Sopenharmony_ci#define OSDSR_UK_GRAD2DADJA_TH_RATE 0x313d
170462306a36Sopenharmony_ci#define OSDSR_UK_GRAD2DADJA_LIMIT 0x313e
170562306a36Sopenharmony_ci#define OSDSR_UK_BST_GAIN 0x313f
170662306a36Sopenharmony_ci#define OSDSR_HVBLEND_TH 0x3140
170762306a36Sopenharmony_ci#define OSDSR_DEMO_WIND_TB 0x3141
170862306a36Sopenharmony_ci#define OSDSR_DEMO_WIND_LR 0x3142
170962306a36Sopenharmony_ci#define OSDSR_INT_BLANK_NUM 0x3143
171062306a36Sopenharmony_ci#define OSDSR_FRM_END_STAT 0x3144
171162306a36Sopenharmony_ci#define OSDSR_ABIC_HCOEF0 0x3145
171262306a36Sopenharmony_ci#define OSDSR_YBIC_HCOEF0 0x3146
171362306a36Sopenharmony_ci#define OSDSR_CBIC_HCOEF0 0x3147
171462306a36Sopenharmony_ci#define OSDSR_ABIC_VCOEF0 0x3148
171562306a36Sopenharmony_ci#define OSDSR_YBIC_VCOEF0 0x3149
171662306a36Sopenharmony_ci#define OSDSR_CBIC_VCOEF0 0x314a
171762306a36Sopenharmony_ci
171862306a36Sopenharmony_ci/* osd afbcd on gxtvbb */
171962306a36Sopenharmony_ci#define OSD1_AFBCD_ENABLE 0x31a0
172062306a36Sopenharmony_ci#define		OSD1_AFBCD_ID_FIFO_THRD			GENMASK(15, 9)
172162306a36Sopenharmony_ci#define		OSD1_AFBCD_DEC_ENABLE			BIT(8)
172262306a36Sopenharmony_ci#define		OSD1_AFBCD_FRM_START			BIT(0)
172362306a36Sopenharmony_ci#define OSD1_AFBCD_MODE 0x31a1
172462306a36Sopenharmony_ci#define		OSD1_AFBCD_SOFT_RESET			BIT(31)
172562306a36Sopenharmony_ci#define		OSD1_AFBCD_AXI_REORDER_MODE		BIT(28)
172662306a36Sopenharmony_ci#define		OSD1_AFBCD_MIF_URGENT			GENMASK(25, 24)
172762306a36Sopenharmony_ci#define		OSD1_AFBCD_HOLD_LINE_NUM		GENMASK(22, 16)
172862306a36Sopenharmony_ci#define		OSD1_AFBCD_RGBA_EXCHAN_CTRL		GENMASK(15, 8)
172962306a36Sopenharmony_ci#define		OSD1_AFBCD_HREG_BLOCK_SPLIT		BIT(6)
173062306a36Sopenharmony_ci#define		OSD1_AFBCD_HREG_HALF_BLOCK		BIT(5)
173162306a36Sopenharmony_ci#define		OSD1_AFBCD_HREG_PIXEL_PACKING_FMT	GENMASK(4, 0)
173262306a36Sopenharmony_ci#define OSD1_AFBCD_SIZE_IN 0x31a2
173362306a36Sopenharmony_ci#define		OSD1_AFBCD_HREG_VSIZE_IN		GENMASK(31, 16)
173462306a36Sopenharmony_ci#define		OSD1_AFBCD_HREG_HSIZE_IN		GENMASK(15, 0)
173562306a36Sopenharmony_ci#define OSD1_AFBCD_HDR_PTR 0x31a3
173662306a36Sopenharmony_ci#define OSD1_AFBCD_FRAME_PTR 0x31a4
173762306a36Sopenharmony_ci#define OSD1_AFBCD_CHROMA_PTR 0x31a5
173862306a36Sopenharmony_ci#define OSD1_AFBCD_CONV_CTRL 0x31a6
173962306a36Sopenharmony_ci#define		OSD1_AFBCD_CONV_LBUF_LEN		GENMASK(15, 0)
174062306a36Sopenharmony_ci#define OSD1_AFBCD_STATUS 0x31a8
174162306a36Sopenharmony_ci#define OSD1_AFBCD_PIXEL_HSCOPE 0x31a9
174262306a36Sopenharmony_ci#define		OSD1_AFBCD_DEC_PIXEL_BGN_H		GENMASK(31, 16)
174362306a36Sopenharmony_ci#define		OSD1_AFBCD_DEC_PIXEL_END_H		GENMASK(15, 0)
174462306a36Sopenharmony_ci#define OSD1_AFBCD_PIXEL_VSCOPE 0x31aa
174562306a36Sopenharmony_ci#define		OSD1_AFBCD_DEC_PIXEL_BGN_V		GENMASK(31, 16)
174662306a36Sopenharmony_ci#define		OSD1_AFBCD_DEC_PIXEL_END_V		GENMASK(15, 0)
174762306a36Sopenharmony_ci
174862306a36Sopenharmony_ci/* add for gxm and 962e dv core2 */
174962306a36Sopenharmony_ci#define DOLBY_CORE2A_SWAP_CTRL1	0x3434
175062306a36Sopenharmony_ci#define DOLBY_CORE2A_SWAP_CTRL2	0x3435
175162306a36Sopenharmony_ci
175262306a36Sopenharmony_ci/* osd afbc on g12a */
175362306a36Sopenharmony_ci#define VPU_MAFBC_BLOCK_ID 0x3a00
175462306a36Sopenharmony_ci#define VPU_MAFBC_IRQ_RAW_STATUS 0x3a01
175562306a36Sopenharmony_ci#define VPU_MAFBC_IRQ_CLEAR 0x3a02
175662306a36Sopenharmony_ci#define VPU_MAFBC_IRQ_MASK 0x3a03
175762306a36Sopenharmony_ci#define VPU_MAFBC_IRQ_STATUS 0x3a04
175862306a36Sopenharmony_ci#define		VPU_MAFBC_IRQ_SECURE_ID_ERROR		BIT(5)
175962306a36Sopenharmony_ci#define		VPU_MAFBC_IRQ_AXI_ERROR			BIT(4)
176062306a36Sopenharmony_ci#define		VPU_MAFBC_IRQ_DETILING_ERROR		BIT(3)
176162306a36Sopenharmony_ci#define		VPU_MAFBC_IRQ_DECODE_ERROR		BIT(2)
176262306a36Sopenharmony_ci#define		VPU_MAFBC_IRQ_CONFIGURATION_SWAPPED	BIT(1)
176362306a36Sopenharmony_ci#define		VPU_MAFBC_IRQ_SURFACES_COMPLETED	BIT(0)
176462306a36Sopenharmony_ci#define VPU_MAFBC_COMMAND 0x3a05
176562306a36Sopenharmony_ci#define		VPU_MAFBC_PENDING_SWAP	BIT(1)
176662306a36Sopenharmony_ci#define		VPU_MAFBC_DIRECT_SWAP	BIT(0)
176762306a36Sopenharmony_ci#define VPU_MAFBC_STATUS 0x3a06
176862306a36Sopenharmony_ci#define		VPU_MAFBC_ERROR		BIT(2)
176962306a36Sopenharmony_ci#define		VPU_MAFBC_SWAPPING	BIT(1)
177062306a36Sopenharmony_ci#define		VPU_MAFBC_ACTIVE	BIT(0)
177162306a36Sopenharmony_ci#define VPU_MAFBC_SURFACE_CFG 0x3a07
177262306a36Sopenharmony_ci#define		VPU_MAFBC_CONTINUOUS_DECODING_ENABLE	BIT(16)
177362306a36Sopenharmony_ci#define		VPU_MAFBC_S3_ENABLE			BIT(3)
177462306a36Sopenharmony_ci#define		VPU_MAFBC_S2_ENABLE			BIT(2)
177562306a36Sopenharmony_ci#define		VPU_MAFBC_S1_ENABLE			BIT(1)
177662306a36Sopenharmony_ci#define		VPU_MAFBC_S0_ENABLE			BIT(0)
177762306a36Sopenharmony_ci#define VPU_MAFBC_HEADER_BUF_ADDR_LOW_S0 0x3a10
177862306a36Sopenharmony_ci#define VPU_MAFBC_HEADER_BUF_ADDR_HIGH_S0 0x3a11
177962306a36Sopenharmony_ci#define VPU_MAFBC_FORMAT_SPECIFIER_S0 0x3a12
178062306a36Sopenharmony_ci#define		VPU_MAFBC_PAYLOAD_LIMIT_EN	BIT(19)
178162306a36Sopenharmony_ci#define		VPU_MAFBC_TILED_HEADER_EN	BIT(18)
178262306a36Sopenharmony_ci#define		VPU_MAFBC_SUPER_BLOCK_ASPECT	GENMASK(17, 16)
178362306a36Sopenharmony_ci#define		VPU_MAFBC_BLOCK_SPLIT		BIT(9)
178462306a36Sopenharmony_ci#define		VPU_MAFBC_YUV_TRANSFORM		BIT(8)
178562306a36Sopenharmony_ci#define		VPU_MAFBC_PIXEL_FORMAT		GENMASK(3, 0)
178662306a36Sopenharmony_ci#define VPU_MAFBC_BUFFER_WIDTH_S0 0x3a13
178762306a36Sopenharmony_ci#define VPU_MAFBC_BUFFER_HEIGHT_S0 0x3a14
178862306a36Sopenharmony_ci#define VPU_MAFBC_BOUNDING_BOX_X_START_S0 0x3a15
178962306a36Sopenharmony_ci#define VPU_MAFBC_BOUNDING_BOX_X_END_S0 0x3a16
179062306a36Sopenharmony_ci#define VPU_MAFBC_BOUNDING_BOX_Y_START_S0 0x3a17
179162306a36Sopenharmony_ci#define VPU_MAFBC_BOUNDING_BOX_Y_END_S0 0x3a18
179262306a36Sopenharmony_ci#define VPU_MAFBC_OUTPUT_BUF_ADDR_LOW_S0 0x3a19
179362306a36Sopenharmony_ci#define VPU_MAFBC_OUTPUT_BUF_ADDR_HIGH_S0 0x3a1a
179462306a36Sopenharmony_ci#define VPU_MAFBC_OUTPUT_BUF_STRIDE_S0 0x3a1b
179562306a36Sopenharmony_ci#define VPU_MAFBC_PREFETCH_CFG_S0 0x3a1c
179662306a36Sopenharmony_ci#define		VPU_MAFBC_PREFETCH_READ_DIRECTION_Y	BIT(1)
179762306a36Sopenharmony_ci#define		VPU_MAFBC_PREFETCH_READ_DIRECTION_X	BIT(0)
179862306a36Sopenharmony_ci
179962306a36Sopenharmony_ci#define VPU_MAFBC_HEADER_BUF_ADDR_LOW_S1 0x3a30
180062306a36Sopenharmony_ci#define VPU_MAFBC_HEADER_BUF_ADDR_HIGH_S1 0x3a31
180162306a36Sopenharmony_ci#define VPU_MAFBC_FORMAT_SPECIFIER_S1 0x3a32
180262306a36Sopenharmony_ci#define VPU_MAFBC_BUFFER_WIDTH_S1 0x3a33
180362306a36Sopenharmony_ci#define VPU_MAFBC_BUFFER_HEIGHT_S1 0x3a34
180462306a36Sopenharmony_ci#define VPU_MAFBC_BOUNDING_BOX_X_START_S1 0x3a35
180562306a36Sopenharmony_ci#define VPU_MAFBC_BOUNDING_BOX_X_END_S1 0x3a36
180662306a36Sopenharmony_ci#define VPU_MAFBC_BOUNDING_BOX_Y_START_S1 0x3a37
180762306a36Sopenharmony_ci#define VPU_MAFBC_BOUNDING_BOX_Y_END_S1 0x3a38
180862306a36Sopenharmony_ci#define VPU_MAFBC_OUTPUT_BUF_ADDR_LOW_S1 0x3a39
180962306a36Sopenharmony_ci#define VPU_MAFBC_OUTPUT_BUF_ADDR_HIGH_S1 0x3a3a
181062306a36Sopenharmony_ci#define VPU_MAFBC_OUTPUT_BUF_STRIDE_S1 0x3a3b
181162306a36Sopenharmony_ci#define VPU_MAFBC_PREFETCH_CFG_S1 0x3a3c
181262306a36Sopenharmony_ci
181362306a36Sopenharmony_ci#define VPU_MAFBC_HEADER_BUF_ADDR_LOW_S2 0x3a50
181462306a36Sopenharmony_ci#define VPU_MAFBC_HEADER_BUF_ADDR_HIGH_S2 0x3a51
181562306a36Sopenharmony_ci#define VPU_MAFBC_FORMAT_SPECIFIER_S2 0x3a52
181662306a36Sopenharmony_ci#define VPU_MAFBC_BUFFER_WIDTH_S2 0x3a53
181762306a36Sopenharmony_ci#define VPU_MAFBC_BUFFER_HEIGHT_S2 0x3a54
181862306a36Sopenharmony_ci#define VPU_MAFBC_BOUNDING_BOX_X_START_S2 0x3a55
181962306a36Sopenharmony_ci#define VPU_MAFBC_BOUNDING_BOX_X_END_S2 0x3a56
182062306a36Sopenharmony_ci#define VPU_MAFBC_BOUNDING_BOX_Y_START_S2 0x3a57
182162306a36Sopenharmony_ci#define VPU_MAFBC_BOUNDING_BOX_Y_END_S2 0x3a58
182262306a36Sopenharmony_ci#define VPU_MAFBC_OUTPUT_BUF_ADDR_LOW_S2 0x3a59
182362306a36Sopenharmony_ci#define VPU_MAFBC_OUTPUT_BUF_ADDR_HIGH_S2 0x3a5a
182462306a36Sopenharmony_ci#define VPU_MAFBC_OUTPUT_BUF_STRIDE_S2 0x3a5b
182562306a36Sopenharmony_ci#define VPU_MAFBC_PREFETCH_CFG_S2 0x3a5c
182662306a36Sopenharmony_ci
182762306a36Sopenharmony_ci#define VPU_MAFBC_HEADER_BUF_ADDR_LOW_S3 0x3a70
182862306a36Sopenharmony_ci#define VPU_MAFBC_HEADER_BUF_ADDR_HIGH_S3 0x3a71
182962306a36Sopenharmony_ci#define VPU_MAFBC_FORMAT_SPECIFIER_S3 0x3a72
183062306a36Sopenharmony_ci#define VPU_MAFBC_BUFFER_WIDTH_S3 0x3a73
183162306a36Sopenharmony_ci#define VPU_MAFBC_BUFFER_HEIGHT_S3 0x3a74
183262306a36Sopenharmony_ci#define VPU_MAFBC_BOUNDING_BOX_X_START_S3 0x3a75
183362306a36Sopenharmony_ci#define VPU_MAFBC_BOUNDING_BOX_X_END_S3 0x3a76
183462306a36Sopenharmony_ci#define VPU_MAFBC_BOUNDING_BOX_Y_START_S3 0x3a77
183562306a36Sopenharmony_ci#define VPU_MAFBC_BOUNDING_BOX_Y_END_S3 0x3a78
183662306a36Sopenharmony_ci#define VPU_MAFBC_OUTPUT_BUF_ADDR_LOW_S3 0x3a79
183762306a36Sopenharmony_ci#define VPU_MAFBC_OUTPUT_BUF_ADDR_HIGH_S3 0x3a7a
183862306a36Sopenharmony_ci#define VPU_MAFBC_OUTPUT_BUF_STRIDE_S3 0x3a7b
183962306a36Sopenharmony_ci#define VPU_MAFBC_PREFETCH_CFG_S3 0x3a7c
184062306a36Sopenharmony_ci
184162306a36Sopenharmony_ci#define DOLBY_PATH_CTRL 0x1a0c
184262306a36Sopenharmony_ci#define		DOLBY_BYPASS_EN(val)            (val & 0xf)
184362306a36Sopenharmony_ci#define OSD_PATH_MISC_CTRL 0x1a0e
184462306a36Sopenharmony_ci#define		OSD_PATH_OSD_AXI_SEL_OSD1_AFBCD	BIT(4)
184562306a36Sopenharmony_ci#define		OSD_PATH_OSD_AXI_SEL_OSD2_AFBCD	BIT(5)
184662306a36Sopenharmony_ci#define		OSD_PATH_OSD_AXI_SEL_OSD3_AFBCD	BIT(6)
184762306a36Sopenharmony_ci#define MALI_AFBCD_TOP_CTRL 0x1a0f
184862306a36Sopenharmony_ci#define		MALI_AFBCD_MANUAL_RESET		BIT(23)
184962306a36Sopenharmony_ci
185062306a36Sopenharmony_ci#define VIU_OSD_BLEND_CTRL 0x39b0
185162306a36Sopenharmony_ci#define		VIU_OSD_BLEND_REORDER(dest, src)      ((src) << (dest * 4))
185262306a36Sopenharmony_ci#define		VIU_OSD_BLEND_DIN_EN(bits)            ((bits & 0xf) << 20)
185362306a36Sopenharmony_ci#define		VIU_OSD_BLEND1_DIN3_BYPASS_TO_DOUT1   BIT(24)
185462306a36Sopenharmony_ci#define		VIU_OSD_BLEND1_DOUT_BYPASS_TO_BLEND2  BIT(25)
185562306a36Sopenharmony_ci#define		VIU_OSD_BLEND_DIN0_BYPASS_TO_DOUT0    BIT(26)
185662306a36Sopenharmony_ci#define		VIU_OSD_BLEND_BLEN2_PREMULT_EN(input) ((input & 0x3) << 27)
185762306a36Sopenharmony_ci#define		VIU_OSD_BLEND_HOLD_LINES(lines)       ((lines & 0x7) << 29)
185862306a36Sopenharmony_ci#define VIU_OSD_BLEND_CTRL1 0x39c0
185962306a36Sopenharmony_ci#define VIU_OSD_BLEND_DIN0_SCOPE_H 0x39b1
186062306a36Sopenharmony_ci#define VIU_OSD_BLEND_DIN0_SCOPE_V 0x39b2
186162306a36Sopenharmony_ci#define VIU_OSD_BLEND_DIN1_SCOPE_H 0x39b3
186262306a36Sopenharmony_ci#define VIU_OSD_BLEND_DIN1_SCOPE_V 0x39b4
186362306a36Sopenharmony_ci#define VIU_OSD_BLEND_DIN2_SCOPE_H 0x39b5
186462306a36Sopenharmony_ci#define VIU_OSD_BLEND_DIN2_SCOPE_V 0x39b6
186562306a36Sopenharmony_ci#define VIU_OSD_BLEND_DIN3_SCOPE_H 0x39b7
186662306a36Sopenharmony_ci#define VIU_OSD_BLEND_DIN3_SCOPE_V 0x39b8
186762306a36Sopenharmony_ci#define VIU_OSD_BLEND_DUMMY_DATA0 0x39b9
186862306a36Sopenharmony_ci#define VIU_OSD_BLEND_DUMMY_ALPHA 0x39ba
186962306a36Sopenharmony_ci#define VIU_OSD_BLEND_BLEND0_SIZE 0x39bb
187062306a36Sopenharmony_ci#define VIU_OSD_BLEND_BLEND1_SIZE 0x39bc
187162306a36Sopenharmony_ci#define VIU_OSD_BLEND_RO_CURRENT_XY 0x39bf
187262306a36Sopenharmony_ci
187362306a36Sopenharmony_ci#define VPP_OUT_H_V_SIZE 0x1da5
187462306a36Sopenharmony_ci
187562306a36Sopenharmony_ci#define VPP_VD2_HDR_IN_SIZE 0x1df0
187662306a36Sopenharmony_ci#define VPP_OSD1_IN_SIZE 0x1df1
187762306a36Sopenharmony_ci#define VPP_GCLK_CTRL2 0x1df2
187862306a36Sopenharmony_ci#define VD2_PPS_DUMMY_DATA 0x1df4
187962306a36Sopenharmony_ci#define VPP_OSD1_BLD_H_SCOPE 0x1df5
188062306a36Sopenharmony_ci#define VPP_OSD1_BLD_V_SCOPE 0x1df6
188162306a36Sopenharmony_ci#define VPP_OSD2_BLD_H_SCOPE 0x1df7
188262306a36Sopenharmony_ci#define VPP_OSD2_BLD_V_SCOPE 0x1df8
188362306a36Sopenharmony_ci#define VPP_WRBAK_CTRL 0x1df9
188462306a36Sopenharmony_ci#define VPP_SLEEP_CTRL 0x1dfa
188562306a36Sopenharmony_ci#define VD1_BLEND_SRC_CTRL 0x1dfb
188662306a36Sopenharmony_ci#define VD2_BLEND_SRC_CTRL 0x1dfc
188762306a36Sopenharmony_ci#define		VD_BLEND_PREBLD_SRC_VD1         (1 << 0)
188862306a36Sopenharmony_ci#define		VD_BLEND_PREBLD_SRC_VD2         (2 << 0)
188962306a36Sopenharmony_ci#define		VD_BLEND_PREBLD_SRC_OSD1        (3 << 0)
189062306a36Sopenharmony_ci#define		VD_BLEND_PREBLD_SRC_OSD2        (4 << 0)
189162306a36Sopenharmony_ci#define		VD_BLEND_PREBLD_PREMULT_EN      BIT(4)
189262306a36Sopenharmony_ci#define		VD_BLEND_POSTBLD_SRC_VD1        (1 << 8)
189362306a36Sopenharmony_ci#define		VD_BLEND_POSTBLD_SRC_VD2        (2 << 8)
189462306a36Sopenharmony_ci#define		VD_BLEND_POSTBLD_SRC_OSD1       (3 << 8)
189562306a36Sopenharmony_ci#define		VD_BLEND_POSTBLD_SRC_OSD2       (4 << 8)
189662306a36Sopenharmony_ci#define		VD_BLEND_POSTBLD_PREMULT_EN     BIT(16)
189762306a36Sopenharmony_ci#define OSD1_BLEND_SRC_CTRL 0x1dfd
189862306a36Sopenharmony_ci#define OSD2_BLEND_SRC_CTRL 0x1dfe
189962306a36Sopenharmony_ci#define		OSD_BLEND_POSTBLD_SRC_VD1       (1 << 8)
190062306a36Sopenharmony_ci#define		OSD_BLEND_POSTBLD_SRC_VD2       (2 << 8)
190162306a36Sopenharmony_ci#define		OSD_BLEND_POSTBLD_SRC_OSD1      (3 << 8)
190262306a36Sopenharmony_ci#define		OSD_BLEND_POSTBLD_SRC_OSD2      (4 << 8)
190362306a36Sopenharmony_ci#define		OSD_BLEND_PATH_SEL_ENABLE       BIT(20)
190462306a36Sopenharmony_ci
190562306a36Sopenharmony_ci#define VPP_POST_BLEND_BLEND_DUMMY_DATA 0x3968
190662306a36Sopenharmony_ci#define VPP_POST_BLEND_DUMMY_ALPHA 0x3969
190762306a36Sopenharmony_ci#define VPP_RDARB_MODE 0x3978
190862306a36Sopenharmony_ci#define VPP_RDARB_REQEN_SLV 0x3979
190962306a36Sopenharmony_ci
191062306a36Sopenharmony_ci#endif /* __MESON_REGISTERS_H */
1911