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

FS デバイスの場合に Endpoint 0 の max packet size を動的に変更する #1

Open
uchan-nos opened this issue Oct 9, 2019 · 0 comments

Comments

@uchan-nos
Copy link
Owner

uchan-nos commented Oct 9, 2019

xHCI の規格では,FS のデバイスに関しては Device Descriptor の取得後に EP 0 の max packet size を変更しろと書いてある。

xHCI Spec "4.3 USB Device Initialization" の最後の方

ix) When a successful Transfer Event is returned for the GET_DESCRIPTOR Status Stage TRB system software shall update the Endpoint 0 Context Max Packet Size with wMaxPacketSize value returned in the Device Descriptor buffer, if the wMaxPacketSize value is different.

Device Descriptor には bMaxPacketSize0 はあるが wMaxPacketSize は無いので,上記の記述はおそらく誤植。bMaxPacketSize0 を元に Endpoint Context の設定を更新すれば良いだろう。更新には Evaluate Context Command を使う。

@uchan-nos uchan-nos changed the title Endpoint 0 の max packet size を変更する FS デバイスの場合に Endpoint 0 の max packet size を動的に変更する Oct 9, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant