diff options
author | David Lechner <dlechner@baylibre.com> | 2024-01-27 00:23:57 +0300 |
---|---|---|
committer | Mark Brown <broonie@kernel.org> | 2024-02-05 17:35:44 +0300 |
commit | c8bec3355f08ddb887d5c13b7095dfa79e6db108 (patch) | |
tree | 56c78044c77c7987b21ae1b78fc1525bbfd981ed /tools/perf/scripts/python/export-to-sqlite.py | |
parent | 1e942b5bb18e8a9709a5cb5293b15dd54ed79f98 (diff) | |
download | linux-c8bec3355f08ddb887d5c13b7095dfa79e6db108.tar.xz |
spi: move split xfers for CS_WORD emulation
This moves splitting transfers for CS_WORD software emulation to the
same place where we split transfers for controller-specific reasons.
This fixes a few subtle bugs.
The calculation for maxsize was wrong for bit sizes between 17 and 24.
This is fixed by making use of spi_split_transfers_maxwords() which
already has the correct calculation.
Also, since this indirectly calls spi_res_alloc(), to avoid leaking
resources, spi_finalize_current_message() would need to be called
on all error paths in __spi_validate() and callers of __spi_validate()
would need to do the same. This is fixed by moving the call to
__spi_pump_transfer_message() where it is already splitting transfers
for other reasons and correctly releases resources in the subsequent
error paths.
Fixes: cbaa62e0094a ("spi: add software implementation for SPI_CS_WORD")
Signed-off-by: David Lechner <dlechner@baylibre.com>
Link: https://lore.kernel.org/r/20240126212358.3916280-2-dlechner@baylibre.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Diffstat (limited to 'tools/perf/scripts/python/export-to-sqlite.py')
0 files changed, 0 insertions, 0 deletions