[PATCH] media: imx-jpeg: Add support for descriptor allocation from SRAM

Marek Vasut marek.vasut at mailbox.org
Sat Oct 11 11:35:39 PDT 2025


On 8/22/25 2:58 AM, Ming Qian(OSS) wrote:

Hello Ming,

sorry for the very late reply.

>>>>> Using sram instead of dram only improves timing, but doesn't 
>>>>> completely circumvent the hardware bug
>>>> Does it make sense to upstream this patch anyway ?
>>>
>>> I think this patch is helpful.
>>>
>>> But so far, we don't have any SRAM resources for jpeg.
>>> The i.MX95 does have sram, but it is very limited, and it has been
>>> assigned to arm_scmi and VPU.
>>
>> I found out the SM can work fine with only 192 kiB of SRAM instead of 
>> 256 kiB of SRAM. That frees up 64 kiB of SRAM for NS world. Each JPEG 
>> IP needs 20544 Bytes for descriptors, which fits into those freed up 
>> 64 kiB of SRAM.
>>
>> The alternative would be to handle those AXI read errors and restart 
>> the encoding. I always observe these errors in the CONFIG phase of 
>> encoding. Do you happen to have any details of this issue you could 
>> share ? Do you know whether the problem occurs only during CONFIG 
>> phase, or also during image read phase ?
>>
>> If the problem occurs only during CONFIG phase of encoding, it would 
>> be easy to retrigger the CONFIG I think. If the problem occurs also 
>> during image read, that might need some more creative fix.
>>
> 
> This is a hardware bug that affects not only the jpeg encoder but also
> the jpeg decoder.
> 
> This issue occurs under conditions of high backpressure on the AXI bus,
> meaning the latency on the write/response channel is high, while the
> read channel latency remains low.
> 
> When error occurs during CONFIG phase of encoder, it will trigger a
> interrupt. But in other phase, there is no interrupt, then the running
> job is stalled until timeout.
I sent a V2 now, thank you for the clarification, I tried to include 
that in the commit message too.



More information about the linux-arm-kernel mailing list