Fix: Returning always error at submitting acl RX frames(Mika Lindqvist)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26688 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
@@ -246,18 +246,18 @@ resubmit:
|
|||||||
status_t
|
status_t
|
||||||
submit_rx_event(bt_usb_dev* bdev)
|
submit_rx_event(bt_usb_dev* bdev)
|
||||||
{
|
{
|
||||||
status_t err;
|
status_t status;
|
||||||
size_t size = bdev->max_packet_size_intr_in;
|
size_t size = bdev->max_packet_size_intr_in;
|
||||||
void* buf = alloc_room(&bdev->eventRoom, size);
|
void* buf = alloc_room(&bdev->eventRoom, size);
|
||||||
|
|
||||||
if (buf == NULL)
|
if (buf == NULL)
|
||||||
return ENOMEM;
|
return ENOMEM;
|
||||||
|
|
||||||
err = usb->queue_interrupt(bdev->intr_in_ep->handle,
|
status = usb->queue_interrupt(bdev->intr_in_ep->handle,
|
||||||
buf, size ,
|
buf, size ,
|
||||||
event_complete, (void*) bdev);
|
event_complete, (void*) bdev);
|
||||||
if (err != B_OK ) {
|
if (status != B_OK ) {
|
||||||
reuse_room(&bdev->eventRoom, buf);
|
reuse_room(&bdev->eventRoom, buf); // reuse allocated one
|
||||||
bdev->stat.rejectedRX++;
|
bdev->stat.rejectedRX++;
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
@@ -265,7 +265,7 @@ submit_rx_event(bt_usb_dev* bdev)
|
|||||||
debugf("Accepted RX Event %d\n", bdev->stat.acceptedRX);
|
debugf("Accepted RX Event %d\n", bdev->stat.acceptedRX);
|
||||||
}
|
}
|
||||||
|
|
||||||
return err;
|
return status;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -273,25 +273,25 @@ status_t
|
|||||||
submit_rx_acl(bt_usb_dev* bdev)
|
submit_rx_acl(bt_usb_dev* bdev)
|
||||||
{
|
{
|
||||||
|
|
||||||
status_t err;
|
status_t status;
|
||||||
size_t size = max(HCI_MAX_FRAME_SIZE,bdev->max_packet_size_bulk_in);
|
size_t size = max(HCI_MAX_FRAME_SIZE,bdev->max_packet_size_bulk_in);
|
||||||
void* buf = alloc_room(&bdev->aclRoom, size);
|
void* buf = alloc_room(&bdev->aclRoom, size);
|
||||||
|
|
||||||
if (buf == NULL)
|
if (buf == NULL)
|
||||||
return ENOMEM;
|
return ENOMEM;
|
||||||
|
|
||||||
err = usb->queue_bulk(bdev->bulk_in_ep->handle, buf, size ,
|
status = usb->queue_bulk(bdev->bulk_in_ep->handle, buf, size ,
|
||||||
acl_rx_complete, bdev);
|
acl_rx_complete, bdev);
|
||||||
|
|
||||||
if (err != B_OK ) {
|
if (status != B_OK ) {
|
||||||
reuse_room(&bdev->aclRoom, buf);
|
reuse_room(&bdev->aclRoom, buf); // reuse allocated
|
||||||
bdev->stat.rejectedRX++;
|
bdev->stat.rejectedRX++;
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
bdev->stat.acceptedRX++;
|
bdev->stat.acceptedRX++;
|
||||||
}
|
}
|
||||||
|
|
||||||
return B_ERROR;
|
return status;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user