Re: [RFC]DMA API Update


Jon Medhurst (Tixy) <tixy@...>
 

On Tue, 2017-01-24 at 02:37 +0100, Piotr MieĊ„kowski wrote:
[...]
* I know that this comment is coming very late but I was wondering if
we really want the device drivers to use this DMA API? Device
drivers are always written for a specific SoC
No they aren't. The same IP blocks gets reused in multiple SoCs,
sometimes from different manufactures. E.g ARM provide IP for lots of
generic devices that then gets integrated by different manufacturers
into their SoC. Other companies do too, e.g. Synopsys has DesignWare IP.
Then there's things not on the SoC itself that the board manufacturer
adds. They need drivers and I'm sure people would prefer not to have to
cut'n'paste an existing driver and hack it to fit the DMA driver for the
particular SoC there using.

and their code doesn't
need to be portable between architectures,
What about drivers that talk to other devices over things like SPI or
I2C busses? They are completely SoC and architecture agnostic.
There's also people integrating things like 16550 compatible UARTs in
devices of different architectures, which could have a common driver.

[...]
Is one driver accessing other driver via a
private and not public API violating some Zephyr design guideline?
It's breaking common sense on how you design an OS that's pretending to
be in any way generic.

--
Tixy

Join devel@lists.zephyrproject.org to automatically receive all group messages.