git: 19ec522d6dc1 - main - sound: Export hardware and software buffer sample rate in sndstat nvlist
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Fri, 25 Apr 2025 16:56:38 UTC
The branch main has been updated by christos: URL: https://cgit.FreeBSD.org/src/commit/?id=19ec522d6dc1d4616e07f5668339fc637856f547 commit 19ec522d6dc1d4616e07f5668339fc637856f547 Author: Christos Margiolis <christos@FreeBSD.org> AuthorDate: 2025-04-25 16:55:38 +0000 Commit: Christos Margiolis <christos@FreeBSD.org> CommitDate: 2025-04-25 16:55:38 +0000 sound: Export hardware and software buffer sample rate in sndstat nvlist Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D49983 --- share/man/man4/sndstat.4 | 6 ++++++ sys/dev/sound/pcm/sndstat.c | 4 ++++ sys/sys/sndstat.h | 2 ++ 3 files changed, 12 insertions(+) diff --git a/share/man/man4/sndstat.4 b/share/man/man4/sndstat.4 index 8da705502920..8dad58c7d804 100644 --- a/share/man/man4/sndstat.4 +++ b/share/man/man4/sndstat.4 @@ -98,12 +98,14 @@ dsps (NVLIST ARRAY): 1 left_volume (NUMBER): 45 right_volume (NUMBER): 45 hwbuf_fmt (NUMBER): 0x200010 + hwbuf_rate (NUMBER): 48000 hwbuf_size (NUMBER): 0 hwbuf_blksz (NUMBER): 0 hwbuf_blkcnt (NUMBER): 0 hwbuf_free (NUMBER): 0 hwbuf_ready (NUMBER): 0 swbuf_fmt (NUMBER): 0x201000 + swbuf_rate (NUMBER): 48000 swbuf_size (NUMBER): 16384 swbuf_blksz (NUMBER): 2048 swbuf_blkcnt (NUMBER): 8 @@ -226,6 +228,8 @@ Left volume. Right volume. .It Dv hwbuf_format Hardware buffer format. +.It Dv hwbuf_rate +Hardware buffer sample rate; .It Dv hwbuf_size Hardware buffer size. .It Dv hwbuf_blksz @@ -238,6 +242,8 @@ Free space in hardware buffer (in bytes). Number of bytes ready to be read/written from hardware buffer. .It Dv swbuf_format Software buffer format. +.It Dv swbuf_rate +Software buffer sample rate; .It Dv swbuf_size Software buffer size. .It Dv swbuf_blksz diff --git a/sys/dev/sound/pcm/sndstat.c b/sys/dev/sound/pcm/sndstat.c index cafd9aff4bdc..509a35c5a038 100644 --- a/sys/dev/sound/pcm/sndstat.c +++ b/sys/dev/sound/pcm/sndstat.c @@ -493,6 +493,8 @@ sndstat_build_sound4_nvlist(struct snddev_info *d, nvlist_t **dip) CHN_GETVOLUME(c, SND_VOL_C_PCM, SND_CHN_T_FR)); nvlist_add_number(cdi, SNDST_DSPS_SOUND4_CHAN_HWBUF_FORMAT, sndbuf_getfmt(c->bufhard)); + nvlist_add_number(cdi, SNDST_DSPS_SOUND4_CHAN_HWBUF_RATE, + sndbuf_getspd(c->bufhard)); nvlist_add_number(cdi, SNDST_DSPS_SOUND4_CHAN_HWBUF_SIZE, sndbuf_getsize(c->bufhard)); nvlist_add_number(cdi, SNDST_DSPS_SOUND4_CHAN_HWBUF_BLKSZ, @@ -505,6 +507,8 @@ sndstat_build_sound4_nvlist(struct snddev_info *d, nvlist_t **dip) sndbuf_getready(c->bufhard)); nvlist_add_number(cdi, SNDST_DSPS_SOUND4_CHAN_SWBUF_FORMAT, sndbuf_getfmt(c->bufsoft)); + nvlist_add_number(cdi, SNDST_DSPS_SOUND4_CHAN_SWBUF_RATE, + sndbuf_getspd(c->bufsoft)); nvlist_add_number(cdi, SNDST_DSPS_SOUND4_CHAN_SWBUF_SIZE, sndbuf_getsize(c->bufsoft)); nvlist_add_number(cdi, SNDST_DSPS_SOUND4_CHAN_SWBUF_BLKSZ, diff --git a/sys/sys/sndstat.h b/sys/sys/sndstat.h index 6fd2e06ac483..a569f27f288f 100644 --- a/sys/sys/sndstat.h +++ b/sys/sys/sndstat.h @@ -94,12 +94,14 @@ struct sndstioc_nv_arg { #define SNDST_DSPS_SOUND4_CHAN_LEFTVOL "left_volume" #define SNDST_DSPS_SOUND4_CHAN_RIGHTVOL "right_volume" #define SNDST_DSPS_SOUND4_CHAN_HWBUF_FORMAT "hwbuf_format" +#define SNDST_DSPS_SOUND4_CHAN_HWBUF_RATE "hwbuf_rate" #define SNDST_DSPS_SOUND4_CHAN_HWBUF_SIZE "hwbuf_size" #define SNDST_DSPS_SOUND4_CHAN_HWBUF_BLKSZ "hwbuf_blksz" #define SNDST_DSPS_SOUND4_CHAN_HWBUF_BLKCNT "hwbuf_blkcnt" #define SNDST_DSPS_SOUND4_CHAN_HWBUF_FREE "hwbuf_free" #define SNDST_DSPS_SOUND4_CHAN_HWBUF_READY "hwbuf_ready" #define SNDST_DSPS_SOUND4_CHAN_SWBUF_FORMAT "swbuf_format" +#define SNDST_DSPS_SOUND4_CHAN_SWBUF_RATE "swbuf_rate" #define SNDST_DSPS_SOUND4_CHAN_SWBUF_SIZE "swbuf_size" #define SNDST_DSPS_SOUND4_CHAN_SWBUF_BLKSZ "swbuf_blksz" #define SNDST_DSPS_SOUND4_CHAN_SWBUF_BLKCNT "swbuf_blkcnt"