diff options
Diffstat (limited to 'arch/arm/mach-davinci/da850.c')
| -rw-r--r-- | arch/arm/mach-davinci/da850.c | 32 |
1 files changed, 30 insertions, 2 deletions
diff --git a/arch/arm/mach-davinci/da850.c b/arch/arm/mach-davinci/da850.c index e770c97ea45c..1d873d15b545 100644 --- a/arch/arm/mach-davinci/da850.c +++ b/arch/arm/mach-davinci/da850.c | |||
| @@ -319,6 +319,16 @@ static struct clk emac_clk = { | |||
| 319 | .gpsc = 1, | 319 | .gpsc = 1, |
| 320 | }; | 320 | }; |
| 321 | 321 | ||
| 322 | /* | ||
| 323 | * In order to avoid adding the emac_clk to the clock lookup table twice (and | ||
| 324 | * screwing up the linked list in the process) create a separate clock for | ||
| 325 | * mdio inheriting the rate from emac_clk. | ||
| 326 | */ | ||
| 327 | static struct clk mdio_clk = { | ||
| 328 | .name = "mdio", | ||
| 329 | .parent = &emac_clk, | ||
| 330 | }; | ||
| 331 | |||
| 322 | static struct clk mcasp_clk = { | 332 | static struct clk mcasp_clk = { |
| 323 | .name = "mcasp", | 333 | .name = "mcasp", |
| 324 | .parent = &async3_clk, | 334 | .parent = &async3_clk, |
| @@ -367,6 +377,16 @@ static struct clk aemif_clk = { | |||
| 367 | .flags = ALWAYS_ENABLED, | 377 | .flags = ALWAYS_ENABLED, |
| 368 | }; | 378 | }; |
| 369 | 379 | ||
| 380 | /* | ||
| 381 | * In order to avoid adding the aemif_clk to the clock lookup table twice (and | ||
| 382 | * screwing up the linked list in the process) create a separate clock for | ||
| 383 | * nand inheriting the rate from aemif_clk. | ||
| 384 | */ | ||
| 385 | static struct clk aemif_nand_clk = { | ||
| 386 | .name = "nand", | ||
| 387 | .parent = &aemif_clk, | ||
| 388 | }; | ||
| 389 | |||
| 370 | static struct clk usb11_clk = { | 390 | static struct clk usb11_clk = { |
| 371 | .name = "usb11", | 391 | .name = "usb11", |
| 372 | .parent = &pll0_sysclk4, | 392 | .parent = &pll0_sysclk4, |
| @@ -529,7 +549,7 @@ static struct clk_lookup da850_clks[] = { | |||
| 529 | CLK(NULL, "arm", &arm_clk), | 549 | CLK(NULL, "arm", &arm_clk), |
| 530 | CLK(NULL, "rmii", &rmii_clk), | 550 | CLK(NULL, "rmii", &rmii_clk), |
| 531 | CLK("davinci_emac.1", NULL, &emac_clk), | 551 | CLK("davinci_emac.1", NULL, &emac_clk), |
| 532 | CLK("davinci_mdio.0", "fck", &emac_clk), | 552 | CLK("davinci_mdio.0", "fck", &mdio_clk), |
| 533 | CLK("davinci-mcasp.0", NULL, &mcasp_clk), | 553 | CLK("davinci-mcasp.0", NULL, &mcasp_clk), |
| 534 | CLK("davinci-mcbsp.0", NULL, &mcbsp0_clk), | 554 | CLK("davinci-mcbsp.0", NULL, &mcbsp0_clk), |
| 535 | CLK("davinci-mcbsp.1", NULL, &mcbsp1_clk), | 555 | CLK("davinci-mcbsp.1", NULL, &mcbsp1_clk), |
| @@ -537,7 +557,15 @@ static struct clk_lookup da850_clks[] = { | |||
| 537 | CLK("da830-mmc.0", NULL, &mmcsd0_clk), | 557 | CLK("da830-mmc.0", NULL, &mmcsd0_clk), |
| 538 | CLK("da830-mmc.1", NULL, &mmcsd1_clk), | 558 | CLK("da830-mmc.1", NULL, &mmcsd1_clk), |
| 539 | CLK("ti-aemif", NULL, &aemif_clk), | 559 | CLK("ti-aemif", NULL, &aemif_clk), |
| 540 | CLK(NULL, "aemif", &aemif_clk), | 560 | /* |
| 561 | * The only user of this clock is davinci_nand and it get's it through | ||
| 562 | * con_id. The nand node itself is created from within the aemif | ||
| 563 | * driver to guarantee that it's probed after the aemif timing | ||
| 564 | * parameters are configured. of_dev_auxdata is not accessible from | ||
| 565 | * the aemif driver and can't be passed to of_platform_populate(). For | ||
| 566 | * that reason we're leaving the dev_id here as NULL. | ||
| 567 | */ | ||
| 568 | CLK(NULL, "aemif", &aemif_nand_clk), | ||
| 541 | CLK("ohci-da8xx", "usb11", &usb11_clk), | 569 | CLK("ohci-da8xx", "usb11", &usb11_clk), |
| 542 | CLK("musb-da8xx", "usb20", &usb20_clk), | 570 | CLK("musb-da8xx", "usb20", &usb20_clk), |
| 543 | CLK("spi_davinci.0", NULL, &spi0_clk), | 571 | CLK("spi_davinci.0", NULL, &spi0_clk), |
