Merge "asoc: bolero: Add support for bolero codec" into audio-drivers.lnx.3.0
This commit is contained in:
commit
184c49be26
7 changed files with 3167 additions and 0 deletions
445
asoc/codecs/bolero/bolero_cdc.c
Normal file
445
asoc/codecs/bolero/bolero_cdc.c
Normal file
|
@ -0,0 +1,445 @@
|
|||
/* Copyright (c) 2018, The Linux Foundation. All rights reserved.
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License version 2 and
|
||||
* only version 2 as published by the Free Software Foundation.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*/
|
||||
|
||||
#include <linux/of_platform.h>
|
||||
#include <linux/module.h>
|
||||
#include <linux/io.h>
|
||||
#include <linux/init.h>
|
||||
#include <linux/platform_device.h>
|
||||
#include <linux/printk.h>
|
||||
#include <linux/delay.h>
|
||||
#include <linux/kernel.h>
|
||||
|
||||
#include "bolero_cdc.h"
|
||||
#include "internal.h"
|
||||
|
||||
static struct snd_soc_codec_driver bolero;
|
||||
|
||||
static void bolero_ahb_write_device(char __iomem *io_base,
|
||||
u16 reg, u8 value)
|
||||
{
|
||||
u32 temp = (u32)(value) & 0x000000FF;
|
||||
|
||||
iowrite32(temp, io_base + reg);
|
||||
}
|
||||
|
||||
static void bolero_ahb_read_device(char __iomem *io_base,
|
||||
u16 reg, u8 *value)
|
||||
{
|
||||
u32 temp;
|
||||
|
||||
temp = ioread32(io_base + reg);
|
||||
*value = (u8)temp;
|
||||
}
|
||||
|
||||
static int __bolero_reg_read(struct bolero_priv *priv,
|
||||
u16 macro_id, u16 reg, u8 *val)
|
||||
{
|
||||
int ret = -EINVAL;
|
||||
|
||||
if (!priv->macro_params[macro_id].mclk_fn) {
|
||||
dev_dbg_ratelimited(priv->dev,
|
||||
"%s: mclk_fn not init for macro-id-%d\n",
|
||||
__func__, macro_id);
|
||||
return ret;
|
||||
}
|
||||
ret = priv->macro_params[macro_id].mclk_fn(
|
||||
priv->macro_params[macro_id].dev, true);
|
||||
if (ret) {
|
||||
dev_dbg_ratelimited(priv->dev,
|
||||
"%s: clock enable failed\n", __func__);
|
||||
return ret;
|
||||
}
|
||||
bolero_ahb_read_device(
|
||||
priv->macro_params[macro_id].io_base, reg, val);
|
||||
priv->macro_params[macro_id].mclk_fn(
|
||||
priv->macro_params[macro_id].dev, false);
|
||||
return ret;
|
||||
}
|
||||
|
||||
static int __bolero_reg_write(struct bolero_priv *priv,
|
||||
u16 macro_id, u16 reg, u8 val)
|
||||
{
|
||||
int ret = -EINVAL;
|
||||
|
||||
if (!priv->macro_params[macro_id].mclk_fn) {
|
||||
dev_dbg_ratelimited(priv->dev,
|
||||
"%s: mclk_fn not init for macro-id-%d\n",
|
||||
__func__, macro_id);
|
||||
return ret;
|
||||
}
|
||||
ret = priv->macro_params[macro_id].mclk_fn(
|
||||
priv->macro_params[macro_id].dev, true);
|
||||
if (ret) {
|
||||
dev_dbg_ratelimited(priv->dev,
|
||||
"%s: clock enable failed\n", __func__);
|
||||
return ret;
|
||||
}
|
||||
bolero_ahb_write_device(
|
||||
priv->macro_params[macro_id].io_base, reg, val);
|
||||
priv->macro_params[macro_id].mclk_fn(
|
||||
priv->macro_params[macro_id].dev, false);
|
||||
return ret;
|
||||
}
|
||||
|
||||
static bool bolero_is_valid_macro_dev(struct device *dev)
|
||||
{
|
||||
if (of_device_is_compatible(dev->parent->of_node, "qcom,bolero-codec"))
|
||||
return true;
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
static bool bolero_is_valid_codec_dev(struct device *dev)
|
||||
{
|
||||
if (of_device_is_compatible(dev->of_node, "qcom,bolero-codec"))
|
||||
return true;
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
/**
|
||||
* bolero_get_device_ptr - Get child or macro device ptr
|
||||
*
|
||||
* @dev: bolero device ptr.
|
||||
* @macro_id: ID of macro calling this API.
|
||||
*
|
||||
* Returns dev ptr on success or NULL on error.
|
||||
*/
|
||||
struct device *bolero_get_device_ptr(struct device *dev, u16 macro_id)
|
||||
{
|
||||
struct bolero_priv *priv;
|
||||
|
||||
if (!dev) {
|
||||
pr_err("%s: dev is null\n", __func__);
|
||||
return NULL;
|
||||
}
|
||||
|
||||
if (!bolero_is_valid_codec_dev(dev)) {
|
||||
pr_err("%s: invalid codec\n", __func__);
|
||||
return NULL;
|
||||
}
|
||||
priv = dev_get_drvdata(dev);
|
||||
if (!priv || (macro_id >= MAX_MACRO)) {
|
||||
dev_err(dev, "%s: priv is null or invalid macro\n", __func__);
|
||||
return NULL;
|
||||
}
|
||||
|
||||
return priv->macro_params[macro_id].dev;
|
||||
}
|
||||
EXPORT_SYMBOL(bolero_get_device_ptr);
|
||||
|
||||
static int bolero_copy_dais_from_macro(struct bolero_priv *priv)
|
||||
{
|
||||
struct snd_soc_dai_driver *dai_ptr;
|
||||
u16 macro_idx;
|
||||
|
||||
/* memcpy into bolero_dais all macro dais */
|
||||
if (!priv->bolero_dais)
|
||||
priv->bolero_dais = devm_kzalloc(priv->dev,
|
||||
priv->num_dais *
|
||||
sizeof(
|
||||
struct snd_soc_dai_driver),
|
||||
GFP_KERNEL);
|
||||
if (!priv->bolero_dais)
|
||||
return -ENOMEM;
|
||||
|
||||
dai_ptr = priv->bolero_dais;
|
||||
|
||||
for (macro_idx = START_MACRO; macro_idx < MAX_MACRO; macro_idx++) {
|
||||
if (priv->macro_params[macro_idx].dai_ptr) {
|
||||
memcpy(dai_ptr,
|
||||
priv->macro_params[macro_idx].dai_ptr,
|
||||
priv->macro_params[macro_idx].num_dais *
|
||||
sizeof(struct snd_soc_dai_driver));
|
||||
dai_ptr += priv->macro_params[macro_idx].num_dais;
|
||||
}
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
/**
|
||||
* bolero_register_macro - Registers macro to bolero
|
||||
*
|
||||
* @dev: macro device ptr.
|
||||
* @macro_id: ID of macro calling this API.
|
||||
* @ops: macro params to register.
|
||||
*
|
||||
* Returns 0 on success or -EINVAL on error.
|
||||
*/
|
||||
int bolero_register_macro(struct device *dev, u16 macro_id,
|
||||
struct macro_ops *ops)
|
||||
{
|
||||
struct bolero_priv *priv;
|
||||
int ret = -EINVAL;
|
||||
|
||||
if (!dev || !ops) {
|
||||
pr_err("%s: dev or ops is null\n", __func__);
|
||||
return -EINVAL;
|
||||
}
|
||||
if (!bolero_is_valid_macro_dev(dev)) {
|
||||
dev_err(dev, "%s: child device for macro:%d not added yet\n",
|
||||
__func__, macro_id);
|
||||
return -EINVAL;
|
||||
}
|
||||
priv = dev_get_drvdata(dev->parent);
|
||||
if (!priv || (macro_id >= MAX_MACRO)) {
|
||||
dev_err(dev, "%s: priv is null or invalid macro\n", __func__);
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
priv->macro_params[macro_id].init = ops->init;
|
||||
priv->macro_params[macro_id].exit = ops->exit;
|
||||
priv->macro_params[macro_id].io_base = ops->io_base;
|
||||
priv->macro_params[macro_id].num_dais = ops->num_dais;
|
||||
priv->macro_params[macro_id].dai_ptr = ops->dai_ptr;
|
||||
priv->macro_params[macro_id].mclk_fn = ops->mclk_fn;
|
||||
priv->macro_params[macro_id].dev = dev;
|
||||
priv->num_dais += ops->num_dais;
|
||||
priv->num_macros_registered++;
|
||||
priv->macros_supported[macro_id] = true;
|
||||
|
||||
if (priv->num_macros_registered == priv->child_num) {
|
||||
ret = bolero_copy_dais_from_macro(priv);
|
||||
if (ret < 0) {
|
||||
dev_err(dev, "%s: copy_dais failed\n", __func__);
|
||||
return ret;
|
||||
}
|
||||
ret = snd_soc_register_codec(dev->parent, &bolero,
|
||||
priv->bolero_dais, priv->num_dais);
|
||||
if (ret < 0) {
|
||||
dev_err(dev, "%s: register codec failed\n", __func__);
|
||||
return ret;
|
||||
}
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
EXPORT_SYMBOL(bolero_register_macro);
|
||||
|
||||
/**
|
||||
* bolero_unregister_macro - De-Register macro from bolero
|
||||
*
|
||||
* @dev: macro device ptr.
|
||||
* @macro_id: ID of macro calling this API.
|
||||
*
|
||||
*/
|
||||
void bolero_unregister_macro(struct device *dev, u16 macro_id)
|
||||
{
|
||||
struct bolero_priv *priv;
|
||||
|
||||
if (!dev) {
|
||||
pr_err("%s: dev is null\n", __func__);
|
||||
return;
|
||||
}
|
||||
if (!bolero_is_valid_macro_dev(dev)) {
|
||||
dev_err(dev, "%s: macro:%d not in valid registered macro-list\n",
|
||||
__func__, macro_id);
|
||||
return;
|
||||
}
|
||||
priv = dev_get_drvdata(dev->parent);
|
||||
if (!priv || (macro_id >= MAX_MACRO)) {
|
||||
dev_err(dev, "%s: priv is null or invalid macro\n", __func__);
|
||||
return;
|
||||
}
|
||||
|
||||
priv->macro_params[macro_id].init = NULL;
|
||||
priv->macro_params[macro_id].num_dais = 0;
|
||||
priv->macro_params[macro_id].dai_ptr = NULL;
|
||||
priv->macro_params[macro_id].mclk_fn = NULL;
|
||||
priv->macro_params[macro_id].dev = NULL;
|
||||
priv->num_dais -= priv->macro_params[macro_id].num_dais;
|
||||
priv->num_macros_registered--;
|
||||
|
||||
/* UNREGISTER CODEC HERE */
|
||||
if (priv->child_num - 1 == priv->num_macros_registered)
|
||||
snd_soc_unregister_codec(dev->parent);
|
||||
}
|
||||
EXPORT_SYMBOL(bolero_unregister_macro);
|
||||
|
||||
static int bolero_soc_codec_probe(struct snd_soc_codec *codec)
|
||||
{
|
||||
struct bolero_priv *priv = dev_get_drvdata(codec->dev);
|
||||
int macro_idx, ret = 0;
|
||||
|
||||
/* call init for supported macros */
|
||||
for (macro_idx = START_MACRO; macro_idx < MAX_MACRO; macro_idx++) {
|
||||
if (priv->macro_params[macro_idx].init) {
|
||||
ret = priv->macro_params[macro_idx].init(codec);
|
||||
if (ret < 0) {
|
||||
dev_err(codec->dev,
|
||||
"%s: init for macro %d failed\n",
|
||||
__func__, macro_idx);
|
||||
goto err;
|
||||
}
|
||||
}
|
||||
}
|
||||
priv->codec = codec;
|
||||
dev_dbg(codec->dev, "%s: bolero soc codec probe success\n", __func__);
|
||||
err:
|
||||
return ret;
|
||||
}
|
||||
|
||||
static int bolero_soc_codec_remove(struct snd_soc_codec *codec)
|
||||
{
|
||||
struct bolero_priv *priv = dev_get_drvdata(codec->dev);
|
||||
int macro_idx;
|
||||
|
||||
/* call exit for supported macros */
|
||||
for (macro_idx = START_MACRO; macro_idx < MAX_MACRO; macro_idx++)
|
||||
if (priv->macro_params[macro_idx].exit)
|
||||
priv->macro_params[macro_idx].exit(codec);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
static struct regmap *bolero_get_regmap(struct device *dev)
|
||||
{
|
||||
struct bolero_priv *priv = dev_get_drvdata(dev);
|
||||
|
||||
return priv->regmap;
|
||||
}
|
||||
|
||||
static struct snd_soc_codec_driver bolero = {
|
||||
.probe = bolero_soc_codec_probe,
|
||||
.remove = bolero_soc_codec_remove,
|
||||
.get_regmap = bolero_get_regmap,
|
||||
};
|
||||
|
||||
static void bolero_add_child_devices(struct work_struct *work)
|
||||
{
|
||||
struct bolero_priv *priv;
|
||||
struct platform_device *pdev;
|
||||
struct device_node *node;
|
||||
int ret, i, cnt = 0;
|
||||
|
||||
priv = container_of(work, struct bolero_priv,
|
||||
bolero_add_child_devices_work);
|
||||
if (!priv) {
|
||||
pr_err("%s: Memory for bolero priv does not exist\n",
|
||||
__func__);
|
||||
return;
|
||||
}
|
||||
if (!priv->dev->of_node) {
|
||||
dev_err(priv->dev, "%s: DT node for bolero does not exist\n",
|
||||
__func__);
|
||||
return;
|
||||
}
|
||||
|
||||
for_each_child_of_node(priv->dev->of_node, node) {
|
||||
pdev = platform_device_alloc(node->name, -1);
|
||||
if (!pdev) {
|
||||
dev_err(priv->dev, "%s: pdev memory alloc failed\n",
|
||||
__func__);
|
||||
ret = -ENOMEM;
|
||||
goto fail_pdev_add;
|
||||
}
|
||||
pdev->dev.parent = priv->dev;
|
||||
pdev->dev.of_node = node;
|
||||
|
||||
ret = platform_device_add(pdev);
|
||||
if (ret) {
|
||||
dev_err(priv->dev,
|
||||
"%s: Cannot add platform device\n",
|
||||
__func__);
|
||||
goto fail_pdev_add;
|
||||
}
|
||||
priv->pdev_child_devices[cnt] = pdev;
|
||||
cnt++;
|
||||
}
|
||||
return;
|
||||
fail_pdev_add:
|
||||
for (i = cnt; i > 0; i--)
|
||||
platform_device_put(priv->pdev_child_devices[i - 1]);
|
||||
err:
|
||||
return;
|
||||
}
|
||||
|
||||
static int bolero_probe(struct platform_device *pdev)
|
||||
{
|
||||
struct bolero_priv *priv;
|
||||
u32 num_macros = 0;
|
||||
int ret;
|
||||
|
||||
priv = devm_kzalloc(&pdev->dev, sizeof(struct bolero_priv),
|
||||
GFP_KERNEL);
|
||||
if (!priv)
|
||||
return -ENOMEM;
|
||||
ret = of_property_read_u32(pdev->dev.of_node, "qcom,num-macros",
|
||||
&num_macros);
|
||||
if (ret) {
|
||||
dev_err(&pdev->dev,
|
||||
"%s:num-macros property not found\n",
|
||||
__func__);
|
||||
return ret;
|
||||
}
|
||||
priv->child_num = num_macros;
|
||||
if (priv->child_num > MAX_MACRO) {
|
||||
dev_err(&pdev->dev,
|
||||
"%s:child_num(%d) > MAX_MACRO(%d) than supported\n",
|
||||
__func__, priv->child_num, MAX_MACRO);
|
||||
return -EINVAL;
|
||||
}
|
||||
priv->va_without_decimation = of_property_read_bool(pdev->dev.of_node,
|
||||
"qcom,va-without-decimation");
|
||||
if (priv->va_without_decimation)
|
||||
bolero_reg_access[VA_MACRO] = bolero_va_top_reg_access;
|
||||
|
||||
priv->dev = &pdev->dev;
|
||||
priv->regmap = bolero_regmap_init(priv->dev,
|
||||
&bolero_regmap_config);
|
||||
if (IS_ERR_OR_NULL((void *)(priv->regmap))) {
|
||||
dev_err(&pdev->dev, "%s:regmap init failed\n", __func__);
|
||||
return -EINVAL;
|
||||
}
|
||||
priv->read_dev = __bolero_reg_read;
|
||||
priv->write_dev = __bolero_reg_write;
|
||||
|
||||
dev_set_drvdata(&pdev->dev, priv);
|
||||
mutex_init(&priv->io_lock);
|
||||
INIT_WORK(&priv->bolero_add_child_devices_work,
|
||||
bolero_add_child_devices);
|
||||
schedule_work(&priv->bolero_add_child_devices_work);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
static int bolero_remove(struct platform_device *pdev)
|
||||
{
|
||||
struct bolero_priv *priv = dev_get_drvdata(&pdev->dev);
|
||||
u16 i;
|
||||
|
||||
for (i = priv->child_num; i > 0; i--)
|
||||
platform_device_unregister(priv->pdev_child_devices[i - 1]);
|
||||
mutex_destroy(&priv->io_lock);
|
||||
return 0;
|
||||
}
|
||||
|
||||
static const struct of_device_id bolero_dt_match[] = {
|
||||
{.compatible = "qcom,bolero-codec"},
|
||||
{}
|
||||
};
|
||||
MODULE_DEVICE_TABLE(of, bolero_dt_match);
|
||||
|
||||
static struct platform_driver bolero_drv = {
|
||||
.driver = {
|
||||
.name = "bolero-codec",
|
||||
.owner = THIS_MODULE,
|
||||
.of_match_table = bolero_dt_match,
|
||||
},
|
||||
.probe = bolero_probe,
|
||||
.remove = bolero_remove,
|
||||
};
|
||||
|
||||
module_platform_driver(bolero_drv);
|
||||
|
||||
MODULE_DESCRIPTION("Bolero driver");
|
||||
MODULE_LICENSE("GPL v2");
|
61
asoc/codecs/bolero/bolero_cdc.h
Normal file
61
asoc/codecs/bolero/bolero_cdc.h
Normal file
|
@ -0,0 +1,61 @@
|
|||
/* Copyright (c) 2018, The Linux Foundation. All rights reserved.
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License version 2 and
|
||||
* only version 2 as published by the Free Software Foundation.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*/
|
||||
|
||||
#ifndef BOLERO_CDC_H
|
||||
#define BOLERO_CDC_H
|
||||
|
||||
#include <sound/soc.h>
|
||||
#include <linux/regmap.h>
|
||||
|
||||
enum {
|
||||
START_MACRO,
|
||||
TX_MACRO = START_MACRO,
|
||||
RX_MACRO,
|
||||
WSA_MACRO,
|
||||
VA_MACRO,
|
||||
MAX_MACRO
|
||||
};
|
||||
|
||||
struct macro_ops {
|
||||
int (*init)(struct snd_soc_codec *codec);
|
||||
int (*exit)(struct snd_soc_codec *codec);
|
||||
u16 num_dais;
|
||||
struct device *dev;
|
||||
struct snd_soc_dai_driver *dai_ptr;
|
||||
int (*mclk_fn)(struct device *dev, bool enable);
|
||||
char __iomem *io_base;
|
||||
};
|
||||
|
||||
#if IS_ENABLED(CONFIG_SND_SOC_BOLERO)
|
||||
int bolero_register_macro(struct device *dev, u16 macro_id,
|
||||
struct macro_ops *ops);
|
||||
void bolero_unregister_macro(struct device *dev, u16 macro_id);
|
||||
struct device *bolero_get_device_ptr(struct device *dev, u16 macro_id);
|
||||
#else
|
||||
static inline int bolero_register_macro(struct device *dev,
|
||||
u16 macro_id,
|
||||
struct macro_ops *ops)
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
static inline void bolero_unregister_macro(struct device *dev, u16 macro_id)
|
||||
{
|
||||
}
|
||||
|
||||
static inline struct device *bolero_get_device_ptr(struct device *dev,
|
||||
u16 macro_id)
|
||||
{
|
||||
return NULL;
|
||||
}
|
||||
#endif /* CONFIG_SND_SOC_BOLERO */
|
||||
#endif /* BOLERO_CDC_H */
|
840
asoc/codecs/bolero/bolero_cdc_registers.h
Normal file
840
asoc/codecs/bolero/bolero_cdc_registers.h
Normal file
|
@ -0,0 +1,840 @@
|
|||
/* Copyright (c) 2018, The Linux Foundation. All rights reserved.
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License version 2 and
|
||||
* only version 2 as published by the Free Software Foundation.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*/
|
||||
|
||||
#ifndef _BOLERO_CDC_REGISTERS_H
|
||||
#define _BOLERO_CDC_REGISTERS_H
|
||||
|
||||
#define TX_START_OFFSET 0x0000
|
||||
|
||||
#define BOLERO_CDC_TX_CLK_RST_CTRL_MCLK_CONTROL (TX_START_OFFSET + 0x0000)
|
||||
#define BOLERO_CDC_TX_CLK_RST_CTRL_FS_CNT_CONTROL (TX_START_OFFSET + 0x0004)
|
||||
#define BOLERO_CDC_TX_CLK_RST_CTRL_SWR_CONTROL (TX_START_OFFSET + 0x0008)
|
||||
#define BOLERO_CDC_TX_TOP_CSR_TOP_CFG0 (TX_START_OFFSET + 0x0080)
|
||||
#define BOLERO_CDC_TX_TOP_CSR_ANC_CFG (TX_START_OFFSET + 0x0084)
|
||||
#define BOLERO_CDC_TX_TOP_CSR_SWR_CTRL (TX_START_OFFSET + 0x0088)
|
||||
#define BOLERO_CDC_TX_TOP_CSR_FREQ_MCLK (TX_START_OFFSET + 0x0090)
|
||||
#define BOLERO_CDC_TX_TOP_CSR_DEBUG_BUS (TX_START_OFFSET + 0x0094)
|
||||
#define BOLERO_CDC_TX_TOP_CSR_DEBUG_EN (TX_START_OFFSET + 0x0098)
|
||||
#define BOLERO_CDC_TX_TOP_CSR_TX_I2S_CTL (TX_START_OFFSET + 0x00A4)
|
||||
#define BOLERO_CDC_TX_TOP_CSR_I2S_CLK (TX_START_OFFSET + 0x00A8)
|
||||
#define BOLERO_CDC_TX_TOP_CSR_I2S_RESET (TX_START_OFFSET + 0x00AC)
|
||||
#define BOLERO_CDC_TX_TOP_CSR_SWR_DMIC0_CTL (TX_START_OFFSET + 0x00C0)
|
||||
#define BOLERO_CDC_TX_TOP_CSR_SWR_DMIC1_CTL (TX_START_OFFSET + 0x00C4)
|
||||
#define BOLERO_CDC_TX_TOP_CSR_SWR_DMIC2_CTL (TX_START_OFFSET + 0x00C8)
|
||||
#define BOLERO_CDC_TX_TOP_CSR_SWR_DMIC3_CTL (TX_START_OFFSET + 0x00CC)
|
||||
#define BOLERO_CDC_TX_TOP_CSR_SWR_AMIC0_CTL (TX_START_OFFSET + 0x00D0)
|
||||
#define BOLERO_CDC_TX_TOP_CSR_SWR_AMIC1_CTL (TX_START_OFFSET + 0x00D4)
|
||||
#define BOLERO_CDC_TX_INP_MUX_ADC_MUX0_CFG0 (TX_START_OFFSET + 0x0100)
|
||||
#define BOLERO_CDC_TX_INP_MUX_ADC_MUX0_CFG1 (TX_START_OFFSET + 0x0104)
|
||||
#define BOLERO_CDC_TX_INP_MUX_ADC_MUX1_CFG0 (TX_START_OFFSET + 0x0108)
|
||||
#define BOLERO_CDC_TX_INP_MUX_ADC_MUX1_CFG1 (TX_START_OFFSET + 0x010C)
|
||||
#define BOLERO_CDC_TX_INP_MUX_ADC_MUX2_CFG0 (TX_START_OFFSET + 0x0110)
|
||||
#define BOLERO_CDC_TX_INP_MUX_ADC_MUX2_CFG1 (TX_START_OFFSET + 0x0114)
|
||||
#define BOLERO_CDC_TX_INP_MUX_ADC_MUX3_CFG0 (TX_START_OFFSET + 0x0118)
|
||||
#define BOLERO_CDC_TX_INP_MUX_ADC_MUX3_CFG1 (TX_START_OFFSET + 0x011C)
|
||||
#define BOLERO_CDC_TX_INP_MUX_ADC_MUX4_CFG0 (TX_START_OFFSET + 0x0120)
|
||||
#define BOLERO_CDC_TX_INP_MUX_ADC_MUX4_CFG1 (TX_START_OFFSET + 0x0124)
|
||||
#define BOLERO_CDC_TX_INP_MUX_ADC_MUX5_CFG0 (TX_START_OFFSET + 0x0128)
|
||||
#define BOLERO_CDC_TX_INP_MUX_ADC_MUX5_CFG1 (TX_START_OFFSET + 0x012C)
|
||||
#define BOLERO_CDC_TX_INP_MUX_ADC_MUX6_CFG0 (TX_START_OFFSET + 0x0130)
|
||||
#define BOLERO_CDC_TX_INP_MUX_ADC_MUX6_CFG1 (TX_START_OFFSET + 0x0134)
|
||||
#define BOLERO_CDC_TX_INP_MUX_ADC_MUX7_CFG0 (TX_START_OFFSET + 0x0138)
|
||||
#define BOLERO_CDC_TX_INP_MUX_ADC_MUX7_CFG1 (TX_START_OFFSET + 0x013C)
|
||||
#define BOLERO_CDC_TX_ANC0_CLK_RESET_CTL (TX_START_OFFSET + 0x0200)
|
||||
#define BOLERO_CDC_TX_ANC0_MODE_1_CTL (TX_START_OFFSET + 0x0204)
|
||||
#define BOLERO_CDC_TX_ANC0_MODE_2_CTL (TX_START_OFFSET + 0x0208)
|
||||
#define BOLERO_CDC_TX_ANC0_FF_SHIFT (TX_START_OFFSET + 0x020C)
|
||||
#define BOLERO_CDC_TX_ANC0_FB_SHIFT (TX_START_OFFSET + 0x0210)
|
||||
#define BOLERO_CDC_TX_ANC0_LPF_FF_A_CTL (TX_START_OFFSET + 0x0214)
|
||||
#define BOLERO_CDC_TX_ANC0_LPF_FF_B_CTL (TX_START_OFFSET + 0x0218)
|
||||
#define BOLERO_CDC_TX_ANC0_LPF_FB_CTL (TX_START_OFFSET + 0x021C)
|
||||
#define BOLERO_CDC_TX_ANC0_SMLPF_CTL (TX_START_OFFSET + 0x0220)
|
||||
#define BOLERO_CDC_TX_ANC0_DCFLT_SHIFT_CTL (TX_START_OFFSET + 0x0224)
|
||||
#define BOLERO_CDC_TX_ANC0_IIR_ADAPT_CTL (TX_START_OFFSET + 0x0228)
|
||||
#define BOLERO_CDC_TX_ANC0_IIR_COEFF_1_CTL (TX_START_OFFSET + 0x022C)
|
||||
#define BOLERO_CDC_TX_ANC0_IIR_COEFF_2_CTL (TX_START_OFFSET + 0x0230)
|
||||
#define BOLERO_CDC_TX_ANC0_FF_A_GAIN_CTL (TX_START_OFFSET + 0x0234)
|
||||
#define BOLERO_CDC_TX_ANC0_FF_B_GAIN_CTL (TX_START_OFFSET + 0x0238)
|
||||
#define BOLERO_CDC_TX_ANC0_FB_GAIN_CTL (TX_START_OFFSET + 0x023C)
|
||||
#define BOLERO_CDC_TX0_TX_PATH_CTL (TX_START_OFFSET + 0x0400)
|
||||
#define BOLERO_CDC_TX0_TX_PATH_CFG0 (TX_START_OFFSET + 0x0404)
|
||||
#define BOLERO_CDC_TX0_TX_PATH_CFG1 (TX_START_OFFSET + 0x0408)
|
||||
#define BOLERO_CDC_TX0_TX_VOL_CTL (TX_START_OFFSET + 0x040C)
|
||||
#define BOLERO_CDC_TX0_TX_PATH_SEC0 (TX_START_OFFSET + 0x0410)
|
||||
#define BOLERO_CDC_TX0_TX_PATH_SEC1 (TX_START_OFFSET + 0x0414)
|
||||
#define BOLERO_CDC_TX0_TX_PATH_SEC2 (TX_START_OFFSET + 0x0418)
|
||||
#define BOLERO_CDC_TX0_TX_PATH_SEC3 (TX_START_OFFSET + 0x041C)
|
||||
#define BOLERO_CDC_TX0_TX_PATH_SEC4 (TX_START_OFFSET + 0x0420)
|
||||
#define BOLERO_CDC_TX0_TX_PATH_SEC5 (TX_START_OFFSET + 0x0424)
|
||||
#define BOLERO_CDC_TX0_TX_PATH_SEC6 (TX_START_OFFSET + 0x0428)
|
||||
#define BOLERO_CDC_TX0_TX_PATH_SEC7 (TX_START_OFFSET + 0x042C)
|
||||
#define BOLERO_CDC_TX1_TX_PATH_CTL (TX_START_OFFSET + 0x0480)
|
||||
#define BOLERO_CDC_TX1_TX_PATH_CFG0 (TX_START_OFFSET + 0x0484)
|
||||
#define BOLERO_CDC_TX1_TX_PATH_CFG1 (TX_START_OFFSET + 0x0488)
|
||||
#define BOLERO_CDC_TX1_TX_VOL_CTL (TX_START_OFFSET + 0x048C)
|
||||
#define BOLERO_CDC_TX1_TX_PATH_SEC0 (TX_START_OFFSET + 0x0490)
|
||||
#define BOLERO_CDC_TX1_TX_PATH_SEC1 (TX_START_OFFSET + 0x0494)
|
||||
#define BOLERO_CDC_TX1_TX_PATH_SEC2 (TX_START_OFFSET + 0x0498)
|
||||
#define BOLERO_CDC_TX1_TX_PATH_SEC3 (TX_START_OFFSET + 0x049C)
|
||||
#define BOLERO_CDC_TX1_TX_PATH_SEC4 (TX_START_OFFSET + 0x04A0)
|
||||
#define BOLERO_CDC_TX1_TX_PATH_SEC5 (TX_START_OFFSET + 0x04A4)
|
||||
#define BOLERO_CDC_TX1_TX_PATH_SEC6 (TX_START_OFFSET + 0x04A8)
|
||||
#define BOLERO_CDC_TX2_TX_PATH_CTL (TX_START_OFFSET + 0x0500)
|
||||
#define BOLERO_CDC_TX2_TX_PATH_CFG0 (TX_START_OFFSET + 0x0504)
|
||||
#define BOLERO_CDC_TX2_TX_PATH_CFG1 (TX_START_OFFSET + 0x0508)
|
||||
#define BOLERO_CDC_TX2_TX_VOL_CTL (TX_START_OFFSET + 0x050C)
|
||||
#define BOLERO_CDC_TX2_TX_PATH_SEC0 (TX_START_OFFSET + 0x0510)
|
||||
#define BOLERO_CDC_TX2_TX_PATH_SEC1 (TX_START_OFFSET + 0x0514)
|
||||
#define BOLERO_CDC_TX2_TX_PATH_SEC2 (TX_START_OFFSET + 0x0518)
|
||||
#define BOLERO_CDC_TX2_TX_PATH_SEC3 (TX_START_OFFSET + 0x051C)
|
||||
#define BOLERO_CDC_TX2_TX_PATH_SEC4 (TX_START_OFFSET + 0x0520)
|
||||
#define BOLERO_CDC_TX2_TX_PATH_SEC5 (TX_START_OFFSET + 0x0524)
|
||||
#define BOLERO_CDC_TX2_TX_PATH_SEC6 (TX_START_OFFSET + 0x0528)
|
||||
#define BOLERO_CDC_TX3_TX_PATH_CTL (TX_START_OFFSET + 0x0580)
|
||||
#define BOLERO_CDC_TX3_TX_PATH_CFG0 (TX_START_OFFSET + 0x0584)
|
||||
#define BOLERO_CDC_TX3_TX_PATH_CFG1 (TX_START_OFFSET + 0x0588)
|
||||
#define BOLERO_CDC_TX3_TX_VOL_CTL (TX_START_OFFSET + 0x058C)
|
||||
#define BOLERO_CDC_TX3_TX_PATH_SEC0 (TX_START_OFFSET + 0x0590)
|
||||
#define BOLERO_CDC_TX3_TX_PATH_SEC1 (TX_START_OFFSET + 0x0594)
|
||||
#define BOLERO_CDC_TX3_TX_PATH_SEC2 (TX_START_OFFSET + 0x0598)
|
||||
#define BOLERO_CDC_TX3_TX_PATH_SEC3 (TX_START_OFFSET + 0x059C)
|
||||
#define BOLERO_CDC_TX3_TX_PATH_SEC4 (TX_START_OFFSET + 0x05A0)
|
||||
#define BOLERO_CDC_TX3_TX_PATH_SEC5 (TX_START_OFFSET + 0x05A4)
|
||||
#define BOLERO_CDC_TX3_TX_PATH_SEC6 (TX_START_OFFSET + 0x05A8)
|
||||
#define BOLERO_CDC_TX4_TX_PATH_CTL (TX_START_OFFSET + 0x0600)
|
||||
#define BOLERO_CDC_TX4_TX_PATH_CFG0 (TX_START_OFFSET + 0x0604)
|
||||
#define BOLERO_CDC_TX4_TX_PATH_CFG1 (TX_START_OFFSET + 0x0608)
|
||||
#define BOLERO_CDC_TX4_TX_VOL_CTL (TX_START_OFFSET + 0x060C)
|
||||
#define BOLERO_CDC_TX4_TX_PATH_SEC0 (TX_START_OFFSET + 0x0610)
|
||||
#define BOLERO_CDC_TX4_TX_PATH_SEC1 (TX_START_OFFSET + 0x0614)
|
||||
#define BOLERO_CDC_TX4_TX_PATH_SEC2 (TX_START_OFFSET + 0x0618)
|
||||
#define BOLERO_CDC_TX4_TX_PATH_SEC3 (TX_START_OFFSET + 0x061C)
|
||||
#define BOLERO_CDC_TX4_TX_PATH_SEC4 (TX_START_OFFSET + 0x0620)
|
||||
#define BOLERO_CDC_TX4_TX_PATH_SEC5 (TX_START_OFFSET + 0x0624)
|
||||
#define BOLERO_CDC_TX4_TX_PATH_SEC6 (TX_START_OFFSET + 0x0628)
|
||||
#define BOLERO_CDC_TX5_TX_PATH_CTL (TX_START_OFFSET + 0x0680)
|
||||
#define BOLERO_CDC_TX5_TX_PATH_CFG0 (TX_START_OFFSET + 0x0684)
|
||||
#define BOLERO_CDC_TX5_TX_PATH_CFG1 (TX_START_OFFSET + 0x0688)
|
||||
#define BOLERO_CDC_TX5_TX_VOL_CTL (TX_START_OFFSET + 0x068C)
|
||||
#define BOLERO_CDC_TX5_TX_PATH_SEC0 (TX_START_OFFSET + 0x0690)
|
||||
#define BOLERO_CDC_TX5_TX_PATH_SEC1 (TX_START_OFFSET + 0x0694)
|
||||
#define BOLERO_CDC_TX5_TX_PATH_SEC2 (TX_START_OFFSET + 0x0698)
|
||||
#define BOLERO_CDC_TX5_TX_PATH_SEC3 (TX_START_OFFSET + 0x069C)
|
||||
#define BOLERO_CDC_TX5_TX_PATH_SEC4 (TX_START_OFFSET + 0x06A0)
|
||||
#define BOLERO_CDC_TX5_TX_PATH_SEC5 (TX_START_OFFSET + 0x06A4)
|
||||
#define BOLERO_CDC_TX5_TX_PATH_SEC6 (TX_START_OFFSET + 0x06A8)
|
||||
#define BOLERO_CDC_TX6_TX_PATH_CTL (TX_START_OFFSET + 0x0700)
|
||||
#define BOLERO_CDC_TX6_TX_PATH_CFG0 (TX_START_OFFSET + 0x0704)
|
||||
#define BOLERO_CDC_TX6_TX_PATH_CFG1 (TX_START_OFFSET + 0x0708)
|
||||
#define BOLERO_CDC_TX6_TX_VOL_CTL (TX_START_OFFSET + 0x070C)
|
||||
#define BOLERO_CDC_TX6_TX_PATH_SEC0 (TX_START_OFFSET + 0x0710)
|
||||
#define BOLERO_CDC_TX6_TX_PATH_SEC1 (TX_START_OFFSET + 0x0714)
|
||||
#define BOLERO_CDC_TX6_TX_PATH_SEC2 (TX_START_OFFSET + 0x0718)
|
||||
#define BOLERO_CDC_TX6_TX_PATH_SEC3 (TX_START_OFFSET + 0x071C)
|
||||
#define BOLERO_CDC_TX6_TX_PATH_SEC4 (TX_START_OFFSET + 0x0720)
|
||||
#define BOLERO_CDC_TX6_TX_PATH_SEC5 (TX_START_OFFSET + 0x0724)
|
||||
#define BOLERO_CDC_TX6_TX_PATH_SEC6 (TX_START_OFFSET + 0x0728)
|
||||
#define BOLERO_CDC_TX7_TX_PATH_CTL (TX_START_OFFSET + 0x0780)
|
||||
#define BOLERO_CDC_TX7_TX_PATH_CFG0 (TX_START_OFFSET + 0x0784)
|
||||
#define BOLERO_CDC_TX7_TX_PATH_CFG1 (TX_START_OFFSET + 0x0788)
|
||||
#define BOLERO_CDC_TX7_TX_VOL_CTL (TX_START_OFFSET + 0x078C)
|
||||
#define BOLERO_CDC_TX7_TX_PATH_SEC0 (TX_START_OFFSET + 0x0790)
|
||||
#define BOLERO_CDC_TX7_TX_PATH_SEC1 (TX_START_OFFSET + 0x0794)
|
||||
#define BOLERO_CDC_TX7_TX_PATH_SEC2 (TX_START_OFFSET + 0x0798)
|
||||
#define BOLERO_CDC_TX7_TX_PATH_SEC3 (TX_START_OFFSET + 0x079C)
|
||||
#define BOLERO_CDC_TX7_TX_PATH_SEC4 (TX_START_OFFSET + 0x07A0)
|
||||
#define BOLERO_CDC_TX7_TX_PATH_SEC5 (TX_START_OFFSET + 0x07A4)
|
||||
#define BOLERO_CDC_TX7_TX_PATH_SEC6 (TX_START_OFFSET + 0x07A8)
|
||||
#define TX_MAX_OFFSET (TX_START_OFFSET + 0x07A8)
|
||||
|
||||
#define BOLERO_CDC_TX_MACRO_MAX 0x1EB /* 7A8/4 = 1EA + 1 */
|
||||
|
||||
#define RX_START_OFFSET 0x1000
|
||||
#define BOLERO_CDC_RX_TOP_TOP_CFG0 (RX_START_OFFSET + 0x0000)
|
||||
#define BOLERO_CDC_RX_TOP_SWR_CTRL (RX_START_OFFSET + 0x0008)
|
||||
#define BOLERO_CDC_RX_TOP_DEBUG (RX_START_OFFSET + 0x000C)
|
||||
#define BOLERO_CDC_RX_TOP_DEBUG_BUS (RX_START_OFFSET + 0x0010)
|
||||
#define BOLERO_CDC_RX_TOP_DEBUG_EN0 (RX_START_OFFSET + 0x0014)
|
||||
#define BOLERO_CDC_RX_TOP_DEBUG_EN1 (RX_START_OFFSET + 0x0018)
|
||||
#define BOLERO_CDC_RX_TOP_DEBUG_EN2 (RX_START_OFFSET + 0x001C)
|
||||
#define BOLERO_CDC_RX_TOP_HPHL_COMP_WR_LSB (RX_START_OFFSET + 0x0020)
|
||||
#define BOLERO_CDC_RX_TOP_HPHL_COMP_WR_MSB (RX_START_OFFSET + 0x0024)
|
||||
#define BOLERO_CDC_RX_TOP_HPHL_COMP_LUT (RX_START_OFFSET + 0x0028)
|
||||
#define BOLERO_CDC_RX_TOP_HPHL_COMP_RD_LSB (RX_START_OFFSET + 0x002C)
|
||||
#define BOLERO_CDC_RX_TOP_HPHL_COMP_RD_MSB (RX_START_OFFSET + 0x0030)
|
||||
#define BOLERO_CDC_RX_TOP_HPHR_COMP_WR_LSB (RX_START_OFFSET + 0x0034)
|
||||
#define BOLERO_CDC_RX_TOP_HPHR_COMP_WR_MSB (RX_START_OFFSET + 0x0038)
|
||||
#define BOLERO_CDC_RX_TOP_HPHR_COMP_LUT (RX_START_OFFSET + 0x003C)
|
||||
#define BOLERO_CDC_RX_TOP_HPHR_COMP_RD_LSB (RX_START_OFFSET + 0x0040)
|
||||
#define BOLERO_CDC_RX_TOP_HPHR_COMP_RD_MSB (RX_START_OFFSET + 0x0044)
|
||||
#define BOLERO_CDC_RX_TOP_DSD0_DEBUG_CFG0 (RX_START_OFFSET + 0x0070)
|
||||
#define BOLERO_CDC_RX_TOP_DSD0_DEBUG_CFG1 (RX_START_OFFSET + 0x0074)
|
||||
#define BOLERO_CDC_RX_TOP_DSD0_DEBUG_CFG2 (RX_START_OFFSET + 0x0078)
|
||||
#define BOLERO_CDC_RX_TOP_DSD0_DEBUG_CFG3 (RX_START_OFFSET + 0x007C)
|
||||
#define BOLERO_CDC_RX_TOP_DSD1_DEBUG_CFG0 (RX_START_OFFSET + 0x0080)
|
||||
#define BOLERO_CDC_RX_TOP_DSD1_DEBUG_CFG1 (RX_START_OFFSET + 0x0084)
|
||||
#define BOLERO_CDC_RX_TOP_DSD1_DEBUG_CFG2 (RX_START_OFFSET + 0x0088)
|
||||
#define BOLERO_CDC_RX_TOP_DSD1_DEBUG_CFG3 (RX_START_OFFSET + 0x008C)
|
||||
#define BOLERO_CDC_RX_TOP_RX_I2S_CTL (RX_START_OFFSET + 0x0090)
|
||||
#define BOLERO_CDC_RX_TOP_TX_I2S2_CTL (RX_START_OFFSET + 0x0094)
|
||||
#define BOLERO_CDC_RX_TOP_I2S_CLK (RX_START_OFFSET + 0x0098)
|
||||
#define BOLERO_CDC_RX_TOP_I2S_RESET (RX_START_OFFSET + 0x009C)
|
||||
#define BOLERO_CDC_RX_TOP_I2S_MUX (RX_START_OFFSET + 0x00A0)
|
||||
#define BOLERO_CDC_RX_CLK_RST_CTRL_MCLK_CONTROL (RX_START_OFFSET + 0x0100)
|
||||
#define BOLERO_CDC_RX_CLK_RST_CTRL_FS_CNT_CONTROL \
|
||||
(RX_START_OFFSET + 0x0104)
|
||||
#define BOLERO_CDC_RX_CLK_RST_CTRL_SWR_CONTROL (RX_START_OFFSET + 0x0108)
|
||||
#define BOLERO_CDC_RX_CLK_RST_CTRL_DSD_CONTROL (RX_START_OFFSET + 0x010C)
|
||||
#define BOLERO_CDC_RX_CLK_RST_CTRL_ASRC_SHARE_CONTROL \
|
||||
(RX_START_OFFSET + 0x0110)
|
||||
#define BOLERO_CDC_RX_SOFTCLIP_CRC (RX_START_OFFSET + 0x0140)
|
||||
#define BOLERO_CDC_RX_SOFTCLIP_SOFTCLIP_CTRL (RX_START_OFFSET + 0x0144)
|
||||
#define BOLERO_CDC_RX_INP_MUX_RX_INT0_CFG0 (RX_START_OFFSET + 0x0180)
|
||||
#define BOLERO_CDC_RX_INP_MUX_RX_INT0_CFG1 (RX_START_OFFSET + 0x0184)
|
||||
#define BOLERO_CDC_RX_INP_MUX_RX_INT1_CFG0 (RX_START_OFFSET + 0x0188)
|
||||
#define BOLERO_CDC_RX_INP_MUX_RX_INT1_CFG1 (RX_START_OFFSET + 0x018C)
|
||||
#define BOLERO_CDC_RX_INP_MUX_RX_INT2_CFG0 (RX_START_OFFSET + 0x0190)
|
||||
#define BOLERO_CDC_RX_INP_MUX_RX_INT2_CFG1 (RX_START_OFFSET + 0x0194)
|
||||
#define BOLERO_CDC_RX_INP_MUX_RX_MIX_CFG4 (RX_START_OFFSET + 0x0198)
|
||||
#define BOLERO_CDC_RX_INP_MUX_RX_MIX_CFG5 (RX_START_OFFSET + 0x019C)
|
||||
#define BOLERO_CDC_RX_INP_MUX_SIDETONE_SRC_CFG0 (RX_START_OFFSET + 0x01A0)
|
||||
#define BOLERO_CDC_RX_CLSH_CRC (RX_START_OFFSET + 0x0200)
|
||||
#define BOLERO_CDC_RX_CLSH_DLY_CTRL (RX_START_OFFSET + 0x0204)
|
||||
#define BOLERO_CDC_RX_CLSH_DECAY_CTRL (RX_START_OFFSET + 0x0208)
|
||||
#define BOLERO_CDC_RX_CLSH_HPH_V_PA (RX_START_OFFSET + 0x020C)
|
||||
#define BOLERO_CDC_RX_CLSH_EAR_V_PA (RX_START_OFFSET + 0x0210)
|
||||
#define BOLERO_CDC_RX_CLSH_HPH_V_HD (RX_START_OFFSET + 0x0214)
|
||||
#define BOLERO_CDC_RX_CLSH_EAR_V_HD (RX_START_OFFSET + 0x0218)
|
||||
#define BOLERO_CDC_RX_CLSH_K1_MSB (RX_START_OFFSET + 0x021C)
|
||||
#define BOLERO_CDC_RX_CLSH_K1_LSB (RX_START_OFFSET + 0x0220)
|
||||
#define BOLERO_CDC_RX_CLSH_K2_MSB (RX_START_OFFSET + 0x0224)
|
||||
#define BOLERO_CDC_RX_CLSH_K2_LSB (RX_START_OFFSET + 0x0228)
|
||||
#define BOLERO_CDC_RX_CLSH_IDLE_CTRL (RX_START_OFFSET + 0x022C)
|
||||
#define BOLERO_CDC_RX_CLSH_IDLE_HPH (RX_START_OFFSET + 0x0230)
|
||||
#define BOLERO_CDC_RX_CLSH_IDLE_EAR (RX_START_OFFSET + 0x0234)
|
||||
#define BOLERO_CDC_RX_CLSH_TEST0 (RX_START_OFFSET + 0x0238)
|
||||
#define BOLERO_CDC_RX_CLSH_TEST1 (RX_START_OFFSET + 0x023C)
|
||||
#define BOLERO_CDC_RX_CLSH_OVR_VREF (RX_START_OFFSET + 0x0240)
|
||||
#define BOLERO_CDC_RX_CLSH_CLSG_CTL (RX_START_OFFSET + 0x0244)
|
||||
#define BOLERO_CDC_RX_CLSH_CLSG_CFG1 (RX_START_OFFSET + 0x0248)
|
||||
#define BOLERO_CDC_RX_CLSH_CLSG_CFG2 (RX_START_OFFSET + 0x024C)
|
||||
#define BOLERO_CDC_RX_BCL_VBAT_PATH_CTL (RX_START_OFFSET + 0x0280)
|
||||
#define BOLERO_CDC_RX_BCL_VBAT_CFG (RX_START_OFFSET + 0x0284)
|
||||
#define BOLERO_CDC_RX_BCL_VBAT_ADC_CAL1 (RX_START_OFFSET + 0x0288)
|
||||
#define BOLERO_CDC_RX_BCL_VBAT_ADC_CAL2 (RX_START_OFFSET + 0x028C)
|
||||
#define BOLERO_CDC_RX_BCL_VBAT_ADC_CAL3 (RX_START_OFFSET + 0x0290)
|
||||
#define BOLERO_CDC_RX_BCL_VBAT_PK_EST1 (RX_START_OFFSET + 0x0294)
|
||||
#define BOLERO_CDC_RX_BCL_VBAT_PK_EST2 (RX_START_OFFSET + 0x0298)
|
||||
#define BOLERO_CDC_RX_BCL_VBAT_PK_EST3 (RX_START_OFFSET + 0x029C)
|
||||
#define BOLERO_CDC_RX_BCL_VBAT_RF_PROC1 (RX_START_OFFSET + 0x02A0)
|
||||
#define BOLERO_CDC_RX_BCL_VBAT_RF_PROC2 (RX_START_OFFSET + 0x02A4)
|
||||
#define BOLERO_CDC_RX_BCL_VBAT_TAC1 (RX_START_OFFSET + 0x02A8)
|
||||
#define BOLERO_CDC_RX_BCL_VBAT_TAC2 (RX_START_OFFSET + 0x02AC)
|
||||
#define BOLERO_CDC_RX_BCL_VBAT_TAC3 (RX_START_OFFSET + 0x02B0)
|
||||
#define BOLERO_CDC_RX_BCL_VBAT_TAC4 (RX_START_OFFSET + 0x02B4)
|
||||
#define BOLERO_CDC_RX_BCL_VBAT_GAIN_UPD1 (RX_START_OFFSET + 0x02B8)
|
||||
#define BOLERO_CDC_RX_BCL_VBAT_GAIN_UPD2 (RX_START_OFFSET + 0x02BC)
|
||||
#define BOLERO_CDC_RX_BCL_VBAT_GAIN_UPD3 (RX_START_OFFSET + 0x02C0)
|
||||
#define BOLERO_CDC_RX_BCL_VBAT_GAIN_UPD4 (RX_START_OFFSET + 0x02C4)
|
||||
#define BOLERO_CDC_RX_BCL_VBAT_GAIN_UPD5 (RX_START_OFFSET + 0x02C8)
|
||||
#define BOLERO_CDC_RX_BCL_VBAT_DEBUG1 (RX_START_OFFSET + 0x02CC)
|
||||
#define BOLERO_CDC_RX_BCL_VBAT_GAIN_UPD_MON (RX_START_OFFSET + 0x02D0)
|
||||
#define BOLERO_CDC_RX_BCL_VBAT_GAIN_MON_VAL (RX_START_OFFSET + 0x02D4)
|
||||
#define BOLERO_CDC_RX_BCL_VBAT_BAN (RX_START_OFFSET + 0x02D8)
|
||||
#define BOLERO_CDC_RX_BCL_VBAT_BCL_GAIN_UPD1 (RX_START_OFFSET + 0x02DC)
|
||||
#define BOLERO_CDC_RX_BCL_VBAT_BCL_GAIN_UPD2 (RX_START_OFFSET + 0x02E0)
|
||||
#define BOLERO_CDC_RX_BCL_VBAT_BCL_GAIN_UPD3 (RX_START_OFFSET + 0x02E4)
|
||||
#define BOLERO_CDC_RX_BCL_VBAT_BCL_GAIN_UPD4 (RX_START_OFFSET + 0x02E8)
|
||||
#define BOLERO_CDC_RX_BCL_VBAT_BCL_GAIN_UPD5 (RX_START_OFFSET + 0x02EC)
|
||||
#define BOLERO_CDC_RX_BCL_VBAT_BCL_GAIN_UPD6 (RX_START_OFFSET + 0x02F0)
|
||||
#define BOLERO_CDC_RX_BCL_VBAT_BCL_GAIN_UPD7 (RX_START_OFFSET + 0x02F4)
|
||||
#define BOLERO_CDC_RX_BCL_VBAT_BCL_GAIN_UPD8 (RX_START_OFFSET + 0x02F8)
|
||||
#define BOLERO_CDC_RX_BCL_VBAT_BCL_GAIN_UPD9 (RX_START_OFFSET + 0x02FC)
|
||||
#define BOLERO_CDC_RX_BCL_VBAT_ATTN1 (RX_START_OFFSET + 0x0300)
|
||||
#define BOLERO_CDC_RX_BCL_VBAT_ATTN2 (RX_START_OFFSET + 0x0304)
|
||||
#define BOLERO_CDC_RX_BCL_VBAT_ATTN3 (RX_START_OFFSET + 0x0308)
|
||||
#define BOLERO_CDC_RX_BCL_VBAT_DECODE_CTL1 (RX_START_OFFSET + 0x030C)
|
||||
#define BOLERO_CDC_RX_BCL_VBAT_DECODE_CTL2 (RX_START_OFFSET + 0x0310)
|
||||
#define BOLERO_CDC_RX_BCL_VBAT_DECODE_CFG1 (RX_START_OFFSET + 0x0314)
|
||||
#define BOLERO_CDC_RX_BCL_VBAT_DECODE_CFG2 (RX_START_OFFSET + 0x0318)
|
||||
#define BOLERO_CDC_RX_BCL_VBAT_DECODE_CFG3 (RX_START_OFFSET + 0x031C)
|
||||
#define BOLERO_CDC_RX_BCL_VBAT_DECODE_CFG4 (RX_START_OFFSET + 0x0320)
|
||||
#define BOLERO_CDC_RX_BCL_VBAT_DECODE_ST (RX_START_OFFSET + 0x0324)
|
||||
#define BOLERO_CDC_RX_INTR_CTRL_CFG (RX_START_OFFSET + 0x0340)
|
||||
#define BOLERO_CDC_RX_INTR_CTRL_CLR_COMMIT (RX_START_OFFSET + 0x0344)
|
||||
#define BOLERO_CDC_RX_INTR_CTRL_PIN1_MASK0 (RX_START_OFFSET + 0x0360)
|
||||
#define BOLERO_CDC_RX_INTR_CTRL_PIN1_STATUS0 (RX_START_OFFSET + 0x0368)
|
||||
#define BOLERO_CDC_RX_INTR_CTRL_PIN1_CLEAR0 (RX_START_OFFSET + 0x0370)
|
||||
#define BOLERO_CDC_RX_INTR_CTRL_PIN2_MASK0 (RX_START_OFFSET + 0x0380)
|
||||
#define BOLERO_CDC_RX_INTR_CTRL_PIN2_STATUS0 (RX_START_OFFSET + 0x0388)
|
||||
#define BOLERO_CDC_RX_INTR_CTRL_PIN2_CLEAR0 (RX_START_OFFSET + 0x0390)
|
||||
#define BOLERO_CDC_RX_INTR_CTRL_LEVEL0 (RX_START_OFFSET + 0x03C0)
|
||||
#define BOLERO_CDC_RX_INTR_CTRL_BYPASS0 (RX_START_OFFSET + 0x03C8)
|
||||
#define BOLERO_CDC_RX_INTR_CTRL_SET0 (RX_START_OFFSET + 0x03D0)
|
||||
#define BOLERO_CDC_RX_RX0_RX_PATH_CTL (RX_START_OFFSET + 0x0400)
|
||||
#define BOLERO_CDC_RX_RX0_RX_PATH_CFG0 (RX_START_OFFSET + 0x0404)
|
||||
#define BOLERO_CDC_RX_RX0_RX_PATH_CFG1 (RX_START_OFFSET + 0x0408)
|
||||
#define BOLERO_CDC_RX_RX0_RX_PATH_CFG2 (RX_START_OFFSET + 0x040C)
|
||||
#define BOLERO_CDC_RX_RX0_RX_PATH_CFG3 (RX_START_OFFSET + 0x0410)
|
||||
#define BOLERO_CDC_RX_RX0_RX_VOL_CTL (RX_START_OFFSET + 0x0414)
|
||||
#define BOLERO_CDC_RX_RX0_RX_PATH_MIX_CTL (RX_START_OFFSET + 0x0418)
|
||||
#define BOLERO_CDC_RX_RX0_RX_PATH_MIX_CFG (RX_START_OFFSET + 0x041C)
|
||||
#define BOLERO_CDC_RX_RX0_RX_VOL_MIX_CTL (RX_START_OFFSET + 0x0420)
|
||||
#define BOLERO_CDC_RX_RX0_RX_PATH_SEC1 (RX_START_OFFSET + 0x0424)
|
||||
#define BOLERO_CDC_RX_RX0_RX_PATH_SEC2 (RX_START_OFFSET + 0x0428)
|
||||
#define BOLERO_CDC_RX_RX0_RX_PATH_SEC3 (RX_START_OFFSET + 0x042C)
|
||||
#define BOLERO_CDC_RX_RX0_RX_PATH_SEC4 (RX_START_OFFSET + 0x0430)
|
||||
#define BOLERO_CDC_RX_RX0_RX_PATH_SEC7 (RX_START_OFFSET + 0x0434)
|
||||
#define BOLERO_CDC_RX_RX0_RX_PATH_MIX_SEC0 (RX_START_OFFSET + 0x0438)
|
||||
#define BOLERO_CDC_RX_RX0_RX_PATH_MIX_SEC1 (RX_START_OFFSET + 0x043C)
|
||||
#define BOLERO_CDC_RX_RX0_RX_PATH_DSM_CTL (RX_START_OFFSET + 0x0440)
|
||||
#define BOLERO_CDC_RX_RX0_RX_PATH_DSM_DATA1 (RX_START_OFFSET + 0x0444)
|
||||
#define BOLERO_CDC_RX_RX0_RX_PATH_DSM_DATA2 (RX_START_OFFSET + 0x0448)
|
||||
#define BOLERO_CDC_RX_RX0_RX_PATH_DSM_DATA3 (RX_START_OFFSET + 0x044C)
|
||||
#define BOLERO_CDC_RX_RX0_RX_PATH_DSM_DATA4 (RX_START_OFFSET + 0x0450)
|
||||
#define BOLERO_CDC_RX_RX0_RX_PATH_DSM_DATA5 (RX_START_OFFSET + 0x0454)
|
||||
#define BOLERO_CDC_RX_RX0_RX_PATH_DSM_DATA6 (RX_START_OFFSET + 0x0458)
|
||||
#define BOLERO_CDC_RX_RX1_RX_PATH_CTL (RX_START_OFFSET + 0x0480)
|
||||
#define BOLERO_CDC_RX_RX1_RX_PATH_CFG0 (RX_START_OFFSET + 0x0484)
|
||||
#define BOLERO_CDC_RX_RX1_RX_PATH_CFG1 (RX_START_OFFSET + 0x0488)
|
||||
#define BOLERO_CDC_RX_RX1_RX_PATH_CFG2 (RX_START_OFFSET + 0x048C)
|
||||
#define BOLERO_CDC_RX_RX1_RX_PATH_CFG3 (RX_START_OFFSET + 0x0490)
|
||||
#define BOLERO_CDC_RX_RX1_RX_VOL_CTL (RX_START_OFFSET + 0x0494)
|
||||
#define BOLERO_CDC_RX_RX1_RX_PATH_MIX_CTL (RX_START_OFFSET + 0x0498)
|
||||
#define BOLERO_CDC_RX_RX1_RX_PATH_MIX_CFG (RX_START_OFFSET + 0x049C)
|
||||
#define BOLERO_CDC_RX_RX1_RX_VOL_MIX_CTL (RX_START_OFFSET + 0x04A0)
|
||||
#define BOLERO_CDC_RX_RX1_RX_PATH_SEC1 (RX_START_OFFSET + 0x04A4)
|
||||
#define BOLERO_CDC_RX_RX1_RX_PATH_SEC2 (RX_START_OFFSET + 0x04A8)
|
||||
#define BOLERO_CDC_RX_RX1_RX_PATH_SEC3 (RX_START_OFFSET + 0x04AC)
|
||||
#define BOLERO_CDC_RX_RX1_RX_PATH_SEC4 (RX_START_OFFSET + 0x04B0)
|
||||
#define BOLERO_CDC_RX_RX1_RX_PATH_SEC7 (RX_START_OFFSET + 0x04B4)
|
||||
#define BOLERO_CDC_RX_RX1_RX_PATH_MIX_SEC0 (RX_START_OFFSET + 0x04B8)
|
||||
#define BOLERO_CDC_RX_RX1_RX_PATH_MIX_SEC1 (RX_START_OFFSET + 0x04BC)
|
||||
#define BOLERO_CDC_RX_RX1_RX_PATH_DSM_CTL (RX_START_OFFSET + 0x04C0)
|
||||
#define BOLERO_CDC_RX_RX1_RX_PATH_DSM_DATA1 (RX_START_OFFSET + 0x04C4)
|
||||
#define BOLERO_CDC_RX_RX1_RX_PATH_DSM_DATA2 (RX_START_OFFSET + 0x04C8)
|
||||
#define BOLERO_CDC_RX_RX1_RX_PATH_DSM_DATA3 (RX_START_OFFSET + 0x04CC)
|
||||
#define BOLERO_CDC_RX_RX1_RX_PATH_DSM_DATA4 (RX_START_OFFSET + 0x04D0)
|
||||
#define BOLERO_CDC_RX_RX1_RX_PATH_DSM_DATA5 (RX_START_OFFSET + 0x04D4)
|
||||
#define BOLERO_CDC_RX_RX1_RX_PATH_DSM_DATA6 (RX_START_OFFSET + 0x04D8)
|
||||
#define BOLERO_CDC_RX_RX2_RX_PATH_CTL (RX_START_OFFSET + 0x0500)
|
||||
#define BOLERO_CDC_RX_RX2_RX_PATH_CFG0 (RX_START_OFFSET + 0x0504)
|
||||
#define BOLERO_CDC_RX_RX2_RX_PATH_CFG1 (RX_START_OFFSET + 0x0508)
|
||||
#define BOLERO_CDC_RX_RX2_RX_PATH_CFG2 (RX_START_OFFSET + 0x050C)
|
||||
#define BOLERO_CDC_RX_RX2_RX_PATH_CFG3 (RX_START_OFFSET + 0x0510)
|
||||
#define BOLERO_CDC_RX_RX2_RX_VOL_CTL (RX_START_OFFSET + 0x0514)
|
||||
#define BOLERO_CDC_RX_RX2_RX_PATH_MIX_CTL (RX_START_OFFSET + 0x0518)
|
||||
#define BOLERO_CDC_RX_RX2_RX_PATH_MIX_CFG (RX_START_OFFSET + 0x051C)
|
||||
#define BOLERO_CDC_RX_RX2_RX_VOL_MIX_CTL (RX_START_OFFSET + 0x0520)
|
||||
#define BOLERO_CDC_RX_RX2_RX_PATH_SEC0 (RX_START_OFFSET + 0x0524)
|
||||
#define BOLERO_CDC_RX_RX2_RX_PATH_SEC1 (RX_START_OFFSET + 0x0528)
|
||||
#define BOLERO_CDC_RX_RX2_RX_PATH_SEC2 (RX_START_OFFSET + 0x052C)
|
||||
#define BOLERO_CDC_RX_RX2_RX_PATH_SEC3 (RX_START_OFFSET + 0x0530)
|
||||
#define BOLERO_CDC_RX_RX2_RX_PATH_SEC4 (RX_START_OFFSET + 0x0534)
|
||||
#define BOLERO_CDC_RX_RX2_RX_PATH_SEC5 (RX_START_OFFSET + 0x0538)
|
||||
#define BOLERO_CDC_RX_RX2_RX_PATH_SEC6 (RX_START_OFFSET + 0x053C)
|
||||
#define BOLERO_CDC_RX_RX2_RX_PATH_SEC7 (RX_START_OFFSET + 0x0540)
|
||||
#define BOLERO_CDC_RX_RX2_RX_PATH_MIX_SEC0 (RX_START_OFFSET + 0x0544)
|
||||
#define BOLERO_CDC_RX_RX2_RX_PATH_MIX_SEC1 (RX_START_OFFSET + 0x0548)
|
||||
#define BOLERO_CDC_RX_RX2_RX_PATH_DSM_CTL (RX_START_OFFSET + 0x054C)
|
||||
#define BOLERO_CDC_RX_IDLE_DETECT_PATH_CTL (RX_START_OFFSET + 0x0780)
|
||||
#define BOLERO_CDC_RX_IDLE_DETECT_CFG0 (RX_START_OFFSET + 0x0784)
|
||||
#define BOLERO_CDC_RX_IDLE_DETECT_CFG1 (RX_START_OFFSET + 0x0788)
|
||||
#define BOLERO_CDC_RX_IDLE_DETECT_CFG2 (RX_START_OFFSET + 0x078C)
|
||||
#define BOLERO_CDC_RX_IDLE_DETECT_CFG3 (RX_START_OFFSET + 0x0790)
|
||||
#define BOLERO_CDC_RX_COMPANDER0_CTL0 (RX_START_OFFSET + 0x0800)
|
||||
#define BOLERO_CDC_RX_COMPANDER0_CTL1 (RX_START_OFFSET + 0x0804)
|
||||
#define BOLERO_CDC_RX_COMPANDER0_CTL2 (RX_START_OFFSET + 0x0808)
|
||||
#define BOLERO_CDC_RX_COMPANDER0_CTL3 (RX_START_OFFSET + 0x080C)
|
||||
#define BOLERO_CDC_RX_COMPANDER0_CTL4 (RX_START_OFFSET + 0x0810)
|
||||
#define BOLERO_CDC_RX_COMPANDER0_CTL5 (RX_START_OFFSET + 0x0814)
|
||||
#define BOLERO_CDC_RX_COMPANDER0_CTL6 (RX_START_OFFSET + 0x0818)
|
||||
#define BOLERO_CDC_RX_COMPANDER0_CTL7 (RX_START_OFFSET + 0x081C)
|
||||
#define BOLERO_CDC_RX_COMPANDER1_CTL0 (RX_START_OFFSET + 0x0840)
|
||||
#define BOLERO_CDC_RX_COMPANDER1_CTL1 (RX_START_OFFSET + 0x0844)
|
||||
#define BOLERO_CDC_RX_COMPANDER1_CTL2 (RX_START_OFFSET + 0x0848)
|
||||
#define BOLERO_CDC_RX_COMPANDER1_CTL3 (RX_START_OFFSET + 0x084C)
|
||||
#define BOLERO_CDC_RX_COMPANDER1_CTL4 (RX_START_OFFSET + 0x0850)
|
||||
#define BOLERO_CDC_RX_COMPANDER1_CTL5 (RX_START_OFFSET + 0x0854)
|
||||
#define BOLERO_CDC_RX_COMPANDER1_CTL6 (RX_START_OFFSET + 0x0858)
|
||||
#define BOLERO_CDC_RX_COMPANDER1_CTL7 (RX_START_OFFSET + 0x085C)
|
||||
#define BOLERO_CDC_RX_SIDETONE_IIR0_IIR_PATH_CTL \
|
||||
(RX_START_OFFSET + 0x0A00)
|
||||
#define BOLERO_CDC_RX_SIDETONE_IIR0_IIR_GAIN_B1_CTL \
|
||||
(RX_START_OFFSET + 0x0A04)
|
||||
#define BOLERO_CDC_RX_SIDETONE_IIR0_IIR_GAIN_B2_CTL \
|
||||
(RX_START_OFFSET + 0x0A08)
|
||||
#define BOLERO_CDC_RX_SIDETONE_IIR0_IIR_GAIN_B3_CTL \
|
||||
(RX_START_OFFSET + 0x0A0C)
|
||||
#define BOLERO_CDC_RX_SIDETONE_IIR0_IIR_GAIN_B4_CTL \
|
||||
(RX_START_OFFSET + 0x0A10)
|
||||
#define BOLERO_CDC_RX_SIDETONE_IIR0_IIR_GAIN_B5_CTL \
|
||||
(RX_START_OFFSET + 0x0A14)
|
||||
#define BOLERO_CDC_RX_SIDETONE_IIR0_IIR_GAIN_B6_CTL \
|
||||
(RX_START_OFFSET + 0x0A18)
|
||||
#define BOLERO_CDC_RX_SIDETONE_IIR0_IIR_GAIN_B7_CTL \
|
||||
(RX_START_OFFSET + 0x0A1C)
|
||||
#define BOLERO_CDC_RX_SIDETONE_IIR0_IIR_GAIN_B8_CTL \
|
||||
(RX_START_OFFSET + 0x0A20)
|
||||
#define BOLERO_CDC_RX_SIDETONE_IIR0_IIR_CTL (RX_START_OFFSET + 0x0A24)
|
||||
#define BOLERO_CDC_RX_SIDETONE_IIR0_IIR_GAIN_TIMER_CTL \
|
||||
(RX_START_OFFSET + 0x0A28)
|
||||
#define BOLERO_CDC_RX_SIDETONE_IIR0_IIR_COEF_B1_CTL \
|
||||
(RX_START_OFFSET + 0x0A2C)
|
||||
#define BOLERO_CDC_RX_SIDETONE_IIR0_IIR_COEF_B2_CTL \
|
||||
(RX_START_OFFSET + 0x0A30)
|
||||
#define BOLERO_CDC_RX_SIDETONE_IIR1_IIR_PATH_CTL \
|
||||
(RX_START_OFFSET + 0x0A80)
|
||||
#define BOLERO_CDC_RX_SIDETONE_IIR1_IIR_GAIN_B1_CTL \
|
||||
(RX_START_OFFSET + 0x0A84)
|
||||
#define BOLERO_CDC_RX_SIDETONE_IIR1_IIR_GAIN_B2_CTL \
|
||||
(RX_START_OFFSET + 0x0A88)
|
||||
#define BOLERO_CDC_RX_SIDETONE_IIR1_IIR_GAIN_B3_CTL \
|
||||
(RX_START_OFFSET + 0x0A8C)
|
||||
#define BOLERO_CDC_RX_SIDETONE_IIR1_IIR_GAIN_B4_CTL \
|
||||
(RX_START_OFFSET + 0x0A90)
|
||||
#define BOLERO_CDC_RX_SIDETONE_IIR1_IIR_GAIN_B5_CTL \
|
||||
(RX_START_OFFSET + 0x0A94)
|
||||
#define BOLERO_CDC_RX_SIDETONE_IIR1_IIR_GAIN_B6_CTL \
|
||||
(RX_START_OFFSET + 0x0A98)
|
||||
#define BOLERO_CDC_RX_SIDETONE_IIR1_IIR_GAIN_B7_CTL \
|
||||
(RX_START_OFFSET + 0x0A9C)
|
||||
#define BOLERO_CDC_RX_SIDETONE_IIR1_IIR_GAIN_B8_CTL \
|
||||
(RX_START_OFFSET + 0x0AA0)
|
||||
#define BOLERO_CDC_RX_SIDETONE_IIR1_IIR_CTL (RX_START_OFFSET + 0x0AA4)
|
||||
#define BOLERO_CDC_RX_SIDETONE_IIR1_IIR_GAIN_TIMER_CTL \
|
||||
(RX_START_OFFSET + 0x0AA8)
|
||||
#define BOLERO_CDC_RX_SIDETONE_IIR1_IIR_COEF_B1_CTL \
|
||||
(RX_START_OFFSET + 0x0AAC)
|
||||
#define BOLERO_CDC_RX_SIDETONE_IIR1_IIR_COEF_B2_CTL \
|
||||
(RX_START_OFFSET + 0x0AB0)
|
||||
#define BOLERO_CDC_RX_IIR_INP_MUX_IIR0_MIX_CFG0 (RX_START_OFFSET + 0x0B00)
|
||||
#define BOLERO_CDC_RX_IIR_INP_MUX_IIR0_MIX_CFG1 (RX_START_OFFSET + 0x0B04)
|
||||
#define BOLERO_CDC_RX_IIR_INP_MUX_IIR0_MIX_CFG2 (RX_START_OFFSET + 0x0B08)
|
||||
#define BOLERO_CDC_RX_IIR_INP_MUX_IIR0_MIX_CFG3 (RX_START_OFFSET + 0x0B0C)
|
||||
#define BOLERO_CDC_RX_IIR_INP_MUX_IIR1_MIX_CFG0 (RX_START_OFFSET + 0x0B10)
|
||||
#define BOLERO_CDC_RX_IIR_INP_MUX_IIR1_MIX_CFG1 (RX_START_OFFSET + 0x0B14)
|
||||
#define BOLERO_CDC_RX_IIR_INP_MUX_IIR1_MIX_CFG2 (RX_START_OFFSET + 0x0B18)
|
||||
#define BOLERO_CDC_RX_IIR_INP_MUX_IIR1_MIX_CFG3 (RX_START_OFFSET + 0x0B1C)
|
||||
#define BOLERO_CDC_RX_SIDETONE_SRC0_ST_SRC_PATH_CTL \
|
||||
(RX_START_OFFSET + 0x0B40)
|
||||
#define BOLERO_CDC_RX_SIDETONE_SRC0_ST_SRC_PATH_CFG1 \
|
||||
(RX_START_OFFSET + 0x0B44)
|
||||
#define BOLERO_CDC_RX_SIDETONE_SRC1_ST_SRC_PATH_CTL \
|
||||
(RX_START_OFFSET + 0x0B50)
|
||||
#define BOLERO_CDC_RX_SIDETONE_SRC1_ST_SRC_PATH_CFG1 \
|
||||
(RX_START_OFFSET + 0x0B54)
|
||||
#define BOLERO_CDC_RX_EC_REF_HQ0_EC_REF_HQ_PATH_CTL \
|
||||
(RX_START_OFFSET + 0x0C00)
|
||||
#define BOLERO_CDC_RX_EC_REF_HQ0_EC_REF_HQ_CFG0 (RX_START_OFFSET + 0x0C04)
|
||||
#define BOLERO_CDC_RX_EC_REF_HQ1_EC_REF_HQ_PATH_CTL \
|
||||
(RX_START_OFFSET + 0x0C40)
|
||||
#define BOLERO_CDC_RX_EC_REF_HQ1_EC_REF_HQ_CFG0 (RX_START_OFFSET + 0x0C44)
|
||||
#define BOLERO_CDC_RX_EC_REF_HQ2_EC_REF_HQ_PATH_CTL \
|
||||
(RX_START_OFFSET + 0x0C80)
|
||||
#define BOLERO_CDC_RX_EC_REF_HQ2_EC_REF_HQ_CFG0 (RX_START_OFFSET + 0x0C84)
|
||||
#define BOLERO_CDC_RX_EC_ASRC0_CLK_RST_CTL (RX_START_OFFSET + 0x0D00)
|
||||
#define BOLERO_CDC_RX_EC_ASRC0_CTL0 (RX_START_OFFSET + 0x0D04)
|
||||
#define BOLERO_CDC_RX_EC_ASRC0_CTL1 (RX_START_OFFSET + 0x0D08)
|
||||
#define BOLERO_CDC_RX_EC_ASRC0_FIFO_CTL (RX_START_OFFSET + 0x0D0C)
|
||||
#define BOLERO_CDC_RX_EC_ASRC0_STATUS_FMIN_CNTR_LSB \
|
||||
(RX_START_OFFSET + 0x0D10)
|
||||
#define BOLERO_CDC_RX_EC_ASRC0_STATUS_FMIN_CNTR_MSB \
|
||||
(RX_START_OFFSET + 0x0D14)
|
||||
#define BOLERO_CDC_RX_EC_ASRC0_STATUS_FMAX_CNTR_LSB \
|
||||
(RX_START_OFFSET + 0x0D18)
|
||||
#define BOLERO_CDC_RX_EC_ASRC0_STATUS_FMAX_CNTR_MSB \
|
||||
(RX_START_OFFSET + 0x0D1C)
|
||||
#define BOLERO_CDC_RX_EC_ASRC0_STATUS_FIFO (RX_START_OFFSET + 0x0D20)
|
||||
#define BOLERO_CDC_RX_EC_ASRC1_CLK_RST_CTL (RX_START_OFFSET + 0x0D40)
|
||||
#define BOLERO_CDC_RX_EC_ASRC1_CTL0 (RX_START_OFFSET + 0x0D44)
|
||||
#define BOLERO_CDC_RX_EC_ASRC1_CTL1 (RX_START_OFFSET + 0x0D48)
|
||||
#define BOLERO_CDC_RX_EC_ASRC1_FIFO_CTL (RX_START_OFFSET + 0x0D4C)
|
||||
#define BOLERO_CDC_RX_EC_ASRC1_STATUS_FMIN_CNTR_LSB \
|
||||
(RX_START_OFFSET + 0x0D50)
|
||||
#define BOLERO_CDC_RX_EC_ASRC1_STATUS_FMIN_CNTR_MSB \
|
||||
(RX_START_OFFSET + 0x0D54)
|
||||
#define BOLERO_CDC_RX_EC_ASRC1_STATUS_FMAX_CNTR_LSB \
|
||||
(RX_START_OFFSET + 0x0D58)
|
||||
#define BOLERO_CDC_RX_EC_ASRC1_STATUS_FMAX_CNTR_MSB \
|
||||
(RX_START_OFFSET + 0x0D5C)
|
||||
#define BOLERO_CDC_RX_EC_ASRC1_STATUS_FIFO (RX_START_OFFSET + 0x0D60)
|
||||
#define BOLERO_CDC_RX_EC_ASRC2_CLK_RST_CTL (RX_START_OFFSET + 0x0D80)
|
||||
#define BOLERO_CDC_RX_EC_ASRC2_CTL0 (RX_START_OFFSET + 0x0D84)
|
||||
#define BOLERO_CDC_RX_EC_ASRC2_CTL1 (RX_START_OFFSET + 0x0D88)
|
||||
#define BOLERO_CDC_RX_EC_ASRC2_FIFO_CTL (RX_START_OFFSET + 0x0D8C)
|
||||
#define BOLERO_CDC_RX_EC_ASRC2_STATUS_FMIN_CNTR_LSB \
|
||||
(RX_START_OFFSET + 0x0D90)
|
||||
#define BOLERO_CDC_RX_EC_ASRC2_STATUS_FMIN_CNTR_MSB \
|
||||
(RX_START_OFFSET + 0x0D94)
|
||||
#define BOLERO_CDC_RX_EC_ASRC2_STATUS_FMAX_CNTR_LSB \
|
||||
(RX_START_OFFSET + 0x0D98)
|
||||
#define BOLERO_CDC_RX_EC_ASRC2_STATUS_FMAX_CNTR_MSB \
|
||||
(RX_START_OFFSET + 0x0D9C)
|
||||
#define BOLERO_CDC_RX_EC_ASRC2_STATUS_FIFO (RX_START_OFFSET + 0x0DA0)
|
||||
#define BOLERO_CDC_RX_DSD0_PATH_CTL (RX_START_OFFSET + 0x0F00)
|
||||
#define BOLERO_CDC_RX_DSD0_CFG0 (RX_START_OFFSET + 0x0F04)
|
||||
#define BOLERO_CDC_RX_DSD0_CFG1 (RX_START_OFFSET + 0x0F08)
|
||||
#define BOLERO_CDC_RX_DSD0_CFG2 (RX_START_OFFSET + 0x0F0C)
|
||||
#define BOLERO_CDC_RX_DSD1_PATH_CTL (RX_START_OFFSET + 0x0F80)
|
||||
#define BOLERO_CDC_RX_DSD1_CFG0 (RX_START_OFFSET + 0x0F84)
|
||||
#define BOLERO_CDC_RX_DSD1_CFG1 (RX_START_OFFSET + 0x0F88)
|
||||
#define BOLERO_CDC_RX_DSD1_CFG2 (RX_START_OFFSET + 0x0F8C)
|
||||
#define RX_MAX_OFFSET (RX_START_OFFSET + 0x0F8C)
|
||||
|
||||
#define BOLERO_CDC_RX_MACRO_MAX 0x3E4 /* F8C/4 = 3E3 + 1 */
|
||||
|
||||
/* WSA - macro#2 */
|
||||
#define WSA_START_OFFSET 0x2000
|
||||
#define BOLERO_CDC_WSA_CLK_RST_CTRL_MCLK_CONTROL \
|
||||
(WSA_START_OFFSET + 0x0000)
|
||||
#define BOLERO_CDC_WSA_CLK_RST_CTRL_FS_CNT_CONTROL \
|
||||
(WSA_START_OFFSET + 0x0004)
|
||||
#define BOLERO_CDC_WSA_CLK_RST_CTRL_SWR_CONTROL (WSA_START_OFFSET + 0x0008)
|
||||
#define BOLERO_CDC_WSA_TOP_TOP_CFG0 (WSA_START_OFFSET + 0x0080)
|
||||
#define BOLERO_CDC_WSA_TOP_TOP_CFG1 (WSA_START_OFFSET + 0x0084)
|
||||
#define BOLERO_CDC_WSA_TOP_FREQ_MCLK (WSA_START_OFFSET + 0x0088)
|
||||
#define BOLERO_CDC_WSA_TOP_DEBUG_BUS_SEL (WSA_START_OFFSET + 0x008C)
|
||||
#define BOLERO_CDC_WSA_TOP_DEBUG_EN0 (WSA_START_OFFSET + 0x0090)
|
||||
#define BOLERO_CDC_WSA_TOP_DEBUG_EN1 (WSA_START_OFFSET + 0x0094)
|
||||
#define BOLERO_CDC_WSA_TOP_DEBUG_DSM_LB (WSA_START_OFFSET + 0x0098)
|
||||
#define BOLERO_CDC_WSA_TOP_RX_I2S_CTL (WSA_START_OFFSET + 0x009C)
|
||||
#define BOLERO_CDC_WSA_TOP_TX_I2S_CTL (WSA_START_OFFSET + 0x00A0)
|
||||
#define BOLERO_CDC_WSA_TOP_I2S_CLK (WSA_START_OFFSET + 0x00A4)
|
||||
#define BOLERO_CDC_WSA_TOP_I2S_RESET (WSA_START_OFFSET + 0x00A8)
|
||||
#define BOLERO_CDC_WSA_RX_INP_MUX_RX_INT0_CFG0 (WSA_START_OFFSET + 0x0100)
|
||||
#define BOLERO_CDC_WSA_RX_INP_MUX_RX_INT0_CFG1 (WSA_START_OFFSET + 0x0104)
|
||||
#define BOLERO_CDC_WSA_RX_INP_MUX_RX_INT1_CFG0 (WSA_START_OFFSET + 0x0108)
|
||||
#define BOLERO_CDC_WSA_RX_INP_MUX_RX_INT1_CFG1 (WSA_START_OFFSET + 0x010C)
|
||||
#define BOLERO_CDC_WSA_RX_INP_MUX_RX_MIX_CFG0 (WSA_START_OFFSET + 0x0110)
|
||||
#define BOLERO_CDC_WSA_RX_INP_MUX_RX_EC_CFG0 (WSA_START_OFFSET + 0x0114)
|
||||
#define BOLERO_CDC_WSA_RX_INP_MUX_SOFTCLIP_CFG0 (WSA_START_OFFSET + 0x0118)
|
||||
/* VBAT registers */
|
||||
#define BOLERO_CDC_WSA_VBAT_BCL_VBAT_PATH_CTL (WSA_START_OFFSET + 0x0180)
|
||||
#define BOLERO_CDC_WSA_VBAT_BCL_VBAT_CFG (WSA_START_OFFSET + 0x0184)
|
||||
#define BOLERO_CDC_WSA_VBAT_BCL_VBAT_ADC_CAL1 (WSA_START_OFFSET + 0x0188)
|
||||
#define BOLERO_CDC_WSA_VBAT_BCL_VBAT_ADC_CAL2 (WSA_START_OFFSET + 0x018C)
|
||||
#define BOLERO_CDC_WSA_VBAT_BCL_VBAT_ADC_CAL3 (WSA_START_OFFSET + 0x0190)
|
||||
#define BOLERO_CDC_WSA_VBAT_BCL_VBAT_PK_EST1 (WSA_START_OFFSET + 0x0194)
|
||||
#define BOLERO_CDC_WSA_VBAT_BCL_VBAT_PK_EST2 (WSA_START_OFFSET + 0x0198)
|
||||
#define BOLERO_CDC_WSA_VBAT_BCL_VBAT_PK_EST3 (WSA_START_OFFSET + 0x019C)
|
||||
#define BOLERO_CDC_WSA_VBAT_BCL_VBAT_RF_PROC1 (WSA_START_OFFSET + 0x01A0)
|
||||
#define BOLERO_CDC_WSA_VBAT_BCL_VBAT_RF_PROC2 (WSA_START_OFFSET + 0x01A4)
|
||||
#define BOLERO_CDC_WSA_VBAT_BCL_VBAT_TAC1 (WSA_START_OFFSET + 0x01A8)
|
||||
#define BOLERO_CDC_WSA_VBAT_BCL_VBAT_TAC2 (WSA_START_OFFSET + 0x01AC)
|
||||
#define BOLERO_CDC_WSA_VBAT_BCL_VBAT_TAC3 (WSA_START_OFFSET + 0x01B0)
|
||||
#define BOLERO_CDC_WSA_VBAT_BCL_VBAT_TAC4 (WSA_START_OFFSET + 0x01B4)
|
||||
#define BOLERO_CDC_WSA_VBAT_BCL_VBAT_GAIN_UPD1 (WSA_START_OFFSET + 0x01B8)
|
||||
#define BOLERO_CDC_WSA_VBAT_BCL_VBAT_GAIN_UPD2 (WSA_START_OFFSET + 0x01BC)
|
||||
#define BOLERO_CDC_WSA_VBAT_BCL_VBAT_GAIN_UPD3 (WSA_START_OFFSET + 0x01C0)
|
||||
#define BOLERO_CDC_WSA_VBAT_BCL_VBAT_GAIN_UPD4 (WSA_START_OFFSET + 0x01C4)
|
||||
#define BOLERO_CDC_WSA_VBAT_BCL_VBAT_GAIN_UPD5 (WSA_START_OFFSET + 0x01C8)
|
||||
#define BOLERO_CDC_WSA_VBAT_BCL_VBAT_DEBUG1 (WSA_START_OFFSET + 0x01CC)
|
||||
#define BOLERO_CDC_WSA_VBAT_BCL_VBAT_GAIN_UPD_MON \
|
||||
(WSA_START_OFFSET + 0x01D0)
|
||||
#define BOLERO_CDC_WSA_VBAT_BCL_VBAT_GAIN_MON_VAL \
|
||||
(WSA_START_OFFSET + 0x01D4)
|
||||
#define BOLERO_CDC_WSA_VBAT_BCL_VBAT_BAN (WSA_START_OFFSET + 0x01D8)
|
||||
#define BOLERO_CDC_WSA_VBAT_BCL_VBAT_BCL_GAIN_UPD1 \
|
||||
(WSA_START_OFFSET + 0x01DC)
|
||||
#define BOLERO_CDC_WSA_VBAT_BCL_VBAT_BCL_GAIN_UPD2 \
|
||||
(WSA_START_OFFSET + 0x01E0)
|
||||
#define BOLERO_CDC_WSA_VBAT_BCL_VBAT_BCL_GAIN_UPD3 \
|
||||
(WSA_START_OFFSET + 0x01E4)
|
||||
#define BOLERO_CDC_WSA_VBAT_BCL_VBAT_BCL_GAIN_UPD4 \
|
||||
(WSA_START_OFFSET + 0x01E8)
|
||||
#define BOLERO_CDC_WSA_VBAT_BCL_VBAT_BCL_GAIN_UPD5 \
|
||||
(WSA_START_OFFSET + 0x01EC)
|
||||
#define BOLERO_CDC_WSA_VBAT_BCL_VBAT_BCL_GAIN_UPD6 \
|
||||
(WSA_START_OFFSET + 0x01F0)
|
||||
#define BOLERO_CDC_WSA_VBAT_BCL_VBAT_BCL_GAIN_UPD7 \
|
||||
(WSA_START_OFFSET + 0x01F4)
|
||||
#define BOLERO_CDC_WSA_VBAT_BCL_VBAT_BCL_GAIN_UPD8 \
|
||||
(WSA_START_OFFSET + 0x01F8)
|
||||
#define BOLERO_CDC_WSA_VBAT_BCL_VBAT_BCL_GAIN_UPD9 \
|
||||
(WSA_START_OFFSET + 0x01FC)
|
||||
#define BOLERO_CDC_WSA_VBAT_BCL_VBAT_BCL_ATTN1 (WSA_START_OFFSET + 0x0200)
|
||||
#define BOLERO_CDC_WSA_VBAT_BCL_VBAT_BCL_ATTN2 (WSA_START_OFFSET + 0x0204)
|
||||
#define BOLERO_CDC_WSA_VBAT_BCL_VBAT_BCL_ATTN3 (WSA_START_OFFSET + 0x0208)
|
||||
#define BOLERO_CDC_WSA_VBAT_BCL_VBAT_DECODE_CTL1 \
|
||||
(WSA_START_OFFSET + 0x020C)
|
||||
#define BOLERO_CDC_WSA_VBAT_BCL_VBAT_DECODE_CTL2 \
|
||||
(WSA_START_OFFSET + 0x0210)
|
||||
#define BOLERO_CDC_WSA_VBAT_BCL_VBAT_DECODE_CFG1 \
|
||||
(WSA_START_OFFSET + 0x0214)
|
||||
#define BOLERO_CDC_WSA_VBAT_BCL_VBAT_DECODE_CFG2 \
|
||||
(WSA_START_OFFSET + 0x0218)
|
||||
#define BOLERO_CDC_WSA_VBAT_BCL_VBAT_DECODE_CFG3 \
|
||||
(WSA_START_OFFSET + 0x021C)
|
||||
#define BOLERO_CDC_WSA_VBAT_BCL_VBAT_DECODE_CFG4 \
|
||||
(WSA_START_OFFSET + 0x0220)
|
||||
#define BOLERO_CDC_WSA_VBAT_BCL_VBAT_DECODE_ST (WSA_START_OFFSET + 0x0224)
|
||||
#define BOLERO_CDC_WSA_TX0_SPKR_PROT_PATH_CTL (WSA_START_OFFSET + 0x0244)
|
||||
#define BOLERO_CDC_WSA_TX0_SPKR_PROT_PATH_CFG0 (WSA_START_OFFSET + 0x0248)
|
||||
#define BOLERO_CDC_WSA_TX1_SPKR_PROT_PATH_CTL (WSA_START_OFFSET + 0x0264)
|
||||
#define BOLERO_CDC_WSA_TX1_SPKR_PROT_PATH_CFG0 (WSA_START_OFFSET + 0x0268)
|
||||
#define BOLERO_CDC_WSA_TX2_SPKR_PROT_PATH_CTL (WSA_START_OFFSET + 0x0284)
|
||||
#define BOLERO_CDC_WSA_TX2_SPKR_PROT_PATH_CFG0 (WSA_START_OFFSET + 0x0288)
|
||||
#define BOLERO_CDC_WSA_TX3_SPKR_PROT_PATH_CTL (WSA_START_OFFSET + 0x02A4)
|
||||
#define BOLERO_CDC_WSA_TX3_SPKR_PROT_PATH_CFG0 (WSA_START_OFFSET + 0x02A8)
|
||||
#define BOLERO_CDC_WSA_INTR_CTRL_CFG (WSA_START_OFFSET + 0x0340)
|
||||
#define BOLERO_CDC_WSA_INTR_CTRL_CLR_COMMIT (WSA_START_OFFSET + 0x0344)
|
||||
#define BOLERO_CDC_WSA_INTR_CTRL_PIN1_MASK0 (WSA_START_OFFSET + 0x0360)
|
||||
#define BOLERO_CDC_WSA_INTR_CTRL_PIN1_STATUS0 (WSA_START_OFFSET + 0x0368)
|
||||
#define BOLERO_CDC_WSA_INTR_CTRL_PIN1_CLEAR0 (WSA_START_OFFSET + 0x0370)
|
||||
#define BOLERO_CDC_WSA_INTR_CTRL_PIN2_MASK0 (WSA_START_OFFSET + 0x0380)
|
||||
#define BOLERO_CDC_WSA_INTR_CTRL_PIN2_STATUS0 (WSA_START_OFFSET + 0x0388)
|
||||
#define BOLERO_CDC_WSA_INTR_CTRL_PIN2_CLEAR0 (WSA_START_OFFSET + 0x0390)
|
||||
#define BOLERO_CDC_WSA_INTR_CTRL_LEVEL0 (WSA_START_OFFSET + 0x03C0)
|
||||
#define BOLERO_CDC_WSA_INTR_CTRL_BYPASS0 (WSA_START_OFFSET + 0x03C8)
|
||||
#define BOLERO_CDC_WSA_INTR_CTRL_SET0 (WSA_START_OFFSET + 0x03D0)
|
||||
#define BOLERO_CDC_WSA_RX0_RX_PATH_CTL (WSA_START_OFFSET + 0x0400)
|
||||
#define BOLERO_CDC_WSA_RX0_RX_PATH_CFG0 (WSA_START_OFFSET + 0x0404)
|
||||
#define BOLERO_CDC_WSA_RX0_RX_PATH_CFG1 (WSA_START_OFFSET + 0x0408)
|
||||
#define BOLERO_CDC_WSA_RX0_RX_PATH_CFG2 (WSA_START_OFFSET + 0x040C)
|
||||
#define BOLERO_CDC_WSA_RX0_RX_PATH_CFG3 (WSA_START_OFFSET + 0x0410)
|
||||
#define BOLERO_CDC_WSA_RX0_RX_VOL_CTL (WSA_START_OFFSET + 0x0414)
|
||||
#define BOLERO_CDC_WSA_RX0_RX_PATH_MIX_CTL (WSA_START_OFFSET + 0x0418)
|
||||
#define BOLERO_CDC_WSA_RX0_RX_PATH_MIX_CFG (WSA_START_OFFSET + 0x041C)
|
||||
#define BOLERO_CDC_WSA_RX0_RX_VOL_MIX_CTL (WSA_START_OFFSET + 0x0420)
|
||||
#define BOLERO_CDC_WSA_RX0_RX_PATH_SEC0 (WSA_START_OFFSET + 0x0424)
|
||||
#define BOLERO_CDC_WSA_RX0_RX_PATH_SEC1 (WSA_START_OFFSET + 0x0428)
|
||||
#define BOLERO_CDC_WSA_RX0_RX_PATH_SEC2 (WSA_START_OFFSET + 0x042C)
|
||||
#define BOLERO_CDC_WSA_RX0_RX_PATH_SEC3 (WSA_START_OFFSET + 0x0430)
|
||||
#define BOLERO_CDC_WSA_RX0_RX_PATH_SEC5 (WSA_START_OFFSET + 0x0438)
|
||||
#define BOLERO_CDC_WSA_RX0_RX_PATH_SEC6 (WSA_START_OFFSET + 0x043C)
|
||||
#define BOLERO_CDC_WSA_RX0_RX_PATH_SEC7 (WSA_START_OFFSET + 0x0440)
|
||||
#define BOLERO_CDC_WSA_RX0_RX_PATH_MIX_SEC0 (WSA_START_OFFSET + 0x0444)
|
||||
#define BOLERO_CDC_WSA_RX0_RX_PATH_MIX_SEC1 (WSA_START_OFFSET + 0x0448)
|
||||
#define BOLERO_CDC_WSA_RX0_RX_PATH_DSMDEM_CTL (WSA_START_OFFSET + 0x044C)
|
||||
#define BOLERO_CDC_WSA_RX1_RX_PATH_CTL (WSA_START_OFFSET + 0x0480)
|
||||
#define BOLERO_CDC_WSA_RX1_RX_PATH_CFG0 (WSA_START_OFFSET + 0x0484)
|
||||
#define BOLERO_CDC_WSA_RX1_RX_PATH_CFG1 (WSA_START_OFFSET + 0x0488)
|
||||
#define BOLERO_CDC_WSA_RX1_RX_PATH_CFG2 (WSA_START_OFFSET + 0x048C)
|
||||
#define BOLERO_CDC_WSA_RX1_RX_PATH_CFG3 (WSA_START_OFFSET + 0x0490)
|
||||
#define BOLERO_CDC_WSA_RX1_RX_VOL_CTL (WSA_START_OFFSET + 0x0494)
|
||||
#define BOLERO_CDC_WSA_RX1_RX_PATH_MIX_CTL (WSA_START_OFFSET + 0x0498)
|
||||
#define BOLERO_CDC_WSA_RX1_RX_PATH_MIX_CFG (WSA_START_OFFSET + 0x049C)
|
||||
#define BOLERO_CDC_WSA_RX1_RX_VOL_MIX_CTL (WSA_START_OFFSET + 0x04A0)
|
||||
#define BOLERO_CDC_WSA_RX1_RX_PATH_SEC0 (WSA_START_OFFSET + 0x04A4)
|
||||
#define BOLERO_CDC_WSA_RX1_RX_PATH_SEC1 (WSA_START_OFFSET + 0x04A8)
|
||||
#define BOLERO_CDC_WSA_RX1_RX_PATH_SEC2 (WSA_START_OFFSET + 0x04AC)
|
||||
#define BOLERO_CDC_WSA_RX1_RX_PATH_SEC3 (WSA_START_OFFSET + 0x04B0)
|
||||
#define BOLERO_CDC_WSA_RX1_RX_PATH_SEC5 (WSA_START_OFFSET + 0x04B8)
|
||||
#define BOLERO_CDC_WSA_RX1_RX_PATH_SEC6 (WSA_START_OFFSET + 0x04BC)
|
||||
#define BOLERO_CDC_WSA_RX1_RX_PATH_SEC7 (WSA_START_OFFSET + 0x04C0)
|
||||
#define BOLERO_CDC_WSA_RX1_RX_PATH_MIX_SEC0 (WSA_START_OFFSET + 0x04C4)
|
||||
#define BOLERO_CDC_WSA_RX1_RX_PATH_MIX_SEC1 (WSA_START_OFFSET + 0x04C8)
|
||||
#define BOLERO_CDC_WSA_RX1_RX_PATH_DSMDEM_CTL (WSA_START_OFFSET + 0x04CC)
|
||||
#define BOLERO_CDC_WSA_BOOST0_BOOST_PATH_CTL (WSA_START_OFFSET + 0x0500)
|
||||
#define BOLERO_CDC_WSA_BOOST0_BOOST_CTL (WSA_START_OFFSET + 0x0504)
|
||||
#define BOLERO_CDC_WSA_BOOST0_BOOST_CFG1 (WSA_START_OFFSET + 0x0508)
|
||||
#define BOLERO_CDC_WSA_BOOST0_BOOST_CFG2 (WSA_START_OFFSET + 0x050C)
|
||||
#define BOLERO_CDC_WSA_BOOST1_BOOST_PATH_CTL (WSA_START_OFFSET + 0x0540)
|
||||
#define BOLERO_CDC_WSA_BOOST1_BOOST_CTL (WSA_START_OFFSET + 0x0544)
|
||||
#define BOLERO_CDC_WSA_BOOST1_BOOST_CFG1 (WSA_START_OFFSET + 0x0548)
|
||||
#define BOLERO_CDC_WSA_BOOST1_BOOST_CFG2 (WSA_START_OFFSET + 0x054C)
|
||||
#define BOLERO_CDC_WSA_COMPANDER0_CTL0 (WSA_START_OFFSET + 0x0580)
|
||||
#define BOLERO_CDC_WSA_COMPANDER0_CTL1 (WSA_START_OFFSET + 0x0584)
|
||||
#define BOLERO_CDC_WSA_COMPANDER0_CTL2 (WSA_START_OFFSET + 0x0588)
|
||||
#define BOLERO_CDC_WSA_COMPANDER0_CTL3 (WSA_START_OFFSET + 0x058C)
|
||||
#define BOLERO_CDC_WSA_COMPANDER0_CTL4 (WSA_START_OFFSET + 0x0590)
|
||||
#define BOLERO_CDC_WSA_COMPANDER0_CTL5 (WSA_START_OFFSET + 0x0594)
|
||||
#define BOLERO_CDC_WSA_COMPANDER0_CTL6 (WSA_START_OFFSET + 0x0598)
|
||||
#define BOLERO_CDC_WSA_COMPANDER0_CTL7 (WSA_START_OFFSET + 0x059C)
|
||||
#define BOLERO_CDC_WSA_COMPANDER1_CTL0 (WSA_START_OFFSET + 0x05C0)
|
||||
#define BOLERO_CDC_WSA_COMPANDER1_CTL1 (WSA_START_OFFSET + 0x05C4)
|
||||
#define BOLERO_CDC_WSA_COMPANDER1_CTL2 (WSA_START_OFFSET + 0x05C8)
|
||||
#define BOLERO_CDC_WSA_COMPANDER1_CTL3 (WSA_START_OFFSET + 0x05CC)
|
||||
#define BOLERO_CDC_WSA_COMPANDER1_CTL4 (WSA_START_OFFSET + 0x05D0)
|
||||
#define BOLERO_CDC_WSA_COMPANDER1_CTL5 (WSA_START_OFFSET + 0x05D4)
|
||||
#define BOLERO_CDC_WSA_COMPANDER1_CTL6 (WSA_START_OFFSET + 0x05D8)
|
||||
#define BOLERO_CDC_WSA_COMPANDER1_CTL7 (WSA_START_OFFSET + 0x05DC)
|
||||
#define BOLERO_CDC_WSA_SOFTCLIP0_CRC (WSA_START_OFFSET + 0x0600)
|
||||
#define BOLERO_CDC_WSA_SOFTCLIP0_SOFTCLIP_CTRL (WSA_START_OFFSET + 0x0604)
|
||||
#define BOLERO_CDC_WSA_SOFTCLIP1_CRC (WSA_START_OFFSET + 0x0640)
|
||||
#define BOLERO_CDC_WSA_SOFTCLIP1_SOFTCLIP_CTRL (WSA_START_OFFSET + 0x0644)
|
||||
#define BOLERO_CDC_WSA_EC_HQ0_EC_REF_HQ_PATH_CTL \
|
||||
(WSA_START_OFFSET + 0x0680)
|
||||
#define BOLERO_CDC_WSA_EC_HQ0_EC_REF_HQ_CFG0 (WSA_START_OFFSET + 0x0684)
|
||||
#define BOLERO_CDC_WSA_EC_HQ1_EC_REF_HQ_PATH_CTL \
|
||||
(WSA_START_OFFSET + 0x06C0)
|
||||
#define BOLERO_CDC_WSA_EC_HQ1_EC_REF_HQ_CFG0 (WSA_START_OFFSET + 0x06C4)
|
||||
#define BOLERO_CDC_WSA_SPLINE_ASRC0_CLK_RST_CTL (WSA_START_OFFSET + 0x0700)
|
||||
#define BOLERO_CDC_WSA_SPLINE_ASRC0_CTL0 (WSA_START_OFFSET + 0x0704)
|
||||
#define BOLERO_CDC_WSA_SPLINE_ASRC0_CTL1 (WSA_START_OFFSET + 0x0708)
|
||||
#define BOLERO_CDC_WSA_SPLINE_ASRC0_FIFO_CTL (WSA_START_OFFSET + 0x070C)
|
||||
#define BOLERO_CDC_WSA_SPLINE_ASRC0_STATUS_FMIN_CNTR_LSB \
|
||||
(WSA_START_OFFSET + 0x0710)
|
||||
#define BOLERO_CDC_WSA_SPLINE_ASRC0_STATUS_FMIN_CNTR_MSB \
|
||||
(WSA_START_OFFSET + 0x0714)
|
||||
#define BOLERO_CDC_WSA_SPLINE_ASRC0_STATUS_FMAX_CNTR_LSB \
|
||||
(WSA_START_OFFSET + 0x0718)
|
||||
#define BOLERO_CDC_WSA_SPLINE_ASRC0_STATUS_FMAX_CNTR_MSB \
|
||||
(WSA_START_OFFSET + 0x071C)
|
||||
#define BOLERO_CDC_WSA_SPLINE_ASRC0_STATUS_FIFO (WSA_START_OFFSET + 0x0720)
|
||||
#define BOLERO_CDC_WSA_SPLINE_ASRC1_CLK_RST_CTL (WSA_START_OFFSET + 0x0740)
|
||||
#define BOLERO_CDC_WSA_SPLINE_ASRC1_CTL0 (WSA_START_OFFSET + 0x0744)
|
||||
#define BOLERO_CDC_WSA_SPLINE_ASRC1_CTL1 (WSA_START_OFFSET + 0x0748)
|
||||
#define BOLERO_CDC_WSA_SPLINE_ASRC1_FIFO_CTL (WSA_START_OFFSET + 0x074C)
|
||||
#define BOLERO_CDC_WSA_SPLINE_ASRC1_STATUS_FMIN_CNTR_LSB \
|
||||
(WSA_START_OFFSET + 0x0750)
|
||||
#define BOLERO_CDC_WSA_SPLINE_ASRC1_STATUS_FMIN_CNTR_MSB \
|
||||
(WSA_START_OFFSET + 0x0754)
|
||||
#define BOLERO_CDC_WSA_SPLINE_ASRC1_STATUS_FMAX_CNTR_LSB \
|
||||
(WSA_START_OFFSET + 0x0758)
|
||||
#define BOLERO_CDC_WSA_SPLINE_ASRC1_STATUS_FMAX_CNTR_MSB \
|
||||
(WSA_START_OFFSET + 0x075C)
|
||||
#define BOLERO_CDC_WSA_SPLINE_ASRC1_STATUS_FIFO (WSA_START_OFFSET + 0x0760)
|
||||
#define WSA_MAX_OFFSET (WSA_START_OFFSET + 0x0760)
|
||||
|
||||
#define BOLERO_CDC_WSA_MACRO_MAX 0x1D9 /* 0x760/4 = 0x1D8 + 1 registers */
|
||||
|
||||
/* VA macro registers */
|
||||
#define VA_START_OFFSET 0x3000
|
||||
#define BOLERO_CDC_VA_CLK_RST_CTRL_MCLK_CONTROL (VA_START_OFFSET + 0x0000)
|
||||
#define BOLERO_CDC_VA_CLK_RST_CTRL_FS_CNT_CONTROL \
|
||||
(VA_START_OFFSET + 0x0004)
|
||||
#define BOLERO_CDC_VA_TOP_CSR_TOP_CFG0 (VA_START_OFFSET + 0x0080)
|
||||
#define BOLERO_CDC_VA_TOP_CSR_DMIC0_CTL (VA_START_OFFSET + 0x0084)
|
||||
#define BOLERO_CDC_VA_TOP_CSR_DMIC1_CTL (VA_START_OFFSET + 0x0088)
|
||||
#define BOLERO_CDC_VA_TOP_CSR_DMIC2_CTL (VA_START_OFFSET + 0x008C)
|
||||
#define BOLERO_CDC_VA_TOP_CSR_DMIC3_CTL (VA_START_OFFSET + 0x0090)
|
||||
#define BOLERO_CDC_VA_TOP_CSR_DMIC_CFG (VA_START_OFFSET + 0x0094)
|
||||
#define BOLERO_CDC_VA_TOP_CSR_DEBUG_BUS (VA_START_OFFSET + 0x009C)
|
||||
#define BOLERO_CDC_VA_TOP_CSR_DEBUG_EN (VA_START_OFFSET + 0x00A0)
|
||||
#define BOLERO_CDC_VA_TOP_CSR_TX_I2S_CTL (VA_START_OFFSET + 0x00A4)
|
||||
#define BOLERO_CDC_VA_TOP_CSR_I2S_CLK (VA_START_OFFSET + 0x00A8)
|
||||
#define BOLERO_CDC_VA_TOP_CSR_I2S_RESET (VA_START_OFFSET + 0x00AC)
|
||||
#define BOLERO_CDC_VA_TOP_CSR_CORE_ID_0 (VA_START_OFFSET + 0x00C0)
|
||||
#define BOLERO_CDC_VA_TOP_CSR_CORE_ID_1 (VA_START_OFFSET + 0x00C4)
|
||||
#define BOLERO_CDC_VA_TOP_CSR_CORE_ID_2 (VA_START_OFFSET + 0x00C8)
|
||||
#define BOLERO_CDC_VA_TOP_CSR_CORE_ID_3 (VA_START_OFFSET + 0x00CC)
|
||||
#define VA_TOP_MAX_OFFSET (VA_START_OFFSET + 0x00CC)
|
||||
|
||||
#define BOLERO_CDC_VA_MACRO_TOP_MAX 0x34 /* 0x0CC/4 = 0x33 + 1 = 0x34 */
|
||||
|
||||
#define BOLERO_CDC_VA_INP_MUX_ADC_MUX0_CFG0 (VA_START_OFFSET + 0x0100)
|
||||
#define BOLERO_CDC_VA_INP_MUX_ADC_MUX0_CFG1 (VA_START_OFFSET + 0x0104)
|
||||
#define BOLERO_CDC_VA_INP_MUX_ADC_MUX1_CFG0 (VA_START_OFFSET + 0x0108)
|
||||
#define BOLERO_CDC_VA_INP_MUX_ADC_MUX1_CFG1 (VA_START_OFFSET + 0x010C)
|
||||
#define BOLERO_CDC_VA_INP_MUX_ADC_MUX2_CFG0 (VA_START_OFFSET + 0x0110)
|
||||
#define BOLERO_CDC_VA_INP_MUX_ADC_MUX2_CFG1 (VA_START_OFFSET + 0x0114)
|
||||
#define BOLERO_CDC_VA_INP_MUX_ADC_MUX3_CFG0 (VA_START_OFFSET + 0x0118)
|
||||
#define BOLERO_CDC_VA_INP_MUX_ADC_MUX3_CFG1 (VA_START_OFFSET + 0x011C)
|
||||
#define BOLERO_CDC_VA_INP_MUX_ADC_MUX4_CFG0 (VA_START_OFFSET + 0x0120)
|
||||
#define BOLERO_CDC_VA_INP_MUX_ADC_MUX4_CFG1 (VA_START_OFFSET + 0x0124)
|
||||
#define BOLERO_CDC_VA_INP_MUX_ADC_MUX5_CFG0 (VA_START_OFFSET + 0x0128)
|
||||
#define BOLERO_CDC_VA_INP_MUX_ADC_MUX5_CFG1 (VA_START_OFFSET + 0x012C)
|
||||
#define BOLERO_CDC_VA_INP_MUX_ADC_MUX6_CFG0 (VA_START_OFFSET + 0x0130)
|
||||
#define BOLERO_CDC_VA_INP_MUX_ADC_MUX6_CFG1 (VA_START_OFFSET + 0x0134)
|
||||
#define BOLERO_CDC_VA_INP_MUX_ADC_MUX7_CFG0 (VA_START_OFFSET + 0x0138)
|
||||
#define BOLERO_CDC_VA_INP_MUX_ADC_MUX7_CFG1 (VA_START_OFFSET + 0x013C)
|
||||
|
||||
#define BOLERO_CDC_VA_TX0_TX_PATH_CTL (VA_START_OFFSET + 0x0400)
|
||||
#define BOLERO_CDC_VA_TX0_TX_PATH_CFG0 (VA_START_OFFSET + 0x0404)
|
||||
#define BOLERO_CDC_VA_TX0_TX_PATH_CFG1 (VA_START_OFFSET + 0x0408)
|
||||
#define BOLERO_CDC_VA_TX0_TX_VOL_CTL (VA_START_OFFSET + 0x040C)
|
||||
#define BOLERO_CDC_VA_TX0_TX_PATH_SEC0 (VA_START_OFFSET + 0x0410)
|
||||
#define BOLERO_CDC_VA_TX0_TX_PATH_SEC1 (VA_START_OFFSET + 0x0414)
|
||||
#define BOLERO_CDC_VA_TX0_TX_PATH_SEC2 (VA_START_OFFSET + 0x0418)
|
||||
#define BOLERO_CDC_VA_TX0_TX_PATH_SEC3 (VA_START_OFFSET + 0x041C)
|
||||
#define BOLERO_CDC_VA_TX0_TX_PATH_SEC4 (VA_START_OFFSET + 0x0420)
|
||||
#define BOLERO_CDC_VA_TX0_TX_PATH_SEC5 (VA_START_OFFSET + 0x0424)
|
||||
#define BOLERO_CDC_VA_TX0_TX_PATH_SEC6 (VA_START_OFFSET + 0x0428)
|
||||
#define BOLERO_CDC_VA_TX0_TX_PATH_SEC7 (VA_START_OFFSET + 0x042C)
|
||||
#define BOLERO_CDC_VA_TX1_TX_PATH_CTL (VA_START_OFFSET + 0x0480)
|
||||
#define BOLERO_CDC_VA_TX1_TX_PATH_CFG0 (VA_START_OFFSET + 0x0484)
|
||||
#define BOLERO_CDC_VA_TX1_TX_PATH_CFG1 (VA_START_OFFSET + 0x0488)
|
||||
#define BOLERO_CDC_VA_TX1_TX_VOL_CTL (VA_START_OFFSET + 0x048C)
|
||||
#define BOLERO_CDC_VA_TX1_TX_PATH_SEC0 (VA_START_OFFSET + 0x0490)
|
||||
#define BOLERO_CDC_VA_TX1_TX_PATH_SEC1 (VA_START_OFFSET + 0x0494)
|
||||
#define BOLERO_CDC_VA_TX1_TX_PATH_SEC2 (VA_START_OFFSET + 0x0498)
|
||||
#define BOLERO_CDC_VA_TX1_TX_PATH_SEC3 (VA_START_OFFSET + 0x049C)
|
||||
#define BOLERO_CDC_VA_TX1_TX_PATH_SEC4 (VA_START_OFFSET + 0x04A0)
|
||||
#define BOLERO_CDC_VA_TX1_TX_PATH_SEC5 (VA_START_OFFSET + 0x04A4)
|
||||
#define BOLERO_CDC_VA_TX1_TX_PATH_SEC6 (VA_START_OFFSET + 0x04A8)
|
||||
#define BOLERO_CDC_VA_TX2_TX_PATH_CTL (VA_START_OFFSET + 0x0500)
|
||||
#define BOLERO_CDC_VA_TX2_TX_PATH_CFG0 (VA_START_OFFSET + 0x0504)
|
||||
#define BOLERO_CDC_VA_TX2_TX_PATH_CFG1 (VA_START_OFFSET + 0x0508)
|
||||
#define BOLERO_CDC_VA_TX2_TX_VOL_CTL (VA_START_OFFSET + 0x050C)
|
||||
#define BOLERO_CDC_VA_TX2_TX_PATH_SEC0 (VA_START_OFFSET + 0x0510)
|
||||
#define BOLERO_CDC_VA_TX2_TX_PATH_SEC1 (VA_START_OFFSET + 0x0514)
|
||||
#define BOLERO_CDC_VA_TX2_TX_PATH_SEC2 (VA_START_OFFSET + 0x0518)
|
||||
#define BOLERO_CDC_VA_TX2_TX_PATH_SEC3 (VA_START_OFFSET + 0x051C)
|
||||
#define BOLERO_CDC_VA_TX2_TX_PATH_SEC4 (VA_START_OFFSET + 0x0520)
|
||||
#define BOLERO_CDC_VA_TX2_TX_PATH_SEC5 (VA_START_OFFSET + 0x0524)
|
||||
#define BOLERO_CDC_VA_TX2_TX_PATH_SEC6 (VA_START_OFFSET + 0x0528)
|
||||
#define BOLERO_CDC_VA_TX3_TX_PATH_CTL (VA_START_OFFSET + 0x0580)
|
||||
#define BOLERO_CDC_VA_TX3_TX_PATH_CFG0 (VA_START_OFFSET + 0x0584)
|
||||
#define BOLERO_CDC_VA_TX3_TX_PATH_CFG1 (VA_START_OFFSET + 0x0588)
|
||||
#define BOLERO_CDC_VA_TX3_TX_VOL_CTL (VA_START_OFFSET + 0x058C)
|
||||
#define BOLERO_CDC_VA_TX3_TX_PATH_SEC0 (VA_START_OFFSET + 0x0590)
|
||||
#define BOLERO_CDC_VA_TX3_TX_PATH_SEC1 (VA_START_OFFSET + 0x0594)
|
||||
#define BOLERO_CDC_VA_TX3_TX_PATH_SEC2 (VA_START_OFFSET + 0x0598)
|
||||
#define BOLERO_CDC_VA_TX3_TX_PATH_SEC3 (VA_START_OFFSET + 0x059C)
|
||||
#define BOLERO_CDC_VA_TX3_TX_PATH_SEC4 (VA_START_OFFSET + 0x05A0)
|
||||
#define BOLERO_CDC_VA_TX3_TX_PATH_SEC5 (VA_START_OFFSET + 0x05A4)
|
||||
#define BOLERO_CDC_VA_TX3_TX_PATH_SEC6 (VA_START_OFFSET + 0x05A8)
|
||||
#define BOLERO_CDC_VA_TX4_TX_PATH_CTL (VA_START_OFFSET + 0x0600)
|
||||
#define BOLERO_CDC_VA_TX4_TX_PATH_CFG0 (VA_START_OFFSET + 0x0604)
|
||||
#define BOLERO_CDC_VA_TX4_TX_PATH_CFG1 (VA_START_OFFSET + 0x0608)
|
||||
#define BOLERO_CDC_VA_TX4_TX_VOL_CTL (VA_START_OFFSET + 0x060C)
|
||||
#define BOLERO_CDC_VA_TX4_TX_PATH_SEC0 (VA_START_OFFSET + 0x0610)
|
||||
#define BOLERO_CDC_VA_TX4_TX_PATH_SEC1 (VA_START_OFFSET + 0x0614)
|
||||
#define BOLERO_CDC_VA_TX4_TX_PATH_SEC2 (VA_START_OFFSET + 0x0618)
|
||||
#define BOLERO_CDC_VA_TX4_TX_PATH_SEC3 (VA_START_OFFSET + 0x061C)
|
||||
#define BOLERO_CDC_VA_TX4_TX_PATH_SEC4 (VA_START_OFFSET + 0x0620)
|
||||
#define BOLERO_CDC_VA_TX4_TX_PATH_SEC5 (VA_START_OFFSET + 0x0624)
|
||||
#define BOLERO_CDC_VA_TX4_TX_PATH_SEC6 (VA_START_OFFSET + 0x0628)
|
||||
#define BOLERO_CDC_VA_TX5_TX_PATH_CTL (VA_START_OFFSET + 0x0680)
|
||||
#define BOLERO_CDC_VA_TX5_TX_PATH_CFG0 (VA_START_OFFSET + 0x0684)
|
||||
#define BOLERO_CDC_VA_TX5_TX_PATH_CFG1 (VA_START_OFFSET + 0x0688)
|
||||
#define BOLERO_CDC_VA_TX5_TX_VOL_CTL (VA_START_OFFSET + 0x068C)
|
||||
#define BOLERO_CDC_VA_TX5_TX_PATH_SEC0 (VA_START_OFFSET + 0x0690)
|
||||
#define BOLERO_CDC_VA_TX5_TX_PATH_SEC1 (VA_START_OFFSET + 0x0694)
|
||||
#define BOLERO_CDC_VA_TX5_TX_PATH_SEC2 (VA_START_OFFSET + 0x0698)
|
||||
#define BOLERO_CDC_VA_TX5_TX_PATH_SEC3 (VA_START_OFFSET + 0x069C)
|
||||
#define BOLERO_CDC_VA_TX5_TX_PATH_SEC4 (VA_START_OFFSET + 0x06A0)
|
||||
#define BOLERO_CDC_VA_TX5_TX_PATH_SEC5 (VA_START_OFFSET + 0x06A4)
|
||||
#define BOLERO_CDC_VA_TX5_TX_PATH_SEC6 (VA_START_OFFSET + 0x06A8)
|
||||
#define BOLERO_CDC_VA_TX6_TX_PATH_CTL (VA_START_OFFSET + 0x0700)
|
||||
#define BOLERO_CDC_VA_TX6_TX_PATH_CFG0 (VA_START_OFFSET + 0x0704)
|
||||
#define BOLERO_CDC_VA_TX6_TX_PATH_CFG1 (VA_START_OFFSET + 0x0708)
|
||||
#define BOLERO_CDC_VA_TX6_TX_VOL_CTL (VA_START_OFFSET + 0x070C)
|
||||
#define BOLERO_CDC_VA_TX6_TX_PATH_SEC0 (VA_START_OFFSET + 0x0710)
|
||||
#define BOLERO_CDC_VA_TX6_TX_PATH_SEC1 (VA_START_OFFSET + 0x0714)
|
||||
#define BOLERO_CDC_VA_TX6_TX_PATH_SEC2 (VA_START_OFFSET + 0x0718)
|
||||
#define BOLERO_CDC_VA_TX6_TX_PATH_SEC3 (VA_START_OFFSET + 0x071C)
|
||||
#define BOLERO_CDC_VA_TX6_TX_PATH_SEC4 (VA_START_OFFSET + 0x0720)
|
||||
#define BOLERO_CDC_VA_TX6_TX_PATH_SEC5 (VA_START_OFFSET + 0x0724)
|
||||
#define BOLERO_CDC_VA_TX6_TX_PATH_SEC6 (VA_START_OFFSET + 0x0728)
|
||||
#define BOLERO_CDC_VA_TX7_TX_PATH_CTL (VA_START_OFFSET + 0x0780)
|
||||
#define BOLERO_CDC_VA_TX7_TX_PATH_CFG0 (VA_START_OFFSET + 0x0784)
|
||||
#define BOLERO_CDC_VA_TX7_TX_PATH_CFG1 (VA_START_OFFSET + 0x0788)
|
||||
#define BOLERO_CDC_VA_TX7_TX_VOL_CTL (VA_START_OFFSET + 0x078C)
|
||||
#define BOLERO_CDC_VA_TX7_TX_PATH_SEC0 (VA_START_OFFSET + 0x0790)
|
||||
#define BOLERO_CDC_VA_TX7_TX_PATH_SEC1 (VA_START_OFFSET + 0x0794)
|
||||
#define BOLERO_CDC_VA_TX7_TX_PATH_SEC2 (VA_START_OFFSET + 0x0798)
|
||||
#define BOLERO_CDC_VA_TX7_TX_PATH_SEC3 (VA_START_OFFSET + 0x079C)
|
||||
#define BOLERO_CDC_VA_TX7_TX_PATH_SEC4 (VA_START_OFFSET + 0x07A0)
|
||||
#define BOLERO_CDC_VA_TX7_TX_PATH_SEC5 (VA_START_OFFSET + 0x07A4)
|
||||
#define BOLERO_CDC_VA_TX7_TX_PATH_SEC6 (VA_START_OFFSET + 0x07A8)
|
||||
#define VA_MAX_OFFSET (VA_START_OFFSET + 0x07A8)
|
||||
|
||||
#define BOLERO_CDC_VA_MACRO_MAX 0x1EB /* 7A8/4 = 1EA + 1 = 1EB */
|
||||
|
||||
#define BOLERO_CDC_MAX_REGISTER VA_MAX_OFFSET
|
||||
|
||||
#define BOLERO_REG(reg) (((reg) & 0x0FFF)/4)
|
||||
|
||||
#endif
|
811
asoc/codecs/bolero/bolero_cdc_regmap.c
Normal file
811
asoc/codecs/bolero/bolero_cdc_regmap.c
Normal file
|
@ -0,0 +1,811 @@
|
|||
/* Copyright (c) 2018, The Linux Foundation. All rights reserved.
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License version 2 and
|
||||
* only version 2 as published by the Free Software Foundation.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*/
|
||||
|
||||
#include <linux/regmap.h>
|
||||
#include "bolero_cdc.h"
|
||||
#include "internal.h"
|
||||
|
||||
static const struct reg_default bolero_defaults[] = {
|
||||
/* TX Macro */
|
||||
{ BOLERO_CDC_TX_CLK_RST_CTRL_MCLK_CONTROL, 0x00 },
|
||||
{ BOLERO_CDC_TX_CLK_RST_CTRL_FS_CNT_CONTROL, 0x00 },
|
||||
{ BOLERO_CDC_TX_CLK_RST_CTRL_SWR_CONTROL, 0x00},
|
||||
{ BOLERO_CDC_TX_TOP_CSR_TOP_CFG0, 0x00},
|
||||
{ BOLERO_CDC_TX_TOP_CSR_ANC_CFG, 0x00},
|
||||
{ BOLERO_CDC_TX_TOP_CSR_SWR_CTRL, 0x00},
|
||||
{ BOLERO_CDC_TX_TOP_CSR_FREQ_MCLK, 0x00},
|
||||
{ BOLERO_CDC_TX_TOP_CSR_DEBUG_BUS, 0x00},
|
||||
{ BOLERO_CDC_TX_TOP_CSR_DEBUG_EN, 0x00},
|
||||
{ BOLERO_CDC_TX_TOP_CSR_TX_I2S_CTL, 0x0C},
|
||||
{ BOLERO_CDC_TX_TOP_CSR_I2S_CLK, 0x00},
|
||||
{ BOLERO_CDC_TX_TOP_CSR_I2S_RESET, 0x00},
|
||||
{ BOLERO_CDC_TX_TOP_CSR_SWR_DMIC0_CTL, 0x00},
|
||||
{ BOLERO_CDC_TX_TOP_CSR_SWR_DMIC1_CTL, 0x00},
|
||||
{ BOLERO_CDC_TX_TOP_CSR_SWR_DMIC2_CTL, 0x00},
|
||||
{ BOLERO_CDC_TX_TOP_CSR_SWR_DMIC3_CTL, 0x00},
|
||||
{ BOLERO_CDC_TX_TOP_CSR_SWR_AMIC0_CTL, 0x00},
|
||||
{ BOLERO_CDC_TX_TOP_CSR_SWR_AMIC1_CTL, 0x00},
|
||||
{ BOLERO_CDC_TX_INP_MUX_ADC_MUX0_CFG0, 0x00},
|
||||
{ BOLERO_CDC_TX_INP_MUX_ADC_MUX0_CFG1, 0x00},
|
||||
{ BOLERO_CDC_TX_INP_MUX_ADC_MUX1_CFG0, 0x00},
|
||||
{ BOLERO_CDC_TX_INP_MUX_ADC_MUX1_CFG1, 0x00},
|
||||
{ BOLERO_CDC_TX_INP_MUX_ADC_MUX2_CFG0, 0x00},
|
||||
{ BOLERO_CDC_TX_INP_MUX_ADC_MUX2_CFG1, 0x00},
|
||||
{ BOLERO_CDC_TX_INP_MUX_ADC_MUX3_CFG0, 0x00},
|
||||
{ BOLERO_CDC_TX_INP_MUX_ADC_MUX3_CFG1, 0x00},
|
||||
{ BOLERO_CDC_TX_INP_MUX_ADC_MUX4_CFG0, 0x00},
|
||||
{ BOLERO_CDC_TX_INP_MUX_ADC_MUX4_CFG1, 0x00},
|
||||
{ BOLERO_CDC_TX_INP_MUX_ADC_MUX5_CFG0, 0x00},
|
||||
{ BOLERO_CDC_TX_INP_MUX_ADC_MUX5_CFG1, 0x00},
|
||||
{ BOLERO_CDC_TX_INP_MUX_ADC_MUX6_CFG0, 0x00},
|
||||
{ BOLERO_CDC_TX_INP_MUX_ADC_MUX6_CFG1, 0x00},
|
||||
{ BOLERO_CDC_TX_INP_MUX_ADC_MUX7_CFG0, 0x00},
|
||||
{ BOLERO_CDC_TX_INP_MUX_ADC_MUX7_CFG1, 0x00},
|
||||
{ BOLERO_CDC_TX_ANC0_CLK_RESET_CTL, 0x00},
|
||||
{ BOLERO_CDC_TX_ANC0_MODE_1_CTL, 0x00},
|
||||
{ BOLERO_CDC_TX_ANC0_MODE_2_CTL, 0x00},
|
||||
{ BOLERO_CDC_TX_ANC0_FF_SHIFT, 0x00},
|
||||
{ BOLERO_CDC_TX_ANC0_FB_SHIFT, 0x00},
|
||||
{ BOLERO_CDC_TX_ANC0_LPF_FF_A_CTL, 0x00},
|
||||
{ BOLERO_CDC_TX_ANC0_LPF_FF_B_CTL, 0x00},
|
||||
{ BOLERO_CDC_TX_ANC0_LPF_FB_CTL, 0x00},
|
||||
{ BOLERO_CDC_TX_ANC0_SMLPF_CTL, 0x00},
|
||||
{ BOLERO_CDC_TX_ANC0_DCFLT_SHIFT_CTL, 0x00},
|
||||
{ BOLERO_CDC_TX_ANC0_IIR_ADAPT_CTL, 0x00},
|
||||
{ BOLERO_CDC_TX_ANC0_IIR_COEFF_1_CTL, 0x00},
|
||||
{ BOLERO_CDC_TX_ANC0_IIR_COEFF_2_CTL, 0x00},
|
||||
{ BOLERO_CDC_TX_ANC0_FF_A_GAIN_CTL, 0x00},
|
||||
{ BOLERO_CDC_TX_ANC0_FF_B_GAIN_CTL, 0x00},
|
||||
{ BOLERO_CDC_TX_ANC0_FB_GAIN_CTL, 0x00},
|
||||
{ BOLERO_CDC_TX0_TX_PATH_CTL, 0x04},
|
||||
{ BOLERO_CDC_TX0_TX_PATH_CFG0, 0x10},
|
||||
{ BOLERO_CDC_TX0_TX_PATH_CFG1, 0x0B},
|
||||
{ BOLERO_CDC_TX0_TX_VOL_CTL, 0x00},
|
||||
{ BOLERO_CDC_TX0_TX_PATH_SEC0, 0x00},
|
||||
{ BOLERO_CDC_TX0_TX_PATH_SEC1, 0x00},
|
||||
{ BOLERO_CDC_TX0_TX_PATH_SEC2, 0x01},
|
||||
{ BOLERO_CDC_TX0_TX_PATH_SEC3, 0x3C},
|
||||
{ BOLERO_CDC_TX0_TX_PATH_SEC4, 0x20},
|
||||
{ BOLERO_CDC_TX0_TX_PATH_SEC5, 0x00},
|
||||
{ BOLERO_CDC_TX0_TX_PATH_SEC6, 0x00},
|
||||
{ BOLERO_CDC_TX0_TX_PATH_SEC7, 0x25},
|
||||
{ BOLERO_CDC_TX1_TX_PATH_CTL, 0x04},
|
||||
{ BOLERO_CDC_TX1_TX_PATH_CFG0, 0x10},
|
||||
{ BOLERO_CDC_TX1_TX_PATH_CFG1, 0x0B},
|
||||
{ BOLERO_CDC_TX1_TX_VOL_CTL, 0x00},
|
||||
{ BOLERO_CDC_TX1_TX_PATH_SEC0, 0x00},
|
||||
{ BOLERO_CDC_TX1_TX_PATH_SEC1, 0x00},
|
||||
{ BOLERO_CDC_TX1_TX_PATH_SEC2, 0x01},
|
||||
{ BOLERO_CDC_TX1_TX_PATH_SEC3, 0x3C},
|
||||
{ BOLERO_CDC_TX1_TX_PATH_SEC4, 0x20},
|
||||
{ BOLERO_CDC_TX1_TX_PATH_SEC5, 0x00},
|
||||
{ BOLERO_CDC_TX1_TX_PATH_SEC6, 0x00},
|
||||
{ BOLERO_CDC_TX2_TX_PATH_CTL, 0x04},
|
||||
{ BOLERO_CDC_TX2_TX_PATH_CFG0, 0x10},
|
||||
{ BOLERO_CDC_TX2_TX_PATH_CFG1, 0x0B},
|
||||
{ BOLERO_CDC_TX2_TX_VOL_CTL, 0x00},
|
||||
{ BOLERO_CDC_TX2_TX_PATH_SEC0, 0x00},
|
||||
{ BOLERO_CDC_TX2_TX_PATH_SEC1, 0x00},
|
||||
{ BOLERO_CDC_TX2_TX_PATH_SEC2, 0x01},
|
||||
{ BOLERO_CDC_TX2_TX_PATH_SEC3, 0x3C},
|
||||
{ BOLERO_CDC_TX2_TX_PATH_SEC4, 0x20},
|
||||
{ BOLERO_CDC_TX2_TX_PATH_SEC5, 0x00},
|
||||
{ BOLERO_CDC_TX2_TX_PATH_SEC6, 0x00},
|
||||
{ BOLERO_CDC_TX3_TX_PATH_CTL, 0x04},
|
||||
{ BOLERO_CDC_TX3_TX_PATH_CFG0, 0x10},
|
||||
{ BOLERO_CDC_TX3_TX_PATH_CFG1, 0x0B},
|
||||
{ BOLERO_CDC_TX3_TX_VOL_CTL, 0x00},
|
||||
{ BOLERO_CDC_TX3_TX_PATH_SEC0, 0x00},
|
||||
{ BOLERO_CDC_TX3_TX_PATH_SEC1, 0x00},
|
||||
{ BOLERO_CDC_TX3_TX_PATH_SEC2, 0x01},
|
||||
{ BOLERO_CDC_TX3_TX_PATH_SEC3, 0x3C},
|
||||
{ BOLERO_CDC_TX3_TX_PATH_SEC4, 0x20},
|
||||
{ BOLERO_CDC_TX3_TX_PATH_SEC5, 0x00},
|
||||
{ BOLERO_CDC_TX3_TX_PATH_SEC6, 0x00},
|
||||
{ BOLERO_CDC_TX4_TX_PATH_CTL, 0x04},
|
||||
{ BOLERO_CDC_TX4_TX_PATH_CFG0, 0x10},
|
||||
{ BOLERO_CDC_TX4_TX_PATH_CFG1, 0x0B},
|
||||
{ BOLERO_CDC_TX4_TX_VOL_CTL, 0x00},
|
||||
{ BOLERO_CDC_TX4_TX_PATH_SEC0, 0x00},
|
||||
{ BOLERO_CDC_TX4_TX_PATH_SEC1, 0x00},
|
||||
{ BOLERO_CDC_TX4_TX_PATH_SEC2, 0x01},
|
||||
{ BOLERO_CDC_TX4_TX_PATH_SEC3, 0x3C},
|
||||
{ BOLERO_CDC_TX4_TX_PATH_SEC4, 0x20},
|
||||
{ BOLERO_CDC_TX4_TX_PATH_SEC5, 0x00},
|
||||
{ BOLERO_CDC_TX4_TX_PATH_SEC6, 0x00},
|
||||
{ BOLERO_CDC_TX5_TX_PATH_CTL, 0x04},
|
||||
{ BOLERO_CDC_TX5_TX_PATH_CFG0, 0x10},
|
||||
{ BOLERO_CDC_TX5_TX_PATH_CFG1, 0x0B},
|
||||
{ BOLERO_CDC_TX5_TX_VOL_CTL, 0x00},
|
||||
{ BOLERO_CDC_TX5_TX_PATH_SEC0, 0x00},
|
||||
{ BOLERO_CDC_TX5_TX_PATH_SEC1, 0x00},
|
||||
{ BOLERO_CDC_TX5_TX_PATH_SEC2, 0x01},
|
||||
{ BOLERO_CDC_TX5_TX_PATH_SEC3, 0x3C},
|
||||
{ BOLERO_CDC_TX5_TX_PATH_SEC4, 0x20},
|
||||
{ BOLERO_CDC_TX5_TX_PATH_SEC5, 0x00},
|
||||
{ BOLERO_CDC_TX5_TX_PATH_SEC6, 0x00},
|
||||
{ BOLERO_CDC_TX6_TX_PATH_CTL, 0x04},
|
||||
{ BOLERO_CDC_TX6_TX_PATH_CFG0, 0x10},
|
||||
{ BOLERO_CDC_TX6_TX_PATH_CFG1, 0x0B},
|
||||
{ BOLERO_CDC_TX6_TX_VOL_CTL, 0x00},
|
||||
{ BOLERO_CDC_TX6_TX_PATH_SEC0, 0x00},
|
||||
{ BOLERO_CDC_TX6_TX_PATH_SEC1, 0x00},
|
||||
{ BOLERO_CDC_TX6_TX_PATH_SEC2, 0x01},
|
||||
{ BOLERO_CDC_TX6_TX_PATH_SEC3, 0x3C},
|
||||
{ BOLERO_CDC_TX6_TX_PATH_SEC4, 0x20},
|
||||
{ BOLERO_CDC_TX6_TX_PATH_SEC5, 0x00},
|
||||
{ BOLERO_CDC_TX6_TX_PATH_SEC6, 0x00},
|
||||
{ BOLERO_CDC_TX7_TX_PATH_CTL, 0x04},
|
||||
{ BOLERO_CDC_TX7_TX_PATH_CFG0, 0x10},
|
||||
{ BOLERO_CDC_TX7_TX_PATH_CFG1, 0x0B},
|
||||
{ BOLERO_CDC_TX7_TX_VOL_CTL, 0x00},
|
||||
{ BOLERO_CDC_TX7_TX_PATH_SEC0, 0x00},
|
||||
{ BOLERO_CDC_TX7_TX_PATH_SEC1, 0x00},
|
||||
{ BOLERO_CDC_TX7_TX_PATH_SEC2, 0x01},
|
||||
{ BOLERO_CDC_TX7_TX_PATH_SEC3, 0x3C},
|
||||
{ BOLERO_CDC_TX7_TX_PATH_SEC4, 0x20},
|
||||
{ BOLERO_CDC_TX7_TX_PATH_SEC5, 0x00},
|
||||
{ BOLERO_CDC_TX7_TX_PATH_SEC6, 0x00},
|
||||
|
||||
/* RX Macro */
|
||||
{ BOLERO_CDC_RX_TOP_TOP_CFG0, 0x00},
|
||||
{ BOLERO_CDC_RX_TOP_SWR_CTRL, 0x00},
|
||||
{ BOLERO_CDC_RX_TOP_DEBUG, 0x00},
|
||||
{ BOLERO_CDC_RX_TOP_DEBUG_BUS, 0x00},
|
||||
{ BOLERO_CDC_RX_TOP_DEBUG_EN0, 0x00},
|
||||
{ BOLERO_CDC_RX_TOP_DEBUG_EN1, 0x00},
|
||||
{ BOLERO_CDC_RX_TOP_DEBUG_EN2, 0x00},
|
||||
{ BOLERO_CDC_RX_TOP_HPHL_COMP_WR_LSB, 0x00},
|
||||
{ BOLERO_CDC_RX_TOP_HPHL_COMP_WR_MSB, 0x00},
|
||||
{ BOLERO_CDC_RX_TOP_HPHL_COMP_LUT, 0x00},
|
||||
{ BOLERO_CDC_RX_TOP_HPHL_COMP_RD_LSB, 0x00},
|
||||
{ BOLERO_CDC_RX_TOP_HPHL_COMP_RD_MSB, 0x00},
|
||||
{ BOLERO_CDC_RX_TOP_HPHR_COMP_WR_LSB, 0x00},
|
||||
{ BOLERO_CDC_RX_TOP_HPHR_COMP_WR_MSB, 0x00},
|
||||
{ BOLERO_CDC_RX_TOP_HPHR_COMP_LUT, 0x00},
|
||||
{ BOLERO_CDC_RX_TOP_HPHR_COMP_RD_LSB, 0x00},
|
||||
{ BOLERO_CDC_RX_TOP_HPHR_COMP_RD_MSB, 0x00},
|
||||
{ BOLERO_CDC_RX_TOP_DSD0_DEBUG_CFG0, 0x11},
|
||||
{ BOLERO_CDC_RX_TOP_DSD0_DEBUG_CFG1, 0x20},
|
||||
{ BOLERO_CDC_RX_TOP_DSD0_DEBUG_CFG2, 0x00},
|
||||
{ BOLERO_CDC_RX_TOP_DSD0_DEBUG_CFG3, 0x00},
|
||||
{ BOLERO_CDC_RX_TOP_DSD1_DEBUG_CFG0, 0x11},
|
||||
{ BOLERO_CDC_RX_TOP_DSD1_DEBUG_CFG1, 0x20},
|
||||
{ BOLERO_CDC_RX_TOP_DSD1_DEBUG_CFG2, 0x00},
|
||||
{ BOLERO_CDC_RX_TOP_DSD1_DEBUG_CFG3, 0x00},
|
||||
{ BOLERO_CDC_RX_TOP_RX_I2S_CTL, 0x0C},
|
||||
{ BOLERO_CDC_RX_TOP_TX_I2S2_CTL, 0x0C},
|
||||
{ BOLERO_CDC_RX_TOP_I2S_CLK, 0x0C},
|
||||
{ BOLERO_CDC_RX_TOP_I2S_RESET, 0x00},
|
||||
{ BOLERO_CDC_RX_TOP_I2S_MUX, 0x00},
|
||||
{ BOLERO_CDC_RX_CLK_RST_CTRL_MCLK_CONTROL, 0x00},
|
||||
{ BOLERO_CDC_RX_CLK_RST_CTRL_FS_CNT_CONTROL, 0x00},
|
||||
{ BOLERO_CDC_RX_CLK_RST_CTRL_SWR_CONTROL, 0x00},
|
||||
{ BOLERO_CDC_RX_CLK_RST_CTRL_DSD_CONTROL, 0x00},
|
||||
{ BOLERO_CDC_RX_CLK_RST_CTRL_ASRC_SHARE_CONTROL, 0x08},
|
||||
{ BOLERO_CDC_RX_SOFTCLIP_CRC, 0x00},
|
||||
{ BOLERO_CDC_RX_SOFTCLIP_SOFTCLIP_CTRL, 0x38},
|
||||
{ BOLERO_CDC_RX_INP_MUX_RX_INT0_CFG0, 0x00},
|
||||
{ BOLERO_CDC_RX_INP_MUX_RX_INT0_CFG1, 0x00},
|
||||
{ BOLERO_CDC_RX_INP_MUX_RX_INT1_CFG0, 0x00},
|
||||
{ BOLERO_CDC_RX_INP_MUX_RX_INT1_CFG1, 0x00},
|
||||
{ BOLERO_CDC_RX_INP_MUX_RX_INT2_CFG0, 0x00},
|
||||
{ BOLERO_CDC_RX_INP_MUX_RX_INT2_CFG1, 0x00},
|
||||
{ BOLERO_CDC_RX_INP_MUX_RX_MIX_CFG4, 0x00},
|
||||
{ BOLERO_CDC_RX_INP_MUX_RX_MIX_CFG5, 0x00},
|
||||
{ BOLERO_CDC_RX_INP_MUX_SIDETONE_SRC_CFG0, 0x00},
|
||||
{ BOLERO_CDC_RX_CLSH_CRC, 0x00},
|
||||
{ BOLERO_CDC_RX_CLSH_DLY_CTRL, 0x03},
|
||||
{ BOLERO_CDC_RX_CLSH_DECAY_CTRL, 0x02},
|
||||
{ BOLERO_CDC_RX_CLSH_HPH_V_PA, 0x1C},
|
||||
{ BOLERO_CDC_RX_CLSH_EAR_V_PA, 0x39},
|
||||
{ BOLERO_CDC_RX_CLSH_HPH_V_HD, 0x0C},
|
||||
{ BOLERO_CDC_RX_CLSH_EAR_V_HD, 0x0C},
|
||||
{ BOLERO_CDC_RX_CLSH_K1_MSB, 0x01},
|
||||
{ BOLERO_CDC_RX_CLSH_K1_LSB, 0x00},
|
||||
{ BOLERO_CDC_RX_CLSH_K2_MSB, 0x00},
|
||||
{ BOLERO_CDC_RX_CLSH_K2_LSB, 0x80},
|
||||
{ BOLERO_CDC_RX_CLSH_IDLE_CTRL, 0x00},
|
||||
{ BOLERO_CDC_RX_CLSH_IDLE_HPH, 0x00},
|
||||
{ BOLERO_CDC_RX_CLSH_IDLE_EAR, 0x00},
|
||||
{ BOLERO_CDC_RX_CLSH_TEST0, 0x07},
|
||||
{ BOLERO_CDC_RX_CLSH_TEST1, 0x00},
|
||||
{ BOLERO_CDC_RX_CLSH_OVR_VREF, 0x00},
|
||||
{ BOLERO_CDC_RX_CLSH_CLSG_CTL, 0x02},
|
||||
{ BOLERO_CDC_RX_CLSH_CLSG_CFG1, 0x9A},
|
||||
{ BOLERO_CDC_RX_CLSH_CLSG_CFG2, 0x10},
|
||||
{ BOLERO_CDC_RX_BCL_VBAT_PATH_CTL, 0x00},
|
||||
{ BOLERO_CDC_RX_BCL_VBAT_CFG, 0x10},
|
||||
{ BOLERO_CDC_RX_BCL_VBAT_ADC_CAL1, 0x00},
|
||||
{ BOLERO_CDC_RX_BCL_VBAT_ADC_CAL2, 0x00},
|
||||
{ BOLERO_CDC_RX_BCL_VBAT_ADC_CAL3, 0x04},
|
||||
{ BOLERO_CDC_RX_BCL_VBAT_PK_EST1, 0xE0},
|
||||
{ BOLERO_CDC_RX_BCL_VBAT_PK_EST2, 0x01},
|
||||
{ BOLERO_CDC_RX_BCL_VBAT_PK_EST3, 0x40},
|
||||
{ BOLERO_CDC_RX_BCL_VBAT_RF_PROC1, 0x2A},
|
||||
{ BOLERO_CDC_RX_BCL_VBAT_RF_PROC1, 0x00},
|
||||
{ BOLERO_CDC_RX_BCL_VBAT_TAC1, 0x00},
|
||||
{ BOLERO_CDC_RX_BCL_VBAT_TAC2, 0x18},
|
||||
{ BOLERO_CDC_RX_BCL_VBAT_TAC3, 0x18},
|
||||
{ BOLERO_CDC_RX_BCL_VBAT_TAC4, 0x03},
|
||||
{ BOLERO_CDC_RX_BCL_VBAT_GAIN_UPD1, 0x01},
|
||||
{ BOLERO_CDC_RX_BCL_VBAT_GAIN_UPD2, 0x00},
|
||||
{ BOLERO_CDC_RX_BCL_VBAT_GAIN_UPD3, 0x00},
|
||||
{ BOLERO_CDC_RX_BCL_VBAT_GAIN_UPD4, 0x64},
|
||||
{ BOLERO_CDC_RX_BCL_VBAT_GAIN_UPD5, 0x01},
|
||||
{ BOLERO_CDC_RX_BCL_VBAT_DEBUG1, 0x00},
|
||||
{ BOLERO_CDC_RX_BCL_VBAT_GAIN_UPD_MON, 0x00},
|
||||
{ BOLERO_CDC_RX_BCL_VBAT_GAIN_MON_VAL, 0x00},
|
||||
{ BOLERO_CDC_RX_BCL_VBAT_BAN, 0x0C},
|
||||
{ BOLERO_CDC_RX_BCL_VBAT_BCL_GAIN_UPD1, 0x00},
|
||||
{ BOLERO_CDC_RX_BCL_VBAT_BCL_GAIN_UPD2, 0x77},
|
||||
{ BOLERO_CDC_RX_BCL_VBAT_BCL_GAIN_UPD3, 0x01},
|
||||
{ BOLERO_CDC_RX_BCL_VBAT_BCL_GAIN_UPD4, 0x00},
|
||||
{ BOLERO_CDC_RX_BCL_VBAT_BCL_GAIN_UPD5, 0x4B},
|
||||
{ BOLERO_CDC_RX_BCL_VBAT_BCL_GAIN_UPD6, 0x00},
|
||||
{ BOLERO_CDC_RX_BCL_VBAT_BCL_GAIN_UPD7, 0x01},
|
||||
{ BOLERO_CDC_RX_BCL_VBAT_BCL_GAIN_UPD8, 0x00},
|
||||
{ BOLERO_CDC_RX_BCL_VBAT_BCL_GAIN_UPD9, 0x00},
|
||||
{ BOLERO_CDC_RX_BCL_VBAT_ATTN1, 0x04},
|
||||
{ BOLERO_CDC_RX_BCL_VBAT_ATTN2, 0x08},
|
||||
{ BOLERO_CDC_RX_BCL_VBAT_ATTN3, 0x0C},
|
||||
{ BOLERO_CDC_RX_BCL_VBAT_DECODE_CTL1, 0xE0},
|
||||
{ BOLERO_CDC_RX_BCL_VBAT_DECODE_CTL2, 0x00},
|
||||
{ BOLERO_CDC_RX_BCL_VBAT_DECODE_CFG1, 0x00},
|
||||
{ BOLERO_CDC_RX_BCL_VBAT_DECODE_CFG2, 0x00},
|
||||
{ BOLERO_CDC_RX_BCL_VBAT_DECODE_CFG3, 0x00},
|
||||
{ BOLERO_CDC_RX_BCL_VBAT_DECODE_CFG4, 0x00},
|
||||
{ BOLERO_CDC_RX_BCL_VBAT_DECODE_ST, 0x00},
|
||||
{ BOLERO_CDC_RX_INTR_CTRL_CFG, 0x00},
|
||||
{ BOLERO_CDC_RX_INTR_CTRL_CLR_COMMIT, 0x00},
|
||||
{ BOLERO_CDC_RX_INTR_CTRL_PIN1_MASK0, 0xFF},
|
||||
{ BOLERO_CDC_RX_INTR_CTRL_PIN1_STATUS0, 0x00},
|
||||
{ BOLERO_CDC_RX_INTR_CTRL_PIN1_CLEAR0, 0x00},
|
||||
{ BOLERO_CDC_RX_INTR_CTRL_PIN2_MASK0, 0xFF},
|
||||
{ BOLERO_CDC_RX_INTR_CTRL_PIN2_STATUS0, 0x00},
|
||||
{ BOLERO_CDC_RX_INTR_CTRL_PIN2_CLEAR0, 0x00},
|
||||
{ BOLERO_CDC_RX_INTR_CTRL_LEVEL0, 0x00},
|
||||
{ BOLERO_CDC_RX_INTR_CTRL_BYPASS0, 0x00},
|
||||
{ BOLERO_CDC_RX_INTR_CTRL_SET0, 0x00},
|
||||
{ BOLERO_CDC_RX_RX0_RX_PATH_CTL, 0x04},
|
||||
{ BOLERO_CDC_RX_RX0_RX_PATH_CFG0, 0x00},
|
||||
{ BOLERO_CDC_RX_RX0_RX_PATH_CFG1, 0x64},
|
||||
{ BOLERO_CDC_RX_RX0_RX_PATH_CFG2, 0x8F},
|
||||
{ BOLERO_CDC_RX_RX0_RX_PATH_CFG3, 0x00},
|
||||
{ BOLERO_CDC_RX_RX0_RX_VOL_CTL, 0x00},
|
||||
{ BOLERO_CDC_RX_RX0_RX_PATH_MIX_CTL, 0x04},
|
||||
{ BOLERO_CDC_RX_RX0_RX_PATH_MIX_CFG, 0x7E},
|
||||
{ BOLERO_CDC_RX_RX0_RX_VOL_MIX_CTL, 0x00},
|
||||
{ BOLERO_CDC_RX_RX0_RX_PATH_SEC1, 0x08},
|
||||
{ BOLERO_CDC_RX_RX0_RX_PATH_SEC2, 0x00},
|
||||
{ BOLERO_CDC_RX_RX0_RX_PATH_SEC3, 0x00},
|
||||
{ BOLERO_CDC_RX_RX0_RX_PATH_SEC4, 0x00},
|
||||
{ BOLERO_CDC_RX_RX0_RX_PATH_SEC7, 0x00},
|
||||
{ BOLERO_CDC_RX_RX0_RX_PATH_MIX_SEC0, 0x08},
|
||||
{ BOLERO_CDC_RX_RX0_RX_PATH_MIX_SEC1, 0x00},
|
||||
{ BOLERO_CDC_RX_RX0_RX_PATH_DSM_CTL, 0x08},
|
||||
{ BOLERO_CDC_RX_RX0_RX_PATH_DSM_DATA1, 0x00},
|
||||
{ BOLERO_CDC_RX_RX0_RX_PATH_DSM_DATA2, 0x00},
|
||||
{ BOLERO_CDC_RX_RX0_RX_PATH_DSM_DATA3, 0x00},
|
||||
{ BOLERO_CDC_RX_RX0_RX_PATH_DSM_DATA4, 0x55},
|
||||
{ BOLERO_CDC_RX_RX0_RX_PATH_DSM_DATA5, 0x55},
|
||||
{ BOLERO_CDC_RX_RX0_RX_PATH_DSM_DATA6, 0x55},
|
||||
{ BOLERO_CDC_RX_RX1_RX_PATH_CTL, 0x04},
|
||||
{ BOLERO_CDC_RX_RX1_RX_PATH_CFG0, 0x00},
|
||||
{ BOLERO_CDC_RX_RX1_RX_PATH_CFG1, 0x64},
|
||||
{ BOLERO_CDC_RX_RX1_RX_PATH_CFG2, 0x8F},
|
||||
{ BOLERO_CDC_RX_RX1_RX_PATH_CFG3, 0x00},
|
||||
{ BOLERO_CDC_RX_RX1_RX_VOL_CTL, 0x00},
|
||||
{ BOLERO_CDC_RX_RX1_RX_PATH_MIX_CTL, 0x04},
|
||||
{ BOLERO_CDC_RX_RX1_RX_PATH_MIX_CFG, 0x7E},
|
||||
{ BOLERO_CDC_RX_RX1_RX_VOL_MIX_CTL, 0x00},
|
||||
{ BOLERO_CDC_RX_RX1_RX_PATH_SEC1, 0x08},
|
||||
{ BOLERO_CDC_RX_RX1_RX_PATH_SEC2, 0x00},
|
||||
{ BOLERO_CDC_RX_RX1_RX_PATH_SEC3, 0x00},
|
||||
{ BOLERO_CDC_RX_RX1_RX_PATH_SEC4, 0x00},
|
||||
{ BOLERO_CDC_RX_RX1_RX_PATH_SEC7, 0x00},
|
||||
{ BOLERO_CDC_RX_RX1_RX_PATH_MIX_SEC0, 0x08},
|
||||
{ BOLERO_CDC_RX_RX1_RX_PATH_MIX_SEC1, 0x00},
|
||||
{ BOLERO_CDC_RX_RX1_RX_PATH_DSM_CTL, 0x08},
|
||||
{ BOLERO_CDC_RX_RX1_RX_PATH_DSM_DATA1, 0x00},
|
||||
{ BOLERO_CDC_RX_RX1_RX_PATH_DSM_DATA2, 0x00},
|
||||
{ BOLERO_CDC_RX_RX1_RX_PATH_DSM_DATA3, 0x00},
|
||||
{ BOLERO_CDC_RX_RX1_RX_PATH_DSM_DATA4, 0x55},
|
||||
{ BOLERO_CDC_RX_RX1_RX_PATH_DSM_DATA5, 0x55},
|
||||
{ BOLERO_CDC_RX_RX1_RX_PATH_DSM_DATA6, 0x55},
|
||||
{ BOLERO_CDC_RX_RX2_RX_PATH_CTL, 0x04},
|
||||
{ BOLERO_CDC_RX_RX2_RX_PATH_CFG0, 0x00},
|
||||
{ BOLERO_CDC_RX_RX2_RX_PATH_CFG1, 0x64},
|
||||
{ BOLERO_CDC_RX_RX2_RX_PATH_CFG2, 0x8F},
|
||||
{ BOLERO_CDC_RX_RX2_RX_PATH_CFG3, 0x00},
|
||||
{ BOLERO_CDC_RX_RX2_RX_VOL_CTL, 0x00},
|
||||
{ BOLERO_CDC_RX_RX2_RX_PATH_MIX_CTL, 0x04},
|
||||
{ BOLERO_CDC_RX_RX2_RX_PATH_MIX_CFG, 0x7E},
|
||||
{ BOLERO_CDC_RX_RX2_RX_VOL_MIX_CTL, 0x00},
|
||||
{ BOLERO_CDC_RX_RX2_RX_PATH_SEC0, 0x04},
|
||||
{ BOLERO_CDC_RX_RX2_RX_PATH_SEC1, 0x08},
|
||||
{ BOLERO_CDC_RX_RX2_RX_PATH_SEC2, 0x00},
|
||||
{ BOLERO_CDC_RX_RX2_RX_PATH_SEC3, 0x00},
|
||||
{ BOLERO_CDC_RX_RX2_RX_PATH_SEC4, 0x00},
|
||||
{ BOLERO_CDC_RX_RX2_RX_PATH_SEC5, 0x00},
|
||||
{ BOLERO_CDC_RX_RX2_RX_PATH_SEC6, 0x00},
|
||||
{ BOLERO_CDC_RX_RX2_RX_PATH_SEC7, 0x00},
|
||||
{ BOLERO_CDC_RX_RX2_RX_PATH_MIX_SEC0, 0x08},
|
||||
{ BOLERO_CDC_RX_RX2_RX_PATH_MIX_SEC1, 0x00},
|
||||
{ BOLERO_CDC_RX_RX2_RX_PATH_DSM_CTL, 0x00},
|
||||
{ BOLERO_CDC_RX_IDLE_DETECT_PATH_CTL, 0x00},
|
||||
{ BOLERO_CDC_RX_IDLE_DETECT_CFG0, 0x07},
|
||||
{ BOLERO_CDC_RX_IDLE_DETECT_CFG1, 0x3C},
|
||||
{ BOLERO_CDC_RX_IDLE_DETECT_CFG2, 0x00},
|
||||
{ BOLERO_CDC_RX_IDLE_DETECT_CFG3, 0x00},
|
||||
{ BOLERO_CDC_RX_COMPANDER0_CTL0, 0x60},
|
||||
{ BOLERO_CDC_RX_COMPANDER0_CTL1, 0xDB},
|
||||
{ BOLERO_CDC_RX_COMPANDER0_CTL2, 0xFF},
|
||||
{ BOLERO_CDC_RX_COMPANDER0_CTL3, 0x35},
|
||||
{ BOLERO_CDC_RX_COMPANDER0_CTL4, 0xFF},
|
||||
{ BOLERO_CDC_RX_COMPANDER0_CTL5, 0x00},
|
||||
{ BOLERO_CDC_RX_COMPANDER0_CTL6, 0x01},
|
||||
{ BOLERO_CDC_RX_COMPANDER0_CTL7, 0x28},
|
||||
{ BOLERO_CDC_RX_COMPANDER1_CTL0, 0x60},
|
||||
{ BOLERO_CDC_RX_COMPANDER1_CTL1, 0xDB},
|
||||
{ BOLERO_CDC_RX_COMPANDER1_CTL2, 0xFF},
|
||||
{ BOLERO_CDC_RX_COMPANDER1_CTL3, 0x35},
|
||||
{ BOLERO_CDC_RX_COMPANDER1_CTL4, 0xFF},
|
||||
{ BOLERO_CDC_RX_COMPANDER1_CTL5, 0x00},
|
||||
{ BOLERO_CDC_RX_COMPANDER1_CTL6, 0x01},
|
||||
{ BOLERO_CDC_RX_COMPANDER1_CTL7, 0x28},
|
||||
{ BOLERO_CDC_RX_SIDETONE_IIR0_IIR_PATH_CTL, 0x00},
|
||||
{ BOLERO_CDC_RX_SIDETONE_IIR0_IIR_GAIN_B1_CTL, 0x00},
|
||||
{ BOLERO_CDC_RX_SIDETONE_IIR0_IIR_GAIN_B2_CTL, 0x00},
|
||||
{ BOLERO_CDC_RX_SIDETONE_IIR0_IIR_GAIN_B3_CTL, 0x00},
|
||||
{ BOLERO_CDC_RX_SIDETONE_IIR0_IIR_GAIN_B4_CTL, 0x00},
|
||||
{ BOLERO_CDC_RX_SIDETONE_IIR0_IIR_GAIN_B5_CTL, 0x00},
|
||||
{ BOLERO_CDC_RX_SIDETONE_IIR0_IIR_GAIN_B6_CTL, 0x00},
|
||||
{ BOLERO_CDC_RX_SIDETONE_IIR0_IIR_GAIN_B7_CTL, 0x00},
|
||||
{ BOLERO_CDC_RX_SIDETONE_IIR0_IIR_GAIN_B8_CTL, 0x00},
|
||||
{ BOLERO_CDC_RX_SIDETONE_IIR0_IIR_CTL, 0x40},
|
||||
{ BOLERO_CDC_RX_SIDETONE_IIR0_IIR_GAIN_TIMER_CTL, 0x00},
|
||||
{ BOLERO_CDC_RX_SIDETONE_IIR0_IIR_COEF_B1_CTL, 0x00},
|
||||
{ BOLERO_CDC_RX_SIDETONE_IIR0_IIR_COEF_B2_CTL, 0x00},
|
||||
{ BOLERO_CDC_RX_SIDETONE_IIR1_IIR_PATH_CTL, 0x00},
|
||||
{ BOLERO_CDC_RX_SIDETONE_IIR1_IIR_GAIN_B1_CTL, 0x00},
|
||||
{ BOLERO_CDC_RX_SIDETONE_IIR1_IIR_GAIN_B2_CTL, 0x00},
|
||||
{ BOLERO_CDC_RX_SIDETONE_IIR1_IIR_GAIN_B3_CTL, 0x00},
|
||||
{ BOLERO_CDC_RX_SIDETONE_IIR1_IIR_GAIN_B4_CTL, 0x00},
|
||||
{ BOLERO_CDC_RX_SIDETONE_IIR1_IIR_GAIN_B5_CTL, 0x00},
|
||||
{ BOLERO_CDC_RX_SIDETONE_IIR1_IIR_GAIN_B6_CTL, 0x00},
|
||||
{ BOLERO_CDC_RX_SIDETONE_IIR1_IIR_GAIN_B7_CTL, 0x00},
|
||||
{ BOLERO_CDC_RX_SIDETONE_IIR1_IIR_GAIN_B8_CTL, 0x00},
|
||||
{ BOLERO_CDC_RX_SIDETONE_IIR1_IIR_CTL, 0x40},
|
||||
{ BOLERO_CDC_RX_SIDETONE_IIR1_IIR_GAIN_TIMER_CTL, 0x00},
|
||||
{ BOLERO_CDC_RX_SIDETONE_IIR1_IIR_COEF_B1_CTL, 0x00},
|
||||
{ BOLERO_CDC_RX_SIDETONE_IIR1_IIR_COEF_B2_CTL, 0x00},
|
||||
{ BOLERO_CDC_RX_IIR_INP_MUX_IIR0_MIX_CFG0, 0x00},
|
||||
{ BOLERO_CDC_RX_IIR_INP_MUX_IIR0_MIX_CFG1, 0x00},
|
||||
{ BOLERO_CDC_RX_IIR_INP_MUX_IIR0_MIX_CFG2, 0x00},
|
||||
{ BOLERO_CDC_RX_IIR_INP_MUX_IIR0_MIX_CFG3, 0x00},
|
||||
{ BOLERO_CDC_RX_IIR_INP_MUX_IIR1_MIX_CFG0, 0x00},
|
||||
{ BOLERO_CDC_RX_IIR_INP_MUX_IIR1_MIX_CFG1, 0x00},
|
||||
{ BOLERO_CDC_RX_IIR_INP_MUX_IIR1_MIX_CFG2, 0x00},
|
||||
{ BOLERO_CDC_RX_IIR_INP_MUX_IIR1_MIX_CFG3, 0x00},
|
||||
{ BOLERO_CDC_RX_SIDETONE_SRC0_ST_SRC_PATH_CTL, 0x04},
|
||||
{ BOLERO_CDC_RX_SIDETONE_SRC0_ST_SRC_PATH_CFG1, 0x00},
|
||||
{ BOLERO_CDC_RX_SIDETONE_SRC1_ST_SRC_PATH_CTL, 0x04},
|
||||
{ BOLERO_CDC_RX_SIDETONE_SRC1_ST_SRC_PATH_CFG1, 0x00},
|
||||
{ BOLERO_CDC_RX_EC_REF_HQ0_EC_REF_HQ_PATH_CTL, 0x00},
|
||||
{ BOLERO_CDC_RX_EC_REF_HQ0_EC_REF_HQ_CFG0, 0x01},
|
||||
{ BOLERO_CDC_RX_EC_REF_HQ1_EC_REF_HQ_PATH_CTL, 0x00},
|
||||
{ BOLERO_CDC_RX_EC_REF_HQ1_EC_REF_HQ_CFG0, 0x01},
|
||||
{ BOLERO_CDC_RX_EC_REF_HQ2_EC_REF_HQ_PATH_CTL, 0x00},
|
||||
{ BOLERO_CDC_RX_EC_REF_HQ2_EC_REF_HQ_CFG0, 0x01},
|
||||
{ BOLERO_CDC_RX_EC_ASRC0_CLK_RST_CTL, 0x00},
|
||||
{ BOLERO_CDC_RX_EC_ASRC0_CTL0, 0x00},
|
||||
{ BOLERO_CDC_RX_EC_ASRC0_CTL1, 0x00},
|
||||
{ BOLERO_CDC_RX_EC_ASRC0_FIFO_CTL, 0xA8},
|
||||
{ BOLERO_CDC_RX_EC_ASRC0_STATUS_FMIN_CNTR_LSB, 0x00},
|
||||
{ BOLERO_CDC_RX_EC_ASRC0_STATUS_FMIN_CNTR_MSB, 0x00},
|
||||
{ BOLERO_CDC_RX_EC_ASRC0_STATUS_FMAX_CNTR_LSB, 0x00},
|
||||
{ BOLERO_CDC_RX_EC_ASRC0_STATUS_FMAX_CNTR_MSB, 0x00},
|
||||
{ BOLERO_CDC_RX_EC_ASRC0_STATUS_FIFO, 0x00},
|
||||
{ BOLERO_CDC_RX_EC_ASRC1_CLK_RST_CTL, 0x00},
|
||||
{ BOLERO_CDC_RX_EC_ASRC1_CTL0, 0x00},
|
||||
{ BOLERO_CDC_RX_EC_ASRC1_CTL1, 0x00},
|
||||
{ BOLERO_CDC_RX_EC_ASRC1_FIFO_CTL, 0xA8},
|
||||
{ BOLERO_CDC_RX_EC_ASRC1_STATUS_FMIN_CNTR_LSB, 0x00},
|
||||
{ BOLERO_CDC_RX_EC_ASRC1_STATUS_FMIN_CNTR_MSB, 0x00},
|
||||
{ BOLERO_CDC_RX_EC_ASRC1_STATUS_FMAX_CNTR_LSB, 0x00},
|
||||
{ BOLERO_CDC_RX_EC_ASRC1_STATUS_FMAX_CNTR_MSB, 0x00},
|
||||
{ BOLERO_CDC_RX_EC_ASRC1_STATUS_FIFO, 0x00},
|
||||
{ BOLERO_CDC_RX_EC_ASRC2_CLK_RST_CTL, 0x00},
|
||||
{ BOLERO_CDC_RX_EC_ASRC2_CTL0, 0x00},
|
||||
{ BOLERO_CDC_RX_EC_ASRC2_CTL1, 0x00},
|
||||
{ BOLERO_CDC_RX_EC_ASRC2_FIFO_CTL, 0xA8},
|
||||
{ BOLERO_CDC_RX_EC_ASRC2_STATUS_FMIN_CNTR_LSB, 0x00},
|
||||
{ BOLERO_CDC_RX_EC_ASRC2_STATUS_FMIN_CNTR_MSB, 0x00},
|
||||
{ BOLERO_CDC_RX_EC_ASRC2_STATUS_FMAX_CNTR_LSB, 0x00},
|
||||
{ BOLERO_CDC_RX_EC_ASRC2_STATUS_FMAX_CNTR_MSB, 0x00},
|
||||
{ BOLERO_CDC_RX_EC_ASRC2_STATUS_FIFO, 0x00},
|
||||
{ BOLERO_CDC_RX_DSD0_PATH_CTL, 0x00},
|
||||
{ BOLERO_CDC_RX_DSD0_CFG0, 0x00},
|
||||
{ BOLERO_CDC_RX_DSD0_CFG1, 0x62},
|
||||
{ BOLERO_CDC_RX_DSD0_CFG2, 0x96},
|
||||
{ BOLERO_CDC_RX_DSD1_PATH_CTL, 0x00},
|
||||
{ BOLERO_CDC_RX_DSD1_CFG0, 0x00},
|
||||
{ BOLERO_CDC_RX_DSD1_CFG1, 0x62},
|
||||
{ BOLERO_CDC_RX_DSD1_CFG2, 0x96},
|
||||
|
||||
/* WSA Macro */
|
||||
{ BOLERO_CDC_WSA_CLK_RST_CTRL_MCLK_CONTROL, 0x00},
|
||||
{ BOLERO_CDC_WSA_CLK_RST_CTRL_FS_CNT_CONTROL, 0x00},
|
||||
{ BOLERO_CDC_WSA_CLK_RST_CTRL_SWR_CONTROL, 0x00},
|
||||
{ BOLERO_CDC_WSA_TOP_TOP_CFG0, 0x00},
|
||||
{ BOLERO_CDC_WSA_TOP_TOP_CFG1, 0x00},
|
||||
{ BOLERO_CDC_WSA_TOP_FREQ_MCLK, 0x00},
|
||||
{ BOLERO_CDC_WSA_TOP_DEBUG_BUS_SEL, 0x00},
|
||||
{ BOLERO_CDC_WSA_TOP_DEBUG_EN0, 0x00},
|
||||
{ BOLERO_CDC_WSA_TOP_DEBUG_EN1, 0x00},
|
||||
{ BOLERO_CDC_WSA_TOP_DEBUG_DSM_LB, 0x88},
|
||||
{ BOLERO_CDC_WSA_TOP_RX_I2S_CTL, 0x0C},
|
||||
{ BOLERO_CDC_WSA_TOP_TX_I2S_CTL, 0x0C},
|
||||
{ BOLERO_CDC_WSA_TOP_I2S_CLK, 0x02},
|
||||
{ BOLERO_CDC_WSA_TOP_I2S_RESET, 0x00},
|
||||
{ BOLERO_CDC_WSA_RX_INP_MUX_RX_INT0_CFG0, 0x00},
|
||||
{ BOLERO_CDC_WSA_RX_INP_MUX_RX_INT0_CFG1, 0x00},
|
||||
{ BOLERO_CDC_WSA_RX_INP_MUX_RX_INT1_CFG0, 0x00},
|
||||
{ BOLERO_CDC_WSA_RX_INP_MUX_RX_INT1_CFG1, 0x00},
|
||||
{ BOLERO_CDC_WSA_RX_INP_MUX_RX_MIX_CFG0, 0x00},
|
||||
{ BOLERO_CDC_WSA_RX_INP_MUX_RX_EC_CFG0, 0x00},
|
||||
{ BOLERO_CDC_WSA_RX_INP_MUX_SOFTCLIP_CFG0, 0x00},
|
||||
{ BOLERO_CDC_WSA_VBAT_BCL_VBAT_PATH_CTL, 0x00},
|
||||
{ BOLERO_CDC_WSA_VBAT_BCL_VBAT_CFG, 0x10},
|
||||
{ BOLERO_CDC_WSA_VBAT_BCL_VBAT_ADC_CAL1, 0x00},
|
||||
{ BOLERO_CDC_WSA_VBAT_BCL_VBAT_ADC_CAL2, 0x00},
|
||||
{ BOLERO_CDC_WSA_VBAT_BCL_VBAT_ADC_CAL3, 0x04},
|
||||
{ BOLERO_CDC_WSA_VBAT_BCL_VBAT_PK_EST1, 0xE0},
|
||||
{ BOLERO_CDC_WSA_VBAT_BCL_VBAT_PK_EST2, 0x01},
|
||||
{ BOLERO_CDC_WSA_VBAT_BCL_VBAT_PK_EST3, 0x40},
|
||||
{ BOLERO_CDC_WSA_VBAT_BCL_VBAT_RF_PROC1, 0x2A},
|
||||
{ BOLERO_CDC_WSA_VBAT_BCL_VBAT_RF_PROC2, 0x00},
|
||||
{ BOLERO_CDC_WSA_VBAT_BCL_VBAT_TAC1, 0x00},
|
||||
{ BOLERO_CDC_WSA_VBAT_BCL_VBAT_TAC2, 0x18},
|
||||
{ BOLERO_CDC_WSA_VBAT_BCL_VBAT_TAC3, 0x18},
|
||||
{ BOLERO_CDC_WSA_VBAT_BCL_VBAT_TAC4, 0x03},
|
||||
{ BOLERO_CDC_WSA_VBAT_BCL_VBAT_GAIN_UPD1, 0x01},
|
||||
{ BOLERO_CDC_WSA_VBAT_BCL_VBAT_GAIN_UPD2, 0x00},
|
||||
{ BOLERO_CDC_WSA_VBAT_BCL_VBAT_GAIN_UPD3, 0x00},
|
||||
{ BOLERO_CDC_WSA_VBAT_BCL_VBAT_GAIN_UPD4, 0x64},
|
||||
{ BOLERO_CDC_WSA_VBAT_BCL_VBAT_GAIN_UPD5, 0x01},
|
||||
{ BOLERO_CDC_WSA_VBAT_BCL_VBAT_DEBUG1, 0x00},
|
||||
{ BOLERO_CDC_WSA_VBAT_BCL_VBAT_GAIN_UPD_MON, 0x00},
|
||||
{ BOLERO_CDC_WSA_VBAT_BCL_VBAT_GAIN_MON_VAL, 0x00},
|
||||
{ BOLERO_CDC_WSA_VBAT_BCL_VBAT_BAN, 0x0C},
|
||||
{ BOLERO_CDC_WSA_VBAT_BCL_VBAT_BCL_GAIN_UPD1, 0x00},
|
||||
{ BOLERO_CDC_WSA_VBAT_BCL_VBAT_BCL_GAIN_UPD2, 0x77},
|
||||
{ BOLERO_CDC_WSA_VBAT_BCL_VBAT_BCL_GAIN_UPD3, 0x01},
|
||||
{ BOLERO_CDC_WSA_VBAT_BCL_VBAT_BCL_GAIN_UPD4, 0x00},
|
||||
{ BOLERO_CDC_WSA_VBAT_BCL_VBAT_BCL_GAIN_UPD5, 0x4B},
|
||||
{ BOLERO_CDC_WSA_VBAT_BCL_VBAT_BCL_GAIN_UPD6, 0x00},
|
||||
{ BOLERO_CDC_WSA_VBAT_BCL_VBAT_BCL_GAIN_UPD7, 0x01},
|
||||
{ BOLERO_CDC_WSA_VBAT_BCL_VBAT_BCL_GAIN_UPD8, 0x00},
|
||||
{ BOLERO_CDC_WSA_VBAT_BCL_VBAT_BCL_GAIN_UPD9, 0x00},
|
||||
{ BOLERO_CDC_WSA_VBAT_BCL_VBAT_BCL_ATTN1, 0x04},
|
||||
{ BOLERO_CDC_WSA_VBAT_BCL_VBAT_BCL_ATTN2, 0x08},
|
||||
{ BOLERO_CDC_WSA_VBAT_BCL_VBAT_BCL_ATTN3, 0x0C},
|
||||
{ BOLERO_CDC_WSA_VBAT_BCL_VBAT_DECODE_CTL1, 0xE0},
|
||||
{ BOLERO_CDC_WSA_VBAT_BCL_VBAT_DECODE_CTL2, 0x00},
|
||||
{ BOLERO_CDC_WSA_VBAT_BCL_VBAT_DECODE_CFG1, 0x00},
|
||||
{ BOLERO_CDC_WSA_VBAT_BCL_VBAT_DECODE_CFG2, 0x00},
|
||||
{ BOLERO_CDC_WSA_VBAT_BCL_VBAT_DECODE_CFG3, 0x00},
|
||||
{ BOLERO_CDC_WSA_VBAT_BCL_VBAT_DECODE_CFG4, 0x00},
|
||||
{ BOLERO_CDC_WSA_VBAT_BCL_VBAT_DECODE_ST, 0x00},
|
||||
{ BOLERO_CDC_WSA_TX0_SPKR_PROT_PATH_CTL, 0x02},
|
||||
{ BOLERO_CDC_WSA_TX0_SPKR_PROT_PATH_CFG0, 0x00},
|
||||
{ BOLERO_CDC_WSA_TX1_SPKR_PROT_PATH_CTL, 0x02},
|
||||
{ BOLERO_CDC_WSA_TX1_SPKR_PROT_PATH_CFG0, 0x00},
|
||||
{ BOLERO_CDC_WSA_TX2_SPKR_PROT_PATH_CTL, 0x02},
|
||||
{ BOLERO_CDC_WSA_TX2_SPKR_PROT_PATH_CFG0, 0x00},
|
||||
{ BOLERO_CDC_WSA_TX3_SPKR_PROT_PATH_CTL, 0x02},
|
||||
{ BOLERO_CDC_WSA_TX3_SPKR_PROT_PATH_CFG0, 0x00},
|
||||
{ BOLERO_CDC_WSA_INTR_CTRL_CFG, 0x00},
|
||||
{ BOLERO_CDC_WSA_INTR_CTRL_CLR_COMMIT, 0x00},
|
||||
{ BOLERO_CDC_WSA_INTR_CTRL_PIN1_MASK0, 0xFF},
|
||||
{ BOLERO_CDC_WSA_INTR_CTRL_PIN1_STATUS0, 0x00},
|
||||
{ BOLERO_CDC_WSA_INTR_CTRL_PIN1_CLEAR0, 0x00},
|
||||
{ BOLERO_CDC_WSA_INTR_CTRL_PIN2_MASK0, 0xFF},
|
||||
{ BOLERO_CDC_WSA_INTR_CTRL_PIN2_STATUS0, 0x00},
|
||||
{ BOLERO_CDC_WSA_INTR_CTRL_PIN2_CLEAR0, 0x00},
|
||||
{ BOLERO_CDC_WSA_INTR_CTRL_LEVEL0, 0x00},
|
||||
{ BOLERO_CDC_WSA_INTR_CTRL_BYPASS0, 0x00},
|
||||
{ BOLERO_CDC_WSA_INTR_CTRL_SET0, 0x00},
|
||||
{ BOLERO_CDC_WSA_RX0_RX_PATH_CTL, 0x04},
|
||||
{ BOLERO_CDC_WSA_RX0_RX_PATH_CFG0, 0x00},
|
||||
{ BOLERO_CDC_WSA_RX0_RX_PATH_CFG1, 0x64},
|
||||
{ BOLERO_CDC_WSA_RX0_RX_PATH_CFG2, 0x8F},
|
||||
{ BOLERO_CDC_WSA_RX0_RX_PATH_CFG3, 0x00},
|
||||
{ BOLERO_CDC_WSA_RX0_RX_VOL_CTL, 0x00},
|
||||
{ BOLERO_CDC_WSA_RX0_RX_PATH_MIX_CTL, 0x04},
|
||||
{ BOLERO_CDC_WSA_RX0_RX_PATH_MIX_CFG, 0x7E},
|
||||
{ BOLERO_CDC_WSA_RX0_RX_VOL_MIX_CTL, 0x00},
|
||||
{ BOLERO_CDC_WSA_RX0_RX_PATH_SEC0, 0x04},
|
||||
{ BOLERO_CDC_WSA_RX0_RX_PATH_SEC1, 0x08},
|
||||
{ BOLERO_CDC_WSA_RX0_RX_PATH_SEC2, 0x00},
|
||||
{ BOLERO_CDC_WSA_RX0_RX_PATH_SEC3, 0x00},
|
||||
{ BOLERO_CDC_WSA_RX0_RX_PATH_SEC5, 0x00},
|
||||
{ BOLERO_CDC_WSA_RX0_RX_PATH_SEC6, 0x00},
|
||||
{ BOLERO_CDC_WSA_RX0_RX_PATH_SEC7, 0x00},
|
||||
{ BOLERO_CDC_WSA_RX0_RX_PATH_MIX_SEC0, 0x08},
|
||||
{ BOLERO_CDC_WSA_RX0_RX_PATH_MIX_SEC1, 0x00},
|
||||
{ BOLERO_CDC_WSA_RX0_RX_PATH_DSMDEM_CTL, 0x00},
|
||||
{ BOLERO_CDC_WSA_RX1_RX_PATH_CFG0, 0x00},
|
||||
{ BOLERO_CDC_WSA_RX1_RX_PATH_CFG1, 0x64},
|
||||
{ BOLERO_CDC_WSA_RX1_RX_PATH_CFG2, 0x8F},
|
||||
{ BOLERO_CDC_WSA_RX1_RX_PATH_CFG3, 0x00},
|
||||
{ BOLERO_CDC_WSA_RX1_RX_VOL_CTL, 0x00},
|
||||
{ BOLERO_CDC_WSA_RX1_RX_PATH_MIX_CTL, 0x04},
|
||||
{ BOLERO_CDC_WSA_RX1_RX_PATH_MIX_CFG, 0x7E},
|
||||
{ BOLERO_CDC_WSA_RX1_RX_VOL_MIX_CTL, 0x00},
|
||||
{ BOLERO_CDC_WSA_RX1_RX_PATH_SEC0, 0x04},
|
||||
{ BOLERO_CDC_WSA_RX1_RX_PATH_SEC1, 0x08},
|
||||
{ BOLERO_CDC_WSA_RX1_RX_PATH_SEC2, 0x00},
|
||||
{ BOLERO_CDC_WSA_RX1_RX_PATH_SEC3, 0x00},
|
||||
{ BOLERO_CDC_WSA_RX1_RX_PATH_SEC5, 0x00},
|
||||
{ BOLERO_CDC_WSA_RX1_RX_PATH_SEC6, 0x00},
|
||||
{ BOLERO_CDC_WSA_RX1_RX_PATH_SEC7, 0x00},
|
||||
{ BOLERO_CDC_WSA_RX1_RX_PATH_MIX_SEC0, 0x08},
|
||||
{ BOLERO_CDC_WSA_RX1_RX_PATH_MIX_SEC1, 0x00},
|
||||
{ BOLERO_CDC_WSA_RX1_RX_PATH_DSMDEM_CTL, 0x00},
|
||||
{ BOLERO_CDC_WSA_BOOST0_BOOST_PATH_CTL, 0x00},
|
||||
{ BOLERO_CDC_WSA_BOOST0_BOOST_CTL, 0xD0},
|
||||
{ BOLERO_CDC_WSA_BOOST0_BOOST_CFG1, 0x89},
|
||||
{ BOLERO_CDC_WSA_BOOST0_BOOST_CFG2, 0x04},
|
||||
{ BOLERO_CDC_WSA_BOOST1_BOOST_PATH_CTL, 0x00},
|
||||
{ BOLERO_CDC_WSA_BOOST1_BOOST_CTL, 0xD0},
|
||||
{ BOLERO_CDC_WSA_BOOST1_BOOST_CFG1, 0x89},
|
||||
{ BOLERO_CDC_WSA_BOOST1_BOOST_CFG2, 0x04},
|
||||
{ BOLERO_CDC_WSA_COMPANDER0_CTL0, 0x60},
|
||||
{ BOLERO_CDC_WSA_COMPANDER0_CTL1, 0xDB},
|
||||
{ BOLERO_CDC_WSA_COMPANDER0_CTL2, 0xFF},
|
||||
{ BOLERO_CDC_WSA_COMPANDER0_CTL3, 0x35},
|
||||
{ BOLERO_CDC_WSA_COMPANDER0_CTL4, 0xFF},
|
||||
{ BOLERO_CDC_WSA_COMPANDER0_CTL5, 0x00},
|
||||
{ BOLERO_CDC_WSA_COMPANDER0_CTL6, 0x01},
|
||||
{ BOLERO_CDC_WSA_COMPANDER0_CTL7, 0x28},
|
||||
{ BOLERO_CDC_WSA_COMPANDER1_CTL0, 0x60},
|
||||
{ BOLERO_CDC_WSA_COMPANDER1_CTL1, 0xDB},
|
||||
{ BOLERO_CDC_WSA_COMPANDER1_CTL2, 0xFF},
|
||||
{ BOLERO_CDC_WSA_COMPANDER1_CTL3, 0x35},
|
||||
{ BOLERO_CDC_WSA_COMPANDER1_CTL4, 0xFF},
|
||||
{ BOLERO_CDC_WSA_COMPANDER1_CTL5, 0x00},
|
||||
{ BOLERO_CDC_WSA_COMPANDER1_CTL6, 0x01},
|
||||
{ BOLERO_CDC_WSA_COMPANDER1_CTL7, 0x28},
|
||||
{ BOLERO_CDC_WSA_SOFTCLIP0_CRC, 0x00},
|
||||
{ BOLERO_CDC_WSA_SOFTCLIP0_SOFTCLIP_CTRL, 0x38},
|
||||
{ BOLERO_CDC_WSA_SOFTCLIP1_CRC, 0x00},
|
||||
{ BOLERO_CDC_WSA_SOFTCLIP1_SOFTCLIP_CTRL, 0x38},
|
||||
{ BOLERO_CDC_WSA_EC_HQ0_EC_REF_HQ_PATH_CTL, 0x00},
|
||||
{ BOLERO_CDC_WSA_EC_HQ0_EC_REF_HQ_CFG0, 0x01},
|
||||
{ BOLERO_CDC_WSA_EC_HQ1_EC_REF_HQ_PATH_CTL, 0x00},
|
||||
{ BOLERO_CDC_WSA_EC_HQ1_EC_REF_HQ_CFG0, 0x01},
|
||||
{ BOLERO_CDC_WSA_SPLINE_ASRC0_CLK_RST_CTL, 0x00},
|
||||
{ BOLERO_CDC_WSA_SPLINE_ASRC0_CTL0, 0x00},
|
||||
{ BOLERO_CDC_WSA_SPLINE_ASRC0_CTL1, 0x00},
|
||||
{ BOLERO_CDC_WSA_SPLINE_ASRC0_FIFO_CTL, 0xA8},
|
||||
{ BOLERO_CDC_WSA_SPLINE_ASRC0_STATUS_FMIN_CNTR_LSB, 0x00},
|
||||
{ BOLERO_CDC_WSA_SPLINE_ASRC0_STATUS_FMIN_CNTR_MSB, 0x00},
|
||||
{ BOLERO_CDC_WSA_SPLINE_ASRC0_STATUS_FMAX_CNTR_LSB, 0x00},
|
||||
{ BOLERO_CDC_WSA_SPLINE_ASRC0_STATUS_FMAX_CNTR_MSB, 0x00},
|
||||
{ BOLERO_CDC_WSA_SPLINE_ASRC0_STATUS_FIFO, 0x00},
|
||||
{ BOLERO_CDC_WSA_SPLINE_ASRC1_CLK_RST_CTL, 0x00},
|
||||
{ BOLERO_CDC_WSA_SPLINE_ASRC1_CTL0, 0x00},
|
||||
{ BOLERO_CDC_WSA_SPLINE_ASRC1_CTL1, 0x00},
|
||||
{ BOLERO_CDC_WSA_SPLINE_ASRC1_FIFO_CTL, 0xA8},
|
||||
{ BOLERO_CDC_WSA_SPLINE_ASRC1_STATUS_FMIN_CNTR_LSB, 0x00},
|
||||
{ BOLERO_CDC_WSA_SPLINE_ASRC1_STATUS_FMIN_CNTR_MSB, 0x00},
|
||||
{ BOLERO_CDC_WSA_SPLINE_ASRC1_STATUS_FMAX_CNTR_LSB, 0x00},
|
||||
{ BOLERO_CDC_WSA_SPLINE_ASRC1_STATUS_FMAX_CNTR_MSB, 0x00},
|
||||
{ BOLERO_CDC_WSA_SPLINE_ASRC1_STATUS_FIFO, 0x00},
|
||||
|
||||
/* VA macro */
|
||||
{ BOLERO_CDC_VA_CLK_RST_CTRL_MCLK_CONTROL, 0x00},
|
||||
{ BOLERO_CDC_VA_CLK_RST_CTRL_FS_CNT_CONTROL, 0x00},
|
||||
{ BOLERO_CDC_VA_TOP_CSR_TOP_CFG0, 0x00},
|
||||
{ BOLERO_CDC_VA_TOP_CSR_DMIC0_CTL, 0x00},
|
||||
{ BOLERO_CDC_VA_TOP_CSR_DMIC1_CTL, 0x00},
|
||||
{ BOLERO_CDC_VA_TOP_CSR_DMIC2_CTL, 0x00},
|
||||
{ BOLERO_CDC_VA_TOP_CSR_DMIC3_CTL, 0x00},
|
||||
{ BOLERO_CDC_VA_TOP_CSR_DMIC_CFG, 0x80},
|
||||
{ BOLERO_CDC_VA_TOP_CSR_DEBUG_BUS, 0x00},
|
||||
{ BOLERO_CDC_VA_TOP_CSR_DEBUG_EN, 0x00},
|
||||
{ BOLERO_CDC_VA_TOP_CSR_TX_I2S_CTL, 0x0C},
|
||||
{ BOLERO_CDC_VA_TOP_CSR_I2S_CLK, 0x00},
|
||||
{ BOLERO_CDC_VA_TOP_CSR_I2S_RESET, 0x00},
|
||||
{ BOLERO_CDC_VA_TOP_CSR_CORE_ID_0, 0x00},
|
||||
{ BOLERO_CDC_VA_TOP_CSR_CORE_ID_1, 0x00},
|
||||
{ BOLERO_CDC_VA_TOP_CSR_CORE_ID_2, 0x00},
|
||||
{ BOLERO_CDC_VA_TOP_CSR_CORE_ID_3, 0x00},
|
||||
|
||||
/* VA core */
|
||||
{ BOLERO_CDC_VA_INP_MUX_ADC_MUX0_CFG0, 0x00},
|
||||
{ BOLERO_CDC_VA_INP_MUX_ADC_MUX0_CFG1, 0x00},
|
||||
{ BOLERO_CDC_VA_INP_MUX_ADC_MUX1_CFG0, 0x00},
|
||||
{ BOLERO_CDC_VA_INP_MUX_ADC_MUX1_CFG1, 0x00},
|
||||
{ BOLERO_CDC_VA_INP_MUX_ADC_MUX2_CFG0, 0x00},
|
||||
{ BOLERO_CDC_VA_INP_MUX_ADC_MUX2_CFG1, 0x00},
|
||||
{ BOLERO_CDC_VA_INP_MUX_ADC_MUX3_CFG0, 0x00},
|
||||
{ BOLERO_CDC_VA_INP_MUX_ADC_MUX3_CFG1, 0x00},
|
||||
{ BOLERO_CDC_VA_INP_MUX_ADC_MUX4_CFG0, 0x00},
|
||||
{ BOLERO_CDC_VA_INP_MUX_ADC_MUX4_CFG1, 0x00},
|
||||
{ BOLERO_CDC_VA_INP_MUX_ADC_MUX5_CFG0, 0x00},
|
||||
{ BOLERO_CDC_VA_INP_MUX_ADC_MUX5_CFG1, 0x00},
|
||||
{ BOLERO_CDC_VA_INP_MUX_ADC_MUX6_CFG0, 0x00},
|
||||
{ BOLERO_CDC_VA_INP_MUX_ADC_MUX6_CFG1, 0x00},
|
||||
{ BOLERO_CDC_VA_INP_MUX_ADC_MUX7_CFG0, 0x00},
|
||||
{ BOLERO_CDC_VA_INP_MUX_ADC_MUX7_CFG1, 0x00},
|
||||
{ BOLERO_CDC_VA_TX0_TX_PATH_CTL, 0x04},
|
||||
{ BOLERO_CDC_VA_TX0_TX_PATH_CFG0, 0x10},
|
||||
{ BOLERO_CDC_VA_TX0_TX_PATH_CFG1, 0x0B},
|
||||
{ BOLERO_CDC_VA_TX0_TX_VOL_CTL, 0x00},
|
||||
{ BOLERO_CDC_VA_TX0_TX_PATH_SEC0, 0x00},
|
||||
{ BOLERO_CDC_VA_TX0_TX_PATH_SEC1, 0x00},
|
||||
{ BOLERO_CDC_VA_TX0_TX_PATH_SEC2, 0x01},
|
||||
{ BOLERO_CDC_VA_TX0_TX_PATH_SEC3, 0x3C},
|
||||
{ BOLERO_CDC_VA_TX0_TX_PATH_SEC4, 0x20},
|
||||
{ BOLERO_CDC_VA_TX0_TX_PATH_SEC5, 0x00},
|
||||
{ BOLERO_CDC_VA_TX0_TX_PATH_SEC6, 0x00},
|
||||
{ BOLERO_CDC_VA_TX0_TX_PATH_SEC7, 0x25},
|
||||
{ BOLERO_CDC_VA_TX1_TX_PATH_CTL, 0x04},
|
||||
{ BOLERO_CDC_VA_TX1_TX_PATH_CFG0, 0x10},
|
||||
{ BOLERO_CDC_VA_TX1_TX_PATH_CFG1, 0x0B},
|
||||
{ BOLERO_CDC_VA_TX1_TX_VOL_CTL, 0x00},
|
||||
{ BOLERO_CDC_VA_TX1_TX_PATH_SEC0, 0x00},
|
||||
{ BOLERO_CDC_VA_TX1_TX_PATH_SEC1, 0x00},
|
||||
{ BOLERO_CDC_VA_TX1_TX_PATH_SEC2, 0x01},
|
||||
{ BOLERO_CDC_VA_TX1_TX_PATH_SEC3, 0x3C},
|
||||
{ BOLERO_CDC_VA_TX1_TX_PATH_SEC4, 0x20},
|
||||
{ BOLERO_CDC_VA_TX1_TX_PATH_SEC5, 0x00},
|
||||
{ BOLERO_CDC_VA_TX1_TX_PATH_SEC6, 0x00},
|
||||
{ BOLERO_CDC_VA_TX2_TX_PATH_CTL, 0x04},
|
||||
{ BOLERO_CDC_VA_TX2_TX_PATH_CFG0, 0x10},
|
||||
{ BOLERO_CDC_VA_TX2_TX_PATH_CFG1, 0x0B},
|
||||
{ BOLERO_CDC_VA_TX2_TX_VOL_CTL, 0x00},
|
||||
{ BOLERO_CDC_VA_TX2_TX_PATH_SEC0, 0x00},
|
||||
{ BOLERO_CDC_VA_TX2_TX_PATH_SEC1, 0x00},
|
||||
{ BOLERO_CDC_VA_TX2_TX_PATH_SEC2, 0x01},
|
||||
{ BOLERO_CDC_VA_TX2_TX_PATH_SEC3, 0x3C},
|
||||
{ BOLERO_CDC_VA_TX2_TX_PATH_SEC4, 0x20},
|
||||
{ BOLERO_CDC_VA_TX2_TX_PATH_SEC5, 0x00},
|
||||
{ BOLERO_CDC_VA_TX2_TX_PATH_SEC6, 0x00},
|
||||
{ BOLERO_CDC_VA_TX3_TX_PATH_CTL, 0x04},
|
||||
{ BOLERO_CDC_VA_TX3_TX_PATH_CFG0, 0x10},
|
||||
{ BOLERO_CDC_VA_TX3_TX_PATH_CFG1, 0x0B},
|
||||
{ BOLERO_CDC_VA_TX3_TX_VOL_CTL, 0x00},
|
||||
{ BOLERO_CDC_VA_TX3_TX_PATH_SEC0, 0x00},
|
||||
{ BOLERO_CDC_VA_TX3_TX_PATH_SEC1, 0x00},
|
||||
{ BOLERO_CDC_VA_TX3_TX_PATH_SEC2, 0x01},
|
||||
{ BOLERO_CDC_VA_TX3_TX_PATH_SEC3, 0x3C},
|
||||
{ BOLERO_CDC_VA_TX3_TX_PATH_SEC4, 0x20},
|
||||
{ BOLERO_CDC_VA_TX3_TX_PATH_SEC5, 0x00},
|
||||
{ BOLERO_CDC_VA_TX3_TX_PATH_SEC6, 0x00},
|
||||
{ BOLERO_CDC_VA_TX4_TX_PATH_CTL, 0x04},
|
||||
{ BOLERO_CDC_VA_TX4_TX_PATH_CFG0, 0x10},
|
||||
{ BOLERO_CDC_VA_TX4_TX_PATH_CFG1, 0x0B},
|
||||
{ BOLERO_CDC_VA_TX4_TX_VOL_CTL, 0x00},
|
||||
{ BOLERO_CDC_VA_TX4_TX_PATH_SEC0, 0x00},
|
||||
{ BOLERO_CDC_VA_TX4_TX_PATH_SEC1, 0x00},
|
||||
{ BOLERO_CDC_VA_TX4_TX_PATH_SEC2, 0x01},
|
||||
{ BOLERO_CDC_VA_TX4_TX_PATH_SEC3, 0x3C},
|
||||
{ BOLERO_CDC_VA_TX4_TX_PATH_SEC4, 0x20},
|
||||
{ BOLERO_CDC_VA_TX4_TX_PATH_SEC5, 0x00},
|
||||
{ BOLERO_CDC_VA_TX4_TX_PATH_SEC6, 0x00},
|
||||
{ BOLERO_CDC_VA_TX5_TX_PATH_CTL, 0x04},
|
||||
{ BOLERO_CDC_VA_TX5_TX_PATH_CFG0, 0x10},
|
||||
{ BOLERO_CDC_VA_TX5_TX_PATH_CFG1, 0x0B},
|
||||
{ BOLERO_CDC_VA_TX5_TX_VOL_CTL, 0x00},
|
||||
{ BOLERO_CDC_VA_TX5_TX_PATH_SEC0, 0x00},
|
||||
{ BOLERO_CDC_VA_TX5_TX_PATH_SEC1, 0x00},
|
||||
{ BOLERO_CDC_VA_TX5_TX_PATH_SEC2, 0x01},
|
||||
{ BOLERO_CDC_VA_TX5_TX_PATH_SEC3, 0x3C},
|
||||
{ BOLERO_CDC_VA_TX5_TX_PATH_SEC4, 0x20},
|
||||
{ BOLERO_CDC_VA_TX5_TX_PATH_SEC5, 0x00},
|
||||
{ BOLERO_CDC_VA_TX5_TX_PATH_SEC6, 0x00},
|
||||
{ BOLERO_CDC_VA_TX6_TX_PATH_CTL, 0x04},
|
||||
{ BOLERO_CDC_VA_TX6_TX_PATH_CFG0, 0x10},
|
||||
{ BOLERO_CDC_VA_TX6_TX_PATH_CFG1, 0x0B},
|
||||
{ BOLERO_CDC_VA_TX6_TX_VOL_CTL, 0x00},
|
||||
{ BOLERO_CDC_VA_TX6_TX_PATH_SEC0, 0x00},
|
||||
{ BOLERO_CDC_VA_TX6_TX_PATH_SEC1, 0x00},
|
||||
{ BOLERO_CDC_VA_TX6_TX_PATH_SEC2, 0x01},
|
||||
{ BOLERO_CDC_VA_TX6_TX_PATH_SEC3, 0x3C},
|
||||
{ BOLERO_CDC_VA_TX6_TX_PATH_SEC4, 0x20},
|
||||
{ BOLERO_CDC_VA_TX6_TX_PATH_SEC5, 0x00},
|
||||
{ BOLERO_CDC_VA_TX6_TX_PATH_SEC6, 0x00},
|
||||
{ BOLERO_CDC_VA_TX7_TX_PATH_CTL, 0x04},
|
||||
{ BOLERO_CDC_VA_TX7_TX_PATH_CFG0, 0x10},
|
||||
{ BOLERO_CDC_VA_TX7_TX_PATH_CFG1, 0x0B},
|
||||
{ BOLERO_CDC_VA_TX7_TX_VOL_CTL, 0x00},
|
||||
{ BOLERO_CDC_VA_TX7_TX_PATH_SEC0, 0x00},
|
||||
{ BOLERO_CDC_VA_TX7_TX_PATH_SEC1, 0x00},
|
||||
{ BOLERO_CDC_VA_TX7_TX_PATH_SEC2, 0x01},
|
||||
{ BOLERO_CDC_VA_TX7_TX_PATH_SEC3, 0x3C},
|
||||
{ BOLERO_CDC_VA_TX7_TX_PATH_SEC4, 0x20},
|
||||
{ BOLERO_CDC_VA_TX7_TX_PATH_SEC5, 0x00},
|
||||
{ BOLERO_CDC_VA_TX7_TX_PATH_SEC6, 0x00},
|
||||
};
|
||||
|
||||
static bool bolero_is_readable_register(struct device *dev,
|
||||
unsigned int reg)
|
||||
{
|
||||
struct bolero_priv *priv = dev_get_drvdata(dev);
|
||||
u16 reg_offset;
|
||||
int macro_id;
|
||||
u8 *reg_tbl = NULL;
|
||||
|
||||
if (!priv)
|
||||
return false;
|
||||
|
||||
macro_id = bolero_get_macro_id(priv->va_without_decimation,
|
||||
reg);
|
||||
if (macro_id < 0 || !priv->macros_supported[macro_id])
|
||||
return false;
|
||||
|
||||
reg_tbl = bolero_reg_access[macro_id];
|
||||
reg_offset = reg - macro_id_base_offset[macro_id];
|
||||
|
||||
if (reg_tbl)
|
||||
return (reg_tbl[reg_offset] & RD_REG);
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
static bool bolero_is_writeable_register(struct device *dev,
|
||||
unsigned int reg)
|
||||
{
|
||||
struct bolero_priv *priv = dev_get_drvdata(dev);
|
||||
u16 reg_offset;
|
||||
int macro_id;
|
||||
const u8 *reg_tbl = NULL;
|
||||
|
||||
if (!priv)
|
||||
return false;
|
||||
|
||||
macro_id = bolero_get_macro_id(priv->va_without_decimation,
|
||||
reg);
|
||||
if (macro_id < 0 || !priv->macros_supported[macro_id])
|
||||
return false;
|
||||
|
||||
reg_tbl = bolero_reg_access[macro_id];
|
||||
reg_offset = reg - macro_id_base_offset[macro_id];
|
||||
|
||||
if (reg_tbl)
|
||||
return (reg_tbl[reg_offset] & WR_REG);
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
static bool bolero_is_volatile_register(struct device *dev,
|
||||
unsigned int reg)
|
||||
{
|
||||
return true;
|
||||
}
|
||||
|
||||
const struct regmap_config bolero_regmap_config = {
|
||||
.reg_bits = 16,
|
||||
.val_bits = 8,
|
||||
.reg_stride = 4,
|
||||
.cache_type = REGCACHE_RBTREE,
|
||||
.reg_defaults = bolero_defaults,
|
||||
.num_reg_defaults = ARRAY_SIZE(bolero_defaults),
|
||||
.max_register = BOLERO_CDC_MAX_REGISTER,
|
||||
.writeable_reg = bolero_is_writeable_register,
|
||||
.volatile_reg = bolero_is_volatile_register,
|
||||
.readable_reg = bolero_is_readable_register,
|
||||
};
|
768
asoc/codecs/bolero/bolero_cdc_tables.c
Normal file
768
asoc/codecs/bolero/bolero_cdc_tables.c
Normal file
|
@ -0,0 +1,768 @@
|
|||
/*
|
||||
* Copyright (c) 2018 The Linux Foundation. All rights reserved.
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License version 2 and
|
||||
* only version 2 as published by the Free Software Foundation.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*/
|
||||
|
||||
#include <linux/types.h>
|
||||
#include "bolero_cdc.h"
|
||||
#include "internal.h"
|
||||
|
||||
u8 bolero_tx_reg_access[BOLERO_CDC_TX_MACRO_MAX] = {
|
||||
[BOLERO_REG(BOLERO_CDC_TX_CLK_RST_CTRL_MCLK_CONTROL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX_CLK_RST_CTRL_FS_CNT_CONTROL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX_CLK_RST_CTRL_SWR_CONTROL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX_TOP_CSR_TOP_CFG0)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX_TOP_CSR_ANC_CFG)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX_TOP_CSR_SWR_CTRL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX_TOP_CSR_FREQ_MCLK)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX_TOP_CSR_DEBUG_BUS)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX_TOP_CSR_DEBUG_EN)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX_TOP_CSR_TX_I2S_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX_TOP_CSR_I2S_CLK)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX_TOP_CSR_I2S_RESET)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX_TOP_CSR_SWR_DMIC0_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX_TOP_CSR_SWR_DMIC1_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX_TOP_CSR_SWR_DMIC2_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX_TOP_CSR_SWR_DMIC3_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX_TOP_CSR_SWR_AMIC0_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX_TOP_CSR_SWR_AMIC1_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX_ANC0_CLK_RESET_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX_ANC0_MODE_1_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX_ANC0_MODE_2_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX_ANC0_FF_SHIFT)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX_ANC0_FB_SHIFT)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX_ANC0_LPF_FF_A_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX_ANC0_LPF_FF_B_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX_ANC0_LPF_FB_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX_ANC0_SMLPF_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX_ANC0_DCFLT_SHIFT_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX_ANC0_IIR_ADAPT_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX_ANC0_IIR_COEFF_1_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX_ANC0_IIR_COEFF_2_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX_ANC0_FF_A_GAIN_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX_ANC0_FF_B_GAIN_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX_ANC0_FB_GAIN_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX_INP_MUX_ADC_MUX0_CFG0)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX_INP_MUX_ADC_MUX0_CFG1)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX_INP_MUX_ADC_MUX1_CFG0)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX_INP_MUX_ADC_MUX1_CFG1)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX_INP_MUX_ADC_MUX2_CFG0)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX_INP_MUX_ADC_MUX2_CFG1)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX_INP_MUX_ADC_MUX3_CFG0)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX_INP_MUX_ADC_MUX3_CFG1)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX_INP_MUX_ADC_MUX4_CFG0)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX_INP_MUX_ADC_MUX4_CFG1)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX_INP_MUX_ADC_MUX5_CFG0)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX_INP_MUX_ADC_MUX5_CFG1)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX_INP_MUX_ADC_MUX6_CFG0)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX_INP_MUX_ADC_MUX6_CFG1)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX_INP_MUX_ADC_MUX7_CFG0)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX_INP_MUX_ADC_MUX7_CFG1)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX0_TX_PATH_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX0_TX_PATH_CFG0)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX0_TX_PATH_CFG1)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX0_TX_VOL_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX0_TX_PATH_SEC0)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX0_TX_PATH_SEC1)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX0_TX_PATH_SEC2)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX0_TX_PATH_SEC3)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX0_TX_PATH_SEC4)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX0_TX_PATH_SEC5)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX0_TX_PATH_SEC6)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX0_TX_PATH_SEC7)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX1_TX_PATH_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX1_TX_PATH_CFG0)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX1_TX_PATH_CFG1)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX1_TX_VOL_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX1_TX_PATH_SEC0)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX1_TX_PATH_SEC1)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX1_TX_PATH_SEC2)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX1_TX_PATH_SEC3)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX1_TX_PATH_SEC4)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX1_TX_PATH_SEC5)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX1_TX_PATH_SEC6)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX2_TX_PATH_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX2_TX_PATH_CFG0)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX2_TX_PATH_CFG1)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX2_TX_VOL_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX2_TX_PATH_SEC0)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX2_TX_PATH_SEC1)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX2_TX_PATH_SEC2)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX2_TX_PATH_SEC3)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX2_TX_PATH_SEC4)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX2_TX_PATH_SEC5)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX2_TX_PATH_SEC6)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX3_TX_PATH_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX3_TX_PATH_CFG0)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX3_TX_PATH_CFG1)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX3_TX_VOL_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX3_TX_PATH_SEC0)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX3_TX_PATH_SEC1)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX3_TX_PATH_SEC2)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX3_TX_PATH_SEC3)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX3_TX_PATH_SEC4)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX3_TX_PATH_SEC5)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX3_TX_PATH_SEC6)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX4_TX_PATH_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX4_TX_PATH_CFG0)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX4_TX_PATH_CFG1)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX4_TX_VOL_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX4_TX_PATH_SEC0)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX4_TX_PATH_SEC1)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX4_TX_PATH_SEC2)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX4_TX_PATH_SEC3)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX4_TX_PATH_SEC4)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX4_TX_PATH_SEC5)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX4_TX_PATH_SEC6)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX5_TX_PATH_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX5_TX_PATH_CFG0)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX5_TX_PATH_CFG1)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX5_TX_VOL_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX5_TX_PATH_SEC0)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX5_TX_PATH_SEC1)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX5_TX_PATH_SEC2)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX5_TX_PATH_SEC3)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX5_TX_PATH_SEC4)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX5_TX_PATH_SEC5)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX5_TX_PATH_SEC6)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX6_TX_PATH_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX6_TX_PATH_CFG0)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX6_TX_PATH_CFG1)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX6_TX_VOL_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX6_TX_PATH_SEC0)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX6_TX_PATH_SEC1)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX6_TX_PATH_SEC2)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX6_TX_PATH_SEC3)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX6_TX_PATH_SEC4)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX6_TX_PATH_SEC5)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX6_TX_PATH_SEC6)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX7_TX_PATH_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX7_TX_PATH_CFG0)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX7_TX_PATH_CFG1)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX7_TX_VOL_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX7_TX_PATH_SEC0)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX7_TX_PATH_SEC1)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX7_TX_PATH_SEC2)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX7_TX_PATH_SEC3)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX7_TX_PATH_SEC4)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX7_TX_PATH_SEC5)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_TX7_TX_PATH_SEC6)] = RD_WR_REG,
|
||||
};
|
||||
|
||||
u8 bolero_rx_reg_access[BOLERO_CDC_RX_MACRO_MAX] = {
|
||||
[BOLERO_REG(BOLERO_CDC_RX_TOP_TOP_CFG0)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_TOP_SWR_CTRL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_TOP_DEBUG)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_TOP_DEBUG_BUS)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_TOP_DEBUG_EN0)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_TOP_DEBUG_EN1)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_TOP_DEBUG_EN2)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_TOP_HPHL_COMP_WR_LSB)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_TOP_HPHL_COMP_WR_MSB)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_TOP_HPHL_COMP_LUT)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_TOP_HPHL_COMP_RD_LSB)] = RD_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_TOP_HPHL_COMP_RD_MSB)] = RD_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_TOP_HPHR_COMP_WR_LSB)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_TOP_HPHR_COMP_WR_MSB)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_TOP_HPHR_COMP_LUT)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_TOP_HPHR_COMP_RD_LSB)] = RD_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_TOP_HPHR_COMP_RD_MSB)] = RD_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_TOP_DSD0_DEBUG_CFG0)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_TOP_DSD0_DEBUG_CFG1)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_TOP_DSD0_DEBUG_CFG2)] = RD_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_TOP_DSD0_DEBUG_CFG3)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_TOP_DSD1_DEBUG_CFG0)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_TOP_DSD1_DEBUG_CFG1)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_TOP_DSD1_DEBUG_CFG2)] = RD_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_TOP_DSD1_DEBUG_CFG3)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_TOP_RX_I2S_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_TOP_TX_I2S2_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_TOP_I2S_CLK)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_TOP_I2S_RESET)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_TOP_I2S_MUX)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_CLK_RST_CTRL_MCLK_CONTROL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_CLK_RST_CTRL_FS_CNT_CONTROL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_CLK_RST_CTRL_SWR_CONTROL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_CLK_RST_CTRL_DSD_CONTROL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_CLK_RST_CTRL_ASRC_SHARE_CONTROL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_SOFTCLIP_CRC)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_SOFTCLIP_SOFTCLIP_CTRL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_INP_MUX_RX_INT0_CFG0)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_INP_MUX_RX_INT0_CFG1)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_INP_MUX_RX_INT1_CFG0)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_INP_MUX_RX_INT1_CFG1)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_INP_MUX_RX_INT2_CFG0)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_INP_MUX_RX_INT2_CFG1)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_INP_MUX_RX_MIX_CFG4)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_INP_MUX_RX_MIX_CFG5)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_INP_MUX_SIDETONE_SRC_CFG0)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_CLSH_CRC)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_CLSH_DLY_CTRL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_CLSH_DECAY_CTRL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_CLSH_HPH_V_PA)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_CLSH_EAR_V_PA)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_CLSH_HPH_V_HD)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_CLSH_EAR_V_HD)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_CLSH_K1_MSB)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_CLSH_K1_LSB)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_CLSH_K2_MSB)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_CLSH_K2_LSB)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_CLSH_IDLE_CTRL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_CLSH_IDLE_HPH)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_CLSH_IDLE_EAR)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_CLSH_TEST0)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_CLSH_TEST1)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_CLSH_OVR_VREF)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_CLSH_CLSG_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_CLSH_CLSG_CFG1)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_CLSH_CLSG_CFG2)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_BCL_VBAT_PATH_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_BCL_VBAT_CFG)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_BCL_VBAT_ADC_CAL1)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_BCL_VBAT_ADC_CAL2)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_BCL_VBAT_ADC_CAL3)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_BCL_VBAT_PK_EST1)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_BCL_VBAT_PK_EST2)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_BCL_VBAT_PK_EST3)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_BCL_VBAT_RF_PROC1)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_BCL_VBAT_RF_PROC2)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_BCL_VBAT_TAC1)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_BCL_VBAT_TAC2)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_BCL_VBAT_TAC3)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_BCL_VBAT_TAC4)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_BCL_VBAT_GAIN_UPD1)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_BCL_VBAT_GAIN_UPD2)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_BCL_VBAT_GAIN_UPD3)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_BCL_VBAT_GAIN_UPD4)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_BCL_VBAT_GAIN_UPD5)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_BCL_VBAT_DEBUG1)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_BCL_VBAT_GAIN_UPD_MON)] = WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_BCL_VBAT_GAIN_MON_VAL)] = RD_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_BCL_VBAT_BAN)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_BCL_VBAT_BCL_GAIN_UPD1)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_BCL_VBAT_BCL_GAIN_UPD2)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_BCL_VBAT_BCL_GAIN_UPD3)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_BCL_VBAT_BCL_GAIN_UPD4)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_BCL_VBAT_BCL_GAIN_UPD5)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_BCL_VBAT_BCL_GAIN_UPD6)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_BCL_VBAT_BCL_GAIN_UPD7)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_BCL_VBAT_BCL_GAIN_UPD8)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_BCL_VBAT_BCL_GAIN_UPD9)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_BCL_VBAT_ATTN1)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_BCL_VBAT_ATTN2)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_BCL_VBAT_ATTN3)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_BCL_VBAT_DECODE_CTL1)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_BCL_VBAT_DECODE_CTL2)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_BCL_VBAT_DECODE_CFG1)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_BCL_VBAT_DECODE_CFG2)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_BCL_VBAT_DECODE_CFG3)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_BCL_VBAT_DECODE_CFG4)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_BCL_VBAT_DECODE_ST)] = RD_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_INTR_CTRL_CFG)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_INTR_CTRL_CLR_COMMIT)] = WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_INTR_CTRL_PIN1_MASK0)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_INTR_CTRL_PIN1_STATUS0)] = RD_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_INTR_CTRL_PIN1_CLEAR0)] = WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_INTR_CTRL_PIN2_MASK0)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_INTR_CTRL_PIN2_STATUS0)] = RD_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_INTR_CTRL_PIN2_CLEAR0)] = WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_INTR_CTRL_LEVEL0)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_INTR_CTRL_BYPASS0)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_INTR_CTRL_SET0)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_RX0_RX_PATH_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_RX0_RX_PATH_CFG0)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_RX0_RX_PATH_CFG1)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_RX0_RX_PATH_CFG2)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_RX0_RX_PATH_CFG3)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_RX0_RX_VOL_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_RX0_RX_PATH_MIX_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_RX0_RX_PATH_MIX_CFG)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_RX0_RX_VOL_MIX_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_RX0_RX_PATH_SEC1)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_RX0_RX_PATH_SEC2)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_RX0_RX_PATH_SEC3)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_RX0_RX_PATH_SEC4)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_RX0_RX_PATH_SEC7)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_RX0_RX_PATH_MIX_SEC0)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_RX0_RX_PATH_MIX_SEC1)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_RX0_RX_PATH_DSM_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_RX0_RX_PATH_DSM_DATA1)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_RX0_RX_PATH_DSM_DATA2)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_RX0_RX_PATH_DSM_DATA3)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_RX0_RX_PATH_DSM_DATA4)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_RX0_RX_PATH_DSM_DATA5)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_RX0_RX_PATH_DSM_DATA6)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_RX1_RX_PATH_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_RX1_RX_PATH_CFG0)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_RX1_RX_PATH_CFG1)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_RX1_RX_PATH_CFG2)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_RX1_RX_PATH_CFG3)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_RX1_RX_VOL_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_RX1_RX_PATH_MIX_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_RX1_RX_PATH_MIX_CFG)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_RX1_RX_VOL_MIX_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_RX1_RX_PATH_SEC1)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_RX1_RX_PATH_SEC2)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_RX1_RX_PATH_SEC3)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_RX1_RX_PATH_SEC4)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_RX1_RX_PATH_SEC7)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_RX1_RX_PATH_MIX_SEC0)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_RX1_RX_PATH_MIX_SEC1)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_RX1_RX_PATH_DSM_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_RX1_RX_PATH_DSM_DATA1)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_RX1_RX_PATH_DSM_DATA2)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_RX1_RX_PATH_DSM_DATA3)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_RX1_RX_PATH_DSM_DATA4)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_RX1_RX_PATH_DSM_DATA5)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_RX1_RX_PATH_DSM_DATA6)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_RX2_RX_PATH_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_RX2_RX_PATH_CFG0)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_RX2_RX_PATH_CFG1)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_RX2_RX_PATH_CFG2)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_RX2_RX_PATH_CFG3)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_RX2_RX_VOL_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_RX2_RX_PATH_MIX_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_RX2_RX_PATH_MIX_CFG)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_RX2_RX_VOL_MIX_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_RX2_RX_PATH_SEC0)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_RX2_RX_PATH_SEC1)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_RX2_RX_PATH_SEC2)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_RX2_RX_PATH_SEC3)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_RX2_RX_PATH_SEC4)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_RX2_RX_PATH_SEC5)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_RX2_RX_PATH_SEC6)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_RX2_RX_PATH_SEC7)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_RX2_RX_PATH_MIX_SEC0)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_RX2_RX_PATH_MIX_SEC1)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_RX2_RX_PATH_DSM_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_IDLE_DETECT_PATH_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_IDLE_DETECT_CFG0)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_IDLE_DETECT_CFG1)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_IDLE_DETECT_CFG2)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_IDLE_DETECT_CFG3)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_COMPANDER0_CTL0)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_COMPANDER0_CTL1)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_COMPANDER0_CTL2)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_COMPANDER0_CTL3)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_COMPANDER0_CTL4)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_COMPANDER0_CTL5)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_COMPANDER0_CTL6)] = RD_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_COMPANDER0_CTL7)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_COMPANDER1_CTL0)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_COMPANDER1_CTL1)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_COMPANDER1_CTL2)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_COMPANDER1_CTL3)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_COMPANDER1_CTL4)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_COMPANDER1_CTL5)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_COMPANDER1_CTL6)] = RD_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_COMPANDER1_CTL7)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_SIDETONE_IIR0_IIR_PATH_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_SIDETONE_IIR0_IIR_GAIN_B1_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_SIDETONE_IIR0_IIR_GAIN_B2_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_SIDETONE_IIR0_IIR_GAIN_B3_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_SIDETONE_IIR0_IIR_GAIN_B4_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_SIDETONE_IIR0_IIR_GAIN_B5_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_SIDETONE_IIR0_IIR_GAIN_B6_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_SIDETONE_IIR0_IIR_GAIN_B7_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_SIDETONE_IIR0_IIR_GAIN_B8_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_SIDETONE_IIR0_IIR_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_SIDETONE_IIR0_IIR_GAIN_TIMER_CTL)] =
|
||||
RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_SIDETONE_IIR0_IIR_COEF_B1_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_SIDETONE_IIR0_IIR_COEF_B2_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_SIDETONE_IIR1_IIR_PATH_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_SIDETONE_IIR1_IIR_GAIN_B1_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_SIDETONE_IIR1_IIR_GAIN_B2_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_SIDETONE_IIR1_IIR_GAIN_B3_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_SIDETONE_IIR1_IIR_GAIN_B4_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_SIDETONE_IIR1_IIR_GAIN_B5_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_SIDETONE_IIR1_IIR_GAIN_B6_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_SIDETONE_IIR1_IIR_GAIN_B7_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_SIDETONE_IIR1_IIR_GAIN_B8_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_SIDETONE_IIR1_IIR_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_SIDETONE_IIR1_IIR_GAIN_TIMER_CTL)] =
|
||||
RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_SIDETONE_IIR1_IIR_COEF_B1_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_SIDETONE_IIR1_IIR_COEF_B2_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_IIR_INP_MUX_IIR0_MIX_CFG0)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_IIR_INP_MUX_IIR0_MIX_CFG1)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_IIR_INP_MUX_IIR0_MIX_CFG2)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_IIR_INP_MUX_IIR0_MIX_CFG3)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_IIR_INP_MUX_IIR1_MIX_CFG0)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_IIR_INP_MUX_IIR1_MIX_CFG1)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_IIR_INP_MUX_IIR1_MIX_CFG2)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_IIR_INP_MUX_IIR1_MIX_CFG3)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_SIDETONE_SRC0_ST_SRC_PATH_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_SIDETONE_SRC0_ST_SRC_PATH_CFG1)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_SIDETONE_SRC1_ST_SRC_PATH_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_SIDETONE_SRC1_ST_SRC_PATH_CFG1)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_EC_REF_HQ0_EC_REF_HQ_PATH_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_EC_REF_HQ0_EC_REF_HQ_CFG0)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_EC_REF_HQ1_EC_REF_HQ_PATH_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_EC_REF_HQ1_EC_REF_HQ_CFG0)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_EC_REF_HQ2_EC_REF_HQ_PATH_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_EC_REF_HQ2_EC_REF_HQ_CFG0)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_EC_ASRC0_CLK_RST_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_EC_ASRC0_CTL0)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_EC_ASRC0_CTL1)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_EC_ASRC0_FIFO_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_EC_ASRC0_STATUS_FMIN_CNTR_LSB)] = RD_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_EC_ASRC0_STATUS_FMIN_CNTR_MSB)] = RD_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_EC_ASRC0_STATUS_FMAX_CNTR_LSB)] = RD_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_EC_ASRC0_STATUS_FMAX_CNTR_MSB)] = RD_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_EC_ASRC0_STATUS_FIFO)] = RD_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_EC_ASRC1_CLK_RST_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_EC_ASRC1_CTL0)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_EC_ASRC1_CTL1)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_EC_ASRC1_FIFO_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_EC_ASRC1_STATUS_FMIN_CNTR_LSB)] = RD_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_EC_ASRC1_STATUS_FMIN_CNTR_MSB)] = RD_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_EC_ASRC1_STATUS_FMAX_CNTR_LSB)] = RD_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_EC_ASRC1_STATUS_FMAX_CNTR_MSB)] = RD_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_EC_ASRC1_STATUS_FIFO)] = RD_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_EC_ASRC2_CLK_RST_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_EC_ASRC2_CTL0)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_EC_ASRC2_CTL1)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_EC_ASRC2_FIFO_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_EC_ASRC2_STATUS_FMIN_CNTR_LSB)] = RD_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_EC_ASRC2_STATUS_FMIN_CNTR_MSB)] = RD_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_EC_ASRC2_STATUS_FMAX_CNTR_LSB)] = RD_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_EC_ASRC2_STATUS_FMAX_CNTR_MSB)] = RD_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_EC_ASRC2_STATUS_FIFO)] = RD_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_DSD0_PATH_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_DSD0_CFG0)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_DSD0_CFG1)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_DSD0_CFG2)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_DSD1_PATH_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_DSD1_CFG0)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_DSD1_CFG1)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_RX_DSD1_CFG2)] = RD_WR_REG,
|
||||
};
|
||||
|
||||
u8 bolero_va_reg_access[BOLERO_CDC_VA_MACRO_MAX] = {
|
||||
[BOLERO_REG(BOLERO_CDC_VA_CLK_RST_CTRL_MCLK_CONTROL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_VA_CLK_RST_CTRL_FS_CNT_CONTROL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_VA_TOP_CSR_TOP_CFG0)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_VA_TOP_CSR_DMIC0_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_VA_TOP_CSR_DMIC1_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_VA_TOP_CSR_DMIC2_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_VA_TOP_CSR_DMIC3_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_VA_TOP_CSR_DMIC_CFG)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_VA_TOP_CSR_DEBUG_BUS)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_VA_TOP_CSR_DEBUG_EN)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_VA_TOP_CSR_TX_I2S_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_VA_TOP_CSR_I2S_CLK)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_VA_TOP_CSR_I2S_RESET)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_VA_TOP_CSR_CORE_ID_0)] = RD_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_VA_TOP_CSR_CORE_ID_1)] = RD_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_VA_TOP_CSR_CORE_ID_2)] = RD_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_VA_TOP_CSR_CORE_ID_3)] = RD_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_VA_INP_MUX_ADC_MUX0_CFG0)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_VA_INP_MUX_ADC_MUX0_CFG1)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_VA_INP_MUX_ADC_MUX1_CFG0)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_VA_INP_MUX_ADC_MUX1_CFG1)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_VA_INP_MUX_ADC_MUX2_CFG0)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_VA_INP_MUX_ADC_MUX2_CFG1)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_VA_INP_MUX_ADC_MUX3_CFG0)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_VA_INP_MUX_ADC_MUX3_CFG1)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_VA_INP_MUX_ADC_MUX4_CFG0)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_VA_INP_MUX_ADC_MUX4_CFG1)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_VA_INP_MUX_ADC_MUX5_CFG0)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_VA_INP_MUX_ADC_MUX5_CFG1)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_VA_INP_MUX_ADC_MUX6_CFG0)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_VA_INP_MUX_ADC_MUX6_CFG1)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_VA_INP_MUX_ADC_MUX7_CFG0)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_VA_INP_MUX_ADC_MUX7_CFG1)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_VA_TX0_TX_PATH_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_VA_TX0_TX_PATH_CFG0)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_VA_TX0_TX_PATH_CFG1)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_VA_TX0_TX_VOL_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_VA_TX0_TX_PATH_SEC0)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_VA_TX0_TX_PATH_SEC1)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_VA_TX0_TX_PATH_SEC2)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_VA_TX0_TX_PATH_SEC3)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_VA_TX0_TX_PATH_SEC4)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_VA_TX0_TX_PATH_SEC5)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_VA_TX0_TX_PATH_SEC6)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_VA_TX0_TX_PATH_SEC7)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_VA_TX1_TX_PATH_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_VA_TX1_TX_PATH_CFG0)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_VA_TX1_TX_PATH_CFG1)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_VA_TX1_TX_VOL_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_VA_TX1_TX_PATH_SEC0)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_VA_TX1_TX_PATH_SEC1)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_VA_TX1_TX_PATH_SEC2)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_VA_TX1_TX_PATH_SEC3)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_VA_TX1_TX_PATH_SEC4)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_VA_TX1_TX_PATH_SEC5)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_VA_TX1_TX_PATH_SEC6)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_VA_TX2_TX_PATH_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_VA_TX2_TX_PATH_CFG0)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_VA_TX2_TX_PATH_CFG1)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_VA_TX2_TX_VOL_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_VA_TX2_TX_PATH_SEC0)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_VA_TX2_TX_PATH_SEC1)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_VA_TX2_TX_PATH_SEC2)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_VA_TX2_TX_PATH_SEC3)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_VA_TX2_TX_PATH_SEC4)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_VA_TX2_TX_PATH_SEC5)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_VA_TX2_TX_PATH_SEC6)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_VA_TX3_TX_PATH_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_VA_TX3_TX_PATH_CFG0)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_VA_TX3_TX_PATH_CFG1)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_VA_TX3_TX_VOL_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_VA_TX3_TX_PATH_SEC0)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_VA_TX3_TX_PATH_SEC1)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_VA_TX3_TX_PATH_SEC2)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_VA_TX3_TX_PATH_SEC3)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_VA_TX3_TX_PATH_SEC4)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_VA_TX3_TX_PATH_SEC5)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_VA_TX3_TX_PATH_SEC6)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_VA_TX4_TX_PATH_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_VA_TX4_TX_PATH_CFG0)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_VA_TX4_TX_PATH_CFG1)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_VA_TX4_TX_VOL_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_VA_TX4_TX_PATH_SEC0)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_VA_TX4_TX_PATH_SEC1)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_VA_TX4_TX_PATH_SEC2)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_VA_TX4_TX_PATH_SEC3)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_VA_TX4_TX_PATH_SEC4)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_VA_TX4_TX_PATH_SEC5)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_VA_TX4_TX_PATH_SEC6)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_VA_TX5_TX_PATH_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_VA_TX5_TX_PATH_CFG0)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_VA_TX5_TX_PATH_CFG1)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_VA_TX5_TX_VOL_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_VA_TX5_TX_PATH_SEC0)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_VA_TX5_TX_PATH_SEC1)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_VA_TX5_TX_PATH_SEC2)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_VA_TX5_TX_PATH_SEC3)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_VA_TX5_TX_PATH_SEC4)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_VA_TX5_TX_PATH_SEC5)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_VA_TX5_TX_PATH_SEC6)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_VA_TX6_TX_PATH_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_VA_TX6_TX_PATH_CFG0)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_VA_TX6_TX_PATH_CFG1)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_VA_TX6_TX_VOL_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_VA_TX6_TX_PATH_SEC0)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_VA_TX6_TX_PATH_SEC1)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_VA_TX6_TX_PATH_SEC2)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_VA_TX6_TX_PATH_SEC3)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_VA_TX6_TX_PATH_SEC4)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_VA_TX6_TX_PATH_SEC5)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_VA_TX6_TX_PATH_SEC6)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_VA_TX7_TX_PATH_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_VA_TX7_TX_PATH_CFG0)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_VA_TX7_TX_PATH_CFG1)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_VA_TX7_TX_VOL_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_VA_TX7_TX_PATH_SEC0)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_VA_TX7_TX_PATH_SEC1)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_VA_TX7_TX_PATH_SEC2)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_VA_TX7_TX_PATH_SEC3)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_VA_TX7_TX_PATH_SEC4)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_VA_TX7_TX_PATH_SEC5)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_VA_TX7_TX_PATH_SEC6)] = RD_WR_REG,
|
||||
};
|
||||
|
||||
u8 bolero_va_top_reg_access[BOLERO_CDC_VA_MACRO_TOP_MAX] = {
|
||||
[BOLERO_REG(BOLERO_CDC_VA_CLK_RST_CTRL_MCLK_CONTROL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_VA_CLK_RST_CTRL_FS_CNT_CONTROL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_VA_TOP_CSR_TOP_CFG0)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_VA_TOP_CSR_DMIC0_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_VA_TOP_CSR_DMIC1_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_VA_TOP_CSR_DMIC_CFG)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_VA_TOP_CSR_DEBUG_BUS)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_VA_TOP_CSR_DEBUG_EN)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_VA_TOP_CSR_CORE_ID_0)] = RD_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_VA_TOP_CSR_CORE_ID_1)] = RD_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_VA_TOP_CSR_CORE_ID_2)] = RD_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_VA_TOP_CSR_CORE_ID_3)] = RD_REG,
|
||||
};
|
||||
|
||||
u8 bolero_wsa_reg_access[BOLERO_CDC_WSA_MACRO_MAX] = {
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_CLK_RST_CTRL_MCLK_CONTROL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_CLK_RST_CTRL_FS_CNT_CONTROL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_CLK_RST_CTRL_SWR_CONTROL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_TOP_TOP_CFG0)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_TOP_TOP_CFG1)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_TOP_FREQ_MCLK)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_TOP_DEBUG_BUS_SEL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_TOP_DEBUG_EN0)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_TOP_DEBUG_EN1)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_TOP_DEBUG_DSM_LB)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_TOP_RX_I2S_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_TOP_TX_I2S_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_TOP_I2S_CLK)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_TOP_I2S_RESET)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_RX_INP_MUX_RX_INT0_CFG0)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_RX_INP_MUX_RX_INT0_CFG1)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_RX_INP_MUX_RX_INT1_CFG0)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_RX_INP_MUX_RX_INT1_CFG1)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_RX_INP_MUX_RX_MIX_CFG0)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_RX_INP_MUX_RX_EC_CFG0)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_RX_INP_MUX_SOFTCLIP_CFG0)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_VBAT_BCL_VBAT_PATH_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_VBAT_BCL_VBAT_CFG)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_VBAT_BCL_VBAT_ADC_CAL1)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_VBAT_BCL_VBAT_ADC_CAL2)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_VBAT_BCL_VBAT_ADC_CAL3)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_VBAT_BCL_VBAT_PK_EST1)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_VBAT_BCL_VBAT_PK_EST2)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_VBAT_BCL_VBAT_PK_EST3)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_VBAT_BCL_VBAT_RF_PROC1)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_VBAT_BCL_VBAT_RF_PROC2)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_VBAT_BCL_VBAT_TAC1)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_VBAT_BCL_VBAT_TAC2)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_VBAT_BCL_VBAT_TAC3)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_VBAT_BCL_VBAT_TAC4)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_VBAT_BCL_VBAT_GAIN_UPD1)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_VBAT_BCL_VBAT_GAIN_UPD2)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_VBAT_BCL_VBAT_GAIN_UPD3)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_VBAT_BCL_VBAT_GAIN_UPD4)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_VBAT_BCL_VBAT_GAIN_UPD5)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_VBAT_BCL_VBAT_DEBUG1)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_VBAT_BCL_VBAT_GAIN_UPD_MON)] = WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_VBAT_BCL_VBAT_GAIN_MON_VAL)] = RD_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_VBAT_BCL_VBAT_BAN)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_VBAT_BCL_VBAT_BCL_GAIN_UPD1)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_VBAT_BCL_VBAT_BCL_GAIN_UPD2)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_VBAT_BCL_VBAT_BCL_GAIN_UPD3)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_VBAT_BCL_VBAT_BCL_GAIN_UPD4)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_VBAT_BCL_VBAT_BCL_GAIN_UPD5)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_VBAT_BCL_VBAT_BCL_GAIN_UPD6)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_VBAT_BCL_VBAT_BCL_GAIN_UPD7)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_VBAT_BCL_VBAT_BCL_GAIN_UPD8)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_VBAT_BCL_VBAT_BCL_GAIN_UPD9)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_VBAT_BCL_VBAT_BCL_ATTN1)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_VBAT_BCL_VBAT_BCL_ATTN2)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_VBAT_BCL_VBAT_BCL_ATTN3)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_VBAT_BCL_VBAT_DECODE_CTL1)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_VBAT_BCL_VBAT_DECODE_CTL2)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_VBAT_BCL_VBAT_DECODE_CFG1)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_VBAT_BCL_VBAT_DECODE_CFG2)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_VBAT_BCL_VBAT_DECODE_CFG3)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_VBAT_BCL_VBAT_DECODE_CFG4)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_VBAT_BCL_VBAT_DECODE_ST)] = RD_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_TX0_SPKR_PROT_PATH_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_TX0_SPKR_PROT_PATH_CFG0)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_TX1_SPKR_PROT_PATH_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_TX1_SPKR_PROT_PATH_CFG0)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_TX2_SPKR_PROT_PATH_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_TX2_SPKR_PROT_PATH_CFG0)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_TX3_SPKR_PROT_PATH_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_TX3_SPKR_PROT_PATH_CFG0)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_INTR_CTRL_CFG)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_INTR_CTRL_CLR_COMMIT)] = WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_INTR_CTRL_PIN1_MASK0)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_INTR_CTRL_PIN1_STATUS0)] = RD_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_INTR_CTRL_PIN1_CLEAR0)] = WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_INTR_CTRL_PIN2_MASK0)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_INTR_CTRL_PIN2_STATUS0)] = RD_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_INTR_CTRL_PIN2_CLEAR0)] = WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_INTR_CTRL_LEVEL0)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_INTR_CTRL_BYPASS0)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_INTR_CTRL_SET0)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_RX0_RX_PATH_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_RX0_RX_PATH_CFG0)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_RX0_RX_PATH_CFG1)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_RX0_RX_PATH_CFG2)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_RX0_RX_PATH_CFG3)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_RX0_RX_VOL_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_RX0_RX_PATH_MIX_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_RX0_RX_PATH_MIX_CFG)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_RX0_RX_VOL_MIX_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_RX0_RX_PATH_SEC0)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_RX0_RX_PATH_SEC1)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_RX0_RX_PATH_SEC2)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_RX0_RX_PATH_SEC3)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_RX0_RX_PATH_SEC5)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_RX0_RX_PATH_SEC6)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_RX0_RX_PATH_SEC7)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_RX0_RX_PATH_MIX_SEC0)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_RX0_RX_PATH_MIX_SEC1)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_RX0_RX_PATH_DSMDEM_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_RX1_RX_PATH_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_RX1_RX_PATH_CFG0)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_RX1_RX_PATH_CFG1)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_RX1_RX_PATH_CFG2)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_RX1_RX_PATH_CFG3)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_RX1_RX_VOL_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_RX1_RX_PATH_MIX_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_RX1_RX_PATH_MIX_CFG)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_RX1_RX_VOL_MIX_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_RX1_RX_PATH_SEC0)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_RX1_RX_PATH_SEC1)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_RX1_RX_PATH_SEC2)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_RX1_RX_PATH_SEC3)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_RX1_RX_PATH_SEC5)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_RX1_RX_PATH_SEC6)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_RX1_RX_PATH_SEC7)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_RX1_RX_PATH_MIX_SEC0)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_RX1_RX_PATH_MIX_SEC1)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_RX1_RX_PATH_DSMDEM_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_BOOST0_BOOST_PATH_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_BOOST0_BOOST_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_BOOST0_BOOST_CFG1)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_BOOST0_BOOST_CFG2)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_BOOST1_BOOST_PATH_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_BOOST1_BOOST_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_BOOST1_BOOST_CFG1)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_BOOST1_BOOST_CFG2)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_COMPANDER0_CTL0)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_COMPANDER0_CTL1)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_COMPANDER0_CTL2)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_COMPANDER0_CTL3)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_COMPANDER0_CTL4)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_COMPANDER0_CTL5)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_COMPANDER0_CTL6)] = RD_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_COMPANDER0_CTL7)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_COMPANDER1_CTL0)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_COMPANDER1_CTL1)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_COMPANDER1_CTL2)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_COMPANDER1_CTL3)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_COMPANDER1_CTL4)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_COMPANDER1_CTL5)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_COMPANDER1_CTL6)] = RD_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_COMPANDER1_CTL7)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_SOFTCLIP0_CRC)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_SOFTCLIP0_SOFTCLIP_CTRL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_SOFTCLIP1_CRC)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_SOFTCLIP1_SOFTCLIP_CTRL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_EC_HQ0_EC_REF_HQ_PATH_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_EC_HQ0_EC_REF_HQ_CFG0)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_EC_HQ1_EC_REF_HQ_PATH_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_EC_HQ1_EC_REF_HQ_CFG0)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_SPLINE_ASRC0_CLK_RST_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_SPLINE_ASRC0_CTL0)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_SPLINE_ASRC0_CTL1)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_SPLINE_ASRC0_FIFO_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_SPLINE_ASRC0_STATUS_FMIN_CNTR_LSB)] = RD_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_SPLINE_ASRC0_STATUS_FMIN_CNTR_MSB)] = RD_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_SPLINE_ASRC0_STATUS_FMAX_CNTR_LSB)] = RD_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_SPLINE_ASRC0_STATUS_FMAX_CNTR_MSB)] = RD_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_SPLINE_ASRC0_STATUS_FIFO)] = RD_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_SPLINE_ASRC1_CLK_RST_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_SPLINE_ASRC1_CTL0)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_SPLINE_ASRC1_CTL1)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_SPLINE_ASRC1_FIFO_CTL)] = RD_WR_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_SPLINE_ASRC1_STATUS_FMIN_CNTR_LSB)] = RD_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_SPLINE_ASRC1_STATUS_FMIN_CNTR_MSB)] = RD_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_SPLINE_ASRC1_STATUS_FMAX_CNTR_LSB)] = RD_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_SPLINE_ASRC1_STATUS_FMAX_CNTR_MSB)] = RD_REG,
|
||||
[BOLERO_REG(BOLERO_CDC_WSA_SPLINE_ASRC1_STATUS_FIFO)] = RD_REG,
|
||||
};
|
||||
|
||||
u8 *bolero_reg_access[MAX_MACRO] = {
|
||||
[TX_MACRO] = bolero_tx_reg_access,
|
||||
[RX_MACRO] = bolero_rx_reg_access,
|
||||
[WSA_MACRO] = bolero_wsa_reg_access,
|
||||
[VA_MACRO] = bolero_va_reg_access,
|
||||
};
|
186
asoc/codecs/bolero/bolero_cdc_utils.c
Normal file
186
asoc/codecs/bolero/bolero_cdc_utils.c
Normal file
|
@ -0,0 +1,186 @@
|
|||
/* Copyright (c) 2018, The Linux Foundation. All rights reserved.
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License version 2 and
|
||||
* only version 2 as published by the Free Software Foundation.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*/
|
||||
|
||||
#include <linux/kernel.h>
|
||||
#include <linux/regmap.h>
|
||||
#include "bolero_cdc.h"
|
||||
#include "internal.h"
|
||||
|
||||
#define REG_BYTES 2
|
||||
#define VAL_BYTES 1
|
||||
|
||||
const u16 macro_id_base_offset[MAX_MACRO] = {
|
||||
TX_START_OFFSET,
|
||||
RX_START_OFFSET,
|
||||
WSA_START_OFFSET,
|
||||
VA_START_OFFSET,
|
||||
};
|
||||
|
||||
int bolero_get_macro_id(bool va_no_dec_flag, u16 reg)
|
||||
{
|
||||
if (reg >= TX_START_OFFSET
|
||||
&& reg <= TX_MAX_OFFSET)
|
||||
return TX_MACRO;
|
||||
if (reg >= RX_START_OFFSET
|
||||
&& reg <= RX_MAX_OFFSET)
|
||||
return RX_MACRO;
|
||||
if (reg >= WSA_START_OFFSET
|
||||
&& reg <= WSA_MAX_OFFSET)
|
||||
return WSA_MACRO;
|
||||
if (!va_no_dec_flag &&
|
||||
(reg >= VA_START_OFFSET &&
|
||||
reg <= VA_MAX_OFFSET))
|
||||
return VA_MACRO;
|
||||
if (va_no_dec_flag &&
|
||||
(reg >= VA_START_OFFSET &&
|
||||
reg <= VA_TOP_MAX_OFFSET))
|
||||
return VA_MACRO;
|
||||
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
static int regmap_bus_read(void *context, const void *reg, size_t reg_size,
|
||||
void *val, size_t val_size)
|
||||
{
|
||||
struct device *dev = context;
|
||||
struct bolero_priv *priv = dev_get_drvdata(dev);
|
||||
u16 *reg_p;
|
||||
u16 __reg;
|
||||
int macro_id, i;
|
||||
u8 temp = 0;
|
||||
int ret = -EINVAL;
|
||||
|
||||
if (!priv) {
|
||||
dev_err(dev, "%s: priv is NULL\n", __func__);
|
||||
return ret;
|
||||
}
|
||||
if (!reg || !val) {
|
||||
dev_err(dev, "%s: reg or val is NULL\n", __func__);
|
||||
return ret;
|
||||
}
|
||||
if (reg_size != REG_BYTES) {
|
||||
dev_err(dev, "%s: register size %zd bytes, not supported\n",
|
||||
__func__, reg_size);
|
||||
return ret;
|
||||
}
|
||||
|
||||
reg_p = (u16 *)reg;
|
||||
macro_id = bolero_get_macro_id(priv->va_without_decimation,
|
||||
reg_p[0]);
|
||||
if (macro_id < 0 || !priv->macros_supported[macro_id]) {
|
||||
dev_err_ratelimited(dev,
|
||||
"%s: Unsupported macro %d or reg 0x%x is invalid\n",
|
||||
__func__, macro_id, reg_p[0]);
|
||||
return ret;
|
||||
}
|
||||
mutex_lock(&priv->io_lock);
|
||||
for (i = 0; i < val_size; i++) {
|
||||
__reg = reg_p[i] - macro_id_base_offset[macro_id];
|
||||
ret = priv->read_dev(priv, macro_id, __reg, &temp);
|
||||
if (ret < 0) {
|
||||
dev_err_ratelimited(dev,
|
||||
"%s: Codec read failed (%d), reg: 0x%x, size:%zd\n",
|
||||
__func__, ret, reg_p[i], val_size);
|
||||
break;
|
||||
}
|
||||
((u8 *)val)[i] = temp;
|
||||
dev_dbg(dev, "%s: Read 0x%02x from reg 0x%x\n",
|
||||
__func__, temp, reg_p[i]);
|
||||
}
|
||||
mutex_unlock(&priv->io_lock);
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
||||
static int regmap_bus_gather_write(void *context,
|
||||
const void *reg, size_t reg_size,
|
||||
const void *val, size_t val_size)
|
||||
{
|
||||
struct device *dev = context;
|
||||
struct bolero_priv *priv = dev_get_drvdata(dev);
|
||||
u16 *reg_p;
|
||||
u16 __reg;
|
||||
int macro_id, i;
|
||||
int ret = -EINVAL;
|
||||
|
||||
if (!priv) {
|
||||
dev_err(dev, "%s: priv is NULL\n", __func__);
|
||||
return ret;
|
||||
}
|
||||
if (!reg || !val) {
|
||||
dev_err(dev, "%s: reg or val is NULL\n", __func__);
|
||||
return ret;
|
||||
}
|
||||
if (reg_size != REG_BYTES) {
|
||||
dev_err(dev, "%s: register size %zd bytes, not supported\n",
|
||||
__func__, reg_size);
|
||||
return ret;
|
||||
}
|
||||
|
||||
reg_p = (u16 *)reg;
|
||||
macro_id = bolero_get_macro_id(priv->va_without_decimation,
|
||||
reg_p[0]);
|
||||
if (macro_id < 0 || !priv->macros_supported[macro_id]) {
|
||||
dev_err_ratelimited(dev,
|
||||
"%s: Unsupported macro-id %d or reg 0x%x is invalid\n",
|
||||
__func__, macro_id, reg_p[0]);
|
||||
return ret;
|
||||
}
|
||||
mutex_lock(&priv->io_lock);
|
||||
for (i = 0; i < val_size; i++) {
|
||||
__reg = reg_p[i] - macro_id_base_offset[macro_id];
|
||||
ret = priv->write_dev(priv, macro_id, __reg, ((u8 *)val)[i]);
|
||||
if (ret < 0) {
|
||||
dev_err_ratelimited(dev,
|
||||
"%s: Codec write failed (%d), reg:0x%x, size:%zd\n",
|
||||
__func__, ret, reg_p[i], val_size);
|
||||
break;
|
||||
}
|
||||
dev_dbg(dev, "Write %02x to reg 0x%x\n", ((u8 *)val)[i],
|
||||
reg_p[i]);
|
||||
}
|
||||
mutex_unlock(&priv->io_lock);
|
||||
return ret;
|
||||
}
|
||||
|
||||
static int regmap_bus_write(void *context, const void *data, size_t count)
|
||||
{
|
||||
struct device *dev = context;
|
||||
struct bolero_priv *priv = dev_get_drvdata(dev);
|
||||
|
||||
if (!priv)
|
||||
return -EINVAL;
|
||||
|
||||
if (count < REG_BYTES) {
|
||||
dev_err(dev, "%s: count %zd bytes < %d, not supported\n",
|
||||
__func__, count, REG_BYTES);
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
return regmap_bus_gather_write(context, data, REG_BYTES,
|
||||
data + REG_BYTES,
|
||||
count - REG_BYTES);
|
||||
}
|
||||
|
||||
static struct regmap_bus regmap_bus_config = {
|
||||
.write = regmap_bus_write,
|
||||
.gather_write = regmap_bus_gather_write,
|
||||
.read = regmap_bus_read,
|
||||
.reg_format_endian_default = REGMAP_ENDIAN_NATIVE,
|
||||
.val_format_endian_default = REGMAP_ENDIAN_NATIVE,
|
||||
};
|
||||
|
||||
struct regmap *bolero_regmap_init(struct device *dev,
|
||||
const struct regmap_config *config)
|
||||
{
|
||||
return devm_regmap_init(dev, ®map_bus_config, dev, config);
|
||||
}
|
56
asoc/codecs/bolero/internal.h
Normal file
56
asoc/codecs/bolero/internal.h
Normal file
|
@ -0,0 +1,56 @@
|
|||
/* Copyright (c) 2018, The Linux Foundation. All rights reserved.
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License version 2 and
|
||||
* only version 2 as published by the Free Software Foundation.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*/
|
||||
|
||||
#ifndef _BOLERO_INTERNAL_H
|
||||
#define _BOLERO_INTERNAL_H
|
||||
|
||||
#include "bolero_cdc_registers.h"
|
||||
|
||||
enum {
|
||||
REG_NO_ACCESS,
|
||||
RD_REG,
|
||||
WR_REG,
|
||||
RD_WR_REG
|
||||
};
|
||||
|
||||
struct bolero_priv {
|
||||
struct device *dev;
|
||||
struct snd_soc_codec *codec;
|
||||
struct regmap *regmap;
|
||||
struct mutex io_lock;
|
||||
bool va_without_decimation;
|
||||
bool macros_supported[MAX_MACRO];
|
||||
struct macro_ops macro_params[MAX_MACRO];
|
||||
struct snd_soc_dai_driver *bolero_dais;
|
||||
u16 num_dais;
|
||||
u16 num_macros_registered;
|
||||
u16 child_num;
|
||||
struct platform_device *pdev_child_devices[MAX_MACRO];
|
||||
|
||||
struct work_struct bolero_add_child_devices_work;
|
||||
|
||||
int (*read_dev)(struct bolero_priv *priv,
|
||||
u16 macro_id, u16 reg, u8 *val);
|
||||
int (*write_dev)(struct bolero_priv *priv,
|
||||
u16 macro_id, u16 reg, u8 val);
|
||||
};
|
||||
|
||||
struct regmap *bolero_regmap_init(struct device *dev,
|
||||
const struct regmap_config *config);
|
||||
int bolero_get_macro_id(bool va_no_dec_flag, u16 reg);
|
||||
|
||||
extern const struct regmap_config bolero_regmap_config;
|
||||
extern u8 *bolero_reg_access[MAX_MACRO];
|
||||
extern u8 bolero_va_top_reg_access[BOLERO_CDC_VA_MACRO_TOP_MAX];
|
||||
extern const u16 macro_id_base_offset[MAX_MACRO];
|
||||
|
||||
#endif
|
Loading…
Add table
Reference in a new issue