History log of /freebsd-current/sys/arm/broadcom/bcm2835/bcm2835_audio.c
Revision Date Author Comments
# a3513995 06-May-2024 Christos Margiolis <christos@FreeBSD.org>

arm: Remove stray references to dev/sound/chip.h

Fixes: 923e0040a59a ("sound: Move chip.h contents to pcm/sound.h")
Reported by: Jenkins CI
Sponsored by: The FreeBSD Foundation
MFC after: 1 week


# 5aacf339 18-Aug-2023 John Baldwin <jhb@FreeBSD.org>

sys: Remove SND_DECLARE_FILE

Reviewed by: kbowling, imp, emaste
Differential Revision: https://reviews.freebsd.org/D41499


# 82a265ad 16-Aug-2023 Warner Losh <imp@FreeBSD.org>

sys: Remove $FreeBSD$: sound driver version

Remove /SND_DECLARE_FILE\("\$FreeBSD\$"\);/


# 2287364e 06-May-2022 John Baldwin <jhb@FreeBSD.org>

Remove pcm_devclass from DRIVER_MODULE invocations.


# 4f6be8c7 08-Apr-2022 John Baldwin <jhb@FreeBSD.org>

bcm2835_audio_callback: Don't process garbage if there is no message.

If vchi_msg_dequeue failed due to an empty queue, return rather than
treating stack garbage as a valid message.


# 65454883 01-Sep-2020 Mateusz Guzik <mjg@FreeBSD.org>

arm: clean up empty lines in .c and .h files


# 7029da5c 26-Feb-2020 Pawel Biernacki <kaktus@FreeBSD.org>

Mark more nodes as CTLFLAG_MPSAFE or CTLFLAG_NEEDGIANT (17 of many)

r357614 added CTLFLAG_NEEDGIANT to make it easier to find nodes that are
still not MPSAFE (or already are but aren’t properly marked).
Use it in preparation for a general review of all nodes.

This is non-functional change that adds annotations to SYSCTL_NODE and
SYSCTL_PROC nodes using one of the soon-to-be-required flags.

Mark all obvious cases as MPSAFE. All entries that haven't been marked
as MPSAFE before are by default marked as NEEDGIANT

Approved by: kib (mentor, blanket)
Commented by: kib, gallatin, melifaro
Differential Revision: https://reviews.freebsd.org/D23718


# 3a48aebf 27-Dec-2016 Oleksandr Tymoshenko <gonzo@FreeBSD.org>

[rpi] Fix bcm2835_audio locking and samples starvation

Rework general approach to locking and working with audio worker thread:

- Use flags to signal requested worker action
- Fix submitted buffer calculations to avoid samples starvation
- Protect buffer pointers with locks to fix race condition between callback
and audio worker thread
- Remove unnecessary vchi_service_use
- Do not use lock to serialize VCHI requests since only one thread issues them now
- Fix unloading signaling per hselasky@ suggestion
- Add output to detect inconsistent callback data caused by possible firmware bug
https://github.com/raspberrypi/firmware/issues/696
- Add stats/debug sysctls to troubleshoot possible bugs

PR: 213687, 205979, 215194
MFC after: 1 week


# 69cab2d1 07-Nov-2016 Oleksandr Tymoshenko <gonzo@FreeBSD.org>

Fix locking in bcm2835_audio driver

- Move all VCHI activity to worker thread: channel methods are called with
non-sleepable lock held and VCHI uses sleepable lock.

- In worker thread use sx(9) lock instead of mutex(9) for the same reason.

PR: 213801, 205979


# 255eff3b 04-May-2016 Pedro F. Giffuni <pfg@FreeBSD.org>

sys/arm: Minor spelling fixes.

Only affects comments: no functional change.


# 2c0b1f4f 12-Apr-2016 Oleksandr Tymoshenko <gonzo@FreeBSD.org>

Multiple fixes in VCHI audio driver:

- Pre-buffer audio data to VideoCore so there are no audible glitches when
driver is too late to provide samples
- Start actual playback when there is some prebuffered audio,
it fixes audible noisy click in the beginning of playback
- Use #defines instead of hardcoded values where appropriate
- Fix copy-pasted comment

PR: 208678


# d28956b4 28-Feb-2016 Oleksandr Tymoshenko <gonzo@FreeBSD.org>

Fix typo in device description

Spotted by: jmcneill


# ebb62474 07-Nov-2015 Oleksandr Tymoshenko <gonzo@FreeBSD.org>

Fix some of WITNESS complaints and bootup lock by removing msg_avail
condvar/mutex. They're basically no-op because error is not propagated
up the call chain. We still report message failures in VC service callback


# 2f99b597 07-Feb-2015 Oleksandr Tymoshenko <gonzo@FreeBSD.org>

Add VideoCore audio driver for Rasperry Pi (BCM2835)