Driver for WM8974 interface with IMX6sl custom board based on IMX6SL EVK

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Driver for WM8974 interface with IMX6sl custom board based on IMX6SL EVK

2,439 Views
vinothrajm
Contributor III

Hi ,

I need audio driver or patch for WM8974 interface with IMX6sl custom board based on IMX6SL EVK. Kindle give any suggestions .

Thanks and regards,

vinothraj

Tags (1)
7 Replies

1,663 Views
vinothrajm
Contributor III

Hi sinan and Fabio,

    Thanks for your comments. And i had not experience in audio codec driver ad machine driver. Lastly, can i modify the imx-wm8962.c and create imx-wm8974. can you help to do the job. I also attached the other side of the AUDIO mux of the processor.

Thanks and Regards,

Vinothraj

0 Kudos

1,663 Views
saurabh206
Senior Contributor III

Hi Vinothraj

You can start with MX53UG.pdf  Chapter 21: Porting Audio Codecs to a Custom Board.

Next step is to make a change for SSI master and set the SSI clocking properly.

Study IMX6DQRM.pdf  Chapter 60 : SSI

60.7.4.2 DIV2, PSR and PM Bit Description

I hope this help to start with your work.

Thanks

Saurabh

1,663 Views
sinanakman
Senior Contributor III

Hi Vinothraj

There is already the codec driver for WM8974 in the kernel. Depending

on how the chip is connected you will need to implement a machine

driver for your board. Take a look at the imx-wm8962.c which implements

the driver for wm8962 connected to ssi ports. If your wm8974 is also

connected to ssi, you can modify this driver. There are also things you need

to consider differently if your chip is connected as master or slave. How

the driver will look like really depends on your design. If you like to share

your design, you might be able to get more specific help.

Hope this helps

Regards

Sinan Akman

1,662 Views
vinothrajm
Contributor III

Hi Sinan,

      Thanks for your valuable comment. yes i had codec driver for wm8974.But i need platform and machine driver for wm8974. As you said, i can modify the imx-wm8962.c and create imx-wm8974.c . I attached the design side of the wm8974 in this post.Please find it.

0 Kudos

1,663 Views
sinanakman
Senior Contributor III

Hi Vinothraj

According to this attached snapshot wm8974 seems to be connected

as slave. In the reference board wm8962 is also connected as slave

so this is similar. Your snapshot does not show exactly how your

chip is connected to your SoC but assume it is on audmux. If this

is the case you should be able to modify imx-wm8962.c to create

your own machine driver. Probably the best thing for you to do

is to compare wm8962 and wm8974 data sheets and your

design to that of the sabre sd reference board. Based on

differences modify wm8962 to fit to your design. You can

then use the correct dts descriptions and this is pretty much

all you should need for having this chip supported on your

board.

Regards

Sinan Akman

0 Kudos

1,663 Views
fabio_estevam
NXP Employee
NXP Employee

Hi Sinan,

Just a correction: imx-wm8962 sets the wm8962 codec as master and ssi as slave.

Regards,

Fabio Estevam

0 Kudos

1,663 Views
sinanakman
Senior Contributor III

Hi Fabio, thanks much setting this right.

I have SPF-27516 and I think the arrows

towards wm8962 on AUD_MCLK and

AUD3_TXC signal lines misled me at a

quick glance. Yes imx-wm8962.c clearly sets

the clocks via snd_soc_dai_set_pll(codec_dai, ...).

Thanks for the correction again.

Regards

Sinan Akman

0 Kudos