Re: [PATCH 2/2] uio: add an of_genirq driver
From: Grant Likely <hidden>
Date: 2009-06-14 14:41:00
Also in:
linux-devicetree, lkml
On Thu, Jun 11, 2009 at 6:04 PM, Wolfram Sang[off-list ref] wrote:
Picking up the now exported generic probe function from the platform-variant of this driver, this patch adds an of-version. Also add the binding documentation. Signed-off-by: Wolfram Sang <redacted> Cc: Magnus Damm <magnus.damm@gmail.com> Cc: Hans J. Koch <redacted> Cc: Greg KH <gregkh@suse.de> --- In probe, I put the resources-array on the stack to simplify the code. If=
this
is considered too huge for the stack (140 byte for a 32-bit system at the moment), I can also post a version using kzalloc. =A0Documentation/powerpc/dts-bindings/uio-generic.txt | =A0 16 +++ =A0drivers/uio/Kconfig =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =
=A0 =A0 =A0 =A0| =A0 =A06 +
=A0drivers/uio/Makefile =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =
=A0 =A0 =A0 | =A0 =A01 +
=A0drivers/uio/uio_of_genirq.c =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =
=A0 =A0| =A0 98 ++++++++++++++++++++
quoted hunk ↗ jump to hunk
=A04 files changed, 121 insertions(+), 0 deletions(-) =A0create mode 100644 Documentation/powerpc/dts-bindings/uio-generic.txt =A0create mode 100644 drivers/uio/uio_of_genirq.cdiff --git a/Documentation/powerpc/dts-bindings/uio-generic.txt b/Documen=
tation/powerpc/dts-bindings/uio-generic.txt
quoted hunk ↗ jump to hunk
new file mode 100644 index 0000000..8ad9861--- /dev/null +++ b/Documentation/powerpc/dts-bindings/uio-generic.txt@@ -0,0 +1,16 @@ +UIO for custom devices + +A device which will be mapped using the UIO subsystem. + +Properties: + - compatible : should contain the specific model used, followed by + =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0"generic-uio". + - reg : address range(s) of the device (up to MAX_UIO_MAPS) + - interrupts : interrupt of the device + +Example: + =A0 =A0 =A0 =A0c64fpga@0 { + =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0compatible =3D "ptx,c64fpga001", "generi=
c-uio";
+ =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0reg =3D <0x0 0x10000>; + =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0interrupts =3D <0 0 3>; + =A0 =A0 =A0 =A0};
Hmmm, I'm not happy about this. The device tree describes the hardware, not the way Linux uses the hardware. UIO definitely falls into the category of Linux implementation detail. This should be approached from the other way around. Either the generic-uio of_platform driver should contain an explicit list of devices to be handled by UIO, or the OF infrastructure should be modified to allow things like force binding of_devices to of_drivers at runtime. g. --=20 Grant Likely, B.Sc., P.Eng. Secret Lab Technologies Ltd.