diff options
author | Jason Wright <jason@cvs.openbsd.org> | 2002-09-11 03:11:23 +0000 |
---|---|---|
committer | Jason Wright <jason@cvs.openbsd.org> | 2002-09-11 03:11:23 +0000 |
commit | fa38af0572fab40ec124be8a99d172c2939b8e8b (patch) | |
tree | 443fefc689b5cfad06823ec25829db11587d21e4 /sys/arch/sparc/dev/cs4231var.h | |
parent | 865c39c5aafa8a0f5ee4e4b59420a129033084dd (diff) |
update from sparc64 version:
-fix several stupid bugs
-get encoding setup correct
-add support for capture
Diffstat (limited to 'sys/arch/sparc/dev/cs4231var.h')
-rw-r--r-- | sys/arch/sparc/dev/cs4231var.h | 23 |
1 files changed, 14 insertions, 9 deletions
diff --git a/sys/arch/sparc/dev/cs4231var.h b/sys/arch/sparc/dev/cs4231var.h index b6542ca7fbd..65e13b0c1cc 100644 --- a/sys/arch/sparc/dev/cs4231var.h +++ b/sys/arch/sparc/dev/cs4231var.h @@ -1,4 +1,4 @@ -/* $OpenBSD: cs4231var.h,v 1.6 2002/03/14 03:15:59 millert Exp $ */ +/* $OpenBSD: cs4231var.h,v 1.7 2002/09/11 03:11:22 jason Exp $ */ /* * Copyright (c) 1999 Jason L. Wright (jason@thought.net) @@ -50,6 +50,16 @@ struct cs_volume { u_int8_t right; }; +struct cs_channel { + void (*cs_intr)(void *); /* interrupt handler */ + void *cs_arg; /* interrupt arg */ + struct cs_dma *cs_curdma; /* current dma block */ + u_int32_t cs_cnt; /* current block count */ + u_int32_t cs_blksz; /* current block size */ + u_int32_t cs_segsz; /* current segment size */ + int cs_locked; /* channel locked? */ +}; + struct cs4231_softc { struct device sc_dev; /* base device */ struct sbusdev sc_sd; /* sbus device */ @@ -59,25 +69,20 @@ struct cs4231_softc { int sc_node; /* which sbus node */ int sc_burst; /* XXX: DMA burst size in effect */ int sc_open; /* already open? */ - int sc_locked; /* locked? */ - void (*sc_rintr)(void *); /* input completion intr handler */ - void * sc_rarg; /* arg for sc_rintr() */ - void (*sc_pintr)(void *); /* output completion intr handler */ - void * sc_parg; /* arg for sc_pintr() */ + struct cs_channel sc_playback, sc_capture; char sc_mute[9]; /* which devs are muted */ u_int8_t sc_out_port; /* output port */ + u_int8_t sc_in_port; /* input port */ struct cs_volume sc_volume[9]; /* software volume */ + struct cs_volume sc_adc; /* adc volume */ int sc_format_bits; int sc_speed_bits; int sc_precision; int sc_need_commit; int sc_channels; - u_int32_t sc_blksz; - u_int32_t sc_playcnt; - u_int32_t sc_playsegsz; struct cs_dma *sc_dmas; /* dma list */ struct cs_dma *sc_nowplaying; }; |