Skip to content

Commit

Permalink
[media] media: s5p-mfc: fix broken pointer cast on 64bit arch
Browse files Browse the repository at this point in the history
Unsigned int cannot be used to store casted pointer on 64bit
architecture, so correct such casts to properly use unsigned long
variables.

Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
Signed-off-by: Kamil Debski <k.debski@samsung.com>
[k.debski@samsung.com: removed volatile and __iomem from cast]

Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
  • Loading branch information
Marek Szyprowski authored and Mauro Carvalho Chehab committed Apr 1, 2015
1 parent 05b676a commit a0f10c1
Show file tree
Hide file tree
Showing 3 changed files with 7 additions and 7 deletions.
2 changes: 1 addition & 1 deletion drivers/media/platform/s5p-mfc/s5p_mfc_opr.h
Original file line number Diff line number Diff line change
Expand Up @@ -302,7 +302,7 @@ struct s5p_mfc_hw_ops {
void (*write_info)(struct s5p_mfc_ctx *ctx, unsigned int data,
unsigned int ofs);
unsigned int (*read_info)(struct s5p_mfc_ctx *ctx,
unsigned int ofs);
unsigned long ofs);
int (*get_dspl_y_adr)(struct s5p_mfc_dev *dev);
int (*get_dec_y_adr)(struct s5p_mfc_dev *dev);
int (*get_dspl_status)(struct s5p_mfc_dev *dev);
Expand Down
6 changes: 3 additions & 3 deletions drivers/media/platform/s5p-mfc/s5p_mfc_opr_v5.c
Original file line number Diff line number Diff line change
Expand Up @@ -263,15 +263,15 @@ static void s5p_mfc_release_dev_context_buffer_v5(struct s5p_mfc_dev *dev)
static void s5p_mfc_write_info_v5(struct s5p_mfc_ctx *ctx, unsigned int data,
unsigned int ofs)
{
writel(data, (volatile void __iomem *)(ctx->shm.virt + ofs));
writel(data, (void *)(ctx->shm.virt + ofs));
wmb();
}

static unsigned int s5p_mfc_read_info_v5(struct s5p_mfc_ctx *ctx,
unsigned int ofs)
unsigned long ofs)
{
rmb();
return readl((volatile void __iomem *)(ctx->shm.virt + ofs));
return readl((void *)(ctx->shm.virt + ofs));
}

static void s5p_mfc_dec_calc_dpb_size_v5(struct s5p_mfc_ctx *ctx)
Expand Down
6 changes: 3 additions & 3 deletions drivers/media/platform/s5p-mfc/s5p_mfc_opr_v6.c
Original file line number Diff line number Diff line change
Expand Up @@ -1852,17 +1852,17 @@ static void s5p_mfc_write_info_v6(struct s5p_mfc_ctx *ctx, unsigned int data,
unsigned int ofs)
{
s5p_mfc_clock_on();
writel(data, (volatile void __iomem *)((unsigned long)ofs));
writel(data, (void *)((unsigned long)ofs));
s5p_mfc_clock_off();
}

static unsigned int
s5p_mfc_read_info_v6(struct s5p_mfc_ctx *ctx, unsigned int ofs)
s5p_mfc_read_info_v6(struct s5p_mfc_ctx *ctx, unsigned long ofs)
{
int ret;

s5p_mfc_clock_on();
ret = readl((volatile void __iomem *)((unsigned long)ofs));
ret = readl((void *)ofs);
s5p_mfc_clock_off();

return ret;
Expand Down

0 comments on commit a0f10c1

Please sign in to comment.