[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <f9c0a0be-6d2c-415d-983a-dec5d20a3ecc@quicinc.com>
Date: Mon, 28 Oct 2024 12:02:44 +0530
From: Jyothi Kumar Seerapu <quic_jseerapu@...cinc.com>
To: Konrad Dybcio <konrad.dybcio@....qualcomm.com>,
Vinod Koul
<vkoul@...nel.org>, Rob Herring <robh@...nel.org>,
Krzysztof Kozlowski
<krzk+dt@...nel.org>,
Conor Dooley <conor+dt@...nel.org>,
Bjorn Andersson
<andersson@...nel.org>,
Konrad Dybcio <konradybcio@...nel.org>,
Andi Shyti
<andi.shyti@...nel.org>,
Sumit Semwal <sumit.semwal@...aro.org>,
Christian König <christian.koenig@....com>
CC: <cros-qcom-dts-watchers@...omium.org>, <linux-arm-msm@...r.kernel.org>,
<dmaengine@...r.kernel.org>, <devicetree@...r.kernel.org>,
<linux-kernel@...r.kernel.org>, <linux-i2c@...r.kernel.org>,
<linux-media@...r.kernel.org>, <dri-devel@...ts.freedesktop.org>,
<linaro-mm-sig@...ts.linaro.org>, <quic_msavaliy@...cinc.com>,
<quic_vtanuku@...cinc.com>
Subject: Re: [PATCH v1 3/5] dmaengine: qcom: gpi: Add provision to support TRE
size as the fourth argument of dma-cells property
On 10/25/2024 11:47 PM, Konrad Dybcio wrote:
> On 15.10.2024 2:07 PM, Jyothi Kumar Seerapu wrote:
>> The current GPI driver hardcodes the channel TRE (Transfer Ring Element)
>> size to 64. For scenarios requiring high performance with multiple
>> messages in a transfer, use Block Event Interrupt (BEI).
>> This method triggers interrupt after specific message transfers and
>> the last message transfer, effectively reducing the number of interrupts.
>> For multiple transfers utilizing BEI, a channel TRE size of 64 is
>> insufficient and may lead to transfer failures, indicated by errors
>> related to unavailable memory space.
>>
>> Added provision to modify the channel TRE size via the device tree.
>> The Default channel TRE size is set to 64, but this value can update
>> in the device tree which will then be parsed by the GPI driver.
>>
>> Signed-off-by: Jyothi Kumar Seerapu <quic_jseerapu@...cinc.com>
>> ---
>
> 1. Is the total memory pool for these shared?
Total memory we need preallocate and so for each serial engine this
mentioned channel TRE size be used for config, go, dma tres preparation.
>
> 2. Is there any scenario where we want TRE size to be lower and
> not higher? Are there any drawbacks to always keeping them at
> SOME_MAX_VALUE?
We are keeping minimum channel tre size to 64 to make sure that enough
size is present to handle the requested transfers.
>
> 3. Is this something we should configure at boot time (in firmware)?
> Perhaps this could be decided based on client device settings (which
> may or may not require adding some field in the i2c framework)
>
This memory is for software usecase and preallocated prior to GPI driver
allocated this memory to channels and events handling.
I have reverted the changes related to adding new argument for dma-cells
property and instead used existing value for channel TRE size in GPI
driver, which is 64.
>
> Konrad
Powered by blists - more mailing lists