This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

AM335X no soundcards found

Other Parts Discussed in Thread: TLV320AIC3106, AM3352, TPS65217

Hello,

I work on a custom AM3352 board designed as Start-kit board,and the audio chip is TLV320AIC3106 ,the software is SDK6.0.I have modified the pin mux code ,because the hardware circuit is changed,

i modify the /arch/arm/match-omap2/board-am335xevm.c like this :

/* Module pin mux for mcasp1 */
static struct pinmux_config mcasp1_pin_mux[] = {
/*{"mii1_crs.mcasp1_aclkx", OMAP_MUX_MODE4 | AM33XX_PIN_INPUT_PULLDOWN},
{"mii1_rxerr.mcasp1_fsx", OMAP_MUX_MODE4 | AM33XX_PIN_INPUT_PULLDOWN},
{"mii1_col.mcasp1_axr2", OMAP_MUX_MODE4 | AM33XX_PIN_INPUT_PULLDOWN},
{"rmii1_refclk.mcasp1_axr3", OMAP_MUX_MODE4 |
AM33XX_PIN_INPUT_PULLDOWN},
{NULL, 0},*/
{"mcasp0_aclkr.mcasp1_aclkx", OMAP_MUX_MODE3 | AM33XX_PIN_INPUT_PULLDOWN},
{"mcasp0_fsr.mcasp1_fsx", OMAP_MUX_MODE3 | AM33XX_PIN_INPUT_PULLDOWN},
{"mcasp0_axr1.mcasp1_axr0", OMAP_MUX_MODE3 | AM33XX_PIN_INPUT_PULLDOWN},
{"mcasp0_ahclkx.mcasp1_axr1", OMAP_MUX_MODE3 | AM33XX_PIN_INPUT_PULLDOWN},
{NULL, 0},
};

static u8 am335x_evm_sk_iis_serializer_direction1[] = {
/*INACTIVE_MODE, INACTIVE_MODE, TX_MODE, RX_MODE,
INACTIVE_MODE, INACTIVE_MODE, INACTIVE_MODE, INACTIVE_MODE,
INACTIVE_MODE, INACTIVE_MODE, INACTIVE_MODE, INACTIVE_MODE,
INACTIVE_MODE, INACTIVE_MODE, INACTIVE_MODE, INACTIVE_MODE,*/
TX_MODE,RX_MODE, INACTIVE_MODE, INACTIVE_MODE,
INACTIVE_MODE, INACTIVE_MODE, INACTIVE_MODE, INACTIVE_MODE,
INACTIVE_MODE, INACTIVE_MODE, INACTIVE_MODE, INACTIVE_MODE,
INACTIVE_MODE, INACTIVE_MODE, INACTIVE_MODE, INACTIVE_MODE,
};

As my TLV320AIC3106 clock is 24.576MHz ,soi modify the davinci-evm.c :

......

else if (machine_is_am335xevm())
/*#ifdef CONFIG_MACH_AM335XEVM
if (am335x_evm_get_id() == EVM_SK)
sysclk = 24000000;
else
#endif
sysclk = 12000000;
*/
sysclk = 24576000;//*///12000000;
else
return -EINVAL;

......

I power on the board,the boot message is like this:

......

[ 1.648559] tlv320aic3x-codec 1-001b: Failed to get supply 'IOVDD': -19
[ 1.655517] tlv320aic3x-codec 1-001b: Failed to request supplies: -19
[ 1.662231] tlv320aic3x-codec 1-001b: asoc: failed to probe CODEC tlv320aic3x-codec.1-001b: -19
[ 1.671356] asoc: failed to instantiate card AM335X EVM: -19
[ 1.677307] ALSA device list:
[ 1.680389] No soundcards found.

......

I can read the TLV320AIC3106 registers correctoly via I2C0,so i am sure the I2C is ok . Anything i miss?