Quellcodebibliothek Statistik Leitseite products/sources/formale Sprachen/C/Linux/sound/soc/tegra/   (Open Source Betriebssystem Version 6.17.9©)  Datei vom 24.10.2025 mit Größe 3 kB image not shown  

Quelle  tegra210_amx.h   Sprache: C

 
/* SPDX-License-Identifier: GPL-2.0-only
 * SPDX-FileCopyrightText: Copyright (c) 2021-2025 NVIDIA CORPORATION. All rights reserved.
 *
 * tegra210_amx.h - Definitions for Tegra210 AMX driver
 *
 */


#ifndef __TEGRA210_AMX_H__
#define __TEGRA210_AMX_H__

/* Register offsets from TEGRA210_AMX*_BASE */
#define TEGRA210_AMX_RX_STATUS   0x0c
#define TEGRA210_AMX_RX_INT_STATUS  0x10
#define TEGRA210_AMX_RX_INT_MASK  0x14
#define TEGRA210_AMX_RX_INT_SET   0x18
#define TEGRA210_AMX_RX_INT_CLEAR  0x1c
#define TEGRA210_AMX_RX1_CIF_CTRL  0x20
#define TEGRA210_AMX_RX2_CIF_CTRL  0x24
#define TEGRA210_AMX_RX3_CIF_CTRL  0x28
#define TEGRA210_AMX_RX4_CIF_CTRL  0x2c
#define TEGRA210_AMX_TX_STATUS   0x4c
#define TEGRA210_AMX_TX_INT_STATUS  0x50
#define TEGRA210_AMX_TX_INT_MASK  0x54
#define TEGRA210_AMX_TX_INT_SET   0x58
#define TEGRA210_AMX_TX_INT_CLEAR  0x5c
#define TEGRA210_AMX_TX_CIF_CTRL  0x60
#define TEGRA210_AMX_ENABLE   0x80
#define TEGRA210_AMX_SOFT_RESET   0x84
#define TEGRA210_AMX_CG    0x88
#define TEGRA210_AMX_STATUS   0x8c
#define TEGRA210_AMX_INT_STATUS   0x90
#define TEGRA210_AMX_CTRL   0xa4
#define TEGRA210_AMX_OUT_BYTE_EN0  0xa8
#define TEGRA210_AMX_CYA   0xb0
#define TEGRA210_AMX_CFG_RAM_CTRL  0xb8
#define TEGRA210_AMX_CFG_RAM_DATA  0xbc

#define TEGRA194_AMX_RX1_FRAME_PERIOD  0xc0
#define TEGRA194_AMX_RX4_FRAME_PERIOD  0xcc
#define TEGRA194_AMX_RX4_LAST_FRAME_PERIOD 0xdc

#define TEGRA264_AMX_STREAMS_AUTO_DISABLE 0xb8
#define TEGRA264_AMX_CFG_RAM_CTRL 0xc0
#define TEGRA264_AMX_CFG_RAM_DATA 0xc4
#define TEGRA264_AMX_RX1_FRAME_PERIOD 0xc8
#define TEGRA264_AMX_RX4_FRAME_PERIOD 0xd4
#define TEGRA264_AMX_RX4_LAST_FRAME_PERIOD 0xe4

/* Fields in TEGRA210_AMX_ENABLE */
#define TEGRA210_AMX_ENABLE_SHIFT   0

/* Fields in TEGRA210_AMX_CTRL */
#define TEGRA210_AMX_CTRL_MSTR_RX_NUM_SHIFT  14
#define TEGRA210_AMX_CTRL_MSTR_RX_NUM_MASK  (3 << TEGRA210_AMX_CTRL_MSTR_RX_NUM_SHIFT)

#define TEGRA210_AMX_CTRL_RX_DEP_SHIFT   12
#define TEGRA210_AMX_CTRL_RX_DEP_MASK   (3 << TEGRA210_AMX_CTRL_RX_DEP_SHIFT)

/* Fields in TEGRA210_AMX_CFG_RAM_CTRL */
#define TEGRA210_AMX_CFG_RAM_CTRL_RW_SHIFT  14
#define TEGRA210_AMX_CFG_RAM_CTRL_RW_WRITE  (1 << TEGRA210_AMX_CFG_RAM_CTRL_RW_SHIFT)

#define TEGRA210_AMX_CFG_RAM_CTRL_ADDR_INIT_EN_SHIFT 13
#define TEGRA210_AMX_CFG_RAM_CTRL_ADDR_INIT_EN  (1 << TEGRA210_AMX_CFG_RAM_CTRL_ADDR_INIT_EN_SHIFT)

#define TEGRA210_AMX_CFG_RAM_CTRL_SEQ_ACCESS_EN_SHIFT 12
#define TEGRA210_AMX_CFG_RAM_CTRL_SEQ_ACCESS_EN  (1 << TEGRA210_AMX_CFG_RAM_CTRL_SEQ_ACCESS_EN_SHIFT)

#define TEGRA210_AMX_CFG_CTRL_RAM_ADDR_SHIFT  0

/* Fields in TEGRA210_AMX_SOFT_RESET */
#define TEGRA210_AMX_SOFT_RESET_SOFT_EN   1
#define TEGRA210_AMX_SOFT_RESET_SOFT_RESET_MASK  TEGRA210_AMX_SOFT_RESET_SOFT_EN

#define TEGRA210_AMX_AUDIOCIF_CH_STRIDE  4
#define TEGRA210_AMX_RAM_DEPTH   16
#define TEGRA210_AMX_MAP_STREAM_NUM_SHIFT 6
#define TEGRA210_AMX_MAP_WORD_NUM_SHIFT  2
#define TEGRA210_AMX_MAP_BYTE_NUM_SHIFT  0
#define TEGRA210_AMX_BYTE_MASK_COUNT  2
#define TEGRA210_AMX_MAX_CHANNEL  16
#define TEGRA210_AMX_AUTO_DISABLE_OFFSET 0

#define TEGRA264_AMX_RAM_DEPTH   32
#define TEGRA264_AMX_BYTE_MASK_COUNT  4
#define TEGRA264_AMX_MAX_CHANNEL  32
#define TEGRA264_AMX_AUTO_DISABLE_OFFSET 8
#define TEGRA_AMX_OUT_DAI_ID   4

enum {
 TEGRA210_AMX_WAIT_ON_ALL,
 TEGRA210_AMX_WAIT_ON_ANY,
};

struct tegra210_amx_soc_data {
 const struct regmap_config *regmap_conf;
 bool auto_disable;
 const struct snd_kcontrol_new *controls;
 unsigned int num_controls;
 unsigned int max_ch;
 unsigned int ram_depth;
 unsigned int byte_mask_size;
 unsigned int reg_offset;
};

struct tegra210_amx {
 const struct tegra210_amx_soc_data *soc_data;
 unsigned int *map;
 unsigned int *byte_mask;
 struct regmap *regmap;
};

#endif

Messung V0.5
C=95 H=100 G=97

¤ Dauer der Verarbeitung: 0.1 Sekunden  (vorverarbeitet)  ¤

*© Formatika GbR, Deutschland






Wurzel

Suchen

Beweissystem der NASA

Beweissystem Isabelle

NIST Cobol Testsuite

Cephes Mathematical Library

Wiener Entwicklungsmethode

Haftungshinweis

Die Informationen auf dieser Webseite wurden nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit, noch Qualität der bereit gestellten Informationen zugesichert.

Bemerkung:

Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.