mbox series

[V2,0/8] spi: spi_amd: Performance Optimization Patch Series

Message ID 20240925133644.2922359-1-Raju.Rangoju@amd.com
Headers show
Series spi: spi_amd: Performance Optimization Patch Series | expand

Message

Raju Rangoju Sept. 25, 2024, 1:36 p.m. UTC
AMD SPI controller’s index mode performance is constrained by the
hardware limitation of the FIFO queue length. This patch series introduces
optimizations to the spi_amd driver, aiming to maximize throughput and
enhance overall performance. The changes includes,

- Enable SPI dual and quad I/O modes and update SPI-MEM support function to
reflect AMD SPI0 hardware capabilities.
- Utilize efficient kernel APIs to streamline SPI I/O operations for
enhanced performance.
- Refine the set tx/rx count functions to optimize SPI I/O throughput.
- Minimize the number of data read calls by efficiently retrieving data
from FIFO queues, improving SPI I/O efficiency.
- Add changes to support AMD HID2 SPI controller and update SPI-MEM support
function to reflect AMD HID2 hardware capabilities.
- Add changes to set SPI controller address mode before initiating the
commands
- Add changes to implement HIDDMA read operation support for HID2 SPI
controller

V1->V2:
-------
- Eliminate the separate patch that introduces SPI-MEM support function
modifications, and incorporate those changes into the existing patches
for enabling dual and quad I/O modes, as well as enhance support for the
HID2 SPI controller.

Raju Rangoju (8):
  spi: spi_amd: Sort headers alphabetically
  spi: spi_amd: Enable dual and quad I/O modes
  spi: spi_amd: Replace ioread/iowrite calls
  spi: spi_amd: Updates to set tx/rx count functions
  spi: spi_amd: Optimize IO operations
  spi: spi_amd: Add support for HID2 SPI controller
  spi: spi_amd: Set controller address mode
  spi: spi_amd: Add HIDDMA basic read support

 drivers/spi/spi-amd.c | 325 ++++++++++++++++++++++++++++++++++++++----
 1 file changed, 295 insertions(+), 30 deletions(-)

Comments

Mark Brown Sept. 30, 2024, 11:51 p.m. UTC | #1
On Wed, 25 Sep 2024 19:06:36 +0530, Raju Rangoju wrote:
> AMD SPI controller’s index mode performance is constrained by the
> hardware limitation of the FIFO queue length. This patch series introduces
> optimizations to the spi_amd driver, aiming to maximize throughput and
> enhance overall performance. The changes includes,
> 
> - Enable SPI dual and quad I/O modes and update SPI-MEM support function to
> reflect AMD SPI0 hardware capabilities.
> - Utilize efficient kernel APIs to streamline SPI I/O operations for
> enhanced performance.
> - Refine the set tx/rx count functions to optimize SPI I/O throughput.
> - Minimize the number of data read calls by efficiently retrieving data
> from FIFO queues, improving SPI I/O efficiency.
> - Add changes to support AMD HID2 SPI controller and update SPI-MEM support
> function to reflect AMD HID2 hardware capabilities.
> - Add changes to set SPI controller address mode before initiating the
> commands
> - Add changes to implement HIDDMA read operation support for HID2 SPI
> controller
> 
> [...]

Applied to

   https://git.kernel.org/pub/scm/linux/kernel/git/broonie/spi.git for-next

Thanks!

[1/8] spi: spi_amd: Sort headers alphabetically
      commit: d6dc8b7534d5c9dec80fdd7d4af20fd71602d7cb
[2/8] spi: spi_amd: Enable dual and quad I/O modes
      commit: 769c16fa86f135542e08610e94015ed0f10afae4
[3/8] spi: spi_amd: Replace ioread/iowrite calls
      commit: efd9834b86a65f9229e90727fd61a5576c08389c
[4/8] spi: spi_amd: Updates to set tx/rx count functions
      commit: 8cd9141ad4e053d361c854cc24a18a9ca050e0a1
[5/8] spi: spi_amd: Optimize IO operations
      commit: d97735d42ab00e2f9ac4bf7cd374249cde9cb193
[6/8] spi: spi_amd: Add support for HID2 SPI controller
      commit: 145d61c0ab3344f7f76f5f8cdd1134477c1def98
[7/8] spi: spi_amd: Set controller address mode
      commit: 9674f1694e644aa5cc50e1009481cb4c5b4e8f8f
[8/8] spi: spi_amd: Add HIDDMA basic read support
      commit: 6c30eee359127c31cd8c6b586c8c3ced9f50f74b

All being well this means that it will be integrated into the linux-next
tree (usually sometime in the next 24 hours) and sent to Linus during
the next merge window (or sooner if it is a bug fix), however if
problems are discovered then the patch may be dropped or reverted.

You may get further e-mails resulting from automated or manual testing
and review of the tree, please engage with people reporting problems and
send followup patches addressing any issues that are reported if needed.

If any updates are required or you are submitting further changes they
should be sent as incremental updates against current git, existing
patches will not be replaced.

Please add any relevant lists and maintainers to the CCs when replying
to this mail.

Thanks,
Mark