/openbmc/linux/sound/soc/meson/ |
H A D | axg-card.c | 1 // SPDX-License-Identifier: (GPL-2.0 OR MIT) 9 #include <sound/soc-dai.h> 11 #include "axg-tdm.h" 12 #include "meson-card.h" 16 u32 rx; member 21 unsigned int slots; member 30 * Those will be over-written by the CPU side of the link 44 struct meson_card *priv = snd_soc_card_get_drvdata(rtd->card); in axg_card_tdm_be_hw_params() 46 (struct axg_dai_link_tdm_data *)priv->link_data[rtd->num]; in axg_card_tdm_be_hw_params() 48 return meson_card_i2s_set_sysclk(substream, params, be->mclk_fs); in axg_card_tdm_be_hw_params() [all …]
|
H A D | axg-tdm-interface.c | 1 // SPDX-License-Identifier: (GPL-2.0 OR MIT) 11 #include <sound/soc-dai.h> 13 #include "axg-tdm.h" 25 unsigned int slots = 0; in axg_tdm_slots_total() local 31 /* Count the total number of slots provided by all 4 lanes */ in axg_tdm_slots_total() 33 slots += hweight32(mask[i]); in axg_tdm_slots_total() 35 return slots; in axg_tdm_slots_total() 39 u32 *rx_mask, unsigned int slots, in axg_tdm_set_tdm_slots() argument 44 struct axg_tdm_stream *rx = snd_soc_dai_dma_data_get_capture(dai); in axg_tdm_set_tdm_slots() local 53 dev_err(dai->dev, "interface has no slot\n"); in axg_tdm_set_tdm_slots() [all …]
|
/openbmc/linux/drivers/net/ethernet/google/gve/ |
H A D | gve_rx.c | 1 // SPDX-License-Identifier: (GPL-2.0 OR MIT) 4 * Copyright (C) 2015-2021 Google, Inc. 19 dma_addr_t dma = (dma_addr_t)(be64_to_cpu(data_slot->addr) & in gve_rx_free_buffer() 22 page_ref_sub(page_info->page, page_info->pagecnt_bias - 1); in gve_rx_free_buffer() 23 gve_free_page(dev, page_info->page, dma, DMA_FROM_DEVICE); in gve_rx_free_buffer() 26 static void gve_rx_unfill_pages(struct gve_priv *priv, struct gve_rx_ring *rx) in gve_rx_unfill_pages() argument 28 u32 slots = rx->mask + 1; in gve_rx_unfill_pages() local 31 if (rx->data.raw_addressing) { in gve_rx_unfill_pages() 32 for (i = 0; i < slots; i++) in gve_rx_unfill_pages() 33 gve_rx_free_buffer(&priv->pdev->dev, &rx->data.page_info[i], in gve_rx_unfill_pages() [all …]
|
/openbmc/linux/Documentation/devicetree/bindings/net/ |
H A D | litex,liteeth.yaml | 1 # SPDX-License-Identifier: GPL-2.0-or-later OR BSD-2-Clause 3 --- 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 10 - Joel Stanley <joel@jms.id.au> 17 https://github.com/enjoy-digital/liteeth/. 20 - $ref: ethernet-controller.yaml# 28 - description: MAC registers 29 - description: MDIO registers 30 - description: Packet buffer 32 reg-names: [all …]
|
/openbmc/linux/Documentation/devicetree/bindings/sound/ |
H A D | davinci-mcasp-audio.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/sound/davinci-mcasp-audio.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 10 - Jayesh Choudhary <j-choudhary@ti.com> 15 - ti,dm646x-mcasp-audio 16 - ti,da830-mcasp-audio 17 - ti,am33xx-mcasp-audio 18 - ti,dra7-mcasp-audio 19 - ti,omap4-mcasp-audio [all …]
|
H A D | tdm-slot.txt | 6 dai-tdm-slot-num : Number of slots in use. 7 dai-tdm-slot-width : Width in bits for each slot. 8 dai-tdm-slot-tx-mask : Transmit direction slot mask, optional 9 dai-tdm-slot-rx-mask : Receive direction slot mask, optional 12 dai-tdm-slot-num = <2>; 13 dai-tdm-slot-width = <8>; 14 dai-tdm-slot-tx-mask = <0 1>; 15 dai-tdm-slot-rx-mask = <1 0>; 18 to specify an explicit mapping of the channels and the slots. If it's absent 20 tx and rx masks. [all …]
|
/openbmc/linux/sound/soc/fsl/ |
H A D | fsl_ssi.c | 1 // SPDX-License-Identifier: GPL-2.0 7 // Copyright 2007-2010 Freescale Semiconductor, Inc. 9 // Some notes why imx-pcm-fiq is used instead of DMA on some boards: 13 // one FIFO which combines all valid receive slots. We cannot even select 14 // which slots we want to receive. The WM9712 with which this driver 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 */ 56 #define RX 0 macro [all …]
|
H A D | fsl_sai.c | 1 // SPDX-License-Identifier: GPL-2.0+ 5 // Copyright 2012-2015 Freescale Semiconductor, Inc. 23 #include <linux/mfd/syscon/imx6q-iomuxc-gpr.h> 27 #include "imx-pcm.h" 45 * fsl_sai_dir_is_synced - Check if stream is synced by the opposite stream 56 int adir = (dir == TX) ? RX : TX; in fsl_sai_dir_is_synced() 59 return !sai->synchronous[dir] && sai->synchronous[adir]; in fsl_sai_dir_is_synced() 66 if (sai->is_pdm_mode) { in fsl_sai_get_pins_state() 69 state = pinctrl_lookup_state(sai->pinctrl, "dsd512"); in fsl_sai_get_pins_state() 73 state = pinctrl_lookup_state(sai->pinctrl, "dsd"); in fsl_sai_get_pins_state() [all …]
|
H A D | fsl_esai.c | 1 // SPDX-License-Identifier: GPL-2.0 17 #include "imx-pcm.h" 25 * struct fsl_esai_soc_data - soc specific data 33 * struct fsl_esai - ESAI private data 45 * @fifo_depth: depth of tx/rx FIFO 47 * @slots: number of slots 49 * @rx_mask: slot mask for RX 50 * @channels: channel num for tx or rx 56 * @synchronous: if using tx/rx synchronous mode 73 u32 slots; member [all …]
|
/openbmc/linux/drivers/net/ethernet/litex/ |
H A D | litex_liteeth.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 51 /* Rx */ 65 rx_slot = litex_read8(priv->base + LITEETH_WRITER_SLOT); in liteeth_rx() 66 len = litex_read32(priv->base + LITEETH_WRITER_LENGTH); in liteeth_rx() 78 memcpy_fromio(data, priv->rx_base + rx_slot * priv->slot_size, len); in liteeth_rx() 79 skb->protocol = eth_type_trans(skb, netdev); in liteeth_rx() 86 netdev->stats.rx_dropped++; in liteeth_rx() 87 netdev->stats.rx_errors++; in liteeth_rx() 98 reg = litex_read8(priv->base + LITEETH_READER_EV_PENDING); in liteeth_interrupt() 102 litex_write8(priv->base + LITEETH_READER_EV_PENDING, reg); in liteeth_interrupt() [all …]
|
/openbmc/linux/Documentation/devicetree/bindings/soc/fsl/cpm_qe/ |
H A D | fsl,cpm1-scc-qmc.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/soc/fsl/cpm_qe/fsl,cpm1-scc-qmc.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 10 - Herve Codina <herve.codina@bootlin.com> 19 - enum: 20 - fsl,mpc885-scc-qmc 21 - fsl,mpc866-scc-qmc 22 - const: fsl,cpm1-scc-qmc 26 - description: SCC (Serial communication controller) register base [all …]
|
H A D | fsl,cpm1-tsa.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/soc/fsl/cpm_qe/fsl,cpm1-tsa.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: PowerQUICC CPM Time-slot assigner (TSA) controller 10 - Herve Codina <herve.codina@bootlin.com> 13 The TSA is the time-slot assigner that can be found on some PowerQUICC SoC. 14 Its purpose is to route some TDM time-slots to other internal serial 20 - enum: 21 - fsl,mpc885-tsa [all …]
|
/openbmc/linux/tools/testing/selftests/hid/tests/ |
H A D | test_sony.py | 2 # SPDX-License-Identifier: GPL-2.0 3 # -*- coding: utf-8 -*- 43 for x in range(-32000, 32000, 4000): 51 # to inverse calibration, followed by calibration by hid-sony. 52 assert x - 1 <= value <= x + 1 54 for y in range(-32000, 32000, 4000): 61 assert y - 1 <= value <= y + 1 63 for z in range(-32000, 32000, 4000): 70 assert z - 1 <= value <= z + 1 76 for rx in range(-2000000, 2000000, 200000): [all …]
|
/openbmc/linux/drivers/net/ |
H A D | xen-netfront.c | 4 * Copyright (c) 2002-2005, K A Fraser 81 #define NETFRONT_SKB_CB(skb) ((struct netfront_cb *)((skb)->cb)) 88 /* Minimum number of Rx slots (includes slot for GSO metadata). */ 91 /* Queue name is interface name with "-qNNN" appended */ 94 /* IRQ name is queue name with "-tx" or "-rx" appended */ 108 unsigned int id; /* Queue ID, 0-based */ 109 char name[QUEUE_NAME_SIZE]; /* DEVNAME-qN */ 122 char tx_irq_name[IRQ_NAME_SIZE]; /* DEVNAME-qN-tx */ 123 char rx_irq_name[IRQ_NAME_SIZE]; /* DEVNAME-qN-rx */ 130 * {tx,rx}_skbs store outstanding skbuffs. Free tx_skb entries [all …]
|
/openbmc/linux/sound/soc/ |
H A D | soc-dai.c | 1 // SPDX-License-Identifier: GPL-2.0 3 // soc-dai.c 10 #include <sound/soc-dai.h> 11 #include <sound/soc-link.h> 23 case -EPROBE_DEFER: in _soc_dai_ret() 24 case -ENOTSUPP: in _soc_dai_ret() 27 dev_err(dai->dev, in _soc_dai_ret() 29 func, dai->name, ret); in _soc_dai_ret() 39 #define soc_dai_mark_push(dai, substream, tgt) ((dai)->mark_##tgt = substream) 40 #define soc_dai_mark_pop(dai, substream, tgt) ((dai)->mark_##tgt = NULL) [all …]
|
/openbmc/linux/sound/soc/bcm/ |
H A D | bcm2835-i2s.c | 1 // SPDX-License-Identifier: GPL-2.0-only 23 * Copyright 2007-2010 Freescale Semiconductor, Inc. 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() 150 dev->clk_prepared = false; in bcm2835_i2s_stop_clock() 154 bool tx, bool rx) in bcm2835_i2s_clear_fifos() argument [all …]
|
/openbmc/qemu/net/ |
H A D | netmap.c | 4 * Copyright (c) 2012-2013 Luigi Rizzo 36 #include "qemu/error-report.h" 40 #include "qemu/main-loop.h" 47 struct netmap_ring *rx; member 51 int vnet_hdr_len; /* Current virtio-net header length. */ 67 for (; l > 0; l -= 64) { in pkt_copy() 92 nmd = nm_open(nm_opts->ifname, &req, NETMAP_NO_TX_POLL, in netmap_open() 96 nm_opts->ifname); in netmap_open() 106 /* Set the event-loop handlers for the netmap backend. */ 109 qemu_set_fd_handler(s->nmd->fd, in netmap_update_fd_handler() [all …]
|
/openbmc/linux/drivers/net/ethernet/ibm/emac/ |
H A D | core.h | 1 /* SPDX-License-Identifier: GPL-2.0-or-later */ 5 * Driver for PowerPC 4xx on-chip ethernet controller. 28 #include <linux/dma-mapping.h> 56 /* RX BD size for the given MTU */ 65 /* Size of RX skb for the given MTU */ 73 /* RX DMA sync size */ 80 * - normal statistics (packet count, etc) 81 * - error statistics 89 /* Normal TX/RX Statistics */ 103 /* Software RX Errors */ [all …]
|
/openbmc/linux/include/uapi/linux/hsi/ |
H A D | cs-protocol.h | 1 /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */ 3 * cmt-speech interface definitions 20 /* user-space API versioning */ 23 /* APE kernel <-> user space messages */ 52 /* maximum number of TX/RX buffers */ 58 __u32 rx_bufs; /* number of RX buffer slots */ 59 __u32 tx_bufs; /* number of TX buffer slots */ 76 * This information is meant as read-only information for the application. 81 __u32 rx_bufs; /* # of RX buffers */ 84 /* array of offsets within the mmap area for each RX and TX buffer */
|
/openbmc/linux/drivers/mfd/ |
H A D | dln2.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * Driver for the Diolan DLN-2 USB adapter 8 * i2c-diolan-u2c.c 9 * Copyright (c) 2010-2011 Ericsson AB 66 /* if non-NULL the URB contains the response */ 76 * the echo header field to index the slots field and find the receive context 80 /* RX slots bitmap */ 83 /* used to wait for a free RX slot */ 86 /* used to wait for an RX operation to complete */ 87 struct dln2_rx_context slots[DLN2_MAX_RX_SLOTS]; member [all …]
|
/openbmc/linux/sound/soc/ti/ |
H A D | davinci-mcasp.c | 1 // SPDX-License-Identifier: GPL-2.0-only 5 * Multi-channel Audio Serial Port Driver 7 * Author: Nirmal Pandey <n-pandey@ti.com>, 39 #include "edma-pcm.h" 40 #include "sdma-pcm.h" 41 #include "udma-pcm.h" 42 #include "davinci-mcasp.h" 136 void __iomem *reg = mcasp->base + offset; in mcasp_set_bits() 143 void __iomem *reg = mcasp->base + offset; in mcasp_clr_bits() 150 void __iomem *reg = mcasp->base + offset; in mcasp_mod_bits() [all …]
|
/openbmc/linux/drivers/net/ethernet/broadcom/ |
H A D | bcm4908_enet.c | 1 // SPDX-License-Identifier: GPL-2.0-only 45 #define ENET_RX_BUF_DMA_SIZE (ENET_RX_SKB_BUF_SIZE - ENET_RX_BUF_DMA_OFFSET) 54 void *buf; /* RX */ 76 struct bcm4908_enet_dma_ring_slot *slots; member 95 return readl(enet->base + offset); in enet_read() 100 writel(value, enet->base + offset); in enet_write() 150 enet_write(enet, ring->cfg_block + ENET_DMA_CH_CFG_INT_MASK, ENET_DMA_INT_DEFAULTS); in bcm4908_enet_dma_ring_intrs_on() 156 enet_write(enet, ring->cfg_block + ENET_DMA_CH_CFG_INT_MASK, 0); in bcm4908_enet_dma_ring_intrs_off() 162 enet_write(enet, ring->cfg_block + ENET_DMA_CH_CFG_INT_STAT, ENET_DMA_INT_DEFAULTS); in bcm4908_enet_dma_ring_intrs_ack() 172 int size = ring->length * sizeof(struct bcm4908_enet_dma_ring_bd); in bcm4908_dma_alloc_buf_descs() [all …]
|
H A D | bgmac.c | 33 dev_err(bgmac->dev, "Timeout waiting for reg 0x%X\n", reg); in bgmac_wait_value() 46 if (!ring->mmio_base) in bgmac_dma_tx_reset() 53 bgmac_write(bgmac, ring->mmio_base + BGMAC_DMA_TX_CTL, in bgmac_dma_tx_reset() 56 val = bgmac_read(bgmac, ring->mmio_base + BGMAC_DMA_TX_STATUS); in bgmac_dma_tx_reset() 67 dev_err(bgmac->dev, "Timeout suspending DMA TX ring 0x%X (BGMAC_DMA_TX_STAT: 0x%08X)\n", in bgmac_dma_tx_reset() 68 ring->mmio_base, val); in bgmac_dma_tx_reset() 71 bgmac_write(bgmac, ring->mmio_base + BGMAC_DMA_TX_CTL, 0); in bgmac_dma_tx_reset() 73 ring->mmio_base + BGMAC_DMA_TX_STATUS, in bgmac_dma_tx_reset() 76 dev_warn(bgmac->dev, "DMA TX ring 0x%X wasn't disabled on time, waiting additional 300us\n", in bgmac_dma_tx_reset() 77 ring->mmio_base); in bgmac_dma_tx_reset() [all …]
|
/openbmc/linux/sound/arm/ |
H A D | aaci.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * linux/sound/arm/aaci.c - ARM PrimeCell AACI PL041 driver 28 #define DRIVER_NAME "aaci-pl041" 39 u32 v, maincr = aaci->maincr | MAINCR_SCRA(ac97->num); in aaci_ac97_select_codec() 42 * Ensure that the slot 1/2 RX registers are empty. in aaci_ac97_select_codec() 44 v = readl(aaci->base + AACI_SLFR); in aaci_ac97_select_codec() 46 readl(aaci->base + AACI_SL2RX); in aaci_ac97_select_codec() 48 readl(aaci->base + AACI_SL1RX); in aaci_ac97_select_codec() 50 if (maincr != readl(aaci->base + AACI_MAINCR)) { in aaci_ac97_select_codec() 51 writel(maincr, aaci->base + AACI_MAINCR); in aaci_ac97_select_codec() [all …]
|
/openbmc/linux/sound/soc/ux500/ |
H A D | mop500_ab8500.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * Copyright (C) ST-Ericsson SA 2012 7 * for ST-Ericsson. 17 #include <sound/soc-dapm.h> 24 #include "../codecs/ab8500-codec.h" 61 /* Private data for machine-part MOP500<->AB8500 */ 88 if (IS_ERR(drvdata->clk_ptr_intclk)) { in mop500_ab8500_set_mclk() 91 return -EIO; in mop500_ab8500_set_mclk() 94 switch (drvdata->mclk_sel) { in mop500_ab8500_set_mclk() 96 clk_ptr = drvdata->clk_ptr_sysclk; in mop500_ab8500_set_mclk() [all …]
|