forked from Minki/linux
drm/radeon/kms: add register definitions for audio
This adds register definitions for HDMI/DP audio on DCE2/3/4/5 hardware. Signed-off-by: Alex Deucher <alexander.deucher@amd.com> Signed-off-by: Dave Airlie <airlied@redhat.com>
This commit is contained in:
parent
eccea7920c
commit
3a2a67aa28
@ -112,6 +112,226 @@
|
||||
#define CP_SEM_INCOMPLETE_TIMER_CNTL 0x85C8
|
||||
#define CP_DEBUG 0xC1FC
|
||||
|
||||
/* Audio clocks */
|
||||
#define DCCG_AUDIO_DTO_SOURCE 0x05ac
|
||||
# define DCCG_AUDIO_DTO0_SOURCE_SEL(x) ((x) << 0) /* crtc0 - crtc5 */
|
||||
# define DCCG_AUDIO_DTO_SEL (1 << 4) /* 0=dto0 1=dto1 */
|
||||
|
||||
#define DCCG_AUDIO_DTO0_PHASE 0x05b0
|
||||
#define DCCG_AUDIO_DTO0_MODULE 0x05b4
|
||||
#define DCCG_AUDIO_DTO0_LOAD 0x05b8
|
||||
#define DCCG_AUDIO_DTO0_CNTL 0x05bc
|
||||
|
||||
#define DCCG_AUDIO_DTO1_PHASE 0x05c0
|
||||
#define DCCG_AUDIO_DTO1_MODULE 0x05c4
|
||||
#define DCCG_AUDIO_DTO1_LOAD 0x05c8
|
||||
#define DCCG_AUDIO_DTO1_CNTL 0x05cc
|
||||
|
||||
/* DCE 4.0 AFMT */
|
||||
#define HDMI_CONTROL 0x7030
|
||||
# define HDMI_KEEPOUT_MODE (1 << 0)
|
||||
# define HDMI_PACKET_GEN_VERSION (1 << 4) /* 0 = r6xx compat */
|
||||
# define HDMI_ERROR_ACK (1 << 8)
|
||||
# define HDMI_ERROR_MASK (1 << 9)
|
||||
# define HDMI_DEEP_COLOR_ENABLE (1 << 24)
|
||||
# define HDMI_DEEP_COLOR_DEPTH (((x) & 3) << 28)
|
||||
# define HDMI_24BIT_DEEP_COLOR 0
|
||||
# define HDMI_30BIT_DEEP_COLOR 1
|
||||
# define HDMI_36BIT_DEEP_COLOR 2
|
||||
#define HDMI_STATUS 0x7034
|
||||
# define HDMI_ACTIVE_AVMUTE (1 << 0)
|
||||
# define HDMI_AUDIO_PACKET_ERROR (1 << 16)
|
||||
# define HDMI_VBI_PACKET_ERROR (1 << 20)
|
||||
#define HDMI_AUDIO_PACKET_CONTROL 0x7038
|
||||
# define HDMI_AUDIO_DELAY_EN(x) (((x) & 3) << 4)
|
||||
# define HDMI_AUDIO_PACKETS_PER_LINE(x) (((x) & 0x1f) << 16)
|
||||
#define HDMI_ACR_PACKET_CONTROL 0x703c
|
||||
# define HDMI_ACR_SEND (1 << 0)
|
||||
# define HDMI_ACR_CONT (1 << 1)
|
||||
# define HDMI_ACR_SELECT(x) (((x) & 3) << 4)
|
||||
# define HDMI_ACR_HW 0
|
||||
# define HDMI_ACR_32 1
|
||||
# define HDMI_ACR_44 2
|
||||
# define HDMI_ACR_48 3
|
||||
# define HDMI_ACR_SOURCE (1 << 8) /* 0 - hw; 1 - cts value */
|
||||
# define HDMI_ACR_AUTO_SEND (1 << 12)
|
||||
# define HDMI_ACR_N_MULTIPLE(x) (((x) & 7) << 16)
|
||||
# define HDMI_ACR_X1 1
|
||||
# define HDMI_ACR_X2 2
|
||||
# define HDMI_ACR_X4 4
|
||||
# define HDMI_ACR_AUDIO_PRIORITY (1 << 31)
|
||||
#define HDMI_VBI_PACKET_CONTROL 0x7040
|
||||
# define HDMI_NULL_SEND (1 << 0)
|
||||
# define HDMI_GC_SEND (1 << 4)
|
||||
# define HDMI_GC_CONT (1 << 5) /* 0 - once; 1 - every frame */
|
||||
#define HDMI_INFOFRAME_CONTROL0 0x7044
|
||||
# define HDMI_AVI_INFO_SEND (1 << 0)
|
||||
# define HDMI_AVI_INFO_CONT (1 << 1)
|
||||
# define HDMI_AUDIO_INFO_SEND (1 << 4)
|
||||
# define HDMI_AUDIO_INFO_CONT (1 << 5)
|
||||
# define HDMI_MPEG_INFO_SEND (1 << 8)
|
||||
# define HDMI_MPEG_INFO_CONT (1 << 9)
|
||||
#define HDMI_INFOFRAME_CONTROL1 0x7048
|
||||
# define HDMI_AVI_INFO_LINE(x) (((x) & 0x3f) << 0)
|
||||
# define HDMI_AUDIO_INFO_LINE(x) (((x) & 0x3f) << 8)
|
||||
# define HDMI_MPEG_INFO_LINE(x) (((x) & 0x3f) << 16)
|
||||
#define HDMI_GENERIC_PACKET_CONTROL 0x704c
|
||||
# define HDMI_GENERIC0_SEND (1 << 0)
|
||||
# define HDMI_GENERIC0_CONT (1 << 1)
|
||||
# define HDMI_GENERIC1_SEND (1 << 4)
|
||||
# define HDMI_GENERIC1_CONT (1 << 5)
|
||||
# define HDMI_GENERIC0_LINE(x) (((x) & 0x3f) << 16)
|
||||
# define HDMI_GENERIC1_LINE(x) (((x) & 0x3f) << 24)
|
||||
#define HDMI_GC 0x7058
|
||||
# define HDMI_GC_AVMUTE (1 << 0)
|
||||
# define HDMI_GC_AVMUTE_CONT (1 << 2)
|
||||
#define AFMT_AUDIO_PACKET_CONTROL2 0x705c
|
||||
# define AFMT_AUDIO_LAYOUT_OVRD (1 << 0)
|
||||
# define AFMT_AUDIO_LAYOUT_SELECT (1 << 1)
|
||||
# define AFMT_60958_CS_SOURCE (1 << 4)
|
||||
# define AFMT_AUDIO_CHANNEL_ENABLE(x) (((x) & 0xff) << 8)
|
||||
# define AFMT_DP_AUDIO_STREAM_ID(x) (((x) & 0xff) << 16)
|
||||
#define AFMT_AVI_INFO0 0x7084
|
||||
# define AFMT_AVI_INFO_CHECKSUM(x) (((x) & 0xff) << 0)
|
||||
# define AFMT_AVI_INFO_S(x) (((x) & 3) << 8)
|
||||
# define AFMT_AVI_INFO_B(x) (((x) & 3) << 10)
|
||||
# define AFMT_AVI_INFO_A(x) (((x) & 1) << 12)
|
||||
# define AFMT_AVI_INFO_Y(x) (((x) & 3) << 13)
|
||||
# define AFMT_AVI_INFO_Y_RGB 0
|
||||
# define AFMT_AVI_INFO_Y_YCBCR422 1
|
||||
# define AFMT_AVI_INFO_Y_YCBCR444 2
|
||||
# define AFMT_AVI_INFO_Y_A_B_S(x) (((x) & 0xff) << 8)
|
||||
# define AFMT_AVI_INFO_R(x) (((x) & 0xf) << 16)
|
||||
# define AFMT_AVI_INFO_M(x) (((x) & 0x3) << 20)
|
||||
# define AFMT_AVI_INFO_C(x) (((x) & 0x3) << 22)
|
||||
# define AFMT_AVI_INFO_C_M_R(x) (((x) & 0xff) << 16)
|
||||
# define AFMT_AVI_INFO_SC(x) (((x) & 0x3) << 24)
|
||||
# define AFMT_AVI_INFO_Q(x) (((x) & 0x3) << 26)
|
||||
# define AFMT_AVI_INFO_EC(x) (((x) & 0x3) << 28)
|
||||
# define AFMT_AVI_INFO_ITC(x) (((x) & 0x1) << 31)
|
||||
# define AFMT_AVI_INFO_ITC_EC_Q_SC(x) (((x) & 0xff) << 24)
|
||||
#define AFMT_AVI_INFO1 0x7088
|
||||
# define AFMT_AVI_INFO_VIC(x) (((x) & 0x7f) << 0) /* don't use avi infoframe v1 */
|
||||
# define AFMT_AVI_INFO_PR(x) (((x) & 0xf) << 8) /* don't use avi infoframe v1 */
|
||||
# define AFMT_AVI_INFO_CN(x) (((x) & 0x3) << 12)
|
||||
# define AFMT_AVI_INFO_YQ(x) (((x) & 0x3) << 14)
|
||||
# define AFMT_AVI_INFO_TOP(x) (((x) & 0xffff) << 16)
|
||||
#define AFMT_AVI_INFO2 0x708c
|
||||
# define AFMT_AVI_INFO_BOTTOM(x) (((x) & 0xffff) << 0)
|
||||
# define AFMT_AVI_INFO_LEFT(x) (((x) & 0xffff) << 16)
|
||||
#define AFMT_AVI_INFO3 0x7090
|
||||
# define AFMT_AVI_INFO_RIGHT(x) (((x) & 0xffff) << 0)
|
||||
# define AFMT_AVI_INFO_VERSION(x) (((x) & 3) << 24)
|
||||
#define AFMT_MPEG_INFO0 0x7094
|
||||
# define AFMT_MPEG_INFO_CHECKSUM(x) (((x) & 0xff) << 0)
|
||||
# define AFMT_MPEG_INFO_MB0(x) (((x) & 0xff) << 8)
|
||||
# define AFMT_MPEG_INFO_MB1(x) (((x) & 0xff) << 16)
|
||||
# define AFMT_MPEG_INFO_MB2(x) (((x) & 0xff) << 24)
|
||||
#define AFMT_MPEG_INFO1 0x7098
|
||||
# define AFMT_MPEG_INFO_MB3(x) (((x) & 0xff) << 0)
|
||||
# define AFMT_MPEG_INFO_MF(x) (((x) & 3) << 8)
|
||||
# define AFMT_MPEG_INFO_FR(x) (((x) & 1) << 12)
|
||||
#define AFMT_GENERIC0_HDR 0x709c
|
||||
#define AFMT_GENERIC0_0 0x70a0
|
||||
#define AFMT_GENERIC0_1 0x70a4
|
||||
#define AFMT_GENERIC0_2 0x70a8
|
||||
#define AFMT_GENERIC0_3 0x70ac
|
||||
#define AFMT_GENERIC0_4 0x70b0
|
||||
#define AFMT_GENERIC0_5 0x70b4
|
||||
#define AFMT_GENERIC0_6 0x70b8
|
||||
#define AFMT_GENERIC1_HDR 0x70bc
|
||||
#define AFMT_GENERIC1_0 0x70c0
|
||||
#define AFMT_GENERIC1_1 0x70c4
|
||||
#define AFMT_GENERIC1_2 0x70c8
|
||||
#define AFMT_GENERIC1_3 0x70cc
|
||||
#define AFMT_GENERIC1_4 0x70d0
|
||||
#define AFMT_GENERIC1_5 0x70d4
|
||||
#define AFMT_GENERIC1_6 0x70d8
|
||||
#define HDMI_ACR_32_0 0x70dc
|
||||
# define HDMI_ACR_CTS_32(x) (((x) & 0xfffff) << 12)
|
||||
#define HDMI_ACR_32_1 0x70e0
|
||||
# define HDMI_ACR_N_32(x) (((x) & 0xfffff) << 0)
|
||||
#define HDMI_ACR_44_0 0x70e4
|
||||
# define HDMI_ACR_CTS_44(x) (((x) & 0xfffff) << 12)
|
||||
#define HDMI_ACR_44_1 0x70e8
|
||||
# define HDMI_ACR_N_44(x) (((x) & 0xfffff) << 0)
|
||||
#define HDMI_ACR_48_0 0x70ec
|
||||
# define HDMI_ACR_CTS_48(x) (((x) & 0xfffff) << 12)
|
||||
#define HDMI_ACR_48_1 0x70f0
|
||||
# define HDMI_ACR_N_48(x) (((x) & 0xfffff) << 0)
|
||||
#define HDMI_ACR_STATUS_0 0x70f4
|
||||
#define HDMI_ACR_STATUS_1 0x70f8
|
||||
#define AFMT_AUDIO_INFO0 0x70fc
|
||||
# define AFMT_AUDIO_INFO_CHECKSUM(x) (((x) & 0xff) << 0)
|
||||
# define AFMT_AUDIO_INFO_CC(x) (((x) & 7) << 8)
|
||||
# define AFMT_AUDIO_INFO_CT(x) (((x) & 0xf) << 11)
|
||||
# define AFMT_AUDIO_INFO_CHECKSUM_OFFSET(x) (((x) & 0xff) << 16)
|
||||
# define AFMT_AUDIO_INFO_CXT(x) (((x) & 0x1f) << 24)
|
||||
#define AFMT_AUDIO_INFO1 0x7100
|
||||
# define AFMT_AUDIO_INFO_CA(x) (((x) & 0xff) << 0)
|
||||
# define AFMT_AUDIO_INFO_LSV(x) (((x) & 0xf) << 11)
|
||||
# define AFMT_AUDIO_INFO_DM_INH(x) (((x) & 1) << 15)
|
||||
# define AFMT_AUDIO_INFO_DM_INH_LSV(x) (((x) & 0xff) << 8)
|
||||
# define AFMT_AUDIO_INFO_LFEBPL(x) (((x) & 3) << 16)
|
||||
#define AFMT_60958_0 0x7104
|
||||
# define AFMT_60958_CS_A(x) (((x) & 1) << 0)
|
||||
# define AFMT_60958_CS_B(x) (((x) & 1) << 1)
|
||||
# define AFMT_60958_CS_C(x) (((x) & 1) << 2)
|
||||
# define AFMT_60958_CS_D(x) (((x) & 3) << 3)
|
||||
# define AFMT_60958_CS_MODE(x) (((x) & 3) << 6)
|
||||
# define AFMT_60958_CS_CATEGORY_CODE(x) (((x) & 0xff) << 8)
|
||||
# define AFMT_60958_CS_SOURCE_NUMBER(x) (((x) & 0xf) << 16)
|
||||
# define AFMT_60958_CS_CHANNEL_NUMBER_L(x) (((x) & 0xf) << 20)
|
||||
# define AFMT_60958_CS_SAMPLING_FREQUENCY(x) (((x) & 0xf) << 24)
|
||||
# define AFMT_60958_CS_CLOCK_ACCURACY(x) (((x) & 3) << 28)
|
||||
#define AFMT_60958_1 0x7108
|
||||
# define AFMT_60958_CS_WORD_LENGTH(x) (((x) & 0xf) << 0)
|
||||
# define AFMT_60958_CS_ORIGINAL_SAMPLING_FREQUENCY(x) (((x) & 0xf) << 4)
|
||||
# define AFMT_60958_CS_VALID_L(x) (((x) & 1) << 16)
|
||||
# define AFMT_60958_CS_VALID_R(x) (((x) & 1) << 18)
|
||||
# define AFMT_60958_CS_CHANNEL_NUMBER_R(x) (((x) & 0xf) << 20)
|
||||
#define AFMT_AUDIO_CRC_CONTROL 0x710c
|
||||
# define AFMT_AUDIO_CRC_EN (1 << 0)
|
||||
#define AFMT_RAMP_CONTROL0 0x7110
|
||||
# define AFMT_RAMP_MAX_COUNT(x) (((x) & 0xffffff) << 0)
|
||||
# define AFMT_RAMP_DATA_SIGN (1 << 31)
|
||||
#define AFMT_RAMP_CONTROL1 0x7114
|
||||
# define AFMT_RAMP_MIN_COUNT(x) (((x) & 0xffffff) << 0)
|
||||
# define AFMT_AUDIO_TEST_CH_DISABLE(x) (((x) & 0xff) << 24)
|
||||
#define AFMT_RAMP_CONTROL2 0x7118
|
||||
# define AFMT_RAMP_INC_COUNT(x) (((x) & 0xffffff) << 0)
|
||||
#define AFMT_RAMP_CONTROL3 0x711c
|
||||
# define AFMT_RAMP_DEC_COUNT(x) (((x) & 0xffffff) << 0)
|
||||
#define AFMT_60958_2 0x7120
|
||||
# define AFMT_60958_CS_CHANNEL_NUMBER_2(x) (((x) & 0xf) << 0)
|
||||
# define AFMT_60958_CS_CHANNEL_NUMBER_3(x) (((x) & 0xf) << 4)
|
||||
# define AFMT_60958_CS_CHANNEL_NUMBER_4(x) (((x) & 0xf) << 8)
|
||||
# define AFMT_60958_CS_CHANNEL_NUMBER_5(x) (((x) & 0xf) << 12)
|
||||
# define AFMT_60958_CS_CHANNEL_NUMBER_6(x) (((x) & 0xf) << 16)
|
||||
# define AFMT_60958_CS_CHANNEL_NUMBER_7(x) (((x) & 0xf) << 20)
|
||||
#define AFMT_STATUS 0x7128
|
||||
# define AFMT_AUDIO_ENABLE (1 << 4)
|
||||
# define AFMT_AUDIO_HBR_ENABLE (1 << 8)
|
||||
# define AFMT_AZ_FORMAT_WTRIG (1 << 28)
|
||||
# define AFMT_AZ_FORMAT_WTRIG_INT (1 << 29)
|
||||
# define AFMT_AZ_AUDIO_ENABLE_CHG (1 << 30)
|
||||
#define AFMT_AUDIO_PACKET_CONTROL 0x712c
|
||||
# define AFMT_AUDIO_SAMPLE_SEND (1 << 0)
|
||||
# define AFMT_RESET_FIFO_WHEN_AUDIO_DIS (1 << 11) /* set to 1 */
|
||||
# define AFMT_AUDIO_TEST_EN (1 << 12)
|
||||
# define AFMT_AUDIO_CHANNEL_SWAP (1 << 24)
|
||||
# define AFMT_60958_CS_UPDATE (1 << 26)
|
||||
# define AFMT_AZ_AUDIO_ENABLE_CHG_MASK (1 << 27)
|
||||
# define AFMT_AZ_FORMAT_WTRIG_MASK (1 << 28)
|
||||
# define AFMT_AZ_FORMAT_WTRIG_ACK (1 << 29)
|
||||
# define AFMT_AZ_AUDIO_ENABLE_CHG_ACK (1 << 30)
|
||||
#define AFMT_VBI_PACKET_CONTROL 0x7130
|
||||
# define AFMT_GENERIC0_UPDATE (1 << 2)
|
||||
#define AFMT_INFOFRAME_CONTROL0 0x7134
|
||||
# define AFMT_AUDIO_INFO_SOURCE (1 << 6) /* 0 - sound block; 1 - afmt regs */
|
||||
# define AFMT_AUDIO_INFO_UPDATE (1 << 7)
|
||||
# define AFMT_MPEG_INFO_UPDATE (1 << 10)
|
||||
#define AFMT_GENERIC0_7 0x7138
|
||||
|
||||
#define GC_USER_SHADER_PIPE_CONFIG 0x8954
|
||||
#define INACTIVE_QD_PIPES(x) ((x) << 8)
|
||||
|
@ -824,6 +824,242 @@
|
||||
# define TARGET_LINK_SPEED_MASK (0xf << 0)
|
||||
# define SELECTABLE_DEEMPHASIS (1 << 6)
|
||||
|
||||
/* Audio clocks */
|
||||
#define DCCG_AUDIO_DTO0_PHASE 0x0514
|
||||
#define DCCG_AUDIO_DTO0_MODULE 0x0518
|
||||
#define DCCG_AUDIO_DTO0_LOAD 0x051c
|
||||
# define DTO_LOAD (1 << 31)
|
||||
#define DCCG_AUDIO_DTO0_CNTL 0x0520
|
||||
|
||||
#define DCCG_AUDIO_DTO1_PHASE 0x0524
|
||||
#define DCCG_AUDIO_DTO1_MODULE 0x0528
|
||||
#define DCCG_AUDIO_DTO1_LOAD 0x052c
|
||||
#define DCCG_AUDIO_DTO1_CNTL 0x0530
|
||||
|
||||
#define DCCG_AUDIO_DTO_SELECT 0x0534
|
||||
|
||||
/* digital blocks */
|
||||
#define TMDSA_CNTL 0x7880
|
||||
# define TMDSA_HDMI_EN (1 << 2)
|
||||
#define LVTMA_CNTL 0x7a80
|
||||
# define LVTMA_HDMI_EN (1 << 2)
|
||||
#define DDIA_CNTL 0x7200
|
||||
# define DDIA_HDMI_EN (1 << 2)
|
||||
#define DIG0_CNTL 0x75a0
|
||||
# define DIG_MODE(x) (((x) & 7) << 8)
|
||||
# define DIG_MODE_DP 0
|
||||
# define DIG_MODE_LVDS 1
|
||||
# define DIG_MODE_TMDS_DVI 2
|
||||
# define DIG_MODE_TMDS_HDMI 3
|
||||
# define DIG_MODE_SDVO 4
|
||||
#define DIG1_CNTL 0x79a0
|
||||
|
||||
/* rs6xx/rs740 and r6xx share the same HDMI blocks, however, rs6xx has only one
|
||||
* instance of the blocks while r6xx has 2. DCE 3.0 cards are slightly
|
||||
* different due to the new DIG blocks, but also have 2 instances.
|
||||
* DCE 3.0 HDMI blocks are part of each DIG encoder.
|
||||
*/
|
||||
|
||||
/* rs6xx/rs740/r6xx/dce3 */
|
||||
#define HDMI0_CONTROL 0x7400
|
||||
/* rs6xx/rs740/r6xx */
|
||||
# define HDMI0_ENABLE (1 << 0)
|
||||
# define HDMI0_STREAM(x) (((x) & 3) << 2)
|
||||
# define HDMI0_STREAM_TMDSA 0
|
||||
# define HDMI0_STREAM_LVTMA 1
|
||||
# define HDMI0_STREAM_DVOA 2
|
||||
# define HDMI0_STREAM_DDIA 3
|
||||
/* rs6xx/r6xx/dce3 */
|
||||
# define HDMI0_ERROR_ACK (1 << 8)
|
||||
# define HDMI0_ERROR_MASK (1 << 9)
|
||||
#define HDMI0_STATUS 0x7404
|
||||
# define HDMI0_ACTIVE_AVMUTE (1 << 0)
|
||||
# define HDMI0_AUDIO_ENABLE (1 << 4)
|
||||
# define HDMI0_AZ_FORMAT_WTRIG (1 << 28)
|
||||
# define HDMI0_AZ_FORMAT_WTRIG_INT (1 << 29)
|
||||
#define HDMI0_AUDIO_PACKET_CONTROL 0x7408
|
||||
# define HDMI0_AUDIO_SAMPLE_SEND (1 << 0)
|
||||
# define HDMI0_AUDIO_DELAY_EN(x) (((x) & 3) << 4)
|
||||
# define HDMI0_AUDIO_SEND_MAX_PACKETS (1 << 8)
|
||||
# define HDMI0_AUDIO_TEST_EN (1 << 12)
|
||||
# define HDMI0_AUDIO_PACKETS_PER_LINE(x) (((x) & 0x1f) << 16)
|
||||
# define HDMI0_AUDIO_CHANNEL_SWAP (1 << 24)
|
||||
# define HDMI0_60958_CS_UPDATE (1 << 26)
|
||||
# define HDMI0_AZ_FORMAT_WTRIG_MASK (1 << 28)
|
||||
# define HDMI0_AZ_FORMAT_WTRIG_ACK (1 << 29)
|
||||
#define HDMI0_AUDIO_CRC_CONTROL 0x740c
|
||||
# define HDMI0_AUDIO_CRC_EN (1 << 0)
|
||||
#define HDMI0_VBI_PACKET_CONTROL 0x7410
|
||||
# define HDMI0_NULL_SEND (1 << 0)
|
||||
# define HDMI0_GC_SEND (1 << 4)
|
||||
# define HDMI0_GC_CONT (1 << 5) /* 0 - once; 1 - every frame */
|
||||
#define HDMI0_INFOFRAME_CONTROL0 0x7414
|
||||
# define HDMI0_AVI_INFO_SEND (1 << 0)
|
||||
# define HDMI0_AVI_INFO_CONT (1 << 1)
|
||||
# define HDMI0_AUDIO_INFO_SEND (1 << 4)
|
||||
# define HDMI0_AUDIO_INFO_CONT (1 << 5)
|
||||
# define HDMI0_AUDIO_INFO_SOURCE (1 << 6) /* 0 - sound block; 1 - hmdi regs */
|
||||
# define HDMI0_AUDIO_INFO_UPDATE (1 << 7)
|
||||
# define HDMI0_MPEG_INFO_SEND (1 << 8)
|
||||
# define HDMI0_MPEG_INFO_CONT (1 << 9)
|
||||
# define HDMI0_MPEG_INFO_UPDATE (1 << 10)
|
||||
#define HDMI0_INFOFRAME_CONTROL1 0x7418
|
||||
# define HDMI0_AVI_INFO_LINE(x) (((x) & 0x3f) << 0)
|
||||
# define HDMI0_AUDIO_INFO_LINE(x) (((x) & 0x3f) << 8)
|
||||
# define HDMI0_MPEG_INFO_LINE(x) (((x) & 0x3f) << 16)
|
||||
#define HDMI0_GENERIC_PACKET_CONTROL 0x741c
|
||||
# define HDMI0_GENERIC0_SEND (1 << 0)
|
||||
# define HDMI0_GENERIC0_CONT (1 << 1)
|
||||
# define HDMI0_GENERIC0_UPDATE (1 << 2)
|
||||
# define HDMI0_GENERIC1_SEND (1 << 4)
|
||||
# define HDMI0_GENERIC1_CONT (1 << 5)
|
||||
# define HDMI0_GENERIC0_LINE(x) (((x) & 0x3f) << 16)
|
||||
# define HDMI0_GENERIC1_LINE(x) (((x) & 0x3f) << 24)
|
||||
#define HDMI0_GC 0x7428
|
||||
# define HDMI0_GC_AVMUTE (1 << 0)
|
||||
#define HDMI0_AVI_INFO0 0x7454
|
||||
# define HDMI0_AVI_INFO_CHECKSUM(x) (((x) & 0xff) << 0)
|
||||
# define HDMI0_AVI_INFO_S(x) (((x) & 3) << 8)
|
||||
# define HDMI0_AVI_INFO_B(x) (((x) & 3) << 10)
|
||||
# define HDMI0_AVI_INFO_A(x) (((x) & 1) << 12)
|
||||
# define HDMI0_AVI_INFO_Y(x) (((x) & 3) << 13)
|
||||
# define HDMI0_AVI_INFO_Y_RGB 0
|
||||
# define HDMI0_AVI_INFO_Y_YCBCR422 1
|
||||
# define HDMI0_AVI_INFO_Y_YCBCR444 2
|
||||
# define HDMI0_AVI_INFO_Y_A_B_S(x) (((x) & 0xff) << 8)
|
||||
# define HDMI0_AVI_INFO_R(x) (((x) & 0xf) << 16)
|
||||
# define HDMI0_AVI_INFO_M(x) (((x) & 0x3) << 20)
|
||||
# define HDMI0_AVI_INFO_C(x) (((x) & 0x3) << 22)
|
||||
# define HDMI0_AVI_INFO_C_M_R(x) (((x) & 0xff) << 16)
|
||||
# define HDMI0_AVI_INFO_SC(x) (((x) & 0x3) << 24)
|
||||
# define HDMI0_AVI_INFO_ITC_EC_Q_SC(x) (((x) & 0xff) << 24)
|
||||
#define HDMI0_AVI_INFO1 0x7458
|
||||
# define HDMI0_AVI_INFO_VIC(x) (((x) & 0x7f) << 0) /* don't use avi infoframe v1 */
|
||||
# define HDMI0_AVI_INFO_PR(x) (((x) & 0xf) << 8) /* don't use avi infoframe v1 */
|
||||
# define HDMI0_AVI_INFO_TOP(x) (((x) & 0xffff) << 16)
|
||||
#define HDMI0_AVI_INFO2 0x745c
|
||||
# define HDMI0_AVI_INFO_BOTTOM(x) (((x) & 0xffff) << 0)
|
||||
# define HDMI0_AVI_INFO_LEFT(x) (((x) & 0xffff) << 16)
|
||||
#define HDMI0_AVI_INFO3 0x7460
|
||||
# define HDMI0_AVI_INFO_RIGHT(x) (((x) & 0xffff) << 0)
|
||||
# define HDMI0_AVI_INFO_VERSION(x) (((x) & 3) << 24)
|
||||
#define HDMI0_MPEG_INFO0 0x7464
|
||||
# define HDMI0_MPEG_INFO_CHECKSUM(x) (((x) & 0xff) << 0)
|
||||
# define HDMI0_MPEG_INFO_MB0(x) (((x) & 0xff) << 8)
|
||||
# define HDMI0_MPEG_INFO_MB1(x) (((x) & 0xff) << 16)
|
||||
# define HDMI0_MPEG_INFO_MB2(x) (((x) & 0xff) << 24)
|
||||
#define HDMI0_MPEG_INFO1 0x7468
|
||||
# define HDMI0_MPEG_INFO_MB3(x) (((x) & 0xff) << 0)
|
||||
# define HDMI0_MPEG_INFO_MF(x) (((x) & 3) << 8)
|
||||
# define HDMI0_MPEG_INFO_FR(x) (((x) & 1) << 12)
|
||||
#define HDMI0_GENERIC0_HDR 0x746c
|
||||
#define HDMI0_GENERIC0_0 0x7470
|
||||
#define HDMI0_GENERIC0_1 0x7474
|
||||
#define HDMI0_GENERIC0_2 0x7478
|
||||
#define HDMI0_GENERIC0_3 0x747c
|
||||
#define HDMI0_GENERIC0_4 0x7480
|
||||
#define HDMI0_GENERIC0_5 0x7484
|
||||
#define HDMI0_GENERIC0_6 0x7488
|
||||
#define HDMI0_GENERIC1_HDR 0x748c
|
||||
#define HDMI0_GENERIC1_0 0x7490
|
||||
#define HDMI0_GENERIC1_1 0x7494
|
||||
#define HDMI0_GENERIC1_2 0x7498
|
||||
#define HDMI0_GENERIC1_3 0x749c
|
||||
#define HDMI0_GENERIC1_4 0x74a0
|
||||
#define HDMI0_GENERIC1_5 0x74a4
|
||||
#define HDMI0_GENERIC1_6 0x74a8
|
||||
#define HDMI0_ACR_32_0 0x74ac
|
||||
# define HDMI0_ACR_CTS_32(x) (((x) & 0xfffff) << 12)
|
||||
#define HDMI0_ACR_32_1 0x74b0
|
||||
# define HDMI0_ACR_N_32(x) (((x) & 0xfffff) << 0)
|
||||
#define HDMI0_ACR_44_0 0x74b4
|
||||
# define HDMI0_ACR_CTS_44(x) (((x) & 0xfffff) << 12)
|
||||
#define HDMI0_ACR_44_1 0x74b8
|
||||
# define HDMI0_ACR_N_44(x) (((x) & 0xfffff) << 0)
|
||||
#define HDMI0_ACR_48_0 0x74bc
|
||||
# define HDMI0_ACR_CTS_48(x) (((x) & 0xfffff) << 12)
|
||||
#define HDMI0_ACR_48_1 0x74c0
|
||||
# define HDMI0_ACR_N_48(x) (((x) & 0xfffff) << 0)
|
||||
#define HDMI0_ACR_STATUS_0 0x74c4
|
||||
#define HDMI0_ACR_STATUS_1 0x74c8
|
||||
#define HDMI0_AUDIO_INFO0 0x74cc
|
||||
# define HDMI0_AUDIO_INFO_CHECKSUM(x) (((x) & 0xff) << 0)
|
||||
# define HDMI0_AUDIO_INFO_CC(x) (((x) & 7) << 8)
|
||||
#define HDMI0_AUDIO_INFO1 0x74d0
|
||||
# define HDMI0_AUDIO_INFO_CA(x) (((x) & 0xff) << 0)
|
||||
# define HDMI0_AUDIO_INFO_LSV(x) (((x) & 0xf) << 11)
|
||||
# define HDMI0_AUDIO_INFO_DM_INH(x) (((x) & 1) << 15)
|
||||
# define HDMI0_AUDIO_INFO_DM_INH_LSV(x) (((x) & 0xff) << 8)
|
||||
#define HDMI0_60958_0 0x74d4
|
||||
# define HDMI0_60958_CS_A(x) (((x) & 1) << 0)
|
||||
# define HDMI0_60958_CS_B(x) (((x) & 1) << 1)
|
||||
# define HDMI0_60958_CS_C(x) (((x) & 1) << 2)
|
||||
# define HDMI0_60958_CS_D(x) (((x) & 3) << 3)
|
||||
# define HDMI0_60958_CS_MODE(x) (((x) & 3) << 6)
|
||||
# define HDMI0_60958_CS_CATEGORY_CODE(x) (((x) & 0xff) << 8)
|
||||
# define HDMI0_60958_CS_SOURCE_NUMBER(x) (((x) & 0xf) << 16)
|
||||
# define HDMI0_60958_CS_CHANNEL_NUMBER_L(x) (((x) & 0xf) << 20)
|
||||
# define HDMI0_60958_CS_SAMPLING_FREQUENCY(x) (((x) & 0xf) << 24)
|
||||
# define HDMI0_60958_CS_CLOCK_ACCURACY(x) (((x) & 3) << 28)
|
||||
#define HDMI0_60958_1 0x74d8
|
||||
# define HDMI0_60958_CS_WORD_LENGTH(x) (((x) & 0xf) << 0)
|
||||
# define HDMI0_60958_CS_ORIGINAL_SAMPLING_FREQUENCY(x) (((x) & 0xf) << 4)
|
||||
# define HDMI0_60958_CS_VALID_L(x) (((x) & 1) << 16)
|
||||
# define HDMI0_60958_CS_VALID_R(x) (((x) & 1) << 18)
|
||||
# define HDMI0_60958_CS_CHANNEL_NUMBER_R(x) (((x) & 0xf) << 20)
|
||||
#define HDMI0_ACR_PACKET_CONTROL 0x74dc
|
||||
# define HDMI0_ACR_SEND (1 << 0)
|
||||
# define HDMI0_ACR_CONT (1 << 1)
|
||||
# define HDMI0_ACR_SELECT(x) (((x) & 3) << 4)
|
||||
# define HDMI0_ACR_HW 0
|
||||
# define HDMI0_ACR_32 1
|
||||
# define HDMI0_ACR_44 2
|
||||
# define HDMI0_ACR_48 3
|
||||
# define HDMI0_ACR_SOURCE (1 << 8) /* 0 - hw; 1 - cts value */
|
||||
# define HDMI0_ACR_AUTO_SEND (1 << 12)
|
||||
#define HDMI0_RAMP_CONTROL0 0x74e0
|
||||
# define HDMI0_RAMP_MAX_COUNT(x) (((x) & 0xffffff) << 0)
|
||||
#define HDMI0_RAMP_CONTROL1 0x74e4
|
||||
# define HDMI0_RAMP_MIN_COUNT(x) (((x) & 0xffffff) << 0)
|
||||
#define HDMI0_RAMP_CONTROL2 0x74e8
|
||||
# define HDMI0_RAMP_INC_COUNT(x) (((x) & 0xffffff) << 0)
|
||||
#define HDMI0_RAMP_CONTROL3 0x74ec
|
||||
# define HDMI0_RAMP_DEC_COUNT(x) (((x) & 0xffffff) << 0)
|
||||
/* HDMI0_60958_2 is r7xx only */
|
||||
#define HDMI0_60958_2 0x74f0
|
||||
# define HDMI0_60958_CS_CHANNEL_NUMBER_2(x) (((x) & 0xf) << 0)
|
||||
# define HDMI0_60958_CS_CHANNEL_NUMBER_3(x) (((x) & 0xf) << 4)
|
||||
# define HDMI0_60958_CS_CHANNEL_NUMBER_4(x) (((x) & 0xf) << 8)
|
||||
# define HDMI0_60958_CS_CHANNEL_NUMBER_5(x) (((x) & 0xf) << 12)
|
||||
# define HDMI0_60958_CS_CHANNEL_NUMBER_6(x) (((x) & 0xf) << 16)
|
||||
# define HDMI0_60958_CS_CHANNEL_NUMBER_7(x) (((x) & 0xf) << 20)
|
||||
/* r6xx only; second instance starts at 0x7700 */
|
||||
#define HDMI1_CONTROL 0x7700
|
||||
#define HDMI1_STATUS 0x7704
|
||||
#define HDMI1_AUDIO_PACKET_CONTROL 0x7708
|
||||
/* DCE3; second instance starts at 0x7800 NOT 0x7700 */
|
||||
#define DCE3_HDMI1_CONTROL 0x7800
|
||||
#define DCE3_HDMI1_STATUS 0x7804
|
||||
#define DCE3_HDMI1_AUDIO_PACKET_CONTROL 0x7808
|
||||
/* DCE3.2 (for interrupts) */
|
||||
#define AFMT_STATUS 0x7600
|
||||
# define AFMT_AUDIO_ENABLE (1 << 4)
|
||||
# define AFMT_AZ_FORMAT_WTRIG (1 << 28)
|
||||
# define AFMT_AZ_FORMAT_WTRIG_INT (1 << 29)
|
||||
# define AFMT_AZ_AUDIO_ENABLE_CHG (1 << 30)
|
||||
#define AFMT_AUDIO_PACKET_CONTROL 0x7604
|
||||
# define AFMT_AUDIO_SAMPLE_SEND (1 << 0)
|
||||
# define AFMT_AUDIO_TEST_EN (1 << 12)
|
||||
# define AFMT_AUDIO_CHANNEL_SWAP (1 << 24)
|
||||
# define AFMT_60958_CS_UPDATE (1 << 26)
|
||||
# define AFMT_AZ_AUDIO_ENABLE_CHG_MASK (1 << 27)
|
||||
# define AFMT_AZ_FORMAT_WTRIG_MASK (1 << 28)
|
||||
# define AFMT_AZ_FORMAT_WTRIG_ACK (1 << 29)
|
||||
# define AFMT_AZ_AUDIO_ENABLE_CHG_ACK (1 << 30)
|
||||
/* DCE3.2 second instance starts at 0x7800 */
|
||||
#define HDMI_OFFSET0 (0x7400 - 0x7400)
|
||||
#define HDMI_OFFSET1 (0x7800 - 0x7400)
|
||||
|
||||
/*
|
||||
* PM4
|
||||
*/
|
||||
|
@ -485,6 +485,20 @@
|
||||
#define S_007D18_DC_HOT_PLUG_DETECT2_INT_EN(x) (((x) & 0x1) << 16)
|
||||
#define G_007D18_DC_HOT_PLUG_DETECT2_INT_EN(x) (((x) >> 16) & 0x1)
|
||||
#define C_007D18_DC_HOT_PLUG_DETECT2_INT_EN 0xFFFEFFFF
|
||||
#define R_007404_HDMI0_STATUS 0x007404
|
||||
#define S_007404_HDMI0_AZ_FORMAT_WTRIG(x) (((x) & 0x1) << 28)
|
||||
#define G_007404_HDMI0_AZ_FORMAT_WTRIG(x) (((x) >> 28) & 0x1)
|
||||
#define C_007404_HDMI0_AZ_FORMAT_WTRIG 0xEFFFFFFF
|
||||
#define S_007404_HDMI0_AZ_FORMAT_WTRIG_INT(x) (((x) & 0x1) << 29)
|
||||
#define G_007404_HDMI0_AZ_FORMAT_WTRIG_INT(x) (((x) >> 29) & 0x1)
|
||||
#define C_007404_HDMI0_AZ_FORMAT_WTRIG_INT 0xDFFFFFFF
|
||||
#define R_007408_HDMI0_AUDIO_PACKET_CONTROL 0x007408
|
||||
#define S_007408_HDMI0_AZ_FORMAT_WTRIG_MASK(x) (((x) & 0x1) << 28)
|
||||
#define G_007408_HDMI0_AZ_FORMAT_WTRIG_MASK(x) (((x) >> 28) & 0x1)
|
||||
#define C_007408_HDMI0_AZ_FORMAT_WTRIG_MASK 0xEFFFFFFF
|
||||
#define S_007408_HDMI0_AZ_FORMAT_WTRIG_ACK(x) (((x) & 0x1) << 29)
|
||||
#define G_007408_HDMI0_AZ_FORMAT_WTRIG_ACK(x) (((x) >> 29) & 0x1)
|
||||
#define C_007408_HDMI0_AZ_FORMAT_WTRIG_ACK 0xDFFFFFFF
|
||||
|
||||
/* MC registers */
|
||||
#define R_000000_MC_STATUS 0x000000
|
||||
|
@ -353,6 +353,197 @@
|
||||
|
||||
#define SRBM_STATUS 0x0E50
|
||||
|
||||
/* DCE 3.2 HDMI */
|
||||
#define HDMI_CONTROL 0x7400
|
||||
# define HDMI_KEEPOUT_MODE (1 << 0)
|
||||
# define HDMI_PACKET_GEN_VERSION (1 << 4) /* 0 = r6xx compat */
|
||||
# define HDMI_ERROR_ACK (1 << 8)
|
||||
# define HDMI_ERROR_MASK (1 << 9)
|
||||
#define HDMI_STATUS 0x7404
|
||||
# define HDMI_ACTIVE_AVMUTE (1 << 0)
|
||||
# define HDMI_AUDIO_PACKET_ERROR (1 << 16)
|
||||
# define HDMI_VBI_PACKET_ERROR (1 << 20)
|
||||
#define HDMI_AUDIO_PACKET_CONTROL 0x7408
|
||||
# define HDMI_AUDIO_DELAY_EN(x) (((x) & 3) << 4)
|
||||
# define HDMI_AUDIO_PACKETS_PER_LINE(x) (((x) & 0x1f) << 16)
|
||||
#define HDMI_ACR_PACKET_CONTROL 0x740c
|
||||
# define HDMI_ACR_SEND (1 << 0)
|
||||
# define HDMI_ACR_CONT (1 << 1)
|
||||
# define HDMI_ACR_SELECT(x) (((x) & 3) << 4)
|
||||
# define HDMI_ACR_HW 0
|
||||
# define HDMI_ACR_32 1
|
||||
# define HDMI_ACR_44 2
|
||||
# define HDMI_ACR_48 3
|
||||
# define HDMI_ACR_SOURCE (1 << 8) /* 0 - hw; 1 - cts value */
|
||||
# define HDMI_ACR_AUTO_SEND (1 << 12)
|
||||
#define HDMI_VBI_PACKET_CONTROL 0x7410
|
||||
# define HDMI_NULL_SEND (1 << 0)
|
||||
# define HDMI_GC_SEND (1 << 4)
|
||||
# define HDMI_GC_CONT (1 << 5) /* 0 - once; 1 - every frame */
|
||||
#define HDMI_INFOFRAME_CONTROL0 0x7414
|
||||
# define HDMI_AVI_INFO_SEND (1 << 0)
|
||||
# define HDMI_AVI_INFO_CONT (1 << 1)
|
||||
# define HDMI_AUDIO_INFO_SEND (1 << 4)
|
||||
# define HDMI_AUDIO_INFO_CONT (1 << 5)
|
||||
# define HDMI_MPEG_INFO_SEND (1 << 8)
|
||||
# define HDMI_MPEG_INFO_CONT (1 << 9)
|
||||
#define HDMI_INFOFRAME_CONTROL1 0x7418
|
||||
# define HDMI_AVI_INFO_LINE(x) (((x) & 0x3f) << 0)
|
||||
# define HDMI_AUDIO_INFO_LINE(x) (((x) & 0x3f) << 8)
|
||||
# define HDMI_MPEG_INFO_LINE(x) (((x) & 0x3f) << 16)
|
||||
#define HDMI_GENERIC_PACKET_CONTROL 0x741c
|
||||
# define HDMI_GENERIC0_SEND (1 << 0)
|
||||
# define HDMI_GENERIC0_CONT (1 << 1)
|
||||
# define HDMI_GENERIC1_SEND (1 << 4)
|
||||
# define HDMI_GENERIC1_CONT (1 << 5)
|
||||
# define HDMI_GENERIC0_LINE(x) (((x) & 0x3f) << 16)
|
||||
# define HDMI_GENERIC1_LINE(x) (((x) & 0x3f) << 24)
|
||||
#define HDMI_GC 0x7428
|
||||
# define HDMI_GC_AVMUTE (1 << 0)
|
||||
#define AFMT_AUDIO_PACKET_CONTROL2 0x742c
|
||||
# define AFMT_AUDIO_LAYOUT_OVRD (1 << 0)
|
||||
# define AFMT_AUDIO_LAYOUT_SELECT (1 << 1)
|
||||
# define AFMT_60958_CS_SOURCE (1 << 4)
|
||||
# define AFMT_AUDIO_CHANNEL_ENABLE(x) (((x) & 0xff) << 8)
|
||||
# define AFMT_DP_AUDIO_STREAM_ID(x) (((x) & 0xff) << 16)
|
||||
#define AFMT_AVI_INFO0 0x7454
|
||||
# define AFMT_AVI_INFO_CHECKSUM(x) (((x) & 0xff) << 0)
|
||||
# define AFMT_AVI_INFO_S(x) (((x) & 3) << 8)
|
||||
# define AFMT_AVI_INFO_B(x) (((x) & 3) << 10)
|
||||
# define AFMT_AVI_INFO_A(x) (((x) & 1) << 12)
|
||||
# define AFMT_AVI_INFO_Y(x) (((x) & 3) << 13)
|
||||
# define AFMT_AVI_INFO_Y_RGB 0
|
||||
# define AFMT_AVI_INFO_Y_YCBCR422 1
|
||||
# define AFMT_AVI_INFO_Y_YCBCR444 2
|
||||
# define AFMT_AVI_INFO_Y_A_B_S(x) (((x) & 0xff) << 8)
|
||||
# define AFMT_AVI_INFO_R(x) (((x) & 0xf) << 16)
|
||||
# define AFMT_AVI_INFO_M(x) (((x) & 0x3) << 20)
|
||||
# define AFMT_AVI_INFO_C(x) (((x) & 0x3) << 22)
|
||||
# define AFMT_AVI_INFO_C_M_R(x) (((x) & 0xff) << 16)
|
||||
# define AFMT_AVI_INFO_SC(x) (((x) & 0x3) << 24)
|
||||
# define AFMT_AVI_INFO_Q(x) (((x) & 0x3) << 26)
|
||||
# define AFMT_AVI_INFO_EC(x) (((x) & 0x3) << 28)
|
||||
# define AFMT_AVI_INFO_ITC(x) (((x) & 0x1) << 31)
|
||||
# define AFMT_AVI_INFO_ITC_EC_Q_SC(x) (((x) & 0xff) << 24)
|
||||
#define AFMT_AVI_INFO1 0x7458
|
||||
# define AFMT_AVI_INFO_VIC(x) (((x) & 0x7f) << 0) /* don't use avi infoframe v1 */
|
||||
# define AFMT_AVI_INFO_PR(x) (((x) & 0xf) << 8) /* don't use avi infoframe v1 */
|
||||
# define AFMT_AVI_INFO_TOP(x) (((x) & 0xffff) << 16)
|
||||
#define AFMT_AVI_INFO2 0x745c
|
||||
# define AFMT_AVI_INFO_BOTTOM(x) (((x) & 0xffff) << 0)
|
||||
# define AFMT_AVI_INFO_LEFT(x) (((x) & 0xffff) << 16)
|
||||
#define AFMT_AVI_INFO3 0x7460
|
||||
# define AFMT_AVI_INFO_RIGHT(x) (((x) & 0xffff) << 0)
|
||||
# define AFMT_AVI_INFO_VERSION(x) (((x) & 3) << 24)
|
||||
#define AFMT_MPEG_INFO0 0x7464
|
||||
# define AFMT_MPEG_INFO_CHECKSUM(x) (((x) & 0xff) << 0)
|
||||
# define AFMT_MPEG_INFO_MB0(x) (((x) & 0xff) << 8)
|
||||
# define AFMT_MPEG_INFO_MB1(x) (((x) & 0xff) << 16)
|
||||
# define AFMT_MPEG_INFO_MB2(x) (((x) & 0xff) << 24)
|
||||
#define AFMT_MPEG_INFO1 0x7468
|
||||
# define AFMT_MPEG_INFO_MB3(x) (((x) & 0xff) << 0)
|
||||
# define AFMT_MPEG_INFO_MF(x) (((x) & 3) << 8)
|
||||
# define AFMT_MPEG_INFO_FR(x) (((x) & 1) << 12)
|
||||
#define AFMT_GENERIC0_HDR 0x746c
|
||||
#define AFMT_GENERIC0_0 0x7470
|
||||
#define AFMT_GENERIC0_1 0x7474
|
||||
#define AFMT_GENERIC0_2 0x7478
|
||||
#define AFMT_GENERIC0_3 0x747c
|
||||
#define AFMT_GENERIC0_4 0x7480
|
||||
#define AFMT_GENERIC0_5 0x7484
|
||||
#define AFMT_GENERIC0_6 0x7488
|
||||
#define AFMT_GENERIC1_HDR 0x748c
|
||||
#define AFMT_GENERIC1_0 0x7490
|
||||
#define AFMT_GENERIC1_1 0x7494
|
||||
#define AFMT_GENERIC1_2 0x7498
|
||||
#define AFMT_GENERIC1_3 0x749c
|
||||
#define AFMT_GENERIC1_4 0x74a0
|
||||
#define AFMT_GENERIC1_5 0x74a4
|
||||
#define AFMT_GENERIC1_6 0x74a8
|
||||
#define HDMI_ACR_32_0 0x74ac
|
||||
# define HDMI_ACR_CTS_32(x) (((x) & 0xfffff) << 12)
|
||||
#define HDMI_ACR_32_1 0x74b0
|
||||
# define HDMI_ACR_N_32(x) (((x) & 0xfffff) << 0)
|
||||
#define HDMI_ACR_44_0 0x74b4
|
||||
# define HDMI_ACR_CTS_44(x) (((x) & 0xfffff) << 12)
|
||||
#define HDMI_ACR_44_1 0x74b8
|
||||
# define HDMI_ACR_N_44(x) (((x) & 0xfffff) << 0)
|
||||
#define HDMI_ACR_48_0 0x74bc
|
||||
# define HDMI_ACR_CTS_48(x) (((x) & 0xfffff) << 12)
|
||||
#define HDMI_ACR_48_1 0x74c0
|
||||
# define HDMI_ACR_N_48(x) (((x) & 0xfffff) << 0)
|
||||
#define HDMI_ACR_STATUS_0 0x74c4
|
||||
#define HDMI_ACR_STATUS_1 0x74c8
|
||||
#define AFMT_AUDIO_INFO0 0x74cc
|
||||
# define AFMT_AUDIO_INFO_CHECKSUM(x) (((x) & 0xff) << 0)
|
||||
# define AFMT_AUDIO_INFO_CC(x) (((x) & 7) << 8)
|
||||
# define AFMT_AUDIO_INFO_CHECKSUM_OFFSET(x) (((x) & 0xff) << 16)
|
||||
#define AFMT_AUDIO_INFO1 0x74d0
|
||||
# define AFMT_AUDIO_INFO_CA(x) (((x) & 0xff) << 0)
|
||||
# define AFMT_AUDIO_INFO_LSV(x) (((x) & 0xf) << 11)
|
||||
# define AFMT_AUDIO_INFO_DM_INH(x) (((x) & 1) << 15)
|
||||
# define AFMT_AUDIO_INFO_DM_INH_LSV(x) (((x) & 0xff) << 8)
|
||||
#define AFMT_60958_0 0x74d4
|
||||
# define AFMT_60958_CS_A(x) (((x) & 1) << 0)
|
||||
# define AFMT_60958_CS_B(x) (((x) & 1) << 1)
|
||||
# define AFMT_60958_CS_C(x) (((x) & 1) << 2)
|
||||
# define AFMT_60958_CS_D(x) (((x) & 3) << 3)
|
||||
# define AFMT_60958_CS_MODE(x) (((x) & 3) << 6)
|
||||
# define AFMT_60958_CS_CATEGORY_CODE(x) (((x) & 0xff) << 8)
|
||||
# define AFMT_60958_CS_SOURCE_NUMBER(x) (((x) & 0xf) << 16)
|
||||
# define AFMT_60958_CS_CHANNEL_NUMBER_L(x) (((x) & 0xf) << 20)
|
||||
# define AFMT_60958_CS_SAMPLING_FREQUENCY(x) (((x) & 0xf) << 24)
|
||||
# define AFMT_60958_CS_CLOCK_ACCURACY(x) (((x) & 3) << 28)
|
||||
#define AFMT_60958_1 0x74d8
|
||||
# define AFMT_60958_CS_WORD_LENGTH(x) (((x) & 0xf) << 0)
|
||||
# define AFMT_60958_CS_ORIGINAL_SAMPLING_FREQUENCY(x) (((x) & 0xf) << 4)
|
||||
# define AFMT_60958_CS_VALID_L(x) (((x) & 1) << 16)
|
||||
# define AFMT_60958_CS_VALID_R(x) (((x) & 1) << 18)
|
||||
# define AFMT_60958_CS_CHANNEL_NUMBER_R(x) (((x) & 0xf) << 20)
|
||||
#define AFMT_AUDIO_CRC_CONTROL 0x74dc
|
||||
# define AFMT_AUDIO_CRC_EN (1 << 0)
|
||||
#define AFMT_RAMP_CONTROL0 0x74e0
|
||||
# define AFMT_RAMP_MAX_COUNT(x) (((x) & 0xffffff) << 0)
|
||||
# define AFMT_RAMP_DATA_SIGN (1 << 31)
|
||||
#define AFMT_RAMP_CONTROL1 0x74e4
|
||||
# define AFMT_RAMP_MIN_COUNT(x) (((x) & 0xffffff) << 0)
|
||||
# define AFMT_AUDIO_TEST_CH_DISABLE(x) (((x) & 0xff) << 24)
|
||||
#define AFMT_RAMP_CONTROL2 0x74e8
|
||||
# define AFMT_RAMP_INC_COUNT(x) (((x) & 0xffffff) << 0)
|
||||
#define AFMT_RAMP_CONTROL3 0x74ec
|
||||
# define AFMT_RAMP_DEC_COUNT(x) (((x) & 0xffffff) << 0)
|
||||
#define AFMT_60958_2 0x74f0
|
||||
# define AFMT_60958_CS_CHANNEL_NUMBER_2(x) (((x) & 0xf) << 0)
|
||||
# define AFMT_60958_CS_CHANNEL_NUMBER_3(x) (((x) & 0xf) << 4)
|
||||
# define AFMT_60958_CS_CHANNEL_NUMBER_4(x) (((x) & 0xf) << 8)
|
||||
# define AFMT_60958_CS_CHANNEL_NUMBER_5(x) (((x) & 0xf) << 12)
|
||||
# define AFMT_60958_CS_CHANNEL_NUMBER_6(x) (((x) & 0xf) << 16)
|
||||
# define AFMT_60958_CS_CHANNEL_NUMBER_7(x) (((x) & 0xf) << 20)
|
||||
#define AFMT_STATUS 0x7600
|
||||
# define AFMT_AUDIO_ENABLE (1 << 4)
|
||||
# define AFMT_AZ_FORMAT_WTRIG (1 << 28)
|
||||
# define AFMT_AZ_FORMAT_WTRIG_INT (1 << 29)
|
||||
# define AFMT_AZ_AUDIO_ENABLE_CHG (1 << 30)
|
||||
#define AFMT_AUDIO_PACKET_CONTROL 0x7604
|
||||
# define AFMT_AUDIO_SAMPLE_SEND (1 << 0)
|
||||
# define AFMT_AUDIO_TEST_EN (1 << 12)
|
||||
# define AFMT_AUDIO_CHANNEL_SWAP (1 << 24)
|
||||
# define AFMT_60958_CS_UPDATE (1 << 26)
|
||||
# define AFMT_AZ_AUDIO_ENABLE_CHG_MASK (1 << 27)
|
||||
# define AFMT_AZ_FORMAT_WTRIG_MASK (1 << 28)
|
||||
# define AFMT_AZ_FORMAT_WTRIG_ACK (1 << 29)
|
||||
# define AFMT_AZ_AUDIO_ENABLE_CHG_ACK (1 << 30)
|
||||
#define AFMT_VBI_PACKET_CONTROL 0x7608
|
||||
# define AFMT_GENERIC0_UPDATE (1 << 2)
|
||||
#define AFMT_INFOFRAME_CONTROL0 0x760c
|
||||
# define AFMT_AUDIO_INFO_SOURCE (1 << 6) /* 0 - sound block; 1 - hmdi regs */
|
||||
# define AFMT_AUDIO_INFO_UPDATE (1 << 7)
|
||||
# define AFMT_MPEG_INFO_UPDATE (1 << 10)
|
||||
#define AFMT_GENERIC0_7 0x7610
|
||||
/* second instance starts at 0x7800 */
|
||||
#define HDMI_OFFSET0 (0x7400 - 0x7400)
|
||||
#define HDMI_OFFSET1 (0x7800 - 0x7400)
|
||||
|
||||
#define D1GRPH_PRIMARY_SURFACE_ADDRESS 0x6110
|
||||
#define D1GRPH_PRIMARY_SURFACE_ADDRESS_HIGH 0x6914
|
||||
#define D2GRPH_PRIMARY_SURFACE_ADDRESS_HIGH 0x6114
|
||||
|
Loading…
Reference in New Issue
Block a user