static void hp680bl_send_intensity(struct backlight_device *bd) { unsigned long flags; u16 v; int intensity = bd->props.brightness; if (bd->props.power != FB_BLANK_UNBLANK) intensity = 0; if (bd->props.fb_blank != FB_BLANK_UNBLANK) intensity = 0; if (hp680bl_suspended) intensity = 0; spin_lock_irqsave(&bl_lock, flags); if (intensity && current_intensity == 0) { sh_dac_enable(DAC_LCD_BRIGHTNESS); v = inw(HD64461_GPBDR); v &= ~HD64461_GPBDR_LCDOFF; outw(v, HD64461_GPBDR); sh_dac_output(255-(u8)intensity, DAC_LCD_BRIGHTNESS); } else if (intensity == 0 && current_intensity != 0) { sh_dac_output(255-(u8)intensity, DAC_LCD_BRIGHTNESS); sh_dac_disable(DAC_LCD_BRIGHTNESS); v = inw(HD64461_GPBDR); v |= HD64461_GPBDR_LCDOFF; outw(v, HD64461_GPBDR); } else if (intensity) { sh_dac_output(255-(u8)intensity, DAC_LCD_BRIGHTNESS); } spin_unlock_irqrestore(&bl_lock, flags); current_intensity = intensity; }
static void dac_audio_start(void) { #ifdef MACH_HP600 u16 v; v = inw(HD64461_GPADR); v &= ~HD64461_GPADR_SPEAKER; outw(v, HD64461_GPADR); #endif sh_dac_enable(CONFIG_SOUND_SH_DAC_AUDIO_CHANNEL); ctrl_outw(TMU1_TCR_INIT, TMU1_TCR); }
static void dac_audio_start(void) { if (mach_is_hp6xx()) { u16 v = inw(HD64461_GPADR); v &= ~HD64461_GPADR_SPEAKER; outw(v, HD64461_GPADR); } sh_dac_enable(CONFIG_SOUND_SH_DAC_AUDIO_CHANNEL); ctrl_outw(TMU1_TCR_INIT, TMU1_TCR); }
static void dac_audio_start(struct dac_audio_pdata *pdata) { u16 v; u8 v8; /* HP Jornada 680/690 speaker on */ v = inw(HD64461_GPADR); v &= ~HD64461_GPADR_SPEAKER; outw(v, HD64461_GPADR); /* HP Palmtop 620lx/660lx speaker on */ v8 = inb(PKDR); v8 &= ~PKDR_SPEAKER; outb(v8, PKDR); sh_dac_enable(pdata->channel); }