diff options
| author | Mayank Rana <mrana@codeaurora.org> | 2016-06-08 18:08:48 -0700 |
|---|---|---|
| committer | Gerrit - the friendly Code Review server <code-review@localhost> | 2016-07-12 15:32:10 -0700 |
| commit | 5e840b3bc928b35bdeafe6a909856eba9da88d01 (patch) | |
| tree | b42d16f2a32b3833d541d615de5b983d0ef28230 /tools/perf/scripts/python | |
| parent | 400520a6e2f06cc7c45e386e769a85d4aded565b (diff) | |
usb: gadget: f_gsi: Increase USB GSI OUT TRBs from 7 to 31 for ECM
USB bus suspend with remote wakeup allowed case:
1. SUSPEND interrupt received from controller on USB bus suspend
2. gsi_suspend() blocks ringing of doorbell by USB controller to IPA GSI
and schedule usb_ipa_w work with event EVNT_SUSPEND
3. ipa_work_handler() work handler makes sure that USB GSI interface is
into IDLE state and calls ipa_usb_xdci_suspend() to put IPA GSI related
channel into suspend state and allow turning of IPA's clock
5. ipa_work_handler() decrements PM usage count, allow USB to go into LPM
6. USB controller driver turns off USB clocks and put into LPM
USB bus resume with remote wakeup allowed case:
1. WAKEUP interrupt received from controller on USB bus resume
2. USB controller driver turns on USB clocks
3. gsi_resume() increments PM usage count and schedule usb_ipa_w work with
event EVENT_RESUME
4. ipa_work_handler() work handler calls ipa_usb_xdci_resume() to resume
IPA GSI related channel and turning on IPA's clock
5. ipa_work_handler() unblocks ringing of doorbell by USB controller to
IPA GSI
In above USB bus resume case using specific host with ECM functionality,
host is able to send PING or data packets equal to prepared number of TRBs
(currently 7) on USB EP OUT successfully before above resume step 5 then
GSI ignores rang doorbell as WRITE pointer updating last consumed TRB is
already gone through full cycle. This results into data stall. Hence to fix
this issue increase number of TRBs used with USB OUT endpoint from 7 to 31
for USB ECM function with GSI accelerated path. This helps to have always
pending TRBs with USB controller and ringing of doorbell is not missed by
GSI once above resume step 5 is completed.
Also ECM doesn't support aggregation. Hence fix out aggregation size param.
CRs-Fixed: 1023149
Change-Id: Ife0f265b65fda92a99f5170154da6cb4c6b113b7
Signed-off-by: Mayank Rana <mrana@codeaurora.org>
Diffstat (limited to 'tools/perf/scripts/python')
0 files changed, 0 insertions, 0 deletions
