Skip to content

PCI io.h cleanups

Rob Herring linux-arm-kernel linux-i2c linux-tegra 1 version New

Get series with b4
b4 am [email protected]

Versions newest first

  1. v1 Latest0 of 15 patches 0 repliesNew

Patches in v1 No applies recorded yet

None of the 15 patches the cover letter announces are in this archive.

Reviews trailers per patch

No Reviewed-by, Acked-by or Tested-by trailers for v1 yet.

Read the v1 thread

Cover letter [PATCH 00/15] PCI io.h cleanups
Quoted 7 lines · Arnd Bergmann
Quoted 6 lines · Rob Herring

From: Rob Herring <[email protected]>

I've finally gotten back to this after several months. This is the 2nd part of mach/io.h removals. This series removes io.h on platforms with PCI by creating a fixed virtual I/O mapping and a common __io() macro.

Quoted 8 lines
Quoted 4 lines

As several platforms have 2 1MB I/O windows, I've changed the fixed mapping to 2MB (vs. 1MB in the prior posting) and allow platforms to control the size. This also allows using a single 1MB section mapping rather than 4KB pages.

Looks really good, feel free to add my Reviewed-by on patches 2-15, since I've done a line-by-line walkthrough and could not find anything besides the trivial comments I gave.

Thanks for the review. It's going to change a bit with using ioremap_page_range. Hope to have new version out soon.

Quoted 6 lines
Quoted 3 lines

I've only tested versatilepb under qemu, so any testing is appreciated. iop3xx and mv78xx0 have some risk of breaking as the PCI bus addresses are moved to 0 from matching the cpu host bus addesss.

Did you try running any devices that actually use I/O space in qemu? I think there are plenty of devices that you could use for testing that.

I had with sym53c8xx, but it defaulted to memory accesses. Now that I enable i/o access mode, it fails due to pcibios_min_io = 0x44000000. With that removed it gets into the driver setup but then fails (with or without my changes). Might be a qemu model issue. I'll try some other devices.

Rob

Quoted 3 lines

Arnd