From 3e3869cfef1a8e75c93b0337c3e50d80fb063881 Mon Sep 17 00:00:00 2001 From: Theo de Raadt Date: Mon, 20 Dec 2004 12:29:41 +0000 Subject: 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 --- sys/dev/pci/ydsvar.h | 95 ++++------------------------------------------------ 1 file changed, 6 insertions(+), 89 deletions(-) (limited to 'sys/dev/pci/ydsvar.h') 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_ */ -- cgit v1.2.3