hc
2024-05-11 297b60346df8beafee954a0fd7c2d64f33f3b9bc
kernel/include/linux/tty_driver.h
....@@ -224,14 +224,6 @@
224224 * line). See tty_do_resize() if you need to wrap the standard method
225225 * in your own logic - the usual case.
226226 *
227
- * void (*set_termiox)(struct tty_struct *tty, struct termiox *new);
228
- *
229
- * Called when the device receives a termiox based ioctl. Passes down
230
- * the requested data from user space. This method will not be invoked
231
- * unless the tty also has a valid tty->termiox pointer.
232
- *
233
- * Optional: Called under the termios lock
234
- *
235227 * int (*get_icount)(struct tty_struct *tty, struct serial_icounter *icount);
236228 *
237229 * Called when the device receives a TIOCGICOUNT ioctl. Passed a kernel
....@@ -245,10 +237,12 @@
245237 #include <linux/cdev.h>
246238 #include <linux/termios.h>
247239 #include <linux/seq_file.h>
240
+#include <linux/android_kabi.h>
248241
249242 struct tty_struct;
250243 struct tty_driver;
251244 struct serial_icounter_struct;
245
+struct serial_struct;
252246
253247 struct tty_operations {
254248 struct tty_struct * (*lookup)(struct tty_driver *driver,
....@@ -284,9 +278,14 @@
284278 int (*tiocmset)(struct tty_struct *tty,
285279 unsigned int set, unsigned int clear);
286280 int (*resize)(struct tty_struct *tty, struct winsize *ws);
281
+
282
+ /* only for abi preservation */
287283 int (*set_termiox)(struct tty_struct *tty, struct termiox *tnew);
284
+
288285 int (*get_icount)(struct tty_struct *tty,
289286 struct serial_icounter_struct *icount);
287
+ int (*get_serial)(struct tty_struct *tty, struct serial_struct *p);
288
+ int (*set_serial)(struct tty_struct *tty, struct serial_struct *p);
290289 void (*show_fdinfo)(struct tty_struct *tty, struct seq_file *m);
291290 #ifdef CONFIG_CONSOLE_POLL
292291 int (*poll_init)(struct tty_driver *driver, int line, char *options);
....@@ -294,6 +293,9 @@
294293 void (*poll_put_char)(struct tty_driver *driver, int line, char ch);
295294 #endif
296295 int (*proc_show)(struct seq_file *, void *);
296
+
297
+ ANDROID_KABI_RESERVE(1);
298
+ ANDROID_KABI_RESERVE(2);
297299 } __randomize_layout;
298300
299301 struct tty_driver {
....@@ -328,6 +330,9 @@
328330
329331 const struct tty_operations *ops;
330332 struct list_head tty_drivers;
333
+
334
+ ANDROID_KABI_RESERVE(1);
335
+ ANDROID_KABI_RESERVE(2);
331336 } __randomize_layout;
332337
333338 extern struct list_head tty_drivers;