Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

Merge tag 'tty-5.10-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty

Pull tty/serial fixes from Greg KH:
"Here are a small number of small tty and serial fixes for some
reported problems for the tty core, vt code, and some serial drivers.

They include fixes for:

- a buggy and obsolete vt font ioctl removal

- 8250_mtk serial baudrate runtime warnings

- imx serial earlycon build configuration fix

- txx9 serial driver error path cleanup issues

- tty core fix in release_tty that can be triggered by trying to bind
an invalid serial port name to a speakup console device

Almost all of these have been in linux-next without any problems, the
only one that hasn't, just deletes code :)"

* tag 'tty-5.10-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty:
vt: Disable KD_FONT_OP_COPY
tty: fix crash in release_tty if tty->port is not set
serial: txx9: add missing platform_driver_unregister() on error in serial_txx9_init
tty: serial: imx: enable earlycon by default if IMX_SERIAL_CONSOLE is enabled
serial: 8250_mtk: Fix uart_get_baud_rate warning

+11 -25
+1 -1
drivers/tty/serial/8250/8250_mtk.c
··· 317 317 */ 318 318 baud = tty_termios_baud_rate(termios); 319 319 320 - serial8250_do_set_termios(port, termios, old); 320 + serial8250_do_set_termios(port, termios, NULL); 321 321 322 322 tty_termios_encode_baud_rate(termios, baud, baud); 323 323
+1
drivers/tty/serial/Kconfig
··· 522 522 depends on OF 523 523 select SERIAL_EARLYCON 524 524 select SERIAL_CORE_CONSOLE 525 + default y if SERIAL_IMX_CONSOLE 525 526 help 526 527 If you have enabled the earlycon on the Freescale IMX 527 528 CPU you can make it the earlycon by answering Y to this option.
+3
drivers/tty/serial/serial_txx9.c
··· 1280 1280 1281 1281 #ifdef ENABLE_SERIAL_TXX9_PCI 1282 1282 ret = pci_register_driver(&serial_txx9_pci_driver); 1283 + if (ret) { 1284 + platform_driver_unregister(&serial_txx9_plat_driver); 1285 + } 1283 1286 #endif 1284 1287 if (ret == 0) 1285 1288 goto out;
+4 -2
drivers/tty/tty_io.c
··· 1515 1515 tty->ops->shutdown(tty); 1516 1516 tty_save_termios(tty); 1517 1517 tty_driver_remove_tty(tty->driver, tty); 1518 - tty->port->itty = NULL; 1518 + if (tty->port) 1519 + tty->port->itty = NULL; 1519 1520 if (tty->link) 1520 1521 tty->link->port->itty = NULL; 1521 - tty_buffer_cancel_work(tty->port); 1522 + if (tty->port) 1523 + tty_buffer_cancel_work(tty->port); 1522 1524 if (tty->link) 1523 1525 tty_buffer_cancel_work(tty->link->port); 1524 1526
+2 -22
drivers/tty/vt/vt.c
··· 4704 4704 return rc; 4705 4705 } 4706 4706 4707 - static int con_font_copy(struct vc_data *vc, struct console_font_op *op) 4708 - { 4709 - int con = op->height; 4710 - int rc; 4711 - 4712 - 4713 - console_lock(); 4714 - if (vc->vc_mode != KD_TEXT) 4715 - rc = -EINVAL; 4716 - else if (!vc->vc_sw->con_font_copy) 4717 - rc = -ENOSYS; 4718 - else if (con < 0 || !vc_cons_allocated(con)) 4719 - rc = -ENOTTY; 4720 - else if (con == vc->vc_num) /* nothing to do */ 4721 - rc = 0; 4722 - else 4723 - rc = vc->vc_sw->con_font_copy(vc, con); 4724 - console_unlock(); 4725 - return rc; 4726 - } 4727 - 4728 4707 int con_font_op(struct vc_data *vc, struct console_font_op *op) 4729 4708 { 4730 4709 switch (op->op) { ··· 4714 4735 case KD_FONT_OP_SET_DEFAULT: 4715 4736 return con_font_default(vc, op); 4716 4737 case KD_FONT_OP_COPY: 4717 - return con_font_copy(vc, op); 4738 + /* was buggy and never really used */ 4739 + return -EINVAL; 4718 4740 } 4719 4741 return -ENOSYS; 4720 4742 }