From faeef8e70012fab64c712f1a5895ef15b0e3b8dc Mon Sep 17 00:00:00 2001 From: Sebastien Lorquet Date: Sat, 29 Apr 2017 09:03:32 +0200 Subject: [PATCH] Make value an uint32 before shifting 16 places left --- include/nuttx/spi/spi.h | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/include/nuttx/spi/spi.h b/include/nuttx/spi/spi.h index 92d2ecb4b8..7d59ab0214 100644 --- a/include/nuttx/spi/spi.h +++ b/include/nuttx/spi/spi.h @@ -458,12 +458,12 @@ enum spi_devtype_e /* This builds a SPI devid from its type and index */ -#define SPIDEV_ID(type,index) (((type)&0xFFFF)<<16 | (index)&0xFFFF) +#define SPIDEV_ID(type,index) (((uint32_t)(type)&0xFFFF)<<16 | (uint32_t)(index)&0xFFFF) /* This retrieves the fields from a SPI devid */ -#define SPIDEVID_TYPE (devid) (((devid)>>16)&0xFFFF) -#define SPIDEVID_INDEX(devid) ( (devid) &0xFFFF) +#define SPIDEVID_TYPE (devid) (((uint32_t)(devid)>>16)&0xFFFF) +#define SPIDEVID_INDEX(devid) ( (uint32_t)(devid) &0xFFFF) /* These are replacement definitions for the currently used SPI device indexes. * They are meant as a compatibility measure. it is expected that new drivers