mirror of
git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2025-09-18 22:14:16 +00:00
TTY/Serial driver fixes for 6.16-rc4
Here are 5 small serial and tty and vt fixes for 6.16-rc4. Included in here are: - kerneldoc fixes for vt recent changes - imx serial driver fix - of_node sysfs fix for a regression - vt missing notification fix - 8250 dt bindings fix All of these have been in linux-next for a while with no reported issues Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> -----BEGIN PGP SIGNATURE----- iG0EABECAC0WIQT0tgzFv3jCIUoxPcsxR9QN2y37KQUCaGExmw8cZ3JlZ0Brcm9h aC5jb20ACgkQMUfUDdst+yntSQCZAc5lq73ZU4Fchhl6pzYPkqDjUboAoIQwQN6a WsV/qlgO+vAL4edKai3t =7xRK -----END PGP SIGNATURE----- Merge tag 'tty-6.16-rc4' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty Pull tty/serial driver fixes from Greg KH: "Here are five small serial and tty and vt fixes for 6.16-rc4. Included in here are: - kerneldoc fixes for recent vt changes - imx serial driver fix - of_node sysfs fix for a regression - vt missing notification fix - 8250 dt bindings fix All of these have been in linux-next for a while with no reported issues" * tag 'tty-6.16-rc4' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty: dt-bindings: serial: 8250: Make clocks and clock-frequency exclusive serial: imx: Restore original RXTL for console to fix data loss serial: core: restore of_node information in sysfs vt: fix kernel-doc warnings in ucs_get_fallback() vt: add missing notification when switching back to text mode
This commit is contained in:
commit
798804b69f
5 changed files with 16 additions and 7 deletions
|
@ -45,7 +45,7 @@ allOf:
|
|||
- ns16550
|
||||
- ns16550a
|
||||
then:
|
||||
anyOf:
|
||||
oneOf:
|
||||
- required: [ clock-frequency ]
|
||||
- required: [ clocks ]
|
||||
|
||||
|
|
|
@ -235,6 +235,7 @@ struct imx_port {
|
|||
enum imx_tx_state tx_state;
|
||||
struct hrtimer trigger_start_tx;
|
||||
struct hrtimer trigger_stop_tx;
|
||||
unsigned int rxtl;
|
||||
};
|
||||
|
||||
struct imx_port_ucrs {
|
||||
|
@ -1339,6 +1340,7 @@ static void imx_uart_clear_rx_errors(struct imx_port *sport)
|
|||
|
||||
#define TXTL_DEFAULT 8
|
||||
#define RXTL_DEFAULT 8 /* 8 characters or aging timer */
|
||||
#define RXTL_CONSOLE_DEFAULT 1
|
||||
#define TXTL_DMA 8 /* DMA burst setting */
|
||||
#define RXTL_DMA 9 /* DMA burst setting */
|
||||
|
||||
|
@ -1457,7 +1459,7 @@ static void imx_uart_disable_dma(struct imx_port *sport)
|
|||
ucr1 &= ~(UCR1_RXDMAEN | UCR1_TXDMAEN | UCR1_ATDMAEN);
|
||||
imx_uart_writel(sport, ucr1, UCR1);
|
||||
|
||||
imx_uart_setup_ufcr(sport, TXTL_DEFAULT, RXTL_DEFAULT);
|
||||
imx_uart_setup_ufcr(sport, TXTL_DEFAULT, sport->rxtl);
|
||||
|
||||
sport->dma_is_enabled = 0;
|
||||
}
|
||||
|
@ -1482,7 +1484,12 @@ static int imx_uart_startup(struct uart_port *port)
|
|||
return retval;
|
||||
}
|
||||
|
||||
imx_uart_setup_ufcr(sport, TXTL_DEFAULT, RXTL_DEFAULT);
|
||||
if (uart_console(&sport->port))
|
||||
sport->rxtl = RXTL_CONSOLE_DEFAULT;
|
||||
else
|
||||
sport->rxtl = RXTL_DEFAULT;
|
||||
|
||||
imx_uart_setup_ufcr(sport, TXTL_DEFAULT, sport->rxtl);
|
||||
|
||||
/* disable the DREN bit (Data Ready interrupt enable) before
|
||||
* requesting IRQs
|
||||
|
@ -1948,7 +1955,7 @@ static int imx_uart_poll_init(struct uart_port *port)
|
|||
if (retval)
|
||||
clk_disable_unprepare(sport->clk_ipg);
|
||||
|
||||
imx_uart_setup_ufcr(sport, TXTL_DEFAULT, RXTL_DEFAULT);
|
||||
imx_uart_setup_ufcr(sport, TXTL_DEFAULT, sport->rxtl);
|
||||
|
||||
uart_port_lock_irqsave(&sport->port, &flags);
|
||||
|
||||
|
@ -2040,7 +2047,7 @@ static int imx_uart_rs485_config(struct uart_port *port, struct ktermios *termio
|
|||
/* If the receiver trigger is 0, set it to a default value */
|
||||
ufcr = imx_uart_readl(sport, UFCR);
|
||||
if ((ufcr & UFCR_RXTL_MASK) == 0)
|
||||
imx_uart_setup_ufcr(sport, TXTL_DEFAULT, RXTL_DEFAULT);
|
||||
imx_uart_setup_ufcr(sport, TXTL_DEFAULT, sport->rxtl);
|
||||
imx_uart_start_rx(port);
|
||||
}
|
||||
|
||||
|
@ -2302,7 +2309,7 @@ imx_uart_console_setup(struct console *co, char *options)
|
|||
else
|
||||
imx_uart_console_get_options(sport, &baud, &parity, &bits);
|
||||
|
||||
imx_uart_setup_ufcr(sport, TXTL_DEFAULT, RXTL_DEFAULT);
|
||||
imx_uart_setup_ufcr(sport, TXTL_DEFAULT, sport->rxtl);
|
||||
|
||||
retval = uart_set_options(&sport->port, co, baud, parity, bits, flow);
|
||||
|
||||
|
|
|
@ -72,6 +72,7 @@ static int serial_base_device_init(struct uart_port *port,
|
|||
dev->parent = parent_dev;
|
||||
dev->bus = &serial_base_bus_type;
|
||||
dev->release = release;
|
||||
device_set_of_node_from_dev(dev, parent_dev);
|
||||
|
||||
if (!serial_base_initialized) {
|
||||
dev_dbg(port->dev, "uart_add_one_port() called before arch_initcall()?\n");
|
||||
|
|
|
@ -206,7 +206,7 @@ static int ucs_page_entry_cmp(const void *key, const void *element)
|
|||
|
||||
/**
|
||||
* ucs_get_fallback() - Get a substitution for the provided Unicode character
|
||||
* @base: Base Unicode code point (UCS-4)
|
||||
* @cp: Unicode code point (UCS-4)
|
||||
*
|
||||
* Get a simpler fallback character for the provided Unicode character.
|
||||
* This is used for terminal display when corresponding glyph is unavailable.
|
||||
|
|
|
@ -4650,6 +4650,7 @@ void do_unblank_screen(int leaving_gfx)
|
|||
set_palette(vc);
|
||||
set_cursor(vc);
|
||||
vt_event_post(VT_EVENT_UNBLANK, vc->vc_num, vc->vc_num);
|
||||
notify_update(vc);
|
||||
}
|
||||
EXPORT_SYMBOL(do_unblank_screen);
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue