Subversion Repositories shark

Compare Revisions

Ignore whitespace Rev 489 → Rev 490

/shark/trunk/drivers/fb/matrox/matroxfb_base.c
124,6 → 124,8
static int default_cmode = CMODE_NVRAM;
#endif
 
void *sem_sync;
 
static void matroxfb_unregister_device(struct matrox_fb_info* minfo);
 
/* --------------------------------------------------------------------- */
213,6 → 215,7
mga_outl(M_ICLEAR, 0x20);
ACCESS_FBINFO(crtc1.vsync.cnt)++;
matroxfb_crtc1_panpos(PMINFO2);
shark_internal_sem_post(sem_sync);
//wake_up_interruptible(&ACCESS_FBINFO(crtc1.vsync.wait));
handled = 1;
}
219,6 → 222,7
if (status & 0x200) {
mga_outl(M_ICLEAR, 0x200);
ACCESS_FBINFO(crtc2.vsync.cnt)++;
shark_internal_sem_post(sem_sync);
//wake_up_interruptible(&ACCESS_FBINFO(crtc2.vsync.wait));
handled = 1;
}
267,7 → 271,6
}
 
int matroxfb_wait_for_sync(WPMINFO u_int32_t crtc) {
wait_queue_t __wait;
struct matrox_vsync *vs;
unsigned int cnt;
int ret;
289,10 → 292,11
if (ret) {
return ret;
}
//init_waitqueue_entry(&__wait, current);
 
shark_internal_sem_wait(sem_sync);
 
cnt = vs->cnt;
ret = 1;//ret = wait_event_interruptible_timeout(vs->wait, cnt != vs->cnt, HZ/10);
ret = 1;
if (ret < 0) {
return ret;
}
2011,6 → 2015,7
init_rwsem(&ACCESS_FBINFO(crtc2.lock));
init_rwsem(&ACCESS_FBINFO(altout.lock));
ACCESS_FBINFO(irq_flags) = 0;
shark_internal_sem_create(&sem_sync,0);
//init_waitqueue_head(&ACCESS_FBINFO(crtc1.vsync.wait));
//init_waitqueue_head(&ACCESS_FBINFO(crtc2.vsync.wait));
ACCESS_FBINFO(crtc1.panpos) = -1;