kernels/linux-2.4.0/drivers/video/sa1100fb.c
/*
 *  sa1100fb_inter_handler():
 *	Interrupt handler for LCD controller.  Processes disable done interrupt (LDD)
 *      to reenable controller if controller was disabled to change register values.
 */
Interrupt handler for LCD controller.  Processes disable done interrupt (LDD)
to reenable controller if controller was disabled to change register values.
Interrupt handler for LCD controller . Processes disable done interrupt ( LDD ) to reenable controller if controller was disabled to change register values .
static void sa1100fb_inter_handler(int irq, void *dev_id, struct pt_regs *regs)
{
        if (LCSR & LCSR_LDD) {
                int controller_state = current_par.controller_state;
		LCCR0 |= LCCR0_LDM;	      
		current_par.controller_state = LCD_MODE_DISABLED;
		if (controller_state == LCD_MODE_DISABLE_BEFORE_ENABLE) {
		        DPRINTK("sa1100fb_inter_handler: re-enabling LCD controller\n");
			sa1100fb_enable_lcd_controller();
		} else {
			if (machine_is_assabet()) {
#ifdef CONFIG_SA1100_ASSABET
				BCR_clear(BCR_LCD_ON);
#endif
			} else if (machine_is_bitsy()) {
#ifdef CONFIG_SA1100_BITSY
		                if (current_par.controller_state != LCD_MODE_DISABLE_BEFORE_ENABLE)
		                        clr_bitsy_egpio(EGPIO_BITSY_LCD_ON | EGPIO_BITSY_LCD_PCI | EGPIO_BITSY_LCD_5V_ON | EGPIO_BITSY_LVDD_ON);
#endif
			} else if (machine_is_penny()) {
#ifdef CONFIG_SA1100_PENNY
				FpgaLcdCS1 = 0x000;	
				FpgaPortI &= ~LCD_ON;	
#endif
			} else if (machine_is_tifon()) {
				GPCR = GPIO_GPIO(24);	
			}
		}
	}
	LCSR = 0;		      
}
static void sa1100fb_inter_handler ( int irq , void * dev_id , struct pt_regs * regs ) { if ( LCSR & LCSR_LDD ) { int controller_state = current_par . controller_state ; LCCR0 |= LCCR0_LDM ; current_par . controller_state = LCD_MODE_DISABLED ; if ( controller_state == LCD_MODE_DISABLE_BEFORE_ENABLE ) { DPRINTK ( " \n " ) ; sa1100fb_enable_lcd_controller ( ) ; } else { if ( machine_is_assabet ( ) ) { #ifdef CONFIG_SA1100_ASSABET BCR_clear ( BCR_LCD_ON ) ; #endif } else if ( machine_is_bitsy ( ) ) { #ifdef CONFIG_SA1100_BITSY if ( current_par . controller_state != LCD_MODE_DISABLE_BEFORE_ENABLE ) clr_bitsy_egpio ( EGPIO_BITSY_LCD_ON | EGPIO_BITSY_LCD_PCI | EGPIO_BITSY_LCD_5V_ON | EGPIO_BITSY_LVDD_ON ) ; #endif } else if ( machine_is_penny ( ) ) { #ifdef CONFIG_SA1100_PENNY FpgaLcdCS1 = 0x000 ; FpgaPortI &= ~ LCD_ON ; #endif } else if ( machine_is_tifon ( ) ) { GPCR = GPIO_GPIO ( 24 ) ; } } } LCSR = 0 ; }
sa1100fb_inter_handler():
      Interrupt handler for LCD controller.
sa1100fb_inter_handler () : Interrupt handler for LCD controller .
/* Disable Done Flag is set */ /* Mask LCD Disable Done Interrupt */ /*
			 * Second half of sa1100fb_disable_lcd_controller()
			 */ /* LCD Backlight to 0%    */ /* Turn off LCD Backlight */ /* turn off display */ /* Clear LCD Status Register */