hc
2024-05-10 61598093bbdd283a7edc367d900f223070ead8d2
kernel/drivers/net/caif/caif_serial.c
....@@ -1,7 +1,7 @@
1
+// SPDX-License-Identifier: GPL-2.0-only
12 /*
23 * Copyright (C) ST-Ericsson AB 2010
34 * Author: Sjur Brendeland
4
- * License terms: GNU General Public License (GPL) version 2
55 */
66
77 #include <linux/hardirq.h>
....@@ -94,26 +94,20 @@
9494 }
9595 static inline void debugfs_init(struct ser_device *ser, struct tty_struct *tty)
9696 {
97
- ser->debugfs_tty_dir =
98
- debugfs_create_dir(tty->name, debugfsdir);
99
- if (!IS_ERR(ser->debugfs_tty_dir)) {
100
- debugfs_create_blob("last_tx_msg", 0400,
101
- ser->debugfs_tty_dir,
102
- &ser->tx_blob);
97
+ ser->debugfs_tty_dir = debugfs_create_dir(tty->name, debugfsdir);
10398
104
- debugfs_create_blob("last_rx_msg", 0400,
105
- ser->debugfs_tty_dir,
106
- &ser->rx_blob);
99
+ debugfs_create_blob("last_tx_msg", 0400, ser->debugfs_tty_dir,
100
+ &ser->tx_blob);
107101
108
- debugfs_create_x32("ser_state", 0400,
109
- ser->debugfs_tty_dir,
110
- (u32 *)&ser->state);
102
+ debugfs_create_blob("last_rx_msg", 0400, ser->debugfs_tty_dir,
103
+ &ser->rx_blob);
111104
112
- debugfs_create_x8("tty_status", 0400,
113
- ser->debugfs_tty_dir,
114
- &ser->tty_status);
105
+ debugfs_create_xul("ser_state", 0400, ser->debugfs_tty_dir,
106
+ &ser->state);
115107
116
- }
108
+ debugfs_create_x8("tty_status", 0400, ser->debugfs_tty_dir,
109
+ &ser->tty_status);
110
+
117111 ser->tx_blob.data = ser->tx_data;
118112 ser->tx_blob.size = 0;
119113 ser->rx_blob.data = ser->rx_data;
....@@ -257,10 +251,7 @@
257251 if (skb->len == 0) {
258252 struct sk_buff *tmp = skb_dequeue(&ser->head);
259253 WARN_ON(tmp != skb);
260
- if (in_interrupt())
261
- dev_kfree_skb_irq(skb);
262
- else
263
- kfree_skb(skb);
254
+ dev_consume_skb_any(skb);
264255 }
265256 }
266257 /* Send flow off if queue is empty */
....@@ -275,7 +266,7 @@
275266 return tty_wr;
276267 }
277268
278
-static int caif_xmit(struct sk_buff *skb, struct net_device *dev)
269
+static netdev_tx_t caif_xmit(struct sk_buff *skb, struct net_device *dev)
279270 {
280271 struct ser_device *ser;
281272