-       if (of_find_compatible_node(NULL, NULL, "amcc,ppc460ex-crypto")) { +       if (of_find_compatible_node(NULL, NULL, "amcc,ppc460ex-crypto") || +           of_find_compatible_node(NULL, NULL, "amcc,ppc460gt-crypto")) {

If the device is actually compatible, the device tree node should claim
it is, and you do not need this code change.

That was actually my first instinct, however I tried to follow the
current convention in the glacier and canyonlands DTS files, which is
to set every device compatible to 460gt or 460ex, depending on the
processor. Many of the devices are identical between the two, since
they are variations of the same SoC, so which is the preferred method?
Follow the device tree convention and add the compatibility check in
the driver,

That is not the convention.

or alter the device trees? I'll send another patch if it's
the latter.

You say

  compatible = "amcc,ppc460gt-crypto", "amcc,ppc460ex-crypto";

So, a unique name for the actual device first, followed by the name of
what it is compatible to.  The driver for 460ex-crypto will then work
without any changes, but it can also do some 460gt-specific workarounds
or enhancements; or you could even have a totally separate driver for
the 460gt-crypto (you'll have to arrange for it to be used preferably
then).

You should document this 460gt-crypto binding, btw (a single line in
the 460ex-crypto binding doc will do).


Segher

_______________________________________________
Linuxppc-dev mailing list
Linuxppc-dev@lists.ozlabs.org
https://lists.ozlabs.org/listinfo/linuxppc-dev

Reply via email to