Deleted Added
full compact
28c28
< * $FreeBSD: head/sys/dev/sound/isa/ad1816.c 67652 2000-10-26 20:46:58Z cg $
---
> * $FreeBSD: head/sys/dev/sound/isa/ad1816.c 70134 2000-12-18 01:36:41Z cg $
33a34,35
> #include "mixer_if.h"
>
67,78d68
< static int ad1816mix_init(snd_mixer *m);
< static int ad1816mix_set(snd_mixer *m, unsigned dev, unsigned left, unsigned right);
< static int ad1816mix_setrecsrc(snd_mixer *m, u_int32_t src);
< static snd_mixer ad1816_mixer = {
< "ad1816 mixer",
< ad1816mix_init,
< NULL,
< NULL,
< ad1816mix_set,
< ad1816mix_setrecsrc,
< };
<
81,90d70
< /* channel interface */
< static void *ad1816chan_init(void *devinfo, snd_dbuf *b, pcm_channel *c, int dir);
< static int ad1816chan_setdir(void *data, int dir);
< static int ad1816chan_setformat(void *data, u_int32_t format);
< static int ad1816chan_setspeed(void *data, u_int32_t speed);
< static int ad1816chan_setblocksize(void *data, u_int32_t blocksize);
< static int ad1816chan_trigger(void *data, int go);
< static int ad1816chan_getptr(void *data);
< static pcmchan_caps *ad1816chan_getcaps(void *data);
<
105,123d84
< static pcm_channel ad1816_chantemplate = {
< ad1816chan_init,
< ad1816chan_setdir,
< ad1816chan_setformat,
< ad1816chan_setspeed,
< ad1816chan_setblocksize,
< ad1816chan_trigger,
< ad1816chan_getptr,
< ad1816chan_getcaps,
< NULL, /* free */
< NULL, /* nop1 */
< NULL, /* nop2 */
< NULL, /* nop3 */
< NULL, /* nop4 */
< NULL, /* nop5 */
< NULL, /* nop6 */
< NULL, /* nop7 */
< };
<
234a196,197
> /* -------------------------------------------------------------------- */
>
331a295,303
> static kobj_method_t ad1816mixer_methods[] = {
> KOBJMETHOD(mixer_init, ad1816mix_init),
> KOBJMETHOD(mixer_set, ad1816mix_set),
> KOBJMETHOD(mixer_setrecsrc, ad1816mix_setrecsrc),
> { 0, 0 }
> };
> MIXER_DECLARE(ad1816mixer);
>
> /* -------------------------------------------------------------------- */
334c306
< ad1816chan_init(void *devinfo, snd_dbuf *b, pcm_channel *c, int dir)
---
> ad1816chan_init(kobj_t obj, void *devinfo, snd_dbuf *b, pcm_channel *c, int dir)
348c320
< ad1816chan_setdir(void *data, int dir)
---
> ad1816chan_setdir(kobj_t obj, void *data, int dir)
360c332
< ad1816chan_setformat(void *data, u_int32_t format)
---
> ad1816chan_setformat(kobj_t obj, void *data, u_int32_t format)
402c374
< ad1816chan_setspeed(void *data, u_int32_t speed)
---
> ad1816chan_setspeed(kobj_t obj, void *data, u_int32_t speed)
413c385
< ad1816chan_setblocksize(void *data, u_int32_t blocksize)
---
> ad1816chan_setblocksize(kobj_t obj, void *data, u_int32_t blocksize)
419c391
< ad1816chan_trigger(void *data, int go)
---
> ad1816chan_trigger(kobj_t obj, void *data, int go)
469c441
< ad1816chan_getptr(void *data)
---
> ad1816chan_getptr(kobj_t obj, void *data)
476c448
< ad1816chan_getcaps(void *data)
---
> ad1816chan_getcaps(kobj_t obj, void *data)
480a453,467
> static kobj_method_t ad1816chan_methods[] = {
> KOBJMETHOD(channel_init, ad1816chan_init),
> KOBJMETHOD(channel_setdir, ad1816chan_setdir),
> KOBJMETHOD(channel_setformat, ad1816chan_setformat),
> KOBJMETHOD(channel_setspeed, ad1816chan_setspeed),
> KOBJMETHOD(channel_setblocksize, ad1816chan_setblocksize),
> KOBJMETHOD(channel_trigger, ad1816chan_trigger),
> KOBJMETHOD(channel_getptr, ad1816chan_getptr),
> KOBJMETHOD(channel_getcaps, ad1816chan_getcaps),
> { 0, 0 }
> };
> CHANNEL_DECLARE(ad1816chan);
>
> /* -------------------------------------------------------------------- */
>
599c586,587
< mixer_init(dev, &ad1816_mixer, ad1816);
---
> if (mixer_init(dev, &ad1816mixer_class, ad1816)) goto no;
>
620,621c608,609
< pcm_addchan(dev, PCMDIR_REC, &ad1816_chantemplate, ad1816);
< pcm_addchan(dev, PCMDIR_PLAY, &ad1816_chantemplate, ad1816);
---
> pcm_addchan(dev, PCMDIR_REC, &ad1816chan_class, ad1816);
> pcm_addchan(dev, PCMDIR_PLAY, &ad1816chan_class, ad1816);