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)
Sat, Oct 11, 6:10 AM
Unknown Object (File)
Thu, Oct 9, 5:42 AM
Unknown Object (File)
Tue, Oct 7, 5:57 AM
Unknown Object (File)
Thu, Oct 2, 6:39 PM
Unknown Object (File)
Sep 19 2025, 12:16 AM
Unknown Object (File)
Sep 16 2025, 2:33 PM
Unknown Object (File)
Sep 15 2025, 10:31 PM
Unknown Object (File)
Sep 15 2025, 5:25 PM
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 62624
Build 59508: 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.