summaryrefslogtreecommitdiff
path: root/drivers/mxc/gpu-viv
diff options
context:
space:
mode:
authorLi Jun <jun.li@nxp.com>2019-10-29 17:40:25 +0800
committerLi Jun <jun.li@nxp.com>2019-11-07 18:31:22 +0800
commita585bfca2b00744147b609927efa955239122c01 (patch)
tree5973fac65eb1af058881a22ab318ce7d909a7488 /drivers/mxc/gpu-viv
parentfbfcc986b16cf89d12079e5cdaab32fcc2602bd9 (diff)
MLK-22675 usb: dwc3: host: disable park mode for super speed
- Advantage of park mode Only when only a single Async endpoint is active. - Behavior of park mode 1. The controller prefetches data/TRBs to do 3 * burst_size worth of packets. 2. When park mode is disabled there will be some delay between bursts on the USB. This can be avoided if park mode is enabled in cases of only one endpoint is active. 3. But this delay is significant only with systems of large latencies. 4. We have noticed that in cases where a device NAKs often, it tends to bring down the performance for a single endpoint case. - With the above considerations, we think that park mode is not really useful even in single endpoint case. - Issue on "park mode" 1. LSP (List Processor) goes in and out of park mode irrespective of the fact that there are more endpoints active. #LSP consider that there is only one endpoint active. 2. This causes master scheduler and transaction handlers to think that they are in park mode even though they are not. This is because request to transaction handlers, generated by HSCH is in park mode when the request is made 3. This causes a case where the master scheduler calculates wrongly the number of TRB cache space available. 4. Because of the wrongly calculated number of TRB spaces, the core fetches more TRBS than there is space for. 5. This causes overwriting the TRB cache area into the TRQ cache area which is next to the TRB cache area. 6. This causes invalidating an entry in the TRQ 7. This causes transaction handlers to ignore a request in the TRQ which it should have processed. 8. This causes the main scheduler to hang because it is waiting for status from transaction handler. 9. This causes host controller to hang. - Work Around : disabling park mode for super speed by setting GUCTL1[17] to be 1. I don't see performance drop of SS for the WA only by mass storage test, but I do see performance drop about 5%-6% on high speed data read and write, so the WA is only disable park mode for super speed connection, the new feedback from Synopsys is this park mode issue only effect super speed transfer. Reviewed-by: Peter Chen <peter.chen@nxp.com> Signed-off-by: Li Jun <jun.li@nxp.com> (cherry picked from commit 96fb1665bf909e19b1b80dd44cbc109ecbec7b42)
Diffstat (limited to 'drivers/mxc/gpu-viv')
0 files changed, 0 insertions, 0 deletions