[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <5784e3cb-8d22-58f1-5211-a450b60949a9@ti.com>
Date: Wed, 7 Oct 2020 14:49:45 +0300
From: Peter Ujfalusi <peter.ujfalusi@...com>
To: Vinod Koul <vkoul@...nel.org>
CC: <dmaengine@...r.kernel.org>, Rob Herring <robh+dt@...nel.org>,
Bjorn Andersson <bjorn.andersson@...aro.org>,
<linux-arm-msm@...r.kernel.org>, <devicetree@...r.kernel.org>,
<linux-kernel@...r.kernel.org>
Subject: Re: [PATCH v3 2/3] dmaengine: add peripheral configuration
Hi Vinod,
On 07/10/2020 14.28, Vinod Koul wrote:
> Hi Peter,
>
> On 02-10-20, 11:48, Peter Ujfalusi wrote:
>
>> It depends which is best for the use case.
>> I see the metadata useful when you need to send different
>> metadata/configuration with each transfer.
>> It can be also useful when you need it seldom, but for your use case and
>> setup the dma_slave_config extended with
>>
>> enum dmaengine_peripheral peripheral_type;
>> void *peripheral_config;
>>
>> would be a bit more explicit.
>>
>> I would then deal with the peripheral config in this way:
>> when the DMA driver's device_config is called, I would take the
>> parameters and set a flag that the config needs to be processed as it
>> has changed.
>> In the next prep_slave_sg() then I would prepare the TREs with the
>> config and clear the flag that the next transfer does not need the
>> configuration anymore.
>>
>> In this way each dmaengine_slave_config() will trigger at the next
>> prep_slave_sg time configuration update for the peripheral to be
>> included in the TREs.
>> The set_config would be internal to the DMA driver, clients just need to
>> update the configuration when they need to and everything is taken care of.
>
> Ok I am going to drop the dmaengine_peripheral and make
> peripheral_config as as you proposed.
>
> So will add following to dma_slave_config:
> void *peripheral_config;
>
> Driver can define the config they would like and use.
>
> We can eventually look at common implementations and try to unify once
> we have more users
Sound good to me!
- Péter
Texas Instruments Finland Oy, Porkkalankatu 22, 00180 Helsinki.
Y-tunnus/Business ID: 0615521-4. Kotipaikka/Domicile: Helsinki
Powered by blists - more mailing lists