Thread (12 messages) 12 messages, 3 authors, 2021-01-19

Re: [PATCH v5] usb: xhci-mtk: fix unreleased bandwidth data

From: Ikjoon Jang <hidden>
Date: 2021-01-08 10:51:24
Also in: linux-arm-kernel, linux-mediatek, lkml

On Fri, Jan 8, 2021 at 2:34 PM Chunfeng Yun [off-list ref] wrote:
On Tue, 2020-12-29 at 14:24 +0800, Ikjoon Jang wrote:
quoted
xhci-mtk has hooks on add_endpoint() and drop_endpoint() from xhci
to handle its own sw bandwidth managements and stores bandwidth data
into internal table every time add_endpoint() is called,
so when bandwidth allocation fails at one endpoint, all earlier
allocation from the same interface could still remain at the table.
If failed to add an endpoint, will cause failure of its interface
config, then the other endpoints in the same interface will be dropped
later? you mean some endpoints in an interface may fail but without
affecting its function?
Yes, drop_endpoint() is called for a failed interface when set_interface()
fails to switch alt settings, but set_configuration() does not call
drop_endpoint().
TT data seems to remain allocated until a device gets removed.
quoted
This patch adds two more hooks from check_bandwidth() and
reset_bandwidth(), and make mtk-xhci to releases all failed endpoints
from reset_bandwidth().

Fixes: 08e469de87a2 ("usb: xhci-mtk: supports bandwidth scheduling with multi-TT")
Signed-off-by: Ikjoon Jang <redacted>
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help