diff options
Diffstat (limited to 'drivers/media/rc/st_rc.c')
-rw-r--r-- | drivers/media/rc/st_rc.c | 16 |
1 files changed, 7 insertions, 9 deletions
diff --git a/drivers/media/rc/st_rc.c b/drivers/media/rc/st_rc.c index 5c15135..0e758ae 100644 --- a/drivers/media/rc/st_rc.c +++ b/drivers/media/rc/st_rc.c @@ -22,8 +22,8 @@ struct st_rc_device { int irq; int irq_wake; struct clk *sys_clock; - void *base; /* Register base address */ - void *rx_base;/* RX Register base address */ + volatile void __iomem *base; /* Register base address */ + volatile void __iomem *rx_base;/* RX Register base address */ struct rc_dev *rdev; bool overclocking; int sample_mult; @@ -267,8 +267,8 @@ static int st_rc_probe(struct platform_device *pdev) res = platform_get_resource(pdev, IORESOURCE_MEM, 0); rc_dev->base = devm_ioremap_resource(dev, res); - if (IS_ERR(rc_dev->base)) { - ret = PTR_ERR(rc_dev->base); + if (IS_ERR((__force void *)rc_dev->base)) { + ret = PTR_ERR((__force void *)rc_dev->base); goto err; } @@ -278,7 +278,7 @@ static int st_rc_probe(struct platform_device *pdev) rc_dev->rx_base = rc_dev->base; - rc_dev->rstc = reset_control_get(dev, NULL); + rc_dev->rstc = reset_control_get_optional(dev, NULL); if (IS_ERR(rc_dev->rstc)) rc_dev->rstc = NULL; @@ -376,9 +376,10 @@ static int st_rc_resume(struct device *dev) return 0; } -static SIMPLE_DEV_PM_OPS(st_rc_pm_ops, st_rc_suspend, st_rc_resume); #endif +static SIMPLE_DEV_PM_OPS(st_rc_pm_ops, st_rc_suspend, st_rc_resume); + #ifdef CONFIG_OF static struct of_device_id st_rc_match[] = { { .compatible = "st,comms-irb", }, @@ -391,11 +392,8 @@ MODULE_DEVICE_TABLE(of, st_rc_match); static struct platform_driver st_rc_driver = { .driver = { .name = IR_ST_NAME, - .owner = THIS_MODULE, .of_match_table = of_match_ptr(st_rc_match), -#ifdef CONFIG_PM .pm = &st_rc_pm_ops, -#endif }, .probe = st_rc_probe, .remove = st_rc_remove, |