8c986ab263
* Add documentation for CN81XX SoC * Add documentation for CN81XX EVB SFF mainboard * Add documentation for BDK * Add documentation for BOOTROM and BOOTBLOCK behaviour * Alphabetically sort vendors Change-Id: Ibfcd42788e31f684baed658dc3c4dfe1b8e4f354 Signed-off-by: Patrick Rudolph <patrick.rudolph@9elements.com> Reviewed-on: https://review.coreboot.org/27150 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: David Hendricks <david.hendricks@gmail.com> Reviewed-by: Philipp Deppenwiese <zaolin.daisuki@gmail.com>
1 KiB
1 KiB
Cavium's BDK
BDK
A part of Cavium's BDK can be found in '''src/vendorcode/cavium/bdk'''. It does the DRAM init in romstage and the PCIe, QLM, SLI, PHY, BGX, SATA init in ramstage.
Devicetree
The BDK does use it's own devicetree, as coreboot's devicetree isn't compatible. The devicetree stores key-value pairs (see bdk-devicetree.h for implementation details), where the key and the value are stored as strings.
The key-value pairs must be advertised in romstage and ramstage using the '''bdk_config_set_fdt()''' method.
The tool '''util/cavium/devicetree_convert.py''' can be used to convert a devicetree to a key-value array.
Modifications
- The BDK has been modified to compile under coreboot's toolchain.
- Removed FDT devicetree support.
- Dropped files that aren't required for SoC bringup
- Added Kconfig values for verbose console output
Debugging
You can enable verbose console output in menuconfig:
Go to Chipset, BDK and enable one or multiple stages.