lkml.org 
[lkml]   [2019]   [Nov]   [20]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
From
Date
SubjectRe: [PATCH] PCI: of: Restore alignment/indentation in host bridge window table
Hi Bjorn,

On Tue, Nov 19, 2019 at 8:48 PM Bjorn Helgaas <helgaas@kernel.org> wrote:
> On Tue, Nov 19, 2019 at 08:15:05PM +0100, Geert Uytterhoeven wrote:
> > Since the printing of the inbound resources was added, alignment and
> > indentation of the host bridge window table is broken because of two
> > reasons:
> > 1. The "IB MEM" row header is longer than the other headers,
> > 2. Inbound ranges typically extend beyond 32-bit address space, and thus
> > don't fit in "#010llx".
> >
> > Fix this by extending the row header field to 6 characters, and the
> > format string to 40-bit addresses.
> >
> > Use "%6s" to handle field size and right-alignment, instead of manual
> > preparation using error-prone snprintf() calls. Use the exact same
> > format string for both cases, to allow sharing.
> >
> > Impact on kernel boot log on r8a7791/koelsch:
> >
> > rcar-pcie fe000000.pcie: host bridge /soc/pcie@fe000000 ranges:
> > -rcar-pcie fe000000.pcie: IO 0xfe100000..0xfe1fffff -> 0x00000000
> > -rcar-pcie fe000000.pcie: MEM 0xfe200000..0xfe3fffff -> 0xfe200000
> > -rcar-pcie fe000000.pcie: MEM 0x30000000..0x37ffffff -> 0x30000000
> > -rcar-pcie fe000000.pcie: MEM 0x38000000..0x3fffffff -> 0x38000000
> > -rcar-pcie fe000000.pcie: IB MEM 0x40000000..0xbfffffff -> 0x40000000
> > -rcar-pcie fe000000.pcie: IB MEM 0x200000000..0x2ffffffff -> 0x200000000
> > +rcar-pcie fe000000.pcie: IO 0x00fe100000..0x00fe1fffff -> 0x0000000000
> > +rcar-pcie fe000000.pcie: MEM 0x00fe200000..0x00fe3fffff -> 0x00fe200000
> > +rcar-pcie fe000000.pcie: MEM 0x0030000000..0x0037ffffff -> 0x0030000000
> > +rcar-pcie fe000000.pcie: MEM 0x0038000000..0x003fffffff -> 0x0038000000
> > +rcar-pcie fe000000.pcie: IB MEM 0x0040000000..0x00bfffffff -> 0x0040000000
> > +rcar-pcie fe000000.pcie: IB MEM 0x0200000000..0x02ffffffff -> 0x0200000000
> >
> > Fixes: 52ac576f88f9f701 ("PCI: of: Add inbound resource parsing to helpers")
> > Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
>
> This is fine with me, and since it applies on top of 52ac576f88f9f701
> (longer than the usual 12-char SHA1, BTW), which is on Lorenzo's
> pci/mmio-dma-ranges branch, I assume Lorenzo will be the one to take
> care of this.
>
> pci_register_host_bridge() prints some of this info like this:
>
> pci_bus 0000:00: root bus resource [io 0x0000-0x0cf7 window]
> pci_bus 0000:00: root bus resource [io 0x0d00-0xffff window]
> pci_bus 0000:00: root bus resource [mem 0x000a0000-0x000bffff window]
> pci_bus 0000:00: root bus resource [mem 0xdc800000-0xfebfffff window]
>
> Is there any opportunity for consolidating these or at least making
> the format the same?
>
> I assume we're currently printing most of that info twice, once
> in devm_of_pci_get_host_bridge_resources() and again in
> pci_register_host_bridge()?

(after ignoring PCIe link down, as I don't have a spare PCIe card to plug in)

rcar-pcie fe000000.pcie: host bridge /soc/pcie@fe000000 ranges:
rcar-pcie fe000000.pcie: IO 0x00fe100000..0x00fe1fffff -> 0x0000000000
rcar-pcie fe000000.pcie: MEM 0x00fe200000..0x00fe3fffff -> 0x00fe200000
rcar-pcie fe000000.pcie: MEM 0x0030000000..0x0037ffffff -> 0x0030000000
rcar-pcie fe000000.pcie: MEM 0x0038000000..0x003fffffff -> 0x0038000000
rcar-pcie fe000000.pcie: IB MEM 0x0040000000..0x00bfffffff -> 0x0040000000
rcar-pcie fe000000.pcie: IB MEM 0x0200000000..0x02ffffffff -> 0x0200000000
rcar-pcie fe000000.pcie: PCIe link down (ignored)
rcar-pcie fe000000.pcie: PCIe x4: link up
rcar-pcie fe000000.pcie: PCI host bridge to bus 0002:00
pci_bus 0002:00: root bus resource [bus 00-ff]
pci_bus 0002:00: root bus resource [io 0x0000-0xfffff]
pci_bus 0002:00: root bus resource [mem 0xfe200000-0xfe3fffff]
pci_bus 0002:00: root bus resource [mem 0x30000000-0x37ffffff]
pci_bus 0002:00: root bus resource [mem 0x38000000-0x3fffffff pref]
pci 0002:00:00.0: [1912:001f] type 01 class 0x060400
pci 0002:00:00.0: enabling Extended Tags
pci 0002:00:00.0: PME# supported from D0 D3hot D3cold
PCI: bus0: Fast back to back transfers disabled

So some, but not all, info is indeed duplicated.

Gr{oetje,eeting}s,

Geert

--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
-- Linus Torvalds

\
 
 \ /
  Last update: 2019-11-20 09:50    [W:0.126 / U:0.060 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site