Home
last modified time | relevance | path

Searched full:spi (Results 1 – 25 of 2299) sorted by relevance

12345678910>>...92

/linux/drivers/spi/
H A Dspi-stm32.c3 // STMicroelectronics STM32 SPI Controller driver
23 #include <linux/spi/spi.h>
27 /* STM32F4/7 SPI registers */
83 /* STM32F4 SPI Baud Rate min/max divisor */
87 /* STM32H7 SPI registers */
162 /* STM32MP25 SPI registers bit fields */
176 /* STM32H7 SPI Master Baud Rate min/max divisor */
180 /* STM32H7 SPI Communication mode */
186 /* SPI Communication type */
201 /* STM32 SPI driver helpers */
[all …]
H A Dspi-atcspi200.c3 * Driver for Andes ATCSPI200 SPI Controller
22 #include <linux/spi/spi.h>
23 #include <linux/spi/spi-mem.h>
26 #define ATCSPI_TRANS_FMT 0x10 /* SPI transfer format register */
27 #define ATCSPI_TRANS_CTRL 0x20 /* SPI transfer control register */
28 #define ATCSPI_CMD 0x24 /* SPI command register */
29 #define ATCSPI_ADDR 0x28 /* SPI address register */
30 #define ATCSPI_DATA 0x2C /* SPI dat
125 atcspi_wait_fifo_ready(struct atcspi_dev * spi,enum spi_mem_data_dir dir) atcspi_wait_fifo_ready() argument
145 atcspi_xfer_data_poll(struct atcspi_dev * spi,const struct spi_mem_op * op) atcspi_xfer_data_poll() argument
186 atcspi_set_trans_ctl(struct atcspi_dev * spi,const struct spi_mem_op * op) atcspi_set_trans_ctl() argument
224 atcspi_set_trans_fmt(struct atcspi_dev * spi,const struct spi_mem_op * op) atcspi_set_trans_fmt() argument
246 atcspi_prepare_trans(struct atcspi_dev * spi,const struct spi_mem_op * op) atcspi_prepare_trans() argument
258 struct atcspi_dev *spi; atcspi_adjust_op_size() local
270 atcspi_dma_config(struct atcspi_dev * spi,bool is_rx) atcspi_dma_config() argument
305 atcspi_dma_trans(struct atcspi_dev * spi,const struct spi_mem_op * op) atcspi_dma_trans() argument
367 struct atcspi_dev *spi; atcspi_exec_mem_op() local
405 atcspi_setup(struct atcspi_dev * spi) atcspi_setup() argument
472 atcspi_init_resources(struct platform_device * pdev,struct atcspi_dev * spi,struct resource ** mem_res) atcspi_init_resources() argument
501 atcspi_configure_dma(struct atcspi_dev * spi) atcspi_configure_dma() argument
516 atcspi_enable_clk(struct atcspi_dev * spi) atcspi_enable_clk() argument
531 atcspi_init_controller(struct platform_device * pdev,struct atcspi_dev * spi,struct spi_controller * host,struct resource * mem_res) atcspi_init_controller() argument
549 struct atcspi_dev *spi; atcspi_probe() local
605 struct atcspi_dev *spi = spi_controller_get_devdata(host); atcspi_suspend() local
617 struct atcspi_dev *spi = spi_controller_get_devdata(host); atcspi_resume() local
[all...]
H A Dspi.c2 // SPI init/core code
34 #include <linux/spi/offload/types.h>
35 #include <linux/spi/spi.h>
36 #include <linux/spi/spi-mem.h>
40 #include <trace/events/spi.h>
46 static int __spi_setup(struct spi_device *spi, bool initial_setup);
52 struct spi_device *spi = to_spi_device(dev); in spidev_release() local
54 spi_controller_put(spi in spidev_release()
62 const struct spi_device *spi = to_spi_device(dev); modalias_show() local
369 const struct spi_device *spi = to_spi_device(dev); spi_match_device() local
394 const struct spi_device *spi = to_spi_device(dev); spi_uevent() local
407 struct spi_device *spi = to_spi_device(dev); spi_probe() local
560 struct spi_device *spi; spi_alloc_device() local
590 spi_dev_set_name(struct spi_device * spi) spi_dev_set_name() argument
621 spi_dev_check_cs(struct device * dev,struct spi_device * spi,u8 idx,struct spi_device * new_spi,u8 new_idx) spi_dev_check_cs() argument
645 struct spi_device *spi = to_spi_device(dev); spi_dev_check() local
668 spi_cleanup(struct spi_device * spi) spi_cleanup() argument
674 __spi_add_device(struct spi_device * spi,struct spi_device * parent) __spi_add_device() argument
777 spi_add_device(struct spi_device * spi) spi_add_device() argument
871 spi_unregister_device(struct spi_device * spi) spi_unregister_device() argument
973 spi_res_alloc(struct spi_device * spi,spi_res_release_t release,size_t size,gfp_t gfp) spi_res_alloc() argument
1033 spi_for_each_valid_cs(spi,idx) global() argument
1037 spi_is_last_cs(struct spi_device * spi) spi_is_last_cs() argument
1049 spi_toggle_csgpiod(struct spi_device * spi,u8 idx,bool enable,bool activate) spi_toggle_csgpiod() argument
1073 spi_set_cs(struct spi_device * spi,bool enable,bool force) spi_set_cs() argument
2264 __spi_queued_transfer(struct spi_device * spi,struct spi_message * msg,bool need_pump) __spi_queued_transfer() argument
2296 spi_queued_transfer(struct spi_device * spi,struct spi_message * msg) spi_queued_transfer() argument
2365 of_spi_parse_dt(struct spi_controller * ctlr,struct spi_device * spi,struct device_node * nc) of_spi_parse_dt() argument
2616 struct spi_device *spi; of_register_spi_device() local
2669 struct spi_device *spi; of_register_spi_devices() local
2699 spi_new_ancillary_device(struct spi_device * spi,u8 chip_select) spi_new_ancillary_device() argument
2744 devm_spi_unregister_device(void * spi) devm_spi_unregister_device() argument
2765 devm_spi_new_ancillary_device(struct spi_device * spi,u8 chip_select) devm_spi_new_ancillary_device() argument
2966 struct spi_device *spi; acpi_spi_device_alloc() local
3023 struct spi_device *spi; acpi_register_spi_device() local
3119 spi_target_abort(struct spi_device * spi) spi_target_abort() argument
3150 struct spi_device *spi; slave_store() local
4030 spi_set_cs_timing(struct spi_device * spi) spi_set_cs_timing() argument
4054 __spi_setup(struct spi_device * spi,bool initial_setup) __spi_setup() argument
4212 spi_setup(struct spi_device * spi) spi_setup() argument
4219 _spi_xfer_word_delay_update(struct spi_transfer * xfer,struct spi_device * spi) _spi_xfer_word_delay_update() argument
4238 __spi_validate(struct spi_device * spi,struct spi_message * message) __spi_validate() argument
4443 __spi_optimize_message(struct spi_device * spi,struct spi_message * msg) __spi_optimize_message() argument
4476 spi_maybe_optimize_message(struct spi_device * spi,struct spi_message * msg) spi_maybe_optimize_message() argument
4510 spi_optimize_message(struct spi_device * spi,struct spi_message * msg) spi_optimize_message() argument
4555 __spi_async(struct spi_device * spi,struct spi_message * message) __spi_async() argument
4597 devm_spi_optimize_message(struct device * dev,struct spi_device * spi,struct spi_message * msg) devm_spi_optimize_message() argument
4641 spi_async(struct spi_device * spi,struct spi_message * message) spi_async() argument
4708 __spi_sync(struct spi_device * spi,struct spi_message * message) __spi_sync() argument
4791 spi_sync(struct spi_device * spi,struct spi_message * message) spi_sync() argument
4819 spi_sync_locked(struct spi_device * spi,struct spi_message * message) spi_sync_locked() argument
4904 spi_write_then_read(struct spi_device * spi,const void * txbuf,unsigned n_tx,void * rxbuf,unsigned n_rx) spi_write_then_read() argument
4993 struct spi_device *spi; of_spi_notify() local
5085 struct spi_device *spi; acpi_spi_notify() local
[all...]
H A Dspi-orion.c3 * Marvell Orion SPI controller driver
14 #include <linux/spi/spi.h>
73 * have both is for managing the armada-370-spi case with old
135 static int orion_spi_baudrate_set(struct spi_device *spi, unsigned int speed) in orion_spi_baudrate_set() argument
144 orion_spi = spi_controller_get_devdata(spi->controller); in orion_spi_baudrate_set()
221 /* Convert the rate to SPI clock divisor value. */ in orion_spi_baudrate_set()
233 orion_spi_mode_set(struct spi_device *spi) in orion_spi_mode_set() argument
238 orion_spi = spi_controller_get_devdata(spi->controller); in orion_spi_mode_set()
242 if (spi in orion_spi_mode_set()
255 orion_spi_50mhz_ac_timing_erratum(struct spi_device * spi,unsigned int speed) orion_spi_50mhz_ac_timing_erratum() argument
293 orion_spi_setup_transfer(struct spi_device * spi,struct spi_transfer * t) orion_spi_setup_transfer() argument
327 orion_spi_set_cs(struct spi_device * spi,bool enable) orion_spi_set_cs() argument
382 orion_spi_write_read_8bit(struct spi_device * spi,const u8 ** tx_buf,u8 ** rx_buf) orion_spi_write_read_8bit() argument
431 orion_spi_write_read_16bit(struct spi_device * spi,const u16 ** tx_buf,u16 ** rx_buf) orion_spi_write_read_16bit() argument
467 orion_spi_write_read(struct spi_device * spi,struct spi_transfer * xfer) orion_spi_write_read() argument
532 orion_spi_transfer_one(struct spi_controller * host,struct spi_device * spi,struct spi_transfer * t) orion_spi_transfer_one() argument
547 orion_spi_setup(struct spi_device * spi) orion_spi_setup() argument
648 struct orion_spi *spi; orion_spi_probe() local
808 struct orion_spi *spi = spi_controller_get_devdata(host); orion_spi_remove() local
831 struct orion_spi *spi = spi_controller_get_devdata(host); orion_spi_runtime_suspend() local
841 struct orion_spi *spi = spi_controller_get_devdata(host); orion_spi_runtime_resume() local
[all...]
H A Dspi-davinci.c19 #include <linux/spi/spi.h>
20 #include <linux/spi/spi_bitbang.h>
87 /* SPI Controller registers */
111 * struct davinci_spi_platform_data - Platform data for SPI master device on DaVinci
113 * @version: version of the SPI IP. Different DaVinci devices have slightly
115 * @num_chipselect: number of chipselects supported by this SPI master
116 * @intr_line: interrupt line used to connect the SPI IP to the ARM interrupt
119 * @cshold_bug: set this to true if the SPI controller on your chip requires
134 * struct davinci_spi_config - Per-chip-select configuration for SPI slave devices
137 * SPI module clocks.
[all …]
/linux/drivers/video/backlight/
H A Dili922x.c7 * controller. The interface to the display is SPI and the display's
19 #include <linux/spi/spi.h>
104 * for the SPI transfer. According to the datasheet, the controller
109 * @s: pointer to an SPI device
138 struct spi_device *spi; member
145 * @spi: spi device
148 static int ili922x_read_status(struct spi_device *spi, u16 *rs) in ili922x_read_status() argument
161 CHECK_FREQ_REG(spi, &xfer); in ili922x_read_status()
175 ret = spi_sync(spi, &msg); in ili922x_read_status()
177 dev_dbg(&spi->dev, "Error sending SPI message 0x%x", ret); in ili922x_read_status()
[all …]
H A Dl4f00242t03.c21 #include <linux/spi/spi.h>
24 struct spi_device *spi; member
46 static void l4f00242t03_lcd_init(struct spi_device *spi) in l4f00242t03_lcd_init() argument
48 struct l4f00242t03_priv *priv = spi_get_drvdata(spi); in l4f00242t03_lcd_init()
52 dev_dbg(&spi->dev, "initializing LCD\n"); in l4f00242t03_lcd_init()
56 dev_err(&spi->dev, "failed to set the IO regulator voltage.\n"); in l4f00242t03_lcd_init()
61 dev_err(&spi->dev, "failed to enable the IO regulator.\n"); in l4f00242t03_lcd_init()
67 dev_err(&spi->dev, "failed to set the core regulator voltage.\n"); in l4f00242t03_lcd_init()
73 dev_err(&spi->dev, "failed to enable the core regulator.\n"); in l4f00242t03_lcd_init()
82 spi_write(spi, (const u8 *)cmd, ARRAY_SIZE(cmd) * sizeof(u16)); in l4f00242t03_lcd_init()
[all …]
/linux/drivers/staging/greybus/
H A Dspilib.c3 * Greybus SPI library
14 #include <linux/spi/spi.h>
45 static struct spi_controller *get_controller_from_spi(struct gb_spilib *spi) in get_controller_from_spi() argument
47 return gb_connection_get_data(spi->connection); in get_controller_from_spi()
95 static void clean_xfer_state(struct gb_spilib *spi) in clean_xfer_state() argument
97 spi->first_xfer = NULL; in clean_xfer_state()
98 spi->last_xfer = NULL; in clean_xfer_state()
99 spi->rx_xfer_offset = 0; in clean_xfer_state()
100 spi in clean_xfer_state()
105 is_last_xfer_done(struct gb_spilib * spi) is_last_xfer_done() argument
116 setup_next_xfer(struct gb_spilib * spi,struct spi_message * msg) setup_next_xfer() argument
162 gb_spi_operation_create(struct gb_spilib * spi,struct gb_connection * connection,struct spi_message * msg) gb_spi_operation_create() argument
297 gb_spi_decode_response(struct gb_spilib * spi,struct spi_message * msg,struct gb_spi_transfer_response * response) gb_spi_decode_response() argument
330 struct gb_spilib *spi = spi_controller_get_devdata(ctlr); gb_spi_transfer_one_message() local
381 struct gb_spilib *spi = spi_controller_get_devdata(ctlr); gb_spi_prepare_transfer_hardware() local
388 struct gb_spilib *spi = spi_controller_get_devdata(ctlr); gb_spi_unprepare_transfer_hardware() local
395 gb_spi_setup(struct spi_device * spi) gb_spi_setup() argument
401 gb_spi_cleanup(struct spi_device * spi) gb_spi_cleanup() argument
415 gb_spi_get_master_config(struct gb_spilib * spi) gb_spi_get_master_config() argument
441 gb_spi_setup_device(struct gb_spilib * spi,u8 cs) gb_spi_setup_device() argument
488 struct gb_spilib *spi; gb_spilib_master_init() local
[all...]
/linux/drivers/net/wan/
H A Dslic_ds26522.c16 #include <linux/spi/spi.h>
38 static void slic_write(struct spi_device *spi, u16 addr, in slic_write() argument
49 /* write spi addr and value */ in slic_write()
50 spi_write(spi, &temp[0], SLIC_THREE_LEN); in slic_write()
53 static u8 slic_read(struct spi_device *spi, u16 addr) in slic_read() argument
62 spi_write_then_read(spi, &temp[0], SLIC_TWO_LEN, &data, in slic_read()
69 static bool get_slic_product_code(struct spi_device *spi) in get_slic_product_code() argument
73 device_id = slic_read(spi, DS26522_IDR_ADDR); in get_slic_product_code()
80 static void ds26522_e1_spec_config(struct spi_device *spi) in ds26522_e1_spec_config() argument
83 slic_write(spi, DS26522_RMMR_ADDR, DS26522_RMMR_E1); in ds26522_e1_spec_config()
[all …]
/linux/Documentation/devicetree/bindings/spi/
H A Dmediatek,spi-mt65xx.yaml4 $id: http://devicetree.org/schemas/spi/mediatek,spi-mt65xx.yaml#
7 title: SPI Bus controller for MediaTek ARM SoCs
13 - $ref: /schemas/spi/spi-controller.yaml#
20 - mediatek,mt7629-spi
21 - mediatek,mt8365-spi
22 - const: mediatek,mt7622-spi
25 - mediatek,mt8516-spi
26 - const: mediatek,mt2712-spi
29 - mediatek,mt6779-spi
30 - mediatek,mt8186-spi
[all …]
H A Dbrcm,spi-bcm-qspi.yaml4 $id: http://devicetree.org/schemas/spi/brcm,spi-bcm-qspi.yaml#
7 title: Broadcom SPI controller
14 The Broadcom SPI controller is a SPI master found on various SOCs, including
15 BRCMSTB (BCM7XXX), Cygnus, NSP and NS2. The Broadcom Master SPI hw IP consists
17 MSPI : SPI master controller can read and write to a SPI slave device
18 BSPI : Broadcom SPI in combination with the MSPI hw IP provides acceleration
25 use SPI protocol.
28 - $ref: spi-controller.yaml#
36 - brcm,spi-bcm7425-qspi
37 - brcm,spi-bcm7429-qspi
[all …]
H A Dallwinner,sun6i-a31-spi.yaml4 $id: http://devicetree.org/schemas/spi/allwinner,sun6i-a31-spi.yaml#
7 title: Allwinner A31 SPI Controller
16 - const: allwinner,sun50i-r329-spi
17 - const: allwinner,sun55i-a523-spi
18 - const: allwinner,sun6i-a31-spi
19 - const: allwinner,sun8i-h3-spi
22 - allwinner,sun8i-r40-spi
23 - allwinner,sun50i-h6-spi
24 - allwinner,sun50i-h616-spi
25 - allwinner,suniv-f1c100s-spi
[all …]
H A Dspi-rockchip.yaml4 $id: http://devicetree.org/schemas/spi/spi-rockchip.yaml#
7 title: Rockchip SPI Controller
10 The Rockchip SPI controller is used to interface with various devices such
11 as flash and display controllers using the SPI communication interface.
14 - $ref: spi-controller.yaml#
23 - const: rockchip,rk3036-spi
24 - const: rockchip,rk3066-spi
25 - const: rockchip,rk3228-spi
26 - const: rockchip,rv1108-spi
29 - rockchip,px30-spi
[all …]
H A Dsnps,dw-apb-ssi.yaml4 $id: http://devicetree.org/schemas/spi/snps,dw-apb-ssi.yaml#
13 - $ref: spi-controller.yaml#
19 - mscc,ocelot-spi
20 - mscc,jaguar2-spi
29 const: amd,pensando-elba-spi
40 - description: Generic DW SPI Controller
44 - description: Microchip Sparx5 SoC SPI Controller
45 const: microchip,sparx5-spi
46 - description: Amazon Alpine SPI Controller
51 - mscc,ocelot-spi
[all …]
/linux/drivers/misc/
H A Dgehc-achc.c15 #include <linux/spi/spi.h>
59 static int ezport_start_programming(struct spi_device *spi, struct gpio_desc *reset) in ezport_start_programming() argument
68 spi_bus_lock(spi->controller); in ezport_start_programming()
73 ret = spi_sync_locked(spi, &msg); in ezport_start_programming()
85 ret = spi_sync_locked(spi, &msg); in ezport_start_programming()
88 spi_bus_unlock(spi->controller); in ezport_start_programming()
92 static void ezport_stop_programming(struct spi_device *spi, struct gpio_desc *reset) in ezport_stop_programming() argument
95 spi_bus_lock(spi->controller); in ezport_stop_programming()
97 spi_bus_unlock(spi->controller); in ezport_stop_programming()
100 static int ezport_get_status_register(struct spi_device *spi) in ezport_get_status_register() argument
[all …]
H A Dlattice-ecp3-config.c11 #include <linux/spi/spi.h>
36 * (LatticeECP3 Slave SPI Port User's Guide)
67 struct spi_device *spi = (struct spi_device *)context; in firmware_load() local
68 struct fpga_data *data = spi_get_drvdata(spi); in firmware_load()
78 dev_err(&spi->dev, "Cannot load firmware, aborting\n"); in firmware_load()
83 dev_err(&spi->dev, "Error: Firmware size is 0!\n"); in firmware_load()
92 /* Trying to speak with the FPGA via SPI... */ in firmware_load()
94 spi_write_then_read(spi, txbuf, 8, rxbuf, rx_len); in firmware_load()
96 dev_dbg(&spi->dev, "FPGA JTAG ID=%08x\n", jedec_id); in firmware_load()
103 dev_err(&spi->dev, in firmware_load()
[all …]
/linux/drivers/net/can/spi/
H A Dmcp251x.c2 /* CAN bus driver for Microchip 251x/25625 CAN Controller with SPI Interface
42 #include <linux/spi/spi.h>
45 /* SPI interface instruction set */
196 /* Buffer size required for the largest SPI transfer (i.e., reading a
230 struct spi_device *spi; member
233 struct mutex mcp_lock; /* SPI device lock */
263 static inline int mcp251x_is_##_model(struct spi_device *spi) \
265 struct mcp251x_priv *priv = spi_get_drvdata(spi); \
285 * registers via SPI is not really different conceptually than using
296 static int mcp251x_spi_trans(struct spi_device *spi, int len) in mcp251x_spi_trans() argument
[all …]
H A Dhi311x.c2 /* CAN bus driver for Holt HI3110 CAN Controller with SPI Interface
35 #include <linux/spi/spi.h>
147 struct spi_device *spi; member
150 struct mutex hi3110_lock; /* SPI device lock */
189 * registers via SPI is not really different conceptually than using
200 static int hi3110_spi_trans(struct spi_device *spi, int len) in hi3110_spi_trans() argument
202 struct hi3110_priv *priv = spi_get_drvdata(spi); in hi3110_spi_trans()
215 ret = spi_sync(spi, &m); in hi3110_spi_trans()
218 dev_err(&spi->dev, "spi transfer failed: ret = %d\n", ret); in hi3110_spi_trans()
222 static int hi3110_cmd(struct spi_device *spi, u8 command) in hi3110_cmd() argument
[all …]
/linux/drivers/media/dvb-frontends/cxd2880/
H A Dcxd2880_spi_device.c5 * SPI access functions
10 #include <linux/spi/spi.h>
14 static int cxd2880_spi_device_write(struct cxd2880_spi *spi, in cxd2880_spi_device_write() argument
22 if (!spi || !spi->user || !data || size == 0) in cxd2880_spi_device_write()
25 spi_device = spi->user; in cxd2880_spi_device_write()
33 result = spi_sync(spi_device->spi, &msg); in cxd2880_spi_device_write()
41 static int cxd2880_spi_device_write_read(struct cxd2880_spi *spi, in cxd2880_spi_device_write_read() argument
50 if (!spi || !spi->user || !tx_data || in cxd2880_spi_device_write_read()
54 spi_device = spi->user; in cxd2880_spi_device_write_read()
56 result = spi_write_then_read(spi_device->spi, tx_data, in cxd2880_spi_device_write_read()
[all …]
/linux/drivers/video/fbdev/omap2/omapfb/displays/
H A Dpanel-lgphilips-lb035q02.c12 #include <linux/spi/spi.h>
43 struct spi_device *spi; member
54 static int lb035q02_write_reg(struct spi_device *spi, u8 reg, u16 val) in lb035q02_write_reg() argument
82 return spi_sync(spi, &msg); in lb035q02_write_reg()
85 static void init_lb035q02_panel(struct spi_device *spi) in init_lb035q02_panel() argument
88 lb035q02_write_reg(spi, 0x01, 0x6300); in init_lb035q02_panel()
89 lb035q02_write_reg(spi, 0x02, 0x0200); in init_lb035q02_panel()
90 lb035q02_write_reg(spi, 0x03, 0x0177); in init_lb035q02_panel()
91 lb035q02_write_reg(spi, 0x04, 0x04c7); in init_lb035q02_panel()
92 lb035q02_write_reg(spi, 0x05, 0xffc0); in init_lb035q02_panel()
[all …]
/linux/drivers/iio/common/st_sensors/
H A Dst_sensors_spi.c3 * STMicroelectronics sensors spi library driver
15 #include <linux/spi/spi.h>
33 * st_sensors_is_spi_3_wire() - check if SPI 3-wire mode has been selected
34 * @spi: spi device reference.
36 * Return: true if SPI 3-wire mode is selected, false otherwise.
38 static bool st_sensors_is_spi_3_wire(struct spi_device *spi) in st_sensors_is_spi_3_wire() argument
41 struct device *dev = &spi->dev; in st_sensors_is_spi_3_wire()
43 if (device_property_read_bool(dev, "spi-3wire")) in st_sensors_is_spi_3_wire()
54 * st_sensors_configure_spi_3_wire() - configure SPI 3-wire if needed
55 * @spi: spi device reference.
[all …]
/linux/Documentation/spi/
H A Dspi-summary.rst2 Overview of Linux kernel SPI support
7 What is SPI?
9 The "Serial Peripheral Interface" (SPI) is a synchronous four wire serial
12 standardization body. SPI uses a host/target configuration.
22 SPI hosts use a fourth "chip select" line to activate a given SPI target
24 in parallel. All SPI targets support chipselects; they are usually active
29 SPI target functions are usually not interoperable between vendors
30 (except for commodities like SPI memory chips).
32 - SPI ma
[all...]
/linux/drivers/media/v4l2-core/
H A Dv4l2-spi.c3 * v4l2-spi - SPI helpers for Video4Linux2
7 #include <linux/spi/spi.h>
13 struct spi_device *spi = v4l2_get_subdevdata(sd); in v4l2_spi_subdev_unregister() local
15 if (spi && !spi->dev.of_node && !spi->dev.fwnode) in v4l2_spi_subdev_unregister()
16 spi_unregister_device(spi); in v4l2_spi_subdev_unregister()
19 void v4l2_spi_subdev_init(struct v4l2_subdev *sd, struct spi_device *spi, in v4l2_spi_subdev_init() argument
25 sd->owner = spi->dev.driver->owner; in v4l2_spi_subdev_init()
26 sd->dev = &spi->dev; in v4l2_spi_subdev_init()
28 v4l2_set_subdevdata(sd, spi); in v4l2_spi_subdev_init()
29 spi_set_drvdata(spi, sd); in v4l2_spi_subdev_init()
[all …]
/linux/drivers/net/dsa/b53/
H A Db53_spi.c2 * B53 register access through SPI
24 #include <linux/spi/spi.h>
42 static inline int b53_spi_read_reg(struct spi_device *spi, u8 reg, u8 *val, in b53_spi_read_reg() argument
50 return spi_write_then_read(spi, txbuf, 2, val, len); in b53_spi_read_reg()
53 static inline int b53_spi_clear_status(struct spi_device *spi) in b53_spi_clear_status() argument
60 ret = b53_spi_read_reg(spi, B53_SPI_STATUS, &rxbuf, 1); in b53_spi_clear_status()
76 static inline int b53_spi_set_page(struct spi_device *spi, u8 page) in b53_spi_set_page() argument
84 return spi_write(spi, txbuf, sizeof(txbuf)); in b53_spi_set_page()
87 static inline int b53_prepare_reg_access(struct spi_device *spi, u8 page) in b53_prepare_reg_access() argument
89 int ret = b53_spi_clear_status(spi); in b53_prepare_reg_access()
[all …]
/linux/include/linux/spi/
H A Dspi.h21 #include <uapi/linux/spi/spi.h>
23 /* Max no. of CS supported per spi device */
26 /* Max no. of data lanes supported per spi device */
41 * INTERFACES between SPI controller-side drivers and SPI target protocol handlers,
42 * and SPI infrastructure.
47 * struct spi_statistics - statistics for spi transfers
51 * @messages: number of spi-messages handled
118 * struct spi_delay - SPI dela
270 spi_dev_get(struct spi_device * spi) spi_dev_get() argument
275 spi_dev_put(struct spi_device * spi) spi_dev_put() argument
282 spi_get_ctldata(const struct spi_device * spi) spi_get_ctldata() argument
287 spi_set_ctldata(struct spi_device * spi,void * state) spi_set_ctldata() argument
294 spi_set_drvdata(struct spi_device * spi,void * data) spi_set_drvdata() argument
299 spi_get_drvdata(const struct spi_device * spi) spi_get_drvdata() argument
304 spi_get_chipselect(const struct spi_device * spi,u8 idx) spi_get_chipselect() argument
309 spi_set_chipselect(struct spi_device * spi,u8 idx,u8 chipselect) spi_set_chipselect() argument
314 spi_get_csgpiod(const struct spi_device * spi,u8 idx) spi_get_csgpiod() argument
319 spi_set_csgpiod(struct spi_device * spi,u8 idx,struct gpio_desc * csgpiod) spi_set_csgpiod() argument
324 spi_is_csgpiod(struct spi_device * spi) spi_is_csgpiod() argument
1194 struct spi_device *spi; global() member
1334 spi_max_message_size(struct spi_device * spi) spi_max_message_size() argument
1344 spi_max_transfer_size(struct spi_device * spi) spi_max_transfer_size() argument
1367 spi_is_bpw_supported(struct spi_device * spi,u32 bpw) spi_is_bpw_supported() argument
1494 spi_sync_transfer(struct spi_device * spi,struct spi_transfer * xfers,unsigned int num_xfers) spi_sync_transfer() argument
1517 spi_write(struct spi_device * spi,const void * buf,size_t len) spi_write() argument
1540 spi_read(struct spi_device * spi,void * buf,size_t len) spi_read() argument
1566 spi_w8r8(struct spi_device * spi,u8 cmd) spi_w8r8() argument
1591 spi_w8r16(struct spi_device * spi,u8 cmd) spi_w8r16() argument
1616 spi_w8r16be(struct spi_device * spi,u8 cmd) spi_w8r16be() argument
[all...]

12345678910>>...92