Re: Xilinx SYSACE driver and 8-bit attachment

From: John Williams
Date: Wed Oct 07 2009 - 19:46:00 EST


On Wed, Oct 7, 2009 at 11:34 PM, Grant Likely <grant.likely@xxxxxxxxxxxx> wrote:
> [Added devicetree-discuss to cc: list]
>
> On Wed, Oct 7, 2009 at 1:13 AM, John Williams
> <john.williams@xxxxxxxxxxxxx> wrote:
>> Hi Grant (it's your driver :) and David D ( and your DTS generator :)
> [...]
>> if (of_find_property(op->node, "8-bit", NULL))
> [...]
>> doesn't match the properties generated by Xilinx's device tree generator:
> [...]
>>                         xlnx,mem-width = <0x8>;
>>
>> So, the question is, which should change?
>
> Well, obviously its a device tree generator bug, the driver code is
> perfect.  :-P

How did I know you'd say that? :)

> In all seriousness though, the '8-bit' property has been present for a
> while now and needs to be retained to not break existing users.  It
> would be okay for the driver to be modified to *also* check for the
> xlnx,mem-width property, but the better solution is to modify the
> device tree generator.  Plus, the '8-bit' property is the documented
> binding in Documentation/powerpc/dts-bindings/xilinx.txt

I tend to agree - but I also tend think that putting funky, arbitrary
output strings in the DTS generator is also a bad idea.

In this case, my vote is leaning towards adding a test for
"xlnx,mem-width = <..>" to the driver, in addition to the existing
"8-bit" tag to keep back compatability.

How would you feel about that?

In future, for new Xilinx drivers I think the default binding should
be inspired by what comes from the DTS generator automatically, with
out any special per-device hacks. This has a natural tendency towards
minimum pain I think.

John
--
John Williams, PhD, B.Eng, B.IT
PetaLogix - Linux Solutions for a Reconfigurable World
w: www.petalogix.com p: +61-7-30090663 f: +61-7-30090663
--
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/