Commit 3de93941 authored by Manjunath Hadli's avatar Manjunath Hadli Committed by Mauro Carvalho Chehab

[media] davinci: vpss: dm365: set vpss clk ctrl

request_mem_region for VPSS_CLK_CTRL register and ioremap.
and enable clocks appropriately.
Signed-off-by: default avatarManjunath Hadli <manjunath.hadli@ti.com>
Signed-off-by: default avatarLad, Prabhakar <prabhakar.lad@ti.com>
Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@redhat.com>
parent c1819fc5
...@@ -69,6 +69,11 @@ MODULE_AUTHOR("Texas Instruments"); ...@@ -69,6 +69,11 @@ MODULE_AUTHOR("Texas Instruments");
#define DM365_ISP5_CCDCMUX 0x20 #define DM365_ISP5_CCDCMUX 0x20
#define DM365_ISP5_PG_FRAME_SIZE 0x28 #define DM365_ISP5_PG_FRAME_SIZE 0x28
#define DM365_VPBE_CLK_CTRL 0x00 #define DM365_VPBE_CLK_CTRL 0x00
#define VPSS_CLK_CTRL 0x01c40044
#define VPSS_CLK_CTRL_VENCCLKEN BIT(3)
#define VPSS_CLK_CTRL_DACCLKEN BIT(4)
/* /*
* vpss interrupts. VDINT0 - vpss_int0, VDINT1 - vpss_int1, * vpss interrupts. VDINT0 - vpss_int0, VDINT1 - vpss_int1,
* AF - vpss_int3 * AF - vpss_int3
...@@ -112,6 +117,7 @@ struct vpss_hw_ops { ...@@ -112,6 +117,7 @@ struct vpss_hw_ops {
struct vpss_oper_config { struct vpss_oper_config {
__iomem void *vpss_regs_base0; __iomem void *vpss_regs_base0;
__iomem void *vpss_regs_base1; __iomem void *vpss_regs_base1;
resource_size_t *vpss_regs_base2;
enum vpss_platform_type platform; enum vpss_platform_type platform;
spinlock_t vpss_lock; spinlock_t vpss_lock;
struct vpss_hw_ops hw_ops; struct vpss_hw_ops hw_ops;
...@@ -492,11 +498,20 @@ static struct platform_driver vpss_driver = { ...@@ -492,11 +498,20 @@ static struct platform_driver vpss_driver = {
static void vpss_exit(void) static void vpss_exit(void)
{ {
iounmap(oper_cfg.vpss_regs_base2);
release_mem_region(VPSS_CLK_CTRL, 4);
platform_driver_unregister(&vpss_driver); platform_driver_unregister(&vpss_driver);
} }
static int __init vpss_init(void) static int __init vpss_init(void)
{ {
if (!request_mem_region(VPSS_CLK_CTRL, 4, "vpss_clock_control"))
return -EBUSY;
oper_cfg.vpss_regs_base2 = ioremap(VPSS_CLK_CTRL, 4);
writel(VPSS_CLK_CTRL_VENCCLKEN |
VPSS_CLK_CTRL_DACCLKEN, oper_cfg.vpss_regs_base2);
return platform_driver_register(&vpss_driver); return platform_driver_register(&vpss_driver);
} }
subsys_initcall(vpss_init); subsys_initcall(vpss_init);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment