mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-25 14:13:01 -04:00
tty: remove resize window special case
This moves it to being a tty operation. That removes special cases and now also means that resize can be picked up by um and other non vt consoles which may have a resize operation. Signed-off-by: Alan Cox <alan@redhat.com> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
parent
21d3bdb160
commit
8c9a9dd0fa
6 changed files with 121 additions and 54 deletions
|
|
@ -331,6 +331,8 @@ extern int tty_write_room(struct tty_struct *tty);
|
|||
extern void tty_driver_flush_buffer(struct tty_struct *tty);
|
||||
extern void tty_throttle(struct tty_struct *tty);
|
||||
extern void tty_unthrottle(struct tty_struct *tty);
|
||||
extern int tty_do_resize(struct tty_struct *tty, struct tty_struct *real_tty,
|
||||
struct winsize *ws);
|
||||
|
||||
extern int is_current_pgrp_orphaned(void);
|
||||
extern struct pid *tty_get_pgrp(struct tty_struct *tty);
|
||||
|
|
|
|||
|
|
@ -168,6 +168,18 @@
|
|||
*
|
||||
* Optional: If not provided then the write method is called under
|
||||
* the atomic write lock to keep it serialized with the ldisc.
|
||||
*
|
||||
* int (*resize)(struct tty_struct *tty, struct tty_struct *real_tty,
|
||||
* unsigned int rows, unsigned int cols);
|
||||
*
|
||||
* Called when a termios request is issued which changes the
|
||||
* requested terminal geometry.
|
||||
*
|
||||
* Optional: the default action is to update the termios structure
|
||||
* without error. This is usually the correct behaviour. Drivers should
|
||||
* not force errors here if they are not resizable objects (eg a serial
|
||||
* line). See tty_do_resize() if you need to wrap the standard method
|
||||
* in your own logic - the usual case.
|
||||
*/
|
||||
|
||||
#include <linux/fs.h>
|
||||
|
|
@ -206,6 +218,8 @@ struct tty_operations {
|
|||
int (*tiocmget)(struct tty_struct *tty, struct file *file);
|
||||
int (*tiocmset)(struct tty_struct *tty, struct file *file,
|
||||
unsigned int set, unsigned int clear);
|
||||
int (*resize)(struct tty_struct *tty, struct tty_struct *real_tty,
|
||||
struct winsize *ws);
|
||||
#ifdef CONFIG_CONSOLE_POLL
|
||||
int (*poll_init)(struct tty_driver *driver, int line, char *options);
|
||||
int (*poll_get_char)(struct tty_driver *driver, int line);
|
||||
|
|
|
|||
|
|
@ -35,7 +35,6 @@ extern int fg_console, last_console, want_console;
|
|||
int vc_allocate(unsigned int console);
|
||||
int vc_cons_allocated(unsigned int console);
|
||||
int vc_resize(struct vc_data *vc, unsigned int cols, unsigned int lines);
|
||||
int vc_lock_resize(struct vc_data *vc, unsigned int cols, unsigned int lines);
|
||||
void vc_deallocate(unsigned int console);
|
||||
void reset_palette(struct vc_data *vc);
|
||||
void do_blank_screen(int entering_gfx);
|
||||
|
|
|
|||
Loading…
Reference in a new issue