| #
030b0c8c |
| 09-Dec-2023 |
Michael Neumann <mneumann@ntecs.de> |
busdma - Remove filter functionality
- Remove filtfunc and filtarg arguments from bus_dma_tag_create() and fix all callers. All callers use NULL today for both filterfunc and filterarg with one
busdma - Remove filter functionality
- Remove filtfunc and filtarg arguments from bus_dma_tag_create() and fix all callers. All callers use NULL today for both filterfunc and filterarg with one exception: if_jme.
- Remove filter functionality internally and parent tag tracking. Without filter functions, we do not need to keep track of tag ancestry. All inheritance of the parent tag's parameters occurs when creating the new child tag.
- rename run_filter() to addr_needs_bounce().
- FreeBSD keeps the filtfunc and filtarg arguments but requires them to be NULL.
- Drop filterfunc usage from if_jme.
In case of "JMC260 chip full mask revision 2", which has a hardware bug when it comes to DMA transfers crossing the 4 GB bounday, the parent buffer tag already limits DMA memory to 32bit address space. As such it should be safe to drop the filterfunc. The filterfunc was checking if the lower 32bits of the physical address used for DMA are all 0. In case of a 32bit address space, the only address where all lower 32-bits are all zero is 0 itself and I am here assuming that the physical address 0 is not used for DMA transfers!
Mainly obtained from: FreeBSD (commits 7cb028de, 900907f4, 1228b93b, 3933ff56)
show more ...
|
|
Revision tags: v6.4.0, v6.4.0rc1, v6.5.0, v6.2.2, v6.2.1, v6.3.0, v6.0.1, v6.0.0, v6.0.0rc1, v6.1.0, v5.8.3, v5.8.2, v5.8.1, v5.8.0, v5.9.0, v5.8.0rc1, v5.6.3, v5.6.2, v5.6.1, v5.6.0, v5.6.0rc1, v5.7.0, v5.4.3, v5.4.2 |
|
| #
cec957e9 |
| 04-Mar-2019 |
Matthew Dillon <dillon@apollo.backplane.com> |
kernel - Change callout in struct ccb_hdr
* Change the callout declaration in struct ccb_hdr from an embedded structure to a pointer, add padding to get the whole structure to its original size
kernel - Change callout in struct ccb_hdr
* Change the callout declaration in struct ccb_hdr from an embedded structure to a pointer, add padding to get the whole structure to its original size (prior to the recent callout patch).
* This removes an improper ABI dependency on the kernel struct callout structure which was causing 'camcontrol', and 'smartctl' (from smartmontools) to fail.
Testing: dillon, tuxillo
show more ...
|
|
Revision tags: v5.4.1, v5.4.0, v5.5.0, v5.4.0rc1, v5.2.2, v5.2.1, v5.2.0, v5.3.0, v5.2.0rc, v5.0.2, v5.0.1, v5.0.0, v5.0.0rc2, v5.1.0, v5.0.0rc1, v4.8.1 |
|
| #
e6186595 |
| 29-Jul-2017 |
Sascha Wildner <saw@online.de> |
kernel: Remove some variables that are only set but never used.
Reported-by: dcb Dragonfly-bug: <https://bugs.dragonflybsd.org/issues/3019>
|
| #
8406cf70 |
| 15-Jun-2017 |
Sascha Wildner <saw@online.de> |
kernel: Add 'static' to some function definitions.
The declarations already have it, so no functional difference.
|
|
Revision tags: v4.8.0, v4.6.2, v4.9.0, v4.8.0rc, v4.6.1, v4.6.0, v4.6.0rc2, v4.6.0rc, v4.7.0, v4.4.3, v4.4.2, v4.4.1, v4.4.0, v4.5.0, v4.4.0rc, v4.2.4, v4.3.1, v4.2.3, v4.2.1, v4.2.0, v4.0.6, v4.3.0, v4.2.0rc, v4.0.5, v4.0.4, v4.0.3, v4.0.2, v4.0.1, v4.0.0, v4.0.0rc3, v4.0.0rc2, v4.0.0rc, v4.1.0, v3.8.2, v3.8.1, v3.6.3, v3.8.0, v3.8.0rc2, v3.9.0, v3.8.0rc, v3.6.2, v3.6.1, v3.6.0, v3.7.1, v3.6.0rc, v3.4.3, v3.4.2, v3.4.1, v3.4.0, v3.4.0rc, v3.5.0 |
|
| #
2267fd78 |
| 05-Mar-2013 |
Johannes Hofmann <johannes.hofmann@gmx.de> |
Merge branch 'master' of git://git.dragonflybsd.org/dragonfly into wlan_serialize
|
| #
d674fdb5 |
| 01-Mar-2013 |
Sascha Wildner <saw@online.de> |
amd(4): Remove duplicate assignment.
|
| #
d3c9c58e |
| 20-Feb-2013 |
Sascha Wildner <saw@online.de> |
kernel: Use DEVMETHOD_END in the drivers.
|
| #
7078f92b |
| 12-Jan-2013 |
Johannes Hofmann <johannes.hofmann@gmx.de> |
merge
|
| #
489fe090 |
| 07-Jan-2013 |
Sascha Wildner <saw@online.de> |
kernel: Remove some unused variables in RAID and disk drivers.
|
|
Revision tags: v3.2.2, v3.2.1, v3.2.0, v3.3.0, v3.0.3 |
|
| #
9437e5dc |
| 31-May-2012 |
Matthew Dillon <dillon@apollo.backplane.com> |
Merge branches 'hammer2' and 'master' of ssh://crater.dragonflybsd.org/repository/git/dragonfly into hammer2
|
| #
8062d810 |
| 24-May-2012 |
Sascha Wildner <saw@online.de> |
kernel: Remove some bogus casts to the own type.
|
| #
e06c72d3 |
| 30-Apr-2012 |
Matthew Dillon <dillon@apollo.backplane.com> |
Merge branches 'hammer2' and 'master' of ssh://crater.dragonflybsd.org/repository/git/dragonfly into hammer2
|
| #
ed20d0e3 |
| 21-Apr-2012 |
Sascha Wildner <saw@online.de> |
kernel: Remove newlines from the panic messages that have one.
panic() itself will add a newline.
|
|
Revision tags: v3.0.2, v3.0.1, v3.1.0, v3.0.0 |
|
| #
86d7f5d3 |
| 26-Nov-2011 |
John Marino <draco@marino.st> |
Initial import of binutils 2.22 on the new vendor branch
Future versions of binutils will also reside on this branch rather than continuing to create new binutils branches for each new version.
|
|
Revision tags: v2.12.0, v2.13.0 |
|
| #
aa2b9d05 |
| 24-Jun-2011 |
Sascha Wildner <saw@online.de> |
kernel: Use NULL for DRIVER_MODULE()'s evh & arg (which are pointers).
This is just cosmetics for easier reading.
|
|
Revision tags: v2.10.1, v2.11.0, v2.10.0, v2.9.1, v2.8.2, v2.8.1, v2.8.0, v2.9.0, v2.6.3, v2.7.3, v2.6.2, v2.7.2, v2.7.1, v2.6.1, v2.7.0, v2.6.0, v2.5.1, v2.4.1, v2.5.0, v2.4.0, v2.3.2, v2.3.1, v2.2.1, v2.2.0, v2.3.0, v2.1.1, v2.0.1 |
|
| #
1c8b7a9a |
| 18-May-2008 |
Peter Avalos <pavalos@dragonflybsd.org> |
Sync CAM with FreeBSD using lockmgr locks instead of mutexes. Note: This is mostly a code sync with FreeBSD which improves stability in addition to the items listed below. This provides a framework
Sync CAM with FreeBSD using lockmgr locks instead of mutexes. Note: This is mostly a code sync with FreeBSD which improves stability in addition to the items listed below. This provides a framework for releasing the mplock, but for now it's still there.
Add an xpt_print function to reduce most of the xpt_print_path/printf pairs. Convert the core code to use it.
Initial cut at Basic Domain Validation.
Make cam_xpt's pronouncements match camcontrol (Tagged -> Command) Queueing.
Pay attention to return value from xpt_bus_register in xpt_init.
Add an xpt_rescan function and a thread that will field rescan requests. The purpose of this is to allow a SIM (or other entities) to request a bus rescan and have it then fielded in a different (process) context from the caller.
Check the return value from cam_periph_acquire.
Drop the periph/sim lock when calling disk_destroy().
Drop the topology lock before calling the periph oninvalidate and dtor vectors.
For the XPT_SASYNC_CB operation, only decouple the broadcast to the bus and device lists instead of decoupling the whole operation. This avoids problems with SIMs going away.
Split the camisr into per-SIM done queues. This optimizes the locking a little bit and allows for direct dispatch of the doneq from certain contexts that would otherwise face recursive locking problems.
Zero the CCBs when mallocing them.
Only schedule the xpt_finishconfig_task once.
Eliminate the use of M_TEMP.
Add a helper function for registering async callbacks.
Release the bus reference that is acquired when doing a CAMIOCOMMAND ioctl.
Zero scsi_readcapacity allocations so we can really tell if there has been data returned.
Remove duplicate includes and fix typos.
Add a bunch of definitions and structures to support newer drivers.
When probing a newly found device, don't automatically assume that the device supports retrieving a serial number. Instead, first query the list of VPD pages it does support, and only query the serial number if it's supported, else silently move on. This eliminates a lot of noise during verbose booting, and will likely eliminate the need for most NOSERIAL quirks.
Reduce diffs from FreeBSD.
Obtained-from: FreeBSD
show more ...
|
| #
aa58569c |
| 10-Feb-2008 |
Peter Avalos <pavalos@dragonflybsd.org> |
Make CAM_NEW_TRAN_CODE default.
As previously mentioned, this makes a huge performance difference for one of my disks, and future work depends on this change.
Obtained-from: FreeBSD
|
| #
f19fcfb0 |
| 23-Dec-2007 |
Peter Avalos <pavalos@dragonflybsd.org> |
Fixes for CAM_NEW_TRAN_CODE.
This commit is taken from a FreeBSD changeset, and is not intended to be comprehensive. Some drivers will still not compile/work with the CAM_NEW_TRAN_CODE option, but
Fixes for CAM_NEW_TRAN_CODE.
This commit is taken from a FreeBSD changeset, and is not intended to be comprehensive. Some drivers will still not compile/work with the CAM_NEW_TRAN_CODE option, but this opens the door for wider testing.
Obtained-from: FreeBSD
show more ...
|
| #
3f625015 |
| 13-May-2007 |
Sascha Wildner <swildner@dragonflybsd.org> |
Fix numerous spelling mistakes.
|
| #
e3869ec7 |
| 22-Dec-2006 |
Sascha Wildner <swildner@dragonflybsd.org> |
Rename printf -> kprintf in sys/ and add some defines where necessary (files which are used in userland, too).
|
| #
1f7ab7c9 |
| 25-Oct-2006 |
Matthew Dillon <dillon@dragonflybsd.org> |
Do a major clean-up of the BUSDMA architecture. A large number of essentially machine-independant drivers use the structures and definitions in machine-dependant directories that are really machine-
Do a major clean-up of the BUSDMA architecture. A large number of essentially machine-independant drivers use the structures and definitions in machine-dependant directories that are really machine-independant in nature.
Split <machine/bus_dma.h> into machine-depdendant and machine-independant parts and make the primary access run through <sys/bus_dma.h>.
Remove <machine/bus.h>, <machine/bus_memio.h> and <machine/bus_pio.h>. The optimizations related to bus_memio.h and bus_pio.h made a huge mess, introduced machine-specific knowledge into essentially machine-independant drivers, and required specific #include file orderings to do their job. They may be reintroduced in some other form later on.
Move <machine/resource.h> to <sys/bus_resource.h>. The contents of the file is machine-independant or can be made a superset across many platforms.
Make <sys/bus.h> include <sys/bus_dma.h> and <sys/bus_resource.h> and include <sys/bus.h> where necessary. Remove all #include's of <machine/resource.h> and <machine/bus.h>. That is, make the BUSDMA infrastructure integral to I/O-mapped and memory-mapped accesses to devices and remove a large chunk of machine-specific dependancies from drivers. bus_if.h and device_if.h are now required to be present when using <sys/bus.h>.
show more ...
|
| #
fc6d0222 |
| 03-Aug-2006 |
Sascha Wildner <swildner@dragonflybsd.org> |
Remove all occurences of double semicolons at the end of a line by single ones.
Submitted-by: Bill Marquette <bill.marquette@gmail.com>
|
| #
ee61f228 |
| 12-Oct-2005 |
Matthew Dillon <dillon@dragonflybsd.org> |
Remove the INTR_TYPE_* flags. The interrupt type is no longer used to figure out which spl*() set an interrupt belongs to, because, well, spl's no longer exist.
|
| #
c1139c5e |
| 03-Jun-2005 |
Eirik Nygaard <eirikn@dragonflybsd.org> |
Remove *spl() from dev/disk/{advansys,aha,ahb,aic7xxx,amd} replacing them with critical sections.
|
| #
e9cb6d99 |
| 24-May-2005 |
Matthew Dillon <dillon@dragonflybsd.org> |
Get rid of bus_{disable,enable}_intr(), it wasn't generic enough for our needs.
Implement some generic atomic.h functions to aid in the implementation of a low level mutex.
Implement a generic low
Get rid of bus_{disable,enable}_intr(), it wasn't generic enough for our needs.
Implement some generic atomic.h functions to aid in the implementation of a low level mutex.
Implement a generic low level sleep-mutex serializer, kern/lwkt_serialize.c. The serializer is designed to be a replacement for SPL calls but may also be used for other very low level work (e.g. lockmgr interlocks).
Add a serializer argument to BUS_SETUP_INTR(). When non-NULL, the interrupt handler will no longer be protected by an SPL so e.g. spl*() will no longer protect against that device's interrupts.
The IF queueing and dequeueing mechanisms may no longer depend on outside SPL state because network driver interrupt handlers are no longer required to enter splnet(). Use critical sections for the moment. The IFQ and IFF_OACTIVE interactions are not yet MP safe.
show more ...
|