Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
realtek: Use atomic poll for aux-mdio commands
regmap_read_poll_timeout() relies on usleep_range() to time the polling loop. With the current, rather large, scheduling interval, a short usleep_range() may take a lot longer than expected, causing performance issues. Switch the driver over to using regmap_read_poll_timeout_atomic(), which uses udelay() to time the polling loop. For comparision, the 'ethtool -m <dev>' command is about 10 times faster with the atomic variant. Using 'perf -r10 ethtool -m lan25': - Driver using regmap_read_poll_timeout(): 2.0117 +- 0.0118 seconds time elapsed ( +- 0.58% ) - Driver using regmap_read_poll_timeout_atomic(): 0.1674 +- 0.0250 seconds time elapsed ( +- 14.95% ) Signed-off-by: Sander Vanheule <[email protected]>
- Loading branch information