Am Montag, 1. Oktober 2012, 21:40:35 schrieb Sylwester Nawrocki: > On 10/01/2012 09:18 PM, Heiko Stübner wrote: > > Hi José, > > > > Am Montag, 1. Oktober 2012, 19:32:15 schrieb José Miguel Gonçalves: > >> I'm trying to use the HSSPI controller on a S3C2416 based board but I'm > >> having some problems. > >> > >> I've added "&s3c64xx_device_spi0" to my array of platform devices and > >> added a call to s3c64xx_spi0_set_platdata(NULL, 0, 1) before > >> platform_add_devices(). When the kernel starts I see the following > >> error: > >> > >> s3c64xx-spi s3c6410-spi.0: Unable to acquire clock 'spi' > >> s3c64xx-spi: probe of s3c6410-spi.0 failed with error -2 > > > > what kernel version do you use? > > > > I.e. the clock support for the s3c64xx-spi on s3c2443 and s3c2416 was > > added through [1] in march - so it's not this old. > > In this commit > > commit a5238e360b715e9a1bb39d7d3537f78cc9e9e286 > Author: Thomas Abraham <thomas.abraham@xxxxxxxxxx> > Date: Fri Jul 13 07:15:14 2012 +0900 > > spi: s3c64xx: move controller information into driver data > > Platform data is used to specify controller hardware specific > information such as the tx/rx fifo level mask and bit offset of rx fifo > level. Such information is not suitable to be supplied from device tree. > Instead, it can be moved into the driver data and removed from platform > data. > > Signed-off-by: Thomas Abraham <thomas.abraham@xxxxxxxxxx> > Acked-by: Jaswinder Singh <jaswinder.singh@xxxxxxxxxx> > Acked-by: Grant Likely <grant.likely@xxxxxxxxxxxx> > Signed-off-by: Kukjin Kim <kgene.kim@xxxxxxxxxxx> > > All "s3c64xx-spi.0" devname fields that you added were replaced with > "s3c24xx-spi.0". I wonder if that's not the reason clk_get(..., "spi"); > fails in the spi-s3c64xx driver used on mach-s3c24xx. But it of course > depends on the kernel version, we need to first clarify that. > > diff --git a/arch/arm/mach-s3c24xx/common-s3c2443.c > b/arch/arm/mach-s3c24xx/common-s3c2443.c index aeeb2be..aeb4a24 100644 > --- a/arch/arm/mach-s3c24xx/common-s3c2443.c > +++ b/arch/arm/mach-s3c24xx/common-s3c2443.c > @@ -559,7 +559,7 @@ static struct clk hsmmc1_clk = { > > static struct clk hsspi_clk = { > .name = "spi", > - .devname = "s3c64xx-spi.0", > + .devname = "s3c2443-spi.0", > .parent = &clk_p, > .enable = s3c2443_clkcon_enable_p, > .ctrlbit = S3C2443_PCLKCON_HSSPI, > @@ -633,7 +633,7 @@ static struct clk_lookup s3c2443_clk_lookup[] = { > CLKDEV_INIT(NULL, "clk_uart_baud2", &clk_p), > CLKDEV_INIT(NULL, "clk_uart_baud3", &clk_esys_uart.clk), > CLKDEV_INIT("s3c-sdhci.1", "mmc_busclk.0", &hsmmc1_clk), > - CLKDEV_INIT("s3c64xx-spi.0", "spi_busclk0", &hsspi_clk), > + CLKDEV_INIT("s3c2443-spi.0", "spi_busclk0", &hsspi_clk), > }; ahaa ... that's the cause. As far as I was able to determine, in the patchset only the clocks were renamed and the different device names introduced. The spi devices did not get a function to set the name, like for the rtc, adc and nand. The devices are named s3c6410-spi by default, so it seems only the s3c64xx machines should have a working spi currently. I'm working on a patch to fix this for all Samsung arches. Heiko -- To unsubscribe from this list: send the line "unsubscribe linux-samsung-soc" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html