static void config_timers(void) { /* Stop timers */ bfin_write_TIMER_DISABLE(TIMDIS_SP|TIMDIS_SPS|TIMDIS_REV| TIMDIS_LP|TIMDIS_PS_CLS); SSYNC(); /* LP, timer 6 */ bfin_write_TIMER_LP_CONFIG(TIMER_CONFIG|PULSE_HI); bfin_write_TIMER_LP_WIDTH(1); bfin_write_TIMER_LP_PERIOD(DCLKS_PER_LINE); SSYNC(); /* SPS, timer 1 */ bfin_write_TIMER_SPS_CONFIG(TIMER_CONFIG|PULSE_HI); bfin_write_TIMER_SPS_WIDTH(DCLKS_PER_LINE*2); bfin_write_TIMER_SPS_PERIOD((DCLKS_PER_LINE * (LCD_Y_RES+U_LINES))); SSYNC(); /* SP, timer 0 */ bfin_write_TIMER_SP_CONFIG(TIMER_CONFIG|PULSE_HI); bfin_write_TIMER_SP_WIDTH(1); bfin_write_TIMER_SP_PERIOD(DCLKS_PER_LINE); SSYNC(); /* PS & CLS, timer 7 */ bfin_write_TIMER_PS_CLS_CONFIG(TIMER_CONFIG); bfin_write_TIMER_PS_CLS_WIDTH(LCD_X_RES + START_LINES); bfin_write_TIMER_PS_CLS_PERIOD(DCLKS_PER_LINE); SSYNC(); #ifdef NO_BL /* REV, timer 5 */ bfin_write_TIMER_REV_CONFIG(TIMER_CONFIG|PULSE_HI); bfin_write_TIMER_REV_WIDTH(DCLKS_PER_LINE); bfin_write_TIMER_REV_PERIOD(DCLKS_PER_LINE*2); SSYNC(); #endif }
static void config_timers(void) { bfin_write_TIMER_DISABLE(TIMDIS_SP|TIMDIS_SPS|TIMDIS_REV| TIMDIS_LP|TIMDIS_PS_CLS); SSYNC(); bfin_write_TIMER_LP_CONFIG(TIMER_CONFIG|PULSE_HI); bfin_write_TIMER_LP_WIDTH(1); bfin_write_TIMER_LP_PERIOD(DCLKS_PER_LINE); SSYNC(); bfin_write_TIMER_SPS_CONFIG(TIMER_CONFIG|PULSE_HI); bfin_write_TIMER_SPS_WIDTH(DCLKS_PER_LINE*2); bfin_write_TIMER_SPS_PERIOD((DCLKS_PER_LINE * (LCD_Y_RES+U_LINES))); SSYNC(); bfin_write_TIMER_SP_CONFIG(TIMER_CONFIG|PULSE_HI); bfin_write_TIMER_SP_WIDTH(1); bfin_write_TIMER_SP_PERIOD(DCLKS_PER_LINE); SSYNC(); bfin_write_TIMER_PS_CLS_CONFIG(TIMER_CONFIG); bfin_write_TIMER_PS_CLS_WIDTH(LCD_X_RES + START_LINES); bfin_write_TIMER_PS_CLS_PERIOD(DCLKS_PER_LINE); SSYNC(); #ifdef NO_BL bfin_write_TIMER_REV_CONFIG(TIMER_CONFIG|PULSE_HI); bfin_write_TIMER_REV_WIDTH(DCLKS_PER_LINE); bfin_write_TIMER_REV_PERIOD(DCLKS_PER_LINE*2); SSYNC(); #endif }