logging: cAVS HDA based logger

Adds a log backend that maintains a ringbuffer in coordination
with cAVS HDA.

The DMA channel is expected to be given some time after the logger
starts so a seperate step to initialize the dma channel is required.

Signed-off-by: Tom Burdick <thomas.burdick@intel.com>
This commit is contained in:
Tom Burdick 2022-03-02 15:31:11 -06:00 committed by Anas Nashif
commit 6913da9ddd
15 changed files with 521 additions and 11 deletions

View file

@ -26,9 +26,6 @@
#include "dma_cavs_hda.h"
#include <logging/log.h>
LOG_MODULE_REGISTER(dma_cavs_hda_dma, CONFIG_DMA_LOG_LEVEL);
/* Define low level driver required values */
#define HDA_HOST_IN_BASE DT_PROP_BY_IDX(DT_NODELABEL(hda_host_in), reg, 0)
#define HDA_HOST_OUT_BASE DT_PROP_BY_IDX(DT_NODELABEL(hda_host_out), reg, 0)
@ -257,7 +254,5 @@ int cavs_hda_dma_init(const struct device *dev)
data->ctx.atomic = data->channels_atomic;
data->ctx.magic = DMA_MAGIC;
LOG_INF("Intel cAVS HDA %s initialized", dev->name);
return 0;
}

View file

@ -9,10 +9,6 @@
#include <drivers/dma.h>
#include "dma_cavs_hda.h"
#define LOG_LEVEL CONFIG_DMA_LOG_LEVEL
#include <logging/log.h>
LOG_MODULE_REGISTER(dma_cavs_hda_dma_host_in);
static const struct dma_driver_api cavs_hda_dma_host_in_api = {
.config = cavs_hda_dma_host_in_config,
.reload = cavs_hda_dma_host_reload,