patch-2.2.19 linux/drivers/sound/ymfpci.h

Next file: linux/drivers/usb/Config.in
Previous file: linux/drivers/sound/ymfpci.c
Back to the patch index
Back to the overall index

diff -u --new-file --recursive --exclude-from /usr/src/exclude v2.2.18/drivers/sound/ymfpci.h linux/drivers/sound/ymfpci.h
@@ -131,7 +131,12 @@
 #define YDSXG_AC97READCMD		0x8000
 #define YDSXG_AC97WRITECMD		0x0000
 
+#define PCIR_LEGCTRL			0x40
+#define PCIR_ELEGCTRL			0x42
 #define PCIR_DSXGCTRL			0x48
+#define PCIR_OPLADR			0x60
+#define PCIR_SBADR			0x62
+#define PCIR_MPUADR			0x64
 
 #define YDSXG_DSPLENGTH			0x0080
 #define YDSXG_CTRLLENGTH		0x3000
@@ -242,27 +247,27 @@
 	ymfpci_pcm_type_t type;
 	struct ymf_state *state;
 	ymfpci_voice_t *voices[2];	/* playback only */
-	int running;			// +
+	int running;
 	int spdif;
 };
 
 struct ymf_unit {
 	unsigned int device_id;	/* PCI device ID */
-	unsigned int rev;	/* PCI revision */
+	unsigned char rev;	/* PCI revision */
 	unsigned long reg_area_phys;
 	unsigned long reg_area_virt;
 
-	void *work_ptr;				// +
+	void *work_ptr;
 
 	unsigned int bank_size_playback;
 	unsigned int bank_size_capture;
 	unsigned int bank_size_effect;
 	unsigned int work_size;
 
-	void *bank_base_playback;		// +
-	void *bank_base_capture;		// +
-	void *bank_base_effect;			// +
-	void *work_base;			// +
+	void *bank_base_playback;
+	void *bank_base_capture;
+	void *bank_base_effect;
+	void *work_base;
 
 	u32 *ctrl_playback;
 	ymfpci_playback_bank_t *bank_playback[YDSXG_PLAYBACK_VOICES][2];
@@ -279,16 +284,22 @@
 
 	struct pci_dev *pci;
 	int irq;
-	int inst;		/* Unit number (instance) */
+
+#ifdef CONFIG_SOUND_YMFPCI_LEGACY
+        /* legacy hardware resources */
+	unsigned int iosynth, iomidi;
+	struct address_info opl3_data, mpu_data;
+#endif
 
 	spinlock_t reg_lock;
 	spinlock_t voice_lock;
 
 	/* soundcore stuff */
 	int dev_audio;
+	struct semaphore open_sem;
 
-	ymfpci_t *next;					// *
-	struct ymf_state *states[1];			// *
+	ymfpci_t *next;
+	struct ymf_state *states[1];
 	/* ypcm may be the same thing as state, but not for record, effects. */
 };
 
@@ -336,16 +347,12 @@
 struct ymf_state {
 	struct ymf_unit *unit;			/* backpointer */
 
-	/* single open lock mechanism, only used for recording */
-	struct semaphore open_sem;
-	struct wait_queue *open_wait;
-
 	/* virtual channel number */
 	int virt;				// * unused a.t.m.
 
-	struct ymf_pcm ypcm;			// *
-	struct ymf_dmabuf dmabuf;		// *
-	struct ymf_pcm_format format;		// *
+	struct ymf_pcm ypcm;
+	struct ymf_dmabuf dmabuf;
+	struct ymf_pcm_format format;
 };
 
 #endif				/* __YMFPCI_H */

FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen (who was at: slshen@lbl.gov)