bae9f85ddb
This commit adds support for describing USB ports in devicetree.cb. It allows a USB port location to be described in the tree with configuration information, and ACPI code to be generated that provides this information to the OS. A new scan_usb_bus() is added that will scan bridges for devices so a tree of ports and hubs can be created. The device address is computed with a 'port type' and a 'port id' which is flexible for SOC to handle depending on their specific USB setup and allows USB2 and USB3 ports to be described separately. For example a board may have devices on two ports, one with a USB2 device and one with a USB3 device, both of which are connected to an xHCI controller with a root hub: xHCI | RootHub | | USB2[0] USB3[2] device pci 14.0 on chip drivers/usb/acpi register "name" = ""Root Hub"" device usb 0.0 on chip drivers/usb/acpi register "name" = ""USB 2.0 Port 0"" device usb 2.0 on end end chip drivers/usb/acpi register "name" = ""USB 3.0 Port 2"" device usb 3.2 on end end end end end Change-Id: I64e6eba503cdab49be393465b535e139a8c90ef4 Signed-off-by: Duncan Laurie <dlaurie@google.com> Reviewed-on: https://review.coreboot.org/26169 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Furquan Shaikh <furquan@google.com> |
||
---|---|---|
.. | ||
boot | ||
console | ||
cpu | ||
device | ||
pc80 | ||
smp | ||
superio | ||
sys | ||
adainit.h | ||
assert.h | ||
b64_decode.h | ||
base3.h | ||
bcd.h | ||
boardid.h | ||
boot_device.h | ||
bootblock_common.h | ||
bootmem.h | ||
bootmode.h | ||
bootstate.h | ||
cbfs.h | ||
cbmem.h | ||
compiler.h | ||
delay.h | ||
device_tree.h | ||
dimm_info_util.h | ||
edid.h | ||
elog.h | ||
endian.h | ||
fallback.h | ||
fmap.h | ||
gic.h | ||
gpio.h | ||
halt.h | ||
imd.h | ||
inttypes.h | ||
ip_checksum.h | ||
kconfig.h | ||
lib.h | ||
list.h | ||
main_decl.h | ||
memlayout.h | ||
memory_info.h | ||
memrange.h | ||
mrc_cache.h | ||
nhlt.h | ||
option.h | ||
program_loading.h | ||
random.h | ||
reg_script.h | ||
region_file.h | ||
reset.h | ||
rmodule.h | ||
romstage_handoff.h | ||
rtc.h | ||
rules.h | ||
sar.h | ||
sdram_mode.h | ||
smbios.h | ||
spd.h | ||
spd_bin.h | ||
spd_ddr2.h | ||
spi-generic.h | ||
spi_bitbang.h | ||
spi_flash.h | ||
stage_cache.h | ||
stddef.h | ||
stdlib.h | ||
string.h | ||
swab.h | ||
symbols.h | ||
thread.h | ||
timer.h | ||
timestamp.h | ||
trace.h | ||
types.h | ||
vbe.h | ||
version.h | ||
watchdog.h | ||
wrdd.h |