| /linux/sound/soc/fsl/ |
| H A D | fsl_ssi.c | 1 // SPDX-License-Identifier: GPL-2.0 3 // Freescale SSI ALSA SoC Digital Audio Interface (DAI) driver 7 // Copyright 2007-2010 Freescale Semiconductor, Inc. 9 // Some notes why imx-pcm-fiq is used instead of DMA on some boards: 11 // The i.MX SSI core has some nasty limitations in AC97 mode. While most 13 // one FIFO which combines all valid receive slots. We cannot even select 16 // we receive in our (PCM-) data stream. The only chance we have is to 43 #include <linux/dma/imx-dma.h> 53 #include "imx-pcm.h" 55 /* Define RX and TX to index ssi->regvals array; Can be 0 or 1 only */ [all …]
|
| H A D | fsl_dma.c | 1 // SPDX-License-Identifier: GPL-2.0 7 // Copyright 2007-2010 Freescale Semiconductor, Inc. 16 #include <linux/dma-mapping.h> 72 /** fsl_dma_private: p-substream DMA data 74 * Each substream has a 1-to-1 association with a DMA channel. 76 * The link[] array is first because it needs to be aligned on a 32-byte 120 * Since each link descriptor has a 32-bit byte count field, we set 121 * period_bytes_max to the largest 32-bit number. We also have no maximum 125 * limitation in the SSI driver requires the sample rates for playback and 137 .period_bytes_max = (u32) -1, [all …]
|
| H A D | fsl-asoc-card.c | 1 // SPDX-License-Identifier: GPL-2.0 23 #include "imx-audmux.h" 33 #define DRIVER_NAME "fsl-asoc-card" 44 * struct codec_priv - CODEC private data 62 * struct cpu_priv - CPU private data 82 * struct fsl_asoc_card_priv - Freescale Generic ASOC card private data 93 * @asrc_rate: ASRC sample rate used by Back-Ends 94 * @asrc_format: ASRC sample format used by Back-Ends 120 * Note: keep all ASRC routes in the second half 121 * to drop them easily for non-ASRC cases. [all …]
|
| /linux/sound/soc/renesas/ |
| H A D | rz-ssi.c | 1 // SPDX-License-Identifier: GPL-2.0 3 // Renesas RZ/G2L ASoC Serial Sound Interface (SSIF-2) Driver 28 /* SSI REGISTER BITS */ 75 #define SSI_RATES SNDRV_PCM_RATE_8000_48000 /* 8k-48kHz */ 86 int fifo_sample_size; /* sample capacity of SSI FIFO */ 99 int (*transfer)(struct rz_ssi_priv *ssi, struct rz_ssi_stream *strm); 118 * The SSI supports full-duplex transmission and reception. 121 * So it is better to use as half-duplex (playing and recording 149 writel(data, (priv->base + reg)); in rz_ssi_reg_writel() 154 return readl(priv->base + reg); in rz_ssi_reg_readl() [all …]
|
| /linux/sound/soc/renesas/rcar/ |
| H A D | ssi.c | 1 // SPDX-License-Identifier: GPL-2.0 3 // Renesas R-Car SSIU/SSI support 13 * SSI interrupt status debug message when debugging 63 #define EN (1 << 0) /* SSI Module Enable */ 79 #define SSI_NAME "ssi" 103 #define RSND_SSI_NO_BUSIF (1 << 1) /* SSI+DMA without BUSIF */ 109 ((pos) = ((struct rsnd_ssi *)(priv)->ss 115 rsnd_ssi_is_parent(ssi,io) global() argument 125 struct rsnd_ssi *ssi = rsnd_mod_to_ssi(mod); rsnd_ssi_use_busif() local 272 struct rsnd_ssi *ssi = rsnd_mod_to_ssi(mod); rsnd_ssi_master_clk_start() local 348 struct rsnd_ssi *ssi = rsnd_mod_to_ssi(mod); rsnd_ssi_master_clk_stop() local 373 struct rsnd_ssi *ssi = rsnd_mod_to_ssi(mod); rsnd_ssi_config_init() local 461 struct rsnd_ssi *ssi = rsnd_mod_to_ssi(mod); rsnd_ssi_register_setup() local 477 struct rsnd_ssi *ssi = rsnd_mod_to_ssi(mod); rsnd_ssi_init() local 507 struct rsnd_ssi *ssi = rsnd_mod_to_ssi(mod); rsnd_ssi_quit() local 556 struct rsnd_ssi *ssi = rsnd_mod_to_ssi(mod); rsnd_ssi_start() local 589 struct rsnd_ssi *ssi = rsnd_mod_to_ssi(mod); rsnd_ssi_stop() local 813 struct rsnd_ssi *ssi = rsnd_mod_to_ssi(mod); rsnd_ssi_common_probe() local 855 struct rsnd_ssi *ssi = rsnd_mod_to_ssi(mod); rsnd_ssi_common_remove() local 879 struct rsnd_ssi *ssi = rsnd_mod_to_ssi(mod); rsnd_ssi_pio_interrupt() local 923 struct rsnd_ssi *ssi = rsnd_mod_to_ssi(mod); rsnd_ssi_pio_init() local 940 struct rsnd_ssi *ssi = rsnd_mod_to_ssi(mod); rsnd_ssi_pio_pointer() local 1039 struct rsnd_ssi *ssi = rsnd_mod_to_ssi(mod); rsnd_ssi_debug_info() local 1166 struct rsnd_ssi *ssi; rsnd_ssi_probe() local 1247 struct rsnd_ssi *ssi; rsnd_ssi_remove() local [all...] |
| H A D | core.c | 1 // SPDX-License-Identifier: GPL-2.0 3 // Renesas R-Car SRU/SCU/SSIU/SSI support 12 * Renesas R-Car sound device structure 17 * - SRC : Sampling Rate Converter 18 * - CMD 19 * - CTU : Channel Count Conversion Unit 20 * - MIX : Mixer 21 * - DVC : Digital Volume and Mute Function 22 * - SSI : Serial Sound Interface 27 * - SRC : Sampling Rate Converter [all …]
|
| H A D | ssiu.c | 1 // SPDX-License-Identifier: GPL-2.0 3 // Renesas R-Car SSIU support 13 u32 busif_status[8]; /* for BUSIF0 - BUSIF7 */ 23 #define rsnd_ssiu_nr(priv) ((priv)->ssiu_nr) 28 ((pos) = ((struct rsnd_ssiu *)(priv)->ssiu + i)); \ 32 * SSI Gen2 Gen3 Gen4 33 * 0 BUSIF0-3 BUSIF0-7 BUSIF0-7 34 * 1 BUSIF0-3 BUSIF0-7 35 * 2 BUSIF0-3 BUSIF0-7 36 * 3 BUSIF0 BUSIF0-7 [all …]
|
| H A D | adg.c | 1 // SPDX-License-Identifier: GPL-2.0 3 // Helper routines for R-Car sound ADG. 6 #include <linux/clk-provider.h> 52 (i < adg->clkin_size) && \ 53 ((pos) = adg->clkin[i]); \ 57 (i < adg->clkout_size) && \ 58 ((pos) = adg->clkout[i]); \ 60 #define rsnd_priv_to_adg(priv) ((struct rsnd_adg *)(priv)->adg) 87 for (i = 3; i >= 0; i--) { in rsnd_adg_calculate_brgx() 90 return (u32)((i << 8) | ((div / ratio) - 1)); in rsnd_adg_calculate_brgx() [all …]
|
| /linux/drivers/hsi/controllers/ |
| H A D | omap_ssi_core.c | 1 // SPDX-License-Identifier: GPL-2.0-only 2 /* OMAP SSI driver. 4 * Copyright (C) 2010 Nokia Corporation. All rights reserved. 17 #include <linux/dma-mapping.h> 42 struct hsi_controller *ssi = m->private; in ssi_regs_show() local 43 struct omap_ssi_controller *omap_ssi = hsi_controller_drvdata(ssi); in ssi_regs_show() 44 void __iomem *sys = omap_ssi->sys; in ssi_regs_show() 46 pm_runtime_get_sync(ssi->device.parent); in ssi_regs_show() 50 pm_runtime_put(ssi->device.parent); in ssi_regs_show() 57 struct hsi_controller *ssi = m->private; in ssi_gdd_regs_show() local [all …]
|
| H A D | omap_ssi.h | 1 /* SPDX-License-Identifier: GPL-2.0-only */ 2 /* OMAP SSI internal interface. 4 * Copyright (C) 2010 Nokia Corporation. All rights reserved. 23 #define SSI_BYTES_TO_FRAMES(x) ((((x) - 1) >> 2) + 1) 28 * struct omap_ssm_ctx - OMAP synchronous serial module (TX/RX) context 50 * struct omap_ssi_port - OMAP SSI port data 53 * @sst_dma: SSI transmitter physical base address 54 * @ssr_dma: SSI receiver physical base address 55 * @sst_base: SSI transmitter base address 56 * @ssr_base: SSI receiver base address [all …]
|
| H A D | omap_ssi_regs.h | 1 /* SPDX-License-Identifier: GPL-2.0-only */ 2 /* Hardware definitions for SSI. 4 * Copyright (C) 2010 Nokia Corporation. All rights reserved. 13 * SSI SYS registers 48 * SSI SST registers 75 * SSI SSR registers 95 * SSI GDD registers
|
| /linux/Documentation/devicetree/bindings/sound/ |
| H A D | fsl,ssi.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/sound/fsl,ssi.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 10 - Shengjiu Wang <shengjiu.wang@nxp.com> 13 Notes on fsl,playback-dma and fsl,capture-dma 14 On SOCs that have an SSI, specific DMA channels are hard-wired for playback 18 DMA controller to use, but the channels themselves are hard-wired. The 22 "fsl,playback-dma" and "fsl,capture-dma" must be marked as compatible with 23 "fsl,ssi-dma-channel". The SOC-specific compatible string (e.g. [all …]
|
| /linux/drivers/hsi/clients/ |
| H A D | ssi_protocol.c | 1 // SPDX-License-Identifier: GPL-2.0-only 5 * Implementation of the SSI McSAAB improved protocol. 7 * Copyright (C) 2010 Nokia Corporation. All rights reserved. 41 #define SSIP_MAX_CMDS 5 /* Number of pre-allocated commands buffers */ 42 #define SSIP_BYTES_TO_FRAMES(x) ((((x) - 1) >> 2) + 1) 45 * SSI protocol command definitions 101 * struct ssi_protocol - SSI protocol (McSAAB) data 111 * @keep_alive: Workaround for SSI HW bug 133 struct timer_list keep_alive; /* wake-up workaround */ 146 /* List of ssi protocol instances */ [all …]
|
| H A D | cmt_speech.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * cmt_speech.c - HSI CMT speech driver 5 * Copyright (C) 2008,2009,2010 Nokia Corporation. All rights reserved. 27 #include <linux/hsi/cs-protocol.h> 63 /* Number of pre-allocated commands buffers */ 144 dev_err(&cs_char_data.cl->device, in cs_notify() 150 entry->msg = message; in cs_notify() 151 list_add_tail(&entry->list, head); in cs_notify() 167 entry = list_entry(head->next, struct char_queue, list); in cs_pop_entry() 168 data = entry->msg; in cs_pop_entry() [all …]
|
| /linux/arch/arm/boot/dts/renesas/ |
| H A D | r8a7794.dtsi | 1 // SPDX-License-Identifier: GPL-2.0 3 * Device Tree Source for the R-Car E2 (R8A77940) SoC 9 #include <dt-bindings/clock/r8a7794-cpg-mssr.h> 10 #include <dt-bindings/interrupt-controller/arm-gic.h> 11 #include <dt-bindings/interrupt-controller/irq.h> 12 #include <dt-bindings/power/r8a7794-sysc.h> 16 #address-cells = <2>; 17 #size-cells = <2>; 39 compatible = "fixed-clock"; 40 #clock-cells = <0>; [all …]
|
| H A D | r8a7793.dtsi | 1 // SPDX-License-Identifier: GPL-2.0 3 * Device Tree Source for the R-Car M2-N (R8A77930) SoC 5 * Copyright (C) 2014-2015 Renesas Electronics Corporation 8 #include <dt-bindings/clock/r8a7793-cpg-mssr.h> 9 #include <dt-bindings/interrupt-controller/arm-gic.h> 10 #include <dt-bindings/interrupt-controller/irq.h> 11 #include <dt-bindings/power/r8a7793-sysc.h> 15 #address-cells = <2>; 16 #size-cells = <2>; 37 compatible = "fixed-clock"; [all …]
|
| H A D | r8a7790.dtsi | 1 // SPDX-License-Identifier: GPL-2.0 3 * Device Tree Source for the R-Car H2 (R8A77900) SoC 6 * Copyright (C) 2013-2014 Renesas Solutions Corp. 10 #include <dt-bindings/clock/r8a7790-cpg-mssr.h> 11 #include <dt-bindings/interrupt-controller/arm-gic.h> 12 #include <dt-bindings/interrupt-controller/irq.h> 13 #include <dt-bindings/power/r8a7790-sysc.h> 17 #address-cells = <2>; 18 #size-cells = <2>; 46 compatible = "fixed-clock"; [all …]
|
| H A D | r8a7791.dtsi | 1 // SPDX-License-Identifier: GPL-2.0 3 * Device Tree Source for the R-Car M2-W (R8A77910) SoC 5 * Copyright (C) 2013-2015 Renesas Electronics Corporation 6 * Copyright (C) 2013-2014 Renesas Solutions Corp. 10 #include <dt-bindings/clock/r8a7791-cpg-mssr.h> 11 #include <dt-bindings/interrupt-controller/arm-gic.h> 12 #include <dt-bindings/interrupt-controller/irq.h> 13 #include <dt-bindings/power/r8a7791-sysc.h> 17 #address-cells = <2>; 18 #size-cells = <2>; [all …]
|
| H A D | r8a7794-silk.dts | 1 // SPDX-License-Identifier: GPL-2.0 6 * Copyright (C) 2014-2015 Renesas Solutions Corp. 7 * Copyright (C) 2014-2015 Cogent Embedded, Inc. 11 * SSI-AK4643 13 * SW1: 2-1: AK4643 14 * 2-3: ADV7511 21 /dts-v1/; 23 #include <dt-bindings/gpio/gpio.h> 24 #include <dt-bindings/input/input.h> 40 stdout-path = "serial0:115200n8"; [all …]
|
| /linux/drivers/media/usb/gspca/ |
| H A D | spca508.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 5 * Copyright (C) 2009 Jean-Francois Moine <http://moinejf.free.fr> 58 * Initialization data: this is the first set-up data written to the 66 {0x0000, 0x8110}, /* Disable all outputs */ 67 /* READ {0x0000, 0x8114} -> 0000: 00 */ 79 /* --------------------------------------- */ 82 /* --------------------------------------- */ 89 {0x00c0, 0x8804}, /* SSI slave addr */ 90 {0x0008, 0x8802}, /* 375 Khz SSI clock */ 91 /* READ { 0x0001, 0x8803 } -> 0000: 00 */ [all …]
|
| /linux/arch/arm64/boot/dts/renesas/ |
| H A D | r8a77995.dtsi | 1 // SPDX-License-Identifier: GPL-2.0 3 * Device Tree Source for the R-Car D3 (R8A77995) SoC 9 #include <dt-bindings/clock/r8a77995-cpg-mssr.h> 10 #include <dt-bindings/interrupt-controller/arm-gic.h> 11 #include <dt-bindings/power/r8a77995-sysc.h> 15 #address-cells = <2>; 16 #size-cells = <2>; 24 compatible = "fixed-clock"; 25 #clock-cells = <0>; 26 clock-frequency = <0>; [all …]
|
| /linux/drivers/net/ethernet/chelsio/cxgb4/ |
| H A D | sge.c | 4 * Copyright (c) 2003-2014 Chelsio Communications, Inc. All rights reserved. 16 * - Redistributions of source code must retain the above 20 * - Redistributions in binary form must reproduce the above 40 #include <linux/dma-mapping.h> 68 # define FL_PG_ORDER (16 - PAGE_SHIFT) 115 #define NOMEM_TMR_IDX (SGE_NTIMERS - 1) 118 * Suspension threshold for non-Ethernet Tx queues. We require enough room 141 * buffer). We currently only support two sizes for 1500- and 9000-byte MTUs. 151 struct sge *s = &adapter->sge; in fl_mtu_bufsize() 153 return ALIGN(s->pktshift + ETH_HLEN + VLAN_HLEN + mtu, s->fl_align); in fl_mtu_bufsize() [all …]
|
| /linux/arch/m68k/coldfire/ |
| H A D | m53xx.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 5 * m53xx.c -- platform support for ColdFire 53xx based boards 7 * Copyright (C) 1999-2002, Greg Ungerer (gerg@snapgear.com) 38 DEFINE_CLK(0, "imx1-i2c.0", 22, MCF_CLK); 59 DEFINE_CLK(0, "mcfusb-otg.0", 44, MCF_CLK); 60 DEFINE_CLK(0, "mcfusb-host.0", 45, MCF_CLK); 62 DEFINE_CLK(0, "ssi.0", 47, MCF_CLK); 77 CLKDEV_INIT("imx1-i2c.0", NULL, &__clk_0_22), 97 CLKDEV_INIT("mcfusb-otg.0", NULL, &__clk_0_44), 98 CLKDEV_INIT("mcfusb-host.0", NULL, &__clk_0_45), [all …]
|
| /linux/drivers/spi/ |
| H A D | spi-dw-core.c | 1 // SPDX-License-Identifier: GPL-2.0-only 10 #include <linux/dma-mapping.h> 18 #include <linux/spi/spi-mem.h> 23 #include "spi-dw.h" 66 snprintf(name, 32, "dw_spi%d", dws->host->bus_num); in dw_spi_debugfs_init() 67 dws->debugfs = debugfs_create_dir(name, NULL); in dw_spi_debugfs_init() 69 dws->regset.regs = dw_spi_dbgfs_regs; in dw_spi_debugfs_init() 70 dws->regset.nregs = ARRAY_SIZE(dw_spi_dbgfs_regs); in dw_spi_debugfs_init() 71 dws->regset.base = dws->regs; in dw_spi_debugfs_init() 72 debugfs_create_regset32("registers", 0400, dws->debugfs, &dws->regset); in dw_spi_debugfs_init() [all …]
|
| /linux/drivers/s390/cio/ |
| H A D | device_status.c | 1 // SPDX-License-Identifier: GPL-2.0 31 struct subchannel *sch = to_subchannel(cdev->dev.parent); in ccw_device_msg_control_check() 34 if (!scsw_is_valid_cstat(&irb->scsw) || in ccw_device_msg_control_check() 35 !(scsw_cstat(&irb->scsw) & (SCHN_STAT_CHN_DATA_CHK | in ccw_device_msg_control_check() 38 CIO_MSG_EVENT(0, "Channel-Check or Interface-Control-Check " in ccw_device_msg_control_check() 42 cdev->private->dev_id.devno, sch->schid.ssid, in ccw_device_msg_control_check() 43 sch->schid.sch_no, in ccw_device_msg_control_check() 44 scsw_dstat(&irb->scsw), scsw_cstat(&irb->scsw)); in ccw_device_msg_control_check() 45 sprintf(dbf_text, "chk%x", sch->schid.sch_no); in ccw_device_msg_control_check() 58 sch = to_subchannel(cdev->dev.parent); in ccw_device_path_notoper() [all …]
|