~ [ 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.32.71)


  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@perex.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 struct snd_pcm_oss_setup {
 11         char *task_name;                           26         char *task_name;
 12         unsigned int disable:1,                    27         unsigned int disable:1,
 13                      direct:1,                     28                      direct:1,
 14                      block:1,                      29                      block:1,
 15                      nonblock:1,                   30                      nonblock:1,
 16                      partialfrag:1,                31                      partialfrag:1,
 17                      nosilence:1,                  32                      nosilence:1,
 18                      buggyptr:1;                   33                      buggyptr:1;
 19         unsigned int periods;                      34         unsigned int periods;
 20         unsigned int period_size;                  35         unsigned int period_size;
 21         struct snd_pcm_oss_setup *next;            36         struct snd_pcm_oss_setup *next;
 22 };                                                 37 };
 23                                                    38 
 24 struct snd_pcm_oss_runtime {                       39 struct snd_pcm_oss_runtime {
 25         unsigned params: 1,                        40         unsigned params: 1,                     /* format/parameter change */
 26                  prepare: 1,                       41                  prepare: 1,                    /* need to prepare the operation */
 27                  trigger: 1,                       42                  trigger: 1,                    /* trigger flag */
 28                  sync_trigger: 1;                  43                  sync_trigger: 1;               /* sync trigger flag */
 29         int rate;                                  44         int rate;                               /* requested rate */
 30         int format;                                45         int format;                             /* requested OSS format */
 31         unsigned int channels;                     46         unsigned int channels;                  /* requested channels */
 32         unsigned int fragshift;                    47         unsigned int fragshift;
 33         unsigned int maxfrags;                     48         unsigned int maxfrags;
 34         unsigned int subdivision;                  49         unsigned int subdivision;               /* requested subdivision */
 35         size_t period_bytes;                       50         size_t period_bytes;                    /* requested period size */
 36         size_t period_frames;                      51         size_t period_frames;                   /* period frames for poll */
 37         size_t period_ptr;                         52         size_t period_ptr;                      /* actual write pointer to period */
 38         unsigned int periods;                      53         unsigned int periods;
 39         size_t buffer_bytes;                       54         size_t buffer_bytes;                    /* requested buffer size */
 40         size_t bytes;                              55         size_t bytes;                           /* total # bytes processed */
 41         size_t mmap_bytes;                         56         size_t mmap_bytes;
 42         char *buffer;                              57         char *buffer;                           /* vmallocated period */
 43         size_t buffer_used;                        58         size_t buffer_used;                     /* used length from period buffer */
 44         struct mutex params_lock;                  59         struct mutex params_lock;
 45         atomic_t rw_ref;                /* con << 
 46 #ifdef CONFIG_SND_PCM_OSS_PLUGINS                  60 #ifdef CONFIG_SND_PCM_OSS_PLUGINS
 47         struct snd_pcm_plugin *plugin_first;       61         struct snd_pcm_plugin *plugin_first;
 48         struct snd_pcm_plugin *plugin_last;        62         struct snd_pcm_plugin *plugin_last;
 49 #endif                                             63 #endif
 50         unsigned int prev_hw_ptr_period;       !!  64         unsigned int prev_hw_ptr_interrupt;
 51 };                                                 65 };
 52                                                    66 
 53 struct snd_pcm_oss_file {                          67 struct snd_pcm_oss_file {
 54         struct snd_pcm_substream *streams[2];      68         struct snd_pcm_substream *streams[2];
 55 };                                                 69 };
 56                                                    70 
 57 struct snd_pcm_oss_substream {                     71 struct snd_pcm_oss_substream {
 58         unsigned oss: 1;                           72         unsigned oss: 1;                        /* oss mode */
 59         struct snd_pcm_oss_setup setup;            73         struct snd_pcm_oss_setup setup;         /* active setup */
 60 };                                                 74 };
 61                                                    75 
 62 struct snd_pcm_oss_stream {                        76 struct snd_pcm_oss_stream {
 63         struct snd_pcm_oss_setup *setup_list;      77         struct snd_pcm_oss_setup *setup_list;   /* setup list */
 64         struct mutex setup_mutex;                  78         struct mutex setup_mutex;
 65 #ifdef CONFIG_SND_VERBOSE_PROCFS                   79 #ifdef CONFIG_SND_VERBOSE_PROCFS
 66         struct snd_info_entry *proc_entry;         80         struct snd_info_entry *proc_entry;
 67 #endif                                             81 #endif
 68 };                                                 82 };
 69                                                    83 
 70 struct snd_pcm_oss {                               84 struct snd_pcm_oss {
 71         int reg;                                   85         int reg;
 72         unsigned int reg_mask;                     86         unsigned int reg_mask;
 73 };                                                 87 };
 74                                                    88 
 75 #endif /* __SOUND_PCM_OSS_H */                     89 #endif /* __SOUND_PCM_OSS_H */
 76                                                    90 

~ [ 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