lkml.org 
[lkml]   [2015]   [Jun]   [12]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [PATCH 02/13] dmaengine: Introduce dma_request_slave_channel_compat_reason()
    On Thu, Jun 04, 2015 at 06:58:06PM +0300, Peter Ujfalusi wrote:
    > Vinod,
    >
    > On 06/02/2015 03:55 PM, Vinod Koul wrote:
    > > On Fri, May 29, 2015 at 05:32:50PM +0300, Peter Ujfalusi wrote:
    > >> On 05/29/2015 01:18 PM, Vinod Koul wrote:
    > >>> On Fri, May 29, 2015 at 11:42:27AM +0200, Geert Uytterhoeven wrote:
    > >>>> On Fri, May 29, 2015 at 11:33 AM, Vinod Koul <vinod.koul@intel.com> wrote:
    > >>>>> On Tue, May 26, 2015 at 04:25:57PM +0300, Peter Ujfalusi wrote:
    > >>>>>> dma_request_slave_channel_compat() 'eats' up the returned error codes which
    > >>>>>> prevents drivers using the compat call to be able to do deferred probing.
    > >>>>>>
    > >>>>>> The new wrapper is identical in functionality but it will return with error
    > >>>>>> code in case of failure and will pass the -EPROBE_DEFER to the caller in
    > >>>>>> case dma_request_slave_channel_reason() returned with it.
    > >>>>> This is okay but am worried about one more warpper, how about fixing
    > >>>>> dma_request_slave_channel_compat()
    > >>>>
    > >>>> Then all callers of dma_request_slave_channel_compat() have to be
    > >>>> modified to handle ERR_PTR first.
    > >>>>
    > >>>> The same is true for (the existing) dma_request_slave_channel_reason()
    > >>>> vs. dma_request_slave_channel().
    > >>> Good point, looking again, I think we should rather fix
    > >>> dma_request_slave_channel_reason() as it was expected to return err code and
    > >>> add new users. Anyway users of this API do expect the reason...
    > >>
    > >> Hrm, they are for different use.dma_request_slave_channel()/_reason() is for
    > >> drivers only working via DT or ACPI while
    > >> dma_request_slave_channel_compat()/_reason() is for drivers expected to run in
    > >> DT/ACPI or legacy mode as well.
    > >>
    > >> I added the dma_request_slave_channel_compat_reason() because OMAP/daVinci
    > >> drivers are using this to request channels - they need to support DT and
    > >> legacy mode.
    > > I think we should hide these things behind the API and do this behind the
    > > hood for ACPI/DT systems.
    > >
    > > Also it makes sense to use right API and mark rest as depricated
    >
    > So to convert the dma_request_slave_channel_compat() and not to create _reason
    > variant?
    >
    > Or to have single API to request channel? The problem with that is that we
    > need different parameters for legacy and DT for example.
    Sorry this slipped thru

    Thinking about it again, I think we should coverge to two APIs and mark the
    legacy depracuated and look to convert folks and phase that out


    --
    ~Vinod


    \
     
     \ /
      Last update: 2015-06-12 15:21    [W:2.812 / U:0.020 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site