Date: Tue, 18 Nov 2025 00:52:08 GMT From: Christos Margiolis <christos@FreeBSD.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org Subject: git: ae3cd550d257 - stable/15 - sound: Retire feeder_class->desc Message-ID: <202511180052.5AI0q8KH046744@gitrepo.freebsd.org>
index | next in thread | raw e-mail
The branch stable/15 has been updated by christos: URL: https://cgit.FreeBSD.org/src/commit/?id=ae3cd550d257e38ea21dee0915677f0c6aafbb3e commit ae3cd550d257e38ea21dee0915677f0c6aafbb3e Author: Christos Margiolis <christos@FreeBSD.org> AuthorDate: 2025-11-11 12:06:24 +0000 Commit: Christos Margiolis <christos@FreeBSD.org> CommitDate: 2025-11-18 00:51:23 +0000 sound: Retire feeder_class->desc The only field we care about is pcm_feederdesc->type, so keep that one only and do not embed the whole pcm_feederdesc. While here, make the feeder type enum into a named one and use it as feeder_class->type's type. Sponsored by: The FreeBSD Foundation MFC after: 1 week Reviewed by: markj Differential Revision: https://reviews.freebsd.org/D53556 (cherry picked from commit 91fcc0132d0b192f07f9b67626c9af2ad8759857) --- sys/dev/sound/pcm/feeder.c | 8 ++++---- sys/dev/sound/pcm/feeder.h | 28 ++++++++++++++-------------- 2 files changed, 18 insertions(+), 18 deletions(-) diff --git a/sys/dev/sound/pcm/feeder.c b/sys/dev/sound/pcm/feeder.c index f55c3e5992e1..acc9e374e718 100644 --- a/sys/dev/sound/pcm/feeder.c +++ b/sys/dev/sound/pcm/feeder.c @@ -48,7 +48,7 @@ feeder_register_root(void *p) { struct feeder_class *fc = p; - KASSERT(fc->desc.type == FEEDER_ROOT, + KASSERT(fc->type == FEEDER_ROOT, ("first feeder not root: %s", fc->name)); SLIST_INIT(&feedertab); @@ -60,7 +60,7 @@ feeder_register(void *p) { struct feeder_class *fc = p; - KASSERT(fc->desc.type != 0, ("feeder '%s' has no descriptor", fc->name)); + KASSERT(fc->type != 0, ("feeder '%s' has no descriptor", fc->name)); SLIST_INSERT_HEAD(&feedertab, fc, link); } @@ -119,7 +119,7 @@ feeder_getclass(u_int32_t type) struct feeder_class *fc; SLIST_FOREACH(fc, &feedertab, link) { - if (fc->desc.type == type) + if (fc->type == type) return (fc); } return (NULL); @@ -400,7 +400,7 @@ static struct feeder_class feeder_root_class = { .name = "feeder_root", .methods = feeder_root_methods, .size = sizeof(struct pcm_feeder), - .desc = { FEEDER_ROOT, 0, 0 }, + .type = FEEDER_ROOT, }; /* * Register the root feeder first so that pcm_addchan() and subsequent diff --git a/sys/dev/sound/pcm/feeder.h b/sys/dev/sound/pcm/feeder.h index f89652ab9635..171168d66e4e 100644 --- a/sys/dev/sound/pcm/feeder.h +++ b/sys/dev/sound/pcm/feeder.h @@ -27,6 +27,17 @@ * SUCH DAMAGE. */ +enum feeder_type { + FEEDER_ROOT, + FEEDER_FORMAT, + FEEDER_MIXER, + FEEDER_RATE, + FEEDER_EQ, + FEEDER_VOLUME, + FEEDER_MATRIX, + FEEDER_LAST, +}; + struct pcm_feederdesc { u_int32_t type; u_int32_t in, out; @@ -34,7 +45,7 @@ struct pcm_feederdesc { struct feeder_class { KOBJ_CLASS_FIELDS; - struct pcm_feederdesc desc; + enum feeder_type type; SLIST_ENTRY(feeder_class) link; }; @@ -63,27 +74,16 @@ struct pcm_feeder *feeder_find(struct pcm_channel *c, u_int32_t type); void feeder_printchain(struct pcm_feeder *head); int feeder_chain(struct pcm_channel *); -#define FEEDER_DECLARE(feeder, type) \ +#define FEEDER_DECLARE(feeder, ctype) \ static struct feeder_class feeder ## _class = { \ .name = #feeder, \ .methods = feeder ## _methods, \ .size = sizeof(struct pcm_feeder), \ - .desc = { type, 0, 0 }, \ + .type = ctype, \ }; \ SYSINIT(feeder, SI_SUB_DRIVERS, SI_ORDER_ANY, feeder_register, \ &feeder ## _class) -enum { - FEEDER_ROOT, - FEEDER_FORMAT, - FEEDER_MIXER, - FEEDER_RATE, - FEEDER_EQ, - FEEDER_VOLUME, - FEEDER_MATRIX, - FEEDER_LAST, -}; - /* feeder_format */ enum { FEEDFORMAT_CHANNELShelp
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202511180052.5AI0q8KH046744>
