#include <sys/param.h>
#include <sys/types.h>
#include <sys/bus.h>
#include <machine/bus.h>
#include <sys/rman.h>
#include <sys/systm.h>
#include <sys/kobj.h>
#include <sys/lock.h>
#include <sys/mutex.h>
#include <dev/pci/pcireg.h>
#include <dev/pci/pcivar.h>
#include <dev/sound/chip.h>
#include <dev/sound/pcm/sound.h>
#include <dev/sound/midi/midi.h>
#include <dev/sound/midi/mpu401.h>
#include <dev/sound/pci/csareg.h>
#include <dev/sound/pci/csavar.h>
#include "mpufoi_if.h"
Go to the source code of this file.
|
| SND_DECLARE_FILE ("$FreeBSD$") |
|
static u_int32_t | csamidi_readio (struct csa_midi_softc *scp, u_long offset) |
|
static void | csamidi_writeio (struct csa_midi_softc *scp, u_long offset, u_int32_t data) |
|
static void | csamidi_midi_intr (void *arg) |
|
static unsigned char | csamidi_mread (struct mpu401 *arg __unused, void *cookie, int reg) |
|
static void | csamidi_mwrite (struct mpu401 *arg __unused, void *cookie, int reg, unsigned char b) |
|
static int | csamidi_muninit (struct mpu401 *arg __unused, void *cookie) |
|
static int | midicsa_probe (device_t dev) |
|
static int | midicsa_attach (device_t dev) |
|
static int | midicsa_detach (device_t dev) |
|
static | DEFINE_CLASS (csamidi_mpu, csamidi_mpu_methods, 0) |
|
| DRIVER_MODULE (snd_csa_midi, csa, midicsa_driver, midicsa_devclass, 0, 0) |
|
| MODULE_DEPEND (snd_csa_midi, snd_csa, 1, 1, 1) |
|
| MODULE_DEPEND (snd_csa_midi, sound, SOUND_MINVER, SOUND_PREFVER, SOUND_MAXVER) |
|
| MODULE_VERSION (snd_csa_midi, 1) |
|
◆ MPU_ACK
◆ MPU_CMDPORT
◆ MPU_DATAPORT
◆ MPU_INPUTBUSY
#define MPU_INPUTBUSY 0x80 |
◆ MPU_OUTPUTBUSY
#define MPU_OUTPUTBUSY 0x40 |
◆ MPU_RESET
◆ MPU_STATMASK
#define MPU_STATMASK 0xc0 |
◆ MPU_STATPORT
◆ MPU_UART
◆ csamidi_midi_intr()
static void csamidi_midi_intr |
( |
void * |
arg | ) |
|
|
static |
◆ csamidi_mread()
static unsigned char csamidi_mread |
( |
struct mpu401 *arg |
__unused, |
|
|
void * |
cookie, |
|
|
int |
reg |
|
) |
| |
|
static |
◆ csamidi_muninit()
static int csamidi_muninit |
( |
struct mpu401 *arg |
__unused, |
|
|
void * |
cookie |
|
) |
| |
|
static |
◆ csamidi_mwrite()
static void csamidi_mwrite |
( |
struct mpu401 *arg |
__unused, |
|
|
void * |
cookie, |
|
|
int |
reg, |
|
|
unsigned char |
b |
|
) |
| |
|
static |
Definition at line 139 of file csamidi.c.
References b, BA0_MIDCR, BA0_MIDWP, csamidi_readio(), csamidi_writeio(), MIDCR_MLB, MIDCR_MRST, MPU_CMDPORT, MPU_DATAPORT, MPU_RESET, MPU_UART, reg, and val.
◆ csamidi_readio()
static u_int32_t csamidi_readio |
( |
struct csa_midi_softc * |
scp, |
|
|
u_long |
offset |
|
) |
| |
|
static |
◆ csamidi_writeio()
static void csamidi_writeio |
( |
struct csa_midi_softc * |
scp, |
|
|
u_long |
offset, |
|
|
u_int32_t |
data |
|
) |
| |
|
static |
◆ DEFINE_CLASS()
◆ DRIVER_MODULE()
◆ midicsa_attach()
static int midicsa_attach |
( |
device_t |
dev | ) |
|
|
static |
Definition at line 202 of file csamidi.c.
References BA0_HICR, BA0_MIDCR, csamidi_midi_intr(), csamidi_mpu_class, csamidi_writeio(), csa_midi_softc::dev, dev, sndcard_func::func, HICR_CHGM, HICR_IEV, csa_midi_softc::io, csa_midi_softc::io_rid, MIDCR_MRST, MIDCR_RXE, MIDCR_TXE, csa_midi_softc::mpu, mpu401_init(), csa_midi_softc::mpu_intr, csa_midi_softc::mtx, and PCIR_BAR.
◆ midicsa_detach()
static int midicsa_detach |
( |
device_t |
dev | ) |
|
|
static |
◆ midicsa_probe()
static int midicsa_probe |
( |
device_t |
dev | ) |
|
|
static |
◆ MODULE_DEPEND() [1/2]
MODULE_DEPEND |
( |
snd_csa_midi |
, |
|
|
snd_csa |
, |
|
|
1 |
, |
|
|
1 |
, |
|
|
1 |
|
|
) |
| |
◆ MODULE_DEPEND() [2/2]
◆ MODULE_VERSION()
MODULE_VERSION |
( |
snd_csa_midi |
, |
|
|
1 |
|
|
) |
| |
◆ SND_DECLARE_FILE()
SND_DECLARE_FILE |
( |
"$FreeBSD$" |
| ) |
|
◆ csamidi_mpu_class
struct kobj_class csamidi_mpu_class |
|
static |
◆ csamidi_mpu_methods
kobj_method_t csamidi_mpu_methods[] |
|
static |
Initial value:= {
}
static void csamidi_mwrite(struct mpu401 *arg __unused, void *cookie, int reg, unsigned char b)
static int csamidi_muninit(struct mpu401 *arg __unused, void *cookie)
static unsigned char csamidi_mread(struct mpu401 *arg __unused, void *cookie, int reg)
Definition at line 265 of file csamidi.c.
◆ midicsa_devclass
devclass_t midicsa_devclass |
|
static |
◆ midicsa_driver
Initial value:= {
"midi",
}
static device_method_t midicsa_methods[]
Definition at line 282 of file csamidi.c.
◆ midicsa_methods
device_method_t midicsa_methods[] |
|
static |
Initial value:= {
DEVMETHOD_END
}
static int midicsa_detach(device_t dev)
static int midicsa_probe(device_t dev)
static int midicsa_attach(device_t dev)
Definition at line 274 of file csamidi.c.