/linux-6.14.4/Documentation/devicetree/bindings/gpio/ |
D | gpio-dsp-keystone.txt | 1 Keystone 2 DSP GPIO controller bindings 3 HOST OS userland running on ARM can send interrupts to DSP cores using 4 the DSP GPIO controller IP. It provides 28 IRQ signals per each DSP core. 7 For example TCI6638K2K SoC has 8 DSP GPIO controllers: 8 - 8 for C66x CorePacx CPUs 0-7 10 Keystone 2 DSP GPIO controller has specific features: 11 - each GPIO can be configured only as output pin; 12 - setting GPIO value to 1 causes IRQ generation on target DSP core; 13 - reading pin value returns 0 - if IRQ was handled or 1 - IRQ is still 17 - compatible: should be "ti,keystone-dsp-gpio" [all …]
|
/linux-6.14.4/drivers/remoteproc/ |
D | da8xx_remoteproc.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * Remote processor machine-specific module for DA8XX 14 #include <linux/irq.h> 26 "Name of DSP firmware file in /lib/firmware (if not specified defaults to 'rproc-dsp-fw')"); 29 * OMAP-L138 Technical References: 30 * http://www.ti.com/product/omap-l138 38 #define DA8XX_RPROC_LOCAL_ADDRESS_MASK (SZ_16M - 1) 41 * struct da8xx_rproc_mem - internal memory structure 44 * @dev_addr: Device address of the memory region from DSP view 55 * struct da8xx_rproc - da8xx remote processor instance state [all …]
|
D | keystone_remoteproc.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * TI Keystone DSP remoteproc driver 5 * Copyright (C) 2015-2017 Texas Instruments Incorporated - http://www.ti.com/ 25 #define KEYSTONE_RPROC_LOCAL_ADDRESS_MASK (SZ_16M - 1) 28 * struct keystone_rproc_mem - internal memory structure 31 * @dev_addr: Device address of the memory region from DSP view 42 * struct keystone_rproc - keystone remote processor driver structure 50 * @irq_ring: irq entry for vring 51 * @irq_fault: irq entry for exception 69 /* Put the DSP processor into reset */ [all …]
|
/linux-6.14.4/drivers/mfd/ |
D | cs40l50-core.c | 1 // SPDX-License-Identifier: GPL-2.0 4 * integrated DSP, and closed-loop algorithms 19 { .name = "cs40l50-codec", }, 20 { .name = "cs40l50-vibra", }, 33 "vdd-io", 82 dev_err(dev, "Timed out writing %#X to DSP: %d\n", val, ret); in cs40l50_dsp_write() 90 dev_err(dev, "DSP failed to ACK %#X: %d\n", val, ret); in cs40l50_dsp_write() 116 struct cs_dsp *dsp = &cs40l50->dsp; in cs40l50_wseq_init() local 118 cs40l50->wseqs[CS40L50_STANDBY].ctl = cs_dsp_get_ctl(dsp, "STANDBY_SEQUENCE", in cs40l50_wseq_init() 121 if (!cs40l50->wseqs[CS40L50_STANDBY].ctl) { in cs40l50_wseq_init() [all …]
|
/linux-6.14.4/sound/soc/codecs/ |
D | wm_adsp.h | 1 /* SPDX-License-Identifier: GPL-2.0-only */ 3 * wm_adsp.h -- Wolfson ADSP support 17 #include <sound/soc-dapm.h> 40 int (*control_add)(struct wm_adsp *dsp, struct cs_dsp_coeff_ctl *cs_ctl); 41 int (*pre_run)(struct wm_adsp *dsp); 82 int wm_adsp1_init(struct wm_adsp *dsp); 83 int wm_adsp2_init(struct wm_adsp *dsp); 84 void wm_adsp2_remove(struct wm_adsp *dsp); 85 int wm_adsp2_component_probe(struct wm_adsp *dsp, struct snd_soc_component *component); 86 int wm_adsp2_component_remove(struct wm_adsp *dsp, struct snd_soc_component *component); [all …]
|
D | cs35l45.c | 1 // SPDX-License-Identifier: GPL-2.0 3 // cs35l45.c - CS35L45 ALSA SoC audio driver 5 // Copyright 2019-2022 Cirrus Logic, Inc. 53 if (!cs35l45->dsp.cs_dsp.running) { in cs35l45_set_cspl_mbox_cmd() 54 dev_err(cs35l45->dev, "DSP not running\n"); in cs35l45_set_cspl_mbox_cmd() 55 return -EPERM; in cs35l45_set_cspl_mbox_cmd() 62 dev_err(cs35l45->dev, "Failed to write MBOX: %d\n", ret); in cs35l45_set_cspl_mbox_cmd() 72 dev_err(cs35l45->dev, "Failed to read MBOX STS: %d\n", ret); in cs35l45_set_cspl_mbox_cmd() 77 dev_dbg(cs35l45->dev, "[%u] cmd %u returned invalid sts %u", i, cmd, sts); in cs35l45_set_cspl_mbox_cmd() 83 dev_err(cs35l45->dev, "Failed to set mailbox cmd %u (status %u)\n", cmd, sts); in cs35l45_set_cspl_mbox_cmd() [all …]
|
D | cs35l56.c | 1 // SPDX-License-Identifier: GPL-2.0-only 27 #include <sound/cs-amp-lib.h> 31 #include <sound/soc-dapm.h> 43 flush_work(&cs35l56->dsp_work); in cs35l56_wait_dsp_ready() 66 static DECLARE_TLV_DB_SCALE(vol_tlv, -10000, 25, 0); 162 struct snd_soc_component *component = snd_soc_dapm_to_component(w->dapm); in cs35l56_play_event() 167 dev_dbg(cs35l56->base.dev, "play: %d\n", event); in cs35l56_play_event() 172 return regmap_write(cs35l56->base.regmap, CS35L56_DSP_VIRTUAL1_MBOX_1, in cs35l56_play_event() 176 ret = regmap_read_poll_timeout(cs35l56->base.regmap, in cs35l56_play_event() 182 dev_err(cs35l56->base.dev, "PS0 wait failed: %d\n", ret); in cs35l56_play_event() [all …]
|
D | wm_adsp.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * wm_adsp.c -- Wolfson ADSP support 36 dev_crit(_dsp->cs_dsp.dev, "%s: " fmt, _dsp->cs_dsp.name, ##__VA_ARGS__) 38 dev_err(_dsp->cs_dsp.dev, "%s: " fmt, _dsp->cs_dsp.name, ##__VA_ARGS__) 40 dev_warn(_dsp->cs_dsp.dev, "%s: " fmt, _dsp->cs_dsp.name, ##__VA_ARGS__) 42 dev_info(_dsp->cs_dsp.dev, "%s: " fmt, _dsp->cs_dsp.name, ##__VA_ARGS__) 44 dev_dbg(_dsp->cs_dsp.dev, "%s: " fmt, _dsp->cs_dsp.name, ##__VA_ARGS__) 47 adsp_err(_obj->dsp, "%s: " fmt, _obj->name ? _obj->name : "legacy", \ 50 adsp_dbg(_obj->dsp, "%s: " fmt, _obj->name ? _obj->name : "legacy", \ 128 __be32 buf1_size; /* Size of buf1 area in DSP words */ [all …]
|
D | cs35l41.c | 1 // SPDX-License-Identifier: GPL-2.0 3 // cs35l41.c -- CS35l41 ALSA SoC audio driver 5 // Copyright 2017-2021 Cirrus Logic, Inc. 22 #include <sound/soc-dapm.h> 164 return -EINVAL; in cs35l41_get_fs_mon_config_index() 169 1, 913, TLV_DB_MINMAX_ITEM(-10200, 1200)); 186 struct snd_soc_component *component = snd_soc_dapm_to_component(w->dapm); in cs35l41_dsp_preload_ev() 192 if (cs35l41->dsp.cs_dsp.booted) in cs35l41_dsp_preload_ev() 197 if (cs35l41->dsp.preloaded) in cs35l41_dsp_preload_ev() 200 if (cs35l41->dsp.cs_dsp.running) { in cs35l41_dsp_preload_ev() [all …]
|
D | wm0010.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * wm0010.c -- WM0010 DSP Driver 113 int irq; member 147 /* Called with wm0010->lock held */ 155 spin_lock_irqsave(&wm0010->irq_lock, flags); in wm0010_halt() 156 state = wm0010->state; in wm0010_halt() 157 spin_unlock_irqrestore(&wm0010->irq_lock, flags); in wm0010_halt() 168 gpiod_set_value_cansleep(wm0010->reset, 1); in wm0010_halt() 170 regulator_disable(wm0010->dbvdd); in wm0010_halt() 171 regulator_bulk_disable(ARRAY_SIZE(wm0010->core_supplies), in wm0010_halt() [all …]
|
/linux-6.14.4/drivers/char/mwave/ |
D | README | 2 -------------- 14 MW_TRACE macro #defined (i.e. let ccflags-y := -DMW_TRACE 18 If the dsp irq has not been setup and stored in bios by the 20 irq used by the dsp to be configured. 23 If the dsp io range has not been setup and stored in bios by the 25 io range used by the dsp to be configured. 28 If the mwave's uart irq has not been setup and stored in bios by the 30 irq used by the mwave uart to be configured. 37 Example to enable the 3780i DSP using ttyS1 resources: 42 -------------------- [all …]
|
D | 3780i.h | 3 * 3780i.h -- declarations for 3780i.c 23 * LIMITATION, ANY WARRANTIES OR CONDITIONS OF TITLE, NON-INFRINGEMENT, 42 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 45 * 10/23/2000 - Alpha Release 54 /* DSP I/O port offsets and definitions */ 62 #define DSP_MsaDataDSISHigh 0x0008 /* MSA data register: d-store word or high byte of i-stor… 63 #define DSP_MsaDataISLow 0x000A /* MSA data register: low word of i-store */ 76 unsigned short EnableDspInt:1; /* RW: Enable DSP to X86 ISA interrupt 0=mask it, 1=enable it */ 84 /* DSP register indexes used with the configuration register address (index) register */ 96 unsigned char IrqActiveLow:1; /* RW: IRQ active high or low: 0=high, 1=low */ [all …]
|
/linux-6.14.4/sound/drivers/vx/ |
D | vx_core.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 31 * vx_check_reg_bit - wait for the specified bit is set/reset on a register 35 * @time: time-out of loop in msec 55 dev_dbg(chip->card->dev, in snd_vx_check_reg_bit() 58 return -EIO; in snd_vx_check_reg_bit() 64 * vx_send_irq_dsp - set command irq bit 65 * @num: the requested IRQ type, IRQ_XXX 67 * this triggers the specified IRQ request 77 return -EIO; in vx_send_irq_dsp() 88 * vx_reset_chk - reset CHK bit on ISR [all …]
|
/linux-6.14.4/sound/soc/sof/intel/ |
D | hda-ipc.c | 1 // SPDX-License-Identifier: (GPL-2.0-only OR BSD-3-Clause) 15 * Hardware interface for generic Intel audio DSP HDA IP 32 * tell DSP cmd is done - clear busy in hda_dsp_ipc_host_done() 33 * interrupt and send reply msg to dsp in hda_dsp_ipc_host_done() 50 * set DONE bit - tell DSP we have received the reply msg in hda_dsp_ipc_dsp_done() 51 * from DSP, and processed it, don't send more reply to host in hda_dsp_ipc_dsp_done() 67 /* send IPC message to DSP */ in hda_dsp_ipc_send_msg() 68 sof_mailbox_write(sdev, sdev->host_box.offset, msg->msg_data, in hda_dsp_ipc_send_msg() 69 msg->msg_size); in hda_dsp_ipc_send_msg() 93 struct sof_ipc4_msg *msg_data = msg->msg_data; in hda_dsp_ipc4_schedule_d0i3_work() [all …]
|
D | bdw.c | 1 // SPDX-License-Identifier: (GPL-2.0-only OR BSD-3-Clause) 12 * Hardware interface for audio DSP on Broadwell 18 #include <sound/soc-acpi.h> 19 #include <sound/soc-acpi-intel-match.h> 20 #include <sound/intel-dsp-config.h> 23 #include "../sof-acpi-dev.h" 24 #include "../sof-audio.h" 34 /* DSP memories for BDW */ 47 /* DSP peripherals */ 80 * DSP Control. [all …]
|
D | cnl.c | 1 // SPDX-License-Identifier: (GPL-2.0-only OR BSD-3-Clause) 15 * Hardware interface for audio DSP on Cannonlake. 21 #include "../ipc4-priv.h" 24 #include "hda-ipc.h" 25 #include "../sof-audio.h" 30 {"dsp", HDA_DSP_BAR, 0, 0x10000, SOF_DEBUGFS_ACCESS_ALWAYS}, 36 irqreturn_t cnl_ipc4_irq_thread(int irq, void *context) in cnl_ipc4_irq_thread() argument 47 /* DSP received the message */ in cnl_ipc4_irq_thread() 58 /* Message from DSP (reply or notification) */ in cnl_ipc4_irq_thread() 66 if (likely(sdev->fw_state == SOF_FW_BOOT_COMPLETE)) { in cnl_ipc4_irq_thread() [all …]
|
D | atom.c | 1 // SPDX-License-Identifier: (GPL-2.0-only OR BSD-3-Clause) 6 // Copyright(c) 2018-2021 Intel Corporation 12 * Hardware interface for audio DSP on Atom devices 18 #include <sound/soc-acpi.h> 19 #include <sound/soc-acpi-intel-match.h> 20 #include <sound/intel-dsp-config.h> 24 #include "../sof-acpi-dev.h" 25 #include "../sof-audio.h" 26 #include "../../intel/common/soc-intel-quirks.h" 40 u32 offset = sdev->dsp_oops_offset; in atom_get_registers() [all …]
|
D | hda.c | 1 // SPDX-License-Identifier: (GPL-2.0-only OR BSD-3-Clause) 15 * Hardware interface for generic Intel audio DSP HDA IP 26 #include <sound/intel-dsp-config.h> 27 #include <sound/intel-nhlt.h> 28 #include <sound/soc-acpi-intel-ssp-common.h> 31 #include <sound/hda-mlink.h> 32 #include "../sof-audio.h" 33 #include "../sof-pci-dev.h" 35 #include "../ipc4-topology.h" 41 #include <sound/soc-acpi-intel-match.h> [all …]
|
/linux-6.14.4/sound/isa/ |
D | sc6000.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 3 * Driver for Gallant SC-6000 soundcard. This card is also known as 4 * Audio Excel DSP 16 or Zoltrix AV302. 5 * These cards use CompuMedia ASC-9308 chip + AD1848 codec. 6 * SC-6600 and SC-7000 cards are also supported. They are based on 7 * CompuMedia ASC-9408 chip and CS4231 codec. 30 MODULE_DESCRIPTION("Gallant SC-6000"); 33 static int index[SNDRV_CARDS] = SNDRV_DEFAULT_IDX; /* Index 0-MAX */ 37 static int irq[SNDRV_CARDS] = SNDRV_DEFAULT_IRQ; /* 5, 7, 9, 10, 11 */ variable 43 static bool joystick[SNDRV_CARDS] = { [0 ... (SNDRV_CARDS-1)] = false }; [all …]
|
/linux-6.14.4/Documentation/devicetree/bindings/pinctrl/ |
D | cirrus,lochnagar.yaml | 1 # SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause 3 --- 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 10 - [email protected] 15 Logic devices on mini-cards, as well as allowing connection of various 26 [2] Pinctrl: ../pinctrl/pinctrl-bindings.txt 29 [3] include/dt-bindings/pinctrl/lochnagar.h 37 - cirrus,lochnagar-pinctrl 39 gpio-controller: true 41 '#gpio-cells': [all …]
|
/linux-6.14.4/Documentation/devicetree/bindings/dsp/ |
D | mediatek,mt8195-dsp.yaml | 1 # SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/dsp/mediatek,mt8195-dsp.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: Mediatek mt8195 DSP core 10 - YC Hung <[email protected]> 13 Some boards from mt8195 contain a DSP core used for 14 advanced pre- and post- audio processing. 18 const: mediatek,mt8195-dsp 22 - description: Address and size of the DSP Cfg registers [all …]
|
/linux-6.14.4/sound/isa/msnd/ |
D | msnd_pinnacle.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 16 * the following is a copy of the 2.4.18 OSS FREE file-heading comment: 21 * -- If MSND_CLASSIC is defined: 23 * -> driver for Turtle Beach Classic/Monterey/Tahiti 25 * -- Else 27 * -> driver for Turtle Beach Pinnacle/Fiji 29 * 12-3-2000 Modified IO port validation Steve Sycamore 44 #include <linux/irq.h> 62 # define DEV_NAME "msnd-classic" 66 # define DEV_NAME "msnd-pinnacle" [all …]
|
/linux-6.14.4/Documentation/devicetree/bindings/interrupt-controller/ |
D | ti,keystone-irq.txt | 1 Keystone 2 IRQ controller IP 3 On Keystone SOCs, DSP cores can send interrupts to ARM 4 host using the IRQ controller IP. It provides 28 IRQ signals to ARM. 5 The IRQ handler running on HOST OS can identify DSP signal source by 10 - compatible: should be "ti,keystone-irq" 11 - ti,syscon-dev : phandle and offset pair. The phandle to syscon used to 14 - interrupt-controller : Identifies the node as an interrupt controller 15 - #interrupt-cells : Specifies the number of cells needed to encode interrupt 17 - interrupts: interrupt reference to primary interrupt controller 24 compatible = "ti,keystone-irq"; [all …]
|
/linux-6.14.4/arch/arm/mach-omap1/ |
D | pm.c | 2 * linux/arch/arm/mach-omap1/pm.c 51 #include <asm/irq.h> 53 #include <asm/mach/irq.h> 55 #include <linux/soc/ti/omap1-io.h> 57 #include <linux/omap-dma.h> 58 #include <clocksource/timer-ti-dm.h> 91 return -EINVAL; in idle_store() 163 * Turn off all interrupts except GPIO bank 1, L1-2nd level cascade, in omap_pm_wakeup_setup() 191 /* New IRQ agreement, recalculate in cascade order */ in omap_pm_wakeup_setup() 263 /* (Step 3 removed - we now allow deep sleep by default) */ in omap1_pm_suspend() [all …]
|
/linux-6.14.4/arch/arc/ |
D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0-only 3 # Copyright (C) 2004, 2007-2010, 2011-2012 Synopsys, Inc. (www.synopsys.com) 90 source "arch/arc/plat-tb10x/Kconfig" 91 source "arch/arc/plat-axs10x/Kconfig" 92 source "arch/arc/plat-hsdk/Kconfig" 110 ISA for the Next Generation ARC-HS cores 128 -MMU-v3: Variable Page Sz (4k, 8k, 16k), bigger J-TLB (128x4) 130 -Caches: New Prog Model, Region Flush 131 -Insns: endian swap, load-locked/store-conditional, time-stamp-ctr 134 bool "ARC-HS" [all …]
|