lkml.org 
[lkml]   [2023]   [Oct]   [19]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
SubjectRe: [PATCH v5 1/3] dt-bindings: media: imx-jpeg: Assign slot for imx jpeg encoder/decoder
From

Hi Krzysztof,

>> From: Ming Qian <ming.qian@nxp.com>
>>
>> This IP includes a jpeg wrapper and a jpeg engine, the wrapper is
>> working on descriptor based manner. It supports up to 4 slots, each slot
>> can have its own chained descriptors. Host won't configure the engine
>> directly, but fill some descriptors to encode or decode one jpeg
>> picture. Then configure the descriptors to certain slot register. The
>> jpeg wrapper will schedule between different slots. When some slot is
>> finished, the slot interrupt will be triggered. The purpose of slot is
>> that engine can be shared across multiple VMS and os.
>>
>> Currently, power domains and interrupts are enabled for all 4 slots, but
>> only one slot is used. There is no benefit in using more that one slot
>> from within the same OS, as the slots are scheduled in round-robin
>> manner and not executed in parallel.
>>
>> Use the property "nxp,slot" to assign a single slot, and just expose the
>> parts of the h/w for the assigned slot. For example, only put slot 1's
>> power-domains entry in the DT when slot 1 is assigned. If not specified,
>> 0 is used by default.
>>
>> Signed-off-by: Ming Qian <ming.qian@nxp.com>
>> ---
>> v5
>> - improve commit message
>> - improve property description
>>
>> v4
>> - improve commit message
>> - drop line making the property required, to avoid ABI break
>>
>> v3
>> - add vender prefix, change property slot to nxp,slot
>> - add type for property slot
>>
>> v2
>> - add a new property in bindings document
>>
>> .../bindings/media/nxp,imx8-jpeg.yaml | 46 +++++++++----------
>> 1 file changed, 22 insertions(+), 24 deletions(-)
>>
>> diff --git a/Documentation/devicetree/bindings/media/nxp,imx8-jpeg.yaml b/Documentation/devicetree/bindings/media/nxp,imx8-jpeg.yaml
>> index 3d9d1db37040..0961856bdcab 100644
>> --- a/Documentation/devicetree/bindings/media/nxp,imx8-jpeg.yaml
>> +++ b/Documentation/devicetree/bindings/media/nxp,imx8-jpeg.yaml
>> @@ -32,19 +32,27 @@ properties:
>> maxItems: 1
>>
>> interrupts:
>> - description: |
>> - There are 4 slots available in the IP, which the driver may use
>> - If a certain slot is used, it should have an associated interrupt
>> - The interrupt with index i is assumed to be for slot i
>> - minItems: 1 # At least one slot is needed by the driver
>> - maxItems: 4 # The IP has 4 slots available for use
>> + description:
>> + Interrupt number for slot
>> + maxItems: 1
>
> The device still has four interrupts, so we should allow up to four of
> them. One given OS might want to use two or all four slots.
>
>
Got it, I will fix it in v6 patch.

>>
>> power-domains:
>> description:
>> List of phandle and PM domain specifier as documented in
>> Documentation/devicetree/bindings/power/power_domain.txt
>> - minItems: 2 # Wrapper and 1 slot
>> - maxItems: 5 # Wrapper and 4 slots
>> + minItems: 1 # Mixed power domain
>> + maxItems: 2 # Wrapper and 1 slot
>> +
>> + nxp,slot:
>> + $ref: /schemas/types.yaml#/definitions/uint32
>> + description:
>> + Integer number of slot index used. This IP includes a jpeg wrapper, the
>> + wrapper is working on descriptor based manner. It supports up to 4 slots,
>> + each slot can have its own chained descriptors. The purpose is to share
>> + the jpeg engine across multiple VMS and os. We use this property to
>> + assign a single slot. If not specified, 0 is used by default.
>> + minimum: 0
>> + maximum: 3
>
> default: 0
>
Got it.

Best regards,
Ming
>
>
> Best regards,
> Krzysztof
>

\
 
 \ /
  Last update: 2023-10-19 11:19    [W:0.102 / U:0.168 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site