[superproject] Roll third_party/pigweed pw_spi_linux: Avoid unneccessary ioctl()s in Configure()

Initiator::Configure() is called on every Device::WriteRead() call, in
case different devices on the bus use different configuration.

Avoid unnecessary ioctl() calls by recording the current configuration
and skipping Configure() if the new config is not actually different.

If the pw::spi::Initiator base class were using the non-virtual
interface (NVI) pattern, this could be implemented there and apply to
all initiator implementations.

Test: Verified downstream project still works and redundant ioctls no
      longer happen
Original-Bug: 366541694
Original-Reviewed-on: https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/235877
Original-Revision: eefd313bdb13098552cd713598b937debe80d3d4
GitOrigin-RevId: 329064affb10f2bcf9b02830ad027847de6ff386
Roller-URL: https://ci.chromium.org/b/8736618744559677745
CQ-Do-Not-Cancel-Tryjobs: true
Change-Id: I37afe3c6be5f716b011a6f6edb57e4bc9d879d99
Reviewed-on: https://fuchsia-review.googlesource.com/c/fuchsia/+/1119753
1 file changed
tree: 42caa5be93b6ba6b17cd6bcb7f7cb4d2187b1156
  1. boards/
  2. build/
  3. bundles/
  4. docs/
  5. examples/
  6. infra/
  7. products/
  8. scripts/
  9. sdk/
  10. src/
  11. third_party/
  12. tools/
  13. zircon/
  14. .clang-format
  15. .clang-tidy
  16. .editorconfig
  17. .git-blame-ignore-revs
  18. .gitattributes
  19. .gitignore
  20. .gitmodules
  21. .gn
  22. .ignore
  23. analysis_options.yaml
  24. AUTHORS
  25. BUILD.gn
  26. CODE_OF_CONDUCT.md
  27. CONTRIBUTING.md
  28. fuchsia.code-workspace
  29. LICENSE
  30. OWNERS
  31. PATENTS
  32. pyproject.toml
  33. pyrightconfig.json
  34. README.md
  35. rustfmt.toml
  36. shac.star
  37. shac.textproto
README.md

Fuchsia

What is Fuchsia?

Fuchsia is an open source, general purpose operating system supporting modern 64-bit Intel and ARM processors.

We expect everyone interacting with our project to respect our code of conduct.

Read more about Fuchsia's principles.

How can I build and run Fuchsia?

See Getting Started.

Where can I learn more about Fuchsia?

See fuchsia.dev.