Re: [PATCH] dw_dmac: adjust slave_id accordingly to request linebase

From: Andy Shevchenko
Date: Wed Jan 30 2013 - 02:33:19 EST


On Tue, 2013-01-29 at 20:57 +0530, Viresh Kumar wrote:
> On Tue, Jan 29, 2013 at 10:52 AM, Mika Westerberg
> <mika.westerberg@xxxxxxxxxxxxxxx> wrote:
> > We had a discusssion about this with Andy as well. The thing is that there
> > is no way in current resource to pass DMA request line numbers supported by
> > the controller to the driver in a generic way. We on the other hand have to
> > deal this somehow as we have a shared DMA controller on Lynxpoint where the
> > offset will start from 16 (but it might be something else as well).
> >
> > Is there something which limits the usage of IORESOUCE_DMA to be only
> > usable for ISA DMA channels?
>
> Andy,
>
> Why do we need this request_line_base? Why not program the actual value
> directly into the slave structure (base + offset)?

Slave device exactly has knowledge about this number slave_id = (base
+offset). However...

> In case it is required, add it in platform data field or can add DT
> binding for it.

We get a device from the ACPI CSRT table. During enumeration we don't
know what kind of the device it is. From the enumeration point of view
each device enumerated from CSRT is a platform device (see
drivers/acpi/csrt.c for the details).

That's why we have to pass this info somehow to the DMAC driver. And
like Mika already mentioned we have no other generic way except
IORESOURCE_DMA. If you have something better in mind, please share. We
could adopt our code then.


--
Andy Shevchenko <andriy.shevchenko@xxxxxxxxxxxxxxx>
Intel Finland Oy
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/