From 9903f2f2e1c0306df5e35080552502659475e751 Mon Sep 17 00:00:00 2001 From: Crescent CY Hsieh Date: Tue, 2 Jan 2024 13:31:33 +0800 Subject: [PATCH] tty: serial: 8250: Set RS232 as default for Moxa PCIe board initialization After switching the serial interface of the Moxa RS232 PCIe boards, it fails to reset to RS232 when attempting to reload 8250_pci driver. This patch set RS232 as the default setting during the initialization of Moxa PCIe board. Signed-off-by: Crescent CY Hsieh Link: https://lore.kernel.org/r/20240102053133.9795-1-crescentcy.hsieh@moxa.com Signed-off-by: Greg Kroah-Hartman --- drivers/tty/serial/8250/8250_pci.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/drivers/tty/serial/8250/8250_pci.c b/drivers/tty/serial/8250/8250_pci.c index 8ccf691935b75..0d35c77fad9eb 100644 --- a/drivers/tty/serial/8250/8250_pci.c +++ b/drivers/tty/serial/8250/8250_pci.c @@ -2039,12 +2039,13 @@ static int pci_moxa_init(struct pci_dev *dev) unsigned short device = dev->device; resource_size_t iobar_addr = pci_resource_start(dev, 2); unsigned int num_ports = (device & 0x00F0) >> 4, i; - u8 val; + u8 val, init_mode = MOXA_RS232; if (!(pci_moxa_supported_rs(dev) & MOXA_SUPP_RS232)) { - for (i = 0; i < num_ports; ++i) - pci_moxa_set_interface(dev, i, MOXA_RS422); + init_mode = MOXA_RS422; } + for (i = 0; i < num_ports; ++i) + pci_moxa_set_interface(dev, i, init_mode); /* * Enable hardware buffer to prevent break signal output when system boots up. -- 2.30.2