Revert "serial: uartps: Do not allow use aliases >= MAX_UART_INSTANCES"
authorMichal Simek <michal.simek@xilinx.com>
Fri, 3 Apr 2020 09:24:33 +0000 (11:24 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 29 Apr 2020 14:33:24 +0000 (16:33 +0200)
commit 91c9dfa25c7f95b543c280e0edf1fd8de6e90985 upstream.

This reverts commit 2088cfd882d0403609bdf426e9b24372fe1b8337.

As Johan says, this driver needs a lot more work and these changes are
only going in the wrong direction:
  https://lkml.kernel.org/r/20190523091839.GC568@localhost

Reported-by: Johan Hovold <johan@kernel.org>
Signed-off-by: Michal Simek <michal.simek@xilinx.com>
Cc: stable <stable@vger.kernel.org>
Link: https://lore.kernel.org/r/dac3898e3e32d963f357fb436ac9a7ac3cbcf933.1585905873.git.michal.simek@xilinx.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/tty/serial/xilinx_uartps.c

index 8811356..f1c04e8 100644 (file)
@@ -1697,8 +1697,7 @@ err_out_unregister_driver:
        uart_unregister_driver(cdns_uart_data->cdns_uart_driver);
 err_out_id:
        mutex_lock(&bitmap_lock);
-       if (cdns_uart_data->id < MAX_UART_INSTANCES)
-               clear_bit(cdns_uart_data->id, bitmap);
+       clear_bit(cdns_uart_data->id, bitmap);
        mutex_unlock(&bitmap_lock);
        return rc;
 }
@@ -1723,8 +1722,7 @@ static int cdns_uart_remove(struct platform_device *pdev)
        rc = uart_remove_one_port(cdns_uart_data->cdns_uart_driver, port);
        port->mapbase = 0;
        mutex_lock(&bitmap_lock);
-       if (cdns_uart_data->id < MAX_UART_INSTANCES)
-               clear_bit(cdns_uart_data->id, bitmap);
+       clear_bit(cdns_uart_data->id, bitmap);
        mutex_unlock(&bitmap_lock);
        clk_disable_unprepare(cdns_uart_data->uartclk);
        clk_disable_unprepare(cdns_uart_data->pclk);