coreboot-kgpe-d16/src/include
Duncan Laurie bae9f85ddb devicetree: Add USB device type
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>
2018-05-11 08:59:51 +00:00
..
boot
console src/device: Fix discarded-qualifiers compilation issue 2018-05-02 08:06:06 +00:00
cpu cpu/x86/mp: remove unused functions and limit API exposure 2018-05-04 14:17:07 +00:00
device devicetree: Add USB device type 2018-05-11 08:59:51 +00:00
pc80
smp
superio
sys
adainit.h
assert.h
b64_decode.h
base3.h
bcd.h
boardid.h boardid: Add helpers to read sku_id strapping into coreboot tables 2017-12-07 01:19:32 +00:00
boot_device.h
bootblock_common.h
bootmem.h bootmem: Keep OS memory map separate from the start 2018-05-10 01:24:40 +00:00
bootmode.h
bootstate.h
cbfs.h cbfs: Add cbfs_boot_load_file() 2018-04-17 10:46:13 +00:00
cbmem.h
compiler.h compiler.h: add __weak macro 2018-04-24 14:37:59 +00:00
delay.h
device_tree.h lib/devicetree: Integrate flattened devicetree support 2018-04-30 09:33:32 +00:00
dimm_info_util.h src/lib/dimm_info_util.c: Add methods to convert from SMBIOS to SPD 2018-04-11 14:41:59 +00:00
edid.h
elog.h elog: Support logging S0ix sleep/wake info in elog 2017-10-19 00:42:49 +00:00
endian.h
fallback.h
fmap.h
gic.h
gpio.h lib/gpio: constify array inputs 2017-10-20 22:49:27 +00:00
halt.h
imd.h
inttypes.h
ip_checksum.h
kconfig.h
lib.h
list.h lib/devicetree: Integrate flattened devicetree support 2018-04-30 09:33:32 +00:00
main_decl.h
memlayout.h
memory_info.h include/memory_info.h: Change part number field from 19 bytes to 21 2018-04-24 17:12:40 +00:00
memrange.h lib/memrange: Introduce method to clone memrange 2018-04-11 15:11:04 +00:00
mrc_cache.h drivers/mrc_cache: Add missing include file to mrc_cache.h 2017-12-18 16:07:09 +00:00
nhlt.h lib/nhlt: add support for passing subsystem_id to endpoint's structure 2018-05-09 10:06:04 +00:00
option.h
program_loading.h
random.h
reg_script.h
region_file.h
reset.h
rmodule.h
romstage_handoff.h
rtc.h
rules.h arch/x86: add ENV_CACHE_AS_RAM 2018-04-24 14:40:16 +00:00
sar.h
sdram_mode.h
smbios.h smbios: Extend Baseboard (or Module) Information (type2) 2018-03-07 21:12:47 +00:00
spd.h src/lib/dimm_info_util.c: Add methods to convert from SMBIOS to SPD 2018-04-11 14:41:59 +00:00
spd_bin.h
spd_ddr2.h
spi-generic.h drivers/spi: reduce confusion in the API 2018-04-23 20:58:58 +00:00
spi_bitbang.h spi: Add helper functions for bit-banging 2018-04-03 00:34:52 +00:00
spi_flash.h drivers/spi: reduce confusion in the API 2018-04-23 20:58:58 +00:00
stage_cache.h lib/stage_cache: Add save/get raw storage 2018-02-07 16:22:40 +00:00
stddef.h
stdlib.h
string.h console: Expose vsnprintf 2018-04-09 08:18:16 +00:00
swab.h
symbols.h arch/x86: add support for cache-as-ram paging 2018-04-25 15:32:56 +00:00
thread.h
timer.h include/timer.h: add NSECS_PER_SEC macro 2017-11-19 01:50:13 +00:00
timestamp.h src: Fix all Siemens copyrights 2017-11-07 12:33:51 +00:00
trace.h
types.h
vbe.h
version.h
watchdog.h
wrdd.h