| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
| |
Notes:
svn path=/head/; revision=129879
|
| |
|
|
|
|
|
|
| |
Submitted by: Mark Santcroos <marks@ripe.net>
Reviewed by: imp, dfr, bde
Notes:
svn path=/head/; revision=127135
|
| |
|
|
|
|
|
|
| |
Glanced over by: imp, gibbs
Tested by: i386 LINT
Notes:
svn path=/head/; revision=119690
|
| |
|
|
|
|
|
|
|
| |
comment and thus compiled.
Submitted by: bde
Notes:
svn path=/head/; revision=119451
|
| |
|
|
|
|
|
| |
Also some minor style cleanups.
Notes:
svn path=/head/; revision=119418
|
| |
|
|
|
|
|
|
| |
tree for two or more years now), except in a few places where there's
code to be compatible with older versions of FreeBSD.
Notes:
svn path=/head/; revision=119277
|
| |
|
|
|
|
|
|
| |
C in rev.1.32 so that it doesn't take 2 commits for all branches to fix
this message.
Notes:
svn path=/head/; revision=118052
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Add two new arguments to bus_dma_tag_create(): lockfunc and lockfuncarg.
Lockfunc allows a driver to provide a function for managing its locking
semantics while using busdma. At the moment, this is used for the
asynchronous busdma_swi and callback mechanism. Two lockfunc implementations
are provided: busdma_lock_mutex() performs standard mutex operations on the
mutex that is specified from lockfuncarg. dftl_lock() is a panic
implementation and is defaulted to when NULL, NULL are passed to
bus_dma_tag_create(). The only time that NULL, NULL should ever be used is
when the driver ensures that bus_dmamap_load() will not be deferred.
Drivers that do not provide their own locking can pass
busdma_lock_mutex,&Giant args in order to preserve the former behaviour.
sparc64 and powerpc do not provide real busdma_swi functions, so this is
largely a noop on those platforms. The busdma_swi on is64 is not properly
locked yet, so warnings will be emitted on this platform when busdma
callback deferrals happen.
If anyone gets panics or warnings from dflt_lock() being called, please
let me know right away.
Reviewed by: tmm, gibbs
Notes:
svn path=/head/; revision=117126
|
| |
|
|
|
|
|
|
|
| |
Remove break after return
Found by: FlexeLint
Notes:
svn path=/head/; revision=115555
|
| |
|
|
|
|
|
|
|
|
|
| |
BUS_DMASYNC_ definitions remain as before. The does not change the ABI,
and reverts the API to be a bit more compatible and flexible. This has
survived a full 'make universe'.
Approved by: re (bmah)
Notes:
svn path=/head/; revision=115343
|
| |
|
|
|
|
|
| |
to bus_dmasync_op_t in my last commit.
Notes:
svn path=/head/; revision=113350
|
| |
|
|
| |
Notes:
svn path=/head/; revision=112782
|
| |
|
|
|
|
|
| |
Submitted by: Hiten Pandya <hiten@unixdaemons.com>
Notes:
svn path=/head/; revision=110232
|
| |
|
|
|
|
|
|
| |
that sizeof(int) == sizeof(void *) == 4. However, it also seems that the
hardware assumes this.
Notes:
svn path=/head/; revision=106521
|
| |
|
|
|
|
|
|
| |
'int nsegments' argument to bus_dma_tag_create(). ~0ul does not fit in
an int on machines with 64 bit longs.
Notes:
svn path=/head/; revision=104710
|
| |
|
|
| |
Notes:
svn path=/head/; revision=100430
|
| |
|
|
|
|
|
| |
Reported by: gcc30
Notes:
svn path=/head/; revision=87797
|
| |
|
|
|
|
|
|
| |
PR: 29454
Submitted by: Rob Manchester <rmanches@vmware.com>
Notes:
svn path=/head/; revision=82365
|
| |
|
|
| |
Notes:
svn path=/head/; revision=79175
|
| |
|
|
|
|
|
|
|
|
| |
I could find. I have no doubt missed a couple.
Interrupt entropy harvesting is still conditional on the
kern.random.sys.harvest_interrupt sysctl.
Notes:
svn path=/head/; revision=73280
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This allows us to successfully attach early Storage Dimension cards.
Allocate mailboxes for the 742A bellow the 16MB limit. Although these
cards seem to be able to deal with all other types of data anywhere
in a 32bit address space, 24bit addresses are required for mailboxes.
bt_eisa.c:
Add device IDs for all Storage Dimension products I could
find from their web site.
Thanks to Ted Mittelstaed for loaning me the equipment to diagnose
and fix these problems.
Notes:
svn path=/head/; revision=68661
|
| |
|
|
| |
Notes:
svn path=/head/; revision=67164
|
| |
|
|
|
|
|
|
|
| |
PR: 18588
Submitted by: Anatoly Vorobey <mellon@pobox.com>
Reviewed by: asmodai
Notes:
svn path=/head/; revision=61686
|
| |
|
|
| |
Notes:
svn path=/head/; revision=61487
|
| |
|
|
|
|
|
|
|
| |
It was not discussed and should probably not happen.
Requested by: msmith and others
Notes:
svn path=/head/; revision=60938
|
| |
|
|
|
|
|
|
|
|
|
| |
the type argument to *_HEAD and *_ENTRY is a struct.
Suggested by: phk
Reviewed by: phk
Approved by: mdodd
Notes:
svn path=/head/; revision=60833
|
| |
|
|
|
|
|
|
| |
Due to some interesting cpp tricks in lockmgr, the LINT kernel shrinks
by 924 bytes.
Notes:
svn path=/head/; revision=59368
|
| |
|
|
| |
Notes:
svn path=/head/; revision=56824
|
| |
|
|
| |
Notes:
svn path=/head/; revision=56176
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Collect together the components of several drivers and export eisa from
the i386-only area (It's not, it's on some alphas too). The code hasn't
been updated to work on the Alpha yet, but that can come later.
Repository copies were done a while ago.
Moving these now keeps them in consistant place across the 4.x series
as the newbusification progresses.
Submitted by: mdodd
Notes:
svn path=/head/; revision=55953
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
resource_list_release. This removes the dependancy on the
layout of ivars.
* Move set_resource, get_resource and delete_resource from
isa_if.m to bus_if.m.
* Simplify driver code by providing wrappers to those methods:
bus_set_resource(dev, type, rid, start, count);
bus_get_resource(dev, type, rid, startp, countp);
bus_get_resource_start(dev, type, rid);
bus_get_resource_count(dev, type, rid);
bus_delete_resource(dev, type, rid);
* Delete isa_get_rsrc and use bus_get_resource_start instead.
* Fix a stupid typo in isa_alloc_resource reported by Takahashi
Yoshihiro <nyan@FreeBSD.org>.
* Print a diagnostic message if we can't assign resources to a PnP
device.
* Change device_print_prettyname() so that it doesn't print
"(no driver assigned)-1" for anonymous devices.
Notes:
svn path=/head/; revision=52174
|
| |
|
|
|
|
|
|
|
| |
The 'bt' SCSI driver now lives in sys/dev/buslogic.
- Correct a few comments.
Notes:
svn path=/head/; revision=52052
|
| |
|
|
|
|
|
|
|
|
|
| |
- Work around a problem not yet solved in the tree (but solved in mine.)
device_get_ivars() should never be cast to a struct resource_list *
The solution, under review, involves the creation of a
device_get_resource_list() function. More later.
Notes:
svn path=/head/; revision=52050
|
| |
|
|
|
|
|
| |
away.
Notes:
svn path=/head/; revision=52026
|
| |
|
|
| |
Notes:
svn path=/head/; revision=51675
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
MCA SCSI adapters.
bt_mca.c is going to live in sys/dev/buslogic instead of sys/dev/mca
as per a conversation with Peter, Doug and Mike.
Thanks to Andy Farkas <andyf@speednet.com.au> for being such a good
sport and doing all the testing for me (as I don't actually own one
of these cards. Yet.)
Notes:
svn path=/head/; revision=50826
|
| |
|
|
| |
Notes:
svn path=/head/; revision=50477
|
| |
|
|
|
|
|
| |
don't care about the alignment, set it to 1, meaning single byte alignment.
Notes:
svn path=/head/; revision=49860
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
eisa_add_intr() which now takes an additional arguement (one of
EISA_TRIGGER_LEVEL or EISA_TRIGGER_EDGE).
The flag RR_SHAREABLE has no effect when passed to
bus_alloc_resource(dev, SYS_RES_IRQ, ...) in an EISA device context as
the eisa_alloc_resource() call (bus_alloc_resource method) now deals
with this flag directly, depending on the device ivars.
This change does nothing more than move all the 'shared = inb(foo + iobsse)'
nonesense to the device probe methods rather than the device attach.
Also, print out 'edge' or 'level' in the IRQ announcement message.
Reviewed by: dfr
Notes:
svn path=/head/; revision=49360
|
| |
|
|
|
|
|
| |
files. config will leave the whole file out if configured to do so.
Notes:
svn path=/head/; revision=48528
|
| |
|
|
|
|
|
| |
driver is probably not far from being MI now anyway.
Notes:
svn path=/head/; revision=48307
|
| |
|
|
|
|
|
| |
the isa probe has gone hunting for a card on it's own.
Notes:
svn path=/head/; revision=47717
|
| |
|
|
| |
Notes:
svn path=/head/; revision=47617
|
| |
|
|
|
|
|
|
|
|
| |
mailbox command will block the completion of an immediate command,
so we must service them for our command to succeed.
PR: 11799
Notes:
svn path=/head/; revision=47432
|
| |
|
|
| |
Notes:
svn path=/head/; revision=47399
|
| |
|
|
|
|
|
| |
to the BUS_SETUP_INTR call.
Notes:
svn path=/head/; revision=46743
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
NOTE: These changes will require recompilation of any userland
applications, like cdrecord, xmcd, etc., that use the CAM passthrough
interface. A make world is recommended.
camcontrol.[c8]:
- We now support two new commands, "tags" and "negotiate".
- The tags commands allows users to view the number of tagged
openings for a device as well as a number of other related
parameters, and it allows users to set tagged openings for
a device.
- The negotiate command allows users to enable and disable
disconnection and tagged queueing, set sync rates, offsets
and bus width. Note that not all of those features are
available for all controllers. Only the adv, ahc, and ncr
drivers fully support all of the features at this point.
Some cards do not allow the setting of sync rates, offsets and
the like, and some of the drivers don't have any facilities to
do so. Some drivers, like the adw driver, only support enabling
or disabling sync negotiation, but do not support setting sync
rates.
- new description in the camcontrol man page of how to format a disk
- cleanup of the camcontrol inquiry command
- add support in the 'devlist' command for skipping unconfigured devices if
-v was not specified on the command line.
- make use of the new base_transfer_speed in the path inquiry CCB.
- fix CCB bzero cases
cam_xpt.c, cam_sim.[ch], cam_ccb.h:
- new flags on many CCB function codes to designate whether they're
non-immediate, use a user-supplied CCB, and can only be passed from
userland programs via the xpt device. Use these flags in the transport
layer and pass driver to categorize CCBs.
- new flag in the transport layer device matching code for device nodes
that indicates whether a device is unconfigured
- bump the CAM version from 0x10 to 0x11
- Change the CAM ioctls to use the version as their group code, so we can
force users to recompile code even when the CCB size doesn't change.
- add + fill in a new value in the path inquiry CCB, base_transfer_speed.
Remove a corresponding field from the cam_sim structure, and add code to
every SIM to set this field to the proper value.
- Fix the set transfer settings code in the transport layer.
scsi_cd.c:
- make some variables volatile instead of just casting them in various
places
- fix a race condition in the changer code
- attach unless we get a "logical unit not supported" error. This should
fix all of the cases where people have devices that return weird errors
when they don't have media in the drive.
scsi_da.c:
- attach unless we get a "logical unit not supported" error
scsi_pass.c:
- for immediate CCBs, just malloc a CCB to send the user request in. This
gets rid of the 'held' count problem in camcontrol tags.
scsi_pass.h:
- change the CAM ioctls to use the CAM version as their group code.
adv driver:
- Allow changing the sync rate and offset separately.
adw driver
- Allow changing the sync rate and offset separately.
aha driver:
- Don't return CAM_REQ_CMP for SET_TRAN_SETTINGS CCBs.
ahc driver:
- Allow setting offset and sync rate separately
bt driver:
- Don't return CAM_REQ_CMP for SET_TRAN_SETTINGS CCBs.
NCR driver:
- Fix the ultra/ultra 2 negotiation bug
- allow setting both the sync rate and offset separately
Other HBA drivers:
- Put code in to set the base_transfer_speed field for
XPT_GET_TRAN_SETTINGS CCBs.
Reviewed by: gibbs, mjacob (isp), imp (aha)
Notes:
svn path=/head/; revision=46581
|
| |
|
|
| |
Notes:
svn path=/head/; revision=46490
|
| |
|
|
|
|
|
| |
the isa bus doesn't clear the hints at that point.
Notes:
svn path=/head/; revision=45986
|
| |
|
|
| |
Notes:
svn path=/head/; revision=45984
|