Page MenuHomeFreeBSD

sound: Fix vchanrate and vchanformat
ClosedPublic

Authored by christos on Feb 12 2025, 12:21 PM.
Tags
None
Referenced Files
Unknown Object (File)
Thu, Nov 6, 10:38 AM
Unknown Object (File)
Wed, Nov 5, 6:26 PM
Unknown Object (File)
Wed, Nov 5, 12:36 AM
Unknown Object (File)
Mon, Nov 3, 1:15 PM
Unknown Object (File)
Sun, Nov 2, 1:47 AM
Unknown Object (File)
Wed, Oct 29, 10:08 PM
Unknown Object (File)
Wed, Oct 29, 6:06 PM
Unknown Object (File)
Wed, Oct 29, 8:42 AM
Subscribers

Details

Summary

Make vchanrate and vchanformat reflect the primary channel's software
buffer's rate and format respectively. Fix previous inconsistencies.

Get rid of the initializations in vchan_create() and move them to
chn_init().

Without the feeder_rate_round check in sysctl_dev_pcm_vchanrate(), we
can set the software rate to anything between feeder_rate_min and
feeder_rate_max. If we keep the check, however, the rate is limited to
whatever the driver's min/max is, which can be a problem if, for
example, the driver supports only a single rate, in which case we won't
be able to set anything other than the driver rate.

Sponsored by: The FreeBSD Foundation
MFC after: 1 week

Diff Detail

Repository
rG FreeBSD src repository
Lint
Lint Skipped
Unit
Tests Skipped
Build Status
Buildable 62390
Build 59274: arc lint + arc unit

Event Timeline

This revision was not accepted when it landed; it landed in state Needs Review.Mar 30 2025, 5:48 PM
This revision was automatically updated to reflect the committed changes.