History log of /freebsd-current/sys/dev/sound/pci/hdspe.h
Revision Date Author Comments
# 9718d4ab 27-Apr-2024 Florian Walpen <dev@submerge.ch>

snd_hdspe(4): Recognize newer firmware's PCI vendor id.

At least for HDSPe RayDAT cards, newer firmware comes with RME's own PCI
vendor id instead of the Xilinx one. Other HDSPe cards are probably also
affected. Update snd_hdspe(4) to recognize both the old Xilinx and the
new RME vendor ids.

Differential Revision: https://reviews.freebsd.org/D44978
MFC after: 1 day


# ee36e7fa 31-Mar-2024 Florian Walpen <dev@submerge.ch>

snd_hdspe(4): Only buffer_copy() audio data once.

Instead of blindly copying two periods of audio data to and from DMA
buffers, keep track of the writing position and derive the actual
part of audio data that needs to be copied.
This approximately halves the number of samples copied in total.

Differential Revision: https://reviews.freebsd.org/D44084


# 6c892b79 30-Jan-2024 Florian Walpen <dev@submerge.ch>

snd_hdspe(4): Per device sysctl for sample rate.

Some hardware setups require a specific sample rate due to devices being
connected to digital ports (AES, S/PDIF, ADAT). Add a per device sysctl
"sample_rate" to let the user override sample rate requests from the pcm
infrastructure, when needed.

Differential Revision: https://reviews.freebsd.org/D43659


# fb877263 28-Jan-2024 Florian Walpen <dev@submerge.ch>

snd_hdspe(4): Per device sysctl for period.

Let the user choose a period (interrupt cadence in samples), in the
official RME drivers this setting is available as "Buffer Size".
Override the period propagated through blocksize by pcm channel latency
settings (see sound(4)), since these are unreliable and differ between
playback and recording channels.

Differential Revision: https://reviews.freebsd.org/D43527


# d7fde2c9 15-Jan-2024 Florian Walpen <dev@submerge.ch>

snd_hdspe(4): One pcm device per physical ADAT port.

ADAT connections transport 8, 4 or 2 audio channels depending on the
sample rate. Instead of splitting each physical ADAT port into 4
(potentially unmapped) stereo pcm devices, create just one pcm
device of variable channel width for every ADAT port.
Depending on the sample rate and channel width selected, the pcm
channels may be only partially mapped to ADAT channels and vice versa.

Added flexibility of the new channel mapping is also prerequisite to
introduce more pcm device layouts in follow-up commits.

Reviewed by: br
Differential Revision: https://reviews.freebsd.org/D43393


# b6052c10 04-Jan-2024 Ruslan Bukin <br@FreeBSD.org>

Setups with digital audio connections like SPDIF and ADAT require
a designated master clock to stay in sync. Add a sysctl setting
to control the preferred clock source for each HDSPe sound card.
Complement this by sysctl values to list available clock sources,
show the currently effective clock source and display the sync
status of all connections. Clock sources are named according to
RME user manuals.

Submitted by: Florian Walpen <dev@submerge.ch>
Differential Revision: https://reviews.freebsd.org/D43252


# 95ee2897 16-Aug-2023 Warner Losh <imp@FreeBSD.org>

sys: Remove $FreeBSD$: two-line .h pattern

Remove /^\s*\*\n \*\s+\$FreeBSD\$$\n/


# 4d846d26 10-May-2023 Warner Losh <imp@FreeBSD.org>

spdx: The BSD-2-Clause-FreeBSD identifier is obsolete, drop -FreeBSD

The SPDX folks have obsoleted the BSD-2-Clause-FreeBSD identifier. Catch
up to that fact and revert to their recommended match of BSD-2-Clause.

Discussed with: pfg
MFC After: 3 days
Sponsored by: Netflix


# 718cf2cc 27-Nov-2017 Pedro F. Giffuni <pfg@FreeBSD.org>

sys/dev: further adoption of SPDX licensing ID tags.

Mainly focus on files that use BSD 2-Clause license, however the tool I
was using misidentified many licenses so this was mostly a manual - error
prone - task.

The Software Package Data Exchange (SPDX) group provides a specification
to make it easier for automated tools to detect and summarize well known
opensource licenses. We are gradually adopting the specification, noting
that the tags are considered only advisory and do not, in any way,
superceed or replace the license texts.


# 7eae0d9f 23-Jan-2016 Ruslan Bukin <br@FreeBSD.org>

o Add gain-level control registers.
o Fix style.

Sponsored by: Machdep, Inc.


# e4afd792 01-Mar-2012 Alexander Motin <mav@FreeBSD.org>

Add driver for the RME HDSPe AIO/RayDAT sound cards -- snd_hdspe(4).
Cards are expensive and so rare, so leave the driver as module.

Submitted by: Ruslan Bukin <br@bsdpad.com>
MFC after: 2 weeks