On 09/22/2015 06:56 PM, Krzysztof Opasiak wrote:
Since: commit e0857ce58e8658657f5f12fe25272b93cfeb16aa ("usb: gadget: loopback: don't queue requests to bogus endpoints") Loopback function is not realy working as that commit removed all looping back logic. After that commit ep-out works like /dev/null and ep-in works like /dev/zero. This commit fix this issue by allocating set of out requests and set of in requests but each out req shares buffer with one in req: out_req->buf ---> buf <--- in_req.buf out_req->context <---> in_req.context The completion routine simply enqueue the suitable req in an oposite direction. Cc: <stable@xxxxxxxxxxxxxxx> # 3.18+ Signed-off-by: Krzysztof Opasiak <k.opasiak@xxxxxxxxxxx> --- Changes since v1: - add missing usb_ep_free_request() in complete() callback
After hour of using this I have faced some problem with memory feeing. I will look for it and send update shortly.
-- Krzysztof Opasiak Samsung R&D Institute Poland Samsung Electronics -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html