<feed xmlns='http://www.w3.org/2005/Atom'>
<title>src-test2/sys/dev/mlx, branch release/10.0.0</title>
<subtitle>FreeBSD source tree</subtitle>
<id>https://cgit-dev.freebsd.org/src-test2/atom?h=release%2F10.0.0</id>
<link rel='self' href='https://cgit-dev.freebsd.org/src-test2/atom?h=release%2F10.0.0'/>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/'/>
<updated>2012-09-26T14:17:14Z</updated>
<entry>
<title>Remove FreeBSD 4.x compat shims.  Verified by md5.</title>
<updated>2012-09-26T14:17:14Z</updated>
<author>
<name>John Baldwin</name>
<email>jhb@FreeBSD.org</email>
</author>
<published>2012-09-26T14:17:14Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=b04e4c122bad756dc4fa92b36eb8e6366e3d9141'/>
<id>urn:sha1:b04e4c122bad756dc4fa92b36eb8e6366e3d9141</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Add locking to mlx(4) to make it MPSAFE along with some other fixes:</title>
<updated>2012-09-17T15:27:30Z</updated>
<author>
<name>John Baldwin</name>
<email>jhb@FreeBSD.org</email>
</author>
<published>2012-09-17T15:27:30Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=0fca6f8bf5de47b6d016500bf066d584959800f4'/>
<id>urn:sha1:0fca6f8bf5de47b6d016500bf066d584959800f4</id>
<content type='text'>
- Use callout(9) rather than timeout(9).
- Add a mutex as an I/O lock that protects the adapter and is used
  for the I/O path.
- Add an sx lock as a configuration lock that protects the relationship
  of configured volumes.
- Freeze the request queue when a DMA load is deferred with EINPROGRESS
  and unfreeze the queue when the DMA callback is invoked.
- Explicitly poll the hardware while waiting to submit a command to
  allow completed commands to free up slots in the command ring.
- Remove driver-wide 'initted' variable from mlx_*_fw_handshake() routines.
  That state should be per-controller instead.  Add it as an argument
  since the first caller knows when it is the first caller.
- Remove explicit bus_space tag/handle and use bus_*() rather than
  bus_space_*().
- Move duplicated PCI device ID probing into a  mlx_pci_match() routine.
- Don't check for PCIM_CMD_MEMEN (the PCI bus will enable that when
  allocating the resource) and use pci_enable_busmaster() rather than
  manipulating the register directly.

Tested by:	no one despite multiple requests (hope it works)
</content>
</entry>
<entry>
<title>Correct a typo.</title>
<updated>2012-08-03T00:11:13Z</updated>
<author>
<name>Xin LI</name>
<email>delphij@FreeBSD.org</email>
</author>
<published>2012-08-03T00:11:13Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=0f3fae6159ce49ac3f56630bffda78b1bab090b3'/>
<id>urn:sha1:0f3fae6159ce49ac3f56630bffda78b1bab090b3</id>
<content type='text'>
Reported by:	Sascha Wildner &lt;swildner dragonflybsd org&gt;
Reviewed by:	scottl
MFC after:	3 days
</content>
</entry>
<entry>
<title>Convert a number of drivers to obtaining their parent DMA tag from their</title>
<updated>2012-03-12T08:03:51Z</updated>
<author>
<name>Scott Long</name>
<email>scottl@FreeBSD.org</email>
</author>
<published>2012-03-12T08:03:51Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=b6f97155ccab302d0c3920d20604b183a036f0fb'/>
<id>urn:sha1:b6f97155ccab302d0c3920d20604b183a036f0fb</id>
<content type='text'>
PCI device attachment.
</content>
</entry>
<entry>
<title>Remove unused variable count.</title>
<updated>2012-02-27T16:10:26Z</updated>
<author>
<name>Kevin Lo</name>
<email>kevlo@FreeBSD.org</email>
</author>
<published>2012-02-27T16:10:26Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=5a1fac10af37e914ce8816ae742de984d9a16733'/>
<id>urn:sha1:5a1fac10af37e914ce8816ae742de984d9a16733</id>
<content type='text'>
This variable is initialized but not used.
</content>
</entry>
<entry>
<title>- There's no need to overwrite the default device method with the default</title>
<updated>2011-11-22T21:28:20Z</updated>
<author>
<name>Marius Strobl</name>
<email>marius@FreeBSD.org</email>
</author>
<published>2011-11-22T21:28:20Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=4b7ec27007570e0ce4fe9dbb447e7afc131b487a'/>
<id>urn:sha1:4b7ec27007570e0ce4fe9dbb447e7afc131b487a</id>
<content type='text'>
  one. Interestingly, these are actually the default for quite some time
  (bus_generic_driver_added(9) since r52045 and bus_generic_print_child(9)
  since r52045) but even recently added device drivers do this unnecessarily.
  Discussed with: jhb, marcel
- While at it, use DEVMETHOD_END.
  Discussed with: jhb
- Also while at it, use __FBSDID.
</content>
</entry>
<entry>
<title>Temporarily revert the new-bus locking for 8.0 release.  It will be</title>
<updated>2009-08-20T19:17:53Z</updated>
<author>
<name>John Baldwin</name>
<email>jhb@FreeBSD.org</email>
</author>
<published>2009-08-20T19:17:53Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=a56fe095f0d5fb20fc70b784acb0cd2d367d3e79'/>
<id>urn:sha1:a56fe095f0d5fb20fc70b784acb0cd2d367d3e79</id>
<content type='text'>
reintroduced after HEAD is reopened for commits by re@.

Approved by:	re (kib), attilio
</content>
</entry>
<entry>
<title>Make the newbus subsystem Giant free by adding the new newbus sxlock.</title>
<updated>2009-08-02T14:28:40Z</updated>
<author>
<name>Attilio Rao</name>
<email>attilio@FreeBSD.org</email>
</author>
<published>2009-08-02T14:28:40Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=444b91868b5294e3a2151fffa3b063763a562448'/>
<id>urn:sha1:444b91868b5294e3a2151fffa3b063763a562448</id>
<content type='text'>
The newbus lock is responsible for protecting newbus internIal structures,
device states and devclass flags. It is necessary to hold it when all
such datas are accessed. For the other operations, softc locking should
ensure enough protection to avoid races.

Newbus lock is automatically held when virtual operations on the device
and bus are invoked when loading the driver or when the suspend/resume
take place. For other 'spourious' operations trying to access/modify
the newbus topology, newbus lock needs to be automatically acquired and
dropped.

For the moment Giant is also acquired in some key point (modules subsystem)
in order to avoid problems before the 8.0 release as module handlers could
make assumptions about it. This Giant locking should go just after
the release happens.

Please keep in mind that the public interface can be expanded in order
to provide more support, if there are really necessities at some point
and also some bugs could arise as long as the patch needs a bit of
further testing.

Bump __FreeBSD_version in order to reflect the newbus lock introduction.

Reviewed by:    ed, hps, jhb, imp, mav, scottl
No answer by:   ariff, thompsa, yongari
Tested by:      pho,
                G. Trematerra &lt;giovanni dot trematerra at gmail dot com&gt;,
                Brandon Gooch &lt;jamesbrandongooch at gmail dot com&gt;
Sponsored by:   Yahoo! Incorporated
Approved by:	re (ksmith)
</content>
</entry>
<entry>
<title>Separate the parallel scsi knowledge out of the core of the XPT, and</title>
<updated>2009-07-10T08:18:08Z</updated>
<author>
<name>Scott Long</name>
<email>scottl@FreeBSD.org</email>
</author>
<published>2009-07-10T08:18:08Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=52c9ce25d8339ad0228be8aaf0e44b45314b38dc'/>
<id>urn:sha1:52c9ce25d8339ad0228be8aaf0e44b45314b38dc</id>
<content type='text'>
modularize it so that new transports can be created.

Add a transport for SATA

Add a periph+protocol layer for ATA

Add a driver for AHCI-compliant hardware.

Add a maxio field to CAM so that drivers can advertise their max
I/O capability.  Modify various drivers so that they are insulated
from the value of MAXPHYS.

The new ATA/SATA code supports AHCI-compliant hardware, and will override
the classic ATA driver if it is loaded as a module at boot time or compiled
into the kernel.  The stack now support NCQ (tagged queueing) for increased
performance on modern SATA drives.  It also supports port multipliers.

ATA drives are accessed via 'ada' device nodes.  ATAPI drives are
accessed via 'cd' device nodes.  They can all be enumerated and manipulated
via camcontrol, just like SCSI drives.  SCSI commands are not translated to
their ATA equivalents; ATA native commands are used throughout the entire
stack, including camcontrol.  See the camcontrol manpage for further
details.  Testing this code may require that you update your fstab, and
possibly modify your BIOS to enable AHCI functionality, if available.

This code is very experimental at the moment.  The userland ABI/API has
changed, so applications will need to be recompiled.  It may change
further in the near future.  The 'ada' device name may also change as
more infrastructure is completed in this project.  The goal is to
eventually put all CAM busses and devices until newbus, allowing for
interesting topology and management options.

Few functional changes will be seen with existing SCSI/SAS/FC drivers,
though the userland ABI has still changed.  In the future, transports
specific modules for SAS and FC may appear in order to better support
the topologies and capabilities of these technologies.

The modularization of CAM and the addition of the ATA/SATA modules is
meant to break CAM out of the mold of being specific to SCSI, letting it
grow to be a framework for arbitrary transports and protocols.  It also
allows drivers to be written to support discrete hardware without
jeopardizing the stability of non-related hardware.  While only an AHCI
driver is provided now, a Silicon Image driver is also in the works.
Drivers for ICH1-4, ICH5-6, PIIX, classic IDE, and any other hardware
is possible and encouraged.  Help with new transports is also encouraged.

Submitted by:	scottl, mav
Approved by:	re
</content>
</entry>
<entry>
<title>Convert mlx(4) and mly(4) to si_drv1 instead of dev2unit().</title>
<updated>2009-04-18T07:36:38Z</updated>
<author>
<name>Ed Schouten</name>
<email>ed@FreeBSD.org</email>
</author>
<published>2009-04-18T07:36:38Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=e78a5a3f2f90c7fa01671cc0684ef1699d312300'/>
<id>urn:sha1:e78a5a3f2f90c7fa01671cc0684ef1699d312300</id>
<content type='text'>
</content>
</entry>
</feed>
