From b471589ae16deb050942477d276c1a9d7adee903 Mon Sep 17 00:00:00 2001 From: borti4938 Date: Tue, 30 May 2017 19:26:47 +0200 Subject: [PATCH 1/4] Bugfix: audio down-sampling setting, clock settings --- software/sys_controller/it6613/it6613_drv.c | 13 ++++++++----- software/sys_controller/it6613/it6613_drv.h | 16 ++++++++-------- 2 files changed, 16 insertions(+), 13 deletions(-) diff --git a/software/sys_controller/it6613/it6613_drv.c b/software/sys_controller/it6613/it6613_drv.c index 392a173..0d06fcb 100644 --- a/software/sys_controller/it6613/it6613_drv.c +++ b/software/sys_controller/it6613/it6613_drv.c @@ -552,11 +552,6 @@ BOOL EnableAudioOutput4OSSC(ULONG VideoPixelClock,BYTE bAudioDwSampl,BYTE bAudio HDMITX_WriteI2C_Byte(REG_TX_PKT_SINGLE_CTRL,0); // D[1] = 0,HW auto count CTS #endif - // define internal/external MCLK and audio down-sampling - HDMITX_SetREG_Byte(REG_TX_CLK_CTRL0,~(M_EXT_MCLK_SEL|B_EXT_MCLK_SAMP|B_EXT_MCLK4CTS),B_EXT_256FS); - //HDMITX_AndREG_Byte(REG_TX_SW_RST,~M_AUD_DIV); - if (bAudioDwSampl == 0x1) - HDMITX_OrREG_Byte(REG_TX_CLK_CTRL1,B_AUD_DIV2); // set audio format Instance[0].TMDSClock = VideoPixelClock; @@ -568,6 +563,14 @@ BOOL EnableAudioOutput4OSSC(ULONG VideoPixelClock,BYTE bAudioDwSampl,BYTE bAudio HDMITX_WriteI2C_Byte(REG_TX_AUDIO_CTRL0,AudioEnable & 0xF0); + // define internal/external MCLK and audio down-sampling + HDMITX_SetREG_Byte(REG_TX_CLK_CTRL0,~(M_EXT_MCLK_SEL|B_EXT_MCLK_SAMP|B_EXT_MCLK4CTS),(B_INT_MCLK_SAMP|B_EXT_256FS|B_INT_MCLK4CTS)); + + if (bAudioDwSampl == 0x1) + HDMITX_SetREG_Byte(REG_TX_CLK_CTRL1,~M_AUD_DIV,B_AUD_DIV2); + else + HDMITX_SetREG_Byte(REG_TX_CLK_CTRL1,~M_AUD_DIV,B_AUD_NODIV); + HDMITX_AndREG_Byte(REG_TX_SW_RST,~(B_AUD_RST|B_AREF_RST)); HDMITX_WriteI2C_Byte(REG_TX_AUDIO_CTRL1,Instance[0].bOutputAudioMode); HDMITX_WriteI2C_Byte(REG_TX_AUDIO_FIFOMAP,0xE4); // default mapping. diff --git a/software/sys_controller/it6613/it6613_drv.h b/software/sys_controller/it6613/it6613_drv.h index d1a2f4d..db0cbbf 100644 --- a/software/sys_controller/it6613/it6613_drv.h +++ b/software/sys_controller/it6613/it6613_drv.h @@ -234,20 +234,20 @@ #define B_T_AUTH_DONE (1<<7) #define REG_TX_CLK_CTRL0 0x58 #define O_MCLK_SAMP 7 + #define M_MCLK_SAMP (1< Date: Tue, 30 May 2017 19:28:05 +0200 Subject: [PATCH 2/4] Setting MCLK adjust command and small bugfix (empty cherry-pick, commits with previous one) From 5b5c8bc373e2d9c2ed0237d0e1efe689c0062c71 Mon Sep 17 00:00:00 2001 From: borti4938 Date: Thu, 1 Jun 2017 22:29:24 +0200 Subject: [PATCH 3/4] Update it6613_drv.c lines outdated --- software/sys_controller/it6613/it6613_drv.c | 3 --- 1 file changed, 3 deletions(-) diff --git a/software/sys_controller/it6613/it6613_drv.c b/software/sys_controller/it6613/it6613_drv.c index 0d06fcb..eeb1483 100644 --- a/software/sys_controller/it6613/it6613_drv.c +++ b/software/sys_controller/it6613/it6613_drv.c @@ -563,9 +563,6 @@ BOOL EnableAudioOutput4OSSC(ULONG VideoPixelClock,BYTE bAudioDwSampl,BYTE bAudio HDMITX_WriteI2C_Byte(REG_TX_AUDIO_CTRL0,AudioEnable & 0xF0); - // define internal/external MCLK and audio down-sampling - HDMITX_SetREG_Byte(REG_TX_CLK_CTRL0,~(M_EXT_MCLK_SEL|B_EXT_MCLK_SAMP|B_EXT_MCLK4CTS),(B_INT_MCLK_SAMP|B_EXT_256FS|B_INT_MCLK4CTS)); - if (bAudioDwSampl == 0x1) HDMITX_SetREG_Byte(REG_TX_CLK_CTRL1,~M_AUD_DIV,B_AUD_DIV2); else From e9fbf2a1b97eedcf9e49d263ee00e88bcb6bd405 Mon Sep 17 00:00:00 2001 From: borti4938 Date: Sun, 4 Jun 2017 23:24:23 +0200 Subject: [PATCH 4/4] bugfix: screwed up register definitions --- software/sys_controller/it6613/it6613_drv.h | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/software/sys_controller/it6613/it6613_drv.h b/software/sys_controller/it6613/it6613_drv.h index db0cbbf..efdfca2 100644 --- a/software/sys_controller/it6613/it6613_drv.h +++ b/software/sys_controller/it6613/it6613_drv.h @@ -242,12 +242,10 @@ #define B_AUTO_OVER_SAMPLING_CLOCK (1<<4) #define O_EXT_MCLK_SEL 2 #define M_EXT_MCLK_SEL (3<