Hi team
platform: imx8m Quad
build command we use: ./buildme64.sh -b MX8M_EVK -t all -c
The Win10 IoT BSP version 1.5.1 already run well on my custom board. In addition, we already create a driver for the audio codec chip we use "ES8388". The codec driver references the design of WM8962 in BSP driver folder.
Issue:
Sound play is work ! But recording is not. After checking device manerger and audio setting in win10, seems like the microphone device is missing. I have attached the windows screentshot for this.
I think the correct situation will see a microphone device in audio setting interface. Such like microphone(i.MX Audio Controller with DMA support).
update:
We use SAI2 to connect with codec, here is my modification in iMX8BoardInit.c. I added the SAI2 RX pin initial in AudioInit().
/**
Initalize the Audio system
**/
#define SAI_PAD_CFG_OUT (IOMUXC_PAD_PUE_ENABLE | IOMUXC_PAD_DSE_R0_DIV_3 | IOMUXC_PAD_SRE_FAST)
#define SAI_PAD_CFG_IN (SAI_PAD_CFG_OUT | IOMUXC_PAD_HYS_ENABLED)
VOID AudioInit(VOID)
{
EFI_STATUS status;
// Mux the SAI2 pins to wm8524 codec
IOMUXC_SW_MUX_CTL_PAD_SAI2_TXFS = IOMUXC_MUX_ALT0;
IOMUXC_SW_MUX_CTL_PAD_SAI2_TXC = IOMUXC_MUX_ALT0;
IOMUXC_SW_MUX_CTL_PAD_SAI2_TXD0 = IOMUXC_MUX_ALT0;
IOMUXC_SW_MUX_CTL_PAD_SAI2_RXD0 = IOMUXC_MUX_ALT0;
IOMUXC_SW_MUX_CTL_PAD_SAI2_MCLK = IOMUXC_MUX_ALT0;
IOMUXC_SW_PAD_CTL_PAD_SAI2_TXFS = SAI_PAD_CFG_OUT;
IOMUXC_SW_PAD_CTL_PAD_SAI2_TXC = SAI_PAD_CFG_OUT;
IOMUXC_SW_PAD_CTL_PAD_SAI2_TXD0 = SAI_PAD_CFG_OUT;
IOMUXC_SW_PAD_CTL_PAD_SAI2_RXD0 = SAI_PAD_CFG_IN;
IOMUXC_SW_PAD_CTL_PAD_SAI2_MCLK = SAI_PAD_CFG_OUT;
// unmute audio
IOMUXC_SW_MUX_CTL_PAD_GPIO1_IO08 = IOMUXC_MUX_ALT0;
GPIO1_DR |= GPIO_DR_DR(1 << 8);
GPIO1_GDIR |= GPIO_DR_DR(1 << 8);
// enable the AUDIO_PLL - 44,100 Hz * 256
status = ImxSetSAI2ClockRate (11289600);
if (EFI_ERROR (status)) {
DebugPrint (DEBUG_ERROR, "AudioInit - ImxSetAudioMclkClockRate failed");
}
}
Please give me some hints to trace root cause.
Thanks.
已解决! 转到解答。
I found the solution.
In file "AcpiTables/Dsdt-Audio.asl", the SAI2 capture interface is disabled for IMX8MEVK ! After enable this, now we can see the microphone device in win10 audio interface. Also it work fine right now.
I found the solution.
In file "AcpiTables/Dsdt-Audio.asl", the SAI2 capture interface is disabled for IMX8MEVK ! After enable this, now we can see the microphone device in win10 audio interface. Also it work fine right now.