Misc uasp (#93)
Update the CHANGES file. Syntax changes in uasp as requested a while back.
This commit is contained in:
parent
08d44208fc
commit
b0dbbe884a
@ -13,7 +13,7 @@ Brief summary :
|
||||
Enhanced magic breakpoint capabilities. Refer to user documentation for more details.
|
||||
- Updated Bochs instrumentation examples for new disassembler introduced in Bochs 2.7 release
|
||||
- USB: Fixed/added USB 2.0 Compliance to all devices. Hub still needs a few additions
|
||||
- USB: xHCI: added the ability to have more than one model of xHCI hardware. Currently there are two
|
||||
- USB: xHCI: added the ability to have more than one model of xHCI hardware. Currently there are two.
|
||||
- USB: Added experimental MSD UASP emulation
|
||||
- Disk images: Allows large VHD image files
|
||||
- Documentation updates and fixes
|
||||
@ -59,50 +59,51 @@ Detailed change log :
|
||||
- Fixed Voodoo device compilation for big endian architectures
|
||||
|
||||
- USB
|
||||
- USB: SCSI: added the Event Status command (0x4a).
|
||||
- USB: SCSI: added BX_DEBUG checks to the command sent by the Guest.
|
||||
- USB: SCSI: added the block_size in the Read Capacity command (0x25).
|
||||
- USB: SCSI: added some 0x9E/xx commands. ReadCapacity(16).
|
||||
- USB: UHCI: re-wrote the uhci stack to better support control/bulk reclamation.
|
||||
- USB: UHCI: check that a reset doesn't clear the CSC bit during a reset, but should after the reset is complete.
|
||||
- USB: added the ability to change interfaces (ex: BBB to UASP).
|
||||
- USB: added the Toggle bit check to all controllers/devices. (optional with a #define)
|
||||
- USB: added the ability to trigger an over-current to all controllers.
|
||||
- USB: added numberous BX_DEBUG checks to the USB_COMMON emulation to help show bugs in a Guest's device driver.
|
||||
- USB: added BX_DEBUG if the first requested packet after a reset is not 8 bytes.
|
||||
- USB: added a BX_DEBUG check to make sure the speed indicator is correct within TDs.
|
||||
- USB: added BX_DEBUG checks to all request lengths, max packet size, and other length checks.
|
||||
- USB: return default speed of device/controller combination.
|
||||
- USB: check that the bochsrc file doesn't specify two different devices for the same port.
|
||||
- USB: check that the bochsrc file has a super-speed device defined on a correct port number.
|
||||
- USB: re-wrote how the USB_COMMON passed on packets to allow for zero-length packets to be accepted.
|
||||
- USB: HID: added multiple mouse modes to have different HID Reports, including a physical report, and an irregular report.
|
||||
- USB: HID: added the Boot Protocol function.
|
||||
- USB: HUB: fixed/Added a more accurate DeviceRemovable emulation.
|
||||
- USB: HUB: Allow USB 1.0 or USB 1.1 emulation (there is a difference).
|
||||
- USB: HUB: Add bit 0 function to the returned report (change status bit).
|
||||
- USB: HUB: Some Guests think a NAK on the Interrupt EP is an error. (option to ignore this)
|
||||
- USB: Floppy: Fixed the CBI/CB configuration descriptor.
|
||||
- USB: Fixed/added USB 2.0 Compliance to all devices. Hub still needs a few additions.
|
||||
- Added the ability to change interfaces (ex: BBB to UASP).
|
||||
- Added the Toggle bit check to all controllers/devices. (optional with a #define)
|
||||
- Added the ability to trigger an over-current to all controllers.
|
||||
- Added numberous BX_DEBUG checks to the USB_COMMON emulation to help show bugs in a Guest's device driver.
|
||||
- Added BX_DEBUG if the first requested packet after a reset is not 8 bytes.
|
||||
- Added a BX_DEBUG check to make sure the speed indicator is correct within TDs.
|
||||
- Added BX_DEBUG checks to all request lengths, max packet size, and other length checks.
|
||||
- Return default speed of device/controller combination.
|
||||
- Check that the bochsrc file doesn't specify two different devices for the same port.
|
||||
- Check that the bochsrc file has a super-speed device defined on a correct port number.
|
||||
- Re-wrote how the USB_COMMON passed on packets to allow for zero-length packets to be accepted.
|
||||
- Fixed the Floppy CBI/CB configuration descriptor.
|
||||
- Fixed/added USB 2.0 Compliance to all devices. Hub still needs a few additions.
|
||||
- Floppies (using the CB/CBI protocol) can only be full-speed.
|
||||
- Fixed the Endpoint Clear Feature request (halted, etc.).
|
||||
- Added the Endpoint Get Status request to each device.
|
||||
- Hub power switching emulation.
|
||||
- Fixed the return/request error on Device Qualifier requests.
|
||||
- Fixed Device Qualifier and Other Speed requests.
|
||||
- USB: MSD: fixed USB 2.0 only descriptor emulation. (Device Qualifier, etc.)
|
||||
- USB: OHCI: fixed the toggle emulation.
|
||||
- USB: added the ability to catch 0xEE descriptors (Microsoft specific).
|
||||
- USB: xHCI: added the ability to have more than one model of xHCI hardware. Currently there are two.
|
||||
- USB: xHCI: added the ability to indicate the port count.
|
||||
- USB: xHCI: check the USB2 and USB3 port assignments.
|
||||
- USB: xHCI: added experimental Stream emulation.
|
||||
- USB: added experimental MSD UASP emulation.
|
||||
- USB: xHCI: added the (vendor) Dump Controller command (Specific to Bochs).
|
||||
- USB: xHCI: added checks to the Evaluate Context and Address Device commands.
|
||||
- USB: xHCI: fixed/updated the Port Status Change Event emulation.
|
||||
- USB: xHCI: fixed/updated the port bandwidth emulation.
|
||||
- USB: Many documentation additions.
|
||||
- Added hints to the xHCI configuration Port Option display.
|
||||
- Added the ability to catch 0xEE descriptors (Microsoft specific).
|
||||
- Added experimental MSD UASP emulation.
|
||||
- HID: added multiple mouse modes to have different HID Reports, including a physical report, and an irregular report.
|
||||
- HID: added the Boot Protocol function.
|
||||
- HUB: fixed/Added a more accurate DeviceRemovable emulation.
|
||||
- HUB: Allow USB 1.0 or USB 1.1 emulation (there is a difference).
|
||||
- HUB: Add bit 0 function to the returned report (change status bit).
|
||||
- HUB: Some Guests think a NAK on the Interrupt EP is an error. (option to ignore this)
|
||||
- MSD: fixed USB 2.0 only descriptor emulation. (Device Qualifier, etc.)
|
||||
- OHCI: fixed the toggle emulation.
|
||||
- SCSI: added the Event Status command (0x4a).
|
||||
- SCSI: added BX_DEBUG checks to the command sent by the Guest.
|
||||
- SCSI: added the block_size in the Read Capacity command (0x25).
|
||||
- SCSI: added some 0x9E/xx commands. ReadCapacity(16).
|
||||
- UHCI: re-wrote the uhci stack to better support control/bulk reclamation.
|
||||
- UHCI: check that a reset doesn't clear the CSC bit during a reset, but should after the reset is complete.
|
||||
- xHCI: added the ability to have more than one model of xHCI hardware. Currently there are two.
|
||||
- xHCI: added the ability to indicate the port count.
|
||||
- xHCI: check the USB2 and USB3 port assignments.
|
||||
- xHCI: added experimental Stream emulation.
|
||||
- xHCI: added the (vendor) Dump Controller command (Specific to Bochs).
|
||||
- xHCI: added checks to the Evaluate Context and Address Device commands.
|
||||
- xHCI: fixed/updated the Port Status Change Event emulation.
|
||||
- xHCI: fixed/updated the port bandwidth emulation.
|
||||
- Many documentation additions.
|
||||
|
||||
- HPET
|
||||
- Bugfixes in HPET emulation
|
||||
|
@ -147,7 +147,6 @@ struct S_UASP_INPUT {
|
||||
int usb_msd_device_c::uasp_handle_data(USBPacket *p)
|
||||
{
|
||||
int ret = 0;
|
||||
Bit8u *data = p->data;
|
||||
int len = p->len;
|
||||
int index = p->strm_pid; // high-speed device will be zero. super-speed device will have the stream id.
|
||||
|
||||
@ -497,7 +496,7 @@ int usb_msd_device_c::uasp_process_request(USBPacket *p, int index)
|
||||
}
|
||||
|
||||
// check to make sure the direction is correct
|
||||
if (p->pid != UASP_GET_DIR(req->mode)) {
|
||||
if (p->pid != (int) UASP_GET_DIR(req->mode)) {
|
||||
BX_ERROR(("Found packet with wrong direction."));
|
||||
uasp_do_stall(req);
|
||||
}
|
||||
@ -578,7 +577,7 @@ int usb_msd_device_c::uasp_do_status(UASPRequest *req, USBPacket *p)
|
||||
// nothing
|
||||
} else if (req->result == STATUS_CHECK_CONDITION) {
|
||||
status->stat_qual = 0;
|
||||
if (p->len >= sizeof(struct S_UASP_STATUS)) {
|
||||
if (p->len >= (int) sizeof(struct S_UASP_STATUS)) {
|
||||
// do a REQUEST SENSE command
|
||||
static Bit8u request_sense[6] = { 0x03, 0, 0, 0, 18, 0 };
|
||||
UASPRequest *r = &s.uasp_request[UASP_MAX_STREAMS_N];
|
||||
|
Loading…
Reference in New Issue
Block a user