From 0b5b8f5a74b77f53bf73143d911616a698a1a256 Mon Sep 17 00:00:00 2001 From: Ian Abbott <abbotti@mev.co.uk> Date: Fri, 7 Aug 2009 14:57:47 +0000 Subject: [PATCH] Take account of arch's bitfield order. --- comedi/drivers/s526.c | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/comedi/drivers/s526.c b/comedi/drivers/s526.c index f67925e5..818b1c94 100644 --- a/comedi/drivers/s526.c +++ b/comedi/drivers/s526.c @@ -43,6 +43,7 @@ comedi_config /dev/comedi0 s526 0x2C0,0x3 #include <linux/comedidev.h> #include <linux/ioport.h> +#include <asm/byteorder.h> #define S526_SIZE 64 @@ -113,6 +114,7 @@ static const int s526_ports[] = { }; typedef struct { +#if defined (__LITTLE_ENDIAN_BITFIELD) unsigned short coutSource:1; unsigned short coutPolarity:1; unsigned short autoLoadResetRcap:3; @@ -124,6 +126,21 @@ typedef struct { unsigned short outputRegLatchCtrl:1; unsigned short preloadRegSel:1; unsigned short reserved:1; +#elif defined(__BIG_ENDIAN_BITFIELD) + unsigned short reserved:1; + unsigned short preloadRegSel:1; + unsigned short outputRegLatchCtrl:1; + unsigned short countDirCtrl:1; + unsigned short countDir:1; + unsigned short clockSource:2; + unsigned short ctEnableCtrl:2; + unsigned short hwCtEnableSource:2; + unsigned short autoLoadResetRcap:3; + unsigned short coutPolarity:1; + unsigned short coutSource:1; +#else +#error Unknown bit field order +#endif } counter_mode_register_t; union cmReg { -- 2.26.2