ARM: clk-imx35: Fix SSI clock registration
Subsystems (3)
PATCH v2 1/2 ARM: clk-imx35: Fix SSI clock registration
SSI block has two types of clock:
ipg: bus clock, the clock needed for accessing registers.
per: peripheral clock, the clock needed for generating the bit rate.
Currently SSI driver only supports slave mode and only need to handle the ipg clock, because the peripheral clock comes from the master codec.
Only register the ipg clock and do not register the peripheral clock for ssi.
---
Changes since v1:
- Use ssi2_gate for imx-ssi.1
arch/arm/mach-imx/clk-imx35.c | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-)
arch/arm/mach-imx/clk-imx35.c +2 -4
@@ -230,10 +230,8 @@ int __init mx35_clocks_init()clk_register_clkdev (clk[ipu_gate],NULL ,"mx3_sdc_fb" );clk_register_clkdev (clk[owire_gate],NULL ,"mxc_w1" );clk_register_clkdev (clk[sdma_gate],NULL ,"imx35-sdma" ); -clk_register_clkdev (clk[ipg],"ipg" ,"imx-ssi.0" ); -clk_register_clkdev (clk[ssi1_div_post],"per" ,"imx-ssi.0" ); -clk_register_clkdev (clk[ipg],"ipg" ,"imx-ssi.1" ); -clk_register_clkdev (clk[ssi2_div_post],"per" ,"imx-ssi.1" ); +clk_register_clkdev (clk[ssi1_gate],NULL ,"imx-ssi.0" ); +clk_register_clkdev (clk[ssi2_gate],NULL ,"imx-ssi.1" );/* i.mx35 has the i.mx21 type uart */ clk_register_clkdev (clk[uart1_gate],"per" ,"imx21-uart.0" );clk_register_clkdev (clk[ipg],"ipg" ,"imx21-uart.0" );
Signature · 1 line
1.7.9.5
PATCH v2 1/2 ARM: clk-imx35: Fix SSI clock registration
Quoted 9 lines · Fabio Estevam
SSI block has two types of clock:
ipg: bus clock, the clock needed for accessing registers.
per: peripheral clock, the clock needed for generating the bit rate.Currently SSI driver only supports slave mode and only need to handle the ipg clock, because the peripheral clock comes from the master codec.
Only register the ipg clock and do not register the peripheral clock for ssi.
in that it stops boot hanging on the board, though it still doesn't make
AC'97 come out of reset happily. That's probably some separate issue
(pinmux perhaps?) though.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 836 bytes
Desc: Digital signature
URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20120822/ebdabfcf/attachment.sig>
Fabio Estevam
reviewerPATCH v2 1/2 ARM: clk-imx35: Fix SSI clock registration
Quoted 5 lines · Mark Brown
Tested-by Mark Brown <[email protected]>in that it stops boot hanging on the board, though it still doesn't make AC'97 come out of reset happily. That's probably some separate issue (pinmux perhaps?) though.
Yes, looks like a separate issue.
Did imx_ssi_probe go successfully? What is the error log you are getting?
Regards,
Fabio Estevam
PATCH v2 1/2 ARM: clk-imx35: Fix SSI clock registration
Quoted 9 lines · Fabio Estevam
On Wed, Aug 22, 2012 at 4:27 PM, Mark Brown
Quoted 3 lines
in that it stops boot hanging on the board, though it still doesn't make AC'97 come out of reset happily. That's probably some separate issue (pinmux perhaps?) though.
Yes, looks like a separate issue.
Did
imx_ssi_probego successfully? What is the error log you are getting?
The controller probes but there's no perceptible activity on the pins when we try to reset the CODEC so no register I/O.
Fabio Estevam
reviewerPATCH v2 1/2 ARM: clk-imx35: Fix SSI clock registration
Quoted 4 lines · Mark Brown
Quoted 1 line
Did
imx_ssi_probego successfully? What is the error log you are getting?The controller probes but there's no perceptible activity on the pins when we try to reset the CODEC so no register I/O.
Take a look at pcm043_ac97_cold_reset/pcm043_ac97_warm_reset at arch/arm/mach-imx/mach-pcm043.c
to see how GPIO pins are handled for resetting ac97 codec on this platform.
Regards,
Fabio Estevam
Sascha Hauer
maintainerPATCH v2 1/2 ARM: clk-imx35: Fix SSI clock registration
In reply to Fabio EstevamQuoted 11 lines · Fabio Estevam
SSI block has two types of clock:
ipg: bus clock, the clock needed for accessing registers.
per: peripheral clock, the clock needed for generating the bit rate.Currently SSI driver only supports slave mode and only need to handle the ipg clock, because the peripheral clock comes from the master codec.
Only register the ipg clock and do not register the peripheral clock for ssi.
Signed-off-by Fabio Estevam <[email protected]>
Ok, used this version instead.
Sascha
Quoted 29 lines
---
Changes since v1:
- Usessi2_gatefor imx-ssi.1arch/arm/mach-imx/clk-imx35.c | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-)arch/arm/mach-imx/clk-imx35.c +2
-4@@ -230,10 +230,8 @@ int __init mx35_clocks_init()clk_register_clkdev (clk[ipu_gate],NULL ,"mx3_sdc_fb" );clk_register_clkdev (clk[owire_gate],NULL ,"mxc_w1" );clk_register_clkdev (clk[sdma_gate],NULL ,"imx35-sdma" ); -clk_register_clkdev (clk[ipg],"ipg" ,"imx-ssi.0" ); -clk_register_clkdev (clk[ssi1_div_post],"per" ,"imx-ssi.0" ); -clk_register_clkdev (clk[ipg],"ipg" ,"imx-ssi.1" ); -clk_register_clkdev (clk[ssi2_div_post],"per" ,"imx-ssi.1" ); +clk_register_clkdev (clk[ssi1_gate],NULL ,"imx-ssi.0" ); +clk_register_clkdev (clk[ssi2_gate],NULL ,"imx-ssi.1" );/* i.mx35 has the i.mx21 type uart */ clk_register_clkdev (clk[uart1_gate],"per" ,"imx21-uart.0" );clk_register_clkdev (clk[ipg],"ipg" ,"imx21-uart.0" );Signature · 1 line
1.7.9.5
Signature · 4 lines
Pengutronix e.K. | | Industrial Linux Solutions | http://www.pengutronix.de/ | Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0 | Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 |