Change AUDMUX src_port causes "imx_ssi_irq mxc_ssi SISR 8003a3 SIER 180100 fifo_errs=XXXX"

Document created by AlanZhang Employee on Dec 5, 2012Last modified by Jodi Paul on Apr 19, 2013
Version 2Show Document
  • View in full screen mode

In FSL i.MX53 reference design, it is configured as:

static struct mxc_audio_platform_data sgtl5000_data = {

.ssi_num = 1,

.src_port = 2,

.ext_port = 5,

.hp_irq = gpio_to_irq(HEADPHONE_DEC_B),

.hp_status = headphone_det_status,

.init = mxc_sgtl5000_init,

.ext_ram_rx = 1,

};

by default. If change the configuration to be :

static struct mxc_audio_platform_data sgtl5000_data = {

.ssi_num = 0,

.src_port = 1,

.ext_port = 5,

.hp_irq = gpio_to_irq(HEADPHONE_DEC_B),

.hp_status = headphone_det_status,

.init = mxc_sgtl5000_init,

.ext_ram_rx = 1,

};

 

There will prompt "imx_ssi_irq mxc_ssi SISR 8003a3 SIER 180100 fifo_errs=XXXX"  constantly, and audio is greatly distorted.

 

The root cause of this issue is that SSI1/3 use SDMA, and also use IPMUX, but there is not the clock dependency between SDMA and IPMUX, so sometimes IPMUX clock is closed automatically.


The attached patch may fix this issue.

NOTE:

If use SSI2

.ssi_num = 1,

            .src_port = 2,

 

If use SSI1

.ssi_num = 0,

            .src_port = 1,

Outcomes