summaryrefslogtreecommitdiff
path: root/sys/dev/pci/ydsvar.h
diff options
context:
space:
mode:
authorTheo de Raadt <deraadt@cvs.openbsd.org>2004-12-20 12:29:41 +0000
committerTheo de Raadt <deraadt@cvs.openbsd.org>2004-12-20 12:29:41 +0000
commit3e3869cfef1a8e75c93b0337c3e50d80fb063881 (patch)
tree342bb2ce1f238f5748765d46b6ce6c1442ed3a32 /sys/dev/pci/ydsvar.h
parent58752baf6c05162c1e86192572fb1b9df4719351 (diff)
firmware loading from the filesystem. pci subsystem type things
are still done early, but audio subsystem setup is deferred till after root is mounted. tested by mcbride
Diffstat (limited to 'sys/dev/pci/ydsvar.h')
-rw-r--r--sys/dev/pci/ydsvar.h95
1 files changed, 6 insertions, 89 deletions
diff --git a/sys/dev/pci/ydsvar.h b/sys/dev/pci/ydsvar.h
index 647da9cced6..c8ec4836b19 100644
--- a/sys/dev/pci/ydsvar.h
+++ b/sys/dev/pci/ydsvar.h
@@ -1,4 +1,4 @@
-/* $OpenBSD: ydsvar.h,v 1.5 2003/05/14 09:04:59 jason Exp $ */
+/* $OpenBSD: ydsvar.h,v 1.6 2004/12/20 12:29:36 deraadt Exp $ */
/* $NetBSD$ */
/*
@@ -29,95 +29,12 @@
#ifndef _DEV_PCI_YDSVAR_H_
#define _DEV_PCI_YDSVAR_H_
-#define N_PLAY_SLOTS 2 /* We use only 2 (R and L) */
-#define N_PLAY_SLOT_CTRL 2
-#define WORK_SIZE 0x0400
-
-/*
- * softc
- */
-struct yds_dma {
- bus_dmamap_t map;
- caddr_t addr; /* VA */
- bus_dma_segment_t segs[1];
- int nsegs;
- size_t size;
- struct yds_dma *next;
+struct yds_firmware {
+ int dsplen;
+ int ds1len;
+ int ds1elen;
+ u_char data[4];
};
-struct yds_codec_softc {
- struct device sc_dev; /* base device */
- struct yds_softc *sc;
- int id;
- int status_data;
- int status_addr;
- struct ac97_host_if host_if;
- struct ac97_codec_if *codec_if;
-};
-
-struct yds_softc {
- struct device sc_dev; /* base device */
- pci_chipset_tag_t sc_pc;
- pcitag_t sc_pcitag;
- pcireg_t sc_id;
- int sc_revision;
- void *sc_ih; /* interrupt vectoring */
- bus_space_tag_t memt;
- bus_space_handle_t memh;
- bus_dma_tag_t sc_dmatag; /* DMA tag */
- u_int sc_flags;
-
- struct yds_codec_softc sc_codec[2]; /* Primary/Secondary AC97 */
-
- struct yds_dma *sc_dmas; /* List of DMA handles */
-
- /*
- * Play/record status
- */
- struct {
- void (*intr)(void *); /* rint/pint */
- void *intr_arg; /* arg for intr */
- u_int offset; /* filled up to here */
- u_int blksize;
- u_int factor; /* byte per sample */
- u_int length; /* ring buffer length */
- struct yds_dma *dma; /* DMA handle for ring buf */
- } sc_play, sc_rec;
-
- /*
- * DSP control data
- *
- * Work space, play control data table, play slot control data,
- * rec slot control data and effect slot control data are
- * stored in a single memory segment in this order.
- */
- struct yds_dma sc_ctrldata;
- /* KVA and offset in buffer of play ctrl data tbl */
- u_int32_t *ptbl;
- off_t ptbloff;
- /* KVA and offset in buffer of rec slot ctrl data */
- struct rec_slot_ctrl_bank *rbank;
- off_t rbankoff;
- /* Array of KVA pointers and offset of play slot control data */
- struct play_slot_ctrl_bank *pbankp[N_PLAY_SLOT_CTRL_BANK
- *N_PLAY_SLOTS];
- off_t pbankoff;
-
- /*
- * Legacy support
- */
- bus_space_tag_t sc_legacy_iot;
- bus_space_handle_t sc_opl_ioh;
- struct device *sc_mpu;
- bus_space_handle_t sc_mpu_ioh;
-
- /*
- * Suspend/resume support
- */
- void *powerhook;
- int suspend;
-};
-#define sc_opl_iot sc_legacy_iot
-#define sc_mpu_iot sc_legacy_iot
#endif /* _DEV_PCI_YDSVAR_H_ */