On Fri, 2013-11-01 at 13:47 -0700, Greg Kroah-Hartman wrote: > > > On my device I seem to have some platform devices registered through > > > device-tree, and some registered through platform_device_add (e.g. > > > 'alarmtimer'). Guaranteeing they remain disjoint sets if the kernel is > > > allowed to evolve independently of the devicetree might be tricky.... > > > Maybe we need "/sys/devices/platform" and "/sys/devices/dt_platform" ?? > > > > No, I think device-tree created platform devices should go > > to /sys/devices/platform like the "classic" ones. > > > > The problem is really how to deal with potential name duplication. We > > could try to register, if we get -EEXIST (assuming sysfs returns the > > right stuff), try again with ".1" etc... > > How can there be device name collisions? All platform devices _should_ > be named uniquely, if not, you have bigger problems... The problem is how to create a unique name for a platform device created from a device-tree node. Device tree nodes aren't necessarily uniquely named. They are unique under a given parent but that hierarchy isn't preserved when creating corresponding platform devices (and it would be very tricky to do so). Currently, we simply append a number to the name when creating them, which is obtained from a global counter. Neil is unhappy about that because on his specific hardware, the device has a unique name and thus we introduce a naming difference between device-tree usage and old-style "hard coded" board file usage. It would be nice if we could do something that only appends the "global number" at the end of the name if the name isn't already unique. Thus my proposal of trying first with the base name, and trying again if that returns -EEXIST in some kind of loop. Do you have a better idea ? Cheers, Ben. -- 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