BusHound Get stall pid when host send "SET FEATURE" CTL command

Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
xixu_4093676
Level 3
Level 3
25 replies posted 10 replies posted 10 questions asked

When my fx3 device is tested for long time, I can observe number "stall pid" when pc host send "SET FEATURE" Control command.

For detail, please refer to the attached for screen shot.IMG_4330.JPG

But the SetupCB(CyU3vinUSBSetupCB) not been called, It seem like the API Library is return stall event.

I just want to know what's cause the issues?

0 Likes
1 Solution
Hemanth
Moderator
Moderator
Moderator
First like given First question asked 750 replies posted

Hi,

Referring to Section 9.4.9 of USB 3.1 specification,

1. A SetFeature() request that references a feature that cannot be set or that does not exist causes a STALL Transaction Packet to be returned in the Status stage of the request.

2. Only device feature selector values may be used when the recipient is a device.

Table 9.7 mentioned about the feature values for the targets - Device/Endpoint/Interface:

pastedImage_2.png

In the Bus hound trace, you have shared, wValue is 0x0000 for Device Recipient - which is not valid feature selector. So, STALL is expected.

For SET_FEATURE request, when the target is Device, and if the feature selector is not 3 or 4 (referring to above table), then the same request will be handled by SDK and the SetupCB will not be raised.

Regards,

Hemanth

Hemanth

View solution in original post

0 Likes
3 Replies
Hemanth
Moderator
Moderator
Moderator
First like given First question asked 750 replies posted

Hi,

Referring to Section 9.4.9 of USB 3.1 specification,

1. A SetFeature() request that references a feature that cannot be set or that does not exist causes a STALL Transaction Packet to be returned in the Status stage of the request.

2. Only device feature selector values may be used when the recipient is a device.

Table 9.7 mentioned about the feature values for the targets - Device/Endpoint/Interface:

pastedImage_2.png

In the Bus hound trace, you have shared, wValue is 0x0000 for Device Recipient - which is not valid feature selector. So, STALL is expected.

For SET_FEATURE request, when the target is Device, and if the feature selector is not 3 or 4 (referring to above table), then the same request will be handled by SDK and the SetupCB will not be raised.

Regards,

Hemanth

Hemanth
0 Likes

Hi,

I make some change on fx3 firmware source.

Now I don't see the stall pid with set feature.

bus_hound.png

But there are one Bulk-In Read timeout occur from  windows host driver debug message, when host request set feature .

Can you please give me any guidelines on the issues?

0 Likes
Hemanth
Moderator
Moderator
Moderator
First like given First question asked 750 replies posted

Hi,

As I have mentioned in my previous post, sending SET_FEATURE request(to target - Device) with wValue - 0x0000 should be responded with STALL as per 3.1 specification.

Please let me know what changes you have made?

Regards,

Hemanth

Hemanth
0 Likes