From a36e98889ff0c3f8b25eb9c3f41790a8ec224175 Mon Sep 17 00:00:00 2001 From: Joel Sherrill Date: Mon, 2 Dec 2002 19:14:27 +0000 Subject: 2002-12-02 Joel Sherrill * src/dosfs/fat.h, src/dosfs/msdos.h: Added casts to remove warnings on 16 bit targets like the h8300. --- cpukit/libfs/ChangeLog | 5 +++++ cpukit/libfs/src/dosfs/fat.h | 28 ++++++++++++++-------------- cpukit/libfs/src/dosfs/msdos.h | 2 +- 3 files changed, 20 insertions(+), 15 deletions(-) diff --git a/cpukit/libfs/ChangeLog b/cpukit/libfs/ChangeLog index a4195bc0d1..c29bb90d7e 100644 --- a/cpukit/libfs/ChangeLog +++ b/cpukit/libfs/ChangeLog @@ -1,3 +1,8 @@ +2002-12-02 Joel Sherrill + + * src/dosfs/fat.h, src/dosfs/msdos.h: Added casts to remove warnings + on 16 bit targets like the h8300. + 2002-11-19 Ralf Corsepius * configure.ac: Cosmetical fixes. diff --git a/cpukit/libfs/src/dosfs/fat.h b/cpukit/libfs/src/dosfs/fat.h index f0aaf21c98..ef7fa7b8d4 100644 --- a/cpukit/libfs/src/dosfs/fat.h +++ b/cpukit/libfs/src/dosfs/fat.h @@ -51,10 +51,10 @@ extern "C" { */ #if (CPU_BIG_ENDIAN == TRUE) -# define CF_LE_W(v) CPU_swap_u16(v) -# define CF_LE_L(v) CPU_swap_u32(v) -# define CT_LE_W(v) CPU_swap_u16(v) -# define CT_LE_L(v) CPU_swap_u32(v) +# define CF_LE_W(v) CPU_swap_u16((unsigned16)v) +# define CF_LE_L(v) CPU_swap_u32((unsigned32)v) +# define CT_LE_W(v) CPU_swap_u16((unsigned16)v) +# define CT_LE_L(v) CPU_swap_u32((unsigned32)v) #else # define CF_LE_W(v) (v) # define CF_LE_L(v) (v) @@ -81,24 +81,24 @@ extern "C" { #define FAT_FAT16 0x02 #define FAT_FAT32 0x04 -#define FAT_UNDEFINED_VALUE 0xFFFFFFFF +#define FAT_UNDEFINED_VALUE (unsigned32)0xFFFFFFFF #define FAT_FAT12_EOC 0x0FFF #define FAT_FAT16_EOC 0xFFFF -#define FAT_FAT32_EOC 0x0FFFFFFF +#define FAT_FAT32_EOC (unsigned32)0x0FFFFFFF #define FAT_FAT12_FREE 0x0000 #define FAT_FAT16_FREE 0x0000 #define FAT_FAT32_FREE 0x00000000 -#define FAT_GENFAT_EOC 0xFFFFFFFF -#define FAT_GENFAT_FREE 0x00000000 +#define FAT_GENFAT_EOC (unsigned32)0xFFFFFFFF +#define FAT_GENFAT_FREE (unsigned32)0x00000000 #define FAT_FAT12_SHIFT 0x04 #define FAT_FAT12_MASK 0x00000FFF #define FAT_FAT16_MASK 0x0000FFFF -#define FAT_FAT32_MASK 0x0FFFFFFF +#define FAT_FAT32_MASK (unsigned32)0x0FFFFFFF #define FAT_MAX_BPB_SIZE 90 @@ -111,11 +111,11 @@ extern "C" { (unsigned16)( (*((unsigned8 *)(x) + (ofs))) | \ ((*((unsigned8 *)(x) + (ofs) + 1)) << 8) ) -#define FAT_VAL32(x, ofs) \ - (unsigned32)( (*((unsigned8 *)(x) + (ofs))) | \ - ((*((unsigned8 *)(x) + (ofs) + 1)) << 8) | \ - ((*((unsigned8 *)(x) + (ofs) + 2)) << 16) | \ - ((*((unsigned8 *)(x) + (ofs) + 3)) << 24) ) +#define FAT_VAL32(x, ofs) \ + (unsigned32)( (unsigned32)(*((unsigned8 *)(x) + (ofs))) | \ + ((unsigned32)(*((unsigned8 *)(x) + (ofs) + 1)) << 8) | \ + ((unsigned32)(*((unsigned8 *)(x) + (ofs) + 2)) << 16) | \ + ((unsigned32)(*((unsigned8 *)(x) + (ofs) + 3)) << 24) ) /* macros to access boot sector fields */ #define FAT_BR_BYTES_PER_SECTOR(x) FAT_VAL16(x, 11) diff --git a/cpukit/libfs/src/dosfs/msdos.h b/cpukit/libfs/src/dosfs/msdos.h index a9216b1ed3..4262d515ef 100644 --- a/cpukit/libfs/src/dosfs/msdos.h +++ b/cpukit/libfs/src/dosfs/msdos.h @@ -100,7 +100,7 @@ typedef rtems_filesystem_node_types_t msdos_node_type_t; #define MSDOS_EXTRACT_CLUSTER_NUM(p) \ (unsigned32)( (CF_LE_W(*MSDOS_DIR_FIRST_CLUSTER_LOW(p))) | \ - ((CF_LE_W((*MSDOS_DIR_FIRST_CLUSTER_HI(p))))<<16) ) + ((unsigned32)(CF_LE_W((*MSDOS_DIR_FIRST_CLUSTER_HI(p))))<<16) ) /* * Fields offset in 32 bytes long FAT Directory Entry -- cgit v1.2.3