forked from ~ljy/RK356X_SDK_RELEASE

hc
2023-12-11 072de836f53be56a70cecf70b43ae43b7ce17376
kernel/drivers/watchdog/pcwd_usb.c
....@@ -1,3 +1,4 @@
1
+// SPDX-License-Identifier: GPL-2.0+
12 /*
23 * Berkshire USB-PC Watchdog Card Driver
34 *
....@@ -9,11 +10,6 @@
910 * Matt Domsch <Matt_Domsch@dell.com>,
1011 * Rob Radez <rob@osinvestor.com>,
1112 * Greg Kroah-Hartman <greg@kroah.com>
12
- *
13
- * This program is free software; you can redistribute it and/or
14
- * modify it under the terms of the GNU General Public License
15
- * as published by the Free Software Foundation; either version
16
- * 2 of the License, or (at your option) any later version.
1713 *
1814 * Neither Wim Van Sebroeck nor Iguana vzw. admit liability nor
1915 * provide warranty for any of this software. This material is
....@@ -456,7 +452,7 @@
456452
457453 usb_pcwd_keepalive(usb_pcwd_device);
458454 }
459
- /* fall through */
455
+ fallthrough;
460456
461457 case WDIOC_GETTIMEOUT:
462458 return put_user(heartbeat, p);
....@@ -485,7 +481,7 @@
485481 /* Activate */
486482 usb_pcwd_start(usb_pcwd_device);
487483 usb_pcwd_keepalive(usb_pcwd_device);
488
- return nonseekable_open(inode, file);
484
+ return stream_open(inode, file);
489485 }
490486
491487 static int usb_pcwd_release(struct inode *inode, struct file *file)
....@@ -524,7 +520,7 @@
524520
525521 static int usb_pcwd_temperature_open(struct inode *inode, struct file *file)
526522 {
527
- return nonseekable_open(inode, file);
523
+ return stream_open(inode, file);
528524 }
529525
530526 static int usb_pcwd_temperature_release(struct inode *inode, struct file *file)
....@@ -554,6 +550,7 @@
554550 .llseek = no_llseek,
555551 .write = usb_pcwd_write,
556552 .unlocked_ioctl = usb_pcwd_ioctl,
553
+ .compat_ioctl = compat_ptr_ioctl,
557554 .open = usb_pcwd_open,
558555 .release = usb_pcwd_release,
559556 };
....@@ -588,9 +585,8 @@
588585 static inline void usb_pcwd_delete(struct usb_pcwd_private *usb_pcwd)
589586 {
590587 usb_free_urb(usb_pcwd->intr_urb);
591
- if (usb_pcwd->intr_buffer != NULL)
592
- usb_free_coherent(usb_pcwd->udev, usb_pcwd->intr_size,
593
- usb_pcwd->intr_buffer, usb_pcwd->intr_dma);
588
+ usb_free_coherent(usb_pcwd->udev, usb_pcwd->intr_size,
589
+ usb_pcwd->intr_buffer, usb_pcwd->intr_dma);
594590 kfree(usb_pcwd);
595591 }
596592
....@@ -660,7 +656,7 @@
660656
661657 /* set up the memory buffer's */
662658 usb_pcwd->intr_buffer = usb_alloc_coherent(udev, usb_pcwd->intr_size,
663
- GFP_ATOMIC, &usb_pcwd->intr_dma);
659
+ GFP_KERNEL, &usb_pcwd->intr_dma);
664660 if (!usb_pcwd->intr_buffer) {
665661 pr_err("Out of memory\n");
666662 goto error;