summaryrefslogtreecommitdiff
path: root/drivers
diff options
context:
space:
mode:
authorTerje Bergstrom <tbergstrom@nvidia.com>2012-11-15 14:30:10 +0200
committerSimone Willett <swillett@nvidia.com>2012-11-26 16:11:45 -0800
commitdc5ec7dc968d8cf262acdf9baa5796f816043f5e (patch)
tree700a16c8e2240a185345f20b3bed6d3ee83da625 /drivers
parent135e5f5a82fa9444abac0eee95ebcecb450395b6 (diff)
video: tegra: host: Boot MSENC at init
Boot MSENC at channel initialization time if power gating is not enabled. If we support power gating, MSENC is booted when it's powered up. Bug 1164556 Change-Id: Icf8234bbf427e7e0452a98164163124d1c24704b Signed-off-by: Terje Bergstrom <tbergstrom@nvidia.com> Reviewed-on: http://git-master/r/163955 (cherry picked from commit cab9a80aa94df4e851d7aff923a9a453f47b28ff) Reviewed-on: http://git-master/r/165626 Reviewed-by: Automatic_Commit_Validation_User Reviewed-by: Juha Tukkinen <jtukkinen@nvidia.com>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/video/tegra/host/msenc/msenc.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/drivers/video/tegra/host/msenc/msenc.c b/drivers/video/tegra/host/msenc/msenc.c
index 4dc181a89d86..e575cfe23ecc 100644
--- a/drivers/video/tegra/host/msenc/msenc.c
+++ b/drivers/video/tegra/host/msenc/msenc.c
@@ -21,6 +21,7 @@
#include <linux/slab.h> /* for kzalloc */
#include <linux/firmware.h>
#include <linux/module.h>
+#include <mach/clk.h>
#include <asm/byteorder.h> /* for parsing ucode image wrt endianness */
#include <linux/delay.h> /* for udelay */
#include <linux/scatterlist.h>
@@ -307,6 +308,8 @@ clean_up:
void nvhost_msenc_init(struct platform_device *dev)
{
+ struct nvhost_device_data *pdata =
+ (struct nvhost_device_data *)dev->dev.platform_data;
int err = 0;
struct msenc *m;
char *fw_name;
@@ -334,6 +337,12 @@ void nvhost_msenc_init(struct platform_device *dev)
goto clean_up;
}
+ if (!pdata->can_powergate) {
+ nvhost_module_busy(dev);
+ msenc_boot(dev);
+ nvhost_module_idle(dev);
+ }
+
return;
clean_up: