Exemplo n.º 1
0
static void lineout_work_queue(struct work_struct *work)
{
	msleep(300);

	if(!is_support_dock()){
		printk("%s: Not support dock\n",__func__);
		lineout_alive = false;
		switch_set_state(&hs_data->ldev, NO_DEVICE);
		return;
	}

	/* check if audio stand is inserted */
	if(!isAudioStandIn()){
		printk("LINEOUT: No Audio Stand in\n");
		return;
	}

	if (gpio_get_value(LINEOUT_GPIO) == 0){
		printk("LINEOUT: LineOut inserted\n");
		lineout_alive = true;
		audio_stand_route(true);
		switch_set_state(&hs_data->ldev, LINEOUT_IN);
	}else if(gpio_get_value(LINEOUT_GPIO)){
		printk("LINEOUT: LineOut removed\n");
		lineout_alive = false;
		audio_stand_route(false);
		switch_set_state(&hs_data->ldev, NO_DEVICE);
	}

}
Exemplo n.º 2
0
static void lineout_work_queue(struct work_struct *work)
{
	msleep(300);
	/* check if audio stand is inserted */
	if(!isAudioStandIn()){
		printk("LINEOUT: No Audio Stand in\n");
		return;
	}

	if (gpio_get_value(LINEOUT_GPIO) == 0){
		printk("LINEOUT: LineOut inserted\n");
		lineout_alive = true;
		audio_stand_route(true);
	}else if(gpio_get_value(LINEOUT_GPIO)){
		printk("LINEOUT: LineOut removed\n");
		lineout_alive = false;
		audio_stand_route(false);
	}

}