Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

nrf52: reel_board: USB unable to send fragmented packets through Control endpoint #11232

Closed
finikorg opened this issue Nov 9, 2018 · 9 comments
Assignees
Labels
area: USB Universal Serial Bus bug The issue is a bug, or the PR is fixing a bug platform: nRF Nordic nRFx priority: medium Medium impact/importance bug

Comments

@finikorg
Copy link
Collaborator

finikorg commented Nov 9, 2018

When testing issue with wpanusb I noticed that after Host sends more then 64 bytes through Control endpoint communication stalls.
@mike-scott

@carlescufi
Copy link
Member

Assigned to @pawelzadrozniak so he can take a look.

@carlescufi carlescufi added bug The issue is a bug, or the PR is fixing a bug priority: medium Medium impact/importance bug area: USB Universal Serial Bus platform: nRF Nordic nRFx labels Nov 9, 2018
@finikorg
Copy link
Collaborator Author

finikorg commented Nov 9, 2018

image

@henrikbrixandersen henrikbrixandersen changed the title nrf82: reel_board: USB unable to send fragmented packets through Control endpoint nrf52: reel_board: USB unable to send fragmented packets through Control endpoint Nov 10, 2018
@pawelzadrozniak
Copy link
Collaborator

I cannot reproduce the problem. CPU hangs in radio IRQ handler after "iwpan phy $PHY set channel 0 26".

@finikorg
Copy link
Collaborator Author

I cannot reproduce the problem. CPU hangs in radio IRQ handler after "iwpan phy $PHY set channel 0 26".

Do you mean Linux hangs? BTW: have you disabled Bluetooth? Looks like reel_board always include BT in every project ;)

@jfischer-no
Copy link
Collaborator

Do you mean Linux hangs? BTW: have you disabled Bluetooth? Looks like reel_board always include BT in every project ;)

😄 well, like other NRF based boards:
boards/arm/reel_board/reel_board_defconfig:24:CONFIG_BT_CTLR=y

@finikorg
Copy link
Collaborator Author

@carlescufi that always enabling Bluetooth, is this a bug?
@pawelzadrozniak after disabling BT do you have it working?

@carlescufi
Copy link
Member

@finikorg

that always enabling Bluetooth, is this a bug?

Well, we do the same for all nRF-based boards. That said this might not be ideal, but in any case we would need to revisit all the boards, so this is outside the scope of this issue.

@finikorg
Copy link
Collaborator Author

Is this correct that BT does not work with 802.15.4 and the board crashes when both are enabled?

@carlescufi
Copy link
Member

Is this correct that BT does not work with 802.15.4 and the board crashes when both are enabled?

Yes, this is correct since both access the radio and are not coordinated.

pawelzadrozniak added a commit to pawelzadrozniak/zephyr that referenced this issue Nov 29, 2018
Fragmented long CTRL OUT transfers does not work properly, because
they were not handler properly by the shim. In such transfers,
a special call (nrfx_usbd_setup_data_clear()) must be performed
before every data packet and not just before the first one.
This patch adds a byte counter which is set while processing setup
packet (host->device only) to be able to decide whether there will
be more data packets coming (and to call_data_clear() or not).

Fixes zephyrproject-rtos#11232 .

Signed-off-by: Paweł Zadrożniak <pawel.zadrozniak@nordicsemi.no>
carlescufi pushed a commit that referenced this issue Dec 3, 2018
Fragmented long CTRL OUT transfers does not work properly, because
they were not handler properly by the shim. In such transfers,
a special call (nrfx_usbd_setup_data_clear()) must be performed
before every data packet and not just before the first one.
This patch adds a byte counter which is set while processing setup
packet (host->device only) to be able to decide whether there will
be more data packets coming (and to call_data_clear() or not).

Fixes #11232 .

Signed-off-by: Paweł Zadrożniak <pawel.zadrozniak@nordicsemi.no>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area: USB Universal Serial Bus bug The issue is a bug, or the PR is fixing a bug platform: nRF Nordic nRFx priority: medium Medium impact/importance bug
Projects
None yet
Development

No branches or pull requests

4 participants