~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

TOMOYO Linux Cross Reference
Linux/include/sound/pcm_oss.h

Version: ~ [ linux-6.12-rc7 ] ~ [ linux-6.11.7 ] ~ [ linux-6.10.14 ] ~ [ linux-6.9.12 ] ~ [ linux-6.8.12 ] ~ [ linux-6.7.12 ] ~ [ linux-6.6.60 ] ~ [ linux-6.5.13 ] ~ [ linux-6.4.16 ] ~ [ linux-6.3.13 ] ~ [ linux-6.2.16 ] ~ [ linux-6.1.116 ] ~ [ linux-6.0.19 ] ~ [ linux-5.19.17 ] ~ [ linux-5.18.19 ] ~ [ linux-5.17.15 ] ~ [ linux-5.16.20 ] ~ [ linux-5.15.171 ] ~ [ linux-5.14.21 ] ~ [ linux-5.13.19 ] ~ [ linux-5.12.19 ] ~ [ linux-5.11.22 ] ~ [ linux-5.10.229 ] ~ [ linux-5.9.16 ] ~ [ linux-5.8.18 ] ~ [ linux-5.7.19 ] ~ [ linux-5.6.19 ] ~ [ linux-5.5.19 ] ~ [ linux-5.4.285 ] ~ [ linux-5.3.18 ] ~ [ linux-5.2.21 ] ~ [ linux-5.1.21 ] ~ [ linux-5.0.21 ] ~ [ linux-4.20.17 ] ~ [ linux-4.19.323 ] ~ [ linux-4.18.20 ] ~ [ linux-4.17.19 ] ~ [ linux-4.16.18 ] ~ [ linux-4.15.18 ] ~ [ linux-4.14.336 ] ~ [ linux-4.13.16 ] ~ [ linux-4.12.14 ] ~ [ linux-4.11.12 ] ~ [ linux-4.10.17 ] ~ [ linux-4.9.337 ] ~ [ linux-4.4.302 ] ~ [ linux-3.10.108 ] ~ [ linux-2.6.32.71 ] ~ [ linux-2.6.0 ] ~ [ linux-2.4.37.11 ] ~ [ unix-v6-master ] ~ [ ccs-tools-1.8.12 ] ~ [ policy-sample ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

Diff markup

Differences between /include/sound/pcm_oss.h (Version linux-6.12-rc7) and /include/sound/pcm_oss.h (Version linux-2.6.0)


  1 /* SPDX-License-Identifier: GPL-2.0-or-later * << 
  2 #ifndef __SOUND_PCM_OSS_H                           1 #ifndef __SOUND_PCM_OSS_H
  3 #define __SOUND_PCM_OSS_H                           2 #define __SOUND_PCM_OSS_H
  4                                                     3 
  5 /*                                                  4 /*
  6  *  Digital Audio (PCM) - OSS compatibility ab      5  *  Digital Audio (PCM) - OSS compatibility abstract layer
  7  *  Copyright (c) by Jaroslav Kysela <perex@pe !!   6  *  Copyright (c) by Jaroslav Kysela <perex@suse.cz>
                                                   >>   7  *
                                                   >>   8  *
                                                   >>   9  *   This program is free software; you can redistribute it and/or modify
                                                   >>  10  *   it under the terms of the GNU General Public License as published by
                                                   >>  11  *   the Free Software Foundation; either version 2 of the License, or
                                                   >>  12  *   (at your option) any later version.
                                                   >>  13  *
                                                   >>  14  *   This program is distributed in the hope that it will be useful,
                                                   >>  15  *   but WITHOUT ANY WARRANTY; without even the implied warranty of
                                                   >>  16  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
                                                   >>  17  *   GNU General Public License for more details.
                                                   >>  18  *
                                                   >>  19  *   You should have received a copy of the GNU General Public License
                                                   >>  20  *   along with this program; if not, write to the Free Software
                                                   >>  21  *   Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
                                                   >>  22  *
  8  */                                                23  */
  9                                                    24 
 10 struct snd_pcm_oss_setup {                     !!  25 typedef struct _snd_pcm_plugin snd_pcm_plugin_t;
                                                   >>  26 typedef struct _snd_pcm_oss_setup snd_pcm_oss_setup_t;
                                                   >>  27 
                                                   >>  28 struct _snd_pcm_oss_setup {
 11         char *task_name;                           29         char *task_name;
 12         unsigned int disable:1,                    30         unsigned int disable:1,
 13                      direct:1,                     31                      direct:1,
 14                      block:1,                      32                      block:1,
 15                      nonblock:1,                   33                      nonblock:1,
 16                      partialfrag:1,            !!  34                      wholefrag:1,
 17                      nosilence:1,              !!  35                      nosilence:1;
 18                      buggyptr:1;               << 
 19         unsigned int periods;                      36         unsigned int periods;
 20         unsigned int period_size;                  37         unsigned int period_size;
 21         struct snd_pcm_oss_setup *next;        !!  38         snd_pcm_oss_setup_t *next;
 22 };                                                 39 };
 23                                                    40 
 24 struct snd_pcm_oss_runtime {                   !!  41 typedef struct _snd_pcm_oss_runtime {
 25         unsigned params: 1,                    !!  42         int params: 1,                          /* format/parameter change */
 26                  prepare: 1,                   !!  43             prepare: 1,                         /* need to prepare the operation */
 27                  trigger: 1,                   !!  44             trigger: 1,                         /* trigger flag */
 28                  sync_trigger: 1;              !!  45             sync_trigger: 1;                    /* sync trigger flag */
 29         int rate;                                  46         int rate;                               /* requested rate */
 30         int format;                                47         int format;                             /* requested OSS format */
 31         unsigned int channels;                     48         unsigned int channels;                  /* requested channels */
 32         unsigned int fragshift;                    49         unsigned int fragshift;
 33         unsigned int maxfrags;                     50         unsigned int maxfrags;
 34         unsigned int subdivision;                  51         unsigned int subdivision;               /* requested subdivision */
 35         size_t period_bytes;                       52         size_t period_bytes;                    /* requested period size */
 36         size_t period_frames;                  << 
 37         size_t period_ptr;                         53         size_t period_ptr;                      /* actual write pointer to period */
 38         unsigned int periods;                      54         unsigned int periods;
 39         size_t buffer_bytes;                       55         size_t buffer_bytes;                    /* requested buffer size */
 40         size_t bytes;                              56         size_t bytes;                           /* total # bytes processed */
 41         size_t mmap_bytes;                         57         size_t mmap_bytes;
 42         char *buffer;                              58         char *buffer;                           /* vmallocated period */
 43         size_t buffer_used;                        59         size_t buffer_used;                     /* used length from period buffer */
 44         struct mutex params_lock;              !!  60         snd_pcm_plugin_t *plugin_first;
 45         atomic_t rw_ref;                /* con !!  61         snd_pcm_plugin_t *plugin_last;
 46 #ifdef CONFIG_SND_PCM_OSS_PLUGINS              !!  62         unsigned int prev_hw_ptr_interrupt;
 47         struct snd_pcm_plugin *plugin_first;   !!  63 } snd_pcm_oss_runtime_t;
 48         struct snd_pcm_plugin *plugin_last;    !!  64 
 49 #endif                                         !!  65 typedef struct _snd_pcm_oss_file {
 50         unsigned int prev_hw_ptr_period;       !!  66         snd_pcm_substream_t *streams[2];
 51 };                                             !!  67 } snd_pcm_oss_file_t;
                                                   >>  68 
                                                   >>  69 typedef struct _snd_pcm_oss_substream {
                                                   >>  70         int oss: 1;                             /* oss mode */
                                                   >>  71         snd_pcm_oss_setup_t *setup;             /* active setup */
                                                   >>  72         snd_pcm_oss_file_t *file;
                                                   >>  73 } snd_pcm_oss_substream_t;
                                                   >>  74 
                                                   >>  75 typedef struct _snd_pcm_oss_stream {
                                                   >>  76         snd_pcm_oss_setup_t *setup_list;        /* setup list */
                                                   >>  77         struct semaphore setup_mutex;
                                                   >>  78         snd_info_entry_t *proc_entry;
                                                   >>  79 } snd_pcm_oss_stream_t;
 52                                                    80 
 53 struct snd_pcm_oss_file {                      !!  81 typedef struct _snd_pcm_oss {
 54         struct snd_pcm_substream *streams[2];  << 
 55 };                                             << 
 56                                                << 
 57 struct snd_pcm_oss_substream {                 << 
 58         unsigned oss: 1;                       << 
 59         struct snd_pcm_oss_setup setup;        << 
 60 };                                             << 
 61                                                << 
 62 struct snd_pcm_oss_stream {                    << 
 63         struct snd_pcm_oss_setup *setup_list;  << 
 64         struct mutex setup_mutex;              << 
 65 #ifdef CONFIG_SND_VERBOSE_PROCFS               << 
 66         struct snd_info_entry *proc_entry;     << 
 67 #endif                                         << 
 68 };                                             << 
 69                                                << 
 70 struct snd_pcm_oss {                           << 
 71         int reg;                                   82         int reg;
 72         unsigned int reg_mask;                     83         unsigned int reg_mask;
 73 };                                             !!  84 } snd_pcm_oss_t;
 74                                                    85 
 75 #endif /* __SOUND_PCM_OSS_H */                     86 #endif /* __SOUND_PCM_OSS_H */
 76                                                    87 

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

kernel.org | git.kernel.org | LWN.net | Project Home | SVN repository | Mail admin

Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.

sflogo.php