/linux-6.12.1/Documentation/devicetree/bindings/spi/ |
D | spi-controller.yaml | 1 # SPDX-License-Identifier: GPL-2.0 3 --- 4 $id: http://devicetree.org/schemas/spi/spi-controller.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: SPI Controller Common Properties 10 - Mark Brown <broonie@kernel.org> 13 SPI busses can be described with a node for the SPI controller device 14 and a set of child nodes for each SPI slave on the bus. The system SPI 15 controller may be described for use in SPI master mode or in SPI slave mode, 20 pattern: "^spi(@.*|-([0-9]|[1-9][0-9]+))?$" [all …]
|
D | spi-peripheral-props.yaml | 1 # SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/spi/spi-peripheral-props.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: Peripheral-specific properties for a SPI bus. 10 Many SPI controllers need to add properties to peripheral devices. They could 11 be common properties like spi-max-frequency, spi-cpha, etc. or they could be 13 need to be defined in the peripheral node because they are per-peripheral and 19 - Mark Brown <broonie@kernel.org> 27 - minimum: 0 [all …]
|
D | icpdas-lp8841-spi-rtc.txt | 1 * ICP DAS LP-8841 SPI Controller for RTC 3 ICP DAS LP-8841 contains a DS-1302 RTC. RTC is connected to an IO 4 memory register, which acts as an SPI master device. 6 The device uses the standard MicroWire half-duplex transfer timing. 13 - #address-cells: should be 1 15 - #size-cells: should be 0 17 - compatible: should be "icpdas,lp8841-spi-rtc" 19 - reg: should provide IO memory address 21 Requirements to SPI slave nodes: 23 - There can be only one slave device. [all …]
|
/linux-6.12.1/Documentation/devicetree/bindings/iio/adc/ |
D | adi,ad7944.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 10 - Michael Hennerich <Michael.Hennerich@analog.com> 11 - Nuno Sá <nuno.sa@analog.com> 14 A family of pin-compatible single channel differential analog to digital 15 converters with SPI support in a LFCSP package. 21 $ref: /schemas/spi/spi-peripheral-props.yaml# 26 - adi,ad7944 27 - adi,ad7985 [all …]
|
D | adi,ad4000.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 10 - Marcelo Schmitt <marcelo.schmitt@analog.com> 13 Analog Devices AD4000 family of Analog to Digital Converters with SPI support. 15 https://www.analog.com/media/en/technical-documentation/data-sheets/ad4000-4004-4008.pdf 16 https://www.analog.com/media/en/technical-documentation/data-sheets/ad4001-4005.pdf 17 https://www.analog.com/media/en/technical-documentation/data-sheets/ad4002-4006-4010.pdf 18 https://www.analog.com/media/en/technical-documentation/data-sheets/ad4003-4007-4011.pdf 19 https://www.analog.com/media/en/technical-documentation/data-sheets/ad4020-4021-4022.pdf [all …]
|
/linux-6.12.1/Documentation/devicetree/bindings/rtc/ |
D | epson,rx6110.txt | 4 The Epson RX6110 can be used with SPI or I2C busses. The kind of 8 -------- 11 - compatible: should be: "epson,rx6110" 12 - reg : the I2C address of the device for I2C 21 SPI mode 22 -------- 25 - compatible: should be: "epson,rx6110" 26 - reg: chip select number 27 - spi-cs-high: RX6110 needs chipselect high 28 - spi-cpha: RX6110 works with SPI shifted clock phase [all …]
|
D | maxim-ds1302.txt | 1 * Maxim/Dallas Semiconductor DS-1302 RTC 5 The device uses the standard MicroWire half-duplex transfer timing. 12 - compatible : Should be "maxim,ds1302" 14 Required SPI properties: 16 - reg : Should be address of the device chip select within 19 - spi-max-frequency : DS-1302 has 500 kHz if powered at 2.2V, 22 - spi-3wire : The device has a shared signal IN/OUT line. 24 - spi-lsb-first : DS-1302 requires least significant bit first 27 - spi-cs-high: DS-1302 has active high chip select line. This is 32 spi@901c { [all …]
|
/linux-6.12.1/arch/arm64/boot/dts/qcom/ |
D | sc7280-idp-ec-h1.dtsi | 1 // SPDX-License-Identifier: BSD-3-Clause 3 * sc7280 EC/H1 over SPI (common between IDP2 and CRD) 11 pinctrl-0 = <&qup_spi10_data_clk>, <&qup_spi10_cs_gpio_init_high>, <&qup_spi10_cs_gpio>; 12 cs-gpios = <&tlmm 43 GPIO_ACTIVE_LOW>; 15 compatible = "google,cros-ec-spi"; 17 interrupt-parent = <&tlmm>; 19 pinctrl-names = "default"; 20 pinctrl-0 = <&ap_ec_int_l>; 21 spi-max-frequency = <3000000>; 22 wakeup-source; [all …]
|
/linux-6.12.1/drivers/gpio/ |
D | gpiolib-of.c | 1 // SPDX-License-Identifier: GPL-2.0+ 5 * Copyright (c) 2007-2008 MontaVista Software, Inc. 26 #include "gpiolib-of.h" 29 * This is Linux-specific flags. By default controllers' and Linux' mapping 31 * Linux-specific in their .xlate callback. Though, 1:1 mapping is recommended. 44 * of_gpio_named_count() - Count GPIOs for a device 53 * * %-EINVAL for an incorrectly formed "gpios" property, or 54 * * %-ENOENT for a missing "gpios" property. 69 return of_count_phandle_with_args(np, propname, "#gpio-cells"); in of_gpio_named_count() 73 * of_gpio_spi_cs_get_count() - special GPIO counting for SPI [all …]
|
/linux-6.12.1/Documentation/devicetree/bindings/gpio/ |
D | spear_spics.txt | 1 === ST Microelectronics SPEAr SPI CS Driver === 4 Cell spi controller through its system registers, which otherwise remains under 7 desired by some of the device protocols above spi which expect (multiple) 17 * compatible: should be defined as "st,spear-spics-gpio" 19 * st-spics,peripcfg-reg: peripheral configuration register offset 20 * st-spics,sw-enable-bit: bit offset to enable sw control 21 * st-spics,cs-value-bit: bit offset to drive chipselect low or high 22 * st-spics,cs-enable-mask: chip select number bit mask 23 * st-spics,cs-enable-shift: chip select number program offset 24 * gpio-controller: Marks the device node as gpio controller [all …]
|
/linux-6.12.1/drivers/spi/ |
D | spi-gpio.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 3 * SPI host driver using generic bitbanged GPIO 15 #include <linux/spi/spi.h> 16 #include <linux/spi/spi_bitbang.h> 17 #include <linux/spi/spi_gpio.h> 20 * This bitbanging SPI host driver should help make systems usable 21 * when a native hardware SPI engine is not available, perhaps because 25 * platform_device->driver_data ... points to spi_gpio 27 * spi->controller_state ... reserved for bitbang framework code 29 * spi->controller->dev.driver_data ... points to spi_gpio->bitbang [all …]
|
D | spi-ppc4xx.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * SPI_PPC4XX SPI controller driver. 9 * Based in part on drivers/spi/spi_s3c24xx.c 17 * The PPC4xx SPI controller has no FIFO so each sent/received byte will 18 * generate an interrupt to the CPU. This can cause high CPU utilization. 20 * during SPI transfers by setting max_speed_hz via the device tree. 35 #include <linux/spi/spi.h> 36 #include <linux/spi/spi_bitbang.h> 39 #include <asm/dcr-regs.h> 41 /* bits in mode register - bit 0 is MSb */ [all …]
|
D | spi-bcmbca-hsspi.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * Broadcom BCMBCA High Speed SPI Controller driver 5 * Copyright 2000-2010 Broadcom Corporation 6 * Copyright 2012-2013 Jonas Gorski <jonas.gorski@gmail.com> 7 * Copyright 2019-2022 Broadcom Ltd 17 #include <linux/dma-mapping.h> 20 #include <linux/spi/spi.h> 23 #include <linux/spi/spi-mem.h> 99 #define HSSPI_BUS_NUM 1 /* 0 is legacy SPI */ 132 return sprintf(buf, "%d\n", bs->wait_mode); in wait_mode_show() [all …]
|
D | spi-bitbang.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 3 * Polling/bitbanging SPI host controller controller driver utilities 16 #include <linux/spi/spi.h> 17 #include <linux/spi/spi_bitbang.h> 22 /*----------------------------------------------------------------------*/ 25 * FIRST PART (OPTIONAL): word-at-a-time spi_transfer support. 26 * Use this for GPIO or shift-register level hardware APIs. 28 * spi_bitbang_cs is in spi_device->controller_state, which is unavailable 30 * used, though maybe they're called from controller-aware code. 32 * chipselect() and friends may use spi_device->controller_data and [all …]
|
D | spi-bcm63xx-hsspi.c | 2 * Broadcom BCM63XX High Speed SPI Controller driver 4 * Copyright 2000-2010 Broadcom Corporation 5 * Copyright 2012-2013 Jonas Gorski <jonas.gorski@gmail.com> 17 #include <linux/dma-mapping.h> 20 #include <linux/spi/spi.h> 23 #include <linux/spi/spi-mem.h> 24 #include <linux/mtd/spi-nor.h> 105 #define HSSPI_BUS_NUM 1 /* 0 is legacy SPI */ 114 * mode. If not, falls back to use the dummy cs workaround mode but limit the 124 if (bs->xfer_mode == HSSPI_XFER_MODE_AUTO) \ [all …]
|
D | spi-dln2.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * Driver for the Diolan DLN-2 USB-SPI adapter 13 #include <linux/spi/spi.h> 20 /* SPI commands */ 88 * needed because all SPI communication is serialized by the SPI core. 95 u8 cs; member 99 * Enable/Disable SPI module. The disable command will wait for transfers to 111 tx.port = dln2->port; in dln2_spi_enable() 115 len -= sizeof(tx.wait_for_completion); in dln2_spi_enable() 121 return dln2_transfer_tx(dln2->pdev, cmd, &tx, len); in dln2_spi_enable() [all …]
|
/linux-6.12.1/drivers/iio/adc/ |
D | ad4000.c | 1 // SPDX-License-Identifier: GPL-2.0+ 3 * AD4000 SPI ADC driver 18 #include <linux/spi/spi.h> 34 #define AD4000_CFG_HIGHZ BIT(2) /* High impedance mode */ 56 .shift = _storage_bits - _real_bits, \ 78 .shift = _storage_bits - _real_bits, \ 98 /* maps adi,sdi-pin property value to enum */ 101 [AD4000_SDI_VIO] = "high", 102 [AD4000_SDI_CS] = "cs", 217 struct spi_device *spi; member [all …]
|
D | ad7944.c | 1 // SPDX-License-Identifier: GPL-2.0-only 19 #include <linux/spi/spi.h> 37 /* datasheet calls this "4-wire mode" */ 39 /* datasheet calls this "3-wire mode" (not related to SPI_3WIRE!) */ 45 /* maps adi,spi-mode property value to enum */ 53 struct spi_device *spi; member 58 /* Chip-specific timing specifications. */ 64 /* Indicates TURBO is hard-wired to be always enabled. */ 102 * AD7944_DEFINE_CHIP_INFO - Define a chip info structure for a specific chip 131 /* pseudo-differential with ground sense */ [all …]
|
/linux-6.12.1/Documentation/devicetree/bindings/mfd/ |
D | motorola-cpcap.txt | 4 - compatible : One or both of "motorola,cpcap" or "ste,6556002" 5 - reg : SPI chip select 6 - interrupts : The interrupt line the device is connected to 7 - interrupt-controller : Marks the device node as an interrupt controller 8 - #interrupt-cells : The number of cells to describe an IRQ, should be 2 9 - #address-cells : Child device offset number of cells, should be 1 10 - #size-cells : Child device size number of cells, should be 0 11 - spi-max-frequency : Typically set to 3000000 12 - spi-cs-high : SPI chip select direction 16 The sub-functions of CPCAP get their own node with their own compatible values, [all …]
|
/linux-6.12.1/include/linux/dma/ |
D | qcom-gpi-dma.h | 1 /* SPDX-License-Identifier: GPL-2.0 */ 10 * enum spi_transfer_cmd - spi transfer commands 19 * struct gpi_spi_config - spi config for peripheral 21 * @loopback_en: spi loopback enable when set 25 * @word_len: spi word length 28 * @cmd: spi cmd 29 * @fragmentation: keep CS asserted at end of sequence 30 * @cs: chip select toggle 42 u8 cs; member 55 * struct gpi_i2c_config - i2c config for peripheral [all …]
|
/linux-6.12.1/arch/arm/boot/dts/qcom/ |
D | qcom-ipq4019-ap.dk07.1-c1.dts | 1 // SPDX-License-Identifier: GPL-2.0 4 #include <dt-bindings/gpio/gpio.h> 5 #include "qcom-ipq4019-ap.dk07.1.dtsi" 8 model = "Qualcomm Technologies, Inc. IPQ4019/AP-DK07.1-C1"; 9 compatible = "qcom,ipq4019-ap-dk07.1-c1", "qcom,ipq4019"; 14 perst-gpios = <&tlmm 38 GPIO_ACTIVE_LOW>; 17 spi@78b6000 { 22 serial_1_pins: serial1-state { 26 bias-disable; 29 spi_0_pins: spi-0-state { [all …]
|
/linux-6.12.1/arch/riscv/boot/dts/canaan/ |
D | sipeed_maix_bit.dts | 1 // SPDX-License-Identifier: GPL-2.0+ 3 * Copyright (C) 2019-20 Sean Anderson <seanga2@gmail.com> 7 /dts-v1/; 11 #include <dt-bindings/gpio/gpio.h> 12 #include <dt-bindings/input/input.h> 13 #include <dt-bindings/leds/common.h> 17 compatible = "sipeed,maix-bit", "sipeed,maix-bitm", 18 "canaan,kendryte-k210"; 26 stdout-path = "serial0:115200n8"; 29 gpio-leds { [all …]
|
/linux-6.12.1/arch/arm64/boot/dts/xilinx/ |
D | zynqmp-zc1751-xm016-dc2.dts | 1 // SPDX-License-Identifier: GPL-2.0+ 3 * dts file for Xilinx ZynqMP zc1751-xm016-dc2 5 * (C) Copyright 2015 - 2022, Xilinx, Inc. 6 * (C) Copyright 2022 - 2023, Advanced Micro Devices, Inc. 11 /dts-v1/; 14 #include "zynqmp-clk-ccf.dtsi" 15 #include <dt-bindings/gpio/gpio.h> 16 #include <dt-bindings/pinctrl/pinctrl-zynqmp.h> 19 model = "ZynqMP zc1751-xm016-dc2 RevA"; 20 compatible = "xlnx,zynqmp-zc1751", "xlnx,zynqmp"; [all …]
|
/linux-6.12.1/Documentation/iio/ |
D | ad4000.rst | 1 .. SPDX-License-Identifier: GPL-2.0-only 30 ------------------ 32 Devices of the AD4000 series can be connected to the SPI host controller in a 35 CS mode, 3-wire turbo mode 38 Datasheet "3-wire" mode is what most resembles standard SPI connection which, 39 for these devices, comprises of connecting the controller CS line to device CNV 40 pin and other SPI lines as usual. This configuration is (misleadingly) called 41 "CS Mode, 3-Wire Turbo Mode" connection in datasheets. 42 NOTE: The datasheet definition of 3-wire mode for the AD4000 series is NOT the 43 same of standard spi-3wire mode. [all …]
|
/linux-6.12.1/drivers/platform/chrome/ |
D | cros_ec_spi.c | 1 // SPDX-License-Identifier: GPL-2.0 2 // SPI interface for ChromeOS Embedded Controller 14 #include <linux/spi/spi.h> 24 * about 400-500us for the EC to respond there is not a lot of 28 * SPI transfer size is 256 bytes, so at 5MHz we need a response 50 * for this, clocking in at 2-3ms. 55 * Time between raising the SPI chip select (for the end of a 64 * struct cros_ec_spi - information about a SPI-connected EC 66 * @spi: SPI device we are connected to 69 * is sent when we want to turn on CS at the start of a transaction. [all …]
|