#
444b9186 |
| 02-Aug-2009 |
Attilio Rao <attilio@FreeBSD.org> |
Make the newbus subsystem Giant free by adding the new newbus sxlock. The newbus lock is responsible for protecting newbus internIal structures, device states and devclass flags. It is necessary to h
Make the newbus subsystem Giant free by adding the new newbus sxlock. 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 <giovanni dot trematerra at gmail dot com>, Brandon Gooch <jamesbrandongooch at gmail dot com> Sponsored by: Yahoo! Incorporated Approved by: re (ksmith)
show more ...
|
#
bd73b187 |
| 30-Jul-2009 |
Alfred Perlstein <alfred@FreeBSD.org> |
USB core: - add support for defragging of written device data. - improve handling of alternate settings in device side mode. - correct return value from usbd_get_no_alts() function. - reported by: HP
USB core: - add support for defragging of written device data. - improve handling of alternate settings in device side mode. - correct return value from usbd_get_no_alts() function. - reported by: HPS - P4 ID: 166156, 166168
- report USB device release information to devd and pnpinfo. - reported by: MIHIRA Sanpei Yoshiro - P4 ID: 166221
Submitted by: hps Approved by: re
show more ...
|
#
09c817ba |
| 03-Jul-2009 |
Oleksandr Tymoshenko <gonzo@FreeBSD.org> |
- MFC
|
#
ed6d949a |
| 23-Jun-2009 |
Andrew Thompson <thompsa@FreeBSD.org> |
- Make struct usb_xfer opaque so that drivers can not access the internals - Reduce the number of headers needed for a usb driver, the common case is just usb.h and usbdi.h
|
#
a593f6b8 |
| 15-Jun-2009 |
Andrew Thompson <thompsa@FreeBSD.org> |
s/usb2_/usb_|usbd_/ on all function names for the USB stack.
|
#
7e857dd1 |
| 12-Jun-2009 |
Oleksandr Tymoshenko <gonzo@FreeBSD.org> |
- Merge from HEAD
|
#
ae60fdfb |
| 07-Jun-2009 |
Andrew Thompson <thompsa@FreeBSD.org> |
Rename usb pipes to endpoints as it better represents what they are, and struct usb_pipe may be used for a different purpose later on.
|
#
f9cb546c |
| 30-May-2009 |
Andrew Thompson <thompsa@FreeBSD.org> |
Revert the size_t part of the last commit for the moment, this blows up the USB_ADD_BYTES macro.
|
#
e0a69b51 |
| 29-May-2009 |
Andrew Thompson <thompsa@FreeBSD.org> |
s/usb2_/usb_/ on all typedefs for the USB stack.
|
#
760bc48e |
| 28-May-2009 |
Andrew Thompson <thompsa@FreeBSD.org> |
s/usb2_/usb_/ on all C structs for the USB stack.
|
#
c86aead6 |
| 28-May-2009 |
Andrew Thompson <thompsa@FreeBSD.org> |
Allocate the usb serial, manufacturer and product strings rather than use char arrays in the usb_device struct. This also eliminates USB_HAVE_STRINGS.
|
#
2e370a5c |
| 26-May-2009 |
Oleksandr Tymoshenko <gonzo@FreeBSD.org> |
Merge from HEAD
|
#
9360ae40 |
| 21-May-2009 |
Andrew Thompson <thompsa@FreeBSD.org> |
Rename the usb sysctl tree from hw.usb2.* back to hw.usb.*.
Submitted by: Hans Petter Selasky
|
#
8d2dd5dd |
| 21-May-2009 |
Andrew Thompson <thompsa@FreeBSD.org> |
Use enums for speed and rev data types.
|
#
f29a0724 |
| 21-May-2009 |
Andrew Thompson <thompsa@FreeBSD.org> |
- rename usb2_mode to usb_mode [1] - change variable types to use the enum
Submitted by: Hans Petter Selasky [1]
|
#
e7153b25 |
| 07-May-2009 |
Oleksandr Tymoshenko <gonzo@FreeBSD.org> |
Merge from HEAD
|
#
6b1bca02 |
| 05-May-2009 |
Andrew Thompson <thompsa@FreeBSD.org> |
Remove USB shutdown methods from device drivers as its the host controllers responsibility to detach the bus.
PR: usb/133896 Submitted by: Hans Petter Selasky
|
#
ec8f3127 |
| 05-May-2009 |
Andrew Thompson <thompsa@FreeBSD.org> |
Revert part of r191494 which used the udev state to mark suspending, this needs to be set via two variables (peer_suspended and self_suspended) and can not be merged into one.
Submitted by: Hans Pet
Revert part of r191494 which used the udev state to mark suspending, this needs to be set via two variables (peer_suspended and self_suspended) and can not be merged into one.
Submitted by: Hans Petter Selasky Pointy hat: me
show more ...
|
Revision tags: release/7.2.0_cvs, release/7.2.0 |
|
#
bd216778 |
| 25-Apr-2009 |
Andrew Thompson <thompsa@FreeBSD.org> |
Track the usb device state as its powered on, addressed and configured. This helps to avoid touching the device when it is not going to respond and would otherwise timeout.
Implement the suspend tra
Track the usb device state as its powered on, addressed and configured. This helps to avoid touching the device when it is not going to respond and would otherwise timeout.
Implement the suspend tracking as a udev state too.
show more ...
|
#
8ac08646 |
| 22-Apr-2009 |
Andrew Thompson <thompsa@FreeBSD.org> |
MFp4 //depot/projects/usb@160485
Fix a bug in the USB power daemon code where connection of multiple HUBs in series would result in incorrect device suspend.
Reported by: Nicolas xxx@wanadoo.fr Sub
MFp4 //depot/projects/usb@160485
Fix a bug in the USB power daemon code where connection of multiple HUBs in series would result in incorrect device suspend.
Reported by: Nicolas xxx@wanadoo.fr Submitted by: Hans Petter Selasky
show more ...
|
#
495f25ce |
| 22-Apr-2009 |
Andrew Thompson <thompsa@FreeBSD.org> |
MFp4 //depot/projects/usb@160413
Use direct reference to parent high-speed HUB instead of indirect, due to pointer clearing race at detach of parent USB HUB.
Reported by: kientzle Submitted by: Han
MFp4 //depot/projects/usb@160413
Use direct reference to parent high-speed HUB instead of indirect, due to pointer clearing race at detach of parent USB HUB.
Reported by: kientzle Submitted by: Hans Petter Selasky PR: usb/133545
show more ...
|
#
9c797940 |
| 13-Apr-2009 |
Oleksandr Tymoshenko <gonzo@FreeBSD.org> |
- Merge from HEAD
|
#
fde87526 |
| 06-Apr-2009 |
Andrew Thompson <thompsa@FreeBSD.org> |
Provide a better commit log for r190735, forced by making a whitespace change.
Refactor how we interface with the root HUB. This is achieved by making a direct call from usb2_do_request to the host
Provide a better commit log for r190735, forced by making a whitespace change.
Refactor how we interface with the root HUB. This is achieved by making a direct call from usb2_do_request to the host controller for root hub requests, this call will perform the controller specific register read/writes and return the error code.
This cuts out a lot of code in the host controller files and saves one thread per USB bus.
Submitted by: Hans Petter Selasky
show more ...
|
#
39307315 |
| 05-Apr-2009 |
Andrew Thompson <thompsa@FreeBSD.org> |
MFp4 //depot/projects/usb@159922
Refactor how we interface with the root HUB. This cuts around 1200 lines of code totally and saves one thread per USB bus.
Submitted by: Hans Petter Selasky
|
#
4eae601e |
| 05-Apr-2009 |
Andrew Thompson <thompsa@FreeBSD.org> |
MFp4 //depot/projects/usb@159909
- make usb2_power_mask_t 16-bit - remove "usb2_config_sub" structure from "usb2_config". To compensate for this "usb2_config" has a new field called "usb_mode" whi
MFp4 //depot/projects/usb@159909
- make usb2_power_mask_t 16-bit - remove "usb2_config_sub" structure from "usb2_config". To compensate for this "usb2_config" has a new field called "usb_mode" which select for which mode the current xfer entry is active. Options are: a) Device mode only b) Host mode only (default-by-zero) c) Both modes. This change was scripted using the following sed script: "s/\.mh\././g". - the standard packet size table in "usb_transfer.c" is now a function, hence the code for the function uses less memory than the table itself.
Submitted by: Hans Petter Selasky
show more ...
|