• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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