libpayload: usb: Allow direct instantiation of MMIO host controllers

The existing USB_MEMORY mechanism to instantiate non-PCI host
controllers is clunky and inflexible... most importantly, it doesn't
allow multiple host controllers of the same kind. This patch replaces it
with a function that allows payloads to directly instantiate as many
host controllers of whatever type they need.

Change-Id: Ic21d2016a4ef92c67fa420bdc0f0d8a6508b69e5
Signed-off-by: Julius Werner <>
Reviewed-by: Stefan Reinauer <>
(cherry picked from commit b6e95c39dd91f654f0a345f17b3196f56adf4891)
Signed-off-by: Isaac Christensen <>
Tested-by: build bot (Jenkins)
Reviewed-by: Stefan Reinauer <>
Reviewed-by: Ronald G. Minnich <>
4 files changed