On Thu, Aug 21 2014, Robert Baldyga <r.baldyga@xxxxxxxxxxx> wrote: > This patch introduces virtual endpoint address mapping. It separates > function logic form physical endpoint addresses making it more hardware > independent. > > Following modifications changes user space API, so to enable them user > have to switch on the FUNCTIONFS_VIRTUAL_ADDR flag in descriptors. > > Endpoints are now refered using virtual endpoint addresses chosen by > user in endpoint descpriptors. This applies to each context when endpoint > address can be used: > - when accessing endpoint files in FunctionFS filesystemi (in file name), > - in setup requests directed to specific endpoint (in wIndex field), > - in descriptors returned by FUNCTIONFS_ENDPOINT_DESC ioctl. > > In endpoint file names the endpoint address number is formatted as > double-digit hexadecimal value ("ep%02x") which has few advantages - > it is easy to parse, allows to easly recognize endpoint direction basing > on its name (IN endpoint number starts with digit 8, and OUT with 0) > which can be useful for debugging purpose, and it makes easier to introduce > further features allowing to use each endpoint number in both directions > to have more endpoints available for function if hardware supports this > (for example we could have ep01 which is endpoint 1 with OUT direction, > and ep81 which is endpoint 1 with IN direction). > > Physical endpoint address can be still obtained using ioctl named > FUNCTIONFS_ENDPOINT_REVMAP, but now it's not neccesary to handle > USB transactions properly. > > Signed-off-by: Robert Baldyga <r.baldyga@xxxxxxxxxxx> Acked-by: Michal Nazarewicz <mina86@xxxxxxxxxx> -- Best regards, _ _ .o. | Liege of Serenely Enlightened Majesty of o' \,=./ `o ..o | Computer Science, Michał “mina86” Nazarewicz (o o) ooo +--<mpn@xxxxxxxxxx>--<xmpp:mina86@xxxxxxxxxx>--ooO--(_)--Ooo-- -- 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