Mainline:Broadcom Kona/Introduction: Difference between revisions
Created page with "The following page is a general introduction to the Broadcom Kona platform and getting started with mainlining. == Chip introduction == '''Broadcom Kona''' is a series of chips primarily marketed for mobile use, released between 2012 and 2013. It comprises of the following chips: * BCM28145/BCM28155 (Capri) * BCM21654 (Rhea) * BCM21663/BCM21664 (Hawaii) * BCM23550 (Java) These chips all share similar components, with a similar internal register layout. They can be gr..." |
|||
Line 63: | Line 63: | ||
* Copy <code>devmem-read-block.sh</code> to the device and dump the relevant registers; save the files in two separate directories, to make sure you don't mistake downstream for mainline | * Copy <code>devmem-read-block.sh</code> to the device and dump the relevant registers; save the files in two separate directories, to make sure you don't mistake downstream for mainline | ||
* Run <code>generate-dump-diff.py</code> on the generated dumps and look at differences in the browser | * Run <code>generate-dump-diff.py</code> on the generated dumps and look at differences in the browser | ||
=== Porting board files to DTS === | |||
New kernels use device trees to describe components. The Kona downstream kernels are too old to use it; rather, while they have some DTS support and files, they don't seem to actually be used in any of the production devices. | |||
Instead, the relevant device info is stored in board files in <code>arch/arm/mach-(codename)</code> directories. These files contain the relevant setup for all componenets. There's usually a separate "board-bcm590xx" file that contains BCM590xx PMIC settings. | |||
Note that board files contain configuration for lots of possible components that may not actually be present on your device; these are usually commented out with <code>#ifdef</code> statements referencing defconfig options. Make sure to have your device's defconfig handy for reference. | |||
(todo: add more info here) | |||
== See also == | == See also == | ||
* [https://wiki.postmarketos.org/wiki/Mainlining Mainlining on the postmarketOS wiki] | * [https://wiki.postmarketos.org/wiki/Mainlining Mainlining on the postmarketOS wiki] |