mirror of
https://github.com/torvalds/linux.git
synced 2025-12-07 20:06:24 +00:00
serial: qcom-geni: Make UART port count configurable via Kconfig
Replace the hardcoded GENI_UART_PORTS macro with a new Kconfig option SERIAL_QCOM_GENI_UART_PORTS to allow platforms to configure the maximum number of UART ports supported by the driver at build time. This improves flexibility for platforms that require more than the previously fixed number of UART ports, and avoids unnecessary allocation for unused ports. Signed-off-by: Zong Jiang <quic_zongjian@quicinc.com> Link: https://lore.kernel.org/r/20250812054819.3748649-3-quic_zongjian@quicinc.com Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
committed by
Greg Kroah-Hartman
parent
c3e7966c60
commit
9391ab1ed9
@@ -928,6 +928,14 @@ config SERIAL_QCOM_GENI_CONSOLE
|
||||
Serial console driver for Qualcomm Technologies Inc's GENI based
|
||||
QUP hardware.
|
||||
|
||||
config SERIAL_QCOM_GENI_UART_PORTS
|
||||
int "Maximum number of GENI UART ports"
|
||||
depends on SERIAL_QCOM_GENI
|
||||
default "8"
|
||||
help
|
||||
Set this to the maximum number of serial ports you want the driver
|
||||
to support.
|
||||
|
||||
config SERIAL_VT8500
|
||||
bool "VIA VT8500 on-chip serial port support"
|
||||
depends on ARCH_VT8500 || COMPILE_TEST
|
||||
|
||||
@@ -77,7 +77,6 @@
|
||||
#define STALE_TIMEOUT 16
|
||||
#define DEFAULT_BITS_PER_CHAR 10
|
||||
#define GENI_UART_CONS_PORTS 1
|
||||
#define GENI_UART_PORTS 3
|
||||
#define DEF_FIFO_DEPTH_WORDS 16
|
||||
#define DEF_TX_WM 2
|
||||
#define DEF_FIFO_WIDTH_BITS 32
|
||||
@@ -261,7 +260,7 @@ static const char *qcom_geni_serial_get_type(struct uart_port *uport)
|
||||
static struct qcom_geni_serial_port *get_port_from_line(int line, bool console, struct device *dev)
|
||||
{
|
||||
struct qcom_geni_serial_port *port;
|
||||
int nr_ports = console ? GENI_UART_CONS_PORTS : GENI_UART_PORTS;
|
||||
int nr_ports = console ? GENI_UART_CONS_PORTS : CONFIG_SERIAL_QCOM_GENI_UART_PORTS;
|
||||
|
||||
if (console) {
|
||||
if (line < 0 || line >= nr_ports)
|
||||
@@ -1652,7 +1651,7 @@ static struct uart_driver qcom_geni_uart_driver = {
|
||||
.owner = THIS_MODULE,
|
||||
.driver_name = "qcom_geni_uart",
|
||||
.dev_name = "ttyHS",
|
||||
.nr = GENI_UART_PORTS,
|
||||
.nr = CONFIG_SERIAL_QCOM_GENI_UART_PORTS,
|
||||
};
|
||||
|
||||
static int geni_serial_resources_on(struct uart_port *uport)
|
||||
|
||||
Reference in New Issue
Block a user