]> CyberLeo.Net >> Repos - FreeBSD/stable/10.git/commit
MFC: r287767
authormarius <marius@ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f>
Sun, 27 Dec 2015 17:51:10 +0000 (17:51 +0000)
committermarius <marius@ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f>
Sun, 27 Dec 2015 17:51:10 +0000 (17:51 +0000)
commit96151d7748e520f992ee4cd2b963ba443eacbdc7
tree9a9013b86216cf1d28b2e073130537b90bd15866
parent9f6f2c8f7241d19bc5109899c9888c2389d07907
MFC: r287767

- Sanity check that the parent ranges given in the "ranges" property
  of PCI-EBus-bridges actually match the BARs as specified in and
  required by [1, p. 113 f.]. Doing so earlier would have simplified
  diagnosing a bug in QEMU/OpenBIOS getting the mapping of child
  addresses wrong, which still needs to be fixed there.
  In theory, we could try to change the BARs accordingly if we hit
  this problem. However, at least with real machines changing the
  decoding likely won't work, especially if the PCI-EBus-bridge is
  beneath an APB one. So implementing such functionality generally
  is rather pointless.
- Actually change the allocation type of EBus resources if they
  change from SYS_RES_MEMORY to SYS_RES_IOPORT when mapping them
  to PCI ranges in ebus_alloc_resource() and passing them up to
  bus_activate_resource(9). This may happen with the QEMU/OpenBIOS
  PCI-EBus-bridge but not real ones. Still, this is only cleans up
  the code and the result of resource allocation and activation is
  unchanged.
- Change the remainder of printf(9) to device_printf(9) calls and
  canonicalize their wording.

Peripheral Component Interconnect Input Output Controller,
Part No.: 802-7837-01, Sun Microelectronics, March 1997 [1]

git-svn-id: svn://svn.freebsd.org/base/stable/10@292785 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
sys/sparc64/ebus/ebus.c