[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <767b9b0f53ef1a8411c9eeff87ceb14182c05204.camel@linux.ibm.com>
Date: Mon, 08 May 2023 19:09:04 +0200
From: Niklas Schnelle <schnelle@...ux.ibm.com>
To: Ville Syrjälä <ville.syrjala@...ux.intel.com>
Cc: Geert Uytterhoeven <geert@...ux-m68k.org>,
linux-arch@...r.kernel.org, Arnd Bergmann <arnd@...nel.org>,
linux-fbdev@...r.kernel.org, Albert Ou <aou@...s.berkeley.edu>,
Arnd Bergmann <arnd@...db.de>,
"Rafael J. Wysocki" <rafael@...nel.org>,
Greg Kroah-Hartman <gregkh@...uxfoundation.org>,
Helge Deller <deller@....de>,
Paul Walmsley <paul.walmsley@...ive.com>,
linux-pci@...r.kernel.org, linux-kernel@...r.kernel.org,
dri-devel@...ts.freedesktop.org,
Alan Stern <stern@...land.harvard.edu>,
Uwe Kleine-König
<u.kleine-koenig@...gutronix.de>,
Bjorn Helgaas <bhelgaas@...gle.com>,
Palmer Dabbelt <palmer@...belt.com>,
Mauro Carvalho Chehab <mchehab@...nel.org>
Subject: Re: [PATCH v3 35/38] video: handle HAS_IOPORT dependencies
On Thu, 2023-03-23 at 18:08 +0200, Ville Syrjälä wrote:
> On Thu, Mar 23, 2023 at 03:17:38PM +0100, Niklas Schnelle wrote:
> > On Wed, 2023-03-15 at 12:19 +0200, Ville Syrjälä wrote:
> > > On Wed, Mar 15, 2023 at 09:16:50AM +0100, Geert Uytterhoeven wrote:
> > > > Hi Niklas,
> > > >
> > > > On Tue, Mar 14, 2023 at 1:13 PM Niklas Schnelle <schnelle@...ux.ibm.com> wrote:
> > > > > In a future patch HAS_IOPORT=n will result in inb()/outb() and friends
> > > > > not being declared. We thus need to add HAS_IOPORT as dependency for
> > > > > those drivers using them and guard inline code in headers.
> > > > >
> > > > > Co-developed-by: Arnd Bergmann <arnd@...nel.org>
> > > > > Signed-off-by: Niklas Schnelle <schnelle@...ux.ibm.com>
> > > >
> > > > Thanks for your patch!
> > > >
> > > > > --- a/drivers/video/fbdev/Kconfig
> > > > > +++ b/drivers/video/fbdev/Kconfig
> > > >
> > > > > @@ -1284,7 +1285,7 @@ config FB_ATY128_BACKLIGHT
> > > > >
> > > > > config FB_ATY
> > > > > tristate "ATI Mach64 display support" if PCI || ATARI
> > > > > - depends on FB && !SPARC32
> > > > > + depends on FB && HAS_IOPORT && !SPARC32
> > > >
> > > > On Atari, this works without ATARI_ROM_ISA, hence it must not depend
> > > > on HAS_IOPORT.
> > > > The only call to inb() is inside a section protected by #ifdef
> > > > CONFIG_PCI. So:
> > >
> > > That piece of code is a nop anyway. We immediately overwrite
> > > clk_wr_offset with a hardcoded selection after the register reads.
> > > So if you nuke that nop code then no IOPORT dependency required
> > > at all.
> > >
> >
> > I agree this "looks" like a nop but are we sure the inb() doesn't have
> > side effects?
>
> Yes. It's just trying to check which PLL dividers/etc. are currently
> used. In VGA mode it gets it from a the GENMO and in non-VGA mode from
> CLOCK_CNTL. And then it says "screw that" and just uses index 3 instead.
>
Ok, I've added a patch to remove this part of the code and with that
the driver actually builds on s390 (no HAS_IOPORT) so I also removed
the HAS_IOPORT dependency. Both will be in my v4.
Thanks,
Niklas
Powered by blists - more mailing lists