Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 27 Jun 2002 19:30:14 -0700 (PDT)
From:      Doug Ambrisko <ambrisko@ambrisko.com>
To:        murat demirbas <demirbas@cis.ohio-state.edu>
Cc:        freebsd-mobile@FreeBSD.ORG, cg@FreeBSD.ORG
Subject:   Re: Soundcard freezes after a suspend...
Message-ID:  <200206280230.g5S2UEW57876@ambrisko.com>
In-Reply-To: <200206280041.g5S0fIp23464@gamma.cis.ohio-state.edu>

next in thread | previous in thread | raw e-mail | index | archive | help
Cameron do you think this is okay for me to commit to -current and then to 
-stable after a week.  I've been running this on -stable.  It compiles in 
-current and I don't see why it wouldn't work there.  However, my laptop 
doesn't like to suspend and resume very well in -current so it's hard to test
there.  Also it's a bit of a hack and I was wondering if you as the sound
guy had any objections.  It better then the now when sound is dead after
a resume and needs either a kldunload/kldload cycle or worse a power cycle.

Thanks,

Doug A.

murat demirbas writes:
| Doug,
| 
| I cannot thank you more...
| My soundcard now works even after the suspends...
| 
| I think csa.c should include this patch to end the suffering of laptop users...
| 
| Thank you very much...
| Best wishes,
| \murat
| 
| > murat demirbas writes:
| > | I configured APM so I can suspend my laptop...
| > | However, when I resume the laptop, the soundcard freezes...
| > | My soundcard is CS46xx
| > 
| > Try this patch in /sys/dev/sound/pci then rebuild your kernel and reboot.
| > I'm sure it is not the best way for me but it works for me and is 
| > better then doing a kldunload/kldload.
| > 
| > Doug A.
| > 
| > Index: csa.c
| > ===================================================================
| > RCS file: /cvs/src/sys/dev/sound/pci/csa.c,v
| > retrieving revision 1.8.2.10
| > diff -c -r1.8.2.10 csa.c
| > *** csa.c	22 Apr 2002 15:49:32 -0000	1.8.2.10
| > --- csa.c	26 Jun 2002 20:25:18 -0000
| > ***************
| > *** 360,365 ****
| > --- 360,374 ----
| >   	return bus_generic_detach(dev);
| >   }
| >   
| > + static int
| > + csa_resume(device_t dev)
| > + {
| > + 	csa_detach(dev);
| > + 	csa_attach(dev);
| > + 
| > + 	return 0;
| > + }
| > + 
| >   static struct resource *
| >   csa_alloc_resource(device_t bus, device_t child, int type, int *rid,
| >   		      u_long start, u_long end, u_long count, u_int flags)
| > ***************
| > *** 1023,1029 ****
| >   	DEVMETHOD(device_detach,	csa_detach),
| >   	DEVMETHOD(device_shutdown,	bus_generic_shutdown),
| >   	DEVMETHOD(device_suspend,	bus_generic_suspend),
| > ! 	DEVMETHOD(device_resume,	bus_generic_resume),
| >   
| >   	/* Bus interface */
| >   	DEVMETHOD(bus_print_child,	bus_generic_print_child),
| > --- 1032,1038 ----
| >   	DEVMETHOD(device_detach,	csa_detach),
| >   	DEVMETHOD(device_shutdown,	bus_generic_shutdown),
| >   	DEVMETHOD(device_suspend,	bus_generic_suspend),
| > ! 	DEVMETHOD(device_resume,	csa_resume),
| >   
| >   	/* Bus interface */
| >   	DEVMETHOD(bus_print_child,	bus_generic_print_child),
| > 
| 

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-mobile" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200206280230.g5S2UEW57876>