aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/video/omap2/dss/rfbi.c
diff options
context:
space:
mode:
authorSenthilvadivu Guruswamy <svadivu@ti.com>2011-01-24 01:22:04 -0500
committerTomi Valkeinen <tomi.valkeinen@ti.com>2011-03-11 08:46:21 -0500
commitea9da36a304eed585fc5ef89c0f1c460eca61b48 (patch)
treeb1e14d36fc7c25f845677c6d3249311d0304cd09 /drivers/video/omap2/dss/rfbi.c
parenta06b62f8004bd95c132fa312e8593c9a10f466ec (diff)
OMAP2,3: DSS2: Use platform device to get baseaddr
DSS, DISPC, DSI, RFBI, VENC baseaddr can be obtained from platform_get_resource(). This API in turn picks the right silicon baseaddr from the hwmod database. So hardcoding of base addr could be removed. Reviewed-by: Paul Walmsley <paul@pwsan.com> Reviewed-by: Kevin Hilman <khilman@ti.com> Tested-by: Kevin Hilman <khilman@ti.com> Signed-off-by: Sumit Semwal <sumit.semwal@ti.com> Signed-off-by: Senthilvadivu Guruswamy <svadivu@ti.com> Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
Diffstat (limited to 'drivers/video/omap2/dss/rfbi.c')
-rw-r--r--drivers/video/omap2/dss/rfbi.c10
1 files changed, 7 insertions, 3 deletions
diff --git a/drivers/video/omap2/dss/rfbi.c b/drivers/video/omap2/dss/rfbi.c
index 5f186484984f..6dbb95d557f8 100644
--- a/drivers/video/omap2/dss/rfbi.c
+++ b/drivers/video/omap2/dss/rfbi.c
@@ -36,8 +36,6 @@
36#include <plat/display.h> 36#include <plat/display.h>
37#include "dss.h" 37#include "dss.h"
38 38
39#define RFBI_BASE 0x48050800
40
41struct rfbi_reg { u16 idx; }; 39struct rfbi_reg { u16 idx; };
42 40
43#define RFBI_REG(idx) ((const struct rfbi_reg) { idx }) 41#define RFBI_REG(idx) ((const struct rfbi_reg) { idx })
@@ -1019,6 +1017,7 @@ static int omap_rfbihw_probe(struct platform_device *pdev)
1019{ 1017{
1020 u32 rev; 1018 u32 rev;
1021 u32 l; 1019 u32 l;
1020 struct resource *rfbi_mem;
1022 1021
1023 rfbi.pdev = pdev; 1022 rfbi.pdev = pdev;
1024 1023
@@ -1028,7 +1027,12 @@ static int omap_rfbihw_probe(struct platform_device *pdev)
1028 atomic_set(&rfbi.cmd_fifo_full, 0); 1027 atomic_set(&rfbi.cmd_fifo_full, 0);
1029 atomic_set(&rfbi.cmd_pending, 0); 1028 atomic_set(&rfbi.cmd_pending, 0);
1030 1029
1031 rfbi.base = ioremap(RFBI_BASE, SZ_256); 1030 rfbi_mem = platform_get_resource(rfbi.pdev, IORESOURCE_MEM, 0);
1031 if (!rfbi_mem) {
1032 DSSERR("can't get IORESOURCE_MEM RFBI\n");
1033 return -EINVAL;
1034 }
1035 rfbi.base = ioremap(rfbi_mem->start, resource_size(rfbi_mem));
1032 if (!rfbi.base) { 1036 if (!rfbi.base) {
1033 DSSERR("can't ioremap RFBI\n"); 1037 DSSERR("can't ioremap RFBI\n");
1034 return -ENOMEM; 1038 return -ENOMEM;