0001
0002
0003
0004
0005
0006
0007 #ifndef __RK3066_HDMI_H__
0008 #define __RK3066_HDMI_H__
0009
0010 #define GRF_SOC_CON0 0x150
0011 #define HDMI_VIDEO_SEL BIT(14)
0012
0013 #define DDC_SEGMENT_ADDR 0x30
0014 #define HDMI_SCL_RATE (50 * 1000)
0015 #define HDMI_MAXIMUM_INFO_FRAME_SIZE 0x11
0016
0017 #define N_32K 0x1000
0018 #define N_441K 0x1880
0019 #define N_882K 0x3100
0020 #define N_1764K 0x6200
0021 #define N_48K 0x1800
0022 #define N_96K 0x3000
0023 #define N_192K 0x6000
0024
0025 #define HDMI_SYS_CTRL 0x000
0026 #define HDMI_LR_SWAP_N3 0x004
0027 #define HDMI_N2 0x008
0028 #define HDMI_N1 0x00c
0029 #define HDMI_SPDIF_FS_CTS_INT3 0x010
0030 #define HDMI_CTS_INT2 0x014
0031 #define HDMI_CTS_INT1 0x018
0032 #define HDMI_CTS_EXT3 0x01c
0033 #define HDMI_CTS_EXT2 0x020
0034 #define HDMI_CTS_EXT1 0x024
0035 #define HDMI_AUDIO_CTRL1 0x028
0036 #define HDMI_AUDIO_CTRL2 0x02c
0037 #define HDMI_I2S_AUDIO_CTRL 0x030
0038 #define HDMI_I2S_SWAP 0x040
0039 #define HDMI_AUDIO_STA_BIT_CTRL1 0x044
0040 #define HDMI_AUDIO_STA_BIT_CTRL2 0x048
0041 #define HDMI_AUDIO_SRC_NUM_AND_LENGTH 0x050
0042 #define HDMI_AV_CTRL1 0x054
0043 #define HDMI_VIDEO_CTRL1 0x058
0044 #define HDMI_DEEP_COLOR_MODE 0x05c
0045
0046 #define HDMI_EXT_VIDEO_PARA 0x0c0
0047 #define HDMI_EXT_HTOTAL_L 0x0c4
0048 #define HDMI_EXT_HTOTAL_H 0x0c8
0049 #define HDMI_EXT_HBLANK_L 0x0cc
0050 #define HDMI_EXT_HBLANK_H 0x0d0
0051 #define HDMI_EXT_HDELAY_L 0x0d4
0052 #define HDMI_EXT_HDELAY_H 0x0d8
0053 #define HDMI_EXT_HDURATION_L 0x0dc
0054 #define HDMI_EXT_HDURATION_H 0x0e0
0055 #define HDMI_EXT_VTOTAL_L 0x0e4
0056 #define HDMI_EXT_VTOTAL_H 0x0e8
0057 #define HDMI_AV_CTRL2 0x0ec
0058 #define HDMI_EXT_VBLANK_L 0x0f4
0059 #define HDMI_EXT_VBLANK_H 0x10c
0060 #define HDMI_EXT_VDELAY 0x0f8
0061 #define HDMI_EXT_VDURATION 0x0fc
0062
0063 #define HDMI_CP_MANU_SEND_CTRL 0x100
0064 #define HDMI_CP_AUTO_SEND_CTRL 0x104
0065 #define HDMI_AUTO_CHECKSUM_OPT 0x108
0066
0067 #define HDMI_VIDEO_CTRL2 0x114
0068
0069 #define HDMI_PHY_OPTION 0x144
0070
0071 #define HDMI_CP_BUF_INDEX 0x17c
0072 #define HDMI_CP_BUF_ACC_HB0 0x180
0073 #define HDMI_CP_BUF_ACC_HB1 0x184
0074 #define HDMI_CP_BUF_ACC_HB2 0x188
0075 #define HDMI_CP_BUF_ACC_PB0 0x18c
0076
0077 #define HDMI_DDC_READ_FIFO_ADDR 0x200
0078 #define HDMI_DDC_BUS_FREQ_L 0x204
0079 #define HDMI_DDC_BUS_FREQ_H 0x208
0080 #define HDMI_DDC_BUS_CTRL 0x2dc
0081 #define HDMI_DDC_I2C_LEN 0x278
0082 #define HDMI_DDC_I2C_OFFSET 0x280
0083 #define HDMI_DDC_I2C_CTRL 0x284
0084 #define HDMI_DDC_I2C_READ_BUF0 0x288
0085 #define HDMI_DDC_I2C_READ_BUF1 0x28c
0086 #define HDMI_DDC_I2C_READ_BUF2 0x290
0087 #define HDMI_DDC_I2C_READ_BUF3 0x294
0088 #define HDMI_DDC_I2C_WRITE_BUF0 0x298
0089 #define HDMI_DDC_I2C_WRITE_BUF1 0x29c
0090 #define HDMI_DDC_I2C_WRITE_BUF2 0x2a0
0091 #define HDMI_DDC_I2C_WRITE_BUF3 0x2a4
0092 #define HDMI_DDC_I2C_WRITE_BUF4 0x2ac
0093 #define HDMI_DDC_I2C_WRITE_BUF5 0x2b0
0094 #define HDMI_DDC_I2C_WRITE_BUF6 0x2b4
0095
0096 #define HDMI_INTR_MASK1 0x248
0097 #define HDMI_INTR_MASK2 0x24c
0098 #define HDMI_INTR_STATUS1 0x250
0099 #define HDMI_INTR_STATUS2 0x254
0100 #define HDMI_INTR_MASK3 0x258
0101 #define HDMI_INTR_MASK4 0x25c
0102 #define HDMI_INTR_STATUS3 0x260
0103 #define HDMI_INTR_STATUS4 0x264
0104
0105 #define HDMI_HDCP_CTRL 0x2bc
0106
0107 #define HDMI_EDID_SEGMENT_POINTER 0x310
0108 #define HDMI_EDID_WORD_ADDR 0x314
0109 #define HDMI_EDID_FIFO_ADDR 0x318
0110
0111 #define HDMI_HPG_MENS_STA 0x37c
0112
0113 #define HDMI_INTERNAL_CLK_DIVIDER 0x800
0114
0115 enum {
0116
0117 HDMI_SYS_POWER_MODE_MASK = 0xf0,
0118 HDMI_SYS_POWER_MODE_A = 0x10,
0119 HDMI_SYS_POWER_MODE_B = 0x20,
0120 HDMI_SYS_POWER_MODE_D = 0x40,
0121 HDMI_SYS_POWER_MODE_E = 0x80,
0122 HDMI_SYS_PLL_RESET_MASK = 0x0c,
0123 HDMI_SYS_PLL_RESET = 0x0c,
0124 HDMI_SYS_PLLB_RESET = 0x08,
0125
0126
0127 HDMI_AUDIO_LR_SWAP_MASK = 0xf0,
0128 HDMI_AUDIO_LR_SWAP_SUBPACKET0 = 0x10,
0129 HDMI_AUDIO_LR_SWAP_SUBPACKET1 = 0x20,
0130 HDMI_AUDIO_LR_SWAP_SUBPACKET2 = 0x40,
0131 HDMI_AUDIO_LR_SWAP_SUBPACKET3 = 0x80,
0132 HDMI_AUDIO_N_19_16_MASK = 0x0f,
0133
0134
0135 HDMI_AUDIO_EXTERNAL_CTS = BIT(7),
0136 HDMI_AUDIO_INPUT_IIS = 0,
0137 HDMI_AUDIO_INPUT_SPDIF = 0x08,
0138 HDMI_AUDIO_INPUT_MCLK_ACTIVE = 0x04,
0139 HDMI_AUDIO_INPUT_MCLK_DEACTIVE = 0,
0140 HDMI_AUDIO_INPUT_MCLK_RATE_128X = 0,
0141 HDMI_AUDIO_INPUT_MCLK_RATE_256X = 1,
0142 HDMI_AUDIO_INPUT_MCLK_RATE_384X = 2,
0143 HDMI_AUDIO_INPUT_MCLK_RATE_512X = 3,
0144
0145
0146 HDMI_AUDIO_I2S_FORMAT_STANDARD = 0,
0147 HDMI_AUDIO_I2S_CHANNEL_1_2 = 0x04,
0148 HDMI_AUDIO_I2S_CHANNEL_3_4 = 0x0c,
0149 HDMI_AUDIO_I2S_CHANNEL_5_6 = 0x1c,
0150 HDMI_AUDIO_I2S_CHANNEL_7_8 = 0x3c,
0151
0152
0153 HDMI_AUDIO_SAMPLE_FRE_MASK = 0xf0,
0154 HDMI_AUDIO_SAMPLE_FRE_32000 = 0x30,
0155 HDMI_AUDIO_SAMPLE_FRE_44100 = 0,
0156 HDMI_AUDIO_SAMPLE_FRE_48000 = 0x20,
0157 HDMI_AUDIO_SAMPLE_FRE_88200 = 0x80,
0158 HDMI_AUDIO_SAMPLE_FRE_96000 = 0xa0,
0159 HDMI_AUDIO_SAMPLE_FRE_176400 = 0xc0,
0160 HDMI_AUDIO_SAMPLE_FRE_192000 = 0xe0,
0161 HDMI_AUDIO_SAMPLE_FRE_768000 = 0x90,
0162
0163 HDMI_VIDEO_INPUT_FORMAT_MASK = 0x0e,
0164 HDMI_VIDEO_INPUT_RGB_YCBCR444 = 0,
0165 HDMI_VIDEO_INPUT_YCBCR422 = 0x02,
0166 HDMI_VIDEO_DE_MASK = 0x1,
0167 HDMI_VIDEO_INTERNAL_DE = 0,
0168 HDMI_VIDEO_EXTERNAL_DE = 0x01,
0169
0170
0171 HDMI_VIDEO_OUTPUT_FORMAT_MASK = 0xc0,
0172 HDMI_VIDEO_OUTPUT_RGB444 = 0,
0173 HDMI_VIDEO_OUTPUT_YCBCR444 = 0x40,
0174 HDMI_VIDEO_OUTPUT_YCBCR422 = 0x80,
0175 HDMI_VIDEO_INPUT_DATA_DEPTH_MASK = 0x30,
0176 HDMI_VIDEO_INPUT_DATA_DEPTH_12BIT = 0,
0177 HDMI_VIDEO_INPUT_DATA_DEPTH_10BIT = 0x10,
0178 HDMI_VIDEO_INPUT_DATA_DEPTH_8BIT = 0x30,
0179 HDMI_VIDEO_INPUT_COLOR_MASK = 1,
0180 HDMI_VIDEO_INPUT_COLOR_RGB = 0,
0181 HDMI_VIDEO_INPUT_COLOR_YCBCR = 1,
0182
0183
0184 HDMI_VIDEO_VSYNC_OFFSET_SHIFT = 4,
0185 HDMI_VIDEO_VSYNC_ACTIVE_HIGH = BIT(3),
0186 HDMI_VIDEO_VSYNC_ACTIVE_LOW = 0,
0187 HDMI_VIDEO_HSYNC_ACTIVE_HIGH = BIT(2),
0188 HDMI_VIDEO_HSYNC_ACTIVE_LOW = 0,
0189 HDMI_VIDEO_MODE_INTERLACE = BIT(1),
0190 HDMI_VIDEO_MODE_PROGRESSIVE = 0,
0191 HDMI_EXT_VIDEO_SET_EN = BIT(0),
0192
0193
0194
0195
0196 HDMI_VIDEO_AV_MUTE_MASK = 0xc0,
0197 HDMI_VIDEO_CLR_AV_MUTE = BIT(7),
0198 HDMI_VIDEO_SET_AV_MUTE = BIT(6),
0199 HDMI_AUDIO_CP_LOGIC_RESET_MASK = BIT(2),
0200 HDMI_AUDIO_CP_LOGIC_RESET = BIT(2),
0201 HDMI_VIDEO_AUDIO_DISABLE_MASK = 0x3,
0202 HDMI_AUDIO_DISABLE = BIT(1),
0203 HDMI_VIDEO_DISABLE = BIT(0),
0204
0205
0206 HDMI_INFOFRAME_VSI = 0x05,
0207 HDMI_INFOFRAME_AVI = 0x06,
0208 HDMI_INFOFRAME_AAI = 0x08,
0209
0210
0211
0212 HDMI_INTR_HOTPLUG = BIT(7),
0213 HDMI_INTR_MSENS = BIT(6),
0214 HDMI_INTR_VSYNC = BIT(5),
0215 HDMI_INTR_AUDIO_FIFO_FULL = BIT(4),
0216 HDMI_INTR_EDID_MASK = 0x6,
0217 HDMI_INTR_EDID_READY = BIT(2),
0218 HDMI_INTR_EDID_ERR = BIT(1),
0219
0220
0221 HDMI_VIDEO_MODE_MASK = BIT(1),
0222 HDMI_VIDEO_MODE_HDMI = BIT(1),
0223
0224
0225 HDMI_HPG_IN_STATUS_HIGH = BIT(7),
0226 HDMI_MSENS_IN_STATUS_HIGH = BIT(6),
0227 };
0228
0229 #endif