]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
serial: sc16is7xx: add macro for max number of UART ports
authorHugo Villeneuve <hvilleneuve@dimonoff.com>
Thu, 21 Dec 2023 23:18:17 +0000 (18:18 -0500)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 4 Jan 2024 15:30:04 +0000 (16:30 +0100)
Add macro to hold the maximum number of UART ports per IC/device.

Signed-off-by: Hugo Villeneuve <hvilleneuve@dimonoff.com>
Link: https://lore.kernel.org/r/20231221231823.2327894-11-hugo@hugovil.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/tty/serial/sc16is7xx.c

index b73fac209f1e8eca287ac8456b19af64d60e9d8f..6181cc6f934b8900702d626568e52550c1df41a6 100644 (file)
@@ -29,6 +29,7 @@
 
 #define SC16IS7XX_NAME                 "sc16is7xx"
 #define SC16IS7XX_MAX_DEVS             8
+#define SC16IS7XX_MAX_PORTS            2 /* Maximum number of UART ports per IC. */
 
 /* SC16IS7XX register definitions */
 #define SC16IS7XX_RHR_REG              (0x00) /* RX FIFO */
@@ -1398,7 +1399,7 @@ static void sc16is7xx_setup_irda_ports(struct sc16is7xx_port *s)
        int i;
        int ret;
        int count;
-       u32 irda_port[2];
+       u32 irda_port[SC16IS7XX_MAX_PORTS];
        struct device *dev = s->p[0].port.dev;
 
        count = device_property_count_u32(dev, "irda-mode-ports");
@@ -1425,7 +1426,7 @@ static int sc16is7xx_setup_mctrl_ports(struct sc16is7xx_port *s,
        int i;
        int ret;
        int count;
-       u32 mctrl_port[2];
+       u32 mctrl_port[SC16IS7XX_MAX_PORTS];
        struct device *dev = s->p[0].port.dev;
 
        count = device_property_count_u32(dev, "nxp,modem-control-line-ports");
@@ -1727,7 +1728,7 @@ static unsigned int sc16is7xx_regmap_port_mask(unsigned int port_id)
 static int sc16is7xx_spi_probe(struct spi_device *spi)
 {
        const struct sc16is7xx_devtype *devtype;
-       struct regmap *regmaps[2];
+       struct regmap *regmaps[SC16IS7XX_MAX_PORTS];
        unsigned int i;
        int ret;
 
@@ -1798,7 +1799,7 @@ MODULE_ALIAS("spi:sc16is7xx");
 static int sc16is7xx_i2c_probe(struct i2c_client *i2c)
 {
        const struct sc16is7xx_devtype *devtype;
-       struct regmap *regmaps[2];
+       struct regmap *regmaps[SC16IS7XX_MAX_PORTS];
        unsigned int i;
 
        devtype = i2c_get_match_data(i2c);