On Wed, Aug 17, 2022 at 8:31 AM Greg KH <gregkh@xxxxxxxxxxxxxxxxxxx> wrote: > > On Wed, Aug 17, 2022 at 08:35:42PM +0530, Nipun Gupta wrote: > > This change adds compatible string for the platform based > > devices. > > What exactly is a "compatible string"? Didn't read the rest of the patches in the series yet, but Nack to this. This info is already available under: <device folder>/of_node/compatible for any device in any (or at least most) bus that was created from an of_node. Unless compatible is now also in ACPI. In which case, it's probably be better to have an of_node like symlink. -Saravana > > > > > Signed-off-by: Nipun Gupta <nipun.gupta@xxxxxxx> > > --- > > Documentation/ABI/testing/sysfs-bus-platform | 8 +++++++ > > drivers/base/platform.c | 23 ++++++++++++++++++++ > > 2 files changed, 31 insertions(+) > > > > diff --git a/Documentation/ABI/testing/sysfs-bus-platform b/Documentation/ABI/testing/sysfs-bus-platform > > index c4dfe7355c2d..d95ff83d768c 100644 > > --- a/Documentation/ABI/testing/sysfs-bus-platform > > +++ b/Documentation/ABI/testing/sysfs-bus-platform > > @@ -54,3 +54,11 @@ Description: > > Other platform devices use, instead: > > > > - platform:`driver name` > > + > > +What: /sys/bus/platform/devices/.../compatible > > +Date: August 2022 > > +Contact: Nipun Gupta <nipun.gupta@xxxxxxx> > > +Description: > > + compatible string associated with the device. This is > > + a read only and is visible if the device have "compatible" > > + property associated with it. > > Where is it defined what a compatible property is? > > > diff --git a/drivers/base/platform.c b/drivers/base/platform.c > > index 51bb2289865c..94c33efaa9b8 100644 > > --- a/drivers/base/platform.c > > +++ b/drivers/base/platform.c > > @@ -1289,10 +1289,25 @@ static ssize_t driver_override_store(struct device *dev, > > } > > static DEVICE_ATTR_RW(driver_override); > > > > +static ssize_t compatible_show(struct device *dev, struct device_attribute *attr, > > + char *buf) > > +{ > > + const char *compat; > > + int ret; > > + > > + ret = device_property_read_string(dev, "compatible", &compat); > > + if (ret != 0) > > + return 0; > > Shouldn't you return an error here? > > thanks, > > greg k-h