drm/debugfs: fix plain echo to connector "force" attribute
authorMichael Tretter <m.tretter@pengutronix.de>
Thu, 17 Aug 2017 10:43:07 +0000 (12:43 +0200)
committerEmil Velikov <emil.l.velikov@gmail.com>
Sun, 17 May 2020 16:27:57 +0000 (17:27 +0100)
Using plain echo to set the "force" connector attribute fails with
-EINVAL, because echo appends a newline to the output.

Replace strcmp with sysfs_streq to also accept strings that end with a
newline.

v2: use sysfs_streq instead of stripping trailing whitespace

Signed-off-by: Michael Tretter <m.tretter@pengutronix.de>
Reviewed-by: Jani Nikula <jani.nikula@intel.com>
Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20170817104307.17124-1-m.tretter@pengutronix.de
drivers/gpu/drm/drm_debugfs.c

index 2bea221..bfe4602 100644 (file)
@@ -311,13 +311,13 @@ static ssize_t connector_write(struct file *file, const char __user *ubuf,
 
        buf[len] = '\0';
 
-       if (!strcmp(buf, "on"))
+       if (sysfs_streq(buf, "on"))
                connector->force = DRM_FORCE_ON;
-       else if (!strcmp(buf, "digital"))
+       else if (sysfs_streq(buf, "digital"))
                connector->force = DRM_FORCE_ON_DIGITAL;
-       else if (!strcmp(buf, "off"))
+       else if (sysfs_streq(buf, "off"))
                connector->force = DRM_FORCE_OFF;
-       else if (!strcmp(buf, "unspecified"))
+       else if (sysfs_streq(buf, "unspecified"))
                connector->force = DRM_FORCE_UNSPECIFIED;
        else
                return -EINVAL;