[PATCH 1/1] drivers: i2c: silence a compile warning in i2c-s3c2410.c

Wolfram Sang wsa at the-dreams.de
Tue Jan 14 14:09:10 EST 2014


On Fri, Jan 10, 2014 at 12:03:45PM +0900, Pankaj Dubey wrote:
> If used 64 bit compiler GCC warns that:
> 
> drivers/i2c/busses/i2c-s3c2410.c: In function ‘s3c24xx_get_device_quirks’:
> drivers/i2c/busses/i2c-s3c2410.c:168:10: warning: cast from pointer to integer
> of different size [-Wpointer-to-int-cast]
> 
> This patch fixes this by converting "unsigned int" to "unsigned long".

Maybe switch to kernel_ulong_t? Since this is used in mod_devicetable.h
all over.

> 
> CC: Kukjin Kim <kgene.kim at samsung.com>
> CC: Wolfram Sang <wsa at the-dreams.de>
> CC: linux-i2c at vger.kernel.org
> Signed-off-by: Pankaj Dubey <pankaj.dubey at samsung.com>
> ---
>  drivers/i2c/busses/i2c-s3c2410.c |    7 ++++---
>  1 file changed, 4 insertions(+), 3 deletions(-)
> 
> diff --git a/drivers/i2c/busses/i2c-s3c2410.c b/drivers/i2c/busses/i2c-s3c2410.c
> index bf8fb94..447dd98 100644
> --- a/drivers/i2c/busses/i2c-s3c2410.c
> +++ b/drivers/i2c/busses/i2c-s3c2410.c
> @@ -101,7 +101,7 @@ enum s3c24xx_i2c_state {
>  
>  struct s3c24xx_i2c {
>  	wait_queue_head_t	wait;
> -	unsigned int            quirks;
> +	unsigned long            quirks;

The indentation is corrupted.

>  	unsigned int		suspended:1;
>  
>  	struct i2c_msg		*msg;
> @@ -160,12 +160,13 @@ MODULE_DEVICE_TABLE(of, s3c24xx_i2c_match);
>   * Get controller type either from device tree or platform device variant.
>  */
>  
> -static inline unsigned int s3c24xx_get_device_quirks(struct platform_device *pdev)
> +static inline unsigned long
> +	s3c24xx_get_device_quirks(struct platform_device *pdev)

Keep it one line please, ignoring the 80 char thing.

>  {
>  	if (pdev->dev.of_node) {
>  		const struct of_device_id *match;
>  		match = of_match_node(s3c24xx_i2c_match, pdev->dev.of_node);
> -		return (unsigned int)match->data;
> +		return (unsigned long)match->data;
>  	}
>  
>  	return platform_get_device_id(pdev)->driver_data;

The last line also returns kernel_ulong_t. No real difference, but using
it is a little more consistent.

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 836 bytes
Desc: Digital signature
URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20140114/e480c926/attachment-0001.sig>


More information about the linux-arm-kernel mailing list