summaryrefslogtreecommitdiff
path: root/drivers/tty/serial/uartlite.c
diff options
context:
space:
mode:
authorManikanta Guntupalli <manikanta.guntupalli@amd.com>2023-11-16 16:40:03 +0300
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2023-11-25 10:23:16 +0300
commit01c33b813864ca15a9dec22045ce1a5bb09d5e74 (patch)
tree8650d4f4cbbbe5150a203b89cda1ce700eb3529c /drivers/tty/serial/uartlite.c
parent0be916a68c8ada0c98d4c14058717175a367ee87 (diff)
downloadlinux-01c33b813864ca15a9dec22045ce1a5bb09d5e74.tar.xz
serial: uartlite: Use dynamic allocation for major number when uart ports > 4
Device number 204 has a range of minors on major number. uart_register_driver is failing due to lack of minor numbers when more number of uart ports used. So, to avoid minor number limitation on 204 major number use dynamic major allocation when more than 4 uart ports used otherwise use static major allocation. https://docs.kernel.org/arch/arm/sa1100/serial_uart.html Signed-off-by: Manikanta Guntupalli <manikanta.guntupalli@amd.com> Link: https://lore.kernel.org/r/20231116134003.3762725-3-manikanta.guntupalli@amd.com Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/tty/serial/uartlite.c')
-rw-r--r--drivers/tty/serial/uartlite.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/drivers/tty/serial/uartlite.c b/drivers/tty/serial/uartlite.c
index f9c69f543a26..10ba41b7be99 100644
--- a/drivers/tty/serial/uartlite.c
+++ b/drivers/tty/serial/uartlite.c
@@ -24,8 +24,13 @@
#include <linux/pm_runtime.h>
#define ULITE_NAME "ttyUL"
+#if CONFIG_SERIAL_UARTLITE_NR_UARTS > 4
+#define ULITE_MAJOR 0 /* use dynamic node allocation */
+#define ULITE_MINOR 0
+#else
#define ULITE_MAJOR 204
#define ULITE_MINOR 187
+#endif
#define ULITE_NR_UARTS CONFIG_SERIAL_UARTLITE_NR_UARTS
/* ---------------------------------------------------------------------