static void progress_timer_handler(unsigned long data) { int i; if (s3cfb_check_progress((struct fb_info *)data, progress_pos, CENTERBAR_WIDTH)) { for(i = 0; i < CENTERBAR_WIDTH; i++) { s3cfb_update_framebuffer((struct fb_info *)data, progress_pos++, PROGRESS_BAR_START_Y, (void*)anycall_progress_bar_center, 1, PROGRESS_BAR_HEIGHT); } s3cfb_update_framebuffer((struct fb_info *)data, progress_pos, PROGRESS_BAR_START_Y, (void*)anycall_progress_bar_right, PROGRESS_BAR_WIDTH, PROGRESS_BAR_HEIGHT); progress_timer.expires = (get_jiffies_64() + (HZ/14)); progress_timer.function = progress_timer_handler; add_timer(&progress_timer); } else s3cfb_stop_progress(); }
static void progress_timer_handler(unsigned long data) { int i; for(i = 0; i < 4; i++) { s3cfb_update_framebuffer((struct fb_info *)data, PROGRESS_BAR_START_X, progress_pos++, (void*)anycall_progress_bar_center, 1, PROGRESS_BAR_HEIGHT); } if (progress_pos + PROGRESS_BAR_HEIGHT >= PROGRESS_BAR_RIGHT_POS ) { s3cfb_stop_progress(); } else { progress_timer.expires = (get_jiffies_64() + (HZ/20)); progress_timer.function = progress_timer_handler; add_timer(&progress_timer); } }