diff options
author | Colin Cross <ccross@android.com> | 2011-01-06 18:12:28 -0800 |
---|---|---|
committer | Colin Cross <ccross@android.com> | 2011-01-06 18:12:28 -0800 |
commit | ab3fe23e4a9bad1a04cf40393fc65ece67b68723 (patch) | |
tree | aa4487774ba10ad0d63a9029e3e7708b23f58808 /drivers/video/tegra/dc | |
parent | 3051b1526aca9dc9262028a5dd443d1083364b95 (diff) | |
parent | c32a73b4fce0ac2825e3d52460ea9e767edadc6b (diff) |
Merge branch 'linux-tegra-2.6.36' into android-tegra-2.6.36
Diffstat (limited to 'drivers/video/tegra/dc')
-rw-r--r-- | drivers/video/tegra/dc/dc.c | 15 |
1 files changed, 8 insertions, 7 deletions
diff --git a/drivers/video/tegra/dc/dc.c b/drivers/video/tegra/dc/dc.c index 946d3da7dc2c..2819a93d8442 100644 --- a/drivers/video/tegra/dc/dc.c +++ b/drivers/video/tegra/dc/dc.c @@ -1041,6 +1041,7 @@ static int tegra_dc_probe(struct nvhost_device *ndev) void __iomem *base; int irq; int i; + unsigned long emc_clk_rate; if (!ndev->dev.platform_data) { dev_err(&ndev->dev, "no platform data\n"); @@ -1097,13 +1098,6 @@ static int tegra_dc_probe(struct nvhost_device *ndev) goto err_put_clk; } - /* - * The emc is a shared clock, it will be set to the highest - * requested rate from any user. Set the rate to ULONG_MAX to - * always request the max rate whenever this request is enabled - */ - clk_set_rate(emc_clk, ULONG_MAX); - dc->clk = clk; dc->emc_clk = emc_clk; dc->base_res = base_res; @@ -1112,6 +1106,13 @@ static int tegra_dc_probe(struct nvhost_device *ndev) dc->ndev = ndev; dc->pdata = ndev->dev.platform_data; + /* + * The emc is a shared clock, it will be set based on + * the requirements for each user on the bus. + */ + emc_clk_rate = dc->pdata->emc_clk_rate; + clk_set_rate(emc_clk, emc_clk_rate ? emc_clk_rate : ULONG_MAX); + if (dc->pdata->flags & TEGRA_DC_FLAG_ENABLED) dc->enabled = true; |