From: Wilken Gottwalt <wilken.gottwalt@posteo.net>
To: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Cc: linux-kernel@vger.kernel.org, linux-serial@vger.kernel.org,
Jiri Slaby <jirislaby@kernel.org>,
Andy Shevchenko <andriy.shevchenko@linux.intel.com>,
Parker Newman <pnewman@connecttech.com>
Subject: Re: [PATCH] tty: serial: 8250: exar: fix kernel warning in default_setup function
Date: Wed, 30 Jul 2025 11:03:50 +0000 [thread overview]
Message-ID: <20250730130348.082ad53d@posteo.net> (raw)
In-Reply-To: <2025072929-distant-hardener-0e75@gregkh>
On Tue, 29 Jul 2025 10:48:17 +0200
Greg Kroah-Hartman <gregkh@linuxfoundation.org> wrote:
> > diff --git a/drivers/tty/serial/8250/8250_exar.c b/drivers/tty/serial/8250/8250_exar.c
> > index 04a0cbab02c2..5660bb897803 100644
> > --- a/drivers/tty/serial/8250/8250_exar.c
> > +++ b/drivers/tty/serial/8250/8250_exar.c
> > @@ -500,12 +500,13 @@ static int default_setup(struct exar8250 *priv, struct pci_dev *pcidev,
> > struct uart_8250_port *port)
> > {
> > const struct exar8250_board *board = priv->board;
> > + unsigned int bar = 0;
> > unsigned char status;
> > - int err;
> >
> > - err = serial8250_pci_setup_port(pcidev, port, 0, offset, board->reg_shift);
> > - if (err)
> > - return err;
> > + port->port.iotype = UPIO_MEM;
> > + port->port.mapbase = pci_resource_start(pcidev, bar) + offset;
> > + port->port.membase = priv->virt + offset;
> > + port->port.regshift = board->reg_shift;
>
> And so now serial8250_pci_setup_port() is never called? Are you sure
> that's ok?
Hi Greg,
I will not provide a second version of this patch, because this is a bigger
problem involving 8250_exar, 8250_pci and 8250_pci1xxxx. With the changes from
kernel 6.10 to 6.11 the underlying pcim_* functions where changed. The
serial8250_pci_setup_port() does checks on pci_dev + BAR where resources were
already mapped via pcim_iomap(), pci_iomap() or even pci_ioremap_bar(). Not
sure if mixing this is a good idea after the kernel 6.11 changes.
serial8250_pci_setup_port() uses pcim_iomap() and pcim_iomap_table() for checking
these already mapped resources. But the pcim_iomap_table() is deprecated and
suggests to use pcim_iomap() function to aquire the pointer to the resources
while at the same time pcim_iomap() description states, don't use this function
twice on the same BAR. I think the most sane approach would be to drop the
pcim_iomap() and pcim_iomap_table() checks from the serial8250_pci_setup_port()
function. But I can not fully test this, I only have access to some hardware
used by the 8250_exar driver. I also CC Andy and Parker, both worked on the
affected code.
greetings,
Wilken
next prev parent reply other threads:[~2025-07-30 11:03 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-07-29 8:17 [PATCH] tty: serial: 8250: exar: fix kernel warning in default_setup function Wilken Gottwalt
2025-07-29 8:48 ` Greg Kroah-Hartman
2025-07-29 9:32 ` Wilken Gottwalt
2025-07-30 11:03 ` Wilken Gottwalt [this message]
2025-08-05 21:34 ` Andy Shevchenko
2025-08-13 11:06 ` Wilken Gottwalt
2025-08-13 13:30 ` Parker Newman
2025-10-27 12:18 ` Andy Shevchenko
2025-10-27 12:31 ` Parker Newman
2025-10-27 14:33 ` Andy Shevchenko
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20250730130348.082ad53d@posteo.net \
--to=wilken.gottwalt@posteo.net \
--cc=andriy.shevchenko@linux.intel.com \
--cc=gregkh@linuxfoundation.org \
--cc=jirislaby@kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-serial@vger.kernel.org \
--cc=pnewman@connecttech.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.