ucontrol->value.integer.value[0] = ! read_audio_gpio(gp); 
ucontrol->value.integer.value[0] = !check_audio_gpio(gp); 
static int tumbler_get_mute_switch(snd_kcontrol_t *kcontrol, snd_ctl_elem_value_t *ucontrol){	pmac_t *chip = snd_kcontrol_chip(kcontrol);	pmac_tumbler_t *mix;	pmac_gpio_t *gp;	if (! (mix = chip->mixer_data))		return -ENODEV;	switch(kcontrol->private_value) {	case TUMBLER_MUTE_HP:		gp = &mix->hp_mute;	break;	case TUMBLER_MUTE_AMP:		gp = &mix->amp_mute;	break;	case TUMBLER_MUTE_LINE:		gp = &mix->line_mute;	break;	default:		gp = NULL;	}	if (gp == NULL)		return -EINVAL;	ucontrol->value.integer.value[0] = ! read_audio_gpio(gp);	return 0;}
4520	/local/tlutelli/issta_data/temp/c/2005_temp/2005/4520/4be8dc7ff69182610b40a078b9815bcdf27e0c49/tumbler.c/clean/sound/ppc/tumbler.c