Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 34b2ea1c authored by Mauro Carvalho Chehab's avatar Mauro Carvalho Chehab
Browse files

media: platform: fix some 64-bits warnings



The omap/omap3 and viu drivers are for 32 bit platforms only.
There, a pointer has 32 bits. Now that those drivers build
for 64 bits with COMPILE_TEST, they produce the following
warnings:

drivers/media/platform/omap/omap_vout_vrfb.c: In function 'omap_vout_allocate_vrfb_buffers':
drivers/media/platform/omap/omap_vout_vrfb.c:57:10: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
   memset((void *) vout->smsshado_virt_addr[i], 0,
          ^
drivers/media/platform/fsl-viu.c: In function 'viu_setup_preview':
drivers/media/platform/fsl-viu.c:753:28: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast]
  reg_val.field_base_addr = (u32)dev->ovbuf.base;
                            ^
drivers/media/platform/omap/omap_vout.c: In function 'omap_vout_get_userptr':
drivers/media/platform/omap/omap_vout.c:209:25: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
   *physp = virt_to_phys((void *)virtp);
                         ^
drivers/media/platform/omap3isp/ispccdc.c: In function 'ccdc_config':
drivers/media/platform/omap3isp/ispccdc.c:738:9: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
         (__force void __user *)fpc.fpcaddr,
         ^

Add some typecasts to remove those warnings when building for
64 bits.

Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@s-opensource.com>
parent e935dbfc
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -750,7 +750,7 @@ static int viu_setup_preview(struct viu_dev *dev, struct viu_fh *fh)
	reg_val.status_cfg |= DMA_ACT | INT_DMA_END_EN | INT_FIELD_EN;

	/* setup the base address of the overlay buffer */
	reg_val.field_base_addr = (u32)dev->ovbuf.base;
	reg_val.field_base_addr = (u32)(long)dev->ovbuf.base;

	return 0;
}
+1 −1
Original line number Diff line number Diff line
@@ -198,7 +198,7 @@ static int omap_vout_try_format(struct v4l2_pix_format *pix)
 * omap_vout_get_userptr: Convert user space virtual address to physical
 * address.
 */
static int omap_vout_get_userptr(struct videobuf_buffer *vb, u32 virtp,
static int omap_vout_get_userptr(struct videobuf_buffer *vb, long virtp,
				 u32 *physp)
{
	struct frame_vector *vec;
+2 −2
Original line number Diff line number Diff line
@@ -54,7 +54,7 @@ static int omap_vout_allocate_vrfb_buffers(struct omap_vout_device *vout,
			*count = 0;
			return -ENOMEM;
		}
		memset((void *) vout->smsshado_virt_addr[i], 0,
		memset((void *)(long)vout->smsshado_virt_addr[i], 0,
		       vout->smsshado_size);
	}
	return 0;
+1 −1
Original line number Diff line number Diff line
@@ -735,7 +735,7 @@ static int ccdc_config(struct isp_ccdc_device *ccdc,
				return -ENOMEM;

			if (copy_from_user(fpc_new.addr,
					   (__force void __user *)fpc.fpcaddr,
					   (__force void __user *)(long)fpc.fpcaddr,
					   size)) {
				dma_free_coherent(isp->dev, size, fpc_new.addr,
						  fpc_new.dma);