1# Cavium's BDK 2 3## BDK 4A part of Cavium's BDK can be found in `src/vendorcode/cavium/bdk`. 5It does the **DRAM init** in romstage and the **PCIe**, **QLM**, **SLI**, 6**PHY**, **BGX**, **SATA** init in ramstage. 7 8## Devicetree 9The BDK does use it's own devicetree, as coreboot's devicetree isn't 10compatible. The devicetree stores key-value pairs (see **bdk-devicetree.h** 11for implementation details), where the key and the value are stored as strings. 12 13The key-value pairs must be advertised in romstage and ramstage using the 14`bdk_config_set_fdt()` method. 15 16The tool `util/cavium/devicetree_convert.py` can be used to convert a 17devicetree to a key-value array. 18 19## Modifications 20 21* The BDK has been modified to compile under coreboot's toolchain. 22* Removed FDT devicetree support. 23* Dropped files that aren't required for SoC bringup 24* Added Kconfig values for verbose console output 25 26## Debugging 27 28You can enable verbose console output in *menuconfig*: 29 30Go to **Chipset**, **BDK** and enable one or multiple stages. 31