On Wed, Mar 18, 2020 at 4:31 PM Chunyan Zhang <zhang.lyra@xxxxxxxxx> wrote: > > From: Chunyan Zhang <chunyan.zhang@xxxxxxxxxx> > > It would be better to cleanup the sprd_port for the device before > return error. > > Signed-off-by: Chunyan Zhang <chunyan.zhang@xxxxxxxxxx> > --- > drivers/tty/serial/sprd_serial.c | 4 +++- > 1 file changed, 3 insertions(+), 1 deletion(-) > > diff --git a/drivers/tty/serial/sprd_serial.c b/drivers/tty/serial/sprd_serial.c > index 9f8c14ff6454..54477de9822f 100644 > --- a/drivers/tty/serial/sprd_serial.c > +++ b/drivers/tty/serial/sprd_serial.c > @@ -1204,8 +1204,10 @@ static int sprd_probe(struct platform_device *pdev) > up->has_sysrq = IS_ENABLED(CONFIG_SERIAL_SPRD_CONSOLE); > > ret = sprd_clk_init(up); > - if (ret) > + if (ret) { > + sprd_port[index] = NULL; 如果我们强制使用alias, 则这里应该也无需清除了,因为一进probe就会给它重新赋值。 还是我漏了什么? > return ret; > + } > > res = platform_get_resource(pdev, IORESOURCE_MEM, 0); > up->membase = devm_ioremap_resource(&pdev->dev, res); > -- > 2.20.1 > -- Baolin Wang