aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/platform/x86/intel/vsec.c
diff options
context:
space:
mode:
authorConor Dooley <[email protected]>2025-03-03 10:47:40 +0000
committerMark Brown <[email protected]>2025-03-03 12:10:03 +0000
commit91cf42c63f2d8a9c1bcdfe923218e079b32e1a69 (patch)
tree9f4a904b960b8bfa57bff720511728e30fa39287 /drivers/platform/x86/intel/vsec.c
parentMAINTAINERS: add tambarus as R for Samsung SPI (diff)
downloadkernel-91cf42c63f2d8a9c1bcdfe923218e079b32e1a69.tar.gz
kernel-91cf42c63f2d8a9c1bcdfe923218e079b32e1a69.zip
spi: microchip-core: prevent RX overflows when transmit size > FIFO size
When the size of a transfer exceeds the size of the FIFO (32 bytes), RX overflows will be generated and receive data will be corrupted and warnings will be produced. For example, here's an error generated by a transfer of 36 bytes: spi_master spi0: mchp_corespi_interrupt: RX OVERFLOW: rxlen: 4, txlen: 0 The driver is currently split between handling receiving in the interrupt handler, and sending outside of it. Move all handling out of the interrupt handling, and explicitly link the number of bytes read of of the RX FIFO to the number written into the TX one. This both resolves the overflow problems as well as simplifying the flow of the driver. CC: [email protected] Fixes: 9ac8d17694b6 ("spi: add support for microchip fpga spi controllers") Signed-off-by: Conor Dooley <[email protected]> Link: https://patch.msgid.link/20250303-veal-snooper-712c1dfad336@wendy Signed-off-by: Mark Brown <[email protected]>
Diffstat (limited to 'drivers/platform/x86/intel/vsec.c')
0 files changed, 0 insertions, 0 deletions