libpayload: Add USB device mode driver

Hardware / Coreboot - Patrick Georgi [google.com] - 18 April 2015 01:40 UTC

Add a framework for USB device mode controllers and a driver for the ChipIdea controller which is part of the tegra platform.

TODO:- fix USB detach/attach- implement zero length packet handling properly

BUG=chrome-os-partner:35861 TEST=none BRANCH=none

Change-Id: I8defeea78b5a3bdbf9c1b1222c2702eaf3256b81

1bd3050 libpayload: Add USB device mode driver
payloads/libpayload/Config.in | 15 +
payloads/libpayload/drivers/Makefile.inc | 4 +
payloads/libpayload/drivers/udc/chipidea.c | 472 +++++++++++++++++++++++
payloads/libpayload/drivers/udc/chipidea_priv.h | 168 ++++++++
payloads/libpayload/drivers/udc/udc.c | 327 ++++++++++++++++
payloads/libpayload/include/udc/chipidea.h | 37 ++
payloads/libpayload/include/udc/udc.h | 141 +++++++
7 files changed, 1164 insertions(+)

Upstream: review.coreboot.org


  • Share