/linux/drivers/isdn/mISDN/ |
H A D | dsp_cmx.c | 132 #include "dsp.h" 148 dsp_cmx_debug(struct dsp *dsp) in dsp_cmx_debug() argument 152 struct dsp *odsp; in dsp_cmx_debug() 154 printk(KERN_DEBUG "-----Current DSP\n"); in dsp_cmx_debug() 161 if (dsp == odsp) in dsp_cmx_debug() 173 member->dsp->name, member->dsp->pcm_slot_tx, in dsp_cmx_debug() 174 member->dsp->pcm_bank_tx, member->dsp->pcm_slot_rx, in dsp_cmx_debug() 175 member->dsp->pcm_bank_rx, member->dsp->hfc_conf, in dsp_cmx_debug() 176 member->dsp->tx_data, member->dsp->rx_is_off, in dsp_cmx_debug() 177 (member->dsp == dsp) ? " *this*" : ""); in dsp_cmx_debug() [all …]
|
H A D | dsp_core.c | 23 * The dsp module provides layer 2 for b-channels (64kbit). It provides 96 * NOTE: The channel must be activated in order to make dsp work, even if 137 * When data is received from upper or lower layer (card), the complete dsp 139 * must lock timer events by DSP poll timer. 161 #include "dsp.h" 180 DEFINE_SPINLOCK(dsp_lock); /* global dsp lock */ 189 dsp_rx_off_member(struct dsp *dsp) in dsp_rx_off_member() argument 196 if (!dsp->features_rx_off) in dsp_rx_off_member() 200 if (!dsp->rx_disabled) in dsp_rx_off_member() 203 else if (dsp->dtmf.software) in dsp_rx_off_member() [all …]
|
H A D | dsp_dtmf.c | 15 #include "dsp.h" 40 void dsp_dtmf_goertzel_init(struct dsp *dsp) in dsp_dtmf_goertzel_init() argument 42 dsp->dtmf.size = 0; in dsp_dtmf_goertzel_init() 43 dsp->dtmf.lastwhat = '\0'; in dsp_dtmf_goertzel_init() 44 dsp->dtmf.lastdigit = '\0'; in dsp_dtmf_goertzel_init() 45 dsp->dtmf.count = 0; in dsp_dtmf_goertzel_init() 50 void dsp_dtmf_hardware(struct dsp *dsp) in dsp_dtmf_hardware() argument 54 if (!dsp->dtmf.enable) in dsp_dtmf_hardware() 57 if (!dsp->features.hfc_dtmf) in dsp_dtmf_hardware() 61 if (dsp->tx_volume) { in dsp_dtmf_hardware() [all …]
|
H A D | dsp.h | 91 /* all members within a conference (this is linked 1:1 with the dsp) */ 92 struct dsp; 95 struct dsp *dsp; member 170 struct dsp { struct 245 extern void dsp_cmx_debug(struct dsp *dsp); argument 246 extern void dsp_cmx_hardware(struct dsp_conf *conf, struct dsp *dsp); 247 extern int dsp_cmx_conf(struct dsp *dsp, u32 conf_id); 248 extern void dsp_cmx_receive(struct dsp *dsp, struct sk_buff *skb); 249 extern void dsp_cmx_hdlc(struct dsp *dsp, struct sk_buff *skb); 251 extern void dsp_cmx_transmit(struct dsp *dsp, struct sk_buff *skb); [all …]
|
H A D | dsp_hwec.c | 4 * builtin mISDN dsp pipeline element for enabling the hw echocanceller 16 #include "dsp.h" 34 void dsp_hwec_enable(struct dsp *dsp, const char *arg) in dsp_hwec_enable() argument 40 if (!dsp) { in dsp_hwec_enable() 41 printk(KERN_ERR "%s: failed to enable hwec: dsp is NULL\n", in dsp_hwec_enable() 85 if (!dsp->ch.peer->ctrl(&dsp->ch, CONTROL_CHANNEL, &cq)) { in dsp_hwec_enable() 92 void dsp_hwec_disable(struct dsp *dsp) in dsp_hwec_disable() argument 96 if (!dsp) { in dsp_hwec_disable() 97 printk(KERN_ERR "%s: failed to disable hwec: dsp is NULL\n", in dsp_hwec_disable() 105 if (!dsp->ch.peer->ctrl(&dsp->ch, CONTROL_CHANNEL, &cq)) { in dsp_hwec_disable()
|
/linux/drivers/firmware/cirrus/ |
H A D | cs_dsp.c | 3 * cs_dsp.c -- Cirrus Logic DSP firmware support 286 bool (*validate_version)(struct cs_dsp *dsp, unsigned int version); 287 unsigned int (*parse_sizes)(struct cs_dsp *dsp, 291 int (*setup_algs)(struct cs_dsp *dsp); 295 void (*show_fw_status)(struct cs_dsp *dsp); 296 void (*stop_watchdog)(struct cs_dsp *dsp); 298 int (*enable_memory)(struct cs_dsp *dsp); 299 void (*disable_memory)(struct cs_dsp *dsp); 300 int (*lock_memory)(struct cs_dsp *dsp, unsigned int lock_regions); 302 int (*enable_core)(struct cs_dsp *dsp); [all …]
|
/linux/sound/soc/codecs/ |
H A D | wm_adsp.c | 48 adsp_err(_obj->dsp, "%s: " fmt, _obj->name ? _obj->name : "legacy", \ 51 adsp_dbg(_obj->dsp, "%s: " fmt, _obj->name ? _obj->name : "legacy", \ 129 __be32 buf1_size; /* Size of buf1 area in DSP words */ 131 __be32 buf1_buf2_size; /* Size of buf1+buf2 in DSP words */ 133 __be32 buf_total_size; /* Size of buf1+buf2+buf3 in DSP words */ 152 struct wm_adsp *dsp; member 169 struct wm_adsp *dsp; member 201 static int wm_adsp_buffer_init(struct wm_adsp *dsp); 202 static int wm_adsp_buffer_free(struct wm_adsp *dsp); 324 struct wm_adsp *dsp = snd_soc_component_get_drvdata(component); in wm_adsp_fw_get() local [all …]
|
H A D | wm_adsp.h | 42 int (*control_add)(struct wm_adsp *dsp, struct cs_dsp_coeff_ctl *cs_ctl); 43 int (*pre_run)(struct wm_adsp *dsp); 84 int wm_adsp1_init(struct wm_adsp *dsp); 85 int wm_adsp2_init(struct wm_adsp *dsp); 86 void wm_adsp2_remove(struct wm_adsp *dsp); 87 int wm_adsp2_component_probe(struct wm_adsp *dsp, struct snd_soc_component *component); 88 int wm_adsp2_component_remove(struct wm_adsp *dsp, struct snd_soc_component *component); 89 int wm_halo_init(struct wm_adsp *dsp); 97 int wm_adsp_power_up(struct wm_adsp *dsp, bool load_firmware); 98 void wm_adsp_power_down(struct wm_adsp *dsp); [all …]
|
/linux/Documentation/devicetree/bindings/pinctrl/ |
H A D | cirrus,lochnagar.yaml | 72 enum: [ codec-aif1, codec-aif2, codec-aif3, dsp-aif1, 73 dsp-aif2, psia1, psia2, gf-aif1, gf-aif2, gf-aif3, 84 codec-gpio7, codec-gpio8, dsp-gpio1, dsp-gpio2, 85 dsp-gpio3, dsp-gpio4, dsp-gpio5, dsp-gpio6, 90 codec-aif3-lrclk, codec-aif3-txdat, dsp-aif1-bclk, 91 dsp-aif1-rxdat, dsp-aif1-lrclk, dsp-aif1-txdat, 92 dsp-aif2-bclk, dsp-aif2-rxdat, dsp-aif2-lrclk, 93 dsp-aif2-txdat, psia1-bclk, psia1-rxdat, psia1-lrclk, 100 gf-aif2-lrclk, gf-aif2-txdat, dsp-uart1-rx, 101 dsp-uart1-tx, dsp-uart2-rx, dsp-uart2-tx, [all …]
|
/linux/drivers/firmware/cirrus/test/ |
H A D | cs_dsp_test_bin_error.c | 82 /* Add a single payload to be written to DSP memory */ in bin_load_with_unknown_blocks() 91 cs_dsp_power_up(priv->dsp, local->wmfw, "wmfw", bin, "bin", "misc"), in bin_load_with_unknown_blocks() 97 regmap_raw_read(priv->dsp->regmap, reg_addr, readback, payload_size_bytes), in bin_load_with_unknown_blocks() 111 cs_dsp_power_up(priv->dsp, local->wmfw, "wmfw", NULL, NULL, "misc"), in bin_err_wrong_magic() 113 cs_dsp_power_down(priv->dsp); in bin_err_wrong_magic() 119 cs_dsp_power_up(priv->dsp, local->wmfw, "wmfw", bin, "bin", "misc"), in bin_err_wrong_magic() 124 cs_dsp_power_up(priv->dsp, local->wmfw, "wmfw", bin, "bin", "misc"), in bin_err_wrong_magic() 129 cs_dsp_power_up(priv->dsp, local->wmfw, "wmfw", bin, "bin", "misc"), in bin_err_wrong_magic() 134 cs_dsp_power_up(priv->dsp, local->wmfw, "wmfw", bin, "bin", "misc"), in bin_err_wrong_magic() 139 cs_dsp_power_up(priv->dsp, local->wmfw, "wmfw", bin, "bin", "misc"), in bin_err_wrong_magic() [all …]
|
H A D | cs_dsp_test_control_cache.c | 149 struct cs_dsp *dsp = priv->dsp; in cs_dsp_ctl_v2_cache_alloc() local 158 /* Create some DSP data to initialize the control cache */ in cs_dsp_ctl_v2_cache_alloc() 166 regmap_raw_write(dsp->regmap, reg, reg_vals, alg_size_bytes); in cs_dsp_ctl_v2_cache_alloc() 185 KUNIT_ASSERT_EQ(test, cs_dsp_power_up(dsp, wmfw, "mock_fw", NULL, NULL, "misc"), 0); in cs_dsp_ctl_v2_cache_alloc() 187 KUNIT_EXPECT_EQ(test, list_count_nodes(&dsp->ctl_list), num_ctls); in cs_dsp_ctl_v2_cache_alloc() 190 list_for_each_entry(ctl, &dsp->ctl_list, list) in cs_dsp_ctl_v2_cache_alloc() 203 struct cs_dsp *dsp = priv->dsp; in cs_dsp_ctl_cache_init() local 217 /* Create some DSP data to be read into the control cache */ in cs_dsp_ctl_cache_init() 223 regmap_raw_write(dsp->regmap, reg, reg_vals, param->len_bytes); in cs_dsp_ctl_cache_init() 238 KUNIT_ASSERT_EQ(test, cs_dsp_power_up(dsp, wmfw, "mock_fw", NULL, NULL, "misc"), 0); in cs_dsp_ctl_cache_init() [all …]
|
H A D | cs_dsp_mock_mem_maps.c | 3 // Mock DSP memory maps for cs_dsp KUnit tests. 87 * @dsp: Pointer to struct cs_dsp. 92 unsigned int cs_dsp_mock_size_of_region(const struct cs_dsp *dsp, int mem_type) in cs_dsp_mock_size_of_region() argument 97 if (dsp->mem == cs_dsp_mock_halo_dsp1_regions) in cs_dsp_mock_size_of_region() 99 else if (dsp->mem == cs_dsp_mock_adsp2_32bit_dsp1_regions) in cs_dsp_mock_size_of_region() 101 else if (dsp->mem == cs_dsp_mock_adsp2_16bit_dsp1_regions) in cs_dsp_mock_size_of_region() 106 for (i = 0; i < dsp->num_mems; ++i) { in cs_dsp_mock_size_of_region() 107 if (dsp->mem[i].type == mem_type) in cs_dsp_mock_size_of_region() 125 int num_mems = priv->dsp->num_mems; in cs_dsp_mock_base_addr_for_mem() 126 const struct cs_dsp_region *region = priv->dsp->mem; in cs_dsp_mock_base_addr_for_mem() [all …]
|
H A D | cs_dsp_test_bin.c | 37 * dsp words: The addressing scheme used by the DSP, pointers and lengths 38 * in DSP memory use this. A memory region (XM, YM, ZM) is 39 * also required to create a unique DSP memory address. 44 * unpacked: Registers that have a 1:1 mapping to DSP words 45 * packed: Registers that pack multiple DSP words more efficiently into 51 * of multiple DSP words. 55 * can be expressed in dsp words, register addresses, or bytes. 106 * Convert number of DSP words to number of packed registers rounded 115 /* bin file that patches a single DSP word */ 140 cs_dsp_power_up(priv->dsp, priv->local->wmfw, "mock_wmfw", in bin_patch_one_word() [all …]
|
/linux/include/linux/firmware/cirrus/ |
H A D | cs_dsp.h | 3 * cs_dsp.h -- Cirrus Logic DSP firmware support 56 * struct cs_dsp_region - Describes a logical memory region in DSP address space 66 * struct cs_dsp_alg_region - Describes a logical algorithm region in DSP address space 84 * @dsp: DSP instance associated with this control 100 struct cs_dsp *dsp; member 121 * struct cs_dsp - Configuration and state of a Cirrus Logic DSP 122 * @name: The name of the DSP instance 123 * @rev: Revision of the DSP 124 * @num: DSP instance number 125 * @type: Type of DSP [all …]
|
/linux/include/media/drv-intf/ |
H A D | msp3400.h | 25 the DSP (the tuner input first goes through the demodulator). 27 The DSP handles things like volume, bass/treble, balance, and some chips 29 and SCART1/2. Each output can select which DSP input to use. So the MAIN 36 Most DSP outputs are also the outputs of the msp3400. However, the SCART 38 SCART2 output from the DSP, or the msp3400 SCART inputs, thus completely 39 bypassing the DSP. 49 3) which DSP input to use for each DSP output 63 /* Inputs to the DSP unit: two independent selections have to be made: 70 /* SCART input to DSP selection */ 76 #define MSP_IN_MUTE 7 /* Mute DSP input */ [all …]
|
/linux/Documentation/devicetree/bindings/dsp/ |
H A D | mediatek,mt8186-dsp.yaml | 4 $id: http://devicetree.org/schemas/dsp/mediatek,mt8186-dsp.yaml# 7 title: MediaTek mt8186 DSP core 13 MediaTek mt8186 SoC contains a DSP core used for 19 - mediatek,mt8186-dsp 20 - mediatek,mt8188-dsp 24 - description: Address and size of the DSP config registers 25 - description: Address and size of the DSP SRAM 26 - description: Address and size of the DSP secure registers 27 - description: Address and size of the DSP bus registers 38 - description: mux for audio dsp clock [all …]
|
H A D | mediatek,mt8195-dsp.yaml | 4 $id: http://devicetree.org/schemas/dsp/mediatek,mt8195-dsp.yaml# 7 title: Mediatek mt8195 DSP core 13 Some boards from mt8195 contain a DSP core used for 18 const: mediatek,mt8195-dsp 22 - description: Address and size of the DSP Cfg registers 23 - description: Address and size of the DSP SRAM 32 - description: mux for audio dsp clock 34 - description: mux for audio dsp local bus 35 - description: default audio dsp local bus clock source 36 - description: clock gate for audio dsp clock [all …]
|
/linux/Documentation/devicetree/bindings/remoteproc/ |
H A D | ti,keystone-rproc.txt | 1 TI Keystone DSP devices 4 The TI Keystone 2 family of SoCs usually have one or more (upto 8) TI DSP Core 10 a dedicated local power/sleep controller etc. The DSP processor core in 13 DSP Device Node: 15 Each DSP Core sub-system is represented as a single DT node, and should also 26 "ti,k2hk-dsp" for DSPs on Keystone 2 66AK2H/K SoCs 27 "ti,k2l-dsp" for DSPs on Keystone 2 66AK2L SoCs 28 "ti,k2e-dsp" for DSPs on Keystone 2 66AK2E SoCs 29 "ti,k2g-dsp" for DSPs on Keystone 2 66AK2G SoCs 42 State Control node, and the register offset of the DSP [all …]
|
H A D | ti,k3-dsp-rproc.yaml | 4 $id: http://devicetree.org/schemas/remoteproc/ti,k3-dsp-rproc.yaml# 7 title: TI K3 DSP devices 13 The TI K3 family of SoCs usually have one or more TI DSP Core sub-systems 19 controller, a dedicated local power/sleep controller etc. The DSP processor 23 Each DSP Core sub-system is represented as a single DT node. Each node has a 31 - ti,am62a-c7xv-dsp 32 - ti,j721e-c66-dsp 33 - ti,j721e-c71-dsp 34 - ti,j721s2-c71-dsp 36 Use "ti,am62a-c7xv-dsp" for AM62A Deep learning DSPs on K3 AM62A SoCs [all …]
|
H A D | ti,davinci-rproc.txt | 1 TI Davinci DSP devices 4 The TI Davinci family of SoCs usually contains a TI DSP Core sub-system that 10 controller, a dedicated local power/sleep controller etc. The DSP processor 11 core used in Davinci SoCs is usually a C674x DSP CPU. 13 DSP Device Node: 15 Each DSP Core sub-system is represented as a single DT node. 22 "ti,da850-dsp" for DSPs on OMAP-L138 SoCs 35 interrupts from the DSP. The value should follow the 49 /* DSP Reserved Memory node */ 55 dsp_memory_region: dsp-memory@c3000000 { [all …]
|
/linux/drivers/mfd/ |
H A D | cs40l50-core.c | 4 * integrated DSP, and closed-loop algorithms 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() 126 cs40l50->wseqs[CS40L50_ACTIVE].ctl = cs_dsp_get_ctl(dsp, "ACTIVE_SEQUENCE", in cs40l50_wseq_init() 134 cs40l50->wseqs[CS40L50_PWR_ON].ctl = cs_dsp_get_ctl(dsp, "PM_PWR_ON_SEQ", in cs40l50_wseq_init() 142 return cs_dsp_wseq_init(&cs40l50->dsp, cs40l50->wseqs, ARRAY_SIZE(cs40l50->wseqs)); in cs40l50_wseq_init() 155 ret = cs_dsp_wseq_multi_write(&cs40l50->dsp, &cs40l50->wseqs[CS40L50_PWR_ON], in cs40l50_dsp_config() 167 return cs_dsp_wseq_multi_write(&cs40l50->dsp, &cs40l50->wseqs[CS40L50_PWR_ON], in cs40l50_dsp_config() [all …]
|
/linux/arch/mips/include/asm/ |
H A D | dsp.h | 41 tsk->thread.dsp.dspr[0] = mfhi1(); \ 42 tsk->thread.dsp.dspr[1] = mflo1(); \ 43 tsk->thread.dsp.dspr[2] = mfhi2(); \ 44 tsk->thread.dsp.dspr[3] = mflo2(); \ 45 tsk->thread.dsp.dspr[4] = mfhi3(); \ 46 tsk->thread.dsp.dspr[5] = mflo3(); \ 47 tsk->thread.dsp.dspcontrol = rddsp(DSP_MASK); \ 58 mthi1(tsk->thread.dsp.dspr[0]); \ 59 mtlo1(tsk->thread.dsp.dspr[1]); \ 60 mthi2(tsk->thread.dsp.dspr[2]); \ [all …]
|
/linux/arch/arm/mach-omap2/ |
H A D | powerdomains2xxx_3xxx_data.c | 12 * The names for the DSP/IVA2 powerdomains are confusing. 14 * Most OMAP chips have an on-board DSP. 16 * On the 2420, this is a 'C55 DSP called, simply, the DSP. Its 17 * powerdomain is called the "DSP power domain." On the 2430, the 18 * on-board DSP is a 'C64 DSP, now called (along with its hardware 20 * the "DSP power domain." On the 3430, the DSP is a 'C64 DSP like the 25 * core, and has nothing to do with the DSP/IVA2. 27 * Ideally the DSP/IVA2 could just be the same powerdomain, but the PRCM
|
/linux/arch/arm/boot/dts/ti/keystone/ |
H A D | keystone-k2hk.dtsi | 92 compatible = "ti,keystone-dsp-gpio"; 100 compatible = "ti,keystone-dsp-gpio"; 108 compatible = "ti,keystone-dsp-gpio"; 116 compatible = "ti,keystone-dsp-gpio"; 124 compatible = "ti,keystone-dsp-gpio"; 132 compatible = "ti,keystone-dsp-gpio"; 140 compatible = "ti,keystone-dsp-gpio"; 148 compatible = "ti,keystone-dsp-gpio"; 156 dsp0: dsp@10800000 { 157 compatible = "ti,k2hk-dsp"; [all …]
|
/linux/Documentation/hwmon/ |
H A D | lochnagar.rst | 33 in1_input Measured voltage for 1V8 DSP (milliVolts) 34 in1_label "1V8 DSP" 35 curr2_input Measured current for 1V8 DSP (milliAmps) 36 curr2_label "1V8 DSP" 37 power2_average Measured average power for 1V8 DSP (microWatts) 39 power2_label "1V8 DSP" 47 in3_input Measured voltage for VDDCORE DSP (milliVolts) 48 in3_label "VDDCORE DSP" 49 curr4_input Measured current for VDDCORE DSP (milliAmps) 50 curr4_label "VDDCORE DSP" [all …]
|