sound_card_init: add Max98373 boot time calibration logic

1. Implement functions to access the DSM calibration data from DSP.
2. Implement max98373 boot time calibration flow as the following
   steps:
   a. Limit the speaker volume to protect the speakers.
   b. Check whether the speakers are overheated.
   c. Trigger the DSM calibration from DSP.
   d. Decide and apply a good calibration value and remove the speaker
      output limitation.

BUG=b:157210111
TEST=/sbin/initctl start sound_card_init SOUND_CARD_ID=sofrt5682

Cq-Depend: chromium:2597532
Cq-Depend: chromium:2606416
Change-Id: I7a9ab8064727588fb00de818020a01218ed4d03d
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/adhd/+/2595662
Reviewed-by: Chih-Yang Hsia <paulhsia@chromium.org>
Tested-by: Judy Hsiao <judyhsiao@chromium.org>
Commit-Queue: Judy Hsiao <judyhsiao@chromium.org>
10 files changed