[PATCH] uio/pdrv_genirq: Add OF support

John Williams john.williams at petalogix.com
Fri Apr 1 00:47:04 EST 2011


On Thu, Mar 31, 2011 at 11:23 PM, Wolfram Sang <w.sang at pengutronix.de> wrote:
>
>>    Maybe I misunderstand you, in my view it is the responsibility of <vendor>
>>    to create their DTS files to indicate they want <special-card1> to bind to
>>    generic-uio.
>
> Device tree is a OS-neutral hardware description language. "generic-uio"
> is neither OS-neutral nor a hardware description. devicetree.org has
> more information about this.

If we are trying to be pure, I might argue we are not changing the DTS
language, but rather just add support in Linux for a particular
use-case.  There is no violation of DTS syntax.

It might be *recommended* that device trees describe only hardware,
although as Michal points out there is already precedent in the
'chosen' node where this is clearly violated, but in a way that is
compatible with DTS syntax.

Is it forbidden to have DTS descriptions of purely virtual devices, as
would be present if you boot a DTS-driven kernel inside a VM
environment, which provides only virtual implementations of various
devices (ethernet etc)?

'vmware,virt-enet' or whatever?

>>    Our use-case is pretty clear, in FPGA-based systems it is common to create
>>    arbitrary devices that developers just want to control from userspace,
>>    with simple IRQ and IO capabilities (DMA can come later :). �They don't
>>    need to bind to other kernel APIs or subsystems, and don't want to invest
>>    in one-off kernel drivers that simply will never go upstream.
>
> For that, the new_compatible-file would be suitable, I think.

# echo "generic-uio" > /sys/class/uio/<something>

?

>>    UIO is perfect, and simply tagging the device as generic-uio in the DTS is
>>    so simple, clean, and elegant.
>
> Simple, yes (I do understand I wrote the first approach ;)) . Elegant,
> not really, because it breaks core conventions of the device tree. For
> your case it is a very conveniant hack, but it is still a hack.

Being useful seems like a high priority in the kernel, I'm not ashamed of it! :)

Regards,

John


More information about the devicetree-discuss mailing list