Home
last modified time | relevance | path

Searched +full:spi +full:- +full:present +full:- +full:mask (Results 1 – 25 of 74) sorted by relevance

123

/linux/drivers/pinctrl/
H A Dpinctrl-mcp23s08_spi.c1 // SPDX-License-Identifier: GPL-2.0-only
2 /* MCP23S08 SPI GPIO driver */
8 #include <linux/spi/spi.h>
10 #include "pinctrl-mcp23s08.h"
18 * Driver data holds all the per-chip data.
29 struct spi_device *spi = to_spi_device(mcp->dev); in mcp23sxx_spi_write() local
31 struct spi_transfer t[2] = { { .tx_buf = &mcp->addr, .len = 1, }, in mcp23sxx_spi_write()
38 return spi_sync(spi, &m); in mcp23sxx_spi_write()
46 struct spi_device *spi = to_spi_device(mcp->dev); in mcp23sxx_spi_gather_write() local
48 struct spi_transfer t[3] = { { .tx_buf = &mcp->addr, .len = 1, }, in mcp23sxx_spi_gather_write()
[all …]
/linux/Documentation/devicetree/bindings/pinctrl/
H A Dmicrochip,mcp23s08.yaml1 # SPDX-License-Identifier: GPL-2.0-only
3 ---
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
7 title: Microchip I/O expander with serial interface (I2C/SPI)
10 - Himanshu Bhavani <himanshu.bhavani@siliconsignals.io>
14 chips.These chips provide 8 or 16 GPIO pins with either I2C or SPI interface.
17 - $ref: /schemas/spi/spi-peripheral-props.yaml#
22 - microchip,mcp23s08
23 - microchip,mcp23s17
24 - microchip,mcp23s18
[all …]
/linux/Documentation/devicetree/bindings/sound/
H A Drenesas,idt821034.yaml1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
3 ---
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
10 - Herve Codina <herve.codina@bootlin.com>
16 The time-slots used by the codec must be set and so, the properties
17 'dai-tdm-slot-num', 'dai-tdm-slot-width', 'dai-tdm-slot-tx-mask' and
18 'dai-tdm-slot-rx-mask' must be present in the ALSA sound card node for
19 sub-nodes that involve the codec. The codec uses one 8bit time-slot per
21 'dai-tdm-tdm-slot-with' must be set to 8.
26 - $ref: /schemas/spi/spi-peripheral-props.yaml#
[all …]
H A Dinfineon,peb2466.yaml1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
3 ---
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
10 - Herve Codina <herve.codina@bootlin.com>
13 The Infineon PEB2466 codec is a programmable DSP-based four channels codec
16 The time-slots used by the codec must be set and so, the properties
17 'dai-tdm-slot-num', 'dai-tdm-slot-width', 'dai-tdm-slot-tx-mask' and
18 'dai-tdm-slot-rx-mask' must be present in the sound card node for sub-nodes
19 that involve the codec. The codec uses one 8bit time-slot per channel.
20 'dai-tdm-tdm-slot-with' must be set to 8.
[all …]
/linux/sound/pci/ice1712/
H A Ddelta.h1 /* SPDX-License-Identifier: GPL-2.0-or-later */
8 * Lowlevel functions for M-Audio Delta 1010, 44, 66, Dio2496, Audiophile
44 * MidiMan M-Audio Delta GPIO definitions
47 /* MidiMan M-Audio Delta shared pins */
52 /* 0 = valid signal is present */
57 /* (writing on rising edge - 0->1) */
64 /* MidiMan M-Audio DeltaDiO */
73 /* MidiMan M-Audio Delta1010 */
79 /* 1 - clock are taken from S/PDIF input */
80 /* 0 - clock are taken from Word Clock input */
[all …]
H A Dquartet.c1 // SPDX-License-Identifier: GPL-2.0-or-later
57 /* chip address on SPI bus */
65 /* GPIO0 - O - DATA0, def. 0 */
67 /* GPIO1 - I/O - DATA
320 qtet_akm_set_regs(struct snd_akm4xxx * ak,unsigned char addr,unsigned char mask,unsigned char value) qtet_akm_set_regs() argument
[all...]
/linux/drivers/iio/imu/
H A Dsmi240.c1 // SPDX-License-Identifier: BSD-3-Clause OR GPL-2.0
11 #include <linux/spi/spi.h>
115 * Ensure natural alignment for timestamp if present.
165 } while (--i >= 0); in smi240_crc3()
189 struct spi_device *spi = context; in smi240_regmap_spi_read() local
190 struct iio_dev *indio_dev = dev_get_drvdata(&spi->dev); in smi240_regmap_spi_read()
194 return -EINVAL; in smi240_regmap_spi_read()
197 request |= FIELD_PREP(SMI240_WRITE_CAP_BIT_MASK, iio_priv_data->capture); in smi240_regmap_spi_read()
201 iio_priv_data->spi_buf = cpu_to_be32(request); in smi240_regmap_spi_read()
205 * SPI protocol, where the slave interface responds to in smi240_regmap_spi_read()
[all …]
/linux/drivers/iio/gyro/
H A Dadxrs290.c1 // SPDX-License-Identifier: GPL-2.0-or-later
3 * ADXRS290 SPI Gyroscope Driver
15 #include <linux/spi/spi.h>
68 struct spi_device *spi; member
75 /* Ensure correct alignment of timestamp when present */
83 * Available cut-off frequencies of the low pass filter in Hz.
98 * Available cut-off frequencies of the high pass filter in Hz.
121 mutex_lock(&st->lock); in adxrs290_get_rate_data()
122 temp = spi_w8r16(st->spi, cmd); in adxrs290_get_rate_data()
131 mutex_unlock(&st->lock); in adxrs290_get_rate_data()
[all …]
/linux/drivers/net/wireless/broadcom/brcm80211/include/
H A Dchipcommon.h1 // SPDX-License-Identifier: ISC
49 /* gpio - cleared only by power-on-reset */
222 #define CID_ID_MASK 0x0000ffff /* Chip Id mask */
223 #define CID_REV_MASK 0x000f0000 /* Chip Revision mask */
225 #define CID_PKG_MASK 0x00f00000 /* Package Option mask */
234 #define CC_CAP_MIPSEB 0x00000004 /* MIPS is in big-endian mode */
239 #define CC_CAP_EXTBUS_MASK 0x000000c0 /* External bus mask */
240 #define CC_CAP_EXTBUS_NONE 0x00000000 /* No ExtBus present */
249 #define CC_CAP_JTAGP 0x00400000 /* JTAG Master Present */
251 #define CC_CAP_BKPLN64 0x08000000 /* 64-bit backplane */
[all …]
/linux/drivers/rtc/
H A Drtc-ds1305.c1 // SPDX-License-Identifier: GPL-2.0-only
3 * rtc-ds1305.c -- driver for DS1305 and DS1306 SPI RTC chips
14 #include <linux/spi/spi.h>
15 #include <linux/spi/ds1305.h>
20 * Registers ... mask DS1305_WRITE into register address to write,
21 * otherwise you're reading it. All non-bitmask values are BCD.
27 * - Need fancy "hours" encoding in 12hour mode
28 * - Don't rely on the "day-of-week" field (or tm_wday)
29 * - Are a 21st-century clock (2000 <= year < 2100)
50 * NOTE ALSO that while we could generate once-a-second IRQs (UIE), we
[all …]
/linux/drivers/iio/adc/
H A Dad4695.c1 // SPDX-License-Identifier: GPL-2.0-only
3 * SPI ADC driver for Analog Devices Inc. AD4695 and similar chips
22 #include <linux/iio/buffer-dmaengine.h>
33 #include <linux/spi/offload/consumer.h>
34 #include <linux/spi/offload/provider.h>
35 #include <linux/spi/spi.h>
38 #include <dt-bindings/iio/adc/adi,ad4695.h>
133 struct spi_device *spi; member
139 /* currently PWM CNV only supported with SPI offload use */
208 .name = "ad4695-8",
[all …]
H A Dti-ads7950.c1 // SPDX-License-Identifier: GPL-2.0
3 * Texas Instruments ADS7950 SPI ADC driver
12 * Copyright (C) 2013 Texas Instruments Incorporated - https://www.ti.com/
26 #include <linux/spi/spi.h>
36 * Device tree users encode that via the vref-supply regulator.
52 /* val = value, dec = left shift, bits = number of bits of the mask */
54 (((val) >> (dec)) & ((1 << (bits)) - 1))
61 (TI_ADS7950_MAN_CMD(TI_ADS7950_CR_WRITE | st->cmd_settings_bitmask))
64 (TI_ADS7950_GPIO_CMD(st->gpio_cmd_settings_bitmask))
67 struct spi_device *spi; member
[all …]
H A Dad7192.c1 // SPDX-License-Identifier: GPL-2.0
3 * AD7192 and similar SPI ADC driver
5 * Copyright 2011-2015 Analog Devices Inc.
12 #include <linux/clk-provider.h>
17 #include <linux/spi/spi.h>
36 #define AD7192_REG_COMM 0 /* Communications Register (WO, 8-bit) */
37 #define AD7192_REG_STAT 0 /* Status Register (RO, 8-bit) */
38 #define AD7192_REG_MODE 1 /* Mode Register (RW, 24-bit */
39 #define AD7192_REG_CONF 2 /* Configuration Register (RW, 24-bit) */
40 #define AD7192_REG_DATA 3 /* Data Register (RO, 24/32-bit) */
[all …]
H A Dad4000.c1 // SPDX-License-Identifier: GPL-2.0+
3 * AD4000 SPI ADC driver
18 #include <linux/spi/offload/consumer.h>
19 #include <linux/spi/spi.h>
25 #include <linux/iio/buffer-dmaengine.h>
57 .shift = (_offl ? 0 : _storage_bits - _real_bits), \
68 * When SPI offload is configured, transfers are executed without CPU
95 .shift = (_offl ? 0 : _storage_bits - _real_bits), \
122 /* maps adi,sdi-pin property value to enum */
167 /* AD7946, AD7686, AD7688, AD7988-5, AD7693 */
[all …]
/linux/Documentation/devicetree/bindings/mfd/
H A Dst,stmpe.yaml1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
3 ---
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
12 peripherals connected to SPI or I2C.
15 - Linus Walleij <linus.walleij@linaro.org>
18 - $ref: /schemas/spi/spi-peripheral-props.yaml#
23 - st,stmpe601
24 - st,stmpe801
25 - st,stmpe811
26 - st,stmpe1600
[all …]
/linux/net/netfilter/
H A Dxt_HMARK.c1 // SPDX-License-Identifier: GPL-2.0-only
3 * xt_HMARK - Netfilter module to set mark by means of hashing
40 static inline __be32 hmark_addr6_mask(const __be32 *addr32, const __be32 *mask) in hmark_addr6_mask() argument
42 return (addr32[0] & mask[0]) ^ in hmark_addr6_mask()
43 (addr32[1] & mask[1]) ^ in hmark_addr6_mask()
44 (addr32[2] & mask[2]) ^ in hmark_addr6_mask()
45 (addr32[3] & mask[3]); in hmark_addr6_mask()
49 hmark_addr_mask(int l3num, const __be32 *addr32, const __be32 *mask) in hmark_addr_mask() argument
53 return *addr32 & *mask; in hmark_addr_mask()
55 return hmark_addr6_mask(addr32, mask); in hmark_addr_mask()
[all …]
/linux/Documentation/devicetree/bindings/soc/tegra/
H A Dnvidia,tegra20-pmc.yaml1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
3 ---
4 $id: http://devicetree.org/schemas/soc/tegra/nvidia,tegra20-pmc.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
10 - Thierry Reding <thierry.reding@gmail.com>
11 - Jonathan Hunter <jonathanh@nvidia.com>
16 - nvidia,tegra20-pmc
17 - nvidia,tegra30-pmc
18 - nvidia,tegra114-pmc
19 - nvidia,tegra124-pmc
[all …]
/linux/drivers/net/ethernet/marvell/octeontx2/af/
H A Drvu_npc_fs.c1 // SPDX-License-Identifier: GPL-2.0
45 [NPC_IPSEC_SPI] = "SPI ",
62 struct npc_mcam *mcam = &rvu->hw->mcam; in npc_is_feature_supported()
66 mcam_features = is_npc_intf_tx(intf) ? mcam->tx_features : mcam->rx_features; in npc_is_feature_supported()
87 struct npc_key_field *field = &mcam->rx_key_fields[type]; in npc_set_kw_masks()
91 if (mcam->banks_per_entry == 1) in npc_set_kw_masks()
93 else if (mcam->banks_per_entry == 2) in npc_set_kw_masks()
99 field = &mcam->tx_key_fields[type]; in npc_set_kw_masks()
105 field->kw_mask[start_kwi] |= GENMASK_ULL(nr_bits - 1, 0) in npc_set_kw_masks()
107 field->nr_kws = 1; in npc_set_kw_masks()
[all …]
/linux/arch/arm/boot/dts/renesas/
H A Dr7s9210.dtsi1 // SPDX-License-Identifier: GPL-2.0
9 #include <dt-bindings/interrupt-controller/arm-gic.h>
10 #include <dt-bindings/clock/r7s9210-cpg-mssr.h>
14 interrupt-parent = <&gic>;
15 #address-cells = <1>;
16 #size-cells = <1>;
20 #clock-cells = <0>;
21 compatible = "fixed-clock";
23 clock-frequency = <0>;
27 #clock-cells = <0>;
[all …]
/linux/drivers/spi/
H A Dspi-sh-msiof.c1 // SPDX-License-Identifier: GPL-2.0
3 * SuperH MSIOF SPI Controller Interface
7 * Copyright (C) 2014-2017 Glider bvba
14 #include <linux/dma-mapping.h>
28 #include <linux/spi/sh_msiof.h>
29 #include <linux/spi/spi.h>
71 return ioread16(p->mapbase + reg_offs); in sh_msiof_read()
73 return ioread32(p->mapbase + reg_offs); in sh_msiof_read()
83 iowrite16(value, p->mapbase + reg_offs); in sh_msiof_write()
86 iowrite32(value, p->mapbase + reg_offs); in sh_msiof_write()
[all …]
/linux/Documentation/networking/dsa/
H A Dsja1105.rst8 The NXP SJA1105 is a family of 10 SPI-managed automotive switches:
10 - SJA1105E: First generation, no TTEthernet
11 - SJA1105T: First generation, TTEthernet
12 - SJA1105P: Second generation, no TTEthernet, no SGMII
13 - SJA1105Q: Second generation, TTEthernet, no SGMII
14 - SJA1105R: Second generation, no TTEthernet, SGMII
15 - SJA1105S: Second generation, TTEthernet, SGMII
16 - SJA1110A: Third generation, TTEthernet, SGMII, integrated 100base-T1 and
17 100base-TX PHYs
18 - SJA1110B: Third generation, TTEthernet, SGMII, 100base-T1, 100base-TX
[all …]
/linux/drivers/net/ethernet/microchip/
H A Denc28j60.c1 // SPDX-License-Identifier: GPL-2.0+
26 #include <linux/spi/spi.h>
38 /* Buffer size required for the largest SPI transfer (i.e., reading a
57 struct spi_device *spi; member
77 } debug = { -1 };
80 * SPI read buffer
81 * Wait for the SPI transfer and copy received data to destination.
86 struct device *dev = &priv->spi->dev; in spi_read_buf()
87 u8 *rx_buf = priv->spi_transfer_buf + 4; in spi_read_buf()
88 u8 *tx_buf = priv->spi_transfer_buf; in spi_read_buf()
[all …]
/linux/arch/arm64/boot/dts/marvell/
H A Darmada-3720-turris-mox.dts1 // SPDX-License-Identifier: (GPL-2.0+ OR MIT)
7 /dts-v1/;
9 #include <dt-bindings/bus/moxtet.h>
10 #include <dt-bindings/gpio/gpio.h>
11 #include <dt-bindings/input/input.h>
12 #include "armada-372x.dtsi"
16 compatible = "cznic,turris-mox", "marvell,armada3720",
28 stdout-path = "serial0:115200n8";
37 compatible = "gpio-leds";
41 linux,default-trigger = "default-on";
[all …]
/linux/drivers/irqchip/
H A Dirq-brcmstb-l2.c1 // SPDX-License-Identifier: GPL-2.0-only
5 * Copyright (C) 2014-2024 Broadcom
48 .cpu_clear = -1, /* Register not present */
73 status = irq_reg_readl(b->gc, b->status_offset) & in brcmstb_l2_intc_irq_handle()
74 ~(irq_reg_readl(b->gc, b->mask_offset)); in brcmstb_l2_intc_irq_handle()
77 raw_spin_lock(&desc->lock); in brcmstb_l2_intc_irq_handle()
79 raw_spin_unlock(&desc->lock); in brcmstb_l2_intc_irq_handle()
84 irq = ffs(status) - 1; in brcmstb_l2_intc_irq_handle()
86 generic_handle_domain_irq(b->domain, irq); in brcmstb_l2_intc_irq_handle()
99 struct brcmstb_l2_intc_data *b = gc->private; in __brcmstb_l2_intc_suspend()
[all …]
/linux/include/linux/spi/
H A Dspi.h1 /* SPDX-License-Identifier: GPL-2.0-or-later
21 #include <uapi/linux/spi/spi.h>
23 /* Max no. of CS supported per spi device */
38 * INTERFACES between SPI controller-sid
260 spi_dev_get(struct spi_device * spi) spi_dev_get() argument
265 spi_dev_put(struct spi_device * spi) spi_dev_put() argument
272 spi_get_ctldata(const struct spi_device * spi) spi_get_ctldata() argument
277 spi_set_ctldata(struct spi_device * spi,void * state) spi_set_ctldata() argument
284 spi_set_drvdata(struct spi_device * spi,void * data) spi_set_drvdata() argument
289 spi_get_drvdata(const struct spi_device * spi) spi_get_drvdata() argument
294 spi_get_chipselect(const struct spi_device * spi,u8 idx) spi_get_chipselect() argument
299 spi_set_chipselect(struct spi_device * spi,u8 idx,u8 chipselect) spi_set_chipselect() argument
304 spi_get_csgpiod(const struct spi_device * spi,u8 idx) spi_get_csgpiod() argument
309 spi_set_csgpiod(struct spi_device * spi,u8 idx,struct gpio_desc * csgpiod) spi_set_csgpiod() argument
314 spi_is_csgpiod(struct spi_device * spi) spi_is_csgpiod() argument
1157 struct spi_device *spi; global() member
1297 spi_max_message_size(struct spi_device * spi) spi_max_message_size() argument
1307 spi_max_transfer_size(struct spi_device * spi) spi_max_transfer_size() argument
1330 spi_is_bpw_supported(struct spi_device * spi,u32 bpw) spi_is_bpw_supported() argument
1457 spi_sync_transfer(struct spi_device * spi,struct spi_transfer * xfers,unsigned int num_xfers) spi_sync_transfer() argument
1480 spi_write(struct spi_device * spi,const void * buf,size_t len) spi_write() argument
1503 spi_read(struct spi_device * spi,void * buf,size_t len) spi_read() argument
1529 spi_w8r8(struct spi_device * spi,u8 cmd) spi_w8r8() argument
1554 spi_w8r16(struct spi_device * spi,u8 cmd) spi_w8r16() argument
1579 spi_w8r16be(struct spi_device * spi,u8 cmd) spi_w8r16be() argument
[all...]

123