]> Pileus Git - ~andy/linux/commitdiff
Merge branch 'clk/mxs-for-3.6' of git://git.linaro.org/people/shawnguo/linux-2.6...
authorMike Turquette <mturquette@linaro.org>
Thu, 12 Jul 2012 00:57:49 +0000 (17:57 -0700)
committerMike Turquette <mturquette@linaro.org>
Thu, 12 Jul 2012 00:57:49 +0000 (17:57 -0700)
1  2 
drivers/clk/mxs/clk-imx23.c
drivers/clk/mxs/clk-imx28.c

index db2391c054ee0a51805368d0a369267635375cf1,c14b021c4a681ee6560c88aa676a8a9a6f4bb821..844043ad0fe44c7b18dfee9ce05abc4218fc2f8d
@@@ -71,7 -71,7 +71,7 @@@ static void __init clk_misc_init(void
        __mxs_setl(30 << BP_FRAC_IOFRAC, FRAC);
  }
  
 -static struct clk_lookup uart_lookups[] __initdata = {
 +static struct clk_lookup uart_lookups[] = {
        { .dev_id = "duart", },
        { .dev_id = "mxs-auart.0", },
        { .dev_id = "mxs-auart.1", },
        { .dev_id = "80070000.serial", },
  };
  
 -static struct clk_lookup hbus_lookups[] __initdata = {
 +static struct clk_lookup hbus_lookups[] = {
        { .dev_id = "imx23-dma-apbh", },
        { .dev_id = "80004000.dma-apbh", },
  };
  
 -static struct clk_lookup xbus_lookups[] __initdata = {
 +static struct clk_lookup xbus_lookups[] = {
        { .dev_id = "duart", .con_id = "apb_pclk"},
        { .dev_id = "80070000.serial", .con_id = "apb_pclk"},
        { .dev_id = "imx23-dma-apbx", },
        { .dev_id = "80024000.dma-apbx", },
  };
  
 -static struct clk_lookup ssp_lookups[] __initdata = {
 +static struct clk_lookup ssp_lookups[] = {
        { .dev_id = "imx23-mmc.0", },
        { .dev_id = "imx23-mmc.1", },
        { .dev_id = "80010000.ssp", },
        { .dev_id = "80034000.ssp", },
  };
  
 -static struct clk_lookup lcdif_lookups[] __initdata = {
 +static struct clk_lookup lcdif_lookups[] = {
        { .dev_id = "imx23-fb", },
        { .dev_id = "80030000.lcdif", },
  };
  
 -static struct clk_lookup gpmi_lookups[] __initdata = {
 +static struct clk_lookup gpmi_lookups[] = {
        { .dev_id = "imx23-gpmi-nand", },
-       { .dev_id = "8000c000.gpmi", },
+       { .dev_id = "8000c000.gpmi-nand", },
  };
  
  static const char *sel_pll[]  __initconst = { "pll", "ref_xtal", };
@@@ -189,6 -189,7 +189,7 @@@ int __init mx23_clocks_init(void
                }
  
        clk_register_clkdev(clks[clk32k], NULL, "timrot");
+       clk_register_clkdev(clks[pwm], NULL, "80064000.pwm");
        clk_register_clkdevs(clks[hbus], hbus_lookups, ARRAY_SIZE(hbus_lookups));
        clk_register_clkdevs(clks[xbus], xbus_lookups, ARRAY_SIZE(xbus_lookups));
        clk_register_clkdevs(clks[uart], uart_lookups, ARRAY_SIZE(uart_lookups));
index 7fad6c8c13d222fc9a528191835d141d06ffcec5,98624eec5dd4bfeae9637e1f20c518e7bcc4038f..957eaaccb5f83d269ba199b4c0c3c784720f191d
@@@ -112,15 -112,15 +112,15 @@@ static void __init clk_misc_init(void
  
        /*
         * 480 MHz seems too high to be ssp clock source directly,
-        * so set frac0 to get a 288 MHz ref_io0.
+        * so set frac0 to get a 288 MHz ref_io0 and ref_io1.
         */
        val = readl_relaxed(FRAC0);
-       val &= ~(0x3f << BP_FRAC0_IO0FRAC);
-       val |= 30 << BP_FRAC0_IO0FRAC;
+       val &= ~((0x3f << BP_FRAC0_IO0FRAC) | (0x3f << BP_FRAC0_IO1FRAC));
+       val |= (30 << BP_FRAC0_IO0FRAC) | (30 << BP_FRAC0_IO1FRAC);
        writel_relaxed(val, FRAC0);
  }
  
 -static struct clk_lookup uart_lookups[] __initdata = {
 +static struct clk_lookup uart_lookups[] = {
        { .dev_id = "duart", },
        { .dev_id = "mxs-auart.0", },
        { .dev_id = "mxs-auart.1", },
        { .dev_id = "80074000.serial", },
  };
  
 -static struct clk_lookup hbus_lookups[] __initdata = {
 +static struct clk_lookup hbus_lookups[] = {
        { .dev_id = "imx28-dma-apbh", },
        { .dev_id = "80004000.dma-apbh", },
  };
  
 -static struct clk_lookup xbus_lookups[] __initdata = {
 +static struct clk_lookup xbus_lookups[] = {
        { .dev_id = "duart", .con_id = "apb_pclk"},
        { .dev_id = "80074000.serial", .con_id = "apb_pclk"},
        { .dev_id = "imx28-dma-apbx", },
        { .dev_id = "80024000.dma-apbx", },
  };
  
 -static struct clk_lookup ssp0_lookups[] __initdata = {
 +static struct clk_lookup ssp0_lookups[] = {
        { .dev_id = "imx28-mmc.0", },
        { .dev_id = "80010000.ssp", },
  };
  
 -static struct clk_lookup ssp1_lookups[] __initdata = {
 +static struct clk_lookup ssp1_lookups[] = {
        { .dev_id = "imx28-mmc.1", },
        { .dev_id = "80012000.ssp", },
  };
  
 -static struct clk_lookup ssp2_lookups[] __initdata = {
 +static struct clk_lookup ssp2_lookups[] = {
        { .dev_id = "imx28-mmc.2", },
        { .dev_id = "80014000.ssp", },
  };
  
 -static struct clk_lookup ssp3_lookups[] __initdata = {
 +static struct clk_lookup ssp3_lookups[] = {
        { .dev_id = "imx28-mmc.3", },
        { .dev_id = "80016000.ssp", },
  };
  
 -static struct clk_lookup lcdif_lookups[] __initdata = {
 +static struct clk_lookup lcdif_lookups[] = {
        { .dev_id = "imx28-fb", },
        { .dev_id = "80030000.lcdif", },
  };
  
 -static struct clk_lookup gpmi_lookups[] __initdata = {
 +static struct clk_lookup gpmi_lookups[] = {
        { .dev_id = "imx28-gpmi-nand", },
-       { .dev_id = "8000c000.gpmi", },
+       { .dev_id = "8000c000.gpmi-nand", },
  };
  
 -static struct clk_lookup fec_lookups[] __initdata = {
 +static struct clk_lookup fec_lookups[] = {
        { .dev_id = "imx28-fec.0", },
        { .dev_id = "imx28-fec.1", },
        { .dev_id = "800f0000.ethernet", },
        { .dev_id = "800f4000.ethernet", },
  };
  
 -static struct clk_lookup can0_lookups[] __initdata = {
 +static struct clk_lookup can0_lookups[] = {
        { .dev_id = "flexcan.0", },
        { .dev_id = "80032000.can", },
  };
  
 -static struct clk_lookup can1_lookups[] __initdata = {
 +static struct clk_lookup can1_lookups[] = {
        { .dev_id = "flexcan.1", },
        { .dev_id = "80034000.can", },
  };
  
 -static struct clk_lookup saif0_lookups[] __initdata = {
 +static struct clk_lookup saif0_lookups[] = {
        { .dev_id = "mxs-saif.0", },
        { .dev_id = "80042000.saif", },
  };
  
 -static struct clk_lookup saif1_lookups[] __initdata = {
 +static struct clk_lookup saif1_lookups[] = {
        { .dev_id = "mxs-saif.1", },
        { .dev_id = "80046000.saif", },
  };
@@@ -245,8 -245,8 +245,8 @@@ int __init mx28_clocks_init(void
        clks[pll2] = mxs_clk_pll("pll2", "ref_xtal", PLL2CTRL0, 23, 50000000);
        clks[ref_cpu] = mxs_clk_ref("ref_cpu", "pll0", FRAC0, 0);
        clks[ref_emi] = mxs_clk_ref("ref_emi", "pll0", FRAC0, 1);
 -      clks[ref_io0] = mxs_clk_ref("ref_io0", "pll0", FRAC0, 2);
 -      clks[ref_io1] = mxs_clk_ref("ref_io1", "pll0", FRAC0, 3);
 +      clks[ref_io1] = mxs_clk_ref("ref_io1", "pll0", FRAC0, 2);
 +      clks[ref_io0] = mxs_clk_ref("ref_io0", "pll0", FRAC0, 3);
        clks[ref_pix] = mxs_clk_ref("ref_pix", "pll0", FRAC1, 0);
        clks[ref_hsadc] = mxs_clk_ref("ref_hsadc", "pll0", FRAC1, 1);
        clks[ref_gpmi] = mxs_clk_ref("ref_gpmi", "pll0", FRAC1, 2);
  
        clk_register_clkdev(clks[clk32k], NULL, "timrot");
        clk_register_clkdev(clks[enet_out], NULL, "enet_out");
+       clk_register_clkdev(clks[pwm], NULL, "80064000.pwm");
        clk_register_clkdevs(clks[hbus], hbus_lookups, ARRAY_SIZE(hbus_lookups));
        clk_register_clkdevs(clks[xbus], xbus_lookups, ARRAY_SIZE(xbus_lookups));
        clk_register_clkdevs(clks[uart], uart_lookups, ARRAY_SIZE(uart_lookups));