lkml.org 
[lkml]   [2018]   [Sep]   [4]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    From
    Subject[PATCH 00/29] staging: bcm2835-audio: Cleanups and fixes
    Date
    Hi,

    since I had an opportunity to play with RPi3B+ recently, I took a look
    at the existing bcm2835-audio driver code and was amused very much :)

    So here is the result, a cleanup and fix patch series.

    Most of the patches are trivial cleanups, just brushing up, removing
    many redundant and buggy codes, as well as code simplifications.

    A big functional change is that now it uses non-atomic PCM ops, so
    that we can kill the ugly workqueue usages. Also, the resource
    management was simplified.

    As a result, we can get rid of ca 1000 lines. Not too bad.


    Takashi

    ===

    Takashi Iwai (29):
    staging: bcm2835-audio: Clean up mutex locks
    staging: bcm2835-audio: Remove redundant spdif stream ctls
    staging: bcm2835-audio: Clean up include files in bcm2835-ctl.c
    staging: bcm2835-audio: Remove redundant substream mask checks
    staging: bcm2835-audio: Fix mute controls, volume handling cleanup
    staging: bcm2835-audio: Remove redundant function calls
    staging: bcm2835-audio: Remove superfluous open flag
    staging: bcm2835-audio: Drop useless running flag and check
    staging: bcm2835-audio: Fix incorrect draining handling
    staging: bcm2835-audio: Kill unused spinlock
    staging: bcm2835-audio: Use PCM runtime values instead
    staging: bcm2835-audio: Drop unnecessary pcm indirect setup
    staging: bcm2835-audio: Drop useless NULL check
    staging: bcm2835-audio: Propagate parameter setup error
    staging: bcm2835-audio: Drop debug messages in bcm2835-pcm.c
    staging: bcm2835-audio: Drop superfluous mutex lock during prepare
    staging: bcm2835-audio: Add 10ms period constraint
    staging: bcm2835-audio: Make single vchi handle
    staging: bcm2835-audio: Code refactoring of vchiq accessor codes
    staging: bcm2835-audio: Operate non-atomic PCM ops
    staging: bcm2835-audio: Use card->private_data
    staging: bcm2835-audio: Use standard error print helpers
    staging: bcm2835-audio: Remove unnecessary header file includes
    staging: bcm2835-audio: Move module parameter description
    staging: bcm2835-audio: Use coherent device buffers
    staging: bcm2835-audio: Set SNDRV_PCM_INFO_SYNC_APPLPTR
    staging: bcm2835-audio: Simplify PCM creation helpers
    staging: bcm2835-audio: Simplify kctl creation helpers
    staging: bcm2835-audio: Simplify card object management

    .../vc04_services/bcm2835-audio/bcm2835-ctl.c | 235 ++---
    .../vc04_services/bcm2835-audio/bcm2835-pcm.c | 338 ++-----
    .../bcm2835-audio/bcm2835-vchiq.c | 893 +++++-------------
    .../vc04_services/bcm2835-audio/bcm2835.c | 222 ++---
    .../vc04_services/bcm2835-audio/bcm2835.h | 85 +-
    5 files changed, 413 insertions(+), 1360 deletions(-)

    --
    2.18.0

    \
     
     \ /
      Last update: 2018-09-04 18:00    [W:2.461 / U:0.056 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site