Lines Matching refs:ba
49 #define vgar(ba, reg) (*(((volatile u_char *)ba)+reg))
50 #define vgaw(ba, reg, val) *(((volatile u_char *)ba)+reg) = ((u_char)val)
186 #define WGfx(ba, idx, val) \
188 vgaw(ba, GCT_ADDRESS, idx); \
189 vgaw(ba, GCT_ADDRESS_W , val); \
192 #define WSeq(ba, idx, val) \
194 vgaw(ba, SEQ_ADDRESS, idx); \
195 vgaw(ba, SEQ_ADDRESS_W , val); \
198 #define WCrt(ba, idx, val) \
200 vgaw(ba, CRT_ADDRESS, idx); \
201 vgaw(ba, CRT_ADDRESS_W , val); \
204 #define WIma(ba, idx, val) \
206 vgaw(ba, IMA_ADDRESS, idx); \
207 vgaw(ba, IMA_ADDRESS_W , val); \
210 #define WAttr(ba, idx, val) \
212 if(vgar(ba, GREG_STATUS1_R)) \
214 vgaw(ba, ACT_ADDRESS_W, idx); \
215 vgaw(ba, ACT_ADDRESS_W, val); \
218 static inline u_char RAttr(volatile void *ba, short idx) {
219 if(vgar(ba, GREG_STATUS1_R))
221 vgaw(ba, ACT_ADDRESS_W, idx);
222 return vgar(ba, ACT_ADDRESS_R);
225 static inline u_char RSeq(volatile void *ba, short idx) {
226 vgaw(ba, SEQ_ADDRESS, idx);
227 return vgar(ba, SEQ_ADDRESS_R);
230 static inline u_char RCrt(volatile void *ba, short idx) {
231 vgaw(ba, CRT_ADDRESS, idx);
232 return vgar(ba, CRT_ADDRESS_R);
235 static inline u_char RGfx(volatile void *ba, short idx) {
236 vgaw(ba, GCT_ADDRESS, idx);
237 return vgar(ba, GCT_ADDRESS_R);