summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAjith Kumar <ajithk@nvidia.com>2017-04-10 23:52:20 -0400
committermobile promotions <svcmobile_promotions@nvidia.com>2017-04-18 05:26:01 -0400
commit237c375f22dd643f90d1fc814eb16d1c57002dba (patch)
treeff2ff92fdd705394811c82b8b7730485584e6607
parent7381574818378fef1516ee7d74ccf099acb5793d (diff)
video: tegra: host: Add isp-thi node for t19x
Support ISP THI interface for T19x family Jira CAMC-343 Change-Id: I000dff4d471b2bf6ebd30f23a7263c95421d9b8c Reviewed-on: http://git-master/r/1460427 Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com> Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
-rw-r--r--drivers/video/tegra/host/t194/t194.c36
-rw-r--r--drivers/video/tegra/host/t194/t194.h3
2 files changed, 39 insertions, 0 deletions
diff --git a/drivers/video/tegra/host/t194/t194.c b/drivers/video/tegra/host/t194/t194.c
index 257c3ae68..776bfc02b 100644
--- a/drivers/video/tegra/host/t194/t194.c
+++ b/drivers/video/tegra/host/t194/t194.c
@@ -114,6 +114,20 @@ static int nvhost_vi_thi_t194_finalize_poweron(struct platform_device *dev)
114} 114}
115#endif 115#endif
116 116
117#if defined(CONFIG_TEGRA_GRHOST_ISP)
118static inline u32 isp_thi_csb_afbif_streamid_ctl(void)
119{
120 return 0x00002088U;
121}
122
123static int nvhost_isp_thi_t194_finalize_poweron(struct platform_device *dev)
124{
125 host1x_writel(dev, isp_thi_csb_afbif_streamid_ctl(), 0);
126
127 return nvhost_flcn_t194_finalize_poweron(dev);
128}
129#endif
130
117#if defined(CONFIG_TEGRA_GRHOST_NVDEC) 131#if defined(CONFIG_TEGRA_GRHOST_NVDEC)
118static int nvhost_nvdec_t194_finalize_poweron(struct platform_device *dev) 132static int nvhost_nvdec_t194_finalize_poweron(struct platform_device *dev)
119{ 133{
@@ -218,6 +232,28 @@ struct nvhost_device_data t19_vi_thi_info = {
218}; 232};
219#endif 233#endif
220 234
235#ifdef CONFIG_TEGRA_GRHOST_ISP
236struct nvhost_device_data t19_isp_thi_info = {
237 .devfs_name = "isp-thi",
238 .version = NVHOST_ENCODE_FLCN_VER(5, 0),
239 .num_channels = 1,
240 .moduleid = NVHOST_MODULE_ISP,
241 .class = NV_VIDEO_STREAMING_ISP_CLASS_ID,
242 .modulemutexes = {NV_HOST1X_MLOCK_ID_ISP},
243 .keepalive = true,
244 .can_powergate = true,
245 .autosuspend_delay = 500,
246 .poweron_reset = true,
247 .clocks = {
248 {"isp", UINT_MAX},
249 },
250 .finalize_poweron = nvhost_isp_thi_t194_finalize_poweron,
251 .vm_regs = {{0x30, true}, {0x34, false} },
252 .firmware_name = "nvhost_isp050.fw",
253 .get_reloc_phys_addr = nvhost_t194_get_reloc_phys_addr,
254};
255#endif
256
221#if defined(CONFIG_TEGRA_GRHOST_NVENC) 257#if defined(CONFIG_TEGRA_GRHOST_NVENC)
222struct nvhost_device_data t19_msenc_info = { 258struct nvhost_device_data t19_msenc_info = {
223 .version = NVHOST_ENCODE_FLCN_VER(7, 0), 259 .version = NVHOST_ENCODE_FLCN_VER(7, 0),
diff --git a/drivers/video/tegra/host/t194/t194.h b/drivers/video/tegra/host/t194/t194.h
index c44811b70..3bdffdaaf 100644
--- a/drivers/video/tegra/host/t194/t194.h
+++ b/drivers/video/tegra/host/t194/t194.h
@@ -28,6 +28,9 @@ extern struct nvhost_device_data t19_host1xb_info;
28#if defined(CONFIG_VIDEO_TEGRA_VI) 28#if defined(CONFIG_VIDEO_TEGRA_VI)
29extern struct nvhost_device_data t19_vi_thi_info; 29extern struct nvhost_device_data t19_vi_thi_info;
30#endif 30#endif
31#if defined(CONFIG_TEGRA_GRHOST_ISP)
32extern struct nvhost_device_data t19_isp_thi_info;
33#endif
31#if defined(CONFIG_TEGRA_GRHOST_VIC) 34#if defined(CONFIG_TEGRA_GRHOST_VIC)
32extern struct nvhost_device_data t19_vic_info; 35extern struct nvhost_device_data t19_vic_info;
33#endif 36#endif