|
|||||||||||
|
kernel/3165: NeoMagic 256AV/ZX: Added reinit after suspend functionality
From: <aditya(at)dsl.cis.upenn.edu>
Date: Fri Mar 21 2003 - 12:19:30 EST
System : OpenBSD 3.3 Architecture: OpenBSD.i386 Machine : i386@@ -155,6 +155,8 @@ struct ac97_codec_if *codec_if; struct ac97_host_if host_if; + + void *powerhook; }; /* -------------------------------------------------------------------- */ @@ -203,7 +205,7 @@ size_t neo_round_buffersize(void *, int, size_t); int neo_get_props(void *); void neo_set_mixer(struct neo_softc *sc, int a, int d);- +void neo_power(int why, void *arg);
struct cfdriver neo_cd = {
if ((error = ac97_attach(&sc->host_if)) != 0) return; + sc->powerhook = powerhook_establish(neo_power, sc); + audio_attach_mi(&neo_hw_if, sc, &sc->dev); return; }
+
+void
+neo_power(int why, void *addr)
+{
+ struct neo_softc *sc = (struct neo_softc *)addr;
+
+ if (why == PWR_RESUME) {
+ nm_init(sc);
+ (sc->codec_if->vtbl->restore_ports)(sc->codec_if);
+ }
+}
+
+
int
>Release-Note:
This archive was generated by hypermail 2.1.8 : Wed Aug 23 2006 - 13:29:52 EDT |
||||||||||
|
|||||||||||