<feed xmlns='http://www.w3.org/2005/Atom'>
<title>src/sys/dev/cardbus, branch releng/10.2</title>
<subtitle>FreeBSD source tree</subtitle>
<id>https://cgit-dev.freebsd.org/src/atom?h=releng%2F10.2</id>
<link rel='self' href='https://cgit-dev.freebsd.org/src/atom?h=releng%2F10.2'/>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/'/>
<updated>2015-04-01T21:48:54Z</updated>
<entry>
<title>MFC 261790:</title>
<updated>2015-04-01T21:48:54Z</updated>
<author>
<name>John Baldwin</name>
<email>jhb@FreeBSD.org</email>
</author>
<published>2015-04-01T21:48:54Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=2558ef53a140a2a8c43348bd9356347b8a6b60ba'/>
<id>urn:sha1:2558ef53a140a2a8c43348bd9356347b8a6b60ba</id>
<content type='text'>
Add support for managing PCI bus numbers.  As with BARs and PCI-PCI bridge
I/O windows, the default is to preserve the firmware-assigned resources.
PCI bus numbers are only managed if NEW_PCIB is enabled and the architecture
defines a PCI_RES_BUS resource type.
- Add a helper API to create top-level PCI bus resource managers for each
  PCI domain/segment.  Host-PCI bridge drivers use this API to allocate
  bus numbers from their associated domain.
- Change the PCI bus and CardBus drivers to allocate a bus resource for
  their bus number from the parent PCI bridge device.
- Change the PCI-PCI and PCI-CardBus bridge drivers to allocate the
  full range of bus numbers from secbus to subbus from their parent bridge.
  The drivers also always program their primary bus register.  The bridge
  drivers also support growing their bus range by extending the bus resource
  and updating subbus to match the larger range.
- Add support for managing PCI bus resources to the Host-PCI bridge drivers
  used for amd64 and i386 (acpi_pcib, mptable_pcib, legacy_pcib, and qpi_pcib).
- Define a PCI_RES_BUS resource type for amd64 and i386.

PR:		197076
</content>
</entry>
<entry>
<title>- Add a bus_dma tag to each PCI bus that is a child of a Host-PCI bridge.</title>
<updated>2012-03-02T20:38:04Z</updated>
<author>
<name>John Baldwin</name>
<email>jhb@FreeBSD.org</email>
</author>
<published>2012-03-02T20:38:04Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=1b1596a3b34a5a8a84fc24d1ef7b1c2d071afaf2'/>
<id>urn:sha1:1b1596a3b34a5a8a84fc24d1ef7b1c2d071afaf2</id>
<content type='text'>
  The tag enforces a single restriction that all DMA transactions must not
  cross a 4GB boundary.  Note that while this restriction technically only
  applies to PCI-express, this change applies it to all PCI devices as it
  is simpler to implement that way and errs on the side of caution.
- Add a softc structure for PCI bus devices to hold the bus_dma tag and
  a new pci_attach_common() routine that performs actions common to the
  attach phase of all PCI bus drivers.  Right now this only consists of
  a bootverbose printf and the allocate of a bus_dma tag if necessary.
- Adjust all PCI bus drivers to allocate a PCI bus softc and to call
  pci_attach_common() from their attach routines.

MFC after:	2 weeks
</content>
</entry>
<entry>
<title>Mark all SYSCTL_NODEs static that have no corresponding SYSCTL_DECLs.</title>
<updated>2011-11-07T15:43:11Z</updated>
<author>
<name>Ed Schouten</name>
<email>ed@FreeBSD.org</email>
</author>
<published>2011-11-07T15:43:11Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=6472ac3d8a86336899b6cfb789a4cd9897e3fab5'/>
<id>urn:sha1:6472ac3d8a86336899b6cfb789a4cd9897e3fab5</id>
<content type='text'>
The SYSCTL_NODE macro defines a list that stores all child-elements of
that node. If there's no SYSCTL_DECL macro anywhere else, there's no
reason why it shouldn't be static.
</content>
</entry>
<entry>
<title>Partially revert 222753: If a CardBus card stores its CIS in a BAR, delete</title>
<updated>2011-09-12T15:21:52Z</updated>
<author>
<name>John Baldwin</name>
<email>jhb@FreeBSD.org</email>
</author>
<published>2011-09-12T15:21:52Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=06c9ee053d10612a3452d396aec23852f4306d6b'/>
<id>urn:sha1:06c9ee053d10612a3452d396aec23852f4306d6b</id>
<content type='text'>
the BAR after parsing the CIS.  This forces the resource range to be
reallocated if the BAR is reused by the device.

Submitted by:	deischen
Reviewed by:	imp
Approved by:	re (kib)
</content>
</entry>
<entry>
<title>Minor cleanup:</title>
<updated>2011-06-21T22:45:31Z</updated>
<author>
<name>Warner Losh</name>
<email>imp@FreeBSD.org</email>
</author>
<published>2011-06-21T22:45:31Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=4089559520ae60c6d28d8c3c9895a18c311037d2'/>
<id>urn:sha1:4089559520ae60c6d28d8c3c9895a18c311037d2</id>
<content type='text'>
o Consider No CIS a normal event and stop whining about it so much
  (too many cards are like this, espeically usb/firewire cards).
o Add comments to the cis reading code.
o Made the read from config space a smidge easier to read and eliminate
  a loop that can be done mathematically.
</content>
</entry>
<entry>
<title>More properly handle Cardbus cards that that store their CIS in a BAR after</title>
<updated>2011-06-06T13:21:11Z</updated>
<author>
<name>John Baldwin</name>
<email>jhb@FreeBSD.org</email>
</author>
<published>2011-06-06T13:21:11Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=0d439b5f93ffc3751cd431eb32953992727bfe1b'/>
<id>urn:sha1:0d439b5f93ffc3751cd431eb32953992727bfe1b</id>
<content type='text'>
the recent changes to track BAR state explicitly.  The code would now
attempt to add the same BAR twice in this case.  Instead, change this so
that it recognizes this case and only adds it once and do not delete the
BAR outright after parsing the CIS.

Tested by:	bschmidt
</content>
</entry>
<entry>
<title>Don't explicitly list pci_write_ivar() for bus_write_ivar, the method is</title>
<updated>2011-05-02T15:01:28Z</updated>
<author>
<name>John Baldwin</name>
<email>jhb@FreeBSD.org</email>
</author>
<published>2011-05-02T15:01:28Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=8d43fea45f9f1bafb90402093998c614f3e3a8ea'/>
<id>urn:sha1:8d43fea45f9f1bafb90402093998c614f3e3a8ea</id>
<content type='text'>
already inherited from the PCI bus driver.
</content>
</entry>
<entry>
<title>Move the PCI-specific logic of removing a cardbus device into a</title>
<updated>2010-01-05T20:42:25Z</updated>
<author>
<name>John Baldwin</name>
<email>jhb@FreeBSD.org</email>
</author>
<published>2010-01-05T20:42:25Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=af827f96428cc9f789028215d2232b76ba039d99'/>
<id>urn:sha1:af827f96428cc9f789028215d2232b76ba039d99</id>
<content type='text'>
pci_delete_child() function called by the cardbus driver.  The new function
uses resource_list_unreserve() to release the BARs decoded by the device
being removed.

Reviewed by:	imp
Tested by:	brooks
</content>
</entry>
<entry>
<title>Fix an error case I missed in the previous change so that the CIS resource</title>
<updated>2009-12-30T22:34:26Z</updated>
<author>
<name>John Baldwin</name>
<email>jhb@FreeBSD.org</email>
</author>
<published>2009-12-30T22:34:26Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=3a6b4b04ab8a701413dd31c215fb0a9e9aeffd0a'/>
<id>urn:sha1:3a6b4b04ab8a701413dd31c215fb0a9e9aeffd0a</id>
<content type='text'>
is fully cleaned up if we fail to find the CIS in the devices ROM.
</content>
</entry>
<entry>
<title>Delete the CIS resource after releasing it.  This is needed when the CIS is</title>
<updated>2009-12-30T20:49:13Z</updated>
<author>
<name>John Baldwin</name>
<email>jhb@FreeBSD.org</email>
</author>
<published>2009-12-30T20:49:13Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=767dff0ac99b37f758d511ba10d4e538750f546a'/>
<id>urn:sha1:767dff0ac99b37f758d511ba10d4e538750f546a</id>
<content type='text'>
stored in a BAR since the CIS BAR is mapped before the PCI bus driver
enumerates all the BARs.  Without this change, the PCI bus driver would
attempt to initialize a BAR that was already allocated resulting in a panic.
</content>
</entry>
</feed>
