coreboot-kgpe-d16/Documentation/vendorcode/cavium/bdk.md
Patrick Rudolph 7187758038 Documentation: Fix markdown highlighting
Fix some code blocks that use invalid Markdown syntax.

Change-Id: I8cfe63b2c21ae93923f88bbf7ef4cfb8dccdb5ef
Signed-off-by: Patrick Rudolph <siro@das-labor.org>
Reviewed-on: https://review.coreboot.org/29207
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net>
Reviewed-by: Philipp Deppenwiese <zaolin.daisuki@gmail.com>
2018-10-22 12:02:15 +00:00

1,016 B

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.