cs46xx_suspend(card, 0); 
cs46xx_suspend(card, PMSG_ON); 
static int cs_ioctl_mixdev(struct inode *inode, struct file *file, unsigned int cmd,				unsigned long arg){	struct ac97_codec *codec = (struct ac97_codec *)file->private_data;	struct cs_card *card=NULL;	struct list_head *entry;	unsigned long __user *p = (long __user *)arg;#if CSDEBUG_INTERFACE        int val;	if( 	(cmd == SOUND_MIXER_CS_GETDBGMASK) || 		(cmd == SOUND_MIXER_CS_SETDBGMASK) ||		(cmd == SOUND_MIXER_CS_GETDBGLEVEL) ||		(cmd == SOUND_MIXER_CS_SETDBGLEVEL) ||		(cmd == SOUND_MIXER_CS_APM))	{	    switch(cmd)	    {		case SOUND_MIXER_CS_GETDBGMASK:			return put_user(cs_debugmask, p);				case SOUND_MIXER_CS_GETDBGLEVEL:			return put_user(cs_debuglevel, p);		case SOUND_MIXER_CS_SETDBGMASK:			if (get_user(val, p))				return -EFAULT;			cs_debugmask = val;			return 0;		case SOUND_MIXER_CS_SETDBGLEVEL:			if (get_user(val, p))				return -EFAULT;			cs_debuglevel = val;			return 0;		case SOUND_MIXER_CS_APM:			if (get_user(val, p))				return -EFAULT;			if(val == CS_IOCTL_CMD_SUSPEND) 			{				list_for_each(entry, &cs46xx_devs)				{					card = list_entry(entry, struct cs_card, list);					cs46xx_suspend(card, 0);				}			}			else if(val == CS_IOCTL_CMD_RESUME)			{				list_for_each(entry, &cs46xx_devs)				{					card = list_entry(entry, struct cs_card, list);					cs46xx_resume(card);				}			}			else			{				CS_DBGOUT(CS_ERROR, 1, printk(KERN_INFO				    "cs46xx: mixer_ioctl(): invalid APM cmd (%d)\n",					val));			}			return 0;		default:			CS_DBGOUT(CS_ERROR, 1, printk(KERN_INFO 				"cs46xx: mixer_ioctl(): ERROR unknown debug cmd\n") );			return 0;	    }	}#endif	return codec->mixer_ioctl(codec, cmd, arg);}
10457	/local/tlutelli/issta_data/temp/c/2005_temp/2005/10457/2a569579be87b5ba61f9b6c54fd5f9f307c53962/cs46xx.c/buggy/sound/oss/cs46xx.c