This is another series of fixes to the ethosu driver. It's mostly probe error paths and cmd stream validation fixes. It's a mixture of AI reported issues, different solutions to other posted issues and fixes[1] and my own fixes. The last 2 patches are additional operation support.
The series adds rejecting OFM tranpose in cmd stream, but then the next to last patch adds support for it. I did this so the rejection can be backported, but maybe supporting OFM transpose is small enough that it should just be backported too? Rob [1] https://lore.kernel.org/all/[email protected] Signed-off-by: Rob Herring (Arm) <[email protected]> --- Changes in v2: - Dropped first 5 patches which are already applied - Patches 11-17 and 19 are new patches with more cmd stream validation - Add fix to diable clocks on PM setup failure - Rework the runtime-PM to suspend after initialization and before drm_dev_register(). This simplifies the error clean-up in probe. - Handle quiescing jobs before scheduler teardown - Rework the cmd stream register initialization tracking to use a bitmap of registers instead of relying on initial state values. - Handle U85 DMA 2D/3D modes correctly - Link to v1: https://patch.msgid.link/[email protected] --- Rob Herring (Arm) (19): accel: ethosu: Suspend after initialization accel: ethosu: Fix probe error cleanup accel: ethosu: Disable clocks on PM setup failure accel: ethosu: Quiesce jobs before scheduler teardown accel: ethosu: Move DMA mode to src/dst struct accel: ethosu: Track command stream register setup accel: ethosu: Factor buffer bounds checks accel: ethosu: Validate secondary streams accel: ethosu: Reject unsupported commands accel: ethosu: Validate all feature map tiles accel: ethosu: Account for feature map element size accel: ethosu: Validate convolution parameter accel: ethosu: Account for kernel dilation in IFM size accel: ethosu: Reject reserved command encodings accel: ethosu: Validate accumulator input accel: ethosu: Restrict dynamic IFM2 weights accel: ethosu: Split U65 and U85 DMA length validation accel: ethosu: Validate OFM transpose accel: ethosu: Validate resize operations drivers/accel/ethosu/ethosu_device.h | 23 + drivers/accel/ethosu/ethosu_drv.c | 23 +- drivers/accel/ethosu/ethosu_drv.h | 2 + drivers/accel/ethosu/ethosu_gem.c | 813 +++++++++++++++++++++++++++++++---- drivers/accel/ethosu/ethosu_job.c | 28 +- 5 files changed, 798 insertions(+), 91 deletions(-) --- base-commit: 2b39d680c9e0fb4d625f2916980977622e84248c change-id: 20260827-ethosu-fixes-ee58386e9000 Best regards, -- Rob Herring (Arm) <[email protected]>
