Other Parts Discussed in Thread: AM6442,
On our TQMa62xx SoM, we are occasionally seeing MTD write timeouts under high CPU and memory load. We are writing to a SPI-NOR flash using mtd_debug write
. The following messages are emitted to the kernel log:
[ 2178.795315] cadence-qspi fc40000.spi: Indirect write completion error (-110) [ 2178.795351] spi-nor spi0.0: operation failed with -110
Our device tree is configured as follows:
&ospi0 { pinctrl-names = "default"; pinctrl-0 = <&ospi0_pins>; status = "okay"; flash@0 { compatible = "jedec,spi-nor"; reg = <0x0>; spi-tx-bus-width = <8>; spi-rx-bus-width = <8>; spi-max-frequency = <84000000>; cdns,tshsl-ns = <60>; cdns,tsd2d-ns = <60>; cdns,tchsh-ns = <60>; cdns,tslch-ns = <60>; cdns,read-delay = <2>; partitions { compatible = "fixed-partitions"; #address-cells = <1>; #size-cells = <1>; /* Filled by bootloader */ }; }; };
We are using a Macronix MX25U51245GXDI00 QuadSPI flash, and I have verified that 1-4-4 Page Writes (opcode 0x3E) are used.
We are seeing the issue with the latest ti-linux-rt 6.1.y (tag 09.00.00.009-rt, CONFIG_PREEMPT_RT is currently disabled in our config however).
The issue usually appears within a few minutes of writing to the flash while stressing the system using stress-ng and stressapptest.