openwrt/target/linux/brcm2708/patches-4.14/950-0092-amba_pl011-Don-t-use-DT-aliases-for-numbering.patch
Koen Vandeputte f80272dd9c kernel: bump 4.14 to 4.14.159
Refreshed all patches.

Remove upstreamed:
- 302-0002-dmaengine-dw-implement-per-channel-protection-contro.patch

Fixes:
- CVE-2019-19332

Compile-tested on: cns3xxx
Runtime-tested on: cns3xxx

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-12-24 15:29:32 +01:00

30 lines
1.1 KiB
Diff

From 1cf3028d3fd5f374cf75e6487898197c3db230ad Mon Sep 17 00:00:00 2001
From: Phil Elwell <phil@raspberrypi.org>
Date: Tue, 23 Feb 2016 17:26:48 +0000
Subject: [PATCH 092/454] amba_pl011: Don't use DT aliases for numbering
The pl011 driver looks for DT aliases of the form "serial<n>",
and if found uses <n> as the device ID. This can cause
/dev/ttyAMA0 to become /dev/ttyAMA1, which is confusing if the
other serial port is provided by the 8250 driver which doesn't
use the same logic.
---
drivers/tty/serial/amba-pl011.c | 5 +++++
1 file changed, 5 insertions(+)
--- a/drivers/tty/serial/amba-pl011.c
+++ b/drivers/tty/serial/amba-pl011.c
@@ -2596,7 +2596,12 @@ static int pl011_setup_port(struct devic
if (IS_ERR(base))
return PTR_ERR(base);
+ /* Don't use DT serial<n> aliases - it causes the device to
+ be renumbered to ttyAMA1 if it is the second serial port in the
+ system, even though the other one is ttyS0. The 8250 driver
+ doesn't use this logic, so always remains ttyS0.
index = pl011_probe_dt_alias(index, dev);
+ */
uap->old_cr = 0;
uap->port.dev = dev;