drivers/media/dvb/frontends/ves1820.c: In function `ves1820_setup_reg0': drivers/media/dvb/frontends/ves1820.c:244: error: invalid lvalue in assignment drivers/media/dvb/frontends/ves1820.c:244: error: invalid lvalue in assignment drivers/media/dvb/frontends/ves1820.c: In function `ves1820_attach': drivers/media/dvb/frontends/ves1820.c:541: error: invalid lvalue in assignment drivers/media/dvb/frontends/ves1820.c:541: error: invalid lvalue in assignment drivers/media/dvb/frontends/ves1820.c:544: error: invalid lvalue in assignment drivers/media/dvb/frontends/ves1820.c:544: error: invalid lvalue in assignment drivers/media/dvb/frontends/ves1820.c:545: error: invalid lvalue in assignment drivers/media/dvb/frontends/ves1820.c:545: error: invalid lvalue in assignment drivers/media/dvb/frontends/ves1820.c:546: error: invalid lvalue in assignment drivers/media/dvb/frontends/ves1820.c:546: error: invalid lvalue in assignment drivers/media/dvb/frontends/ves1820.c:547: error: invalid lvalue in assignment drivers/media/dvb/frontends/ves1820.c:547: error: invalid lvalue in assignment --- 25-akpm/drivers/media/dvb/frontends/ves1820.c | 24 ++++++++++++++++-------- 1 files changed, 16 insertions(+), 8 deletions(-) diff -puN drivers/media/dvb/frontends/ves1820.c~gcc-35-dvb drivers/media/dvb/frontends/ves1820.c --- 25/drivers/media/dvb/frontends/ves1820.c~gcc-35-dvb Fri Jan 23 16:19:41 2004 +++ 25-akpm/drivers/media/dvb/frontends/ves1820.c Fri Jan 23 16:23:30 2004 @@ -48,23 +48,31 @@ static int verbose; */ #define SET_PWM(data,pwm) do { \ - (long) data &= ~0xff; \ - (long) data |= pwm; \ + long d = (long)data; \ + d &= ~0xff; \ + d |= pwm; \ + data = (void *)d; \ } while (0) #define SET_REG0(data,reg0) do { \ - (long) data &= ~(0xff << 8); \ - (long) data |= reg0 << 8; \ + long d = (long)data; \ + d &= ~(0xff << 8); \ + d |= reg0 << 8; \ + data = (void *)d; \ } while (0) #define SET_TUNER(data,type) do { \ - (long) data &= ~(0xff << 16); \ - (long) data |= type << 16; \ + long d = (long)data; \ + d &= ~(0xff << 16); \ + d |= type << 16; \ + data = (void *)d; \ } while (0) #define SET_DEMOD_ADDR(data,type) do { \ - (long) data &= ~(0xff << 24); \ - (long) data |= type << 24; \ + long d = (long)data; \ + d &= ~(0xff << 24); \ + d |= type << 24; \ + data = (void *)d; \ } while (0) #define GET_PWM(data) ((u8) ((long) data & 0xff)) _