Home
last modified time | relevance | path

Searched +full:pcm +full:- +full:sync +full:- +full:mode (Results 1 – 25 of 158) sorted by relevance

1234567

/openbmc/linux/Documentation/sound/soc/
H A Ddai.rst6 SoC controllers and portable audio CODECs today, namely AC97, I2S and PCM.
35 I2S has several different operating modes:-
47 PCM chapter
50 PCM is another 4 wire interface, very similar to I2S, which can support a more
51 flexible protocol. It has bit clock (BCLK) and sync (SYNC) lines that are used
54 while sync runs at the sample rate. PCM also supports Time Division
56 is sometimes referred to as network mode).
58 Common PCM operating modes:-
60 Mode A
61 MSB is transmitted on falling edge of first BCLK after FRAME/SYNC.
[all …]
/openbmc/linux/Documentation/devicetree/bindings/net/
H A Dbroadcom-bluetooth.yaml1 # SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
3 ---
4 $id: http://devicetree.org/schemas/net/broadcom-bluetooth.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
10 - Linus Walleij <linus.walleij@linaro.org>
13 This binding describes Broadcom UART-attached bluetooth chips.
18 - brcm,bcm20702a1
19 - brcm,bcm4329-bt
20 - brcm,bcm4330-bt
21 - brcm,bcm4334-bt
[all …]
/openbmc/linux/sound/soc/mediatek/mt6797/
H A Dmt6797-dai-pcm.c1 // SPDX-License-Identifier: GPL-2.0
10 #include "mt6797-afe-common.h"
11 #include "mt6797-interconnection.h"
12 #include "mt6797-reg.h"
30 /* bck sync length = 1 */
32 /* bck sync length = PCM_INTF_CON1[9:13] */
42 /* slave mode & external modem uses different crystal */
44 /* slave mode & external modem uses the same crystal */
122 /* inter-connections */
155 {"PCM 1 Playback", NULL, "PCM_1_PB_CH1"},
[all …]
/openbmc/linux/sound/soc/mediatek/mt8183/
H A Dmt8183-dai-pcm.c1 // SPDX-License-Identifier: GPL-2.0
10 #include "mt8183-afe-common.h"
11 #include "mt8183-interconnection.h"
12 #include "mt8183-reg.h"
30 /* bck sync length = 1 */
32 /* bck sync length = PCM_INTF_CON1[9:13] */
42 /* slave mode & external modem uses different crystal */
44 /* slave mode & external modem uses the same crystal */
122 /* inter-connections */
155 {"PCM 1 Playback", NULL, "PCM_1_PB_CH1"},
[all …]
/openbmc/linux/sound/soc/bcm/
H A Dbcm2835-i2s.c1 // SPDX-License-Identifier: GPL-2.0-only
9 * Raspberry Pi PCM I2S ALSA Driver
23 * Copyright 2007-2010 Freescale Semiconductor, Inc.
39 #include <sound/pcm.h>
130 unsigned int provider = dev->fmt & SND_SOC_DAIFMT_CLOCK_PROVIDER_MASK; in bcm2835_i2s_start_clock()
132 if (dev->clk_prepared) in bcm2835_i2s_start_clock()
138 clk_prepare_enable(dev->clk); in bcm2835_i2s_start_clock()
139 dev->clk_prepared = true; in bcm2835_i2s_start_clock()
148 if (dev->clk_prepared) in bcm2835_i2s_stop_clock()
149 clk_disable_unprepare(dev->clk); in bcm2835_i2s_stop_clock()
[all …]
/openbmc/linux/sound/soc/mediatek/mt8186/
H A Dmt8186-dai-pcm.c1 // SPDX-License-Identifier: GPL-2.0
10 #include "mt8186-afe-common.h"
11 #include "mt8186-afe-gpio.h"
12 #include "mt8186-interconnection.h"
37 /* bck sync length = 1 */
39 /* bck sync length = PCM_INTF_CON1[9:13] */
49 /* slave mode & external modem uses different crystal */
51 /* slave mode & external modem uses the same crystal */
122 struct snd_soc_component *cmpnt = snd_soc_dapm_to_component(w->dapm); in mtk_pcm_en_event()
125 dev_dbg(afe->dev, "%s(), name %s, event 0x%x\n", in mtk_pcm_en_event()
[all …]
/openbmc/linux/sound/soc/mediatek/mt8192/
H A Dmt8192-dai-pcm.c1 // SPDX-License-Identifier: GPL-2.0
12 #include "mt8192-afe-common.h"
13 #include "mt8192-interconnection.h"
31 /* bck sync length = 1 */
33 /* bck sync length = PCM_INTF_CON1[9:13] */
43 /* slave mode & external modem uses different crystal */
45 /* slave mode & external modem uses the same crystal */
178 struct snd_soc_component *cmpnt = snd_soc_dapm_to_component(w->dapm); in mtk_pcm_en_event()
181 dev_info(afe->dev, "%s(), name %s, event 0x%x\n", in mtk_pcm_en_event()
182 __func__, w->name, event); in mtk_pcm_en_event()
[all …]
/openbmc/linux/sound/soc/mediatek/mt8195/
H A Dmt8195-dai-pcm.c1 // SPDX-License-Identifier: GPL-2.0
3 * MediaTek ALSA SoC Audio DAI PCM I/F Control
12 #include "mt8195-afe-clk.h"
13 #include "mt8195-afe-common.h"
14 #include "mt8195-reg.h"
60 return -EINVAL; in mtk_dai_pcm_mode()
122 struct snd_pcm_runtime * const runtime = substream->runtime; in mtk_dai_pcm_configure()
124 struct mt8195_afe_private *afe_priv = afe->platform_priv; in mtk_dai_pcm_configure()
130 unsigned int bit_width = dai->sample_bits; in mtk_dai_pcm_configure()
134 int mode = 0; in mtk_dai_pcm_configure() local
[all …]
/openbmc/linux/sound/soc/mediatek/mt8188/
H A Dmt8188-dai-pcm.c1 // SPDX-License-Identifier: GPL-2.0
3 * MediaTek ALSA SoC Audio DAI PCM I/F Control
8 * Chun-Chia Chiu <chun-chia.chiu@mediatek.com>
14 #include "mt8188-afe-clk.h"
15 #include "mt8188-afe-common.h"
16 #include "mt8188-reg.h"
62 return -EINVAL; in mtk_dai_pcm_mode()
123 struct snd_pcm_runtime * const runtime = substream->runtime; in mtk_dai_pcm_configure()
125 struct mt8188_afe_private *afe_priv = afe->platform_priv; in mtk_dai_pcm_configure()
131 unsigned int bit_width = dai->sample_bits; in mtk_dai_pcm_configure()
[all …]
/openbmc/linux/sound/usb/
H A Dusbaudio.h1 /* SPDX-License-Identifier: GPL-2.0-or-later */
10 /* handling of USB vendor/product ID pairs as 32-bit numbers */
46 struct list_head pcm_list; /* list of pcm streams */
47 struct list_head ep_list; /* list of audio-related endpoints */
68 #define USB_AUDIO_IFACE_UNUSED ((void *)-1L)
71 dev_err(&(chip)->dev->dev, fmt, ##args)
73 dev_err_ratelimited(&(chip)->dev->dev, fmt, ##args)
75 dev_warn(&(chip)->dev->dev, fmt, ##args)
77 dev_info(&(chip)->dev->dev, fmt, ##args)
79 dev_dbg(&(chip)->dev->dev, fmt, ##args)
[all …]
H A Dpcm.c1 // SPDX-License-Identifier: GPL-2.0-or-later
11 #include <linux/usb/audio-v2.h>
14 #include <sound/pcm.h>
22 #include "pcm.h"
40 if (subs->direction == SNDRV_PCM_STREAM_PLAYBACK) { in snd_usb_pcm_delay()
41 queued = bytes_to_frames(runtime, subs->inflight_bytes); in snd_usb_pcm_delay()
44 } else if (!subs->running) { in snd_usb_pcm_delay()
48 current_frame_number = usb_get_current_frame_number(subs->dev); in snd_usb_pcm_delay()
54 frame_diff = (current_frame_number - subs->last_frame_number) & 0xff; in snd_usb_pcm_delay()
58 est_delay = frame_diff * runtime->rate / 1000; in snd_usb_pcm_delay()
[all …]
H A Dproc.c1 // SPDX-License-Identifier: GPL-2.0-or-later
10 #include <sound/pcm.h>
35 struct snd_usb_audio *chip = entry->private_data; in proc_audio_usbbus_read()
36 if (!atomic_read(&chip->shutdown)) in proc_audio_usbbus_read()
37 snd_iprintf(buffer, "%03d/%03d\n", chip->dev->bus->busnum, chip->dev->devnum); in proc_audio_usbbus_read()
42 struct snd_usb_audio *chip = entry->private_data; in proc_audio_usbid_read()
43 if (!atomic_read(&chip->shutdown)) in proc_audio_usbid_read()
45 USB_ID_VENDOR(chip->usb_id), in proc_audio_usbid_read()
46 USB_ID_PRODUCT(chip->usb_id)); in proc_audio_usbid_read()
51 snd_card_ro_proc_new(chip->card, "usbbus", chip, in snd_usb_audio_create_proc()
[all …]
H A Dcard.h1 /* SPDX-License-Identifier: GPL-2.0 */
7 #define MAX_PACKS_HS (MAX_PACKS * 8) /* in high speed mode */
9 #define SYNC_URBS 4 /* always four urbs for sync */
16 unsigned int fmt_type; /* USB audio format type (1-3) */
18 unsigned int frame_size; /* samples per frame for non-audio */
27 unsigned char sync_ep; /* sync endpoint number */
28 unsigned char sync_iface; /* sync EP interface */
29 unsigned char sync_altsetting; /* sync EP alternate setting */
30 unsigned char sync_ep_idx; /* sync EP array index */
68 int opened; /* open refcount; protect with chip->mutex */
[all …]
/openbmc/linux/sound/soc/ti/
H A Ddavinci-i2s.c1 // SPDX-License-Identifier: GPL-2.0-only
9 * based on davinci-mcasp.c DT support
25 #include <sound/pcm.h>
31 #include "edma-pcm.h"
32 #include "davinci-i2s.h"
34 #define DRV_NAME "davinci-i2s"
39 * - This driver supports the "Audio Serial Port" (ASP),
42 * - But it labels it a "Multi-channel Buffered Serial Port"
44 * backward-compatible, possibly explaining that confusion.
46 * - OMAP chips have a controller called McBSP, which is
[all …]
/openbmc/linux/sound/usb/line6/
H A Dpcm.h1 /* SPDX-License-Identifier: GPL-2.0-only */
5 * Copyright (C) 2004-2010 Markus Grabner (grabner@icg.tugraz.at)
9 PCM interface to POD series devices.
15 #include <sound/pcm.h>
35 Get substream from Line 6 PCM data structure
38 (line6pcm->pcm->streams[stream].substream)
41 PCM mode bits.
43 There are several features of the Line 6 USB driver which require PCM
45 *) PCM playback and capture via ALSA
51 subsystems with respect to PCM usage.
[all …]
/openbmc/linux/drivers/accessibility/speakup/
H A Dspeakup_dtlk.h1 /* SPDX-License-Identifier: GPL-2.0 */
2 /* speakup_dtlk.h - header file for speakups DoubleTalk driver. */
10 #define TTS_SPEAKING 0x40 /* mask for SYNC bit, which is nonzero
12 * output with TTS, PCM or CVSD
23 * bit goes zero 2-3 usec after
24 * writing, and goes 1 again 180-190
30 * buffer. AF is always 0 in the PCM,
36 * (TTS or PCM) buffer. AE is always 1
42 u_short serial_number; /* 0-7Fh:0-7Fh */
44 u_char mode; /* 0=Character; 1=Phoneme; 2=Text */ member
[all …]
/openbmc/linux/drivers/clk/st/
H A Dclk-flexgen.c1 // SPDX-License-Identifier: GPL-2.0-only
3 * clk-flexgen.c
5 * Copyright (C) ST-Microelectronics SA 2013
6 * Author: Maxime Coquelin <maxime.coquelin@st.com> for ST-Microelectronics.
10 #include <linux/clk-provider.h>
26 bool mode; member
36 /* Pre-divisor's gate */
38 /* Pre-divisor */
44 /* Asynchronous mode control */
45 struct clk_gate sync; member
[all …]
/openbmc/linux/include/linux/
H A Ddtlk.h1 /* SPDX-License-Identifier: GPL-2.0 */
17 #define TTS_SPEAKING 0x40 /* mask for SYNC bit, which is nonzero
19 output with TTS, PCM or CVSD
28 bit goes zero 2-3 usec after
29 writing, and goes 1 again 180-190
35 PCM, TGN and CVSD modes. */
39 input (TTS or PCM) buffer. AE is
67 unsigned short serial_number; /* 0-7Fh:0-7Fh */
69 unsigned char mode; /* 0=Character; 1=Phoneme; 2=Text */ member
70 unsigned char punc_level; /* nB; 0-7 */
[all …]
/openbmc/linux/drivers/isdn/hardware/mISDN/
H A Dhfcmulti.c1 // SPDX-License-Identifier: GPL-2.0-or-later
3 * hfcmulti.c low level driver for hfc-4s/hfc-8s/hfc-e1 based cards
7 * Peter Sprenger (sprengermoving-bytes.de)
9 * inspired by existing hfc-pci driver:
10 * Copyright 1999 by Werner Cornelius (werner@isdn-development.de)
22 * Bit 0-7 = 0x00001 = HFC-E1 (1 port)
23 * or Bit 0-7 = 0x00004 = HFC-4S (4 ports)
24 * or Bit 0-7 = 0x00008 = HFC-8S (8 ports)
26 * Bit 9 = 0x00200 = Disable DTMF detect on all B-channels via hardware
28 * Bit 11 = 0x00800 = Force PCM bus into slave mode. (otherwhise auto)
[all …]
/openbmc/linux/sound/pci/
H A Dsis7019.c1 // SPDX-License-Identifier: GPL-2.0-only
5 * Copyright (C) 2004-2007, David Dillow
7 * Inspired by the Trident 4D-WaveDX/NX driver.
28 static int index = SNDRV_DEFAULT_IDX1; /* Index 0-MAX */
52 * we use the hardware's built-in Mid-Loop Interrupt and End-Loop Interrupt
106 struct snd_pcm *pcm; member
141 * documented range of 8-0xfff8 samples. Given that they are 0-based,
142 * that places our period/buffer range at 9-0xfff9 samples. That makes the
193 void __iomem *base = voice->ctrl_base; in sis_update_sso()
195 voice->sso += period; in sis_update_sso()
[all …]
/openbmc/linux/sound/drivers/pcsp/
H A Dpcsp_lib.c1 // SPDX-License-Identifier: GPL-2.0
3 * PC-Speaker driver for Linux
5 * Copyright (C) 1993-1997 Michael Beck
6 * Copyright (C) 1997-2001 David Woodhouse
7 * Copyright (C) 2001-2008 Stas Sergeev
15 #include <sound/pcm.h>
27 * This avoids spinlock messes and long-running irq contexts
42 * called at the trigger-start and in hrtimer callback
52 if (chip->thalf) { in pcsp_timer_update()
53 outb(chip->val61, 0x61); in pcsp_timer_update()
[all …]
/openbmc/linux/sound/pci/rme9652/
H A Drme9652.c1 // SPDX-License-Identifier: GPL-2.0-or-later
5 * Copyright (c) 1999 IEM - Winfried Ritsch
6 * Copyright (c) 1999-2001 Paul Davis
19 #include <sound/pcm.h>
26 static int index[SNDRV_CARDS] = SNDRV_DEFAULT_IDX; /* Index 0-MAX */
55 /* Preferred sync source choices - used by "sync_pref" control switch */
68 /* ------------- Status-Register bits --------------------- */
71 #define RME9652_lock_2 (1<<1) /* ADAT 3-PLL: 1=locked, 0=unlocked */
72 #define RME9652_lock_1 (1<<2) /* ADAT 2-PLL: 1=locked, 0=unlocked */
73 #define RME9652_lock_0 (1<<3) /* ADAT 1-PLL: 1=locked, 0=unlocked */
[all …]
/openbmc/linux/Documentation/devicetree/bindings/sound/
H A Dcs35l36.txt5 - compatible : "cirrus,cs35l36"
7 - reg : the I2C address of the device for I2C
9 - VA-supply, VP-supply : power supplies for the device,
13 - cirrus,boost-ctl-millivolt : Boost Voltage Value. Configures the boost
18 - cirrus,boost-peak-milliamp : Boost-converter peak current limit in mA.
24 - cirrus,boost-ind-nanohenry : Inductor estimation LBST reference value.
32 - cirrus,multi-amp-mode : Boolean to determine if there are more than
33 one amplifier in the system. If more than one it is best to Hi-Z the ASP
36 - cirrus,boost-ctl-select : Boost converter control source selection.
39 0x00 - Control Port Value
[all …]
/openbmc/linux/sound/core/
H A Dpcm_lib.c1 // SPDX-License-Identifier: GPL-2.0-or-later
3 * Digital Audio (PCM) abstract layer
5 * Abramo Bagnara <abramo@alsa-project.org>
17 #include <sound/pcm.h>
43 delta = new_ptr - ptr; in update_silence_vars()
47 delta += runtime->boundary; in update_silence_vars()
48 if ((snd_pcm_uframes_t)delta < runtime->silence_filled) in update_silence_vars()
49 runtime->silence_filled -= delta; in update_silence_vars()
51 runtime->silence_filled = 0; in update_silence_vars()
52 runtime->silence_start = new_ptr; in update_silence_vars()
[all …]
/openbmc/linux/sound/soc/stm/
H A Dstm32_sai_sub.c1 // SPDX-License-Identifier: GPL-2.0-only
5 * Copyright (C) 2016, STMicroelectronics - All Rights Reserved
10 #include <linux/clk-provider.h>
41 #define STM_SAI_IS_PLAYBACK(ip) ((ip)->dir == SNDRV_PCM_STREAM_PLAYBACK)
42 #define STM_SAI_IS_CAPTURE(ip) ((ip)->dir == SNDRV_PCM_STREAM_CAPTURE)
47 #define STM_SAI_IS_SUB_A(x) ((x)->id == STM_SAI_A_ID)
53 #define STM_SAI_PROTOCOL_IS_SPDIF(ip) ((ip)->spdif)
54 #define STM_SAI_HAS_SPDIF(x) ((x)->pdata->conf.has_spdif_pdm)
55 #define STM_SAI_HAS_PDM(x) ((x)->pdata->conf.has_spdif_pdm)
56 #define STM_SAI_HAS_EXT_SYNC(x) (!STM_SAI_IS_F4(sai->pdata))
[all …]

1234567