On Wed, May 7, 2014 at 10:12 AM, Bjorn Andersson <bjorn@xxxxxxx> wrote: > On Tue, May 6, 2014 at 6:32 PM, Rob Herring <robherring2@xxxxxxxxx> wrote: >> On Tue, May 6, 2014 at 7:48 PM, Frank Rowand <frowand.list@xxxxxxxxx> wrote: >>> An issue with the path of SPMI nodes under /sys/bus/... was reported in >>> https://lkml.org/lkml/2014/4/23/312. The symptom is that two different >>> grandchild nodes of the spmi with the same node-name@unit-address will >>> result in attempting to create duplicate links at >>> /sys/bus/platform/devices/unit-address.node-name. It turns out that the >>> specific example provided might not be an expected configuration for >>> current hardware, but the reported trap remains an issue. [...] >> This can be solved in a much less invasive way just in the DT naming >> algorithm. This is slightly different from what I had suggested of >> just dropping the unit address. It keeps the unit address, but adds >> the unique index on untranslate-able addresses. The diff is bigger due >> to refactoring to reduce the indentation levels. It is untested and >> whitespace corrupted: > > The unique index leads to an interesting dependency between the order > of nodes in the DTB and userspace; paths to e.g. our the path to our > block devices contains soc.X where X changes now and then. Fortunately > soc.X won't change that often, but forcing more peripheral nodes to use > the same schema would show the problem quite often. Userspace depending on the device names is broken and device names are not considered part of the sysfs ABI. So devices having randomish names is a feature. The names and location change when platforms convert to DT. The location changes when someone decides to add an soc device to a platform as well. > Does translatable/untranslatable refer to if this is an address translatable > my the cpu or that it's just a translatable address on this specific bus? > As far as I can see it's the latter and in our case (revid { reg = > <0x100, 0x100>; }) > seem to be translatable with the current implementation. It should be the former. If the current behavior is the latter, then the problem is in a different spot. Rob -- To unsubscribe from this list: send the line "unsubscribe devicetree" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html