Commit 01c33b81 authored by Manikanta Guntupalli's avatar Manikanta Guntupalli Committed by Greg Kroah-Hartman
Browse files

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: default avatarManikanta Guntupalli <manikanta.guntupalli@amd.com>
Link: https://lore.kernel.org/r/20231116134003.3762725-3-manikanta.guntupalli@amd.com


Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent 0be916a6
Loading
Loading
Loading
Loading
+3 −0
Original line number Diff line number Diff line
@@ -532,6 +532,9 @@ config SERIAL_UARTLITE_NR_UARTS
	help
	  Set this to the number of uartlites in your system, or the number
	  you think you might implement.
	  If maximum number of uartlite serial ports is more than 4, then the
	  driver uses dynamic allocation instead of static allocation for major
	  number.

config SERIAL_SUNCORE
	bool
+5 −0
Original line number Diff line number Diff line
@@ -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

/* ---------------------------------------------------------------------