mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-11-14 15:54:15 +08:00
usb: misc: usbsevseg: Use sysfs_match_string() helper
Use sysfs_match_string() helper instead of open coded variant. Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
parent
d3be974a9c
commit
0bd08fc8db
@ -33,7 +33,7 @@ static const struct usb_device_id id_table[] = {
|
||||
MODULE_DEVICE_TABLE(usb, id_table);
|
||||
|
||||
/* the different text display modes the device is capable of */
|
||||
static char *display_textmodes[] = {"raw", "hex", "ascii", NULL};
|
||||
static const char *display_textmodes[] = {"raw", "hex", "ascii"};
|
||||
|
||||
struct usb_sevsegdev {
|
||||
struct usb_device *udev;
|
||||
@ -280,7 +280,7 @@ static ssize_t show_attr_textmode(struct device *dev,
|
||||
|
||||
buf[0] = 0;
|
||||
|
||||
for (i = 0; display_textmodes[i]; i++) {
|
||||
for (i = 0; i < ARRAY_SIZE(display_textmodes); i++) {
|
||||
if (mydev->textmode == i) {
|
||||
strcat(buf, " [");
|
||||
strcat(buf, display_textmodes[i]);
|
||||
@ -304,15 +304,13 @@ static ssize_t set_attr_textmode(struct device *dev,
|
||||
struct usb_sevsegdev *mydev = usb_get_intfdata(intf);
|
||||
int i;
|
||||
|
||||
for (i = 0; display_textmodes[i]; i++) {
|
||||
if (sysfs_streq(display_textmodes[i], buf)) {
|
||||
mydev->textmode = i;
|
||||
update_display_visual(mydev, GFP_KERNEL);
|
||||
return count;
|
||||
}
|
||||
}
|
||||
i = sysfs_match_string(display_textmodes, buf);
|
||||
if (i < 0)
|
||||
return i;
|
||||
|
||||
return -EINVAL;
|
||||
mydev->textmode = i;
|
||||
update_display_visual(mydev, GFP_KERNEL);
|
||||
return count;
|
||||
}
|
||||
|
||||
static DEVICE_ATTR(textmode, S_IRUGO | S_IWUSR, show_attr_textmode, set_attr_textmode);
|
||||
|
Loading…
Reference in New Issue
Block a user