zephyr/drivers/spi
Adam Wojasinski 315dd0f41c drivers: spi: spi_nrfx_spim: Add CPOL handling on SCK pin
Pin state after SPIM deinitialization is based on pinctrl configuration.
On the other hand, CPOL is set during runtime. With the introduction
of the power-optimized SPIM driver, it disables the peripheral instance
once the transfer is completed.
As a result, the GPIO takes control over the SCK pin and drives it
based on pinctrl configuration which causes an invalid SCK state
when the transaction is configured with CPOL (Clock Polarity).

To address this issue, a patch was introduced to the SPIM driver.
Now, when a SPIM instance is configured with CPOL,
the driver is setting in the runtime the correct state of the SCK pin.

Signed-off-by: Adam Wojasinski <adam.wojasinski@nordicsemi.no>
2023-08-09 18:31:28 +00:00
..
CMakeLists.txt drivers: spi: support for Nuvoton numaker series 2023-08-09 08:24:38 +00:00
Kconfig drivers: spi: support for Nuvoton numaker series 2023-08-09 08:24:38 +00:00
Kconfig.andes_atcspi200 drivers: spi: add Andes atcspi200 driver 2022-09-07 15:34:47 +02:00
Kconfig.b91 drivers: spi: Update drivers to use devicetree Kconfig symbol 2022-07-25 09:38:30 +02:00
Kconfig.bitbang drivers: spi: Update drivers to use devicetree Kconfig symbol 2022-07-25 09:38:30 +02:00
Kconfig.cc13xx_cc26xx drivers: spi: Update drivers to use devicetree Kconfig symbol 2022-07-25 09:38:30 +02:00
Kconfig.dw drivers: spi: add Data Fusion Subsystem SPI driver 2023-05-22 15:25:19 +02:00
Kconfig.esp32 drivers: spi: Update drivers to use devicetree Kconfig symbol 2022-07-25 09:38:30 +02:00
Kconfig.gd32 drivers: spi: gd32: Add support DMA transfer 2023-01-11 08:50:56 -08:00
Kconfig.gecko drivers: spi: Update drivers to use devicetree Kconfig symbol 2022-07-25 09:38:30 +02:00
Kconfig.litex drivers: spi: Update drivers to use devicetree Kconfig symbol 2022-07-25 09:38:30 +02:00
Kconfig.mchp_mss_qspi drivers: spi: Update drivers to use devicetree Kconfig symbol 2022-07-25 09:38:30 +02:00
Kconfig.mcux_dspi drivers: spi: Update drivers to use devicetree Kconfig symbol 2022-07-25 09:38:30 +02:00
Kconfig.mcux_flexcomm drivers: all: mcux: remove conditional support for pinctrl 2023-04-24 13:34:22 +02:00
Kconfig.mcux_lpspi drivers: all: mcux: remove conditional support for pinctrl 2023-04-24 13:34:22 +02:00
Kconfig.nrfx drivers: spi_nrfx_*: Add support for optional WAKE line 2023-08-01 11:07:21 +02:00
Kconfig.numaker drivers: spi: support for Nuvoton numaker series 2023-08-09 08:24:38 +00:00
Kconfig.nxp_s32 arch: support nocache for Cortex-R52 2022-12-12 10:39:31 +01:00
Kconfig.oc_simple drivers: spi: Update drivers to use devicetree Kconfig symbol 2022-07-25 09:38:30 +02:00
Kconfig.opentitan drivers: spi: Add OpenTitan SPI driver 2023-05-10 16:48:46 +09:00
Kconfig.pl022 drivers: spi: pl022: Add support DMA transfer 2023-04-07 13:20:16 +02:00
Kconfig.psoc6 drivers: spi: Update drivers to use devicetree Kconfig symbol 2022-07-25 09:38:30 +02:00
Kconfig.pw drivers: spi: Add Intel SPI penwell driver 2023-03-21 13:39:33 +01:00
Kconfig.rv32m1_lpspi drivers: all: rv32m1: remove conditional support for pinctrl 2023-04-24 13:34:22 +02:00
Kconfig.sam spi: SAM add RTIO support 2023-04-03 09:51:02 +02:00
Kconfig.sam0 drivers: spi: Update drivers to use devicetree Kconfig symbol 2022-07-25 09:38:30 +02:00
Kconfig.sifive drivers: spi: Update drivers to use devicetree Kconfig symbol 2022-07-25 09:38:30 +02:00
Kconfig.smartbond drivers: spi: Add driver for smartbond 2023-04-20 10:32:40 +02:00
Kconfig.spi_emul drivers: spi: Update drivers to use devicetree Kconfig symbol 2022-07-25 09:38:30 +02:00
Kconfig.stm32 drivers: spi: Update drivers to use devicetree Kconfig symbol 2022-07-25 09:38:30 +02:00
Kconfig.test drivers: spi: Update drivers to use devicetree Kconfig symbol 2022-07-25 09:38:30 +02:00
Kconfig.xec_qmspi drivers: spi: Microchip XEC QMSPI-LDMA fix spi buffer usage 2023-04-11 16:57:56 +02:00
Kconfig.xlnx drivers: spi: Update drivers to use devicetree Kconfig symbol 2022-07-25 09:38:30 +02:00
Kconfig.xmc4xxx drivers: spi: xmc4xxx: Add DMA support 2023-04-25 12:23:26 +02:00
spi_andes_atcspi200.c include: add missing zephyr/irq.h include 2022-10-17 22:57:39 +09:00
spi_andes_atcspi200.h drivers: spi: add Andes atcspi200 driver 2022-09-07 15:34:47 +02:00
spi_b91.c drivers: spi: add spi_cs_is_gpio(_dt) helpers 2023-04-24 21:29:55 +02:00
spi_bitbang.c spi: callback API for asynchronous transcieve 2022-08-26 09:29:48 -04:00
spi_cc13xx_cc26xx.c drivers: spi: add spi_cs_is_gpio(_dt) helpers 2023-04-24 21:29:55 +02:00
spi_context.h drivers: stm32: SPI: cannot send several buffers if frame size is 16 bits 2023-04-28 10:05:30 +02:00
spi_dw.c drivers: spi: fix spi_dw interrupt mask 2023-05-30 10:49:47 -04:00
spi_dw.h drivers: spi: fix spi_dw interrupt mask 2023-05-30 10:49:47 -04:00
spi_dw_regs.h drivers: spi: add Data Fusion Subsystem SPI driver 2023-05-22 15:25:19 +02:00
spi_emul.c emul: Only add enabled DT nodes to bus emulators 2023-07-12 09:25:18 +02:00
spi_esp32_spim.c drivers: spi: esp32: fix SOC_ESP32 reference 2023-08-03 18:14:33 +00:00
spi_esp32_spim.h drivers: spi: esp32: add option to handle lines state 2023-08-03 12:15:18 -04:00
spi_gd32.c drivers: spi: add spi_cs_is_gpio(_dt) helpers 2023-04-24 21:29:55 +02:00
spi_gecko.c dts: spi: silabs: make peripheral-id property optional 2023-01-17 15:37:27 -06:00
spi_handlers.c drivers: spi: add spi_cs_is_gpio(_dt) helpers 2023-04-24 21:29:55 +02:00
spi_litespi.c device: remove redundant init functions 2023-04-19 10:00:25 +02:00
spi_litespi.h drivers: spi: spi_litespi: Update driver registers 2022-05-27 15:27:11 -07:00
spi_ll_stm32.c drivers: stm32: SPI: Check that SPI buffers are in a nocache region 2023-07-28 17:47:57 +02:00
spi_ll_stm32.h drivers: spi : driver with DMA for the stm32u5 2022-09-07 15:34:35 +02:00
spi_mchp_mss_qspi.c include: add missing zephyr/irq.h include 2022-10-17 22:57:39 +09:00
spi_mcux_dspi.c dma: callback with 2 status codes for successful transfers 2023-05-08 09:57:32 +02:00
spi_mcux_flexcomm.c drivers: spi: mcux_flexcomm: fix DMA bug for 2-byte transfers 2023-07-19 10:36:23 -05:00
spi_mcux_lpspi.c drivers: spi: mcux_lpspi: allow to configure data pins 2023-08-01 09:51:16 +02:00
spi_nrfx_common.c drivers: spi_nrfx_*: Add support for optional WAKE line 2023-08-01 11:07:21 +02:00
spi_nrfx_common.h drivers: spi_nrfx_*: Add support for optional WAKE line 2023-08-01 11:07:21 +02:00
spi_nrfx_spi.c drivers: spi_nrfx_*: Add support for optional WAKE line 2023-08-01 11:07:21 +02:00
spi_nrfx_spim.c drivers: spi: spi_nrfx_spim: Add CPOL handling on SCK pin 2023-08-09 18:31:28 +00:00
spi_nrfx_spis.c drivers: spi_nrfx_*: Add support for optional WAKE line 2023-08-01 11:07:21 +02:00
spi_numaker.c drivers: spi: support for Nuvoton numaker series 2023-08-09 08:24:38 +00:00
spi_nxp_s32.c drivers: spi: introduce SPI driver for NXP S32 2022-11-24 09:37:24 +01:00
spi_nxp_s32.h drivers: spi: introduce SPI driver for NXP S32 2022-11-24 09:37:24 +01:00
spi_oc_simple.c drivers: spi: add spi_cs_is_gpio(_dt) helpers 2023-04-24 21:29:55 +02:00
spi_oc_simple.h device: Apply driver_api/data attributes rename everywhere 2020-08-11 19:30:53 +02:00
spi_opentitan.c drivers: spi: Add OpenTitan SPI driver 2023-05-10 16:48:46 +09:00
spi_pl022.c drivers: spi: pl022: Add support DMA transfer 2023-04-07 13:20:16 +02:00
spi_psoc6.c drivers: spi: psoc6: Fix spi_psoc6_transceive calls 2022-09-01 01:02:50 +09:00
spi_pw.c drivers: spi: add spi_cs_is_gpio(_dt) helpers 2023-04-24 21:29:55 +02:00
spi_pw.h drivers: spi: Add Intel SPI penwell driver 2023-03-21 13:39:33 +01:00
spi_rtio.c spi: Add RTIO support to SPI 2023-04-03 09:51:02 +02:00
spi_rv32m1_lpspi.c drivers: all: rv32m1: remove conditional support for pinctrl 2023-04-24 13:34:22 +02:00
spi_sam.c rtio: Use mpsc for submission and completion queue 2023-05-10 00:39:43 +09:00
spi_sam0.c drivers: spi: sam0: fix DMA init for parts with MCLK peripheral 2023-04-20 10:48:21 +02:00
spi_sifive.c drivers: spi: add spi_cs_is_gpio(_dt) helpers 2023-04-24 21:29:55 +02:00
spi_sifive.h drivers: migrate includes to <zephyr/...> 2022-05-06 19:58:21 +02:00
spi_signal.c includes: prefer <zephyr/kernel.h> over <zephyr/zephyr.h> 2022-09-05 16:31:47 +02:00
spi_smartbond.c drivers: spi: Add driver for smartbond 2023-04-20 10:32:40 +02:00
spi_test.c device: remove redundant init functions 2023-04-19 10:00:25 +02:00
spi_xec_qmspi.c spi: mec15xx: add pinctrl for mec15xx/mec1501 qmspi 2022-09-21 18:05:32 +00:00
spi_xec_qmspi_ldma.c xec: spi: Remove .cs = NULL in spi_config initializer 2023-04-26 12:58:21 +02:00
spi_xlnx_axi_quadspi.c include: add missing zephyr/irq.h include 2022-10-17 22:57:39 +09:00
spi_xmc4xxx.c drivers: spi: xmc4xxx: Fix comp with interrupt enabled and dma disabled 2023-05-03 14:23:32 +09:00