diff options
author | Senthilvadivu Guruswamy <svadivu@ti.com> | 2011-01-24 01:22:04 -0500 |
---|---|---|
committer | Tomi Valkeinen <tomi.valkeinen@ti.com> | 2011-03-11 08:46:21 -0500 |
commit | ea9da36a304eed585fc5ef89c0f1c460eca61b48 (patch) | |
tree | b1e14d36fc7c25f845677c6d3249311d0304cd09 /drivers/video/omap2/dss/rfbi.c | |
parent | a06b62f8004bd95c132fa312e8593c9a10f466ec (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.c | 10 |
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 | |||
41 | struct rfbi_reg { u16 idx; }; | 39 | struct 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; |