Hi, we are working on Apalis imx6q processor and at some point we have to change the clock registers configuration so for this we have changed in DCD settings for this we have added patch of our clk register configuration into u-boot and we have try to change the i2s mode of ssi(master) and sgtl5000(slave) in kernel dtsi, we have build this using yocto base so after bitbake when our board is booted we are not able to see our modified DCD(clk register configuration) while doing memory read. Is there any other way to save this settings permanently according to the board.
Is there any particular reason for you to set this question on private? With private questions there is no way for the community to provide feedback or profit from any feedback.
thanks for informing me marcel, i forget to make it public…
Sorry, what exactly is it that you are trying to achieve?
hi, actually i wanted to learn how to change the frequency of audio-codec(sgtl-5000) from processor as i have configured it in processor(I2S Master) and sgtl-5000(I2s slave) and also did this change
mux-int-port = <4>;
mux-ext-port = <1>;
I wanted to change the clock frequency from processor to sgtl also i have seen clock registers in IMX6QRM ref manual but i dont know how and where to apply the change and to see it on oscilloscope.
The Advanced Linux Sound Architecture (ALSA) stack should already take care of any of this. What exactly is it that is not working for you or what exactly are you trying to achieve?
i wanted to change the frequency of SGTL5000 IC from my Apalis IMX6Q processor by doing some changes in configuration, As i have seen in IMX6QRM reference manual there are some clock registers and if i make some changes in clock dividers then according to that my frequency on I2S_SCLK(SGTL5000 IC 20pin) pin should get that configured frequency(on Oscilloscope).
When i configure SSI1 as I2S-Master and imx-sgtl5000 as I2S-Slave i am getting 24MHz on I2S_SCLK pin of SGTL5000 IC. Also I tried to change the Clock Dividers of Registers by using Memtool.
example " memtool -32 0x2c02048 = OF4102C1 "
but it does not making any changes.
So,Suppose if i wanted to change this frequency of I2S_SCLK into 6MHz, where should i make changes in the kernel so that i will get this frequency.
Sorry, I don’t think we are getting anywhere. If you are unable to explain what exactly it is that you are trying to achieve I’m afraid I won’t be able to help you.
hi marcel i’m sorry that what i trying to explain thing is not getting you, actually i wanted to learn that how to change the frequency of any driver for example suppose if i have added any new driver(i’m adding SLIC S13228 driver) which is compatible with apalis-imx6q processor and in that i wanted to give frequency 512khz to that driver(because it works on 512khz).Our processor is of 24MHz so i need to configure registers in a way that it should generate 512khz frequency at PCLK(this pin is connected with processor at X1= 200 pin of Apalis-Imx6) pin of SLIC IC. so i dont know at which file i have to make changes, recently i come to know about clk-imx6q.c file which has register parameters but i am not sure of this file that making changes into that file will affect on that PCLK pin side, so could please help me in this if you have understand what i am trying to learn.
I do not know what that SLIC S13228 driver you are talking about is exactly. In general, the Common Clock Framework is meant to take care of any clock configuration in the Linux kernel and no individual messing with any of this is neither adviced nor required. As for ALSA this is usually done by a combination of the controller driver (e.g. for the I2S IP inside the i.MX 6 SoC) and a codec driver (e.g. in our on-module audio case the SGTL5000). As for the in-kernel sound subsystem its documentation may be found here.
thank you marcel i will have look on the given links.