]> git.proxmox.com Git - mirror_ubuntu-focal-kernel.git/commitdiff
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)
committerKleber Sacilotto de Souza <kleber.souza@canonical.com>
Mon, 25 May 2020 08:41:59 +0000 (10:41 +0200)
BugLink: https://bugs.launchpad.net/bugs/1876361
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>
Signed-off-by: Kamal Mostafa <kamal@canonical.com>
Signed-off-by: Stefan Bader <stefan.bader@canonical.com>
drivers/tty/serial/xilinx_uartps.c

index 8811356244ff5ed5326f1b0d94fe8b35c0ba9f3c..f1c04e84df064ed5e8320a6a95ae336aab2605e5 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);