bcmclm: new tool for reading Broadcom's CLM data
authorRafał Miłecki <rafal@milecki.pl>
Wed, 21 Jun 2023 07:29:00 +0000 (09:29 +0200)
committerRafał Miłecki <rafal@milecki.pl>
Thu, 22 Jun 2023 10:46:44 +0000 (12:46 +0200)
commit916633160dc92ccae6a0ad8fd900f2d75b5b5ff0
tree56ea46bc7c98e113636aaa83a92cdf4dab2795e4
parentcb1ddac98124f048f6d2d51006c431a9543ed706
bcmclm: new tool for reading Broadcom's CLM data

Broadcom developed CLM format for devices vendors to provide regulatory
configuration independently of executable firmware. They contain info
about countries, channels and rates.

CLM data can be packaged with chipset info as CLM BLOB and uploaded to
FullMAC firmware for complete channel support and maximum transmission
power.

CLM binary format is a bit tricky. It consists of a lot of binary
structs with all kind of numbers and flags. In-file addresses of those
structs and then stored in parent structs.

This tool provides initial support for reading CLM data content. It
parses the root struct and follows info lower level structs.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
CMakeLists.txt
src/bcmclm.c [new file with mode: 0644]