comparison vidix/drivers/radeon_vid.c @ 14363:887dc01d393a

10l, pointers aren't always 32bit
author faust3
date Tue, 04 Jan 2005 22:28:10 +0000
parents 1061d4dea7b7
children 16bc84938c4b
comparison
equal deleted inserted replaced
14362:ac1be377c365 14363:887dc01d393a
231 #endif 231 #endif
232 232
233 #define GETREG(TYPE,PTR,OFFZ) (*((volatile TYPE*)((PTR)+(OFFZ)))) 233 #define GETREG(TYPE,PTR,OFFZ) (*((volatile TYPE*)((PTR)+(OFFZ))))
234 #define SETREG(TYPE,PTR,OFFZ,VAL) (*((volatile TYPE*)((PTR)+(OFFZ))))=VAL 234 #define SETREG(TYPE,PTR,OFFZ,VAL) (*((volatile TYPE*)((PTR)+(OFFZ))))=VAL
235 235
236 #define INREG8(addr) GETREG(uint8_t,(uint32_t)(radeon_mmio_base),addr) 236 #define INREG8(addr) GETREG(uint8_t,(uint8_t*)(radeon_mmio_base),addr)
237 #define OUTREG8(addr,val) SETREG(uint8_t,(uint32_t)(radeon_mmio_base),addr,val) 237 #define OUTREG8(addr,val) SETREG(uint8_t,(uint8_t*)(radeon_mmio_base),addr,val)
238 238
239 static inline uint32_t INREG (uint32_t addr) { 239 static inline uint32_t INREG (uint32_t addr) {
240 uint32_t tmp = GETREG(uint32_t,(uint32_t)(radeon_mmio_base),addr); 240 uint32_t tmp = GETREG(uint32_t,(uint8_t*)(radeon_mmio_base),addr);
241 return le2me_32(tmp); 241 return le2me_32(tmp);
242 } 242 }
243 //#define OUTREG(addr,val) SETREG(uint32_t,(uint32_t)(radeon_mmio_base),addr,val) 243 //#define OUTREG(addr,val) SETREG(uint32_t,(uint8_t*)(radeon_mmio_base),addr,val)
244 #define OUTREG(addr,val) SETREG(uint32_t,(uint32_t)(radeon_mmio_base),addr,le2me_32(val)) 244 #define OUTREG(addr,val) SETREG(uint32_t,(uint8_t*)(radeon_mmio_base),addr,le2me_32(val))
245 #define OUTREGP(addr,val,mask) \ 245 #define OUTREGP(addr,val,mask) \
246 do { \ 246 do { \
247 unsigned int _tmp = INREG(addr); \ 247 unsigned int _tmp = INREG(addr); \
248 _tmp &= (mask); \ 248 _tmp &= (mask); \
249 _tmp |= (val); \ 249 _tmp |= (val); \