{"push_id":823779215,"size":9,"distinct_size":9,"ref":"refs/heads/master","head":"9951f9845da89d3390a63780f18ef53d0cb2a3d0","before":"788ff2c06ca08d76ce8f8b29187464d62648d44c","commits":[{"sha":"14d0a314026476041a8dcd5d1541043448b00005","author":{"email":"368f4b747311b74428d4ba7c66c6221d6a2851cf@baylibre.com","name":"Alexandre Bailon"},"message":"DWC OTG driver: add a new queue macro\n\nAdd DWC_CIRCLEQ_ENTRY_IN_QUEUE macro to test if an\nentry is in a queue.\n\nTesting Done: trivial\nBug Number: SW-1006\nReview URL: https://reviews.leaflabs.com/r/1563/\nReviewed by: fparent\n\nSigned-off-by: Alexandre Bailon <abailon@baylibre.com>","distinct":true,"url":"https://api.github.com/repos/projectara/nuttx/commits/14d0a314026476041a8dcd5d1541043448b00005"},{"sha":"06de0277f3bc25e582380c3ddff93c84fea5709d","author":{"email":"368f4b747311b74428d4ba7c66c6221d6a2851cf@baylibre.com","name":"Alexandre Bailon"},"message":"DWC USB OTG: add a circular list of request\n\nCurrently, pending request are pushed in a queue and\nare poped as soon the transfer has complete.\nAdd circular list in order to keep request until we are\ncanceling them.\n\nTesting Done:\n- Use loopback-perf tool to mesaure performances with and without the serie:\n  no performances changes\n- Use usb_test to stress test: no issue except sometime there are out of requests on\n  UniPro rx path (not related to this serie).\nBug Number: sw-1006\nReview URL: https://reviews.leaflabs.com/r/1563/\nReviewed by: fparent\n\nSigned-off-by: Alexandre Bailon <abailon@baylibre.com>","distinct":true,"url":"https://api.github.com/repos/projectara/nuttx/commits/06de0277f3bc25e582380c3ddff93c84fea5709d"},{"sha":"ab3b3dd3efbdab48a9ea348aec07ae57f68952f2","author":{"email":"368f4b747311b74428d4ba7c66c6221d6a2851cf@baylibre.com","name":"Alexandre Bailon"},"message":"DWC USB OTG: Add method to manage circular list of requests\n\nAdd methods to add or remove request from circular list.\n\ndwc_otg_pcd_queue_req() is going to be called on any request\nsubmit. This method should only add the request to circular list\nif the request is new (not already in list).\nThat is expected that USB gadget will submit again and again\nthe same request because there are preallocated for bulk out endpoints,\nand the USB gadget re submit the request on completion.\n\ndwc_otg_pcd_dequeue_req() will only be used if USB gadget\ncancel the request, ie if the USB gadget is unloading the USB device\n(only true for bulk out endpoints).\n\nTesting Done:\n- Use loopback-perf tool to mesaure performances with and without the serie:\n  no performances changes\n- Use usb_test to stress test: no issue except sometime there are out of requests on\n  UniPro rx path (not related to this serie).\nBug Number: sw-1006\nReview URL: https://reviews.leaflabs.com/r/1563/\nReviewed by: fparent\n\nSigned-off-by: Alexandre Bailon <abailon@baylibre.com>","distinct":true,"url":"https://api.github.com/repos/projectara/nuttx/commits/ab3b3dd3efbdab48a9ea348aec07ae57f68952f2"},{"sha":"57f1d680f7f5e728d45e6476c69942b8065fcdf7","author":{"email":"368f4b747311b74428d4ba7c66c6221d6a2851cf@baylibre.com","name":"Alexandre Bailon"},"message":"DWC USB OTG: use circular list of request\n\nGet request from circular buffer instead of allocating a new one\nevery time.\nOnly allocate a request only if the request buffer (from gadget)\nhas never been used (not in circular list).\nOn completion, the request is not free. The request will be free\non request cancellation.\n\nTesting Done:\n- Use loopback-perf tool to mesaure performances with and without the serie:\n  no performances changes\n- Use usb_test to stress test: no issue except sometime there are out of requests on\n  UniPro rx path (not related to this serie).\nBug Number: sw-1006\nReview URL: https://reviews.leaflabs.com/r/1566/\nReviewed by: fparent\n\nSigned-off-by: Alexandre Bailon <abailon@baylibre.com>","distinct":true,"url":"https://api.github.com/repos/projectara/nuttx/commits/57f1d680f7f5e728d45e6476c69942b8065fcdf7"},{"sha":"d3ff3ee8d7f547d74c074dcad2d6629ba435854d","author":{"email":"368f4b747311b74428d4ba7c66c6221d6a2851cf@baylibre.com","name":"Alexandre Bailon"},"message":"DWC USB OTG: Add method to create SG DMA ring descriptor\n\nAdd methods to create circular list of descriptors.\nThe SG DMA should keep going without CPU intervention\nuntil it try to use a busy descriptor (BNA).\nThe descriptor list must be regenerated everytime we are\nadding a new request.\n\nTesting Done:\n- Use loopback-perf tool to mesaure performances with and without the serie:\n  no performances changes\n- Use usb_test to stress test: no issue except sometime there are out of requests on\n  UniPro rx path (not related to this serie).\nBug Number: sw-1006\nReview URL: https://reviews.leaflabs.com/r/1567/\nReviewed by: fparent\n\nSigned-off-by: Alexandre Bailon <abailon@baylibre.com>","distinct":true,"url":"https://api.github.com/repos/projectara/nuttx/commits/d3ff3ee8d7f547d74c074dcad2d6629ba435854d"},{"sha":"3346f402674b5a1a1070de33642da35af0a120c8","author":{"email":"368f4b747311b74428d4ba7c66c6221d6a2851cf@baylibre.com","name":"Alexandre Bailon"},"message":"DWC USB OTG: Use the SG DMA circular descriptor\n\nGenerate and use the circular descriptor for the bulk out endpoint.\nFrom now, the DMA can handle more than one request without the CPU.\n\nTesting Done:\n- Use loopback-perf tool to mesaure performances with and without the serie:\n  no performances changes\n- Use usb_test to stress test: no issue except sometime there are out of requests on\n  UniPro rx path (not related to this serie).\nBug Number: sw-1006\nReview URL: https://reviews.leaflabs.com/r/1568/\nReviewed by:\n\nSigned-off-by: Alexandre Bailon <abailon@baylibre.com>","distinct":true,"url":"https://api.github.com/repos/projectara/nuttx/commits/3346f402674b5a1a1070de33642da35af0a120c8"},{"sha":"7b5bb23c3628e49986f4a48cf2eca295ef09bccd","author":{"email":"368f4b747311b74428d4ba7c66c6221d6a2851cf@baylibre.com","name":"Alexandre Bailon"},"message":"DWC USB OTG: interrupt handler: manage more than one transfer complete\n\nThe SG DMA can continue to perform transfer while the CPU is working.\nThat mean some transfer may complete while CPU is still handeling\nthe transfer complete that has generated the interrupt.\nCall the transfer complete handler for all descriptors with\ntheir status set to DMA_DONE.\n\nTesting Done:\n- Use loopback-perf tool to mesaure performances with and without the serie:\n  no performances changes\n- Use usb_test to stress test: no issue except sometime there are out of requests on\n  UniPro rx path (not related to this serie).\nBug Number: sw-1006\nReview URL: https://reviews.leaflabs.com/r/1570/\nReviewed by: fparent\n\nSigned-off-by: Alexandre Bailon <abailon@baylibre.com>","distinct":true,"url":"https://api.github.com/repos/projectara/nuttx/commits/7b5bb23c3628e49986f4a48cf2eca295ef09bccd"},{"sha":"8d73ca28412f822e14f9bfb99aa7fb1e0d09f488","author":{"email":"368f4b747311b74428d4ba7c66c6221d6a2851cf@baylibre.com","name":"Alexandre Bailon"},"message":"DWC USB OTG: Update BNA handleing\n\nCurrently, if the SG DMA generate a BNA,\nthe CPU reset all descriptors.\nThis is not a correct way to handle error because of the ring descriptors.\nUsualy, BNA is generated because the DMA has used all descriptor and\nthe CPU didn't get time to complete the transfer and push pack the request\nto the list (and make it available to DMA).\nThe way to handle the BNA is to disable the endpoint until a new request is available.\n\nTesting Done:\n- Use loopback-perf tool to mesaure performances with and without the serie:\n  no performances changes\n- Use usb_test to stress test: no issue except sometime there are out of requests on\n  UniPro rx path (not related to this serie).\nBug Number: sw-1006\nReview URL: https://reviews.leaflabs.com/r/1571/\nReviewed by: fparent\n\nSigned-off-by: Alexandre Bailon <abailon@baylibre.com>","distinct":true,"url":"https://api.github.com/repos/projectara/nuttx/commits/8d73ca28412f822e14f9bfb99aa7fb1e0d09f488"},{"sha":"9951f9845da89d3390a63780f18ef53d0cb2a3d0","author":{"email":"368f4b747311b74428d4ba7c66c6221d6a2851cf@baylibre.com","name":"Alexandre Bailon"},"message":"DWC USB OTG: let the DMA continue on BNA error\n\nIf the SG DMA open a descriptor with a status different from\nHOST_READY, then the DMA generate a BNA error.\nOnce the CPU managed the cause of BNA, the default behavior\nof DMA is to restart with the first descriptor.\nThat is breaking the request management that is expecting circular\noperations.\nLet the DMA restart with the descriptor that cause the BNA.\n\nTesting Done:\n- Use loopback-perf tool to mesaure performances with and without the serie:\n  no performances changes\n- Use usb_test to stress test: no issue except sometime there are out of requests on\n  UniPro rx path (not related to this serie).\nBug Number: sw-1006\nReview URL: https://reviews.leaflabs.com/r/1569/\nReviewed by: fparent\n\nSigned-off-by: Alexandre Bailon <abailon@baylibre.com>","distinct":true,"url":"https://api.github.com/repos/projectara/nuttx/commits/9951f9845da89d3390a63780f18ef53d0cb2a3d0"}]}