[PATCH v1] drivers: cadence_qspi_apb: Add 1us delays in polling loops
Tom Rini
trini at konsulko.com
Wed Apr 15 22:44:22 CEST 2026
On Thu, Mar 12, 2026 at 07:44:19PM +0800, Boon Khai Ng wrote:
> Add 1us delays in busy-wait polling loops to reduce CPU usage, minimize
> bus traffic, and prevent watchdog timeout during QSPI operations.
>
> Three tight polling loops continuously check hardware status without
> any delay, consuming excessive CPU cycles and potentially triggering
> watchdog timeout on long operations. Adding small delays allows the
> hardware time to respond and reduces unnecessary register reads.
>
> The udelay() function includes WATCHDOG_RESET()/schedule() calls that
> service the watchdog, preventing system reset during extended QSPI
> transfers.
>
> Signed-off-by: Boon Khai Ng <boon.khai.ng at altera.com>
> ---
> drivers/spi/cadence_qspi_apb.c | 3 +++
> 1 file changed, 3 insertions(+)
So, this is fine, BUT it pushes socfpga_vining_fpga over the size limit.
And I see SoCFPGA isn't enabling LTO at all. Can you please get that
tested on at least some SoCFPGA platforms and then enable it for all?
Then we can continue down this path, thanks!
--
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 228 bytes
Desc: not available
URL: <https://lists.denx.de/pipermail/u-boot/attachments/20260415/85aa4f85/attachment.sig>
More information about the U-Boot
mailing list